[FFmpeg-cvslog] alacenc: do not set bits_per_coded_sample

Justin Ruggles git at videolan.org
Sun Feb 12 01:34:07 CET 2012


ffmpeg | branch: master | Justin Ruggles <justin.ruggles at gmail.com> | Wed Feb  1 20:41:40 2012 -0500| [64fe3eaeb351582787cbef75a2fe160253663363] | committer: Justin Ruggles

alacenc: do not set bits_per_coded_sample

encoded ALAC does not have a fixed number of bits per sample

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

 libavcodec/alacenc.c |    9 ++++-----
 1 files changed, 4 insertions(+), 5 deletions(-)

diff --git a/libavcodec/alacenc.c b/libavcodec/alacenc.c
index 8130542..9725be8 100644
--- a/libavcodec/alacenc.c
+++ b/libavcodec/alacenc.c
@@ -393,7 +393,6 @@ static av_cold int alac_encode_init(AVCodecContext *avctx)
     uint8_t *alac_extradata = av_mallocz(ALAC_EXTRADATA_SIZE+1);
 
     avctx->frame_size      = DEFAULT_FRAME_SIZE;
-    avctx->bits_per_coded_sample = DEFAULT_SAMPLE_SIZE;
 
     if (avctx->sample_fmt != AV_SAMPLE_FMT_S16) {
         av_log(avctx, AV_LOG_ERROR, "only pcm_s16 input samples are supported\n");
@@ -420,18 +419,18 @@ static av_cold int alac_encode_init(AVCodecContext *avctx)
     s->rc.k_modifier      = 14;
     s->rc.rice_modifier   = 4;
 
-    s->max_coded_frame_size = 8 + (avctx->frame_size*avctx->channels*avctx->bits_per_coded_sample>>3);
+    s->max_coded_frame_size = 8 + (avctx->frame_size * avctx->channels * DEFAULT_SAMPLE_SIZE >> 3);
 
-    s->write_sample_size  = avctx->bits_per_coded_sample + avctx->channels - 1; // FIXME: consider wasted_bytes
+    s->write_sample_size  = DEFAULT_SAMPLE_SIZE + avctx->channels - 1; // FIXME: consider wasted_bytes
 
     AV_WB32(alac_extradata,    ALAC_EXTRADATA_SIZE);
     AV_WB32(alac_extradata+4,  MKBETAG('a','l','a','c'));
     AV_WB32(alac_extradata+12, avctx->frame_size);
-    AV_WB8 (alac_extradata+17, avctx->bits_per_coded_sample);
+    AV_WB8 (alac_extradata+17, DEFAULT_SAMPLE_SIZE);
     AV_WB8 (alac_extradata+21, avctx->channels);
     AV_WB32(alac_extradata+24, s->max_coded_frame_size);
     AV_WB32(alac_extradata+28,
-            avctx->sample_rate * avctx->channels * avctx->bits_per_coded_sample); // average bitrate
+            avctx->sample_rate * avctx->channels * DEFAULT_SAMPLE_SIZE); // average bitrate
     AV_WB32(alac_extradata+32, avctx->sample_rate);
 
     // Set relevant extradata fields



More information about the ffmpeg-cvslog mailing list