ffmpeg | branch: master | Michael Niedermayer <michae...@gmx.at> | Sat May 16 19:59:18 2015 +0200| [58afb3128bc650dbc22ae0a8d167be24d8863dfe] | committer: Michael Niedermayer
avformat/mxfenc: Set the component depth from the pixel format if available Reviewed-by: tim nicholson <nicho...@yahoo.com> Signed-off-by: Michael Niedermayer <michae...@gmx.at> > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=58afb3128bc650dbc22ae0a8d167be24d8863dfe --- libavformat/mxfenc.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/libavformat/mxfenc.c b/libavformat/mxfenc.c index 5966792..14449c9 100644 --- a/libavformat/mxfenc.c +++ b/libavformat/mxfenc.c @@ -39,6 +39,7 @@ #include "libavutil/random_seed.h" #include "libavutil/timecode.h" #include "libavutil/avassert.h" +#include "libavutil/pixdesc.h" #include "libavutil/time_internal.h" #include "libavcodec/bytestream.h" #include "libavcodec/dnxhddata.h" @@ -2029,10 +2030,16 @@ static int mxf_write_header(AVFormatContext *s) } if (st->codec->codec_type == AVMEDIA_TYPE_VIDEO) { + const AVPixFmtDescriptor *pix_desc = av_pix_fmt_desc_get(st->codec->pix_fmt); // TODO: should be avg_frame_rate AVRational rate, tbc = st->time_base; // Default component depth to 8 sc->component_depth = 8; + + if (pix_desc) { + sc->component_depth = pix_desc->comp[0].depth_minus1 + 1; + } + mxf->timecode_base = (tbc.den + tbc.num/2) / tbc.num; spf = ff_mxf_get_samples_per_frame(s, tbc); if (!spf) { _______________________________________________ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog