mirror of
https://github.com/mozilla/gecko-dev.git
synced 2025-01-06 00:10:25 +00:00
Bug 1823953 - Import libvorbis decoder integration into ffvpx. r=alwu,media-playback-reviewers DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D173457
This commit is contained in:
parent
3cc8cb3732
commit
e667d69127
@ -571,7 +571,7 @@
|
||||
#define CONFIG_LIBRSVG_DECODER 0
|
||||
#define CONFIG_LIBSPEEX_DECODER 0
|
||||
#define CONFIG_LIBUAVS3D_DECODER 0
|
||||
#define CONFIG_LIBVORBIS_DECODER 0
|
||||
#define CONFIG_LIBVORBIS_DECODER 1
|
||||
#define CONFIG_LIBVPX_VP8_DECODER 0
|
||||
#define CONFIG_LIBVPX_VP9_DECODER 0
|
||||
#define CONFIG_LIBZVBI_TELETEXT_DECODER 0
|
||||
|
@ -8,6 +8,7 @@
|
||||
#define CONFIG_CHOMP_BSF 0
|
||||
#define CONFIG_DUMP_EXTRADATA_BSF 0
|
||||
#define CONFIG_DCA_CORE_BSF 0
|
||||
#define CONFIG_DTS2PTS_BSF 0
|
||||
#define CONFIG_DV_ERROR_MARKER_BSF 0
|
||||
#define CONFIG_EAC3_CORE_BSF 0
|
||||
#define CONFIG_EXTRACT_EXTRADATA_BSF 0
|
||||
@ -19,6 +20,7 @@
|
||||
#define CONFIG_HEVC_METADATA_BSF 0
|
||||
#define CONFIG_HEVC_MP4TOANNEXB_BSF 0
|
||||
#define CONFIG_IMX_DUMP_HEADER_BSF 0
|
||||
#define CONFIG_MEDIA100_TO_MJPEGB_BSF 0
|
||||
#define CONFIG_MJPEG2JPEG_BSF 0
|
||||
#define CONFIG_MJPEGA_DUMP_HEADER_BSF 0
|
||||
#define CONFIG_MP3_HEADER_DECOMPRESS_BSF 0
|
||||
@ -162,6 +164,7 @@
|
||||
#define CONFIG_M101_DECODER 0
|
||||
#define CONFIG_MAGICYUV_DECODER 0
|
||||
#define CONFIG_MDEC_DECODER 0
|
||||
#define CONFIG_MEDIA100_DECODER 0
|
||||
#define CONFIG_MIMIC_DECODER 0
|
||||
#define CONFIG_MJPEG_DECODER 0
|
||||
#define CONFIG_MJPEGB_DECODER 0
|
||||
@ -211,6 +214,7 @@
|
||||
#define CONFIG_PGM_DECODER 0
|
||||
#define CONFIG_PGMYUV_DECODER 0
|
||||
#define CONFIG_PGX_DECODER 0
|
||||
#define CONFIG_PHM_DECODER 0
|
||||
#define CONFIG_PHOTOCD_DECODER 0
|
||||
#define CONFIG_PICTOR_DECODER 0
|
||||
#define CONFIG_PIXLET_DECODER 0
|
||||
@ -228,6 +232,7 @@
|
||||
#define CONFIG_R210_DECODER 0
|
||||
#define CONFIG_RASC_DECODER 0
|
||||
#define CONFIG_RAWVIDEO_DECODER 0
|
||||
#define CONFIG_RKA_DECODER 0
|
||||
#define CONFIG_RL2_DECODER 0
|
||||
#define CONFIG_ROQ_DECODER 0
|
||||
#define CONFIG_RPZA_DECODER 0
|
||||
@ -303,6 +308,8 @@
|
||||
#define CONFIG_VP9_RKMPP_DECODER 0
|
||||
#define CONFIG_VP9_V4L2M2M_DECODER 0
|
||||
#define CONFIG_VQA_DECODER 0
|
||||
#define CONFIG_VQC_DECODER 0
|
||||
#define CONFIG_WBMP_DECODER 0
|
||||
#define CONFIG_WEBP_DECODER 0
|
||||
#define CONFIG_WCMV_DECODER 0
|
||||
#define CONFIG_WRAPPED_AVFRAME_DECODER 0
|
||||
@ -337,6 +344,7 @@
|
||||
#define CONFIG_ALS_DECODER 0
|
||||
#define CONFIG_AMRNB_DECODER 0
|
||||
#define CONFIG_AMRWB_DECODER 0
|
||||
#define CONFIG_APAC_DECODER 0
|
||||
#define CONFIG_APE_DECODER 0
|
||||
#define CONFIG_APTX_DECODER 0
|
||||
#define CONFIG_APTX_HD_DECODER 0
|
||||
@ -349,6 +357,7 @@
|
||||
#define CONFIG_BINKAUDIO_DCT_DECODER 0
|
||||
#define CONFIG_BINKAUDIO_RDFT_DECODER 0
|
||||
#define CONFIG_BMV_AUDIO_DECODER 0
|
||||
#define CONFIG_BONK_DECODER 0
|
||||
#define CONFIG_COOK_DECODER 0
|
||||
#define CONFIG_DCA_DECODER 0
|
||||
#define CONFIG_DFPWM_DECODER 0
|
||||
@ -365,12 +374,14 @@
|
||||
#define CONFIG_FASTAUDIO_DECODER 0
|
||||
#define CONFIG_FFWAVESYNTH_DECODER 0
|
||||
#define CONFIG_FLAC_DECODER 1
|
||||
#define CONFIG_FTR_DECODER 0
|
||||
#define CONFIG_G723_1_DECODER 0
|
||||
#define CONFIG_G729_DECODER 0
|
||||
#define CONFIG_GSM_DECODER 0
|
||||
#define CONFIG_GSM_MS_DECODER 0
|
||||
#define CONFIG_HCA_DECODER 0
|
||||
#define CONFIG_HCOM_DECODER 0
|
||||
#define CONFIG_HDR_DECODER 0
|
||||
#define CONFIG_IAC_DECODER 0
|
||||
#define CONFIG_ILBC_DECODER 0
|
||||
#define CONFIG_IMC_DECODER 0
|
||||
@ -378,6 +389,7 @@
|
||||
#define CONFIG_MACE3_DECODER 0
|
||||
#define CONFIG_MACE6_DECODER 0
|
||||
#define CONFIG_METASOUND_DECODER 0
|
||||
#define CONFIG_MISC4_DECODER 0
|
||||
#define CONFIG_MLP_DECODER 0
|
||||
#define CONFIG_MP1_DECODER 0
|
||||
#define CONFIG_MP1FLOAT_DECODER 0
|
||||
@ -414,7 +426,8 @@
|
||||
#define CONFIG_TTA_DECODER 0
|
||||
#define CONFIG_TWINVQ_DECODER 0
|
||||
#define CONFIG_VMDAUDIO_DECODER 0
|
||||
#define CONFIG_VORBIS_DECODER 0
|
||||
#define CONFIG_VORBIS_DECODER 1
|
||||
#define CONFIG_WAVARC_DECODER 0
|
||||
#define CONFIG_WAVPACK_DECODER 0
|
||||
#define CONFIG_WMALOSSLESS_DECODER 0
|
||||
#define CONFIG_WMAPRO_DECODER 0
|
||||
@ -459,6 +472,7 @@
|
||||
#define CONFIG_PCM_U32BE_DECODER 0
|
||||
#define CONFIG_PCM_U32LE_DECODER 0
|
||||
#define CONFIG_PCM_VIDC_DECODER 0
|
||||
#define CONFIG_CBD2_DPCM_DECODER 0
|
||||
#define CONFIG_DERF_DPCM_DECODER 0
|
||||
#define CONFIG_GREMLIN_DPCM_DECODER 0
|
||||
#define CONFIG_INTERPLAY_DPCM_DECODER 0
|
||||
@ -466,6 +480,7 @@
|
||||
#define CONFIG_SDX2_DPCM_DECODER 0
|
||||
#define CONFIG_SOL_DPCM_DECODER 0
|
||||
#define CONFIG_XAN_DPCM_DECODER 0
|
||||
#define CONFIG_WADY_DPCM_DECODER 0
|
||||
#define CONFIG_ADPCM_4XM_DECODER 0
|
||||
#define CONFIG_ADPCM_ADX_DECODER 0
|
||||
#define CONFIG_ADPCM_AFC_DECODER 0
|
||||
@ -515,6 +530,7 @@
|
||||
#define CONFIG_ADPCM_THP_LE_DECODER 0
|
||||
#define CONFIG_ADPCM_VIMA_DECODER 0
|
||||
#define CONFIG_ADPCM_XA_DECODER 0
|
||||
#define CONFIG_ADPCM_XMD_DECODER 0
|
||||
#define CONFIG_ADPCM_YAMAHA_DECODER 0
|
||||
#define CONFIG_ADPCM_ZORK_DECODER 0
|
||||
#define CONFIG_SSA_DECODER 0
|
||||
@ -571,7 +587,7 @@
|
||||
#define CONFIG_LIBRSVG_DECODER 0
|
||||
#define CONFIG_LIBSPEEX_DECODER 0
|
||||
#define CONFIG_LIBUAVS3D_DECODER 0
|
||||
#define CONFIG_LIBVORBIS_DECODER 0
|
||||
#define CONFIG_LIBVORBIS_DECODER 1
|
||||
#define CONFIG_LIBVPX_VP8_DECODER 0
|
||||
#define CONFIG_LIBVPX_VP9_DECODER 0
|
||||
#define CONFIG_LIBZVBI_TELETEXT_DECODER 0
|
||||
@ -581,6 +597,7 @@
|
||||
#define CONFIG_LIBAOM_AV1_DECODER 0
|
||||
#define CONFIG_AV1_DECODER 1
|
||||
#define CONFIG_AV1_CUVID_DECODER 0
|
||||
#define CONFIG_AV1_MEDIACODEC_DECODER 0
|
||||
#define CONFIG_AV1_QSV_DECODER 0
|
||||
#define CONFIG_LIBOPENH264_DECODER 0
|
||||
#define CONFIG_H264_CUVID_DECODER 0
|
||||
@ -599,6 +616,8 @@
|
||||
#define CONFIG_VP9_CUVID_DECODER 0
|
||||
#define CONFIG_VP9_MEDIACODEC_DECODER 0
|
||||
#define CONFIG_VP9_QSV_DECODER 0
|
||||
#define CONFIG_VNULL_DECODER 0
|
||||
#define CONFIG_ANULL_DECODER 0
|
||||
#define CONFIG_A64MULTI_ENCODER 0
|
||||
#define CONFIG_A64MULTI5_ENCODER 0
|
||||
#define CONFIG_ALIAS_PIX_ENCODER 0
|
||||
@ -629,6 +648,7 @@
|
||||
#define CONFIG_H261_ENCODER 0
|
||||
#define CONFIG_H263_ENCODER 0
|
||||
#define CONFIG_H263P_ENCODER 0
|
||||
#define CONFIG_H264_MEDIACODEC_ENCODER 0
|
||||
#define CONFIG_HAP_ENCODER 0
|
||||
#define CONFIG_HUFFYUV_ENCODER 0
|
||||
#define CONFIG_JPEG2000_ENCODER 0
|
||||
@ -648,6 +668,7 @@
|
||||
#define CONFIG_PFM_ENCODER 0
|
||||
#define CONFIG_PGM_ENCODER 0
|
||||
#define CONFIG_PGMYUV_ENCODER 0
|
||||
#define CONFIG_PHM_ENCODER 0
|
||||
#define CONFIG_PNG_ENCODER 0
|
||||
#define CONFIG_PPM_ENCODER 0
|
||||
#define CONFIG_PRORES_ENCODER 0
|
||||
@ -678,6 +699,7 @@
|
||||
#define CONFIG_V410_ENCODER 0
|
||||
#define CONFIG_VBN_ENCODER 0
|
||||
#define CONFIG_VC2_ENCODER 0
|
||||
#define CONFIG_WBMP_ENCODER 0
|
||||
#define CONFIG_WRAPPED_AVFRAME_ENCODER 0
|
||||
#define CONFIG_WMV1_ENCODER 0
|
||||
#define CONFIG_WMV2_ENCODER 0
|
||||
@ -699,6 +721,7 @@
|
||||
#define CONFIG_EAC3_ENCODER 0
|
||||
#define CONFIG_FLAC_ENCODER 0
|
||||
#define CONFIG_G723_1_ENCODER 0
|
||||
#define CONFIG_HDR_ENCODER 0
|
||||
#define CONFIG_MLP_ENCODER 0
|
||||
#define CONFIG_MP2_ENCODER 0
|
||||
#define CONFIG_MP2FIXED_ENCODER 0
|
||||
@ -810,6 +833,9 @@
|
||||
#define CONFIG_AAC_MF_ENCODER 0
|
||||
#define CONFIG_AC3_MF_ENCODER 0
|
||||
#define CONFIG_H263_V4L2M2M_ENCODER 0
|
||||
#define CONFIG_AV1_NVENC_ENCODER 0
|
||||
#define CONFIG_AV1_QSV_ENCODER 0
|
||||
#define CONFIG_AV1_AMF_ENCODER 0
|
||||
#define CONFIG_LIBOPENH264_ENCODER 0
|
||||
#define CONFIG_H264_AMF_ENCODER 0
|
||||
#define CONFIG_H264_MF_ENCODER 0
|
||||
@ -820,6 +846,7 @@
|
||||
#define CONFIG_H264_VAAPI_ENCODER 0
|
||||
#define CONFIG_H264_VIDEOTOOLBOX_ENCODER 0
|
||||
#define CONFIG_HEVC_AMF_ENCODER 0
|
||||
#define CONFIG_HEVC_MEDIACODEC_ENCODER 0
|
||||
#define CONFIG_HEVC_MF_ENCODER 0
|
||||
#define CONFIG_HEVC_NVENC_ENCODER 0
|
||||
#define CONFIG_HEVC_QSV_ENCODER 0
|
||||
@ -839,6 +866,8 @@
|
||||
#define CONFIG_VP8_VAAPI_ENCODER 0
|
||||
#define CONFIG_VP9_VAAPI_ENCODER 0
|
||||
#define CONFIG_VP9_QSV_ENCODER 0
|
||||
#define CONFIG_VNULL_ENCODER 0
|
||||
#define CONFIG_ANULL_ENCODER 0
|
||||
#define CONFIG_AV1_D3D11VA_HWACCEL 0
|
||||
#define CONFIG_AV1_D3D11VA2_HWACCEL 0
|
||||
#define CONFIG_AV1_DXVA2_HWACCEL 0
|
||||
@ -921,6 +950,7 @@
|
||||
#define CONFIG_DVDSUB_PARSER 0
|
||||
#define CONFIG_DVD_NAV_PARSER 0
|
||||
#define CONFIG_FLAC_PARSER 0
|
||||
#define CONFIG_FTR_PARSER 0
|
||||
#define CONFIG_G723_1_PARSER 0
|
||||
#define CONFIG_G729_PARSER 0
|
||||
#define CONFIG_GIF_PARSER 0
|
||||
@ -929,8 +959,10 @@
|
||||
#define CONFIG_H263_PARSER 0
|
||||
#define CONFIG_H264_PARSER 0
|
||||
#define CONFIG_HEVC_PARSER 0
|
||||
#define CONFIG_HDR_PARSER 0
|
||||
#define CONFIG_IPU_PARSER 0
|
||||
#define CONFIG_JPEG2000_PARSER 0
|
||||
#define CONFIG_MISC4_PARSER 0
|
||||
#define CONFIG_MJPEG_PARSER 0
|
||||
#define CONFIG_MLP_PARSER 0
|
||||
#define CONFIG_MPEG4VIDEO_PARSER 0
|
||||
@ -953,6 +985,7 @@
|
||||
#define CONFIG_WEBP_PARSER 0
|
||||
#define CONFIG_XBM_PARSER 0
|
||||
#define CONFIG_XMA_PARSER 0
|
||||
#define CONFIG_XWD_PARSER 0
|
||||
#define CONFIG_ALSA_INDEV 0
|
||||
#define CONFIG_ANDROID_CAMERA_INDEV 0
|
||||
#define CONFIG_AVFOUNDATION_INDEV 0
|
||||
@ -1000,6 +1033,7 @@
|
||||
#define CONFIG_ADELAY_FILTER 0
|
||||
#define CONFIG_ADENORM_FILTER 0
|
||||
#define CONFIG_ADERIVATIVE_FILTER 0
|
||||
#define CONFIG_ADRC_FILTER 0
|
||||
#define CONFIG_ADYNAMICEQUALIZER_FILTER 0
|
||||
#define CONFIG_ADYNAMICSMOOTH_FILTER 0
|
||||
#define CONFIG_AECHO_FILTER 0
|
||||
@ -1122,6 +1156,7 @@
|
||||
#define CONFIG_VOLUME_FILTER 0
|
||||
#define CONFIG_VOLUMEDETECT_FILTER 0
|
||||
#define CONFIG_AEVALSRC_FILTER 0
|
||||
#define CONFIG_AFDELAYSRC_FILTER 0
|
||||
#define CONFIG_AFIRSRC_FILTER 0
|
||||
#define CONFIG_ANOISESRC_FILTER 0
|
||||
#define CONFIG_ANULLSRC_FILTER 0
|
||||
@ -1139,9 +1174,11 @@
|
||||
#define CONFIG_AVGBLUR_FILTER 0
|
||||
#define CONFIG_AVGBLUR_OPENCL_FILTER 0
|
||||
#define CONFIG_AVGBLUR_VULKAN_FILTER 0
|
||||
#define CONFIG_BACKGROUNDKEY_FILTER 0
|
||||
#define CONFIG_BBOX_FILTER 0
|
||||
#define CONFIG_BENCH_FILTER 0
|
||||
#define CONFIG_BILATERAL_FILTER 0
|
||||
#define CONFIG_BILATERAL_CUDA_FILTER 0
|
||||
#define CONFIG_BITPLANENOISE_FILTER 0
|
||||
#define CONFIG_BLACKDETECT_FILTER 0
|
||||
#define CONFIG_BLACKFRAME_FILTER 0
|
||||
@ -1157,6 +1194,7 @@
|
||||
#define CONFIG_CHROMABER_VULKAN_FILTER 0
|
||||
#define CONFIG_CHROMAHOLD_FILTER 0
|
||||
#define CONFIG_CHROMAKEY_FILTER 0
|
||||
#define CONFIG_CHROMAKEY_CUDA_FILTER 0
|
||||
#define CONFIG_CHROMANR_FILTER 0
|
||||
#define CONFIG_CHROMASHIFT_FILTER 0
|
||||
#define CONFIG_CIESCOPE_FILTER 0
|
||||
@ -1173,12 +1211,14 @@
|
||||
#define CONFIG_COLORMAP_FILTER 0
|
||||
#define CONFIG_COLORMATRIX_FILTER 0
|
||||
#define CONFIG_COLORSPACE_FILTER 0
|
||||
#define CONFIG_COLORSPACE_CUDA_FILTER 0
|
||||
#define CONFIG_COLORTEMPERATURE_FILTER 0
|
||||
#define CONFIG_CONVOLUTION_FILTER 0
|
||||
#define CONFIG_CONVOLUTION_OPENCL_FILTER 0
|
||||
#define CONFIG_CONVOLVE_FILTER 0
|
||||
#define CONFIG_COPY_FILTER 0
|
||||
#define CONFIG_COREIMAGE_FILTER 0
|
||||
#define CONFIG_CORR_FILTER 0
|
||||
#define CONFIG_COVER_RECT_FILTER 0
|
||||
#define CONFIG_CROP_FILTER 0
|
||||
#define CONFIG_CROPDETECT_FILTER 0
|
||||
@ -1361,6 +1401,7 @@
|
||||
#define CONFIG_READVITC_FILTER 0
|
||||
#define CONFIG_REALTIME_FILTER 0
|
||||
#define CONFIG_REMAP_FILTER 0
|
||||
#define CONFIG_REMAP_OPENCL_FILTER 0
|
||||
#define CONFIG_REMOVEGRAIN_FILTER 0
|
||||
#define CONFIG_REMOVELOGO_FILTER 0
|
||||
#define CONFIG_REPEATFIELDS_FILTER 0
|
||||
@ -1412,6 +1453,7 @@
|
||||
#define CONFIG_SPP_FILTER 0
|
||||
#define CONFIG_SR_FILTER 0
|
||||
#define CONFIG_SSIM_FILTER 0
|
||||
#define CONFIG_SSIM360_FILTER 0
|
||||
#define CONFIG_STEREO3D_FILTER 0
|
||||
#define CONFIG_STREAMSELECT_FILTER 0
|
||||
#define CONFIG_SUBTITLES_FILTER 0
|
||||
@ -1476,6 +1518,12 @@
|
||||
#define CONFIG_ZMQ_FILTER 0
|
||||
#define CONFIG_ZOOMPAN_FILTER 0
|
||||
#define CONFIG_ZSCALE_FILTER 0
|
||||
#define CONFIG_HSTACK_VAAPI_FILTER 0
|
||||
#define CONFIG_VSTACK_VAAPI_FILTER 0
|
||||
#define CONFIG_XSTACK_VAAPI_FILTER 0
|
||||
#define CONFIG_HSTACK_QSV_FILTER 0
|
||||
#define CONFIG_VSTACK_QSV_FILTER 0
|
||||
#define CONFIG_XSTACK_QSV_FILTER 0
|
||||
#define CONFIG_ALLRGB_FILTER 0
|
||||
#define CONFIG_ALLYUV_FILTER 0
|
||||
#define CONFIG_CELLAUTO_FILTER 0
|
||||
@ -1483,6 +1531,7 @@
|
||||
#define CONFIG_COLORCHART_FILTER 0
|
||||
#define CONFIG_COLORSPECTRUM_FILTER 0
|
||||
#define CONFIG_COREIMAGESRC_FILTER 0
|
||||
#define CONFIG_DDAGRAB_FILTER 0
|
||||
#define CONFIG_FREI0R_SRC_FILTER 0
|
||||
#define CONFIG_GRADIENTS_FILTER 0
|
||||
#define CONFIG_HALDCLUTSRC_FILTER 0
|
||||
@ -1501,6 +1550,7 @@
|
||||
#define CONFIG_TESTSRC2_FILTER 0
|
||||
#define CONFIG_YUVTESTSRC_FILTER 0
|
||||
#define CONFIG_NULLSINK_FILTER 0
|
||||
#define CONFIG_A3DSCOPE_FILTER 0
|
||||
#define CONFIG_ABITSCOPE_FILTER 0
|
||||
#define CONFIG_ADRAWGRAPH_FILTER 0
|
||||
#define CONFIG_AGRAPHMONITOR_FILTER 0
|
||||
@ -1509,6 +1559,7 @@
|
||||
#define CONFIG_AVECTORSCOPE_FILTER 0
|
||||
#define CONFIG_CONCAT_FILTER 0
|
||||
#define CONFIG_SHOWCQT_FILTER 0
|
||||
#define CONFIG_SHOWCWT_FILTER 0
|
||||
#define CONFIG_SHOWFREQS_FILTER 0
|
||||
#define CONFIG_SHOWSPATIAL_FILTER 0
|
||||
#define CONFIG_SHOWSPECTRUM_FILTER 0
|
||||
@ -1542,6 +1593,7 @@
|
||||
#define CONFIG_AMRNB_DEMUXER 0
|
||||
#define CONFIG_AMRWB_DEMUXER 0
|
||||
#define CONFIG_ANM_DEMUXER 0
|
||||
#define CONFIG_APAC_DEMUXER 0
|
||||
#define CONFIG_APC_DEMUXER 0
|
||||
#define CONFIG_APE_DEMUXER 0
|
||||
#define CONFIG_APM_DEMUXER 0
|
||||
@ -1575,6 +1627,7 @@
|
||||
#define CONFIG_BFSTM_DEMUXER 0
|
||||
#define CONFIG_BRSTM_DEMUXER 0
|
||||
#define CONFIG_BOA_DEMUXER 0
|
||||
#define CONFIG_BONK_DEMUXER 0
|
||||
#define CONFIG_C93_DEMUXER 0
|
||||
#define CONFIG_CAF_DEMUXER 0
|
||||
#define CONFIG_CAVSVIDEO_DEMUXER 0
|
||||
@ -1659,6 +1712,7 @@
|
||||
#define CONFIG_JV_DEMUXER 0
|
||||
#define CONFIG_KUX_DEMUXER 0
|
||||
#define CONFIG_KVAG_DEMUXER 0
|
||||
#define CONFIG_LAF_DEMUXER 0
|
||||
#define CONFIG_LMLM4_DEMUXER 0
|
||||
#define CONFIG_LOAS_DEMUXER 0
|
||||
#define CONFIG_LUODAT_DEMUXER 0
|
||||
@ -1741,6 +1795,7 @@
|
||||
#define CONFIG_RAWVIDEO_DEMUXER 0
|
||||
#define CONFIG_REALTEXT_DEMUXER 0
|
||||
#define CONFIG_REDSPARK_DEMUXER 0
|
||||
#define CONFIG_RKA_DEMUXER 0
|
||||
#define CONFIG_RL2_DEMUXER 0
|
||||
#define CONFIG_RM_DEMUXER 0
|
||||
#define CONFIG_ROQ_DEMUXER 0
|
||||
@ -1756,6 +1811,7 @@
|
||||
#define CONFIG_SBG_DEMUXER 0
|
||||
#define CONFIG_SCC_DEMUXER 0
|
||||
#define CONFIG_SCD_DEMUXER 0
|
||||
#define CONFIG_SDNS_DEMUXER 0
|
||||
#define CONFIG_SDP_DEMUXER 0
|
||||
#define CONFIG_SDR2_DEMUXER 0
|
||||
#define CONFIG_SDS_DEMUXER 0
|
||||
@ -1807,6 +1863,8 @@
|
||||
#define CONFIG_VPLAYER_DEMUXER 0
|
||||
#define CONFIG_VQF_DEMUXER 0
|
||||
#define CONFIG_W64_DEMUXER 0
|
||||
#define CONFIG_WADY_DEMUXER 0
|
||||
#define CONFIG_WAVARC_DEMUXER 0
|
||||
#define CONFIG_WAV_DEMUXER 0
|
||||
#define CONFIG_WC3_DEMUXER 0
|
||||
#define CONFIG_WEBM_DASH_MANIFEST_DEMUXER 0
|
||||
@ -1819,6 +1877,7 @@
|
||||
#define CONFIG_WV_DEMUXER 0
|
||||
#define CONFIG_XA_DEMUXER 0
|
||||
#define CONFIG_XBIN_DEMUXER 0
|
||||
#define CONFIG_XMD_DEMUXER 0
|
||||
#define CONFIG_XMV_DEMUXER 0
|
||||
#define CONFIG_XVAG_DEMUXER 0
|
||||
#define CONFIG_XWMA_DEMUXER 0
|
||||
@ -1831,6 +1890,7 @@
|
||||
#define CONFIG_IMAGE_EXR_PIPE_DEMUXER 0
|
||||
#define CONFIG_IMAGE_GEM_PIPE_DEMUXER 0
|
||||
#define CONFIG_IMAGE_GIF_PIPE_DEMUXER 0
|
||||
#define CONFIG_IMAGE_HDR_PIPE_DEMUXER 0
|
||||
#define CONFIG_IMAGE_J2K_PIPE_DEMUXER 0
|
||||
#define CONFIG_IMAGE_JPEG_PIPE_DEMUXER 0
|
||||
#define CONFIG_IMAGE_JPEGLS_PIPE_DEMUXER 0
|
||||
@ -1838,9 +1898,11 @@
|
||||
#define CONFIG_IMAGE_PAM_PIPE_DEMUXER 0
|
||||
#define CONFIG_IMAGE_PBM_PIPE_DEMUXER 0
|
||||
#define CONFIG_IMAGE_PCX_PIPE_DEMUXER 0
|
||||
#define CONFIG_IMAGE_PFM_PIPE_DEMUXER 0
|
||||
#define CONFIG_IMAGE_PGMYUV_PIPE_DEMUXER 0
|
||||
#define CONFIG_IMAGE_PGM_PIPE_DEMUXER 0
|
||||
#define CONFIG_IMAGE_PGX_PIPE_DEMUXER 0
|
||||
#define CONFIG_IMAGE_PHM_PIPE_DEMUXER 0
|
||||
#define CONFIG_IMAGE_PHOTOCD_PIPE_DEMUXER 0
|
||||
#define CONFIG_IMAGE_PICTOR_PIPE_DEMUXER 0
|
||||
#define CONFIG_IMAGE_PNG_PIPE_DEMUXER 0
|
||||
@ -2043,6 +2105,7 @@
|
||||
#define CONFIG_CONCATF_PROTOCOL 0
|
||||
#define CONFIG_CRYPTO_PROTOCOL 0
|
||||
#define CONFIG_DATA_PROTOCOL 0
|
||||
#define CONFIG_FD_PROTOCOL 0
|
||||
#define CONFIG_FFRTMPCRYPT_PROTOCOL 0
|
||||
#define CONFIG_FFRTMPHTTP_PROTOCOL 0
|
||||
#define CONFIG_FILE_PROTOCOL 0
|
||||
@ -2086,6 +2149,6 @@
|
||||
#define CONFIG_LIBSSH_PROTOCOL 0
|
||||
#define CONFIG_LIBSMBCLIENT_PROTOCOL 0
|
||||
#define CONFIG_LIBZMQ_PROTOCOL 0
|
||||
#define CONFIG_IPFS_PROTOCOL 0
|
||||
#define CONFIG_IPNS_PROTOCOL 0
|
||||
#define CONFIG_IPFS_GATEWAY_PROTOCOL 0
|
||||
#define CONFIG_IPNS_GATEWAY_PROTOCOL 0
|
||||
#endif /* FFMPEG_CONFIG_COMPONENTS_H */
|
||||
|
@ -16,5 +16,8 @@ static const FFCodec * const codec_list[] = {
|
||||
#endif
|
||||
#if CONFIG_AV1_DECODER
|
||||
&ff_av1_decoder,
|
||||
#endif
|
||||
#if CONFIG_LIBVORBIS_DECODER
|
||||
&ff_libvorbis_decoder,
|
||||
#endif
|
||||
NULL };
|
||||
|
224
media/ffvpx/libavcodec/libvorbisdec.c
Normal file
224
media/ffvpx/libavcodec/libvorbisdec.c
Normal file
@ -0,0 +1,224 @@
|
||||
/*
|
||||
* Copyright (c) 2002 Mark Hills <mark@pogo.org.uk>
|
||||
*
|
||||
* This file is part of FFmpeg.
|
||||
*
|
||||
* FFmpeg is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* FFmpeg is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with FFmpeg; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
*/
|
||||
|
||||
#include <vorbis/vorbisenc.h>
|
||||
|
||||
#include "avcodec.h"
|
||||
#include "bytestream.h"
|
||||
#include "codec_internal.h"
|
||||
#include "decode.h"
|
||||
|
||||
typedef struct OggVorbisDecContext {
|
||||
vorbis_info vi; /**< vorbis_info used during init */
|
||||
vorbis_dsp_state vd; /**< DSP state used for analysis */
|
||||
vorbis_block vb; /**< vorbis_block used for analysis */
|
||||
vorbis_comment vc; /**< VorbisComment info */
|
||||
ogg_packet op; /**< ogg packet */
|
||||
} OggVorbisDecContext;
|
||||
|
||||
static int oggvorbis_decode_close(AVCodecContext *avccontext);
|
||||
|
||||
static int oggvorbis_decode_init(AVCodecContext *avccontext) {
|
||||
OggVorbisDecContext *context = avccontext->priv_data ;
|
||||
uint8_t *p= avccontext->extradata;
|
||||
int i, hsizes[3], ret;
|
||||
unsigned char *headers[3], *extradata = avccontext->extradata;
|
||||
|
||||
if(! avccontext->extradata_size || ! p) {
|
||||
av_log(avccontext, AV_LOG_ERROR, "vorbis extradata absent\n");
|
||||
return AVERROR(EINVAL);
|
||||
}
|
||||
|
||||
vorbis_info_init(&context->vi) ;
|
||||
vorbis_comment_init(&context->vc) ;
|
||||
|
||||
if(p[0] == 0 && p[1] == 30) {
|
||||
int sizesum = 0;
|
||||
for(i = 0; i < 3; i++){
|
||||
hsizes[i] = bytestream_get_be16((const uint8_t **)&p);
|
||||
sizesum += 2 + hsizes[i];
|
||||
if (sizesum > avccontext->extradata_size) {
|
||||
av_log(avccontext, AV_LOG_ERROR, "vorbis extradata too small\n");
|
||||
ret = AVERROR_INVALIDDATA;
|
||||
goto error;
|
||||
}
|
||||
|
||||
headers[i] = p;
|
||||
p += hsizes[i];
|
||||
}
|
||||
} else if(*p == 2) {
|
||||
unsigned int offset = 1;
|
||||
unsigned int sizesum = 1;
|
||||
p++;
|
||||
for(i=0; i<2; i++) {
|
||||
hsizes[i] = 0;
|
||||
while((*p == 0xFF) && (sizesum < avccontext->extradata_size)) {
|
||||
hsizes[i] += 0xFF;
|
||||
offset++;
|
||||
sizesum += 1 + 0xFF;
|
||||
p++;
|
||||
}
|
||||
hsizes[i] += *p;
|
||||
offset++;
|
||||
sizesum += 1 + *p;
|
||||
if(sizesum > avccontext->extradata_size) {
|
||||
av_log(avccontext, AV_LOG_ERROR,
|
||||
"vorbis header sizes damaged\n");
|
||||
ret = AVERROR_INVALIDDATA;
|
||||
goto error;
|
||||
}
|
||||
p++;
|
||||
}
|
||||
hsizes[2] = avccontext->extradata_size - hsizes[0]-hsizes[1]-offset;
|
||||
#if 0
|
||||
av_log(avccontext, AV_LOG_DEBUG,
|
||||
"vorbis header sizes: %d, %d, %d, / extradata_len is %d \n",
|
||||
hsizes[0], hsizes[1], hsizes[2], avccontext->extradata_size);
|
||||
#endif
|
||||
headers[0] = extradata + offset;
|
||||
headers[1] = extradata + offset + hsizes[0];
|
||||
headers[2] = extradata + offset + hsizes[0] + hsizes[1];
|
||||
} else {
|
||||
av_log(avccontext, AV_LOG_ERROR,
|
||||
"vorbis initial header len is wrong: %d\n", *p);
|
||||
ret = AVERROR_INVALIDDATA;
|
||||
goto error;
|
||||
}
|
||||
|
||||
for(i=0; i<3; i++){
|
||||
context->op.b_o_s= i==0;
|
||||
context->op.bytes = hsizes[i];
|
||||
context->op.packet = headers[i];
|
||||
if(vorbis_synthesis_headerin(&context->vi, &context->vc, &context->op)<0){
|
||||
av_log(avccontext, AV_LOG_ERROR, "%d. vorbis header damaged\n", i+1);
|
||||
ret = AVERROR_INVALIDDATA;
|
||||
goto error;
|
||||
}
|
||||
}
|
||||
|
||||
av_channel_layout_uninit(&avccontext->ch_layout);
|
||||
avccontext->ch_layout.order = AV_CHANNEL_ORDER_UNSPEC;
|
||||
avccontext->ch_layout.nb_channels = context->vi.channels;
|
||||
avccontext->sample_rate = context->vi.rate;
|
||||
avccontext->sample_fmt = AV_SAMPLE_FMT_S16;
|
||||
avccontext->time_base= (AVRational){1, avccontext->sample_rate};
|
||||
|
||||
vorbis_synthesis_init(&context->vd, &context->vi);
|
||||
vorbis_block_init(&context->vd, &context->vb);
|
||||
|
||||
return 0 ;
|
||||
|
||||
error:
|
||||
oggvorbis_decode_close(avccontext);
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
static inline int conv(int samples, float **pcm, char *buf, int channels) {
|
||||
int i, j;
|
||||
ogg_int16_t *ptr, *data = (ogg_int16_t*)buf ;
|
||||
float *mono ;
|
||||
|
||||
for(i = 0 ; i < channels ; i++){
|
||||
ptr = &data[i];
|
||||
mono = pcm[i] ;
|
||||
|
||||
for(j = 0 ; j < samples ; j++) {
|
||||
*ptr = av_clip_int16(mono[j] * 32767.f);
|
||||
ptr += channels;
|
||||
}
|
||||
}
|
||||
|
||||
return 0 ;
|
||||
}
|
||||
|
||||
static int oggvorbis_decode_frame(AVCodecContext *avccontext, AVFrame *frame,
|
||||
int *got_frame_ptr, AVPacket *avpkt)
|
||||
{
|
||||
OggVorbisDecContext *context = avccontext->priv_data ;
|
||||
float **pcm ;
|
||||
ogg_packet *op= &context->op;
|
||||
int samples, total_samples, total_bytes;
|
||||
int ret;
|
||||
int16_t *output;
|
||||
|
||||
if(!avpkt->size){
|
||||
//FIXME flush
|
||||
return 0;
|
||||
}
|
||||
|
||||
frame->nb_samples = 8192*4;
|
||||
if ((ret = ff_get_buffer(avccontext, frame, 0)) < 0)
|
||||
return ret;
|
||||
output = (int16_t *)frame->data[0];
|
||||
|
||||
|
||||
op->packet = avpkt->data;
|
||||
op->bytes = avpkt->size;
|
||||
|
||||
// av_log(avccontext, AV_LOG_DEBUG, "%d %d %d %"PRId64" %"PRId64" %d %d\n", op->bytes, op->b_o_s, op->e_o_s, op->granulepos, op->packetno, buf_size, context->vi.rate);
|
||||
|
||||
/* for(i=0; i<op->bytes; i++)
|
||||
av_log(avccontext, AV_LOG_DEBUG, "%02X ", op->packet[i]);
|
||||
av_log(avccontext, AV_LOG_DEBUG, "\n");*/
|
||||
|
||||
if(vorbis_synthesis(&context->vb, op) == 0)
|
||||
vorbis_synthesis_blockin(&context->vd, &context->vb) ;
|
||||
|
||||
total_samples = 0 ;
|
||||
total_bytes = 0 ;
|
||||
|
||||
while((samples = vorbis_synthesis_pcmout(&context->vd, &pcm)) > 0) {
|
||||
conv(samples, pcm, (char*)output + total_bytes, context->vi.channels) ;
|
||||
total_bytes += samples * 2 * context->vi.channels ;
|
||||
total_samples += samples ;
|
||||
vorbis_synthesis_read(&context->vd, samples) ;
|
||||
}
|
||||
|
||||
frame->nb_samples = total_samples;
|
||||
*got_frame_ptr = total_samples > 0;
|
||||
return avpkt->size;
|
||||
}
|
||||
|
||||
|
||||
static int oggvorbis_decode_close(AVCodecContext *avccontext) {
|
||||
OggVorbisDecContext *context = avccontext->priv_data ;
|
||||
|
||||
vorbis_block_clear(&context->vb);
|
||||
vorbis_dsp_clear(&context->vd);
|
||||
vorbis_info_clear(&context->vi) ;
|
||||
vorbis_comment_clear(&context->vc) ;
|
||||
|
||||
return 0 ;
|
||||
}
|
||||
|
||||
|
||||
const FFCodec ff_libvorbis_decoder = {
|
||||
.p.name = "libvorbis",
|
||||
CODEC_LONG_NAME("libvorbis"),
|
||||
.p.type = AVMEDIA_TYPE_AUDIO,
|
||||
.p.id = AV_CODEC_ID_VORBIS,
|
||||
.p.capabilities = AV_CODEC_CAP_DELAY | AV_CODEC_CAP_CHANNEL_CONF,
|
||||
.caps_internal = FF_CODEC_CAP_NOT_INIT_THREADSAFE,
|
||||
.priv_data_size = sizeof(OggVorbisDecContext),
|
||||
.init = oggvorbis_decode_init,
|
||||
FF_CODEC_DECODE_CB(oggvorbis_decode_frame),
|
||||
.close = oggvorbis_decode_close,
|
||||
};
|
@ -46,6 +46,7 @@ SOURCES += [
|
||||
'jfdctfst.c',
|
||||
'jfdctint.c',
|
||||
'jrevdct.c',
|
||||
'libvorbisdec.c',
|
||||
'log2_tab.c',
|
||||
'mpegaudio.c',
|
||||
'mpegaudiodata.c',
|
||||
@ -125,6 +126,8 @@ if not CONFIG['MOZ_FFVPX_AUDIOONLY']:
|
||||
'mozva'
|
||||
]
|
||||
|
||||
LOCAL_INCLUDES += ['/media/libvorbis']
|
||||
|
||||
if CONFIG['MOZ_LIBAV_FFT']:
|
||||
SOURCES += [
|
||||
'avfft.c',
|
||||
|
Loading…
Reference in New Issue
Block a user