Network Working Group L. Barbato
Request for Comments: 5215 Xiph
Category: Standards Track August 2008
RTP Payload Format for Vorbis Encoded Audio
Status of This Memo
This document specifies an Internet standards track protocol for the
Internet community, and requests discussion and suggestions for
improvements. Please refer to the current edition of the "Internet
Official Protocol Standards" (STD 1) for the standardization state
and status of this protocol. Distribution of this memo is unlimited.
Abstract
This document describes an RTP payload format for transporting Vorbis
encoded audio. It details the RTP encapsulation mechanism for raw
Vorbis data and the delivery mechanisms for the decoder probability
model (referred to as a codebook), as well as other setup
information.
Also included within this memo are media type registrations and the
details necessary for the use of Vorbis with the Session Description
Protocol (SDP).
Barbato Standards Track [Page 1]
RFC 5215 Vorbis RTP Payload Format August 2008
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1. Conformance and Document Conventions . . . . . . . . . . . 3
2. Payload Format . . . . . . . . . . . . . . . . . . . . . . . . 3
2.1. RTP Header . . . . . . . . . . . . . . . . . . . . . . . . 4
2.2. Payload Header . . . . . . . . . . . . . . . . . . . . . . 5
2.3. Payload Data . . . . . . . . . . . . . . . . . . . . . . . 6
2.4. Example RTP Packet . . . . . . . . . . . . . . . . . . . . 8
3. Configuration Headers . . . . . . . . . . . . . . . . . . . . 8
3.1. In-band Header Transmission . . . . . . . . . . . . . . . 9
3.1.1. Packed Configuration . . . . . . . . . . . . . . . . . 10
3.2. Out of Band Transmission . . . . . . . . . . . . . . . . . 12
3.2.1. Packed Headers . . . . . . . . . . . . . . . . . . . . 12
3.3. Loss of Configuration Headers . . . . . . . . . . . . . . 13
4. Comment Headers . . . . . . . . . . . . . . . . . . . . . . . 13
5. Frame Packetization . . . . . . . . . . . . . . . . . . . . . 14
5.1. Example Fragmented Vorbis Packet . . . . . . . . . . . . . 15
5.2. Packet Loss . . . . . . . . . . . . . . . . . . . . . . . 17
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 18
6.1. Packed Headers IANA Considerations . . . . . . . . . . . . 19
7. SDP Related Considerations . . . . . . . . . . . . . . . . . . 20
7.1. Mapping Media Type Parameters into SDP . . . . . . . . . . 20
7.1.1. SDP Example . . . . . . . . . . . . . . . . . . . . . 21
7.2. Usage with the SDP Offer/Answer Model . . . . . . . . . . 22
8. Congestion Control . . . . . . . . . . . . . . . . . . . . . . 22
9. Example . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
9.1. Stream Radio . . . . . . . . . . . . . . . . . . . . . . . 22
10. Security Considerations . . . . . . . . . . . . . . . . . . . 23
11. Copying Conditions . . . . . . . . . . . . . . . . . . . . . . 23
12. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 23
13. References . . . . . . . . . . . . . . . . . . . . . . . . . . 24
13.1. Normative References . . . . . . . . . . . . . . . . . . . 24
13.2. Informative References . . . . . . . . . . . . . . . . . . 25
Barbato Standards Track [Page 2]
RFC 5215 Vorbis RTP Payload Format August 2008
1. Introduction
Vorbis is a general purpose perceptual audio codec intended to allow
maximum encoder flexibility, thus allowing it to scale competitively
over an exceptionally wide range of bit rates. At the high quality/
bitrate end of the scale (CD or DAT rate stereo, 16/24 bits), it is
in the same league as MPEG-4 AAC. Vorbis is also intended for lower
and higher sample rates (from 8kHz telephony to 192kHz digital
masters) and a range of channel representations (monaural,
polyphonic, stereo, quadraphonic, 5.1, ambisonic, or up to 255
discrete channels).
Vorbis encoded audio is generally encapsulated within an Ogg format
bitstream [RFC3533], which provides framing and synchronization. For
the purposes of RTP transport, this layer is unnecessary, and so raw
Vorbis packets are used in the payload.
1.1. Conformance and Document Conventions
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in BCP 14, [RFC2119] and
indicate requirement levels for compliant implementations.
Requirements apply to all implementations unless otherwise stated.
An implementation is a software module that supports one of the media
types defined in this document. Software modules may support
multiple media types, but conformance is considered individually for
each type.
Implementations that fail to satisfy one or more "MUST" requirements
are considered non-compliant. Implementations that satisfy all
"MUST" requirements, but fail to satisfy one or more "SHOULD"
requirements, are said to be "conditionally compliant". All other
implementations are "unconditionally compliant".
2. Payload Format
For RTP-based transport of Vorbis-encoded audio, the standard RTP
header is followed by a 4-octet payload header, and then the payload
data. The payload headers are used to associate the Vorbis data with
its associated decoding codebooks as well as indicate if the
following packet contains fragmented Vorbis data and/or the number of
whole Vorbis data frames. The payload data contains the raw Vorbis
bitstream information. There are 3 types of Vorbis data; an RTP
payload MUST contain just one of them at a time.
Barbato Standards Track [Page 3]
RFC 5215 Vorbis RTP Payload Format August 2008
2.1. RTP Header
The format of the RTP header is specified in [RFC3550] and shown in
Figure 1. This payload format uses the fields of the header in a
manner consistent with that specification.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|V=2|P|X| CC |M| PT | sequence number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| timestamp |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| synchronization source (SSRC) identifier |
+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+
| contributing source (CSRC) identifiers |
| ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 1: RTP Header
The RTP header begins with an octet of fields (V, P, X, and CC) to
support specialized RTP uses (see [RFC3550] and [RFC3551] for
details). For Vorbis RTP, the following values are used.
Version (V): 2 bits
This field identifies the version of RTP. The version used by this
specification is two (2).
Padding (P): 1 bit
Padding MAY be used with this payload format according to Section 5.1
of [RFC3550].
Extension (X): 1 bit
The Extension bit is used in accordance with [RFC3550].
CSRC count (CC): 4 bits
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
ffmpeg-linux (783个子文件)
libavcodec.so.52.20.0 4.79MB
libSDL-1.2.so.0 1.77MB
libfaad.so.2.0.0 645KB
libavformat.so.52.31.0 612KB
libamrnb.so.3.0.0 424KB
libamrwb.so.3.0.0 314KB
libmp3lame.so.0.0.0 279KB
libmp3lame.so.0 279KB
libtheora.so.0 267KB
libswscale.so.0 192KB
libvorbis.so.0 163KB
libfaac.so.0 67KB
libfaac.so.0.0.0 67KB
libogg.so.0 45KB
libogg.so.0.6.0 45KB
libavutil.so.49.15.0 43KB
libavdevice.so.52.1.0 20KB
libavfilter.so.0.4.0 10KB
libavfilter.so.0 10KB
libxvidcore.so.4.1 706KB
libtheoraenc.so.1.0.1 193KB
libtheoraenc.so.1 193KB
libswscale.so.0.7.1 192KB
libtheoradec.so.1 81KB
libtheoradec.so.1.0.1 81KB
ffmpeg.1 36KB
libvorbisfile.so.3.3.1 32KB
lame.1 27KB
yasm.1 11KB
ffplay.1 8KB
faac.1 3KB
libvorbisenc.so.2 1.1MB
libfaad.so.2 645KB
libvorbis.so.0.4.2 163KB
libSDL-1.2.so.0.11.3 1.77MB
libamrnb.so.3 424KB
libamrwb.so.3 314KB
libvorbisfile.so.3 32KB
SDLKey.3 6KB
SDL_Event.3 5KB
SDL_OpenAudio.3 5KB
SDL_PixelFormat.3 4KB
SDL_SetAlpha.3 4KB
SDL_SetVideoMode.3 4KB
SDL_CreateRGBSurface.3 3KB
SDL_CreateCursor.3 3KB
SDL_ConvertAudio.3 3KB
SDL_SetPalette.3 3KB
SDL_AudioCVT.3 3KB
SDL_Surface.3 3KB
SDL_AudioSpec.3 3KB
SDL_BlitSurface.3 3KB
SDL_SetColors.3 2KB
SDL_AddTimer.3 2KB
SDL_LockSurface.3 2KB
SDL_keysym.3 2KB
SDL_Overlay.3 2KB
SDL_ListModes.3 2KB
SDL_SetTimer.3 2KB
SDL_SemWaitTimeout.3 2KB
SDL_SetEventFilter.3 2KB
SDL_VideoInfo.3 2KB
SDL_MouseMotionEvent.3 2KB
SDL_JoyHatEvent.3 2KB
SDL_SetColorKey.3 2KB
SDL_ActiveEvent.3 2KB
SDL_SemTryWait.3 1KB
SDL_CDPlayTracks.3 1KB
SDL_CDOpen.3 1KB
SDL_GLattr.3 1KB
SDL_LoadWAV.3 1KB
SDL_WasInit.3 1KB
SDL_CDStatus.3 1KB
SDL_CD.3 1KB
SDL_MouseButtonEvent.3 1KB
SDL_GL_SetAttribute.3 1KB
SDL_KeyboardEvent.3 1KB
SDL_VideoModeOK.3 1KB
SDL_JoyBallEvent.3 1KB
SDL_JoyButtonEvent.3 1KB
SDL_CreateSemaphore.3 1KB
SDL_FillRect.3 1KB
SDL_UserEvent.3 1KB
SDL_BuildAudioCVT.3 1KB
SDL_GL_GetProcAddress.3 1KB
SDL_DisplayFormatAlpha.3 1KB
SDL_SemWait.3 1KB
SDL_PeepEvents.3 1KB
SDL_EnableUNICODE.3 1KB
SDL_JoystickOpen.3 1KB
SDL_JoystickGetAxis.3 1KB
SDL_PollEvent.3 1KB
SDL_MapRGBA.3 1KB
SDL_UpdateRects.3 1KB
SDL_MixAudio.3 1KB
SDL_JoyAxisEvent.3 1KB
SDL_MapRGB.3 1KB
SDL_GetModState.3 1KB
SDL_SetGammaRamp.3 1KB
SDL_SysWMEvent.3 1KB
共 783 条
- 1
- 2
- 3
- 4
- 5
- 6
- 8
sd102492
- 粉丝: 0
- 资源: 5
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 王姿.html
- 51单片机学习(1)-软件keil下载
- 历届(第1-21届)希望杯数学竞赛初一试题及答案(最新整理).doc全国数学邀请赛(264页资料)
- 水滴.psd
- TokenPocket_V2.1.2_release.apk
- Apache-druid-kafka-rce.yaml
- 基于C#的ASP.NET数据库原理及应用技术课程指导平台的开发
- 基于ROS的智能车轨迹跟踪算法的仿真与设计源码运用PID跟踪算法.zip.zip
- Bug Bounty Tip - i春秋Self-XSS变废为宝的奇思妙想
- 1991-2015年全国初中化学竞赛复赛试题汇编(212页)(24年竞赛复赛真题).docx天原杯
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
前往页