Skip to content

Commit 035cb69

Browse files
robUx4dericed
andcommitted
Add A_OPUS audio codec
Co-authored-by: Dave Rice <[email protected]>
1 parent 9c9b0c3 commit 035cb69

File tree

1 file changed

+22
-0
lines changed

1 file changed

+22
-0
lines changed

codec_specs.md

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -780,6 +780,28 @@ AAC audio always uses wFormatTag 0xFF.
780780

781781
Initialization: none
782782

783+
### A_OPUS
784+
785+
Codec ID: A_OPUS
786+
787+
Codec Name: Opus interactive speech and audio codec
788+
789+
Description: The OPUS audio codec defined by [@!RFC6716] using a similar encapsulation as the Ogg Encapsulation [@!RFC7845].
790+
791+
Initialization: The track `CodecPrivate` **MUST** be present and contain the `Identification Header` defined in [@!RFC7845, section 5.1].
792+
793+
Channels: The track `Channels` element value **MUST** be the "Output Channel Count" value of the `Identification Header`.
794+
795+
SamplingFrequency: The track `SamplingFrequency` element value **MUST** be the "Input Sample Rate" value of the `Identification Header`.
796+
797+
CodecDelay: The track `CodecDelay` element **MUST** be present and set to the "Pre-skip" value of the `Identification Header` translated to Matroska Ticks.
798+
The "Pre-skip" value is in samples at 48,000 Hz. The formula to get the `CodecDelay` is:
799+
800+
CodecDelay = pre-skip * 1,000,000,000 / 48,000.
801+
802+
SeekPreRoll: The track `SeekPreRoll` element **SHOULD** be present and set to 80,000,000 -- 80 ms in Matroska Ticks --
803+
in order to ensure that the output audio is correct by the time it reaches the seek target.
804+
783805
### A_QUICKTIME
784806

785807
Codec ID: A_QUICKTIME

0 commit comments

Comments
 (0)