1use crate::ffi::*;
2use crate::util::media;
3use crate::utils;
4#[cfg(feature = "serialize")]
5use serde::{Deserialize, Serialize};
6
7#[allow(non_camel_case_types)]
8#[derive(Eq, PartialEq, Clone, Copy, Debug)]
9#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))]
10pub enum Id {
11 None,
12
13 MPEG1VIDEO,
15 MPEG2VIDEO,
16 H261,
17 H263,
18 RV10,
19 RV20,
20 MJPEG,
21 MJPEGB,
22 LJPEG,
23 SP5X,
24 JPEGLS,
25 MPEG4,
26 RAWVIDEO,
27 MSMPEG4V1,
28 MSMPEG4V2,
29 MSMPEG4V3,
30 WMV1,
31 WMV2,
32 H263P,
33 H263I,
34 FLV1,
35 SVQ1,
36 SVQ3,
37 DVVIDEO,
38 HUFFYUV,
39 CYUV,
40 H264,
41 INDEO3,
42 VP3,
43 THEORA,
44 ASV1,
45 ASV2,
46 FFV1,
47 XM4,
48 VCR1,
49 CLJR,
50 MDEC,
51 ROQ,
52 INTERPLAY_VIDEO,
53 XAN_WC3,
54 XAN_WC4,
55 RPZA,
56 CINEPAK,
57 WS_VQA,
58 MSRLE,
59 MSVIDEO1,
60 IDCIN,
61 BPS8,
62 SMC,
63 FLIC,
64 TRUEMOTION1,
65 VMDVIDEO,
66 MSZH,
67 ZLIB,
68 QTRLE,
69 TSCC,
70 ULTI,
71 QDRAW,
72 VIXL,
73 QPEG,
74 PNG,
75 PPM,
76 PBM,
77 PGM,
78 PGMYUV,
79 PAM,
80 FFVHUFF,
81 RV30,
82 RV40,
83 VC1,
84 WMV3,
85 LOCO,
86 WNV1,
87 AASC,
88 INDEO2,
89 FRAPS,
90 TRUEMOTION2,
91 BMP,
92 CSCD,
93 MMVIDEO,
94 ZMBV,
95 AVS,
96 SMACKVIDEO,
97 NUV,
98 KMVC,
99 FLASHSV,
100 CAVS,
101 JPEG2000,
102 VMNC,
103 VP5,
104 VP6,
105 VP6F,
106 TARGA,
107 DSICINVIDEO,
108 TIERTEXSEQVIDEO,
109 TIFF,
110 GIF,
111 DXA,
112 DNXHD,
113 THP,
114 SGI,
115 C93,
116 BETHSOFTVID,
117 PTX,
118 TXD,
119 VP6A,
120 AMV,
121 VB,
122 PCX,
123 SUNRAST,
124 INDEO4,
125 INDEO5,
126 MIMIC,
127 RL2,
128 ESCAPE124,
129 DIRAC,
130 BFI,
131 CMV,
132 MOTIONPIXELS,
133 TGV,
134 TGQ,
135 TQI,
136 AURA,
137 AURA2,
138 V210X,
139 TMV,
140 V210,
141 DPX,
142 MAD,
143 FRWU,
144 FLASHSV2,
145 CDGRAPHICS,
146 R210,
147 ANM,
148 BINKVIDEO,
149 IFF_ILBM,
150 IFF_BYTERUN1,
151 KGV1,
152 YOP,
153 VP8,
154 PICTOR,
155 ANSI,
156 A64_MULTI,
157 A64_MULTI5,
158 R10K,
159 MXPEG,
160 LAGARITH,
161 PRORES,
162 JV,
163 DFA,
164 WMV3IMAGE,
165 VC1IMAGE,
166 UTVIDEO,
167 BMV_VIDEO,
168 VBLE,
169 DXTORY,
170 #[cfg(not(feature = "ffmpeg_9_0"))]
171 V410,
172 XWD,
173 CDXL,
174 XBM,
175 ZEROCODEC,
176 MSS1,
177 MSA1,
178 TSCC2,
179 MTS2,
180 CLLC,
181 MSS2,
182 VP9,
183 AIC,
184 ESCAPE130,
185 G2M,
186 WEBP,
187 HNM4_VIDEO,
188 HEVC,
189 H265,
190 FIC,
191 ALIAS_PIX,
192 BRENDER_PIX,
193 PAF_VIDEO,
194 EXR,
195 VP7,
196 SANM,
197 SGIRLE,
198 MVC1,
199 MVC2,
200 HQX,
201 TDSC,
202 HQ_HQA,
203 HAP,
204 DDS,
205 DXV,
206 SCREENPRESSO,
207 RSCC,
208
209 Y41P,
210 AVRP,
211 V012,
212 AVUI,
213 #[cfg(not(feature = "ffmpeg_7_0"))]
214 AYUV,
215 TARGA_Y216,
216 #[cfg(not(feature = "ffmpeg_9_0"))]
217 V308,
218 #[cfg(not(feature = "ffmpeg_9_0"))]
219 V408,
220 YUV4,
221 AVRN,
222 CPIA,
223 XFACE,
224 SNOW,
225 SMVJPEG,
226 APNG,
227 DAALA,
228 CFHD,
229 TRUEMOTION2RT,
230 M101,
231 MAGICYUV,
232 SHEERVIDEO,
233 YLC,
234
235 PCM_S16LE,
237 PCM_S16BE,
238 PCM_U16LE,
239 PCM_U16BE,
240 PCM_S8,
241 PCM_U8,
242 PCM_MULAW,
243 PCM_ALAW,
244 PCM_S32LE,
245 PCM_S32BE,
246 PCM_U32LE,
247 PCM_U32BE,
248 PCM_S24LE,
249 PCM_S24BE,
250 PCM_U24LE,
251 PCM_U24BE,
252 PCM_S24DAUD,
253 PCM_ZORK,
254 PCM_S16LE_PLANAR,
255 PCM_DVD,
256 PCM_F32BE,
257 PCM_F32LE,
258 PCM_F64BE,
259 PCM_F64LE,
260 PCM_BLURAY,
261 PCM_LXF,
262 S302M,
263 PCM_S8_PLANAR,
264 PCM_S24LE_PLANAR,
265 PCM_S32LE_PLANAR,
266 PCM_S16BE_PLANAR,
267
268 PCM_S64LE,
269 PCM_S64BE,
270
271 ADPCM_IMA_QT,
273 ADPCM_IMA_WAV,
274 ADPCM_IMA_DK3,
275 ADPCM_IMA_DK4,
276 ADPCM_IMA_WS,
277 ADPCM_IMA_SMJPEG,
278 ADPCM_MS,
279 ADPCM_4XM,
280 ADPCM_XA,
281 ADPCM_ADX,
282 ADPCM_EA,
283 ADPCM_G726,
284 ADPCM_CT,
285 ADPCM_SWF,
286 ADPCM_YAMAHA,
287 ADPCM_SBPRO_4,
288 ADPCM_SBPRO_3,
289 ADPCM_SBPRO_2,
290 ADPCM_THP,
291 ADPCM_IMA_AMV,
292 ADPCM_EA_R1,
293 ADPCM_EA_R3,
294 ADPCM_EA_R2,
295 ADPCM_IMA_EA_SEAD,
296 ADPCM_IMA_EA_EACS,
297 ADPCM_EA_XAS,
298 ADPCM_EA_MAXIS_XA,
299 ADPCM_IMA_ISS,
300 ADPCM_G722,
301 ADPCM_IMA_APC,
302 ADPCM_VIMA,
303
304 ADPCM_AFC,
305 ADPCM_IMA_OKI,
306 ADPCM_DTK,
307 ADPCM_IMA_RAD,
308 ADPCM_G726LE,
309 ADPCM_THP_LE,
310 ADPCM_PSX,
311 ADPCM_AICA,
312 ADPCM_IMA_DAT4,
313 ADPCM_MTAF,
314
315 AMR_NB,
317 AMR_WB,
318
319 RA_144,
321 RA_288,
322
323 ROQ_DPCM,
325 INTERPLAY_DPCM,
326 XAN_DPCM,
327 SOL_DPCM,
328
329 SDX2_DPCM,
330
331 MP2,
333 MP3,
334 AAC,
335 AC3,
336 DTS,
337 VORBIS,
338 DVAUDIO,
339 WMAV1,
340 WMAV2,
341 MACE3,
342 MACE6,
343 VMDAUDIO,
344 FLAC,
345 MP3ADU,
346 MP3ON4,
347 SHORTEN,
348 ALAC,
349 WESTWOOD_SND1,
350 GSM,
351 QDM2,
352 COOK,
353 TRUESPEECH,
354 TTA,
355 SMACKAUDIO,
356 QCELP,
357 WAVPACK,
358 DSICINAUDIO,
359 IMC,
360 MUSEPACK7,
361 MLP,
362 GSM_MS,
363 ATRAC3,
364 APE,
365 NELLYMOSER,
366 MUSEPACK8,
367 SPEEX,
368 WMAVOICE,
369 WMAPRO,
370 WMALOSSLESS,
371 ATRAC3P,
372 EAC3,
373 SIPR,
374 MP1,
375 TWINVQ,
376 TRUEHD,
377 MP4ALS,
378 ATRAC1,
379 BINKAUDIO_RDFT,
380 BINKAUDIO_DCT,
381 AAC_LATM,
382 QDMC,
383 CELT,
384 G723_1,
385 G729,
386 SVX_EXP8,
387 SVX_FIB8,
388 BMV_AUDIO,
389 RALF,
390 IAC,
391 ILBC,
392 OPUS,
393 COMFORT_NOISE,
394 TAK,
395 METASOUND,
396 PAF_AUDIO,
397 ON2AVC,
398 DSS_SP,
399
400 CODEC2,
401 FFWAVESYNTH,
402 SONIC,
403 SONIC_LS,
404 EVRC,
405 SMV,
406 DSD_LSBF,
407 DSD_MSBF,
408 DSD_LSBF_PLANAR,
409 DSD_MSBF_PLANAR,
410 _4GV,
411 INTERPLAY_ACM,
412 XMA1,
413 XMA2,
414 DST,
415
416 DVD_SUBTITLE,
418 DVB_SUBTITLE,
419 TEXT,
420 XSUB,
421 SSA,
422 MOV_TEXT,
423 HDMV_PGS_SUBTITLE,
424 DVB_TELETEXT,
425 SRT,
426
427 MICRODVD,
428 EIA_608,
429 JACOSUB,
430 SAMI,
431 REALTEXT,
432 STL,
433 SUBVIEWER1,
434 SUBVIEWER,
435 SUBRIP,
436 WEBVTT,
437 MPL2,
438 VPLAYER,
439 PJS,
440 ASS,
441 HDMV_TEXT_SUBTITLE,
442
443 TTF,
445
446 SCTE_35,
447 BINTEXT,
448 XBIN,
449 IDF,
450 OTF,
451 SMPTE_KLV,
452 DVD_NAV,
453 TIMED_ID3,
454 BIN_DATA,
455
456 PROBE,
457
458 MPEG2TS,
459 MPEG4SYSTEMS,
460 FFMETADATA,
461 WRAPPED_AVFRAME,
462
463 PSD,
464 PIXLET,
465 SPEEDHQ,
466 CLEARVIDEO,
467 FMVC,
468 SCPR,
469 XPM,
470 AV1,
471 PCM_F16LE,
472 PCM_F24LE,
473 ATRAC3AL,
474 ATRAC3PAL,
475
476 BITPACKED,
477 MSCC,
478 SRGC,
479 SVG,
480 GDV,
481 FITS,
482 GREMLIN_DPCM,
483 DOLBY_E,
484
485 APTX,
486 APTX_HD,
487 SBC,
488
489 AVS2,
490 IMM4,
491 PROSUMER,
492 MWSC,
493 WCMV,
494 RASC,
495 PCM_VIDC,
496 ATRAC9,
497 TTML,
498
499 HYMT,
500 ARBC,
501 AGM,
502 LSCR,
503 VP4,
504 ADPCM_AGM,
505 HCOM,
506 ARIB_CAPTION,
507
508 IMM5,
509 MVDV,
510 MVHA,
511 CDTOONS,
512 MV30,
513 NOTCHLC,
514 PFM,
515 ADPCM_ARGO,
516 ADPCM_IMA_SSI,
517 ADPCM_ZORK,
518 ADPCM_IMA_APM,
519 ADPCM_IMA_ALP,
520 ADPCM_IMA_MTF,
521 ADPCM_IMA_CUNNING,
522 DERF_DPCM,
523 ACELP_KELVIN,
524 MPEGH_3D_AUDIO,
525 SIREN,
526 HCA,
527 EPG,
528
529 AVS3,
530 PGX,
531 MSP2,
532 VVC,
533 MOBICLIP,
534 PHOTOCD,
535 ARGO,
536 CRI,
537 IPU,
538 SIMBIOSIS_IMX,
539 SGA_VIDEO,
540 PCM_SGA,
541 ADPCM_IMA_MOFLEX,
542 FASTAUDIO,
543
544 GEM,
545 ADPCM_IMA_ACORN,
546 MSNSIREN,
547
548 VBN,
549 JPEGXL,
550 QOI,
551 PHM,
552 DFPWM,
553
554 #[cfg(feature = "ffmpeg_6_0")]
555 RADIANCE_HDR,
556 #[cfg(feature = "ffmpeg_6_0")]
557 WBMP,
558 #[cfg(feature = "ffmpeg_6_0")]
559 MEDIA100,
560 #[cfg(feature = "ffmpeg_6_0")]
561 VQC,
562 #[cfg(feature = "ffmpeg_6_0")]
563 ADPCM_XMD,
564 #[cfg(feature = "ffmpeg_6_0")]
565 WADY_DPCM,
566 #[cfg(feature = "ffmpeg_6_0")]
567 CBD2_DPCM,
568 #[cfg(feature = "ffmpeg_6_0")]
569 BONK,
570 #[cfg(feature = "ffmpeg_6_0")]
571 MISC4,
572 #[cfg(feature = "ffmpeg_6_0")]
573 APAC,
574 #[cfg(feature = "ffmpeg_6_0")]
575 FTR,
576 #[cfg(feature = "ffmpeg_6_0")]
577 WAVARC,
578 #[cfg(feature = "ffmpeg_6_0")]
579 RKA,
580 #[cfg(feature = "ffmpeg_6_0")]
581 VNULL,
582 #[cfg(feature = "ffmpeg_6_0")]
583 ANULL,
584
585 #[cfg(feature = "ffmpeg_6_1")]
586 PDV,
587 #[cfg(feature = "ffmpeg_6_1")]
588 EVC,
589 #[cfg(feature = "ffmpeg_6_1")]
590 RTV1,
591 #[cfg(feature = "ffmpeg_6_1")]
592 VMIX,
593 #[cfg(feature = "ffmpeg_7_0")]
594 LEAD,
595 #[cfg(feature = "ffmpeg_6_1")]
596 AC4,
597 #[cfg(feature = "ffmpeg_6_1")]
598 OSQ,
599 #[cfg(feature = "ffmpeg_7_0")]
600 QOA,
601 #[cfg(feature = "ffmpeg_7_1")]
602 LC3,
603 #[cfg(feature = "ffmpeg_6_1")]
604 SMPTE_2038,
605 #[cfg(feature = "ffmpeg_7_1")]
606 LCEVC,
607
608 #[cfg(feature = "ffmpeg_8_0")]
609 DNXUC,
610 #[cfg(feature = "ffmpeg_8_0")]
611 RV60,
612 #[cfg(feature = "ffmpeg_8_0")]
613 JPEGXL_ANIM,
614 #[cfg(feature = "ffmpeg_8_0")]
615 APV,
616 #[cfg(feature = "ffmpeg_8_0")]
617 PRORES_RAW,
618 #[cfg(feature = "ffmpeg_8_0")]
619 ADPCM_IMA_XBOX,
620 #[cfg(feature = "ffmpeg_8_0")]
621 ADPCM_SANYO,
622 #[cfg(feature = "ffmpeg_8_0")]
623 G728,
624 #[cfg(feature = "ffmpeg_8_0")]
625 IVTV_VBI,
626 #[cfg(feature = "ffmpeg_8_0")]
627 SMPTE_436M_ANC,
628
629 #[cfg(feature = "ffmpeg_8_1")]
630 JPEGXS,
631 #[cfg(feature = "ffmpeg_8_1")]
632 ADPCM_IMA_HVQM4,
633 #[cfg(feature = "ffmpeg_8_1")]
634 ADPCM_IMA_PDA,
635 #[cfg(feature = "ffmpeg_8_1")]
636 ADPCM_N64,
637 #[cfg(feature = "ffmpeg_8_1")]
638 ADPCM_IMA_HVQM2,
639 #[cfg(feature = "ffmpeg_8_1")]
640 ADPCM_IMA_MAGIX,
641 #[cfg(feature = "ffmpeg_8_1")]
642 ADPCM_PSXC,
643 #[cfg(feature = "ffmpeg_8_1")]
644 ADPCM_CIRCUS,
645 #[cfg(feature = "ffmpeg_8_1")]
646 ADPCM_IMA_ESCAPE,
647 #[cfg(feature = "ffmpeg_8_1")]
648 AHX,
649
650 #[cfg(feature = "ffmpeg_9_0")]
651 WEBP_ANIM,
652 #[cfg(feature = "ffmpeg_9_0")]
653 APPLE_APAC,
654}
655
656impl Id {
657 pub fn medium(&self) -> media::Type {
658 unsafe { media::Type::from(avcodec_get_type((*self).into())) }
659 }
660
661 pub fn name(&self) -> &'static str {
662 unsafe { utils::str_from_c_ptr(avcodec_get_name((*self).into())) }
663 }
664}
665
666impl From<AVCodecID> for Id {
667 fn from(value: AVCodecID) -> Self {
668 use AVCodecID as AV;
669
670 match value {
671 AV::NONE => Id::None,
672
673 AV::MPEG1VIDEO => Id::MPEG1VIDEO,
675 AV::MPEG2VIDEO => Id::MPEG2VIDEO,
676 AV::H261 => Id::H261,
677 AV::H263 => Id::H263,
678 AV::RV10 => Id::RV10,
679 AV::RV20 => Id::RV20,
680 AV::MJPEG => Id::MJPEG,
681 AV::MJPEGB => Id::MJPEGB,
682 AV::LJPEG => Id::LJPEG,
683 AV::SP5X => Id::SP5X,
684 AV::JPEGLS => Id::JPEGLS,
685 AV::MPEG4 => Id::MPEG4,
686 AV::RAWVIDEO => Id::RAWVIDEO,
687 AV::MSMPEG4V1 => Id::MSMPEG4V1,
688 AV::MSMPEG4V2 => Id::MSMPEG4V2,
689 AV::MSMPEG4V3 => Id::MSMPEG4V3,
690 AV::WMV1 => Id::WMV1,
691 AV::WMV2 => Id::WMV2,
692 AV::H263P => Id::H263P,
693 AV::H263I => Id::H263I,
694 AV::FLV1 => Id::FLV1,
695 AV::SVQ1 => Id::SVQ1,
696 AV::SVQ3 => Id::SVQ3,
697 AV::DVVIDEO => Id::DVVIDEO,
698 AV::HUFFYUV => Id::HUFFYUV,
699 AV::CYUV => Id::CYUV,
700 AV::H264 => Id::H264,
701 AV::INDEO3 => Id::INDEO3,
702 AV::VP3 => Id::VP3,
703 AV::THEORA => Id::THEORA,
704 AV::ASV1 => Id::ASV1,
705 AV::ASV2 => Id::ASV2,
706 AV::FFV1 => Id::FFV1,
707 AV::_4XM => Id::XM4,
708 AV::VCR1 => Id::VCR1,
709 AV::CLJR => Id::CLJR,
710 AV::MDEC => Id::MDEC,
711 AV::ROQ => Id::ROQ,
712 AV::INTERPLAY_VIDEO => Id::INTERPLAY_VIDEO,
713 AV::XAN_WC3 => Id::XAN_WC3,
714 AV::XAN_WC4 => Id::XAN_WC4,
715 AV::RPZA => Id::RPZA,
716 AV::CINEPAK => Id::CINEPAK,
717 AV::WS_VQA => Id::WS_VQA,
718 AV::MSRLE => Id::MSRLE,
719 AV::MSVIDEO1 => Id::MSVIDEO1,
720 AV::IDCIN => Id::IDCIN,
721 AV::_8BPS => Id::BPS8,
722 AV::SMC => Id::SMC,
723 AV::FLIC => Id::FLIC,
724 AV::TRUEMOTION1 => Id::TRUEMOTION1,
725 AV::VMDVIDEO => Id::VMDVIDEO,
726 AV::MSZH => Id::MSZH,
727 AV::ZLIB => Id::ZLIB,
728 AV::QTRLE => Id::QTRLE,
729 AV::TSCC => Id::TSCC,
730 AV::ULTI => Id::ULTI,
731 AV::QDRAW => Id::QDRAW,
732 AV::VIXL => Id::VIXL,
733 AV::QPEG => Id::QPEG,
734 AV::PNG => Id::PNG,
735 AV::PPM => Id::PPM,
736 AV::PBM => Id::PBM,
737 AV::PGM => Id::PGM,
738 AV::PGMYUV => Id::PGMYUV,
739 AV::PAM => Id::PAM,
740 AV::FFVHUFF => Id::FFVHUFF,
741 AV::RV30 => Id::RV30,
742 AV::RV40 => Id::RV40,
743 AV::VC1 => Id::VC1,
744 AV::WMV3 => Id::WMV3,
745 AV::LOCO => Id::LOCO,
746 AV::WNV1 => Id::WNV1,
747 AV::AASC => Id::AASC,
748 AV::INDEO2 => Id::INDEO2,
749 AV::FRAPS => Id::FRAPS,
750 AV::TRUEMOTION2 => Id::TRUEMOTION2,
751 AV::BMP => Id::BMP,
752 AV::CSCD => Id::CSCD,
753 AV::MMVIDEO => Id::MMVIDEO,
754 AV::ZMBV => Id::ZMBV,
755 AV::AVS => Id::AVS,
756 AV::SMACKVIDEO => Id::SMACKVIDEO,
757 AV::NUV => Id::NUV,
758 AV::KMVC => Id::KMVC,
759 AV::FLASHSV => Id::FLASHSV,
760 AV::CAVS => Id::CAVS,
761 AV::JPEG2000 => Id::JPEG2000,
762 AV::VMNC => Id::VMNC,
763 AV::VP5 => Id::VP5,
764 AV::VP6 => Id::VP6,
765 AV::VP6F => Id::VP6F,
766 AV::TARGA => Id::TARGA,
767 AV::DSICINVIDEO => Id::DSICINVIDEO,
768 AV::TIERTEXSEQVIDEO => Id::TIERTEXSEQVIDEO,
769 AV::TIFF => Id::TIFF,
770 AV::GIF => Id::GIF,
771 AV::DXA => Id::DXA,
772 AV::DNXHD => Id::DNXHD,
773 AV::THP => Id::THP,
774 AV::SGI => Id::SGI,
775 AV::C93 => Id::C93,
776 AV::BETHSOFTVID => Id::BETHSOFTVID,
777 AV::PTX => Id::PTX,
778 AV::TXD => Id::TXD,
779 AV::VP6A => Id::VP6A,
780 AV::AMV => Id::AMV,
781 AV::VB => Id::VB,
782 AV::PCX => Id::PCX,
783 AV::SUNRAST => Id::SUNRAST,
784 AV::INDEO4 => Id::INDEO4,
785 AV::INDEO5 => Id::INDEO5,
786 AV::MIMIC => Id::MIMIC,
787 AV::RL2 => Id::RL2,
788 AV::ESCAPE124 => Id::ESCAPE124,
789 AV::DIRAC => Id::DIRAC,
790 AV::BFI => Id::BFI,
791 AV::CMV => Id::CMV,
792 AV::MOTIONPIXELS => Id::MOTIONPIXELS,
793 AV::TGV => Id::TGV,
794 AV::TGQ => Id::TGQ,
795 AV::TQI => Id::TQI,
796 AV::AURA => Id::AURA,
797 AV::AURA2 => Id::AURA2,
798 AV::V210X => Id::V210X,
799 AV::TMV => Id::TMV,
800 AV::V210 => Id::V210,
801 AV::DPX => Id::DPX,
802 AV::MAD => Id::MAD,
803 AV::FRWU => Id::FRWU,
804 AV::FLASHSV2 => Id::FLASHSV2,
805 AV::CDGRAPHICS => Id::CDGRAPHICS,
806 AV::R210 => Id::R210,
807 AV::ANM => Id::ANM,
808 AV::BINKVIDEO => Id::BINKVIDEO,
809 AV::IFF_ILBM => Id::IFF_ILBM,
810 AV::KGV1 => Id::KGV1,
811 AV::YOP => Id::YOP,
812 AV::VP8 => Id::VP8,
813 AV::PICTOR => Id::PICTOR,
814 AV::ANSI => Id::ANSI,
815 AV::A64_MULTI => Id::A64_MULTI,
816 AV::A64_MULTI5 => Id::A64_MULTI5,
817 AV::R10K => Id::R10K,
818 AV::MXPEG => Id::MXPEG,
819 AV::LAGARITH => Id::LAGARITH,
820 AV::PRORES => Id::PRORES,
821 AV::JV => Id::JV,
822 AV::DFA => Id::DFA,
823 AV::WMV3IMAGE => Id::WMV3IMAGE,
824 AV::VC1IMAGE => Id::VC1IMAGE,
825 AV::UTVIDEO => Id::UTVIDEO,
826 AV::BMV_VIDEO => Id::BMV_VIDEO,
827 AV::VBLE => Id::VBLE,
828 AV::DXTORY => Id::DXTORY,
829 #[cfg(not(feature = "ffmpeg_9_0"))]
830 AV::V410 => Id::V410,
831 AV::XWD => Id::XWD,
832 AV::CDXL => Id::CDXL,
833 AV::XBM => Id::XBM,
834 AV::ZEROCODEC => Id::ZEROCODEC,
835 AV::MSS1 => Id::MSS1,
836 AV::MSA1 => Id::MSA1,
837 AV::TSCC2 => Id::TSCC2,
838 AV::MTS2 => Id::MTS2,
839 AV::CLLC => Id::CLLC,
840 AV::MSS2 => Id::MSS2,
841 AV::VP9 => Id::VP9,
842 AV::AIC => Id::AIC,
843 AV::ESCAPE130 => Id::ESCAPE130,
844 AV::G2M => Id::G2M,
845 AV::WEBP => Id::WEBP,
846 AV::HNM4_VIDEO => Id::HNM4_VIDEO,
847 AV::HEVC => Id::HEVC,
848 AV::FIC => Id::FIC,
849 AV::ALIAS_PIX => Id::ALIAS_PIX,
850 AV::BRENDER_PIX => Id::BRENDER_PIX,
851 AV::PAF_VIDEO => Id::PAF_VIDEO,
852 AV::EXR => Id::EXR,
853 AV::VP7 => Id::VP7,
854 AV::SANM => Id::SANM,
855 AV::SGIRLE => Id::SGIRLE,
856 AV::MVC1 => Id::MVC1,
857 AV::MVC2 => Id::MVC2,
858 AV::HQX => Id::HQX,
859 AV::TDSC => Id::TDSC,
860 AV::HQ_HQA => Id::HQ_HQA,
861 AV::HAP => Id::HAP,
862 AV::DDS => Id::DDS,
863 AV::DXV => Id::DXV,
864 AV::SCREENPRESSO => Id::SCREENPRESSO,
865 AV::RSCC => Id::RSCC,
866
867 AV::Y41P => Id::Y41P,
868 AV::AVRP => Id::AVRP,
869 AV::_012V => Id::V012,
870 AV::AVUI => Id::AVUI,
871 #[cfg(not(feature = "ffmpeg_7_0"))]
872 AV::AYUV => Id::AYUV,
873 AV::TARGA_Y216 => Id::TARGA_Y216,
874 #[cfg(not(feature = "ffmpeg_9_0"))]
875 AV::V308 => Id::V308,
876 #[cfg(not(feature = "ffmpeg_9_0"))]
877 AV::V408 => Id::V408,
878 AV::YUV4 => Id::YUV4,
879 AV::AVRN => Id::AVRN,
880 AV::CPIA => Id::CPIA,
881 AV::XFACE => Id::XFACE,
882 AV::SNOW => Id::SNOW,
883 AV::SMVJPEG => Id::SMVJPEG,
884 AV::APNG => Id::APNG,
885 AV::DAALA => Id::DAALA,
886 AV::CFHD => Id::CFHD,
887 AV::TRUEMOTION2RT => Id::TRUEMOTION2RT,
888 AV::M101 => Id::M101,
889 AV::MAGICYUV => Id::MAGICYUV,
890 AV::SHEERVIDEO => Id::SHEERVIDEO,
891 AV::YLC => Id::YLC,
892
893 AV::PCM_S16LE => Id::PCM_S16LE,
895 AV::PCM_S16BE => Id::PCM_S16BE,
896 AV::PCM_U16LE => Id::PCM_U16LE,
897 AV::PCM_U16BE => Id::PCM_U16BE,
898 AV::PCM_S8 => Id::PCM_S8,
899 AV::PCM_U8 => Id::PCM_U8,
900 AV::PCM_MULAW => Id::PCM_MULAW,
901 AV::PCM_ALAW => Id::PCM_ALAW,
902 AV::PCM_S32LE => Id::PCM_S32LE,
903 AV::PCM_S32BE => Id::PCM_S32BE,
904 AV::PCM_U32LE => Id::PCM_U32LE,
905 AV::PCM_U32BE => Id::PCM_U32BE,
906 AV::PCM_S24LE => Id::PCM_S24LE,
907 AV::PCM_S24BE => Id::PCM_S24BE,
908 AV::PCM_U24LE => Id::PCM_U24LE,
909 AV::PCM_U24BE => Id::PCM_U24BE,
910 AV::PCM_S24DAUD => Id::PCM_S24DAUD,
911 AV::PCM_ZORK => Id::PCM_ZORK,
912 AV::PCM_S16LE_PLANAR => Id::PCM_S16LE_PLANAR,
913 AV::PCM_DVD => Id::PCM_DVD,
914 AV::PCM_F32BE => Id::PCM_F32BE,
915 AV::PCM_F32LE => Id::PCM_F32LE,
916 AV::PCM_F64BE => Id::PCM_F64BE,
917 AV::PCM_F64LE => Id::PCM_F64LE,
918 AV::PCM_BLURAY => Id::PCM_BLURAY,
919 AV::PCM_LXF => Id::PCM_LXF,
920 AV::S302M => Id::S302M,
921 AV::PCM_S8_PLANAR => Id::PCM_S8_PLANAR,
922 AV::PCM_S24LE_PLANAR => Id::PCM_S24LE_PLANAR,
923 AV::PCM_S32LE_PLANAR => Id::PCM_S32LE_PLANAR,
924 AV::PCM_S16BE_PLANAR => Id::PCM_S16BE_PLANAR,
925
926 AV::PCM_S64LE => Id::PCM_S64LE,
927 AV::PCM_S64BE => Id::PCM_S64BE,
928
929 AV::ADPCM_IMA_QT => Id::ADPCM_IMA_QT,
931 AV::ADPCM_IMA_WAV => Id::ADPCM_IMA_WAV,
932 AV::ADPCM_IMA_DK3 => Id::ADPCM_IMA_DK3,
933 AV::ADPCM_IMA_DK4 => Id::ADPCM_IMA_DK4,
934 AV::ADPCM_IMA_WS => Id::ADPCM_IMA_WS,
935 AV::ADPCM_IMA_SMJPEG => Id::ADPCM_IMA_SMJPEG,
936 AV::ADPCM_MS => Id::ADPCM_MS,
937 AV::ADPCM_4XM => Id::ADPCM_4XM,
938 AV::ADPCM_XA => Id::ADPCM_XA,
939 AV::ADPCM_ADX => Id::ADPCM_ADX,
940 AV::ADPCM_EA => Id::ADPCM_EA,
941 AV::ADPCM_G726 => Id::ADPCM_G726,
942 AV::ADPCM_CT => Id::ADPCM_CT,
943 AV::ADPCM_SWF => Id::ADPCM_SWF,
944 AV::ADPCM_YAMAHA => Id::ADPCM_YAMAHA,
945 AV::ADPCM_SBPRO_4 => Id::ADPCM_SBPRO_4,
946 AV::ADPCM_SBPRO_3 => Id::ADPCM_SBPRO_3,
947 AV::ADPCM_SBPRO_2 => Id::ADPCM_SBPRO_2,
948 AV::ADPCM_THP => Id::ADPCM_THP,
949 AV::ADPCM_IMA_AMV => Id::ADPCM_IMA_AMV,
950 AV::ADPCM_EA_R1 => Id::ADPCM_EA_R1,
951 AV::ADPCM_EA_R3 => Id::ADPCM_EA_R3,
952 AV::ADPCM_EA_R2 => Id::ADPCM_EA_R2,
953 AV::ADPCM_IMA_EA_SEAD => Id::ADPCM_IMA_EA_SEAD,
954 AV::ADPCM_IMA_EA_EACS => Id::ADPCM_IMA_EA_EACS,
955 AV::ADPCM_EA_XAS => Id::ADPCM_EA_XAS,
956 AV::ADPCM_EA_MAXIS_XA => Id::ADPCM_EA_MAXIS_XA,
957 AV::ADPCM_IMA_ISS => Id::ADPCM_IMA_ISS,
958 AV::ADPCM_G722 => Id::ADPCM_G722,
959 AV::ADPCM_IMA_APC => Id::ADPCM_IMA_APC,
960 AV::ADPCM_VIMA => Id::ADPCM_VIMA,
961
962 AV::ADPCM_AFC => Id::ADPCM_AFC,
963 AV::ADPCM_IMA_OKI => Id::ADPCM_IMA_OKI,
964 AV::ADPCM_DTK => Id::ADPCM_DTK,
965 AV::ADPCM_IMA_RAD => Id::ADPCM_IMA_RAD,
966 AV::ADPCM_G726LE => Id::ADPCM_G726LE,
967 AV::ADPCM_THP_LE => Id::ADPCM_THP_LE,
968 AV::ADPCM_PSX => Id::ADPCM_PSX,
969 AV::ADPCM_AICA => Id::ADPCM_AICA,
970 AV::ADPCM_IMA_DAT4 => Id::ADPCM_IMA_DAT4,
971 AV::ADPCM_MTAF => Id::ADPCM_MTAF,
972
973 AV::AMR_NB => Id::AMR_NB,
975 AV::AMR_WB => Id::AMR_WB,
976
977 AV::RA_144 => Id::RA_144,
979 AV::RA_288 => Id::RA_288,
980
981 AV::ROQ_DPCM => Id::ROQ_DPCM,
983 AV::INTERPLAY_DPCM => Id::INTERPLAY_DPCM,
984 AV::XAN_DPCM => Id::XAN_DPCM,
985 AV::SOL_DPCM => Id::SOL_DPCM,
986
987 AV::SDX2_DPCM => Id::SDX2_DPCM,
988
989 AV::MP2 => Id::MP2,
991 AV::MP3 => Id::MP3,
992 AV::AAC => Id::AAC,
993 AV::AC3 => Id::AC3,
994 AV::DTS => Id::DTS,
995 AV::VORBIS => Id::VORBIS,
996 AV::DVAUDIO => Id::DVAUDIO,
997 AV::WMAV1 => Id::WMAV1,
998 AV::WMAV2 => Id::WMAV2,
999 AV::MACE3 => Id::MACE3,
1000 AV::MACE6 => Id::MACE6,
1001 AV::VMDAUDIO => Id::VMDAUDIO,
1002 AV::FLAC => Id::FLAC,
1003 AV::MP3ADU => Id::MP3ADU,
1004 AV::MP3ON4 => Id::MP3ON4,
1005 AV::SHORTEN => Id::SHORTEN,
1006 AV::ALAC => Id::ALAC,
1007 AV::WESTWOOD_SND1 => Id::WESTWOOD_SND1,
1008 AV::GSM => Id::GSM,
1009 AV::QDM2 => Id::QDM2,
1010 AV::COOK => Id::COOK,
1011 AV::TRUESPEECH => Id::TRUESPEECH,
1012 AV::TTA => Id::TTA,
1013 AV::SMACKAUDIO => Id::SMACKAUDIO,
1014 AV::QCELP => Id::QCELP,
1015 AV::WAVPACK => Id::WAVPACK,
1016 AV::DSICINAUDIO => Id::DSICINAUDIO,
1017 AV::IMC => Id::IMC,
1018 AV::MUSEPACK7 => Id::MUSEPACK7,
1019 AV::MLP => Id::MLP,
1020 AV::GSM_MS => Id::GSM_MS,
1021 AV::ATRAC3 => Id::ATRAC3,
1022 AV::APE => Id::APE,
1023 AV::NELLYMOSER => Id::NELLYMOSER,
1024 AV::MUSEPACK8 => Id::MUSEPACK8,
1025 AV::SPEEX => Id::SPEEX,
1026 AV::WMAVOICE => Id::WMAVOICE,
1027 AV::WMAPRO => Id::WMAPRO,
1028 AV::WMALOSSLESS => Id::WMALOSSLESS,
1029 AV::ATRAC3P => Id::ATRAC3P,
1030 AV::EAC3 => Id::EAC3,
1031 AV::SIPR => Id::SIPR,
1032 AV::MP1 => Id::MP1,
1033 AV::TWINVQ => Id::TWINVQ,
1034 AV::TRUEHD => Id::TRUEHD,
1035 AV::MP4ALS => Id::MP4ALS,
1036 AV::ATRAC1 => Id::ATRAC1,
1037 AV::BINKAUDIO_RDFT => Id::BINKAUDIO_RDFT,
1038 AV::BINKAUDIO_DCT => Id::BINKAUDIO_DCT,
1039 AV::AAC_LATM => Id::AAC_LATM,
1040 AV::QDMC => Id::QDMC,
1041 AV::CELT => Id::CELT,
1042 AV::G723_1 => Id::G723_1,
1043 AV::G729 => Id::G729,
1044 AV::_8SVX_EXP => Id::SVX_EXP8,
1045 AV::_8SVX_FIB => Id::SVX_FIB8,
1046 AV::BMV_AUDIO => Id::BMV_AUDIO,
1047 AV::RALF => Id::RALF,
1048 AV::IAC => Id::IAC,
1049 AV::ILBC => Id::ILBC,
1050 AV::OPUS => Id::OPUS,
1051 AV::COMFORT_NOISE => Id::COMFORT_NOISE,
1052 AV::TAK => Id::TAK,
1053 AV::METASOUND => Id::METASOUND,
1054 AV::PAF_AUDIO => Id::PAF_AUDIO,
1055 AV::ON2AVC => Id::ON2AVC,
1056 AV::DSS_SP => Id::DSS_SP,
1057
1058 AV::CODEC2 => Id::CODEC2,
1059 AV::FFWAVESYNTH => Id::FFWAVESYNTH,
1060 AV::SONIC => Id::SONIC,
1061 AV::SONIC_LS => Id::SONIC_LS,
1062 AV::EVRC => Id::EVRC,
1063 AV::SMV => Id::SMV,
1064 AV::DSD_LSBF => Id::DSD_LSBF,
1065 AV::DSD_MSBF => Id::DSD_MSBF,
1066 AV::DSD_LSBF_PLANAR => Id::DSD_LSBF_PLANAR,
1067 AV::DSD_MSBF_PLANAR => Id::DSD_MSBF_PLANAR,
1068 AV::_4GV => Id::_4GV,
1069 AV::INTERPLAY_ACM => Id::INTERPLAY_ACM,
1070 AV::XMA1 => Id::XMA1,
1071 AV::XMA2 => Id::XMA2,
1072 AV::DST => Id::DST,
1073
1074 AV::DVD_SUBTITLE => Id::DVD_SUBTITLE,
1076 AV::DVB_SUBTITLE => Id::DVB_SUBTITLE,
1077 AV::TEXT => Id::TEXT,
1078 AV::XSUB => Id::XSUB,
1079 AV::SSA => Id::SSA,
1080 AV::MOV_TEXT => Id::MOV_TEXT,
1081 AV::HDMV_PGS_SUBTITLE => Id::HDMV_PGS_SUBTITLE,
1082 AV::DVB_TELETEXT => Id::DVB_TELETEXT,
1083 AV::SRT => Id::SRT,
1084
1085 AV::MICRODVD => Id::MICRODVD,
1086 AV::EIA_608 => Id::EIA_608,
1087 AV::JACOSUB => Id::JACOSUB,
1088 AV::SAMI => Id::SAMI,
1089 AV::REALTEXT => Id::REALTEXT,
1090 AV::STL => Id::STL,
1091 AV::SUBVIEWER1 => Id::SUBVIEWER1,
1092 AV::SUBVIEWER => Id::SUBVIEWER,
1093 AV::SUBRIP => Id::SUBRIP,
1094 AV::WEBVTT => Id::WEBVTT,
1095 AV::MPL2 => Id::MPL2,
1096 AV::VPLAYER => Id::VPLAYER,
1097 AV::PJS => Id::PJS,
1098 AV::ASS => Id::ASS,
1099 AV::HDMV_TEXT_SUBTITLE => Id::HDMV_TEXT_SUBTITLE,
1100
1101 AV::TTF => Id::TTF,
1103
1104 AV::SCTE_35 => Id::SCTE_35,
1105 AV::BINTEXT => Id::BINTEXT,
1106 AV::XBIN => Id::XBIN,
1107 AV::IDF => Id::IDF,
1108 AV::OTF => Id::OTF,
1109 AV::SMPTE_KLV => Id::SMPTE_KLV,
1110 AV::DVD_NAV => Id::DVD_NAV,
1111 AV::TIMED_ID3 => Id::TIMED_ID3,
1112 AV::BIN_DATA => Id::BIN_DATA,
1113
1114 AV::PROBE => Id::PROBE,
1115
1116 AV::MPEG2TS => Id::MPEG2TS,
1117 AV::MPEG4SYSTEMS => Id::MPEG4SYSTEMS,
1118 AV::FFMETADATA => Id::FFMETADATA,
1119 AV::WRAPPED_AVFRAME => Id::WRAPPED_AVFRAME,
1120 AV::PSD => Id::PSD,
1121 AV::PIXLET => Id::PIXLET,
1122 AV::SPEEDHQ => Id::SPEEDHQ,
1123 AV::CLEARVIDEO => Id::CLEARVIDEO,
1124 AV::FMVC => Id::FMVC,
1125 AV::SCPR => Id::SCPR,
1126 AV::XPM => Id::XPM,
1127 AV::AV1 => Id::AV1,
1128 AV::PCM_F16LE => Id::PCM_F16LE,
1129 AV::PCM_F24LE => Id::PCM_F24LE,
1130 AV::ATRAC3AL => Id::ATRAC3AL,
1131 AV::ATRAC3PAL => Id::ATRAC3PAL,
1132
1133 AV::BITPACKED => Id::BITPACKED,
1134 AV::MSCC => Id::MSCC,
1135 AV::SRGC => Id::SRGC,
1136 AV::SVG => Id::SVG,
1137 AV::GDV => Id::GDV,
1138 AV::FITS => Id::FITS,
1139 AV::GREMLIN_DPCM => Id::GREMLIN_DPCM,
1140 AV::DOLBY_E => Id::DOLBY_E,
1141
1142 AV::APTX => Id::APTX,
1143 AV::APTX_HD => Id::APTX_HD,
1144 AV::SBC => Id::SBC,
1145
1146 AV::AVS2 => Id::AVS2,
1147 AV::IMM4 => Id::IMM4,
1148 AV::PROSUMER => Id::PROSUMER,
1149 AV::MWSC => Id::MWSC,
1150 AV::WCMV => Id::WCMV,
1151 AV::RASC => Id::RASC,
1152 AV::PCM_VIDC => Id::PCM_VIDC,
1153 AV::ATRAC9 => Id::ATRAC9,
1154 AV::TTML => Id::TTML,
1155
1156 AV::HYMT => Id::HYMT,
1157 AV::ARBC => Id::ARBC,
1158 AV::AGM => Id::AGM,
1159 AV::LSCR => Id::LSCR,
1160 AV::VP4 => Id::VP4,
1161 AV::ADPCM_AGM => Id::ADPCM_AGM,
1162 AV::HCOM => Id::HCOM,
1163 AV::ARIB_CAPTION => Id::ARIB_CAPTION,
1164
1165 AV::IMM5 => Id::IMM5,
1166 AV::MVDV => Id::MVDV,
1167 AV::MVHA => Id::MVHA,
1168 AV::CDTOONS => Id::CDTOONS,
1169 AV::MV30 => Id::MV30,
1170 AV::NOTCHLC => Id::NOTCHLC,
1171 AV::PFM => Id::PFM,
1172 AV::ADPCM_ARGO => Id::ADPCM_ARGO,
1173 AV::ADPCM_IMA_SSI => Id::ADPCM_IMA_SSI,
1174 AV::ADPCM_ZORK => Id::ADPCM_ZORK,
1175 AV::ADPCM_IMA_APM => Id::ADPCM_IMA_APM,
1176 AV::ADPCM_IMA_ALP => Id::ADPCM_IMA_ALP,
1177 AV::ADPCM_IMA_MTF => Id::ADPCM_IMA_MTF,
1178 AV::ADPCM_IMA_CUNNING => Id::ADPCM_IMA_CUNNING,
1179 AV::DERF_DPCM => Id::DERF_DPCM,
1180 AV::ACELP_KELVIN => Id::ACELP_KELVIN,
1181 AV::MPEGH_3D_AUDIO => Id::MPEGH_3D_AUDIO,
1182 AV::SIREN => Id::SIREN,
1183 AV::HCA => Id::HCA,
1184 AV::EPG => Id::EPG,
1185
1186 AV::PGX => Id::PGX,
1187 AV::AVS3 => Id::AVS3,
1188 AV::MSP2 => Id::MSP2,
1189 AV::VVC => Id::VVC,
1190 AV::MOBICLIP => Id::MOBICLIP,
1191 AV::PHOTOCD => Id::PHOTOCD,
1192 AV::IPU => Id::IPU,
1193 AV::ARGO => Id::ARGO,
1194 AV::CRI => Id::CRI,
1195 AV::SIMBIOSIS_IMX => Id::SIMBIOSIS_IMX,
1196 AV::SGA_VIDEO => Id::SGA_VIDEO,
1197 AV::PCM_SGA => Id::PCM_SGA,
1198 AV::ADPCM_IMA_MOFLEX => Id::ADPCM_IMA_MOFLEX,
1199 AV::FASTAUDIO => Id::FASTAUDIO,
1200
1201 AV::GEM => Id::GEM,
1202 AV::ADPCM_IMA_ACORN => Id::ADPCM_IMA_ACORN,
1203 AV::MSNSIREN => Id::MSNSIREN,
1204
1205 AV::VBN => Id::VBN,
1206 AV::JPEGXL => Id::JPEGXL,
1207 AV::QOI => Id::QOI,
1208 AV::PHM => Id::PHM,
1209 AV::DFPWM => Id::DFPWM,
1210
1211 #[cfg(feature = "ffmpeg_6_0")]
1212 AV::RADIANCE_HDR => Id::RADIANCE_HDR,
1213 #[cfg(feature = "ffmpeg_6_0")]
1214 AV::WBMP => Id::WBMP,
1215 #[cfg(feature = "ffmpeg_6_0")]
1216 AV::MEDIA100 => Id::MEDIA100,
1217 #[cfg(feature = "ffmpeg_6_0")]
1218 AV::VQC => Id::VQC,
1219 #[cfg(feature = "ffmpeg_6_0")]
1220 AV::ADPCM_XMD => Id::ADPCM_XMD,
1221 #[cfg(feature = "ffmpeg_6_0")]
1222 AV::WADY_DPCM => Id::WADY_DPCM,
1223 #[cfg(feature = "ffmpeg_6_0")]
1224 AV::CBD2_DPCM => Id::CBD2_DPCM,
1225 #[cfg(feature = "ffmpeg_6_0")]
1226 AV::BONK => Id::BONK,
1227 #[cfg(feature = "ffmpeg_6_0")]
1228 AV::MISC4 => Id::MISC4,
1229 #[cfg(feature = "ffmpeg_6_0")]
1230 AV::APAC => Id::APAC,
1231 #[cfg(feature = "ffmpeg_6_0")]
1232 AV::FTR => Id::FTR,
1233 #[cfg(feature = "ffmpeg_6_0")]
1234 AV::WAVARC => Id::WAVARC,
1235 #[cfg(feature = "ffmpeg_6_0")]
1236 AV::RKA => Id::RKA,
1237 #[cfg(feature = "ffmpeg_6_0")]
1238 AV::VNULL => Id::VNULL,
1239 #[cfg(feature = "ffmpeg_6_0")]
1240 AV::ANULL => Id::ANULL,
1241
1242 #[cfg(feature = "ffmpeg_6_1")]
1243 AV::PDV => Id::PDV,
1244 #[cfg(feature = "ffmpeg_6_1")]
1245 AV::EVC => Id::EVC,
1246 #[cfg(feature = "ffmpeg_6_1")]
1247 AV::RTV1 => Id::RTV1,
1248 #[cfg(feature = "ffmpeg_6_1")]
1249 AV::VMIX => Id::VMIX,
1250 #[cfg(feature = "ffmpeg_7_0")]
1251 AV::LEAD => Id::LEAD,
1252 #[cfg(feature = "ffmpeg_6_1")]
1253 AV::AC4 => Id::AC4,
1254 #[cfg(feature = "ffmpeg_6_1")]
1255 AV::OSQ => Id::OSQ,
1256 #[cfg(feature = "ffmpeg_7_0")]
1257 AV::QOA => Id::QOA,
1258 #[cfg(feature = "ffmpeg_7_1")]
1259 AV::LC3 => Id::LC3,
1260 #[cfg(feature = "ffmpeg_6_1")]
1261 AV::SMPTE_2038 => Id::SMPTE_2038,
1262 #[cfg(feature = "ffmpeg_7_1")]
1263 AV::LCEVC => Id::LCEVC,
1264
1265 #[cfg(feature = "ffmpeg_8_0")]
1266 AV::DNXUC => Id::DNXUC,
1267 #[cfg(feature = "ffmpeg_8_0")]
1268 AV::RV60 => Id::RV60,
1269 #[cfg(feature = "ffmpeg_8_0")]
1270 AV::JPEGXL_ANIM => Id::JPEGXL_ANIM,
1271 #[cfg(feature = "ffmpeg_8_0")]
1272 AV::APV => Id::APV,
1273 #[cfg(feature = "ffmpeg_8_0")]
1274 AV::PRORES_RAW => Id::PRORES_RAW,
1275 #[cfg(feature = "ffmpeg_8_0")]
1276 AV::ADPCM_IMA_XBOX => Id::ADPCM_IMA_XBOX,
1277 #[cfg(feature = "ffmpeg_8_0")]
1278 AV::ADPCM_SANYO => Id::ADPCM_SANYO,
1279 #[cfg(feature = "ffmpeg_8_0")]
1280 AV::G728 => Id::G728,
1281 #[cfg(feature = "ffmpeg_8_0")]
1282 AV::IVTV_VBI => Id::IVTV_VBI,
1283 #[cfg(feature = "ffmpeg_8_0")]
1284 AV::SMPTE_436M_ANC => Id::SMPTE_436M_ANC,
1285
1286 #[cfg(feature = "ffmpeg_8_1")]
1287 AV::JPEGXS => Id::JPEGXS,
1288 #[cfg(feature = "ffmpeg_8_1")]
1289 AV::ADPCM_IMA_HVQM4 => Id::ADPCM_IMA_HVQM4,
1290 #[cfg(feature = "ffmpeg_8_1")]
1291 AV::ADPCM_IMA_PDA => Id::ADPCM_IMA_PDA,
1292 #[cfg(feature = "ffmpeg_8_1")]
1293 AV::ADPCM_N64 => Id::ADPCM_N64,
1294 #[cfg(feature = "ffmpeg_8_1")]
1295 AV::ADPCM_IMA_HVQM2 => Id::ADPCM_IMA_HVQM2,
1296 #[cfg(feature = "ffmpeg_8_1")]
1297 AV::ADPCM_IMA_MAGIX => Id::ADPCM_IMA_MAGIX,
1298 #[cfg(feature = "ffmpeg_8_1")]
1299 AV::ADPCM_PSXC => Id::ADPCM_PSXC,
1300 #[cfg(feature = "ffmpeg_8_1")]
1301 AV::ADPCM_CIRCUS => Id::ADPCM_CIRCUS,
1302 #[cfg(feature = "ffmpeg_8_1")]
1303 AV::ADPCM_IMA_ESCAPE => Id::ADPCM_IMA_ESCAPE,
1304 #[cfg(feature = "ffmpeg_8_1")]
1305 AV::AHX => Id::AHX,
1306
1307 #[cfg(feature = "ffmpeg_9_0")]
1308 AV::WEBP_ANIM => Id::WEBP_ANIM,
1309 #[cfg(feature = "ffmpeg_9_0")]
1310 AV::APPLE_APAC => Id::APPLE_APAC,
1311
1312 _ => unimplemented!(),
1313 }
1314 }
1315}
1316
1317impl From<Id> for AVCodecID {
1318 fn from(value: Id) -> AVCodecID {
1319 use AVCodecID as AV;
1320
1321 match value {
1322 Id::None => AV::NONE,
1323
1324 Id::MPEG1VIDEO => AV::MPEG1VIDEO,
1326 Id::MPEG2VIDEO => AV::MPEG2VIDEO,
1327 Id::H261 => AV::H261,
1328 Id::H263 => AV::H263,
1329 Id::RV10 => AV::RV10,
1330 Id::RV20 => AV::RV20,
1331 Id::MJPEG => AV::MJPEG,
1332 Id::MJPEGB => AV::MJPEGB,
1333 Id::LJPEG => AV::LJPEG,
1334 Id::SP5X => AV::SP5X,
1335 Id::JPEGLS => AV::JPEGLS,
1336 Id::MPEG4 => AV::MPEG4,
1337 Id::RAWVIDEO => AV::RAWVIDEO,
1338 Id::MSMPEG4V1 => AV::MSMPEG4V1,
1339 Id::MSMPEG4V2 => AV::MSMPEG4V2,
1340 Id::MSMPEG4V3 => AV::MSMPEG4V3,
1341 Id::WMV1 => AV::WMV1,
1342 Id::WMV2 => AV::WMV2,
1343 Id::H263P => AV::H263P,
1344 Id::H263I => AV::H263I,
1345 Id::FLV1 => AV::FLV1,
1346 Id::SVQ1 => AV::SVQ1,
1347 Id::SVQ3 => AV::SVQ3,
1348 Id::DVVIDEO => AV::DVVIDEO,
1349 Id::HUFFYUV => AV::HUFFYUV,
1350 Id::CYUV => AV::CYUV,
1351 Id::H264 => AV::H264,
1352 Id::INDEO3 => AV::INDEO3,
1353 Id::VP3 => AV::VP3,
1354 Id::THEORA => AV::THEORA,
1355 Id::ASV1 => AV::ASV1,
1356 Id::ASV2 => AV::ASV2,
1357 Id::FFV1 => AV::FFV1,
1358 Id::XM4 => AV::_4XM,
1359 Id::VCR1 => AV::VCR1,
1360 Id::CLJR => AV::CLJR,
1361 Id::MDEC => AV::MDEC,
1362 Id::ROQ => AV::ROQ,
1363 Id::INTERPLAY_VIDEO => AV::INTERPLAY_VIDEO,
1364 Id::XAN_WC3 => AV::XAN_WC3,
1365 Id::XAN_WC4 => AV::XAN_WC4,
1366 Id::RPZA => AV::RPZA,
1367 Id::CINEPAK => AV::CINEPAK,
1368 Id::WS_VQA => AV::WS_VQA,
1369 Id::MSRLE => AV::MSRLE,
1370 Id::MSVIDEO1 => AV::MSVIDEO1,
1371 Id::IDCIN => AV::IDCIN,
1372 Id::BPS8 => AV::_8BPS,
1373 Id::SMC => AV::SMC,
1374 Id::FLIC => AV::FLIC,
1375 Id::TRUEMOTION1 => AV::TRUEMOTION1,
1376 Id::VMDVIDEO => AV::VMDVIDEO,
1377 Id::MSZH => AV::MSZH,
1378 Id::ZLIB => AV::ZLIB,
1379 Id::QTRLE => AV::QTRLE,
1380 Id::TSCC => AV::TSCC,
1381 Id::ULTI => AV::ULTI,
1382 Id::QDRAW => AV::QDRAW,
1383 Id::VIXL => AV::VIXL,
1384 Id::QPEG => AV::QPEG,
1385 Id::PNG => AV::PNG,
1386 Id::PPM => AV::PPM,
1387 Id::PBM => AV::PBM,
1388 Id::PGM => AV::PGM,
1389 Id::PGMYUV => AV::PGMYUV,
1390 Id::PAM => AV::PAM,
1391 Id::FFVHUFF => AV::FFVHUFF,
1392 Id::RV30 => AV::RV30,
1393 Id::RV40 => AV::RV40,
1394 Id::VC1 => AV::VC1,
1395 Id::WMV3 => AV::WMV3,
1396 Id::LOCO => AV::LOCO,
1397 Id::WNV1 => AV::WNV1,
1398 Id::AASC => AV::AASC,
1399 Id::INDEO2 => AV::INDEO2,
1400 Id::FRAPS => AV::FRAPS,
1401 Id::TRUEMOTION2 => AV::TRUEMOTION2,
1402 Id::BMP => AV::BMP,
1403 Id::CSCD => AV::CSCD,
1404 Id::MMVIDEO => AV::MMVIDEO,
1405 Id::ZMBV => AV::ZMBV,
1406 Id::AVS => AV::AVS,
1407 Id::SMACKVIDEO => AV::SMACKVIDEO,
1408 Id::NUV => AV::NUV,
1409 Id::KMVC => AV::KMVC,
1410 Id::FLASHSV => AV::FLASHSV,
1411 Id::CAVS => AV::CAVS,
1412 Id::JPEG2000 => AV::JPEG2000,
1413 Id::VMNC => AV::VMNC,
1414 Id::VP5 => AV::VP5,
1415 Id::VP6 => AV::VP6,
1416 Id::VP6F => AV::VP6F,
1417 Id::TARGA => AV::TARGA,
1418 Id::DSICINVIDEO => AV::DSICINVIDEO,
1419 Id::TIERTEXSEQVIDEO => AV::TIERTEXSEQVIDEO,
1420 Id::TIFF => AV::TIFF,
1421 Id::GIF => AV::GIF,
1422 Id::DXA => AV::DXA,
1423 Id::DNXHD => AV::DNXHD,
1424 Id::THP => AV::THP,
1425 Id::SGI => AV::SGI,
1426 Id::C93 => AV::C93,
1427 Id::BETHSOFTVID => AV::BETHSOFTVID,
1428 Id::PTX => AV::PTX,
1429 Id::TXD => AV::TXD,
1430 Id::VP6A => AV::VP6A,
1431 Id::AMV => AV::AMV,
1432 Id::VB => AV::VB,
1433 Id::PCX => AV::PCX,
1434 Id::SUNRAST => AV::SUNRAST,
1435 Id::INDEO4 => AV::INDEO4,
1436 Id::INDEO5 => AV::INDEO5,
1437 Id::MIMIC => AV::MIMIC,
1438 Id::RL2 => AV::RL2,
1439 Id::ESCAPE124 => AV::ESCAPE124,
1440 Id::DIRAC => AV::DIRAC,
1441 Id::BFI => AV::BFI,
1442 Id::CMV => AV::CMV,
1443 Id::MOTIONPIXELS => AV::MOTIONPIXELS,
1444 Id::TGV => AV::TGV,
1445 Id::TGQ => AV::TGQ,
1446 Id::TQI => AV::TQI,
1447 Id::AURA => AV::AURA,
1448 Id::AURA2 => AV::AURA2,
1449 Id::V210X => AV::V210X,
1450 Id::TMV => AV::TMV,
1451 Id::V210 => AV::V210,
1452 Id::DPX => AV::DPX,
1453 Id::MAD => AV::MAD,
1454 Id::FRWU => AV::FRWU,
1455 Id::FLASHSV2 => AV::FLASHSV2,
1456 Id::CDGRAPHICS => AV::CDGRAPHICS,
1457 Id::R210 => AV::R210,
1458 Id::ANM => AV::ANM,
1459 Id::BINKVIDEO => AV::BINKVIDEO,
1460 Id::IFF_ILBM => AV::IFF_ILBM,
1461 Id::IFF_BYTERUN1 => AV::IFF_ILBM,
1462 Id::KGV1 => AV::KGV1,
1463 Id::YOP => AV::YOP,
1464 Id::VP8 => AV::VP8,
1465 Id::PICTOR => AV::PICTOR,
1466 Id::ANSI => AV::ANSI,
1467 Id::A64_MULTI => AV::A64_MULTI,
1468 Id::A64_MULTI5 => AV::A64_MULTI5,
1469 Id::R10K => AV::R10K,
1470 Id::MXPEG => AV::MXPEG,
1471 Id::LAGARITH => AV::LAGARITH,
1472 Id::PRORES => AV::PRORES,
1473 Id::JV => AV::JV,
1474 Id::DFA => AV::DFA,
1475 Id::WMV3IMAGE => AV::WMV3IMAGE,
1476 Id::VC1IMAGE => AV::VC1IMAGE,
1477 Id::UTVIDEO => AV::UTVIDEO,
1478 Id::BMV_VIDEO => AV::BMV_VIDEO,
1479 Id::VBLE => AV::VBLE,
1480 Id::DXTORY => AV::DXTORY,
1481 #[cfg(not(feature = "ffmpeg_9_0"))]
1482 Id::V410 => AV::V410,
1483 Id::XWD => AV::XWD,
1484 Id::CDXL => AV::CDXL,
1485 Id::XBM => AV::XBM,
1486 Id::ZEROCODEC => AV::ZEROCODEC,
1487 Id::MSS1 => AV::MSS1,
1488 Id::MSA1 => AV::MSA1,
1489 Id::TSCC2 => AV::TSCC2,
1490 Id::MTS2 => AV::MTS2,
1491 Id::CLLC => AV::CLLC,
1492 Id::MSS2 => AV::MSS2,
1493 Id::VP9 => AV::VP9,
1494 Id::AIC => AV::AIC,
1495 Id::ESCAPE130 => AV::ESCAPE130,
1496 Id::G2M => AV::G2M,
1497 Id::WEBP => AV::WEBP,
1498 Id::HNM4_VIDEO => AV::HNM4_VIDEO,
1499 Id::HEVC => AV::HEVC,
1500 Id::H265 => AV::HEVC,
1501 Id::FIC => AV::FIC,
1502 Id::ALIAS_PIX => AV::ALIAS_PIX,
1503 Id::BRENDER_PIX => AV::BRENDER_PIX,
1504 Id::PAF_VIDEO => AV::PAF_VIDEO,
1505 Id::EXR => AV::EXR,
1506 Id::VP7 => AV::VP7,
1507 Id::SANM => AV::SANM,
1508 Id::SGIRLE => AV::SGIRLE,
1509 Id::MVC1 => AV::MVC1,
1510 Id::MVC2 => AV::MVC2,
1511 Id::HQX => AV::HQX,
1512 Id::TDSC => AV::TDSC,
1513 Id::HQ_HQA => AV::HQ_HQA,
1514 Id::HAP => AV::HAP,
1515 Id::DDS => AV::DDS,
1516 Id::DXV => AV::DXV,
1517 Id::SCREENPRESSO => AV::SCREENPRESSO,
1518 Id::RSCC => AV::RSCC,
1519
1520 Id::Y41P => AV::Y41P,
1521 Id::AVRP => AV::AVRP,
1522 Id::V012 => AV::_012V,
1523 Id::AVUI => AV::AVUI,
1524 #[cfg(not(feature = "ffmpeg_7_0"))]
1525 Id::AYUV => AV::AYUV,
1526 Id::TARGA_Y216 => AV::TARGA_Y216,
1527 #[cfg(not(feature = "ffmpeg_9_0"))]
1528 Id::V308 => AV::V308,
1529 #[cfg(not(feature = "ffmpeg_9_0"))]
1530 Id::V408 => AV::V408,
1531 Id::YUV4 => AV::YUV4,
1532 Id::AVRN => AV::AVRN,
1533 Id::CPIA => AV::CPIA,
1534 Id::XFACE => AV::XFACE,
1535 Id::SNOW => AV::SNOW,
1536 Id::SMVJPEG => AV::SMVJPEG,
1537 Id::APNG => AV::APNG,
1538 Id::DAALA => AV::DAALA,
1539 Id::CFHD => AV::CFHD,
1540 Id::TRUEMOTION2RT => AV::TRUEMOTION2RT,
1541 Id::M101 => AV::M101,
1542 Id::MAGICYUV => AV::MAGICYUV,
1543 Id::SHEERVIDEO => AV::SHEERVIDEO,
1544 Id::YLC => AV::YLC,
1545
1546 Id::PCM_S16LE => AV::PCM_S16LE,
1548 Id::PCM_S16BE => AV::PCM_S16BE,
1549 Id::PCM_U16LE => AV::PCM_U16LE,
1550 Id::PCM_U16BE => AV::PCM_U16BE,
1551 Id::PCM_S8 => AV::PCM_S8,
1552 Id::PCM_U8 => AV::PCM_U8,
1553 Id::PCM_MULAW => AV::PCM_MULAW,
1554 Id::PCM_ALAW => AV::PCM_ALAW,
1555 Id::PCM_S32LE => AV::PCM_S32LE,
1556 Id::PCM_S32BE => AV::PCM_S32BE,
1557 Id::PCM_U32LE => AV::PCM_U32LE,
1558 Id::PCM_U32BE => AV::PCM_U32BE,
1559 Id::PCM_S24LE => AV::PCM_S24LE,
1560 Id::PCM_S24BE => AV::PCM_S24BE,
1561 Id::PCM_U24LE => AV::PCM_U24LE,
1562 Id::PCM_U24BE => AV::PCM_U24BE,
1563 Id::PCM_S24DAUD => AV::PCM_S24DAUD,
1564 Id::PCM_ZORK => AV::PCM_ZORK,
1565 Id::PCM_S16LE_PLANAR => AV::PCM_S16LE_PLANAR,
1566 Id::PCM_DVD => AV::PCM_DVD,
1567 Id::PCM_F32BE => AV::PCM_F32BE,
1568 Id::PCM_F32LE => AV::PCM_F32LE,
1569 Id::PCM_F64BE => AV::PCM_F64BE,
1570 Id::PCM_F64LE => AV::PCM_F64LE,
1571 Id::PCM_BLURAY => AV::PCM_BLURAY,
1572 Id::PCM_LXF => AV::PCM_LXF,
1573 Id::S302M => AV::S302M,
1574 Id::PCM_S8_PLANAR => AV::PCM_S8_PLANAR,
1575 Id::PCM_S24LE_PLANAR => AV::PCM_S24LE_PLANAR,
1576 Id::PCM_S32LE_PLANAR => AV::PCM_S32LE_PLANAR,
1577 Id::PCM_S16BE_PLANAR => AV::PCM_S16BE_PLANAR,
1578
1579 Id::PCM_S64LE => AV::PCM_S64LE,
1580 Id::PCM_S64BE => AV::PCM_S64BE,
1581
1582 Id::ADPCM_IMA_QT => AV::ADPCM_IMA_QT,
1584 Id::ADPCM_IMA_WAV => AV::ADPCM_IMA_WAV,
1585 Id::ADPCM_IMA_DK3 => AV::ADPCM_IMA_DK3,
1586 Id::ADPCM_IMA_DK4 => AV::ADPCM_IMA_DK4,
1587 Id::ADPCM_IMA_WS => AV::ADPCM_IMA_WS,
1588 Id::ADPCM_IMA_SMJPEG => AV::ADPCM_IMA_SMJPEG,
1589 Id::ADPCM_MS => AV::ADPCM_MS,
1590 Id::ADPCM_4XM => AV::ADPCM_4XM,
1591 Id::ADPCM_XA => AV::ADPCM_XA,
1592 Id::ADPCM_ADX => AV::ADPCM_ADX,
1593 Id::ADPCM_EA => AV::ADPCM_EA,
1594 Id::ADPCM_G726 => AV::ADPCM_G726,
1595 Id::ADPCM_CT => AV::ADPCM_CT,
1596 Id::ADPCM_SWF => AV::ADPCM_SWF,
1597 Id::ADPCM_YAMAHA => AV::ADPCM_YAMAHA,
1598 Id::ADPCM_SBPRO_4 => AV::ADPCM_SBPRO_4,
1599 Id::ADPCM_SBPRO_3 => AV::ADPCM_SBPRO_3,
1600 Id::ADPCM_SBPRO_2 => AV::ADPCM_SBPRO_2,
1601 Id::ADPCM_THP => AV::ADPCM_THP,
1602 Id::ADPCM_IMA_AMV => AV::ADPCM_IMA_AMV,
1603 Id::ADPCM_EA_R1 => AV::ADPCM_EA_R1,
1604 Id::ADPCM_EA_R3 => AV::ADPCM_EA_R3,
1605 Id::ADPCM_EA_R2 => AV::ADPCM_EA_R2,
1606 Id::ADPCM_IMA_EA_SEAD => AV::ADPCM_IMA_EA_SEAD,
1607 Id::ADPCM_IMA_EA_EACS => AV::ADPCM_IMA_EA_EACS,
1608 Id::ADPCM_EA_XAS => AV::ADPCM_EA_XAS,
1609 Id::ADPCM_EA_MAXIS_XA => AV::ADPCM_EA_MAXIS_XA,
1610 Id::ADPCM_IMA_ISS => AV::ADPCM_IMA_ISS,
1611 Id::ADPCM_G722 => AV::ADPCM_G722,
1612 Id::ADPCM_IMA_APC => AV::ADPCM_IMA_APC,
1613 Id::ADPCM_VIMA => AV::ADPCM_VIMA,
1614
1615 Id::ADPCM_AFC => AV::ADPCM_AFC,
1616 Id::ADPCM_IMA_OKI => AV::ADPCM_IMA_OKI,
1617 Id::ADPCM_DTK => AV::ADPCM_DTK,
1618 Id::ADPCM_IMA_RAD => AV::ADPCM_IMA_RAD,
1619 Id::ADPCM_G726LE => AV::ADPCM_G726LE,
1620 Id::ADPCM_THP_LE => AV::ADPCM_THP_LE,
1621 Id::ADPCM_PSX => AV::ADPCM_PSX,
1622 Id::ADPCM_AICA => AV::ADPCM_AICA,
1623 Id::ADPCM_IMA_DAT4 => AV::ADPCM_IMA_DAT4,
1624 Id::ADPCM_MTAF => AV::ADPCM_MTAF,
1625
1626 Id::AMR_NB => AV::AMR_NB,
1628 Id::AMR_WB => AV::AMR_WB,
1629
1630 Id::RA_144 => AV::RA_144,
1632 Id::RA_288 => AV::RA_288,
1633
1634 Id::ROQ_DPCM => AV::ROQ_DPCM,
1636 Id::INTERPLAY_DPCM => AV::INTERPLAY_DPCM,
1637 Id::XAN_DPCM => AV::XAN_DPCM,
1638 Id::SOL_DPCM => AV::SOL_DPCM,
1639
1640 Id::SDX2_DPCM => AV::SDX2_DPCM,
1641
1642 Id::MP2 => AV::MP2,
1644 Id::MP3 => AV::MP3,
1645 Id::AAC => AV::AAC,
1646 Id::AC3 => AV::AC3,
1647 Id::DTS => AV::DTS,
1648 Id::VORBIS => AV::VORBIS,
1649 Id::DVAUDIO => AV::DVAUDIO,
1650 Id::WMAV1 => AV::WMAV1,
1651 Id::WMAV2 => AV::WMAV2,
1652 Id::MACE3 => AV::MACE3,
1653 Id::MACE6 => AV::MACE6,
1654 Id::VMDAUDIO => AV::VMDAUDIO,
1655 Id::FLAC => AV::FLAC,
1656 Id::MP3ADU => AV::MP3ADU,
1657 Id::MP3ON4 => AV::MP3ON4,
1658 Id::SHORTEN => AV::SHORTEN,
1659 Id::ALAC => AV::ALAC,
1660 Id::WESTWOOD_SND1 => AV::WESTWOOD_SND1,
1661 Id::GSM => AV::GSM,
1662 Id::QDM2 => AV::QDM2,
1663 Id::COOK => AV::COOK,
1664 Id::TRUESPEECH => AV::TRUESPEECH,
1665 Id::TTA => AV::TTA,
1666 Id::SMACKAUDIO => AV::SMACKAUDIO,
1667 Id::QCELP => AV::QCELP,
1668 Id::WAVPACK => AV::WAVPACK,
1669 Id::DSICINAUDIO => AV::DSICINAUDIO,
1670 Id::IMC => AV::IMC,
1671 Id::MUSEPACK7 => AV::MUSEPACK7,
1672 Id::MLP => AV::MLP,
1673 Id::GSM_MS => AV::GSM_MS,
1674 Id::ATRAC3 => AV::ATRAC3,
1675 Id::APE => AV::APE,
1676 Id::NELLYMOSER => AV::NELLYMOSER,
1677 Id::MUSEPACK8 => AV::MUSEPACK8,
1678 Id::SPEEX => AV::SPEEX,
1679 Id::WMAVOICE => AV::WMAVOICE,
1680 Id::WMAPRO => AV::WMAPRO,
1681 Id::WMALOSSLESS => AV::WMALOSSLESS,
1682 Id::ATRAC3P => AV::ATRAC3P,
1683 Id::EAC3 => AV::EAC3,
1684 Id::SIPR => AV::SIPR,
1685 Id::MP1 => AV::MP1,
1686 Id::TWINVQ => AV::TWINVQ,
1687 Id::TRUEHD => AV::TRUEHD,
1688 Id::MP4ALS => AV::MP4ALS,
1689 Id::ATRAC1 => AV::ATRAC1,
1690 Id::BINKAUDIO_RDFT => AV::BINKAUDIO_RDFT,
1691 Id::BINKAUDIO_DCT => AV::BINKAUDIO_DCT,
1692 Id::AAC_LATM => AV::AAC_LATM,
1693 Id::QDMC => AV::QDMC,
1694 Id::CELT => AV::CELT,
1695 Id::G723_1 => AV::G723_1,
1696 Id::G729 => AV::G729,
1697 Id::SVX_EXP8 => AV::_8SVX_EXP,
1698 Id::SVX_FIB8 => AV::_8SVX_FIB,
1699 Id::BMV_AUDIO => AV::BMV_AUDIO,
1700 Id::RALF => AV::RALF,
1701 Id::IAC => AV::IAC,
1702 Id::ILBC => AV::ILBC,
1703 Id::OPUS => AV::OPUS,
1704 Id::COMFORT_NOISE => AV::COMFORT_NOISE,
1705 Id::TAK => AV::TAK,
1706 Id::METASOUND => AV::METASOUND,
1707 Id::PAF_AUDIO => AV::PAF_AUDIO,
1708 Id::ON2AVC => AV::ON2AVC,
1709 Id::DSS_SP => AV::DSS_SP,
1710
1711 Id::CODEC2 => AV::CODEC2,
1712 Id::FFWAVESYNTH => AV::FFWAVESYNTH,
1713 Id::SONIC => AV::SONIC,
1714 Id::SONIC_LS => AV::SONIC_LS,
1715 Id::EVRC => AV::EVRC,
1716 Id::SMV => AV::SMV,
1717 Id::DSD_LSBF => AV::DSD_LSBF,
1718 Id::DSD_MSBF => AV::DSD_MSBF,
1719 Id::DSD_LSBF_PLANAR => AV::DSD_LSBF_PLANAR,
1720 Id::DSD_MSBF_PLANAR => AV::DSD_MSBF_PLANAR,
1721 Id::_4GV => AV::_4GV,
1722 Id::INTERPLAY_ACM => AV::INTERPLAY_ACM,
1723 Id::XMA1 => AV::XMA1,
1724 Id::XMA2 => AV::XMA2,
1725 Id::DST => AV::DST,
1726
1727 Id::DVD_SUBTITLE => AV::DVD_SUBTITLE,
1729 Id::DVB_SUBTITLE => AV::DVB_SUBTITLE,
1730 Id::TEXT => AV::TEXT,
1731 Id::XSUB => AV::XSUB,
1732 Id::SSA => AV::SSA,
1733 Id::MOV_TEXT => AV::MOV_TEXT,
1734 Id::HDMV_PGS_SUBTITLE => AV::HDMV_PGS_SUBTITLE,
1735 Id::DVB_TELETEXT => AV::DVB_TELETEXT,
1736 Id::SRT => AV::SRT,
1737
1738 Id::MICRODVD => AV::MICRODVD,
1739 Id::EIA_608 => AV::EIA_608,
1740 Id::JACOSUB => AV::JACOSUB,
1741 Id::SAMI => AV::SAMI,
1742 Id::REALTEXT => AV::REALTEXT,
1743 Id::STL => AV::STL,
1744 Id::SUBVIEWER1 => AV::SUBVIEWER1,
1745 Id::SUBVIEWER => AV::SUBVIEWER,
1746 Id::SUBRIP => AV::SUBRIP,
1747 Id::WEBVTT => AV::WEBVTT,
1748 Id::MPL2 => AV::MPL2,
1749 Id::VPLAYER => AV::VPLAYER,
1750 Id::PJS => AV::PJS,
1751 Id::ASS => AV::ASS,
1752 Id::HDMV_TEXT_SUBTITLE => AV::HDMV_TEXT_SUBTITLE,
1753
1754 Id::TTF => AV::TTF,
1756
1757 Id::SCTE_35 => AV::SCTE_35,
1758 Id::BINTEXT => AV::BINTEXT,
1759 Id::XBIN => AV::XBIN,
1760 Id::IDF => AV::IDF,
1761 Id::OTF => AV::OTF,
1762 Id::SMPTE_KLV => AV::SMPTE_KLV,
1763 Id::DVD_NAV => AV::DVD_NAV,
1764 Id::TIMED_ID3 => AV::TIMED_ID3,
1765 Id::BIN_DATA => AV::BIN_DATA,
1766
1767 Id::PROBE => AV::PROBE,
1768
1769 Id::MPEG2TS => AV::MPEG2TS,
1770 Id::MPEG4SYSTEMS => AV::MPEG4SYSTEMS,
1771 Id::FFMETADATA => AV::FFMETADATA,
1772 Id::WRAPPED_AVFRAME => AV::WRAPPED_AVFRAME,
1773
1774 Id::PSD => AV::PSD,
1775 Id::PIXLET => AV::PIXLET,
1776 Id::SPEEDHQ => AV::SPEEDHQ,
1777 Id::FMVC => AV::FMVC,
1778 Id::CLEARVIDEO => AV::CLEARVIDEO,
1779 Id::SCPR => AV::SCPR,
1780 Id::XPM => AV::XPM,
1781 Id::AV1 => AV::AV1,
1782 Id::PCM_F16LE => AV::PCM_F16LE,
1783 Id::PCM_F24LE => AV::PCM_F24LE,
1784 Id::ATRAC3AL => AV::ATRAC3AL,
1785 Id::ATRAC3PAL => AV::ATRAC3PAL,
1786
1787 Id::BITPACKED => AV::BITPACKED,
1788 Id::MSCC => AV::MSCC,
1789 Id::SRGC => AV::SRGC,
1790 Id::SVG => AV::SVG,
1791 Id::GDV => AV::GDV,
1792 Id::FITS => AV::FITS,
1793 Id::GREMLIN_DPCM => AV::GREMLIN_DPCM,
1794 Id::DOLBY_E => AV::DOLBY_E,
1795
1796 Id::APTX => AV::APTX,
1797 Id::APTX_HD => AV::APTX_HD,
1798 Id::SBC => AV::SBC,
1799
1800 Id::AVS2 => AV::AVS2,
1801 Id::IMM4 => AV::IMM4,
1802 Id::PROSUMER => AV::PROSUMER,
1803 Id::MWSC => AV::MWSC,
1804 Id::WCMV => AV::WCMV,
1805 Id::RASC => AV::RASC,
1806 Id::PCM_VIDC => AV::PCM_VIDC,
1807 Id::ATRAC9 => AV::ATRAC9,
1808 Id::TTML => AV::TTML,
1809
1810 Id::HYMT => AV::HYMT,
1811 Id::ARBC => AV::ARBC,
1812 Id::AGM => AV::AGM,
1813 Id::LSCR => AV::LSCR,
1814 Id::VP4 => AV::VP4,
1815 Id::ADPCM_AGM => AV::ADPCM_AGM,
1816 Id::HCOM => AV::HCOM,
1817 Id::ARIB_CAPTION => AV::ARIB_CAPTION,
1818
1819 Id::IMM5 => AV::IMM5,
1820 Id::MVDV => AV::MVDV,
1821 Id::MVHA => AV::MVHA,
1822 Id::CDTOONS => AV::CDTOONS,
1823 Id::MV30 => AV::MV30,
1824 Id::NOTCHLC => AV::NOTCHLC,
1825 Id::PFM => AV::PFM,
1826 Id::ADPCM_ARGO => AV::ADPCM_ARGO,
1827 Id::ADPCM_IMA_SSI => AV::ADPCM_IMA_SSI,
1828 Id::ADPCM_ZORK => AV::ADPCM_ZORK,
1829 Id::ADPCM_IMA_APM => AV::ADPCM_IMA_APM,
1830 Id::ADPCM_IMA_ALP => AV::ADPCM_IMA_ALP,
1831 Id::ADPCM_IMA_MTF => AV::ADPCM_IMA_MTF,
1832 Id::ADPCM_IMA_CUNNING => AV::ADPCM_IMA_CUNNING,
1833 Id::DERF_DPCM => AV::DERF_DPCM,
1834 Id::ACELP_KELVIN => AV::ACELP_KELVIN,
1835 Id::MPEGH_3D_AUDIO => AV::MPEGH_3D_AUDIO,
1836 Id::SIREN => AV::SIREN,
1837 Id::HCA => AV::HCA,
1838 Id::EPG => AV::EPG,
1839
1840 Id::PGX => AV::PGX,
1841 Id::AVS3 => AV::AVS3,
1842 Id::MSP2 => AV::MSP2,
1843 Id::VVC => AV::VVC,
1844 Id::MOBICLIP => AV::MOBICLIP,
1845 Id::PHOTOCD => AV::PHOTOCD,
1846 Id::IPU => AV::IPU,
1847 Id::ARGO => AV::ARGO,
1848 Id::CRI => AV::CRI,
1849 Id::SIMBIOSIS_IMX => AV::SIMBIOSIS_IMX,
1850 Id::SGA_VIDEO => AV::SGA_VIDEO,
1851 Id::PCM_SGA => AV::PCM_SGA,
1852 Id::ADPCM_IMA_MOFLEX => AV::ADPCM_IMA_MOFLEX,
1853 Id::FASTAUDIO => AV::FASTAUDIO,
1854
1855 Id::GEM => AV::GEM,
1856 Id::ADPCM_IMA_ACORN => AV::ADPCM_IMA_ACORN,
1857 Id::MSNSIREN => AV::MSNSIREN,
1858
1859 Id::VBN => AV::VBN,
1860 Id::JPEGXL => AV::JPEGXL,
1861 Id::QOI => AV::QOI,
1862 Id::PHM => AV::PHM,
1863 Id::DFPWM => AV::DFPWM,
1864
1865 #[cfg(feature = "ffmpeg_6_0")]
1866 Id::RADIANCE_HDR => AV::RADIANCE_HDR,
1867 #[cfg(feature = "ffmpeg_6_0")]
1868 Id::WBMP => AV::WBMP,
1869 #[cfg(feature = "ffmpeg_6_0")]
1870 Id::MEDIA100 => AV::MEDIA100,
1871 #[cfg(feature = "ffmpeg_6_0")]
1872 Id::VQC => AV::VQC,
1873 #[cfg(feature = "ffmpeg_6_0")]
1874 Id::ADPCM_XMD => AV::ADPCM_XMD,
1875 #[cfg(feature = "ffmpeg_6_0")]
1876 Id::WADY_DPCM => AV::WADY_DPCM,
1877 #[cfg(feature = "ffmpeg_6_0")]
1878 Id::CBD2_DPCM => AV::CBD2_DPCM,
1879 #[cfg(feature = "ffmpeg_6_0")]
1880 Id::BONK => AV::BONK,
1881 #[cfg(feature = "ffmpeg_6_0")]
1882 Id::MISC4 => AV::MISC4,
1883 #[cfg(feature = "ffmpeg_6_0")]
1884 Id::APAC => AV::APAC,
1885 #[cfg(feature = "ffmpeg_6_0")]
1886 Id::FTR => AV::FTR,
1887 #[cfg(feature = "ffmpeg_6_0")]
1888 Id::WAVARC => AV::WAVARC,
1889 #[cfg(feature = "ffmpeg_6_0")]
1890 Id::RKA => AV::RKA,
1891 #[cfg(feature = "ffmpeg_6_0")]
1892 Id::VNULL => AV::VNULL,
1893 #[cfg(feature = "ffmpeg_6_0")]
1894 Id::ANULL => AV::ANULL,
1895 #[cfg(feature = "ffmpeg_6_1")]
1896 Id::PDV => AV::PDV,
1897 #[cfg(feature = "ffmpeg_6_1")]
1898 Id::EVC => AV::EVC,
1899 #[cfg(feature = "ffmpeg_6_1")]
1900 Id::RTV1 => AV::RTV1,
1901 #[cfg(feature = "ffmpeg_6_1")]
1902 Id::VMIX => AV::VMIX,
1903 #[cfg(feature = "ffmpeg_7_0")]
1904 Id::LEAD => AV::LEAD,
1905 #[cfg(feature = "ffmpeg_6_1")]
1906 Id::AC4 => AV::AC4,
1907 #[cfg(feature = "ffmpeg_6_1")]
1908 Id::OSQ => AV::OSQ,
1909 #[cfg(feature = "ffmpeg_7_0")]
1910 Id::QOA => AV::QOA,
1911 #[cfg(feature = "ffmpeg_7_1")]
1912 Id::LC3 => AV::LC3,
1913 #[cfg(feature = "ffmpeg_6_1")]
1914 Id::SMPTE_2038 => AV::SMPTE_2038,
1915 #[cfg(feature = "ffmpeg_7_1")]
1916 Id::LCEVC => AV::LCEVC,
1917
1918 #[cfg(feature = "ffmpeg_8_0")]
1919 Id::DNXUC => AV::DNXUC,
1920 #[cfg(feature = "ffmpeg_8_0")]
1921 Id::RV60 => AV::RV60,
1922 #[cfg(feature = "ffmpeg_8_0")]
1923 Id::JPEGXL_ANIM => AV::JPEGXL_ANIM,
1924 #[cfg(feature = "ffmpeg_8_0")]
1925 Id::APV => AV::APV,
1926 #[cfg(feature = "ffmpeg_8_0")]
1927 Id::PRORES_RAW => AV::PRORES_RAW,
1928 #[cfg(feature = "ffmpeg_8_0")]
1929 Id::ADPCM_IMA_XBOX => AV::ADPCM_IMA_XBOX,
1930 #[cfg(feature = "ffmpeg_8_0")]
1931 Id::ADPCM_SANYO => AV::ADPCM_SANYO,
1932 #[cfg(feature = "ffmpeg_8_0")]
1933 Id::G728 => AV::G728,
1934 #[cfg(feature = "ffmpeg_8_0")]
1935 Id::IVTV_VBI => AV::IVTV_VBI,
1936 #[cfg(feature = "ffmpeg_8_0")]
1937 Id::SMPTE_436M_ANC => AV::SMPTE_436M_ANC,
1938
1939 #[cfg(feature = "ffmpeg_8_1")]
1940 Id::JPEGXS => AV::JPEGXS,
1941 #[cfg(feature = "ffmpeg_8_1")]
1942 Id::ADPCM_IMA_HVQM4 => AV::ADPCM_IMA_HVQM4,
1943 #[cfg(feature = "ffmpeg_8_1")]
1944 Id::ADPCM_IMA_PDA => AV::ADPCM_IMA_PDA,
1945 #[cfg(feature = "ffmpeg_8_1")]
1946 Id::ADPCM_N64 => AV::ADPCM_N64,
1947 #[cfg(feature = "ffmpeg_8_1")]
1948 Id::ADPCM_IMA_HVQM2 => AV::ADPCM_IMA_HVQM2,
1949 #[cfg(feature = "ffmpeg_8_1")]
1950 Id::ADPCM_IMA_MAGIX => AV::ADPCM_IMA_MAGIX,
1951 #[cfg(feature = "ffmpeg_8_1")]
1952 Id::ADPCM_PSXC => AV::ADPCM_PSXC,
1953 #[cfg(feature = "ffmpeg_8_1")]
1954 Id::ADPCM_CIRCUS => AV::ADPCM_CIRCUS,
1955 #[cfg(feature = "ffmpeg_8_1")]
1956 Id::ADPCM_IMA_ESCAPE => AV::ADPCM_IMA_ESCAPE,
1957 #[cfg(feature = "ffmpeg_8_1")]
1958 Id::AHX => AV::AHX,
1959
1960 #[cfg(feature = "ffmpeg_9_0")]
1961 Id::WEBP_ANIM => AV::WEBP_ANIM,
1962 #[cfg(feature = "ffmpeg_9_0")]
1963 Id::APPLE_APAC => AV::APPLE_APAC,
1964 }
1965 }
1966}
1967
1968#[cfg(all(test, feature = "ffmpeg_9_0"))]
1969mod tests {
1970 use super::*;
1971
1972 #[test]
1973 fn ffmpeg_9_codec_ids_round_trip() {
1974 for id in [Id::WEBP_ANIM, Id::APPLE_APAC] {
1975 let raw: AVCodecID = id.into();
1976 assert_eq!(Id::from(raw), id);
1977 }
1978 }
1979}