[FFmpeg-cvslog] pnmenc: use bits_per_raw_sample

Christophe Gisquet git at videolan.org
Sun Aug 24 11:39:20 CEST 2014


ffmpeg | branch: master | Christophe Gisquet <christophe.gisquet at gmail.com> | Wed Aug 20 08:10:45 2014 +0000| [1506ea947d3c527f67a5caa93cc7fa0d064bbf1f] | committer: Michael Niedermayer

pnmenc: use bits_per_raw_sample

This allows writing actual bitdepth in RGB48 when it isn't actually 16.

Signed-off-by: Michael Niedermayer <michaelni at gmx.at>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=1506ea947d3c527f67a5caa93cc7fa0d064bbf1f
---

 libavcodec/pnmenc.c |    2 ++
 1 file changed, 2 insertions(+)

diff --git a/libavcodec/pnmenc.c b/libavcodec/pnmenc.c
index e6c3635..9198ddb 100644
--- a/libavcodec/pnmenc.c
+++ b/libavcodec/pnmenc.c
@@ -84,6 +84,8 @@ static int pnm_encode_frame(AVCodecContext *avctx, AVPacket *pkt,
     bytestream += strlen(bytestream);
     if (avctx->pix_fmt != AV_PIX_FMT_MONOWHITE) {
         int maxdepth = (1 << (av_pix_fmt_desc_get(avctx->pix_fmt)->comp[0].depth_minus1 + 1)) - 1;
+        if( avctx->bits_per_raw_sample )
+            maxdepth = (1 << avctx->bits_per_raw_sample) - 1;
         snprintf(bytestream, bytestream_end - bytestream,
                  "%d\n", maxdepth);
         bytestream += strlen(bytestream);



More information about the ffmpeg-cvslog mailing list