There is nothing meaningful the caller can do with it.
Unified · Split
| @@ -2,6 +2,9 @@ The last version increases of all libraries were on 2023-02-09 · 1 unmodified line | |||
| 2 | 2 | ||
| 3 | API changes, most recent first: | 3 | API changes, most recent first: |
| 4 | 4 | ||
| 5 | 2023-05-xx - xxxxxxxxxx - lavc 60 - codec.h | ||
| 6 | Depreate AV_CODEC_CAP_SUBFRAMES without replacement. | ||
| 7 | |||
| 5 | 2023-05-xx - xxxxxxxxxx - lavc 60.11.100 - codec_par.h | 8 | 2023-05-xx - xxxxxxxxxx - lavc 60.11.100 - codec_par.h |
| 6 | Add AVCodecParameters.framerate. | 9 | Add AVCodecParameters.framerate. |
| 7 | 10 | ||
| @@ -2190,6 +2190,10 @@ const FFCodec ff_als_decoder = { · 2189 unmodified lines | |||
| 2190 | .close = decode_end, | 2190 | .close = decode_end, |
| 2191 | FF_CODEC_DECODE_CB(decode_frame), | 2191 | FF_CODEC_DECODE_CB(decode_frame), |
| 2192 | .flush = flush, | 2192 | .flush = flush, |
| 2193 | .p.capabilities = AV_CODEC_CAP_SUBFRAMES | AV_CODEC_CAP_DR1 | AV_CODEC_CAP_CHANNEL_CONF, | 2193 | .p.capabilities = |
| 2194 | #if FF_API_SUBFRAMES | ||
| 2195 | AV_CODEC_CAP_SUBFRAMES | | ||
| 2196 | #endif | ||
| 2197 | AV_CODEC_CAP_DR1 | AV_CODEC_CAP_CHANNEL_CONF, | ||
| 2194 | .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, | 2198 | .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, |
| 2195 | }; | 2199 | }; |
| @@ -269,8 +269,10 @@ const FFCodec ff_apac_decoder = { · 268 unmodified lines | |||
| 269 | FF_CODEC_DECODE_CB(apac_decode), | 269 | FF_CODEC_DECODE_CB(apac_decode), |
| 270 | .close = apac_close, | 270 | .close = apac_close, |
| 271 | .p.capabilities = AV_CODEC_CAP_DELAY | | 271 | .p.capabilities = AV_CODEC_CAP_DELAY | |
| 272 | AV_CODEC_CAP_DR1 | | 272 | #if FF_API_SUBFRAMES |
| 273 | AV_CODEC_CAP_SUBFRAMES, | 273 | AV_CODEC_CAP_SUBFRAMES | |
| 274 | #endif | ||
| 275 | AV_CODEC_CAP_DR1, | ||
| 274 | .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, | 276 | .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, |
| 275 | .p.sample_fmts = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_U8P, | 277 | .p.sample_fmts = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_U8P, |
| 276 | AV_SAMPLE_FMT_S16P, | 278 | AV_SAMPLE_FMT_S16P, |
| @@ -1680,7 +1680,11 @@ const FFCodec ff_ape_decoder = { · 1679 unmodified lines | |||
| 1680 | .init = ape_decode_init, | 1680 | .init = ape_decode_init, |
| 1681 | .close = ape_decode_close, | 1681 | .close = ape_decode_close, |
| 1682 | FF_CODEC_DECODE_CB(ape_decode_frame), | 1682 | FF_CODEC_DECODE_CB(ape_decode_frame), |
| 1683 | .p.capabilities = AV_CODEC_CAP_SUBFRAMES | AV_CODEC_CAP_DELAY | | 1683 | .p.capabilities = |
| 1684 | #if FF_API_SUBFRAMES | ||
| 1685 | AV_CODEC_CAP_SUBFRAMES | | ||
| 1686 | #endif | ||
| 1687 | AV_CODEC_CAP_DELAY | | ||
| 1684 | AV_CODEC_CAP_DR1, | 1688 | AV_CODEC_CAP_DR1, |
| 1685 | .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, | 1689 | .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, |
| 1686 | .flush = ape_flush, | 1690 | .flush = ape_flush, |
| @@ -1026,7 +1026,11 @@ const FFCodec ff_atrac3_decoder = { · 1025 unmodified lines | |||
| 1026 | .init = atrac3_decode_init, | 1026 | .init = atrac3_decode_init, |
| 1027 | .close = atrac3_decode_close, | 1027 | .close = atrac3_decode_close, |
| 1028 | FF_CODEC_DECODE_CB(atrac3_decode_frame), | 1028 | FF_CODEC_DECODE_CB(atrac3_decode_frame), |
| 1029 | .p.capabilities = AV_CODEC_CAP_SUBFRAMES | AV_CODEC_CAP_DR1, | 1029 | .p.capabilities = |
| 1030 | #if FF_API_SUBFRAMES | ||
| 1031 | AV_CODEC_CAP_SUBFRAMES | | ||
| 1032 | #endif | ||
| 1033 | AV_CODEC_CAP_DR1, | ||
| 1030 | .p.sample_fmts = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_FLTP, | 1034 | .p.sample_fmts = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_FLTP, |
| 1031 | AV_SAMPLE_FMT_NONE }, | 1035 | AV_SAMPLE_FMT_NONE }, |
| 1032 | .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, | 1036 | .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, |
| @@ -1041,7 +1045,11 @@ const FFCodec ff_atrac3al_decoder = { · 8 unmodified lines | |||
| 1041 | .init = atrac3_decode_init, | 1045 | .init = atrac3_decode_init, |
| 1042 | .close = atrac3_decode_close, | 1046 | .close = atrac3_decode_close, |
| 1043 | FF_CODEC_DECODE_CB(atrac3al_decode_frame), | 1047 | FF_CODEC_DECODE_CB(atrac3al_decode_frame), |
| 1044 | .p.capabilities = AV_CODEC_CAP_SUBFRAMES | AV_CODEC_CAP_DR1, | 1048 | .p.capabilities = |
| 1049 | #if FF_API_SUBFRAMES | ||
| 1050 | AV_CODEC_CAP_SUBFRAMES | | ||
| 1051 | #endif | ||
| 1052 | AV_CODEC_CAP_DR1, | ||
| 1045 | .p.sample_fmts = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_FLTP, | 1053 | .p.sample_fmts = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_FLTP, |
| 1046 | AV_SAMPLE_FMT_NONE }, | 1054 | AV_SAMPLE_FMT_NONE }, |
| 1047 | .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, | 1055 | .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, |
| @@ -1003,5 +1003,9 @@ const FFCodec ff_atrac9_decoder = { · 1002 unmodified lines | |||
| 1003 | FF_CODEC_DECODE_CB(atrac9_decode_frame), | 1003 | FF_CODEC_DECODE_CB(atrac9_decode_frame), |
| 1004 | .flush = atrac9_decode_flush, | 1004 | .flush = atrac9_decode_flush, |
| 1005 | .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, | 1005 | .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, |
| 1006 | .p.capabilities = AV_CODEC_CAP_SUBFRAMES | AV_CODEC_CAP_DR1 | AV_CODEC_CAP_CHANNEL_CONF, | 1006 | .p.capabilities = |
| 1007 | #if FF_API_SUBFRAMES | ||
| 1008 | AV_CODEC_CAP_SUBFRAMES | | ||
| 1009 | #endif | ||
| 1010 | AV_CODEC_CAP_DR1 | AV_CODEC_CAP_CHANNEL_CONF, | ||
| 1007 | }; | 1011 | }; |
| @@ -428,8 +428,10 @@ const FFCodec ff_bonk_decoder = { · 427 unmodified lines | |||
| 428 | FF_CODEC_DECODE_CB(bonk_decode), | 428 | FF_CODEC_DECODE_CB(bonk_decode), |
| 429 | .close = bonk_close, | 429 | .close = bonk_close, |
| 430 | .p.capabilities = AV_CODEC_CAP_DELAY | | 430 | .p.capabilities = AV_CODEC_CAP_DELAY | |
| 431 | AV_CODEC_CAP_DR1 | | 431 | #if FF_API_SUBFRAMES |
| 432 | AV_CODEC_CAP_SUBFRAMES, | 432 | AV_CODEC_CAP_SUBFRAMES | |
| 433 | #endif | ||
| 434 | AV_CODEC_CAP_DR1, | ||
| 433 | .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, | 435 | .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, |
| 434 | .p.sample_fmts = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_S16P, | 436 | .p.sample_fmts = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_S16P, |
| 435 | AV_SAMPLE_FMT_NONE }, | 437 | AV_SAMPLE_FMT_NONE }, |
| @@ -80,6 +80,7 @@ · 79 unmodified lines | |||
| 80 | */ | 80 | */ |
| 81 | #define AV_CODEC_CAP_SMALL_LAST_FRAME (1 << 6) | 81 | #define AV_CODEC_CAP_SMALL_LAST_FRAME (1 << 6) |
| 82 | 82 | ||
| 83 | #if FF_API_SUBFRAMES | ||
| 83 | /** | 84 | /** |
| 84 | * Codec can output multiple frames per AVPacket | 85 | * Codec can output multiple frames per AVPacket |
| 85 | * Normally demuxers return one frame at a time, demuxers which do not do | 86 | * Normally demuxers return one frame at a time, demuxers which do not do |
| @@ -92,6 +93,8 @@ · 6 unmodified lines | |||
| 92 | * as a last resort. | 93 | * as a last resort. |
| 93 | */ | 94 | */ |
| 94 | #define AV_CODEC_CAP_SUBFRAMES (1 << 8) | 95 | #define AV_CODEC_CAP_SUBFRAMES (1 << 8) |
| 96 | #endif | ||
| 97 | |||
| 95 | /** | 98 | /** |
| 96 | * Codec is experimental and is thus avoided in favor of non experimental | 99 | * Codec is experimental and is thus avoided in favor of non experimental |
| 97 | * encoders | 100 | * encoders |
| @@ -203,6 +203,10 @@ const FFCodec ff_ftr_decoder = { · 202 unmodified lines | |||
| 203 | .close = ftr_close, | 203 | .close = ftr_close, |
| 204 | .flush = ftr_flush, | 204 | .flush = ftr_flush, |
| 205 | .priv_data_size = sizeof(FTRContext), | 205 | .priv_data_size = sizeof(FTRContext), |
| 206 | .p.capabilities = AV_CODEC_CAP_SUBFRAMES | AV_CODEC_CAP_DR1, | 206 | .p.capabilities = |
| 207 | #if FF_API_SUBFRAMES | ||
| 208 | AV_CODEC_CAP_SUBFRAMES | | ||
| 209 | #endif | ||
| 210 | AV_CODEC_CAP_DR1, | ||
| 207 | .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, | 211 | .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, |
| 208 | }; | 212 | }; |
| @@ -1118,6 +1118,10 @@ const FFCodec ff_g723_1_decoder = { · 1117 unmodified lines | |||
| 1118 | .priv_data_size = sizeof(G723_1_Context), | 1118 | .priv_data_size = sizeof(G723_1_Context), |
| 1119 | .init = g723_1_decode_init, | 1119 | .init = g723_1_decode_init, |
| 1120 | FF_CODEC_DECODE_CB(g723_1_decode_frame), | 1120 | FF_CODEC_DECODE_CB(g723_1_decode_frame), |
| 1121 | .p.capabilities = AV_CODEC_CAP_SUBFRAMES | AV_CODEC_CAP_DR1, | 1121 | .p.capabilities = |
| 1122 | #if FF_API_SUBFRAMES | ||
| 1123 | AV_CODEC_CAP_SUBFRAMES | | ||
| 1124 | #endif | ||
| 1125 | AV_CODEC_CAP_DR1, | ||
| 1122 | .p.priv_class = &g723_1dec_class, | 1126 | .p.priv_class = &g723_1dec_class, |
| 1123 | }; | 1127 | }; |
| @@ -760,7 +760,11 @@ const FFCodec ff_g729_decoder = { · 759 unmodified lines | |||
| 760 | .init = decoder_init, | 760 | .init = decoder_init, |
| 761 | FF_CODEC_DECODE_CB(decode_frame), | 761 | FF_CODEC_DECODE_CB(decode_frame), |
| 762 | .close = decode_close, | 762 | .close = decode_close, |
| 763 | .p.capabilities = AV_CODEC_CAP_SUBFRAMES | AV_CODEC_CAP_DR1, | 763 | .p.capabilities = |
| 764 | #if FF_API_SUBFRAMES | ||
| 765 | AV_CODEC_CAP_SUBFRAMES | | ||
| 766 | #endif | ||
| 767 | AV_CODEC_CAP_DR1, | ||
| 764 | }; | 768 | }; |
| 765 | 769 | ||
| 766 | const FFCodec ff_acelp_kelvin_decoder = { | 770 | const FFCodec ff_acelp_kelvin_decoder = { |
| @@ -772,5 +776,9 @@ const FFCodec ff_acelp_kelvin_decoder = { · 5 unmodified lines | |||
| 772 | .init = decoder_init, | 776 | .init = decoder_init, |
| 773 | FF_CODEC_DECODE_CB(decode_frame), | 777 | FF_CODEC_DECODE_CB(decode_frame), |
| 774 | .close = decode_close, | 778 | .close = decode_close, |
| 775 | .p.capabilities = AV_CODEC_CAP_SUBFRAMES | AV_CODEC_CAP_DR1, | 779 | .p.capabilities = |
| 780 | #if FF_API_SUBFRAMES | ||
| 781 | AV_CODEC_CAP_SUBFRAMES | | ||
| 782 | #endif | ||
| 783 | AV_CODEC_CAP_DR1, | ||
| 776 | }; | 784 | }; |
| @@ -195,7 +195,11 @@ const FFCodec ff_libspeex_decoder = { · 194 unmodified lines | |||
| 195 | CODEC_LONG_NAME("libspeex Speex"), | 195 | CODEC_LONG_NAME("libspeex Speex"), |
| 196 | .p.type = AVMEDIA_TYPE_AUDIO, | 196 | .p.type = AVMEDIA_TYPE_AUDIO, |
| 197 | .p.id = AV_CODEC_ID_SPEEX, | 197 | .p.id = AV_CODEC_ID_SPEEX, |
| 198 | .p.capabilities = AV_CODEC_CAP_SUBFRAMES | AV_CODEC_CAP_DELAY | AV_CODEC_CAP_DR1 | AV_CODEC_CAP_CHANNEL_CONF, | 198 | .p.capabilities = |
| 199 | #if FF_API_SUBFRAMES | ||
| 200 | AV_CODEC_CAP_SUBFRAMES | | ||
| 201 | #endif | ||
| 202 | AV_CODEC_CAP_DELAY | AV_CODEC_CAP_DR1 | AV_CODEC_CAP_CHANNEL_CONF, | ||
| 199 | .p.wrapper_name = "libspeex", | 203 | .p.wrapper_name = "libspeex", |
| 200 | .caps_internal = FF_CODEC_CAP_NOT_INIT_THREADSAFE, | 204 | .caps_internal = FF_CODEC_CAP_NOT_INIT_THREADSAFE, |
| 201 | .priv_data_size = sizeof(LibSpeexContext), | 205 | .priv_data_size = sizeof(LibSpeexContext), |
| @@ -179,7 +179,10 @@ const FFCodec ff_misc4_decoder = { · 178 unmodified lines | |||
| 179 | .priv_data_size = sizeof(MISC4Context), | 179 | .priv_data_size = sizeof(MISC4Context), |
| 180 | .init = misc4_init, | 180 | .init = misc4_init, |
| 181 | FF_CODEC_DECODE_CB(misc4_decode), | 181 | FF_CODEC_DECODE_CB(misc4_decode), |
| 182 | .p.capabilities = AV_CODEC_CAP_DR1 | AV_CODEC_CAP_SUBFRAMES | | 182 | .p.capabilities = AV_CODEC_CAP_DR1 | |
| 183 | #if FF_API_SUBFRAMES | ||
| 184 | AV_CODEC_CAP_SUBFRAMES | | ||
| 185 | #endif | ||
| 183 | AV_CODEC_CAP_CHANNEL_CONF, | 186 | AV_CODEC_CAP_CHANNEL_CONF, |
| 184 | .p.sample_fmts = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_S16, | 187 | .p.sample_fmts = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_S16, |
| 185 | AV_SAMPLE_FMT_NONE }, | 188 | AV_SAMPLE_FMT_NONE }, |
| @@ -814,8 +814,10 @@ const FFCodec ff_shorten_decoder = { · 813 unmodified lines | |||
| 814 | FF_CODEC_DECODE_CB(shorten_decode_frame), | 814 | FF_CODEC_DECODE_CB(shorten_decode_frame), |
| 815 | .p.capabilities = AV_CODEC_CAP_CHANNEL_CONF | | 815 | .p.capabilities = AV_CODEC_CAP_CHANNEL_CONF | |
| 816 | AV_CODEC_CAP_DELAY | | 816 | AV_CODEC_CAP_DELAY | |
| 817 | AV_CODEC_CAP_DR1 | | 817 | #if FF_API_SUBFRAMES |
| 818 | AV_CODEC_CAP_SUBFRAMES , | 818 | AV_CODEC_CAP_SUBFRAMES | |
| 819 | #endif | ||
| 820 | AV_CODEC_CAP_DR1, | ||
| 819 | .p.sample_fmts = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_S16P, | 821 | .p.sample_fmts = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_S16P, |
| 820 | AV_SAMPLE_FMT_U8P, | 822 | AV_SAMPLE_FMT_U8P, |
| 821 | AV_SAMPLE_FMT_NONE }, | 823 | AV_SAMPLE_FMT_NONE }, |
| @@ -149,8 +149,7 @@ int main(void){ · 148 unmodified lines | |||
| 149 | FF_CODEC_CAP_SETS_FRAME_PROPS) || | 149 | FF_CODEC_CAP_SETS_FRAME_PROPS) || |
| 150 | codec->capabilities & (AV_CODEC_CAP_AVOID_PROBING | | 150 | codec->capabilities & (AV_CODEC_CAP_AVOID_PROBING | |
| 151 | AV_CODEC_CAP_CHANNEL_CONF | | 151 | AV_CODEC_CAP_CHANNEL_CONF | |
| 152 | AV_CODEC_CAP_DRAW_HORIZ_BAND | | 152 | AV_CODEC_CAP_DRAW_HORIZ_BAND)) |
| 153 | AV_CODEC_CAP_SUBFRAMES)) | ||
| 154 | ERR("Encoder %s has decoder-only capabilities set\n"); | 153 | ERR("Encoder %s has decoder-only capabilities set\n"); |
| 155 | if (codec->capabilities & AV_CODEC_CAP_FRAME_THREADS && | 154 | if (codec->capabilities & AV_CODEC_CAP_FRAME_THREADS && |
| 156 | codec->capabilities & AV_CODEC_CAP_ENCODER_FLUSH) | 155 | codec->capabilities & AV_CODEC_CAP_ENCODER_FLUSH) |
| @@ -46,6 +46,7 @@ · 45 unmodified lines | |||
| 46 | #define FF_API_VT_HWACCEL_CONTEXT (LIBAVCODEC_VERSION_MAJOR < 61) | 46 | #define FF_API_VT_HWACCEL_CONTEXT (LIBAVCODEC_VERSION_MAJOR < 61) |
| 47 | #define FF_API_AVCTX_FRAME_NUMBER (LIBAVCODEC_VERSION_MAJOR < 61) | 47 | #define FF_API_AVCTX_FRAME_NUMBER (LIBAVCODEC_VERSION_MAJOR < 61) |
| 48 | #define FF_API_SLICE_OFFSET (LIBAVCODEC_VERSION_MAJOR < 61) | 48 | #define FF_API_SLICE_OFFSET (LIBAVCODEC_VERSION_MAJOR < 61) |
| 49 | #define FF_API_SUBFRAMES (LIBAVCODEC_VERSION_MAJOR < 61) | ||
| 49 | 50 | ||
| 50 | // reminder to remove CrystalHD decoders on next major bump | 51 | // reminder to remove CrystalHD decoders on next major bump |
| 51 | #define FF_CODEC_CRYSTAL_HD (LIBAVCODEC_VERSION_MAJOR < 61) | 52 | #define FF_CODEC_CRYSTAL_HD (LIBAVCODEC_VERSION_MAJOR < 61) |
| @@ -499,7 +499,9 @@ const FFCodec ff_wavarc_decoder = { · 498 unmodified lines | |||
| 499 | FF_CODEC_DECODE_CB(wavarc_decode), | 499 | FF_CODEC_DECODE_CB(wavarc_decode), |
| 500 | .close = wavarc_close, | 500 | .close = wavarc_close, |
| 501 | .p.capabilities = AV_CODEC_CAP_DR1 | | 501 | .p.capabilities = AV_CODEC_CAP_DR1 | |
| 502 | #if FF_API_SUBFRAMES | ||
| 502 | AV_CODEC_CAP_SUBFRAMES | | 503 | AV_CODEC_CAP_SUBFRAMES | |
| 504 | #endif | ||
| 503 | AV_CODEC_CAP_DELAY, | 505 | AV_CODEC_CAP_DELAY, |
| 504 | .p.sample_fmts = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_U8P, | 506 | .p.sample_fmts = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_U8P, |
| 505 | AV_SAMPLE_FMT_S16P, | 507 | AV_SAMPLE_FMT_S16P, |
| @@ -1334,7 +1334,11 @@ const FFCodec ff_wmalossless_decoder = { · 1333 unmodified lines | |||
| 1334 | .close = decode_close, | 1334 | .close = decode_close, |
| 1335 | FF_CODEC_DECODE_CB(decode_packet), | 1335 | FF_CODEC_DECODE_CB(decode_packet), |
| 1336 | .flush = flush, | 1336 | .flush = flush, |
| 1337 | .p.capabilities = AV_CODEC_CAP_SUBFRAMES | AV_CODEC_CAP_DR1 | AV_CODEC_CAP_DELAY, | 1337 | .p.capabilities = |
| 1338 | #if FF_API_SUBFRAMES | ||
| 1339 | AV_CODEC_CAP_SUBFRAMES | | ||
| 1340 | #endif | ||
| 1341 | AV_CODEC_CAP_DR1 | AV_CODEC_CAP_DELAY, | ||
| 1338 | .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, | 1342 | .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, |
| 1339 | .p.sample_fmts = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_S16P, | 1343 | .p.sample_fmts = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_S16P, |
| 1340 | AV_SAMPLE_FMT_S32P, | 1344 | AV_SAMPLE_FMT_S32P, |
| @@ -2094,7 +2094,11 @@ const FFCodec ff_wmapro_decoder = { · 2093 unmodified lines | |||
| 2094 | .init = wmapro_decode_init, | 2094 | .init = wmapro_decode_init, |
| 2095 | .close = wmapro_decode_end, | 2095 | .close = wmapro_decode_end, |
| 2096 | FF_CODEC_DECODE_CB(wmapro_decode_packet), | 2096 | FF_CODEC_DECODE_CB(wmapro_decode_packet), |
| 2097 | .p.capabilities = AV_CODEC_CAP_SUBFRAMES | AV_CODEC_CAP_DR1, | 2097 | .p.capabilities = |
| 2098 | #if FF_API_SUBFRAMES | ||
| 2099 | AV_CODEC_CAP_SUBFRAMES | | ||
| 2100 | #endif | ||
| 2101 | AV_CODEC_CAP_DR1, | ||
| 2098 | .flush = wmapro_flush, | 2102 | .flush = wmapro_flush, |
| 2099 | .p.sample_fmts = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_FLTP, | 2103 | .p.sample_fmts = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_FLTP, |
| 2100 | AV_SAMPLE_FMT_NONE }, | 2104 | AV_SAMPLE_FMT_NONE }, |
| @@ -2111,7 +2115,11 @@ const FFCodec ff_xma1_decoder = { · 10 unmodified lines | |||
| 2111 | .close = xma_decode_end, | 2115 | .close = xma_decode_end, |
| 2112 | FF_CODEC_DECODE_CB(xma_decode_packet), | 2116 | FF_CODEC_DECODE_CB(xma_decode_packet), |
| 2113 | .flush = xma_flush, | 2117 | .flush = xma_flush, |
| 2114 | .p.capabilities = AV_CODEC_CAP_SUBFRAMES | AV_CODEC_CAP_DR1 | AV_CODEC_CAP_DELAY, | 2118 | .p.capabilities = |
| 2119 | #if FF_API_SUBFRAMES | ||
| 2120 | AV_CODEC_CAP_SUBFRAMES | | ||
| 2121 | #endif | ||
| 2122 | AV_CODEC_CAP_DR1 | AV_CODEC_CAP_DELAY, | ||
| 2115 | .p.sample_fmts = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_FLTP, | 2123 | .p.sample_fmts = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_FLTP, |
| 2116 | AV_SAMPLE_FMT_NONE }, | 2124 | AV_SAMPLE_FMT_NONE }, |
| 2117 | .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, | 2125 | .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, |
| @@ -2127,7 +2135,11 @@ const FFCodec ff_xma2_decoder = { · 9 unmodified lines | |||
| 2127 | .close = xma_decode_end, | 2135 | .close = xma_decode_end, |
| 2128 | FF_CODEC_DECODE_CB(xma_decode_packet), | 2136 | FF_CODEC_DECODE_CB(xma_decode_packet), |
| 2129 | .flush = xma_flush, | 2137 | .flush = xma_flush, |
| 2130 | .p.capabilities = AV_CODEC_CAP_SUBFRAMES | AV_CODEC_CAP_DR1 | AV_CODEC_CAP_DELAY, | 2138 | .p.capabilities = |
| 2139 | #if FF_API_SUBFRAMES | ||
| 2140 | AV_CODEC_CAP_SUBFRAMES | | ||
| 2141 | #endif | ||
| 2142 | AV_CODEC_CAP_DR1 | AV_CODEC_CAP_DELAY, | ||
| 2131 | .p.sample_fmts = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_FLTP, | 2143 | .p.sample_fmts = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_FLTP, |
| 2132 | AV_SAMPLE_FMT_NONE }, | 2144 | AV_SAMPLE_FMT_NONE }, |
| 2133 | .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, | 2145 | .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, |
| @@ -2004,7 +2004,11 @@ const FFCodec ff_wmavoice_decoder = { · 2003 unmodified lines | |||
| 2004 | .init = wmavoice_decode_init, | 2004 | .init = wmavoice_decode_init, |
| 2005 | .close = wmavoice_decode_end, | 2005 | .close = wmavoice_decode_end, |
| 2006 | FF_CODEC_DECODE_CB(wmavoice_decode_packet), | 2006 | FF_CODEC_DECODE_CB(wmavoice_decode_packet), |
| 2007 | .p.capabilities = AV_CODEC_CAP_SUBFRAMES | AV_CODEC_CAP_DR1 | AV_CODEC_CAP_DELAY, | 2007 | .p.capabilities = |
| 2008 | #if FF_API_SUBFRAMES | ||
| 2009 | AV_CODEC_CAP_SUBFRAMES | | ||
| 2010 | #endif | ||
| 2011 | AV_CODEC_CAP_DR1 | AV_CODEC_CAP_DELAY, | ||
| 2008 | .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, | 2012 | .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, |
| 2009 | .flush = wmavoice_flush, | 2013 | .flush = wmavoice_flush, |
| 2010 | }; | 2014 | }; |