[FFmpeg-trac] #7011(avformat:new): Decoding of chained opus streams isn't properly supported

FFmpeg trac at avcodec.org
Wed Feb 7 23:12:22 EET 2018


#7011: Decoding of chained opus streams isn't properly supported
-----------------------------------+---------------------------------------
             Reporter:  neknek446  |                     Type:  defect
               Status:  new        |                 Priority:  normal
            Component:  avformat   |                  Version:  unspecified
             Keywords:  opus ogg   |               Blocked By:
             Blocking:             |  Reproduced by developer:  0
Analyzed by developer:  0          |
-----------------------------------+---------------------------------------
 Summary of the bug:
 ffmpeg currently doesn't support chained opus streams (as specified in
 <https://tools.ietf.org/html/rfc7845.html#section-7.2>).
 When decoding opus stream with `OpusHead`/`OpusTags` packets not in
 begining of overall stream, it produces "Error parsing the packet header."
 error messages and crack noises, and also doesn't update tags.
 For opus stream chaining to work, opus decoder
 (libavformat/oggparseopus.c) should:
 * handle `OpusHead` packets (including discarding pre-skip ammount of
 samples). It currently handles this well only in opus_header function.
 * handle `OpusTags` packets (including updating metadata). It currently
 handles this well only in opus_header function.
 * handle EOS-marked packets with granule position smaller than last
 granule position + ammount of samples contained in packet by discarding
 excess decoded samples. I looked at code and it seems to currently do this
 already.

 How to reproduce:
 {{{
 wget https://jmvalin.ca/misc_stuff/chain_works.opus
 ffmpeg -i chain_works.opus chain_works.wav
 }}}
 or
 {{{
 mpv https://jmvalin.ca/misc_stuff/chain_works.opus
 }}}
 or
 {{{
 mplayer https://jmvalin.ca/misc_stuff/chain_works.opus
 }}}

 Also relevant VLC ticket: <https://trac.videolan.org/vlc/ticket/18401>.

--
Ticket URL: <https://trac.ffmpeg.org/ticket/7011>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list