[FFmpeg-devel] [PATCH 2/2] ffmpeg: stop using AVStream.codec on stream copy

Michael Niedermayer michael at niedermayer.cc
Tue Sep 27 01:58:17 EEST 2016


On Mon, Sep 26, 2016 at 07:17:20PM -0300, James Almer wrote:
> On 9/26/2016 6:38 PM, Michael Niedermayer wrote:
> > On Mon, Sep 26, 2016 at 02:39:13PM -0300, James Almer wrote:
> >> This commit is based on commit 35c8580 from Anton Khirnov <anton at khirnov.net>
> >> which was skipped in b8945c4.
> >>
> >> The avcodec_copy_context() call in the encode path is left in place for now
> >> as AVStream.codec is apparently still required even after porting ffmpeg to
> >> the new bsf API.
> >>
> >> Signed-off-by: James Almer <jamrial at gmail.com>
> >> ---
> >>  ffmpeg.c     | 25 ++++++++++++-------------
> >>  ffmpeg.h     |  1 +
> >>  ffmpeg_opt.c | 12 +-----------
> >>  3 files changed, 14 insertions(+), 24 deletions(-)
> > 
> > This breaks
> > ./ffmpeg -i matrixbench_mpeg2.mpg -flags +bitexact -t 1 -codec copy -f framecrc -
> > compared to the case before the patch and without codec copy
> > "#software: Lavf57.50.100"
> > is output
> 
> AVCodecContext flag bitexact is (for now) converted into AVFormatContext flag
> bitexact, and by removing the chunk in ffmpeg_opt.c that sets the former in
> st->codec, this doesn't happen anymore.
> 
> This is from init_muxer() libavformat/mux.c, and it's scheduled for removal
> with FF_API_LAVF_BITEXACT and ultimately with FF_API_LAVF_AVCTX, so i guess
> i'll leave the chunk in question in place and just wrap it up with a check
> for the latter define. Is that ok?

ok, can you post the resulting patch so i can test if it breaks
anything else ?

also totally off topic but related
we should add a '-bitexact' option instead of requiring to set both
flags. i think someone had suggested this previously but it seems to
be sliping down on my todo list ... if someone wants to add that ...

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

I am the wisest man alive, for I know one thing, and that is that I know
nothing. -- Socrates
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: Digital signature
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20160927/05997a7b/attachment.sig>


More information about the ffmpeg-devel mailing list