]> git.sesse.net Git - ffmpeg/blobdiff - libavcodec/msvideo1enc.c
ffmpeg: preserve bits_per_coded sample on stream copy.
[ffmpeg] / libavcodec / msvideo1enc.c
index 836b3c649436fcd274ba02dbe7d4df8b99b52a47..96fbea27de790136736968d844766e646ecea9df 100644 (file)
@@ -25,6 +25,7 @@
  */
 
 #include "avcodec.h"
+#include "internal.h"
 #include "bytestream.h"
 #include "libavutil/lfg.h"
 #include "elbg.h"
@@ -75,11 +76,8 @@ static int encode_frame(AVCodecContext *avctx, AVPacket *pkt,
     int i, j, k, x, y, ret;
     int skips = 0;
 
-    if (!pkt->data &&
-        (ret = av_new_packet(pkt, avctx->width*avctx->height*9 + FF_MIN_BUFFER_SIZE)) < 0) {
-        av_log(avctx, AV_LOG_ERROR, "Error getting output packet.\n");
+    if ((ret = ff_alloc_packet2(avctx, pkt, avctx->width*avctx->height*9 + FF_MIN_BUFFER_SIZE)) < 0)
         return ret;
-    }
     dst= buf= pkt->data;
 
     *p = *pict;
@@ -278,6 +276,7 @@ static av_cold int encode_init(AVCodecContext *avctx)
 
     avcodec_get_frame_defaults(&c->pic);
     avctx->coded_frame = (AVFrame*)&c->pic;
+    avctx->bits_per_coded_sample = 16;
 
     c->keyint = avctx->keyint_min;
     av_lfg_init(&c->rnd, 1);