`
javasogo
  • 浏览: 1815711 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

编解码学习笔记(八):Real系列

阅读更多

下面资料从wiki中整理获取。

Real系列是RealNetworks提供的,分为RealVideo和RealAudio。

RealVideo

RealVideo是一种影片格式由RealNetworks于 1997年所开发,至2006年时已到RealVideo版本10。它从开发伊始就定位为应用为网络上视频播放上的格式。支持多种播放的平台,包含Windows、Mac、Linux、Solaris以及某些移动电话。相较于其它的视频编解码器,RealVideo通常可以将视频数据压缩得更小。因此它可以在用56Kbps MODEM拨号上网的条件实现不间断的视频播放。

一般的文件扩展名为.rm/.rvm,现在广泛流行的是rmvb格式,即动态编码率的real video。

RealVideo早期使用H.263,在RealVideo8及之后公司采用私有或者不公开的视频格式。官方的的播放器是RealNetworks RealPlayer SP,最新的版本是v12,在多个平台,包括Windows,Macintosh,和Linux中提供。RealNetworks公司同时也开发了开源的Helix播放器,但是在Helix项目中没有提供RealVideo,因为Real系列的编解码仍是不公开的。

RealMedia文件可以通过RTSP在网络上传输,但是RTSP只用于建立和管理连接,真正的视频数据是通过Real自己私有的RDT(Real Data Transport)协议传输。这种方式引起很大的批评,因为难以在其他播放器和服务器中使用RealVideo,现在一些开源项目,例如MPlayer已经可以播放RDT流。为了支持实时流,RealVideo和RealAudio通常采用CBR(恒定码速)编码,使得每秒传递的数据相等。后来,公司开发了可变码速,成为RealMedia Variable Bitrate(RMVB),提供更高的水平资料,但是这种格式不适合作为流,因为难以预测某个特定的媒体流需要多少网络资源。带有快速移动和场景变化的视频需要更高的码流,如果码流超出网络所能提供的速率,将会引起中断。

RealNetworks公司说RealVideo和RealAudio编解码的源代码不在RPSL的许可内。在许可源代码在不支持的处理器和操作系统的商用移植中许可。虽然公司拥有大多数的知识产权,但是允许第三方为某个特性享有版权。

RealVideo 1.0

RealVideo的第一个版本在1997年释放,是基于H.263格式。在RealPayer5中提供。FourCC为rv10,rv13

RealVideo G2和RealVideo G2+SVT

也是就要H.263,在RealPlayer6中提供。质量比较糟糕。FourCC为rv20

RealVideo 8

随着 RealPlayer 8 推出的视频格式,是现在主流的网络视频编码之一。编码速度较慢,质量也只能算一般。猜测是基于早期的H.264 draft,在RealPlayer 8中提供,FourCC为rv30。

RealVideo 9

RealNetworks 开 发的新一代编码,质量进步了很多,特别是在底码率下,而且编码速度很快,做到了速与质的很好统一。
猜测是基于H.264,在RealPlayer9中提供。FourCC为rv40.

RealVideo 10

在 RealVideo 9 基 础上加入了一些参数,如 EHQ 等,更加精确控制码率,和 RealVideo 9 兼容。在RealPlayer10中提供,FourCC为rv40(与RealVideo9相同)

RealAudio

文件名扩展: .ra, .ram

Internet media type:audio/vnd.rn-realaudio, audio/x-pn-realaudio

RealAUdio是RealNetwoks公司私有的宾朋编解码格式,最早在1995年释放。它包括一系列的音频编解码,从古老拨号modem的低速率格式到高质量的音乐。可用于媒体流,过去很多的互联网电台使用RealAudio作为他们节目的实时音频流,近年使用得较少,让位与其他流行的格式。

RealAudio文件后缀为.ra。1997年,公司开始提供视频格式成为RealVideo。将音频和视频合并是以哦那个的容器后缀为.rm。然而,最新的版本,使用.ra用于音频文件,使用.rv用于带或不带音频的视频文件,用.rmvb用于可变速率的视频文件。

.ram(Real Audio Metadata)和.smil(Synchronized Multimedia Integration Language)文件格式用于流媒体中的链接。在很多情况下,网络并不直接链接一个RealAudio文件,而是链接.ram和.smil文件。这是一个很小的文本文件,包括音频流的链接。当用户点击一个链接,网络浏览器下载.ram和.smil文件,并加载用户的媒体播放器,媒体播放器从文件中读取pnm或者rtsp的URL,并开始播放流。

RealAudio文件包括多种音频编解码,每个编解码都是用FourCC(Four Character Code)来表示,介绍如下:

  • lpcJ: IS-54 VSELP (RealAudio 1)
  • 28_8: G.728 LD-CELP (RealAudio 2)
  • dnet: Dolby AC3 (RealAudio 3)
  • sipr: Sipro Lab Telecom ACELP-NET (RealAudio 4/5)
  • cook: G2/Cook Codec (RealAudio 6)
  • atrc: Sony ATRAC3 (RealAudio 8)
  • raac: MPEG-4 LC-AAC (RealAudio 9)
  • racp: MPEG-4 HE-AAC (RealAudio 10)
  • ralf: RealAudio Lossless Format (RealAudio 10)

关链接: 我的产业生态链和杂谈文章

分享到:
评论

相关推荐

    webrtc学习笔记一 (视频流)

    这篇“webrtc学习笔记一”主要关注的是视频流处理,是WebRTC技术中的核心部分。在深入讨论之前,先了解一下WebRTC的基本架构和组成部分。 1. **基础概念**: - **Peer Connection**: 是WebRTC的核心组件,负责...

    WebRTC学习笔记_Demo收集 .docx

    ### WebRTC学习笔记_Demo收集 #### 一、WebRTC现状与历史背景 WebRTC(Web Real-Time Communication)是一项开放的、免费的技术框架,旨在使Web浏览器能够在无需插件的情况下进行实时音视频通信。该技术最初由...

    Webrtc学习笔记-V1

    2. **视频编解码**:默认使用VP8编码器,这是一种由ON2公司开发的高效视频编码技术,用于压缩视频数据。 3. **视频加密**:保护通信的安全性,确保视频数据不被未经授权的第三方获取。 4. **图像处理**:通过Image...

    RTSP协议学习笔记

    3. **编码和解码**:RTSP不处理编码和解码,这些任务由RTP和其他编解码器完成。 总结,RTSP协议在实时流媒体领域起着关键作用,它的设计旨在提供对媒体流的精细控制和互动性。理解RTSP的工作机制对于开发和维护高...

    mediasoup学习整理

    此外,"mediasoup study"这个压缩包文件可能包含了一些学习笔记、示例代码或者实战教程,可以帮助你深入理解mediasoup的使用方法和功能。 总之,mediasoup是一个强大的工具,对于开发实时音视频应用的开发者来说,...

    SDP.rar_ sdp_sdp

    SDP协议学习笔记.txt可能包含了以下关键知识点: 1. **SDP结构**:SDP由一系列的行(称为“描述行”)组成,每个描述行都以一个大写字母开头,如`v=`、`o=`、`s=`等,分别代表版本、会话发起者、会话名称等。这些行...

    Python学习笔记之解析json的方法分析

    这些方法不仅包括基本的序列化和反序列化操作,还包括更高级的功能,如定制化的编码器和解码器等。下面将详细介绍这些方法及其应用场景。 #### 三、基本的JSON序列化和反序列化 1. **`json.dumps()`**: 将Python...

    real_tech:个人Wiki

    在这个Wiki中,作者很可能分享了自己的学习笔记、代码示例、项目经验以及对Python技术的深入理解。下面将详细讨论Python编程语言中的关键知识点,这些内容可能在“real_tech-master”这个压缩包文件中有所涵盖。 1....

    从Windows转向Linux教程E3000基础学习.pdf

    #### 写Linux学习笔记 建议读者在学习过程中记录重要的知识点和实践经验,这有助于巩固所学内容并便于日后查阅。 #### Linux文件系统目录结构简介 这部分内容介绍了Linux文件系统的组织结构,解释了如`/bin`, `/...

    音视频公开课WebRTC

    4. **媒体引擎(Media Engine)**:处理音频和视频的编解码,如VP8、VP9、H.264等。 5. ** PeerConnection**:WebRTC的核心API,负责连接两端的UA进行实时通信。 【WebRTC的主要应用场景】 1. **在线教育**:通过...

    PHP 笔记001 - 字符串、正则表达式

    - `mysql_real_escape_string` 和 `mysql_escape_string`:这两个函数用于转义SQL字符串中的特殊字符。`mysql_real_escape_string`还会判断字符集,而`mysql_escape_string`不会。 - `base64_encode` 和 `base64_...

    Android OpenMAX资料

    在Android系统中,OpenMAX扮演着关键角色,它被用来集成硬件加速的媒体编解码器,以实现流畅的媒体播放和高效的多媒体应用。OpenMAX包含三个主要组件:OpenMAX AL(Audio Library)、OpenMAX IL(Integration Layer...

    live555&RTSP;源码解析笔记

    此外,笔记还会探讨如何使用live555实现RTSP服务器和客户端,包括设置会话、建立 RTP/RTCP 连接、媒体数据的编码和解码等步骤。这部分内容有助于读者在实际开发中快速上手。 最后,笔记可能还包含了一些实用技巧和...

    live-camera

    7. **实时处理**:在摄像头数据流中进行实时处理,例如人脸识别、物体检测等,需要用到AI(人工智能)和机器学习技术。这些技术需要高性能的硬件支持,如GPU(图形处理器)或专门的AI加速器。 8. **平台兼容性**:...

    nginx+ffmpeg,利用自己的笔记本和手机搭建直播工具

    Nginx是一个高性能的Web服务器,而FFmpeg则是一个强大的多媒体处理框架,它们结合在一起可以构建RTMP(Real-Time Messaging Protocol)流媒体服务器,使得用户可以通过笔记本或手机进行直播。 【描述】:“两个工具...

    STM32驱动vs1003

    STM32系列微控制器是基于ARM Cortex-M内核的微控制器,具有高性能、低功耗的特点,是驱动VS1003的理想选择。 在STM32驱动VS1003的过程中,首先需要了解VS1003的硬件接口,包括SPI(Serial Peripheral Interface)...

    易语言参考学习

    1. **RTSP(Real Time Streaming Protocol)和RTP(Real-time Transport Protocol)**:RTSP是一种应用层协议,用于控制实时流媒体的播放,如音频、视频等。RTP则常与之配合,负责传输实时数据。这两个协议在多媒体...

    rtsp.rar_Linux rtsp_rtsp_rtsp linux_流媒体

    **Linux RTSP协议详解与流媒体应用** RTSP(Real-Time Streaming Protocol)是实时流传输协议,主要...请参考文档"rtsp.doc"获取更详细的RTSP协议学习笔记,包括更多实例和代码示例,以便加深理解并应用于实际项目中。

Global site tag (gtag.js) - Google Analytics