]> git.sesse.net Git - ffmpeg/blobdiff - libavcodec/wavpack.c
Remove unnecessary fields in ALSSpecificConfig.
[ffmpeg] / libavcodec / wavpack.c
index 10254f08def8c9d2855f4ba8257e111b3c23a415..783e7d70bfe7162a161843941f6e9c707285077f 100644 (file)
@@ -378,7 +378,7 @@ static float wv_get_value_float(WavpackContext *s, uint32_t *crc, int S)
 
     if(s->got_extra_bits){
         const int max_bits = 1 + 23 + 8 + 1;
-        const int left_bits = s->gb_extra_bits.size_in_bits - get_bits_count(&s->gb_extra_bits);
+        const int left_bits = get_bits_left(&s->gb_extra_bits);
 
         if(left_bits + 8 * FF_INPUT_BUFFER_PADDING_SIZE < max_bits)
             return 0.0;
@@ -897,7 +897,7 @@ static int wavpack_decode_frame(AVCodecContext *avctx,
         return -1;
     }
     if(s->got_extra_bits && avctx->sample_fmt != SAMPLE_FMT_FLT){
-        const int size = s->gb_extra_bits.size_in_bits - get_bits_count(&s->gb_extra_bits);
+        const int size = get_bits_left(&s->gb_extra_bits);
         const int wanted = s->samples * s->extra_bits << s->stereo_in;
         if(size < wanted){
             av_log(avctx, AV_LOG_ERROR, "Too small EXTRABITS\n");
@@ -964,5 +964,6 @@ AVCodec wavpack_decoder = {
     NULL,
     NULL,
     wavpack_decode_frame,
+    .capabilities = CODEC_CAP_SUBFRAMES,
     .long_name = NULL_IF_CONFIG_SMALL("WavPack"),
 };