History

lavc: deprecate AV_CODEC_CAP_SUBFRAMES

There is nothing meaningful the caller can do with it.

Anton Khirnov committed 3 years ago

Commit 8b20d0d1 parent 51d6ae020 files · +101 −24Browse files

Unified · Split

20 files
  1. doc/APIchanges +3 −0
  2. libavcodec/alsdec.c +5 −1
  3. libavcodec/apac.c +4 −2
  4. libavcodec/apedec.c +5 −1
  5. libavcodec/atrac3.c +10 −2
  6. libavcodec/atrac9dec.c +5 −1
  7. libavcodec/bonk.c +4 −2
  8. libavcodec/codec.h +3 −0
  9. libavcodec/ftr.c +5 −1
  10. libavcodec/g723_1dec.c +5 −1
  11. libavcodec/g729dec.c +10 −2
  12. libavcodec/libspeexdec.c +5 −1
  13. libavcodec/misc4.c +4 −1
  14. libavcodec/shorten.c +4 −2
  15. libavcodec/tests/avcodec.c +1 −2
  16. libavcodec/version_major.h +1 −0
  17. libavcodec/wavarc.c +2 −0
  18. libavcodec/wmalosslessdec.c +5 −1
  19. libavcodec/wmaprodec.c +15 −3
  20. libavcodec/wmavoice.c +5 −1
doc/APIchanges+3−0
@@ -2,6 +2,9 @@ The last version increases of all libraries were on 2023-02-09 · 1 unmodified line
2 2
3API changes, most recent first:3API changes, most recent first:
4 4
52023-05-xx - xxxxxxxxxx - lavc 60 - codec.h
6 Depreate AV_CODEC_CAP_SUBFRAMES without replacement.
7
52023-05-xx - xxxxxxxxxx - lavc 60.11.100 - codec_par.h82023-05-xx - xxxxxxxxxx - lavc 60.11.100 - codec_par.h
6 Add AVCodecParameters.framerate.9 Add AVCodecParameters.framerate.
7 10
libavcodec/alsdec.c+5−1
@@ -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};
libavcodec/apac.c+4−2
@@ -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,
libavcodec/apedec.c+5−1
@@ -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,
libavcodec/atrac3.c+10−2
@@ -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,
libavcodec/atrac9dec.c+5−1
@@ -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};
libavcodec/bonk.c+4−2
@@ -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 },
libavcodec/codec.h+3−0
@@ -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 AVPacket85 * Codec can output multiple frames per AVPacket
85 * Normally demuxers return one frame at a time, demuxers which do not do86 * 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 experimental99 * Codec is experimental and is thus avoided in favor of non experimental
97 * encoders100 * encoders
libavcodec/ftr.c+5−1
@@ -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};
libavcodec/g723_1dec.c+5−1
@@ -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};
libavcodec/g729dec.c+10−2
@@ -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
766const FFCodec ff_acelp_kelvin_decoder = {770const 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};
libavcodec/libspeexdec.c+5−1
@@ -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),
libavcodec/misc4.c+4−1
@@ -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 },
libavcodec/shorten.c+4−2
@@ -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 },
libavcodec/tests/avcodec.c+1−2
@@ -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)
libavcodec/version_major.h+1−0
@@ -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 bump51// 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)
libavcodec/wavarc.c+2−0
@@ -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,
libavcodec/wmalosslessdec.c+5−1
@@ -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,
libavcodec/wmaprodec.c+15−3
@@ -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,
libavcodec/wmavoice.c+5−1
@@ -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};

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t