Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
Opus
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Container Registry
Model registry
Operate
Environments
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Xiph.Org
Opus
Commits
262538ee
Commit
262538ee
authored
16 years ago
by
Jean-Marc Valin
Browse files
Options
Downloads
Patches
Plain Diff
Using b=AS: for the bandwidth. Moved the example to the end of the SDP section
parent
05f4d964
No related branches found
Branches containing commit
No related tags found
Tags containing commit
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
doc/ietf/draft-valin-celt-rtp-profile.xml
+78
-49
78 additions, 49 deletions
doc/ietf/draft-valin-celt-rtp-profile.xml
with
78 additions
and
49 deletions
doc/ietf/draft-valin-celt-rtp-profile.xml
+
78
−
49
View file @
262538ee
<?xml version='1.0'?>
<!DOCTYPE rfc SYSTEM 'rfc2629.dtd'>
<?rfc toc="yes" ?>
<?rfc
symrefs="yes"
toc="yes" ?>
<rfc
ipr=
"full3978"
docName=
"RTP Payload Format for the CELT Codec"
>
...
...
@@ -435,7 +435,45 @@ CELT audio only.
<t>
When conveying information by SDP
<xref
target=
"rfc2327"
></xref>
, the encoding name MUST be
set to "CELT". An example of the media representation in SDP for
set to "CELT". The sampling frequency is typically between 32000 and 48000 Hz.
Implementations SHOULD support both 44100 Hz and 48000 Hz. The maximum bandwidth permitted for
the CELT audio is encoded using the "b=AS:" header, as explained in SDP
<xref
target=
"rfc2327"
></xref>
.
</t>
<t>
Several CELT-specific parameters can be given via the "a=fmtp:" directive. The
following parameters are defined for use in this way:
</t>
<t>
<vspace
blankLines=
"1"
/>
<list
style=
"empty"
>
<t>
frame-size: duration of each frame in samples. The default is 256.
<vspace
blankLines=
"1"
/></t>
<t>
nb-frames: number of frames per packet (per stream). The default is 1.
<vspace
blankLines=
"1"
/></t>
<t>
mapping: Optional string describing the multi-channel mapping.
<vspace
blankLines=
"1"
/></t>
</list>
</t>
<t>
Several CELT specific parameters can be given in a single
a=fmtp line provided that they are separated by a semi-colon.
</t>
<t>
The selected frame-size value MUST be even. It SHOULD be divisible by 8
and have a prime factorization which consists only 2, 3, or 5 factors.
For example, powers-of-two and values such as 160, 320, 240, and 480 are
recommended. Implementations SHOULD support receiving and sending the default
value of 256, and if the size 256 is supported it MUST be offered.
</t>
<t>
Care must be taken when setting the value of max-size and nb-frames so that the
RTP packet size does not exceed the path MTU.
</t>
<t>
An example of the media representation in SDP for
offering a single channel of CELT at 48000 samples per second might
be:
</t>
...
...
@@ -456,15 +494,7 @@ could have been chosen (the allowed range for dynamic types).
</t>
<t>
The value of the sampling frequency is typically between 32000 and 48000 Hz.
Implementations should support both 44100 Hz and 48000 Hz.
</t>
<t>
If for some reason the offerer has bandwidth limitations, the client
may use the "b=" header, as explained in SDP
<xref
target=
"rfc2327"
></xref>
. The following example
illustrates the case where the offerer cannot receive more than
64 kbit/s.
The following example illustrates the case where the offerer cannot receive more than 64 kbit/s.
</t>
<t>
...
...
@@ -483,61 +513,26 @@ CELT encoder so that it does not use modes that produce more than
payload types that may be proposed in the media line ("m=").
</t>
<t>
An other way to make recommendations to the remote CELT encoder
is to use its specific parameters via the a=fmtp: directive. The
following parameters are defined for use in this way:
</t>
<t>
<vspace
blankLines=
"1"
/>
<list
style=
"empty"
>
<t>
frame-samples: duration of each frame in samples (default is 256).
<vspace
blankLines=
"1"
/>
</t>
<t>
nb-frames: number of frames per packet (default is 1).
<vspace
blankLines=
"1"
/></t>
<t>
max-size: maximum number of bytes of compressed data per CELT frame.
<vspace
blankLines=
"1"
/></t>
<t>
mapping: Optional string describing the multi-channel mapping.
<vspace
blankLines=
"1"
/></t>
</list>
</t>
<t>
Example
s:
</t>
<t>
The following example demonstrates the use of the a=fmtp: parameter
s:
</t>
<t>
<vspace
blankLines=
"1"
/>
<list
style=
"empty"
>
<t>
m=audio 8008 RTP/AVP 97
</t>
<t>
a=rtpmap:97 CELT/44100
</t>
<t>
a=fmtp:97 frame-s
amples
=512;nb-frames=2;
max-size=100
</t>
<t>
a=fmtp:97 frame-s
ize
=512;nb-frames=2;
</t>
</list>
</t>
<t>
This examples illustrate an offerer that wishes to receive
a CELT stream at 44100 Hz, by packing two 512-sample frames in each packet
which is limited to a total of 201 bytes of payload.
a CELT stream at 44100 Hz, by packing two 512-sample frames in each packet.
</t>
<t>
Several CELT specific parameters can be given in a single
a=fmtp line provided that they are separated by a semi-colon.
</t>
<t>
The selected frame-samples value MUST be even. It SHOULD be divisible by 8
and have a prime factorization which consists only 2, 3, or 5 factors.
For example, powers-of-two and values such as 160, 320, 240, and 480 are
recommended. Implementations SHOULD support receiving and sending the default
value of 256, and if the size 256 is supported it MUST be offered.
</t>
<t>
Care must be taken when setting the value of max-size and nb-frames so that the
RTP packet size does not exceed the path MTU.
</t>
</section>
...
...
@@ -765,6 +760,40 @@ CELT and AVT communities for their input:
<seriesInfo
name=
"RFC"
value=
"3534"
/>
</reference>
<reference
anchor=
"rfc3711"
>
<front>
<title>
The Secure Real-time Transport Protocol (SRTP)
</title>
<author
initials=
"M."
surname=
"Baugher"
fullname=
""
><organization/></author>
<author
initials=
"D."
surname=
"McGrew"
fullname=
""
><organization/></author>
<author
initials=
"M."
surname=
"Naslund"
fullname=
""
><organization/></author>
<author
initials=
"E."
surname=
"Carrara"
fullname=
""
><organization/></author>
<author
initials=
"K."
surname=
"Norrman"
fullname=
""
><organization/></author>
<date
month=
"March"
year=
"2004"
/>
</front>
<seriesInfo
name=
"RFC"
value=
"3711"
/>
</reference>
<reference
anchor=
"rfc4301"
>
<front>
<title>
Security Architecture for the Internet Protocol
</title>
<author
initials=
"S."
surname=
"Kent"
fullname=
""
><organization/></author>
<author
initials=
"K."
surname=
"Seo"
fullname=
""
><organization/></author>
<date
month=
"December"
year=
"2005"
/>
</front>
<seriesInfo
name=
"RFC"
value=
"4301"
/>
</reference>
<reference
anchor=
"rfc5246"
>
<front>
<title>
The Transport Layer Security (TLS) Protocol Version 1.2
</title>
<author
initials=
"T."
surname=
"Dierks"
fullname=
""
><organization/></author>
<author
initials=
"E."
surname=
"Rescorla"
fullname=
""
><organization/></author>
<date
month=
"August"
year=
"2008"
/>
</front>
<seriesInfo
name=
"RFC"
value=
"5246"
/>
</reference>
</references>
<references
title=
"Informative References"
>
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment