On Sun, 8 May 2016 17:33:32 +0200 Michael Niedermayer <mich...@niedermayer.cc> wrote:
> On Sun, May 08, 2016 at 04:10:01PM +0200, wm4 wrote: > > On Sun, 8 May 2016 12:10:07 +0200 > > Michael Niedermayer <mich...@niedermayer.cc> wrote: > > > > > Fixes Ticket5467 > > > > > > Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc> > > > --- > > > libavcodec/avcodec.h | 4 ++++ > > > libavcodec/utils.c | 2 ++ > > > 2 files changed, 6 insertions(+) > > > > > > diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h > > > index 3813a0a..1db2e0f 100644 > > > --- a/libavcodec/avcodec.h > > > +++ b/libavcodec/avcodec.h > > > @@ -4050,6 +4050,10 @@ typedef struct AVCodecParameters { > > > * Audio only. Number of samples to skip after a discontinuity. > > > */ > > > int seek_preroll; > > > + > > > + /** Properties, like FF_CODEC_PROPERTY_LOSSLESS. > > > + */ > > > + int properties; > > > } AVCodecParameters; > > > > > > /** > > > diff --git a/libavcodec/utils.c b/libavcodec/utils.c > > > index e6609ef..8638bc2 100644 > > > --- a/libavcodec/utils.c > > > +++ b/libavcodec/utils.c > > > @@ -4076,6 +4076,7 @@ int > > > avcodec_parameters_from_context(AVCodecParameters *par, > > > par->bits_per_raw_sample = codec->bits_per_raw_sample; > > > par->profile = codec->profile; > > > par->level = codec->level; > > > + par->properties = codec->properties; > > > > > > switch (par->codec_type) { > > > case AVMEDIA_TYPE_VIDEO: > > > @@ -4130,6 +4131,7 @@ int avcodec_parameters_to_context(AVCodecContext > > > *codec, > > > codec->bits_per_raw_sample = par->bits_per_raw_sample; > > > codec->profile = par->profile; > > > codec->level = par->level; > > > + codec->properties = par->properties; > > > > > > switch (par->codec_type) { > > > case AVMEDIA_TYPE_VIDEO: > > > > Can you explain what exactly this is needed for? > > User apps can with this identify which streams are lossless without > them needing to open decoders for each stream and explicitly decode > some frames for each stream. I'd argue that AVCodecParameters should contain only container properties, or we'd end up with duplicating most of AVCodecContext in it. > it fixes a regression where this information is incorrectly printed > by av_dump_format() > > it fixes a regression where the existing lossless flag as documented by > the current documentation is set incorrectly > > [...] > _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel