1/* 2 * This file is part of FFmpeg. 3 * 4 * FFmpeg is free software; you can redistribute it and/or 5 * modify it under the terms of the GNU Lesser General Public 6 * License as published by the Free Software Foundation; either 7 * version 2.1 of the License, or (at your option) any later version. 8 * 9 * FFmpeg is distributed in the hope that it will be useful, 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12 * Lesser General Public License for more details. 13 * 14 * You should have received a copy of the GNU Lesser General Public 15 * License along with FFmpeg; if not, write to the Free Software 16 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 17 */ 18 19#include <stdint.h> 20 21#include "avcodec.h" 22 23extern const AVCodecParser ff_aac_parser; 24extern const AVCodecParser ff_aac_latm_parser; 25extern const AVCodecParser ff_ac3_parser; 26extern const AVCodecParser ff_adx_parser; 27extern const AVCodecParser ff_amr_parser; 28extern const AVCodecParser ff_av1_parser; 29extern const AVCodecParser ff_avs2_parser; 30extern const AVCodecParser ff_avs3_parser; 31extern const AVCodecParser ff_av3a_parser; 32extern const AVCodecParser ff_bmp_parser; 33extern const AVCodecParser ff_cavsvideo_parser; 34extern const AVCodecParser ff_cook_parser; 35extern const AVCodecParser ff_cri_parser; 36extern const AVCodecParser ff_dca_parser; 37extern const AVCodecParser ff_dirac_parser; 38extern const AVCodecParser ff_dnxhd_parser; 39extern const AVCodecParser ff_dolby_e_parser; 40extern const AVCodecParser ff_dpx_parser; 41extern const AVCodecParser ff_dvaudio_parser; 42extern const AVCodecParser ff_dvbsub_parser; 43extern const AVCodecParser ff_dvdsub_parser; 44extern const AVCodecParser ff_dvd_nav_parser; 45extern const AVCodecParser ff_flac_parser; 46extern const AVCodecParser ff_g723_1_parser; 47extern const AVCodecParser ff_g729_parser; 48extern const AVCodecParser ff_gif_parser; 49extern const AVCodecParser ff_gsm_parser; 50extern const AVCodecParser ff_h261_parser; 51extern const AVCodecParser ff_h263_parser; 52extern const AVCodecParser ff_h264_parser; 53extern const AVCodecParser ff_hevc_parser; 54extern const AVCodecParser ff_ipu_parser; 55extern const AVCodecParser ff_jpeg2000_parser; 56extern const AVCodecParser ff_mjpeg_parser; 57extern const AVCodecParser ff_mlp_parser; 58extern const AVCodecParser ff_mpeg4video_parser; 59extern const AVCodecParser ff_mpegaudio_parser; 60extern const AVCodecParser ff_mpegvideo_parser; 61extern const AVCodecParser ff_opus_parser; 62extern const AVCodecParser ff_png_parser; 63extern const AVCodecParser ff_pnm_parser; 64extern const AVCodecParser ff_qoi_parser; 65extern const AVCodecParser ff_rv30_parser; 66extern const AVCodecParser ff_rv40_parser; 67extern const AVCodecParser ff_sbc_parser; 68extern const AVCodecParser ff_sipr_parser; 69extern const AVCodecParser ff_tak_parser; 70extern const AVCodecParser ff_vc1_parser; 71extern const AVCodecParser ff_vorbis_parser; 72extern const AVCodecParser ff_vp3_parser; 73extern const AVCodecParser ff_vp8_parser; 74extern const AVCodecParser ff_vp9_parser; 75extern const AVCodecParser ff_webp_parser; 76extern const AVCodecParser ff_xbm_parser; 77extern const AVCodecParser ff_xma_parser; 78 79#include "libavcodec/parser_list.c" 80 81const AVCodecParser *av_parser_iterate(void **opaque) 82{ 83 uintptr_t i = (uintptr_t)*opaque; 84 const AVCodecParser *p = parser_list[i]; 85 86 if (p) 87 *opaque = (void*)(i + 1); 88 89 return p; 90} 91