[FFmpeg-trac] #5781(documentation:reopened): avcodec_send_packet() fails with m4a files when AVCodecContext is created with avcodec_alloc_context3()

FFmpeg trac at avcodec.org
Sat Aug 20 00:25:23 EEST 2016


#5781: avcodec_send_packet() fails with m4a files when AVCodecContext is created
with avcodec_alloc_context3()
-------------------------------------+-------------------------------------
             Reporter:  patacca      |                    Owner:
                 Type:  enhancement  |                   Status:  reopened
             Priority:  normal       |                Component:
              Version:  git-master   |  documentation
             Keywords:               |               Resolution:
             Blocking:               |               Blocked By:
Analyzed by developer:  0            |  Reproduced by developer:  0
-------------------------------------+-------------------------------------
Changes (by jamrial):

 * status:  closed => reopened
 * resolution:  invalid =>
 * component:  undetermined => documentation
 * type:  defect => enhancement


Comment:

 Replying to [comment:4 cirrus]:
 > jamrial, I can't find documentation on this requirement in the FFmpeg
 API documentation. Quite contrary, none of the code samples has this call.

 If you check ffplay.c and ffprobe.c you'll see this in action (ffmpeg.c
 has yet to be updated to this API).

 Similarly, i recently pushed a patch for the demuxing_decoding example as
 commit bba6a03b2816d805d44bce4f9701a71f7d3f8dad.

 > I'm not quite happy with the situation. I closed the bug report on the
 MPD bug tracker as an apparent FFmpeg bug, because I couldn't find
 anything that's wrong with MPD.
 >
 > This looks like a secret trick, but it shouldn't be secret. Did I miss
 something?
 No, you didn't. The doxygen documentation in avcodec.h for avcodec_open2()
 doesn't mention it because an input AVStream is not required unless you're
 demuxing with lavf. I agree it should be mentioned somewhere, though.

 Basically, since AVStream.AVCodecContext (which has all the stream's
 parameters already filled) shouldn't be used anymore, the manually
 allocated AVCodecContext needs to be filled with said parameters in some
 way, and as its doxy states that's what the above function does.

--
Ticket URL: <https://trac.ffmpeg.org/ticket/5781#comment:5>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list