2 * Provide registration of all codecs, parsers and bitstream filters for libavcodec.
3 * Copyright (c) 2002 Fabrice Bellard
5 * This file is part of FFmpeg.
7 * FFmpeg is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Lesser General Public
9 * License as published by the Free Software Foundation; either
10 * version 2.1 of the License, or (at your option) any later version.
12 * FFmpeg is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * Lesser General Public License for more details.
17 * You should have received a copy of the GNU Lesser General Public
18 * License along with FFmpeg; if not, write to the Free Software
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
24 * Provide registration of all codecs, parsers and bitstream filters for libavcodec.
31 #include "libavutil/thread.h"
35 #include "codec_internal.h"
37 extern const FFCodec ff_a64multi_encoder
;
38 extern const FFCodec ff_a64multi5_encoder
;
39 extern const FFCodec ff_aasc_decoder
;
40 extern const FFCodec ff_aic_decoder
;
41 extern const FFCodec ff_alias_pix_encoder
;
42 extern const FFCodec ff_alias_pix_decoder
;
43 extern const FFCodec ff_agm_decoder
;
44 extern const FFCodec ff_amv_encoder
;
45 extern const FFCodec ff_amv_decoder
;
46 extern const FFCodec ff_anm_decoder
;
47 extern const FFCodec ff_ansi_decoder
;
48 extern const FFCodec ff_apng_encoder
;
49 extern const FFCodec ff_apng_decoder
;
50 extern const FFCodec ff_apv_decoder
;
51 extern const FFCodec ff_arbc_decoder
;
52 extern const FFCodec ff_argo_decoder
;
53 extern const FFCodec ff_asv1_encoder
;
54 extern const FFCodec ff_asv1_decoder
;
55 extern const FFCodec ff_asv2_encoder
;
56 extern const FFCodec ff_asv2_decoder
;
57 extern const FFCodec ff_aura_decoder
;
58 extern const FFCodec ff_aura2_decoder
;
59 extern const FFCodec ff_avrp_encoder
;
60 extern const FFCodec ff_avrp_decoder
;
61 extern const FFCodec ff_avrn_decoder
;
62 extern const FFCodec ff_avs_decoder
;
63 extern const FFCodec ff_avui_encoder
;
64 extern const FFCodec ff_avui_decoder
;
65 extern const FFCodec ff_bethsoftvid_decoder
;
66 extern const FFCodec ff_bfi_decoder
;
67 extern const FFCodec ff_bink_decoder
;
68 extern const FFCodec ff_bitpacked_decoder
;
69 extern const FFCodec ff_bitpacked_encoder
;
70 extern const FFCodec ff_bmp_encoder
;
71 extern const FFCodec ff_bmp_decoder
;
72 extern const FFCodec ff_bmv_video_decoder
;
73 extern const FFCodec ff_brender_pix_decoder
;
74 extern const FFCodec ff_c93_decoder
;
75 extern const FFCodec ff_cavs_decoder
;
76 extern const FFCodec ff_cdgraphics_decoder
;
77 extern const FFCodec ff_cdtoons_decoder
;
78 extern const FFCodec ff_cdxl_decoder
;
79 extern const FFCodec ff_cfhd_encoder
;
80 extern const FFCodec ff_cfhd_decoder
;
81 extern const FFCodec ff_cinepak_encoder
;
82 extern const FFCodec ff_cinepak_decoder
;
83 extern const FFCodec ff_clearvideo_decoder
;
84 extern const FFCodec ff_cljr_encoder
;
85 extern const FFCodec ff_cljr_decoder
;
86 extern const FFCodec ff_cllc_decoder
;
87 extern const FFCodec ff_comfortnoise_encoder
;
88 extern const FFCodec ff_comfortnoise_decoder
;
89 extern const FFCodec ff_cpia_decoder
;
90 extern const FFCodec ff_cri_decoder
;
91 extern const FFCodec ff_cscd_decoder
;
92 extern const FFCodec ff_cyuv_decoder
;
93 extern const FFCodec ff_dds_decoder
;
94 extern const FFCodec ff_dfa_decoder
;
95 extern const FFCodec ff_dirac_decoder
;
96 extern const FFCodec ff_dnxhd_encoder
;
97 extern const FFCodec ff_dnxhd_decoder
;
98 extern const FFCodec ff_dpx_encoder
;
99 extern const FFCodec ff_dpx_decoder
;
100 extern const FFCodec ff_dsicinvideo_decoder
;
101 extern const FFCodec ff_dvaudio_decoder
;
102 extern const FFCodec ff_dvvideo_encoder
;
103 extern const FFCodec ff_dvvideo_decoder
;
104 extern const FFCodec ff_dxa_decoder
;
105 extern const FFCodec ff_dxtory_decoder
;
106 extern const FFCodec ff_dxv_encoder
;
107 extern const FFCodec ff_dxv_decoder
;
108 extern const FFCodec ff_eacmv_decoder
;
109 extern const FFCodec ff_eamad_decoder
;
110 extern const FFCodec ff_eatgq_decoder
;
111 extern const FFCodec ff_eatgv_decoder
;
112 extern const FFCodec ff_eatqi_decoder
;
113 extern const FFCodec ff_eightbps_decoder
;
114 extern const FFCodec ff_eightsvx_exp_decoder
;
115 extern const FFCodec ff_eightsvx_fib_decoder
;
116 extern const FFCodec ff_escape124_decoder
;
117 extern const FFCodec ff_escape130_decoder
;
118 extern const FFCodec ff_exr_encoder
;
119 extern const FFCodec ff_exr_decoder
;
120 extern const FFCodec ff_ffv1_encoder
;
121 extern const FFCodec ff_ffv1_vulkan_encoder
;
122 extern const FFCodec ff_ffv1_decoder
;
123 extern const FFCodec ff_ffvhuff_encoder
;
124 extern const FFCodec ff_ffvhuff_decoder
;
125 extern const FFCodec ff_fic_decoder
;
126 extern const FFCodec ff_fits_encoder
;
127 extern const FFCodec ff_fits_decoder
;
128 extern const FFCodec ff_flashsv_encoder
;
129 extern const FFCodec ff_flashsv_decoder
;
130 extern const FFCodec ff_flashsv2_encoder
;
131 extern const FFCodec ff_flashsv2_decoder
;
132 extern const FFCodec ff_flic_decoder
;
133 extern const FFCodec ff_flv_encoder
;
134 extern const FFCodec ff_flv_decoder
;
135 extern const FFCodec ff_fmvc_decoder
;
136 extern const FFCodec ff_fourxm_decoder
;
137 extern const FFCodec ff_fraps_decoder
;
138 extern const FFCodec ff_frwu_decoder
;
139 extern const FFCodec ff_g2m_decoder
;
140 extern const FFCodec ff_gdv_decoder
;
141 extern const FFCodec ff_gem_decoder
;
142 extern const FFCodec ff_gif_encoder
;
143 extern const FFCodec ff_gif_decoder
;
144 extern const FFCodec ff_h261_encoder
;
145 extern const FFCodec ff_h261_decoder
;
146 extern const FFCodec ff_h263_encoder
;
147 extern const FFCodec ff_h263_decoder
;
148 extern const FFCodec ff_h263i_decoder
;
149 extern const FFCodec ff_h263p_encoder
;
150 extern const FFCodec ff_h263p_decoder
;
151 extern const FFCodec ff_h263_v4l2m2m_decoder
;
152 extern const FFCodec ff_h264_decoder
;
153 extern const FFCodec ff_h264_v4l2m2m_decoder
;
154 extern const FFCodec ff_h264_mediacodec_decoder
;
155 extern const FFCodec ff_h264_mediacodec_encoder
;
156 extern const FFCodec ff_h264_mmal_decoder
;
157 extern const FFCodec ff_h264_qsv_decoder
;
158 extern const FFCodec ff_h264_rkmpp_decoder
;
159 extern const FFCodec ff_h264_rkmpp_encoder
;
160 extern const FFCodec ff_hap_encoder
;
161 extern const FFCodec ff_hap_decoder
;
162 extern const FFCodec ff_hevc_decoder
;
163 extern const FFCodec ff_hevc_qsv_decoder
;
164 extern const FFCodec ff_hevc_rkmpp_decoder
;
165 extern const FFCodec ff_hevc_rkmpp_encoder
;
166 extern const FFCodec ff_hevc_v4l2m2m_decoder
;
167 extern const FFCodec ff_hnm4_video_decoder
;
168 extern const FFCodec ff_hq_hqa_decoder
;
169 extern const FFCodec ff_hqx_decoder
;
170 extern const FFCodec ff_huffyuv_encoder
;
171 extern const FFCodec ff_huffyuv_decoder
;
172 extern const FFCodec ff_hymt_decoder
;
173 extern const FFCodec ff_idcin_decoder
;
174 extern const FFCodec ff_iff_ilbm_decoder
;
175 extern const FFCodec ff_imm4_decoder
;
176 extern const FFCodec ff_imm5_decoder
;
177 extern const FFCodec ff_indeo2_decoder
;
178 extern const FFCodec ff_indeo3_decoder
;
179 extern const FFCodec ff_indeo4_decoder
;
180 extern const FFCodec ff_indeo5_decoder
;
181 extern const FFCodec ff_interplay_video_decoder
;
182 extern const FFCodec ff_ipu_decoder
;
183 extern const FFCodec ff_jpeg2000_encoder
;
184 extern const FFCodec ff_jpeg2000_decoder
;
185 extern const FFCodec ff_jpegls_encoder
;
186 extern const FFCodec ff_jpegls_decoder
;
187 extern const FFCodec ff_jv_decoder
;
188 extern const FFCodec ff_kgv1_decoder
;
189 extern const FFCodec ff_kmvc_decoder
;
190 extern const FFCodec ff_lagarith_decoder
;
191 extern const FFCodec ff_lead_decoder
;
192 extern const FFCodec ff_ljpeg_encoder
;
193 extern const FFCodec ff_loco_decoder
;
194 extern const FFCodec ff_lscr_decoder
;
195 extern const FFCodec ff_m101_decoder
;
196 extern const FFCodec ff_magicyuv_encoder
;
197 extern const FFCodec ff_magicyuv_decoder
;
198 extern const FFCodec ff_mdec_decoder
;
199 extern const FFCodec ff_media100_decoder
;
200 extern const FFCodec ff_mimic_decoder
;
201 extern const FFCodec ff_mjpeg_encoder
;
202 extern const FFCodec ff_mjpeg_decoder
;
203 extern const FFCodec ff_mjpegb_decoder
;
204 extern const FFCodec ff_mmvideo_decoder
;
205 extern const FFCodec ff_mobiclip_decoder
;
206 extern const FFCodec ff_motionpixels_decoder
;
207 extern const FFCodec ff_mpeg1video_encoder
;
208 extern const FFCodec ff_mpeg1video_decoder
;
209 extern const FFCodec ff_mpeg2video_encoder
;
210 extern const FFCodec ff_mpeg2video_decoder
;
211 extern const FFCodec ff_mpeg4_encoder
;
212 extern const FFCodec ff_mpeg4_decoder
;
213 extern const FFCodec ff_mpeg4_v4l2m2m_decoder
;
214 extern const FFCodec ff_mpeg4_mmal_decoder
;
215 extern const FFCodec ff_mpegvideo_decoder
;
216 extern const FFCodec ff_mpeg1_v4l2m2m_decoder
;
217 extern const FFCodec ff_mpeg2_mmal_decoder
;
218 extern const FFCodec ff_mpeg2_v4l2m2m_decoder
;
219 extern const FFCodec ff_mpeg2_qsv_decoder
;
220 extern const FFCodec ff_mpeg2_mediacodec_decoder
;
221 extern const FFCodec ff_msa1_decoder
;
222 extern const FFCodec ff_mscc_decoder
;
223 extern const FFCodec ff_msmpeg4v1_decoder
;
224 extern const FFCodec ff_msmpeg4v2_encoder
;
225 extern const FFCodec ff_msmpeg4v2_decoder
;
226 extern const FFCodec ff_msmpeg4v3_encoder
;
227 extern const FFCodec ff_msmpeg4v3_decoder
;
228 extern const FFCodec ff_msp2_decoder
;
229 extern const FFCodec ff_msrle_encoder
;
230 extern const FFCodec ff_msrle_decoder
;
231 extern const FFCodec ff_mss1_decoder
;
232 extern const FFCodec ff_mss2_decoder
;
233 extern const FFCodec ff_msvideo1_encoder
;
234 extern const FFCodec ff_msvideo1_decoder
;
235 extern const FFCodec ff_mszh_decoder
;
236 extern const FFCodec ff_mts2_decoder
;
237 extern const FFCodec ff_mv30_decoder
;
238 extern const FFCodec ff_mvc1_decoder
;
239 extern const FFCodec ff_mvc2_decoder
;
240 extern const FFCodec ff_mvdv_decoder
;
241 extern const FFCodec ff_mvha_decoder
;
242 extern const FFCodec ff_mwsc_decoder
;
243 extern const FFCodec ff_mxpeg_decoder
;
244 extern const FFCodec ff_notchlc_decoder
;
245 extern const FFCodec ff_nuv_decoder
;
246 extern const FFCodec ff_paf_video_decoder
;
247 extern const FFCodec ff_pam_encoder
;
248 extern const FFCodec ff_pam_decoder
;
249 extern const FFCodec ff_pbm_encoder
;
250 extern const FFCodec ff_pbm_decoder
;
251 extern const FFCodec ff_pcx_encoder
;
252 extern const FFCodec ff_pcx_decoder
;
253 extern const FFCodec ff_pdv_decoder
;
254 extern const FFCodec ff_pfm_encoder
;
255 extern const FFCodec ff_pfm_decoder
;
256 extern const FFCodec ff_pgm_encoder
;
257 extern const FFCodec ff_pgm_decoder
;
258 extern const FFCodec ff_pgmyuv_encoder
;
259 extern const FFCodec ff_pgmyuv_decoder
;
260 extern const FFCodec ff_pgx_decoder
;
261 extern const FFCodec ff_phm_encoder
;
262 extern const FFCodec ff_phm_decoder
;
263 extern const FFCodec ff_photocd_decoder
;
264 extern const FFCodec ff_pictor_decoder
;
265 extern const FFCodec ff_pixlet_decoder
;
266 extern const FFCodec ff_png_encoder
;
267 extern const FFCodec ff_png_decoder
;
268 extern const FFCodec ff_ppm_encoder
;
269 extern const FFCodec ff_ppm_decoder
;
270 extern const FFCodec ff_prores_encoder
;
271 extern const FFCodec ff_prores_decoder
;
272 extern const FFCodec ff_prores_aw_encoder
;
273 extern const FFCodec ff_prores_ks_encoder
;
274 extern const FFCodec ff_prores_raw_decoder
;
275 extern const FFCodec ff_prosumer_decoder
;
276 extern const FFCodec ff_psd_decoder
;
277 extern const FFCodec ff_ptx_decoder
;
278 extern const FFCodec ff_qdraw_decoder
;
279 extern const FFCodec ff_qoi_encoder
;
280 extern const FFCodec ff_qoi_decoder
;
281 extern const FFCodec ff_qpeg_decoder
;
282 extern const FFCodec ff_qtrle_encoder
;
283 extern const FFCodec ff_qtrle_decoder
;
284 extern const FFCodec ff_r10k_encoder
;
285 extern const FFCodec ff_r10k_decoder
;
286 extern const FFCodec ff_r210_encoder
;
287 extern const FFCodec ff_r210_decoder
;
288 extern const FFCodec ff_rasc_decoder
;
289 extern const FFCodec ff_rawvideo_encoder
;
290 extern const FFCodec ff_rawvideo_decoder
;
291 extern const FFCodec ff_rka_decoder
;
292 extern const FFCodec ff_rl2_decoder
;
293 extern const FFCodec ff_roq_encoder
;
294 extern const FFCodec ff_roq_decoder
;
295 extern const FFCodec ff_rpza_encoder
;
296 extern const FFCodec ff_rpza_decoder
;
297 extern const FFCodec ff_rscc_decoder
;
298 extern const FFCodec ff_rtv1_decoder
;
299 extern const FFCodec ff_rv10_encoder
;
300 extern const FFCodec ff_rv10_decoder
;
301 extern const FFCodec ff_rv20_encoder
;
302 extern const FFCodec ff_rv20_decoder
;
303 extern const FFCodec ff_rv30_decoder
;
304 extern const FFCodec ff_rv40_decoder
;
305 extern const FFCodec ff_rv60_decoder
;
306 extern const FFCodec ff_s302m_encoder
;
307 extern const FFCodec ff_s302m_decoder
;
308 extern const FFCodec ff_sanm_decoder
;
309 extern const FFCodec ff_scpr_decoder
;
310 extern const FFCodec ff_screenpresso_decoder
;
311 extern const FFCodec ff_sga_decoder
;
312 extern const FFCodec ff_sgi_encoder
;
313 extern const FFCodec ff_sgi_decoder
;
314 extern const FFCodec ff_sgirle_decoder
;
315 extern const FFCodec ff_sheervideo_decoder
;
316 extern const FFCodec ff_simbiosis_imx_decoder
;
317 extern const FFCodec ff_smacker_decoder
;
318 extern const FFCodec ff_smc_encoder
;
319 extern const FFCodec ff_smc_decoder
;
320 extern const FFCodec ff_smvjpeg_decoder
;
321 extern const FFCodec ff_snow_encoder
;
322 extern const FFCodec ff_snow_decoder
;
323 extern const FFCodec ff_sp5x_decoder
;
324 extern const FFCodec ff_speedhq_decoder
;
325 extern const FFCodec ff_speedhq_encoder
;
326 extern const FFCodec ff_speex_decoder
;
327 extern const FFCodec ff_srgc_decoder
;
328 extern const FFCodec ff_sunrast_encoder
;
329 extern const FFCodec ff_sunrast_decoder
;
330 extern const FFCodec ff_svq1_encoder
;
331 extern const FFCodec ff_svq1_decoder
;
332 extern const FFCodec ff_svq3_decoder
;
333 extern const FFCodec ff_targa_encoder
;
334 extern const FFCodec ff_targa_decoder
;
335 extern const FFCodec ff_targa_y216_decoder
;
336 extern const FFCodec ff_tdsc_decoder
;
337 extern const FFCodec ff_theora_decoder
;
338 extern const FFCodec ff_thp_decoder
;
339 extern const FFCodec ff_tiertexseqvideo_decoder
;
340 extern const FFCodec ff_tiff_encoder
;
341 extern const FFCodec ff_tiff_decoder
;
342 extern const FFCodec ff_tmv_decoder
;
343 extern const FFCodec ff_truemotion1_decoder
;
344 extern const FFCodec ff_truemotion2_decoder
;
345 extern const FFCodec ff_truemotion2rt_decoder
;
346 extern const FFCodec ff_tscc_decoder
;
347 extern const FFCodec ff_tscc2_decoder
;
348 extern const FFCodec ff_txd_decoder
;
349 extern const FFCodec ff_ulti_decoder
;
350 extern const FFCodec ff_utvideo_encoder
;
351 extern const FFCodec ff_utvideo_decoder
;
352 extern const FFCodec ff_v210_encoder
;
353 extern const FFCodec ff_v210_decoder
;
354 extern const FFCodec ff_v210x_decoder
;
355 #if FF_API_V408_CODECID
356 extern const FFCodec ff_v308_encoder
;
357 extern const FFCodec ff_v308_decoder
;
358 extern const FFCodec ff_v408_encoder
;
359 extern const FFCodec ff_v408_decoder
;
360 extern const FFCodec ff_v410_encoder
;
361 extern const FFCodec ff_v410_decoder
;
363 extern const FFCodec ff_vb_decoder
;
364 extern const FFCodec ff_vbn_encoder
;
365 extern const FFCodec ff_vbn_decoder
;
366 extern const FFCodec ff_vble_decoder
;
367 extern const FFCodec ff_vc1_decoder
;
368 extern const FFCodec ff_vc1image_decoder
;
369 extern const FFCodec ff_vc1_mmal_decoder
;
370 extern const FFCodec ff_vc1_qsv_decoder
;
371 extern const FFCodec ff_vc1_v4l2m2m_decoder
;
372 extern const FFCodec ff_vc2_encoder
;
373 extern const FFCodec ff_vcr1_decoder
;
374 extern const FFCodec ff_vmdvideo_decoder
;
375 extern const FFCodec ff_vmix_decoder
;
376 extern const FFCodec ff_vmnc_decoder
;
377 extern const FFCodec ff_vp3_decoder
;
378 extern const FFCodec ff_vp4_decoder
;
379 extern const FFCodec ff_vp5_decoder
;
380 extern const FFCodec ff_vp6_decoder
;
381 extern const FFCodec ff_vp6a_decoder
;
382 extern const FFCodec ff_vp6f_decoder
;
383 extern const FFCodec ff_vp7_decoder
;
384 extern const FFCodec ff_vp8_decoder
;
385 extern const FFCodec ff_vp8_rkmpp_decoder
;
386 extern const FFCodec ff_vp8_v4l2m2m_decoder
;
387 extern const FFCodec ff_vp9_decoder
;
388 extern const FFCodec ff_vp9_rkmpp_decoder
;
389 extern const FFCodec ff_vp9_v4l2m2m_decoder
;
390 extern const FFCodec ff_vqa_decoder
;
391 extern const FFCodec ff_vqc_decoder
;
392 extern const FFCodec ff_vvc_decoder
;
393 extern const FFCodec ff_wbmp_decoder
;
394 extern const FFCodec ff_wbmp_encoder
;
395 extern const FFCodec ff_webp_decoder
;
396 extern const FFCodec ff_wcmv_decoder
;
397 extern const FFCodec ff_wrapped_avframe_encoder
;
398 extern const FFCodec ff_wrapped_avframe_decoder
;
399 extern const FFCodec ff_wmv1_encoder
;
400 extern const FFCodec ff_wmv1_decoder
;
401 extern const FFCodec ff_wmv2_encoder
;
402 extern const FFCodec ff_wmv2_decoder
;
403 extern const FFCodec ff_wmv3_decoder
;
404 extern const FFCodec ff_wmv3image_decoder
;
405 extern const FFCodec ff_wnv1_decoder
;
406 extern const FFCodec ff_xan_wc3_decoder
;
407 extern const FFCodec ff_xan_wc4_decoder
;
408 extern const FFCodec ff_xbm_encoder
;
409 extern const FFCodec ff_xbm_decoder
;
410 extern const FFCodec ff_xface_encoder
;
411 extern const FFCodec ff_xface_decoder
;
412 extern const FFCodec ff_xl_decoder
;
413 extern const FFCodec ff_xpm_decoder
;
414 extern const FFCodec ff_xwd_encoder
;
415 extern const FFCodec ff_xwd_decoder
;
416 extern const FFCodec ff_y41p_encoder
;
417 extern const FFCodec ff_y41p_decoder
;
418 extern const FFCodec ff_ylc_decoder
;
419 extern const FFCodec ff_yop_decoder
;
420 extern const FFCodec ff_yuv4_encoder
;
421 extern const FFCodec ff_yuv4_decoder
;
422 extern const FFCodec ff_zero12v_decoder
;
423 extern const FFCodec ff_zerocodec_decoder
;
424 extern const FFCodec ff_zlib_encoder
;
425 extern const FFCodec ff_zlib_decoder
;
426 extern const FFCodec ff_zmbv_encoder
;
427 extern const FFCodec ff_zmbv_decoder
;
430 extern const FFCodec ff_aac_encoder
;
431 extern const FFCodec ff_aac_decoder
;
432 extern const FFCodec ff_aac_fixed_decoder
;
433 extern const FFCodec ff_aac_latm_decoder
;
434 extern const FFCodec ff_ac3_encoder
;
435 extern const FFCodec ff_ac3_decoder
;
436 extern const FFCodec ff_ac3_fixed_encoder
;
437 extern const FFCodec ff_ac3_fixed_decoder
;
438 extern const FFCodec ff_acelp_kelvin_decoder
;
439 extern const FFCodec ff_ahx_decoder
;
440 extern const FFCodec ff_alac_encoder
;
441 extern const FFCodec ff_alac_decoder
;
442 extern const FFCodec ff_als_decoder
;
443 extern const FFCodec ff_amrnb_decoder
;
444 extern const FFCodec ff_amrwb_decoder
;
445 extern const FFCodec ff_apac_decoder
;
446 extern const FFCodec ff_ape_decoder
;
447 extern const FFCodec ff_aptx_encoder
;
448 extern const FFCodec ff_aptx_decoder
;
449 extern const FFCodec ff_aptx_hd_encoder
;
450 extern const FFCodec ff_aptx_hd_decoder
;
451 extern const FFCodec ff_atrac1_decoder
;
452 extern const FFCodec ff_atrac3_decoder
;
453 extern const FFCodec ff_atrac3al_decoder
;
454 extern const FFCodec ff_atrac3p_decoder
;
455 extern const FFCodec ff_atrac3pal_decoder
;
456 extern const FFCodec ff_atrac9_decoder
;
457 extern const FFCodec ff_binkaudio_dct_decoder
;
458 extern const FFCodec ff_binkaudio_rdft_decoder
;
459 extern const FFCodec ff_bmv_audio_decoder
;
460 extern const FFCodec ff_bonk_decoder
;
461 extern const FFCodec ff_cook_decoder
;
462 extern const FFCodec ff_dca_encoder
;
463 extern const FFCodec ff_dca_decoder
;
464 extern const FFCodec ff_dfpwm_encoder
;
465 extern const FFCodec ff_dfpwm_decoder
;
466 extern const FFCodec ff_dolby_e_decoder
;
467 extern const FFCodec ff_dsd_lsbf_decoder
;
468 extern const FFCodec ff_dsd_msbf_decoder
;
469 extern const FFCodec ff_dsd_lsbf_planar_decoder
;
470 extern const FFCodec ff_dsd_msbf_planar_decoder
;
471 extern const FFCodec ff_dsicinaudio_decoder
;
472 extern const FFCodec ff_dss_sp_decoder
;
473 extern const FFCodec ff_dst_decoder
;
474 extern const FFCodec ff_eac3_encoder
;
475 extern const FFCodec ff_eac3_decoder
;
476 extern const FFCodec ff_evrc_decoder
;
477 extern const FFCodec ff_fastaudio_decoder
;
478 extern const FFCodec ff_ffwavesynth_decoder
;
479 extern const FFCodec ff_flac_encoder
;
480 extern const FFCodec ff_flac_decoder
;
481 extern const FFCodec ff_ftr_decoder
;
482 extern const FFCodec ff_g723_1_encoder
;
483 extern const FFCodec ff_g723_1_decoder
;
484 extern const FFCodec ff_g728_decoder
;
485 extern const FFCodec ff_g729_decoder
;
486 extern const FFCodec ff_gsm_decoder
;
487 extern const FFCodec ff_gsm_ms_decoder
;
488 extern const FFCodec ff_hca_decoder
;
489 extern const FFCodec ff_hcom_decoder
;
490 extern const FFCodec ff_hdr_encoder
;
491 extern const FFCodec ff_hdr_decoder
;
492 extern const FFCodec ff_iac_decoder
;
493 extern const FFCodec ff_ilbc_decoder
;
494 extern const FFCodec ff_imc_decoder
;
495 extern const FFCodec ff_interplay_acm_decoder
;
496 extern const FFCodec ff_mace3_decoder
;
497 extern const FFCodec ff_mace6_decoder
;
498 extern const FFCodec ff_metasound_decoder
;
499 extern const FFCodec ff_misc4_decoder
;
500 extern const FFCodec ff_mlp_encoder
;
501 extern const FFCodec ff_mlp_decoder
;
502 extern const FFCodec ff_mp1_decoder
;
503 extern const FFCodec ff_mp1float_decoder
;
504 extern const FFCodec ff_mp2_encoder
;
505 extern const FFCodec ff_mp2_decoder
;
506 extern const FFCodec ff_mp2float_decoder
;
507 extern const FFCodec ff_mp2fixed_encoder
;
508 extern const FFCodec ff_mp3float_decoder
;
509 extern const FFCodec ff_mp3_decoder
;
510 extern const FFCodec ff_mp3adufloat_decoder
;
511 extern const FFCodec ff_mp3adu_decoder
;
512 extern const FFCodec ff_mp3on4float_decoder
;
513 extern const FFCodec ff_mp3on4_decoder
;
514 extern const FFCodec ff_mpc7_decoder
;
515 extern const FFCodec ff_mpc8_decoder
;
516 extern const FFCodec ff_msnsiren_decoder
;
517 extern const FFCodec ff_nellymoser_encoder
;
518 extern const FFCodec ff_nellymoser_decoder
;
519 extern const FFCodec ff_on2avc_decoder
;
520 extern const FFCodec ff_opus_encoder
;
521 extern const FFCodec ff_opus_decoder
;
522 extern const FFCodec ff_osq_decoder
;
523 extern const FFCodec ff_paf_audio_decoder
;
524 extern const FFCodec ff_qcelp_decoder
;
525 extern const FFCodec ff_qdm2_decoder
;
526 extern const FFCodec ff_qdmc_decoder
;
527 extern const FFCodec ff_qoa_decoder
;
528 extern const FFCodec ff_ra_144_encoder
;
529 extern const FFCodec ff_ra_144_decoder
;
530 extern const FFCodec ff_ra_288_decoder
;
531 extern const FFCodec ff_ralf_decoder
;
532 extern const FFCodec ff_sbc_encoder
;
533 extern const FFCodec ff_sbc_decoder
;
534 extern const FFCodec ff_shorten_decoder
;
535 extern const FFCodec ff_sipr_decoder
;
536 extern const FFCodec ff_siren_decoder
;
537 extern const FFCodec ff_smackaud_decoder
;
538 extern const FFCodec ff_sonic_encoder
;
539 extern const FFCodec ff_sonic_decoder
;
540 extern const FFCodec ff_sonic_ls_encoder
;
541 extern const FFCodec ff_tak_decoder
;
542 extern const FFCodec ff_truehd_encoder
;
543 extern const FFCodec ff_truehd_decoder
;
544 extern const FFCodec ff_truespeech_decoder
;
545 extern const FFCodec ff_tta_encoder
;
546 extern const FFCodec ff_tta_decoder
;
547 extern const FFCodec ff_twinvq_decoder
;
548 extern const FFCodec ff_vmdaudio_decoder
;
549 extern const FFCodec ff_vorbis_encoder
;
550 extern const FFCodec ff_vorbis_decoder
;
551 extern const FFCodec ff_wavarc_decoder
;
552 extern const FFCodec ff_wavpack_encoder
;
553 extern const FFCodec ff_wavpack_decoder
;
554 extern const FFCodec ff_wmalossless_decoder
;
555 extern const FFCodec ff_wmapro_decoder
;
556 extern const FFCodec ff_wmav1_encoder
;
557 extern const FFCodec ff_wmav1_decoder
;
558 extern const FFCodec ff_wmav2_encoder
;
559 extern const FFCodec ff_wmav2_decoder
;
560 extern const FFCodec ff_wmavoice_decoder
;
561 extern const FFCodec ff_ws_snd1_decoder
;
562 extern const FFCodec ff_xma1_decoder
;
563 extern const FFCodec ff_xma2_decoder
;
566 extern const FFCodec ff_pcm_alaw_encoder
;
567 extern const FFCodec ff_pcm_alaw_decoder
;
568 extern const FFCodec ff_pcm_bluray_encoder
;
569 extern const FFCodec ff_pcm_bluray_decoder
;
570 extern const FFCodec ff_pcm_dvd_encoder
;
571 extern const FFCodec ff_pcm_dvd_decoder
;
572 extern const FFCodec ff_pcm_f16le_decoder
;
573 extern const FFCodec ff_pcm_f24le_decoder
;
574 extern const FFCodec ff_pcm_f32be_encoder
;
575 extern const FFCodec ff_pcm_f32be_decoder
;
576 extern const FFCodec ff_pcm_f32le_encoder
;
577 extern const FFCodec ff_pcm_f32le_decoder
;
578 extern const FFCodec ff_pcm_f64be_encoder
;
579 extern const FFCodec ff_pcm_f64be_decoder
;
580 extern const FFCodec ff_pcm_f64le_encoder
;
581 extern const FFCodec ff_pcm_f64le_decoder
;
582 extern const FFCodec ff_pcm_lxf_decoder
;
583 extern const FFCodec ff_pcm_mulaw_encoder
;
584 extern const FFCodec ff_pcm_mulaw_decoder
;
585 extern const FFCodec ff_pcm_s8_encoder
;
586 extern const FFCodec ff_pcm_s8_decoder
;
587 extern const FFCodec ff_pcm_s8_planar_encoder
;
588 extern const FFCodec ff_pcm_s8_planar_decoder
;
589 extern const FFCodec ff_pcm_s16be_encoder
;
590 extern const FFCodec ff_pcm_s16be_decoder
;
591 extern const FFCodec ff_pcm_s16be_planar_encoder
;
592 extern const FFCodec ff_pcm_s16be_planar_decoder
;
593 extern const FFCodec ff_pcm_s16le_encoder
;
594 extern const FFCodec ff_pcm_s16le_decoder
;
595 extern const FFCodec ff_pcm_s16le_planar_encoder
;
596 extern const FFCodec ff_pcm_s16le_planar_decoder
;
597 extern const FFCodec ff_pcm_s24be_encoder
;
598 extern const FFCodec ff_pcm_s24be_decoder
;
599 extern const FFCodec ff_pcm_s24daud_encoder
;
600 extern const FFCodec ff_pcm_s24daud_decoder
;
601 extern const FFCodec ff_pcm_s24le_encoder
;
602 extern const FFCodec ff_pcm_s24le_decoder
;
603 extern const FFCodec ff_pcm_s24le_planar_encoder
;
604 extern const FFCodec ff_pcm_s24le_planar_decoder
;
605 extern const FFCodec ff_pcm_s32be_encoder
;
606 extern const FFCodec ff_pcm_s32be_decoder
;
607 extern const FFCodec ff_pcm_s32le_encoder
;
608 extern const FFCodec ff_pcm_s32le_decoder
;
609 extern const FFCodec ff_pcm_s32le_planar_encoder
;
610 extern const FFCodec ff_pcm_s32le_planar_decoder
;
611 extern const FFCodec ff_pcm_s64be_encoder
;
612 extern const FFCodec ff_pcm_s64be_decoder
;
613 extern const FFCodec ff_pcm_s64le_encoder
;
614 extern const FFCodec ff_pcm_s64le_decoder
;
615 extern const FFCodec ff_pcm_sga_decoder
;
616 extern const FFCodec ff_pcm_u8_encoder
;
617 extern const FFCodec ff_pcm_u8_decoder
;
618 extern const FFCodec ff_pcm_u16be_encoder
;
619 extern const FFCodec ff_pcm_u16be_decoder
;
620 extern const FFCodec ff_pcm_u16le_encoder
;
621 extern const FFCodec ff_pcm_u16le_decoder
;
622 extern const FFCodec ff_pcm_u24be_encoder
;
623 extern const FFCodec ff_pcm_u24be_decoder
;
624 extern const FFCodec ff_pcm_u24le_encoder
;
625 extern const FFCodec ff_pcm_u24le_decoder
;
626 extern const FFCodec ff_pcm_u32be_encoder
;
627 extern const FFCodec ff_pcm_u32be_decoder
;
628 extern const FFCodec ff_pcm_u32le_encoder
;
629 extern const FFCodec ff_pcm_u32le_decoder
;
630 extern const FFCodec ff_pcm_vidc_encoder
;
631 extern const FFCodec ff_pcm_vidc_decoder
;
634 extern const FFCodec ff_cbd2_dpcm_decoder
;
635 extern const FFCodec ff_derf_dpcm_decoder
;
636 extern const FFCodec ff_gremlin_dpcm_decoder
;
637 extern const FFCodec ff_interplay_dpcm_decoder
;
638 extern const FFCodec ff_roq_dpcm_encoder
;
639 extern const FFCodec ff_roq_dpcm_decoder
;
640 extern const FFCodec ff_sdx2_dpcm_decoder
;
641 extern const FFCodec ff_sol_dpcm_decoder
;
642 extern const FFCodec ff_xan_dpcm_decoder
;
643 extern const FFCodec ff_wady_dpcm_decoder
;
646 extern const FFCodec ff_adpcm_4xm_decoder
;
647 extern const FFCodec ff_adpcm_adx_encoder
;
648 extern const FFCodec ff_adpcm_adx_decoder
;
649 extern const FFCodec ff_adpcm_afc_decoder
;
650 extern const FFCodec ff_adpcm_agm_decoder
;
651 extern const FFCodec ff_adpcm_aica_decoder
;
652 extern const FFCodec ff_adpcm_argo_decoder
;
653 extern const FFCodec ff_adpcm_argo_encoder
;
654 extern const FFCodec ff_adpcm_circus_decoder
;
655 extern const FFCodec ff_adpcm_ct_decoder
;
656 extern const FFCodec ff_adpcm_dtk_decoder
;
657 extern const FFCodec ff_adpcm_ea_decoder
;
658 extern const FFCodec ff_adpcm_ea_maxis_xa_decoder
;
659 extern const FFCodec ff_adpcm_ea_r1_decoder
;
660 extern const FFCodec ff_adpcm_ea_r2_decoder
;
661 extern const FFCodec ff_adpcm_ea_r3_decoder
;
662 extern const FFCodec ff_adpcm_ea_xas_decoder
;
663 extern const FFCodec ff_adpcm_g722_encoder
;
664 extern const FFCodec ff_adpcm_g722_decoder
;
665 extern const FFCodec ff_adpcm_g726_encoder
;
666 extern const FFCodec ff_adpcm_g726_decoder
;
667 extern const FFCodec ff_adpcm_g726le_encoder
;
668 extern const FFCodec ff_adpcm_g726le_decoder
;
669 extern const FFCodec ff_adpcm_ima_acorn_decoder
;
670 extern const FFCodec ff_adpcm_ima_amv_decoder
;
671 extern const FFCodec ff_adpcm_ima_amv_encoder
;
672 extern const FFCodec ff_adpcm_ima_alp_decoder
;
673 extern const FFCodec ff_adpcm_ima_alp_encoder
;
674 extern const FFCodec ff_adpcm_ima_apc_decoder
;
675 extern const FFCodec ff_adpcm_ima_apm_decoder
;
676 extern const FFCodec ff_adpcm_ima_apm_encoder
;
677 extern const FFCodec ff_adpcm_ima_cunning_decoder
;
678 extern const FFCodec ff_adpcm_ima_dat4_decoder
;
679 extern const FFCodec ff_adpcm_ima_dk3_decoder
;
680 extern const FFCodec ff_adpcm_ima_dk4_decoder
;
681 extern const FFCodec ff_adpcm_ima_ea_eacs_decoder
;
682 extern const FFCodec ff_adpcm_ima_ea_sead_decoder
;
683 extern const FFCodec ff_adpcm_ima_escape_decoder
;
684 extern const FFCodec ff_adpcm_ima_hvqm2_decoder
;
685 extern const FFCodec ff_adpcm_ima_hvqm4_decoder
;
686 extern const FFCodec ff_adpcm_ima_iss_decoder
;
687 extern const FFCodec ff_adpcm_ima_magix_decoder
;
688 extern const FFCodec ff_adpcm_ima_moflex_decoder
;
689 extern const FFCodec ff_adpcm_ima_mtf_decoder
;
690 extern const FFCodec ff_adpcm_ima_oki_decoder
;
691 extern const FFCodec ff_adpcm_ima_pda_decoder
;
692 extern const FFCodec ff_adpcm_ima_qt_encoder
;
693 extern const FFCodec ff_adpcm_ima_qt_decoder
;
694 extern const FFCodec ff_adpcm_ima_rad_decoder
;
695 extern const FFCodec ff_adpcm_ima_ssi_decoder
;
696 extern const FFCodec ff_adpcm_ima_ssi_encoder
;
697 extern const FFCodec ff_adpcm_ima_smjpeg_decoder
;
698 extern const FFCodec ff_adpcm_ima_wav_encoder
;
699 extern const FFCodec ff_adpcm_ima_wav_decoder
;
700 extern const FFCodec ff_adpcm_ima_ws_encoder
;
701 extern const FFCodec ff_adpcm_ima_ws_decoder
;
702 extern const FFCodec ff_adpcm_ima_xbox_decoder
;
703 extern const FFCodec ff_adpcm_ms_encoder
;
704 extern const FFCodec ff_adpcm_ms_decoder
;
705 extern const FFCodec ff_adpcm_mtaf_decoder
;
706 extern const FFCodec ff_adpcm_n64_decoder
;
707 extern const FFCodec ff_adpcm_psx_decoder
;
708 extern const FFCodec ff_adpcm_psxc_decoder
;
709 extern const FFCodec ff_adpcm_sanyo_decoder
;
710 extern const FFCodec ff_adpcm_sbpro_2_decoder
;
711 extern const FFCodec ff_adpcm_sbpro_3_decoder
;
712 extern const FFCodec ff_adpcm_sbpro_4_decoder
;
713 extern const FFCodec ff_adpcm_swf_encoder
;
714 extern const FFCodec ff_adpcm_swf_decoder
;
715 extern const FFCodec ff_adpcm_thp_decoder
;
716 extern const FFCodec ff_adpcm_thp_le_decoder
;
717 extern const FFCodec ff_adpcm_vima_decoder
;
718 extern const FFCodec ff_adpcm_xa_decoder
;
719 extern const FFCodec ff_adpcm_xmd_decoder
;
720 extern const FFCodec ff_adpcm_yamaha_encoder
;
721 extern const FFCodec ff_adpcm_yamaha_decoder
;
722 extern const FFCodec ff_adpcm_zork_decoder
;
725 extern const FFCodec ff_ssa_encoder
;
726 extern const FFCodec ff_ssa_decoder
;
727 extern const FFCodec ff_ass_encoder
;
728 extern const FFCodec ff_ass_decoder
;
729 extern const FFCodec ff_ccaption_decoder
;
730 extern const FFCodec ff_dvbsub_encoder
;
731 extern const FFCodec ff_dvbsub_decoder
;
732 extern const FFCodec ff_dvdsub_encoder
;
733 extern const FFCodec ff_dvdsub_decoder
;
734 extern const FFCodec ff_jacosub_decoder
;
735 extern const FFCodec ff_microdvd_decoder
;
736 extern const FFCodec ff_movtext_encoder
;
737 extern const FFCodec ff_movtext_decoder
;
738 extern const FFCodec ff_mpl2_decoder
;
739 extern const FFCodec ff_pgssub_decoder
;
740 extern const FFCodec ff_pjs_decoder
;
741 extern const FFCodec ff_realtext_decoder
;
742 extern const FFCodec ff_sami_decoder
;
743 extern const FFCodec ff_srt_encoder
;
744 extern const FFCodec ff_srt_decoder
;
745 extern const FFCodec ff_stl_decoder
;
746 extern const FFCodec ff_subrip_encoder
;
747 extern const FFCodec ff_subrip_decoder
;
748 extern const FFCodec ff_subviewer_decoder
;
749 extern const FFCodec ff_subviewer1_decoder
;
750 extern const FFCodec ff_text_encoder
;
751 extern const FFCodec ff_text_decoder
;
752 extern const FFCodec ff_ttml_encoder
;
753 extern const FFCodec ff_vplayer_decoder
;
754 extern const FFCodec ff_webvtt_encoder
;
755 extern const FFCodec ff_webvtt_decoder
;
756 extern const FFCodec ff_xsub_encoder
;
757 extern const FFCodec ff_xsub_decoder
;
759 /* external libraries */
760 extern const FFCodec ff_aac_at_encoder
;
761 extern const FFCodec ff_aac_at_decoder
;
762 extern const FFCodec ff_ac3_at_decoder
;
763 extern const FFCodec ff_adpcm_ima_qt_at_decoder
;
764 extern const FFCodec ff_alac_at_encoder
;
765 extern const FFCodec ff_alac_at_decoder
;
766 extern const FFCodec ff_amr_nb_at_decoder
;
767 extern const FFCodec ff_eac3_at_decoder
;
768 extern const FFCodec ff_gsm_ms_at_decoder
;
769 extern const FFCodec ff_ilbc_at_encoder
;
770 extern const FFCodec ff_ilbc_at_decoder
;
771 extern const FFCodec ff_mp1_at_decoder
;
772 extern const FFCodec ff_mp2_at_decoder
;
773 extern const FFCodec ff_mp3_at_decoder
;
774 extern const FFCodec ff_pcm_alaw_at_encoder
;
775 extern const FFCodec ff_pcm_alaw_at_decoder
;
776 extern const FFCodec ff_pcm_mulaw_at_encoder
;
777 extern const FFCodec ff_pcm_mulaw_at_decoder
;
778 extern const FFCodec ff_qdmc_at_decoder
;
779 extern const FFCodec ff_qdm2_at_decoder
;
780 extern FFCodec ff_libaom_av1_encoder
;
781 /* preferred over libaribb24 */
782 extern const FFCodec ff_libaribcaption_decoder
;
783 extern const FFCodec ff_libaribb24_decoder
;
784 extern const FFCodec ff_libcelt_decoder
;
785 extern const FFCodec ff_libcodec2_encoder
;
786 extern const FFCodec ff_libcodec2_decoder
;
787 extern const FFCodec ff_libdav1d_decoder
;
788 extern const FFCodec ff_libdavs2_decoder
;
789 extern const FFCodec ff_libfdk_aac_encoder
;
790 extern const FFCodec ff_libfdk_aac_decoder
;
791 extern const FFCodec ff_libgsm_encoder
;
792 extern const FFCodec ff_libgsm_decoder
;
793 extern const FFCodec ff_libgsm_ms_encoder
;
794 extern const FFCodec ff_libgsm_ms_decoder
;
795 extern const FFCodec ff_libilbc_encoder
;
796 extern const FFCodec ff_libilbc_decoder
;
797 extern const FFCodec ff_libjxl_anim_decoder
;
798 extern const FFCodec ff_libjxl_anim_encoder
;
799 extern const FFCodec ff_libjxl_decoder
;
800 extern const FFCodec ff_libjxl_encoder
;
801 extern const FFCodec ff_liblc3_encoder
;
802 extern const FFCodec ff_liblc3_decoder
;
803 extern const FFCodec ff_libmp3lame_encoder
;
804 extern const FFCodec ff_libmpeghdec_decoder
;
805 extern const FFCodec ff_liboapv_encoder
;
806 extern const FFCodec ff_libopencore_amrnb_encoder
;
807 extern const FFCodec ff_libopencore_amrnb_decoder
;
808 extern const FFCodec ff_libopencore_amrwb_decoder
;
809 extern const FFCodec ff_libopenjpeg_encoder
;
810 extern const FFCodec ff_libopus_encoder
;
811 extern const FFCodec ff_libopus_decoder
;
812 extern const FFCodec ff_librav1e_encoder
;
813 extern const FFCodec ff_librsvg_decoder
;
814 extern const FFCodec ff_libshine_encoder
;
815 extern const FFCodec ff_libspeex_encoder
;
816 extern const FFCodec ff_libspeex_decoder
;
817 extern const FFCodec ff_libsvtav1_encoder
;
818 extern const FFCodec ff_libtheora_encoder
;
819 extern const FFCodec ff_libtwolame_encoder
;
820 extern const FFCodec ff_libuavs3d_decoder
;
821 extern const FFCodec ff_libvo_amrwbenc_encoder
;
822 extern const FFCodec ff_libvorbis_encoder
;
823 extern const FFCodec ff_libvorbis_decoder
;
824 extern const FFCodec ff_libvpx_vp8_encoder
;
825 extern const FFCodec ff_libvpx_vp8_decoder
;
826 extern FFCodec ff_libvpx_vp9_encoder
;
827 extern const FFCodec ff_libvpx_vp9_decoder
;
828 extern const FFCodec ff_libvvenc_encoder
;
829 /* preferred over libwebp */
830 extern const FFCodec ff_libwebp_anim_encoder
;
831 extern const FFCodec ff_libwebp_encoder
;
832 extern const FFCodec ff_libx262_encoder
;
833 extern const FFCodec ff_libx264_encoder
;
834 extern const FFCodec ff_libx264rgb_encoder
;
835 extern FFCodec ff_libx265_encoder
;
836 extern const FFCodec ff_libxeve_encoder
;
837 extern const FFCodec ff_libxevd_decoder
;
838 extern const FFCodec ff_libxavs_encoder
;
839 extern const FFCodec ff_libxavs2_encoder
;
840 extern const FFCodec ff_libxvid_encoder
;
841 extern const FFCodec ff_libzvbi_teletext_decoder
;
844 extern const FFCodec ff_bintext_decoder
;
845 extern const FFCodec ff_xbin_decoder
;
846 extern const FFCodec ff_idf_decoder
;
848 /* external libraries, that shouldn't be used by default if one of the
849 * above is available */
850 extern const FFCodec ff_aac_mediacodec_decoder
;
851 extern const FFCodec ff_aac_mf_encoder
;
852 extern const FFCodec ff_ac3_mf_encoder
;
853 extern const FFCodec ff_amrnb_mediacodec_decoder
;
854 extern const FFCodec ff_amrwb_mediacodec_decoder
;
855 extern const FFCodec ff_h263_v4l2m2m_encoder
;
856 extern const FFCodec ff_libaom_av1_decoder
;
857 /* hwaccel hooks only, so prefer external decoders */
858 extern const FFCodec ff_av1_decoder
;
859 extern const FFCodec ff_av1_cuvid_decoder
;
860 extern const FFCodec ff_av1_d3d12va_encoder
;
861 extern const FFCodec ff_av1_mediacodec_decoder
;
862 extern const FFCodec ff_av1_mediacodec_encoder
;
863 extern const FFCodec ff_av1_nvenc_encoder
;
864 extern const FFCodec ff_av1_qsv_decoder
;
865 extern const FFCodec ff_av1_qsv_encoder
;
866 extern const FFCodec ff_av1_amf_encoder
;
867 extern const FFCodec ff_av1_amf_decoder
;
868 extern const FFCodec ff_av1_mf_encoder
;
869 extern const FFCodec ff_av1_vaapi_encoder
;
870 extern const FFCodec ff_av1_vulkan_encoder
;
871 extern const FFCodec ff_libopenh264_encoder
;
872 extern const FFCodec ff_libopenh264_decoder
;
873 extern const FFCodec ff_h264_amf_encoder
;
874 extern const FFCodec ff_h264_amf_decoder
;
875 extern const FFCodec ff_h264_cuvid_decoder
;
876 extern const FFCodec ff_h264_d3d12va_encoder
;
877 extern const FFCodec ff_h264_mf_encoder
;
878 extern const FFCodec ff_h264_nvenc_encoder
;
879 extern const FFCodec ff_h264_oh_decoder
;
880 extern const FFCodec ff_h264_oh_encoder
;
881 extern const FFCodec ff_h264_omx_encoder
;
882 extern const FFCodec ff_h264_qsv_encoder
;
883 extern const FFCodec ff_h264_v4l2m2m_encoder
;
884 extern const FFCodec ff_h264_vaapi_encoder
;
885 extern const FFCodec ff_h264_videotoolbox_encoder
;
886 extern const FFCodec ff_h264_vulkan_encoder
;
887 extern const FFCodec ff_hevc_amf_encoder
;
888 extern const FFCodec ff_hevc_amf_decoder
;
889 extern const FFCodec ff_hevc_cuvid_decoder
;
890 extern const FFCodec ff_hevc_d3d12va_encoder
;
891 extern const FFCodec ff_hevc_mediacodec_decoder
;
892 extern const FFCodec ff_hevc_mediacodec_encoder
;
893 extern const FFCodec ff_hevc_mf_encoder
;
894 extern const FFCodec ff_hevc_nvenc_encoder
;
895 extern const FFCodec ff_hevc_oh_decoder
;
896 extern const FFCodec ff_hevc_oh_encoder
;
897 extern const FFCodec ff_hevc_qsv_encoder
;
898 extern const FFCodec ff_hevc_v4l2m2m_encoder
;
899 extern const FFCodec ff_hevc_vaapi_encoder
;
900 extern const FFCodec ff_hevc_videotoolbox_encoder
;
901 extern const FFCodec ff_hevc_vulkan_encoder
;
902 extern const FFCodec ff_libkvazaar_encoder
;
903 extern const FFCodec ff_mjpeg_cuvid_decoder
;
904 extern const FFCodec ff_mjpeg_qsv_encoder
;
905 extern const FFCodec ff_mjpeg_qsv_decoder
;
906 extern const FFCodec ff_mjpeg_vaapi_encoder
;
907 extern const FFCodec ff_mp3_mediacodec_decoder
;
908 extern const FFCodec ff_mp3_mf_encoder
;
909 extern const FFCodec ff_mpeg1_cuvid_decoder
;
910 extern const FFCodec ff_mpeg2_cuvid_decoder
;
911 extern const FFCodec ff_mpeg2_qsv_encoder
;
912 extern const FFCodec ff_mpeg2_vaapi_encoder
;
913 extern const FFCodec ff_mpeg4_cuvid_decoder
;
914 extern const FFCodec ff_mpeg4_mediacodec_decoder
;
915 extern const FFCodec ff_mpeg4_mediacodec_encoder
;
916 extern const FFCodec ff_mpeg4_omx_encoder
;
917 extern const FFCodec ff_mpeg4_v4l2m2m_encoder
;
918 extern const FFCodec ff_prores_videotoolbox_encoder
;
919 extern const FFCodec ff_vc1_cuvid_decoder
;
920 extern const FFCodec ff_vp8_cuvid_decoder
;
921 extern const FFCodec ff_vp8_mediacodec_decoder
;
922 extern const FFCodec ff_vp8_mediacodec_encoder
;
923 extern const FFCodec ff_vp8_qsv_decoder
;
924 extern const FFCodec ff_vp8_v4l2m2m_encoder
;
925 extern const FFCodec ff_vp8_vaapi_encoder
;
926 extern const FFCodec ff_vp9_amf_decoder
;
927 extern const FFCodec ff_vp9_cuvid_decoder
;
928 extern const FFCodec ff_vp9_mediacodec_decoder
;
929 extern const FFCodec ff_vp9_mediacodec_encoder
;
930 extern const FFCodec ff_vp9_qsv_decoder
;
931 extern const FFCodec ff_vp9_vaapi_encoder
;
932 extern const FFCodec ff_vp9_qsv_encoder
;
933 extern const FFCodec ff_vvc_qsv_decoder
;
936 extern const FFCodec ff_vnull_decoder
;
937 extern const FFCodec ff_vnull_encoder
;
938 extern const FFCodec ff_anull_decoder
;
939 extern const FFCodec ff_anull_encoder
;
941 // The iterate API is not usable with ossfuzz due to the excessive size of binaries created
943 const FFCodec
* codec_list
[] = {
949 #include "libavcodec/codec_list.c"
952 static AVOnce av_codec_static_init
= AV_ONCE_INIT
;
953 static void av_codec_init_static(void)
956 for (int i
= 0; codec_list
[i
]; i
++) {
957 /* Backward compatibility with deprecated public fields */
958 const FFCodec
*codec
= codec_list
[i
];
959 if (!codec
->get_supported_config
)
962 FF_DISABLE_DEPRECATION_WARNINGS
963 switch (codec
->p
.type
) {
964 case AVMEDIA_TYPE_VIDEO
:
965 if (!codec
->p
.pix_fmts
)
966 codec
->get_supported_config(NULL
, &codec
->p
,
967 AV_CODEC_CONFIG_PIX_FORMAT
, 0,
968 (const void **) &codec
->p
.pix_fmts
,
971 case AVMEDIA_TYPE_AUDIO
:
972 codec
->get_supported_config(NULL
, &codec
->p
,
973 AV_CODEC_CONFIG_SAMPLE_FORMAT
, 0,
974 (const void **) &codec
->p
.sample_fmts
,
976 codec
->get_supported_config(NULL
, &codec
->p
,
977 AV_CODEC_CONFIG_SAMPLE_RATE
, 0,
978 (const void **) &codec
->p
.supported_samplerates
,
980 codec
->get_supported_config(NULL
, &codec
->p
,
981 AV_CODEC_CONFIG_CHANNEL_LAYOUT
, 0,
982 (const void **) &codec
->p
.ch_layouts
,
988 FF_ENABLE_DEPRECATION_WARNINGS
992 const AVCodec
*av_codec_iterate(void **opaque
)
994 uintptr_t i
= (uintptr_t)*opaque
;
995 const FFCodec
*c
= codec_list
[i
];
997 ff_thread_once(&av_codec_static_init
, av_codec_init_static
);
1000 *opaque
= (void*)(i
+ 1);
1006 static enum AVCodecID
remap_deprecated_codec_id(enum AVCodecID id
)
1009 //This is for future deprecatec codec ids, its empty since
1010 //last major bump but will fill up again over time, please don't remove it
1011 default : return id
;
1015 static const AVCodec
*find_codec(enum AVCodecID id
, int (*x
)(const AVCodec
*))
1017 const AVCodec
*p
, *experimental
= NULL
;
1020 id
= remap_deprecated_codec_id(id
);
1022 while ((p
= av_codec_iterate(&i
))) {
1026 if (p
->capabilities
& AV_CODEC_CAP_EXPERIMENTAL
&& !experimental
) {
1033 return experimental
;
1036 const AVCodec
*avcodec_find_encoder(enum AVCodecID id
)
1038 return find_codec(id
, ff_codec_is_encoder
);
1041 const AVCodec
*avcodec_find_decoder(enum AVCodecID id
)
1043 return find_codec(id
, ff_codec_is_decoder
);
1046 static const AVCodec
*find_codec_by_name(const char *name
, int (*x
)(const AVCodec
*))
1054 while ((p
= av_codec_iterate(&i
))) {
1057 if (strcmp(name
, p
->name
) == 0)
1064 const AVCodec
*avcodec_find_encoder_by_name(const char *name
)
1066 return find_codec_by_name(name
, ff_codec_is_encoder
);
1069 const AVCodec
*avcodec_find_decoder_by_name(const char *name
)
1071 return find_codec_by_name(name
, ff_codec_is_decoder
);