[FFmpeg-devel] [PATCH] lavc: move bitstream filters into bsf/ subdir
Andreas Rheinhardt
andreas.rheinhardt at outlook.com
Fri Jan 26 14:35:56 EET 2024
Anton Khirnov:
> ---
> libavcodec/Makefile | 49 +---------------
> libavcodec/bsf/Makefile | 56 +++++++++++++++++++
> .../aac_adtstoasc.c} | 0
> .../av1_frame_merge.c} | 0
> .../av1_frame_split.c} | 0
> .../av1_metadata.c} | 0
> libavcodec/{chomp_bsf.c => bsf/chomp.c} | 0
> libavcodec/{dca_core_bsf.c => bsf/dca_core.c} | 0
> libavcodec/{dts2pts_bsf.c => bsf/dts2pts.c} | 0
> .../dump_extradata.c} | 0
> .../dv_error_marker.c} | 0
> .../{eac3_core_bsf.c => bsf/eac3_core.c} | 0
> .../evc_frame_merge.c} | 0
> .../extract_extradata.c} | 0
> .../filter_units.c} | 0
> .../h264_metadata.c} | 0
> .../h264_mp4toannexb.c} | 0
> .../h264_redundant_pps.c} | 0
> .../h265_metadata.c} | 0
> .../h266_metadata.c} | 0
> .../hapqa_extract.c} | 0
> .../hevc_mp4toannexb.c} | 0
> .../imx_dump_header.c} | 0
> .../media100_to_mjpegb.c} | 0
> .../{mjpeg2jpeg_bsf.c => bsf/mjpeg2jpeg.c} | 0
> .../mjpega_dump_header.c} | 0
> libavcodec/{movsub_bsf.c => bsf/movsub.c} | 0
> .../mp3_header_decompress.c} | 0
> .../mpeg2_metadata.c} | 0
> .../mpeg4_unpack_bframes.c} | 0
> libavcodec/{noise_bsf.c => bsf/noise.c} | 0
> libavcodec/{null_bsf.c => bsf/null.c} | 0
> .../opus_metadata.c} | 0
> .../{pcm_rechunk_bsf.c => bsf/pcm_rechunk.c} | 0
> .../pgs_frame_merge.c} | 0
> .../prores_metadata.c} | 0
> .../remove_extradata.c} | 0
> libavcodec/{setts_bsf.c => bsf/setts.c} | 0
> .../trace_headers.c} | 0
> .../{truehd_core_bsf.c => bsf/truehd_core.c} | 0
> .../vp9_metadata.c} | 0
> .../vp9_raw_reorder.c} | 0
> .../vp9_superframe.c} | 0
> .../vp9_superframe_split.c} | 0
> .../vvc_mp4toannexb.c} | 0
> 45 files changed, 57 insertions(+), 48 deletions(-)
> create mode 100644 libavcodec/bsf/Makefile
> rename libavcodec/{aac_adtstoasc_bsf.c => bsf/aac_adtstoasc.c} (100%)
> rename libavcodec/{av1_frame_merge_bsf.c => bsf/av1_frame_merge.c} (100%)
> rename libavcodec/{av1_frame_split_bsf.c => bsf/av1_frame_split.c} (100%)
> rename libavcodec/{av1_metadata_bsf.c => bsf/av1_metadata.c} (100%)
> rename libavcodec/{chomp_bsf.c => bsf/chomp.c} (100%)
> rename libavcodec/{dca_core_bsf.c => bsf/dca_core.c} (100%)
> rename libavcodec/{dts2pts_bsf.c => bsf/dts2pts.c} (100%)
> rename libavcodec/{dump_extradata_bsf.c => bsf/dump_extradata.c} (100%)
> rename libavcodec/{dv_error_marker_bsf.c => bsf/dv_error_marker.c} (100%)
> rename libavcodec/{eac3_core_bsf.c => bsf/eac3_core.c} (100%)
> rename libavcodec/{evc_frame_merge_bsf.c => bsf/evc_frame_merge.c} (100%)
> rename libavcodec/{extract_extradata_bsf.c => bsf/extract_extradata.c} (100%)
> rename libavcodec/{filter_units_bsf.c => bsf/filter_units.c} (100%)
> rename libavcodec/{h264_metadata_bsf.c => bsf/h264_metadata.c} (100%)
> rename libavcodec/{h264_mp4toannexb_bsf.c => bsf/h264_mp4toannexb.c} (100%)
> rename libavcodec/{h264_redundant_pps_bsf.c => bsf/h264_redundant_pps.c} (100%)
> rename libavcodec/{h265_metadata_bsf.c => bsf/h265_metadata.c} (100%)
> rename libavcodec/{h266_metadata_bsf.c => bsf/h266_metadata.c} (100%)
> rename libavcodec/{hapqa_extract_bsf.c => bsf/hapqa_extract.c} (100%)
> rename libavcodec/{hevc_mp4toannexb_bsf.c => bsf/hevc_mp4toannexb.c} (100%)
> rename libavcodec/{imx_dump_header_bsf.c => bsf/imx_dump_header.c} (100%)
> rename libavcodec/{media100_to_mjpegb_bsf.c => bsf/media100_to_mjpegb.c} (100%)
> rename libavcodec/{mjpeg2jpeg_bsf.c => bsf/mjpeg2jpeg.c} (100%)
> rename libavcodec/{mjpega_dump_header_bsf.c => bsf/mjpega_dump_header.c} (100%)
> rename libavcodec/{movsub_bsf.c => bsf/movsub.c} (100%)
> rename libavcodec/{mp3_header_decompress_bsf.c => bsf/mp3_header_decompress.c} (100%)
> rename libavcodec/{mpeg2_metadata_bsf.c => bsf/mpeg2_metadata.c} (100%)
> rename libavcodec/{mpeg4_unpack_bframes_bsf.c => bsf/mpeg4_unpack_bframes.c} (100%)
> rename libavcodec/{noise_bsf.c => bsf/noise.c} (100%)
> rename libavcodec/{null_bsf.c => bsf/null.c} (100%)
> rename libavcodec/{opus_metadata_bsf.c => bsf/opus_metadata.c} (100%)
> rename libavcodec/{pcm_rechunk_bsf.c => bsf/pcm_rechunk.c} (100%)
> rename libavcodec/{pgs_frame_merge_bsf.c => bsf/pgs_frame_merge.c} (100%)
> rename libavcodec/{prores_metadata_bsf.c => bsf/prores_metadata.c} (100%)
> rename libavcodec/{remove_extradata_bsf.c => bsf/remove_extradata.c} (100%)
> rename libavcodec/{setts_bsf.c => bsf/setts.c} (100%)
> rename libavcodec/{trace_headers_bsf.c => bsf/trace_headers.c} (100%)
> rename libavcodec/{truehd_core_bsf.c => bsf/truehd_core.c} (100%)
> rename libavcodec/{vp9_metadata_bsf.c => bsf/vp9_metadata.c} (100%)
> rename libavcodec/{vp9_raw_reorder_bsf.c => bsf/vp9_raw_reorder.c} (100%)
> rename libavcodec/{vp9_superframe_bsf.c => bsf/vp9_superframe.c} (100%)
> rename libavcodec/{vp9_superframe_split_bsf.c => bsf/vp9_superframe_split.c} (100%)
> rename libavcodec/{vvc_mp4toannexb_bsf.c => bsf/vvc_mp4toannexb.c} (100%)
>
> diff --git a/libavcodec/Makefile b/libavcodec/Makefile
> index 96361ac794..43b557faaf 100644
> --- a/libavcodec/Makefile
> +++ b/libavcodec/Makefile
> @@ -1233,54 +1233,7 @@ OBJS-$(CONFIG_XMA_PARSER) += xma_parser.o
> OBJS-$(CONFIG_XWD_PARSER) += xwd_parser.o
>
> # bitstream filters
> -OBJS-$(CONFIG_AAC_ADTSTOASC_BSF) += aac_adtstoasc_bsf.o
> -OBJS-$(CONFIG_AV1_METADATA_BSF) += av1_metadata_bsf.o
> -OBJS-$(CONFIG_AV1_FRAME_MERGE_BSF) += av1_frame_merge_bsf.o
> -OBJS-$(CONFIG_AV1_FRAME_SPLIT_BSF) += av1_frame_split_bsf.o
> -OBJS-$(CONFIG_CHOMP_BSF) += chomp_bsf.o
> -OBJS-$(CONFIG_DUMP_EXTRADATA_BSF) += dump_extradata_bsf.o
> -OBJS-$(CONFIG_DCA_CORE_BSF) += dca_core_bsf.o
> -OBJS-$(CONFIG_DTS2PTS_BSF) += dts2pts_bsf.o
> -OBJS-$(CONFIG_DV_ERROR_MARKER_BSF) += dv_error_marker_bsf.o
> -OBJS-$(CONFIG_EAC3_CORE_BSF) += eac3_core_bsf.o
> -OBJS-$(CONFIG_EXTRACT_EXTRADATA_BSF) += extract_extradata_bsf.o \
> - av1_parse.o h2645_parse.o
> -OBJS-$(CONFIG_FILTER_UNITS_BSF) += filter_units_bsf.o
> -OBJS-$(CONFIG_H264_METADATA_BSF) += h264_metadata_bsf.o h264_levels.o \
> - h2645data.o
> -OBJS-$(CONFIG_H264_MP4TOANNEXB_BSF) += h264_mp4toannexb_bsf.o
> -OBJS-$(CONFIG_H264_REDUNDANT_PPS_BSF) += h264_redundant_pps_bsf.o
> -OBJS-$(CONFIG_HAPQA_EXTRACT_BSF) += hapqa_extract_bsf.o hap.o
> -OBJS-$(CONFIG_HEVC_METADATA_BSF) += h265_metadata_bsf.o h265_profile_level.o \
> - h2645data.o
> -OBJS-$(CONFIG_HEVC_MP4TOANNEXB_BSF) += hevc_mp4toannexb_bsf.o
> -OBJS-$(CONFIG_IMX_DUMP_HEADER_BSF) += imx_dump_header_bsf.o
> -OBJS-$(CONFIG_MEDIA100_TO_MJPEGB_BSF) += media100_to_mjpegb_bsf.o
> -OBJS-$(CONFIG_MJPEG2JPEG_BSF) += mjpeg2jpeg_bsf.o
> -OBJS-$(CONFIG_MJPEGA_DUMP_HEADER_BSF) += mjpega_dump_header_bsf.o
> -OBJS-$(CONFIG_MPEG4_UNPACK_BFRAMES_BSF) += mpeg4_unpack_bframes_bsf.o
> -OBJS-$(CONFIG_MOV2TEXTSUB_BSF) += movsub_bsf.o
> -OBJS-$(CONFIG_MP3_HEADER_DECOMPRESS_BSF) += mp3_header_decompress_bsf.o \
> - mpegaudiotabs.o
> -OBJS-$(CONFIG_MPEG2_METADATA_BSF) += mpeg2_metadata_bsf.o
> -OBJS-$(CONFIG_NOISE_BSF) += noise_bsf.o
> -OBJS-$(CONFIG_NULL_BSF) += null_bsf.o
> -OBJS-$(CONFIG_OPUS_METADATA_BSF) += opus_metadata_bsf.o
> -OBJS-$(CONFIG_PCM_RECHUNK_BSF) += pcm_rechunk_bsf.o
> -OBJS-$(CONFIG_PGS_FRAME_MERGE_BSF) += pgs_frame_merge_bsf.o
> -OBJS-$(CONFIG_PRORES_METADATA_BSF) += prores_metadata_bsf.o
> -OBJS-$(CONFIG_REMOVE_EXTRADATA_BSF) += remove_extradata_bsf.o av1_parse.o
> -OBJS-$(CONFIG_SETTS_BSF) += setts_bsf.o
> -OBJS-$(CONFIG_TEXT2MOVSUB_BSF) += movsub_bsf.o
> -OBJS-$(CONFIG_TRACE_HEADERS_BSF) += trace_headers_bsf.o
> -OBJS-$(CONFIG_TRUEHD_CORE_BSF) += truehd_core_bsf.o mlp_parse.o mlp.o
> -OBJS-$(CONFIG_VP9_METADATA_BSF) += vp9_metadata_bsf.o
> -OBJS-$(CONFIG_VP9_RAW_REORDER_BSF) += vp9_raw_reorder_bsf.o
> -OBJS-$(CONFIG_VP9_SUPERFRAME_BSF) += vp9_superframe_bsf.o
> -OBJS-$(CONFIG_VP9_SUPERFRAME_SPLIT_BSF) += vp9_superframe_split_bsf.o
> -OBJS-$(CONFIG_VVC_METADATA_BSF) += h266_metadata_bsf.o
> -OBJS-$(CONFIG_VVC_MP4TOANNEXB_BSF) += vvc_mp4toannexb_bsf.o
> -OBJS-$(CONFIG_EVC_FRAME_MERGE_BSF) += evc_frame_merge_bsf.o
> +include $(SRC_PATH)/libavcodec/bsf/Makefile
>
> # thread libraries
> OBJS-$(HAVE_LIBC_MSVCRT) += file_open.o
> diff --git a/libavcodec/bsf/Makefile b/libavcodec/bsf/Makefile
> new file mode 100644
> index 0000000000..9c414cdb45
> --- /dev/null
> +++ b/libavcodec/bsf/Makefile
> @@ -0,0 +1,56 @@
> +clean::
> + $(RM) $(CLEANSUFFIXES:%=libavcodec/bsf/%)
> +
> +OBJS_BSF-$(CONFIG_AAC_ADTSTOASC_BSF) += bsf/aac_adtstoasc.o
> +OBJS_BSF-$(CONFIG_AV1_METADATA_BSF) += bsf/av1_metadata.o
> +OBJS_BSF-$(CONFIG_AV1_FRAME_MERGE_BSF) += bsf/av1_frame_merge.o
> +OBJS_BSF-$(CONFIG_AV1_FRAME_SPLIT_BSF) += bsf/av1_frame_split.o
> +OBJS_BSF-$(CONFIG_CHOMP_BSF) += bsf/chomp.o
> +OBJS_BSF-$(CONFIG_DUMP_EXTRADATA_BSF) += bsf/dump_extradata.o
> +OBJS_BSF-$(CONFIG_DCA_CORE_BSF) += bsf/dca_core.o
> +OBJS_BSF-$(CONFIG_DTS2PTS_BSF) += bsf/dts2pts.o
> +OBJS_BSF-$(CONFIG_DV_ERROR_MARKER_BSF) += bsf/dv_error_marker.o
> +OBJS_BSF-$(CONFIG_EAC3_CORE_BSF) += bsf/eac3_core.o
> +OBJS_BSF-$(CONFIG_EXTRACT_EXTRADATA_BSF) += bsf/extract_extradata.o \
> + av1_parse.o h2645_parse.o
> +OBJS_BSF-$(CONFIG_FILTER_UNITS_BSF) += bsf/filter_units.o
> +OBJS_BSF-$(CONFIG_H264_METADATA_BSF) += bsf/h264_metadata.o \
> + h264_levels.o h2645data.o
> +OBJS_BSF-$(CONFIG_H264_MP4TOANNEXB_BSF) += bsf/h264_mp4toannexb.o
> +OBJS_BSF-$(CONFIG_H264_REDUNDANT_PPS_BSF) += bsf/h264_redundant_pps.o
> +OBJS_BSF-$(CONFIG_HAPQA_EXTRACT_BSF) += bsf/hapqa_extract.o \
> + hap.o
> +OBJS_BSF-$(CONFIG_HEVC_METADATA_BSF) += bsf/h265_metadata.o \
> + h265_profile_level.o h2645data.o
> +OBJS_BSF-$(CONFIG_HEVC_MP4TOANNEXB_BSF) += bsf/hevc_mp4toannexb.o
> +OBJS_BSF-$(CONFIG_IMX_DUMP_HEADER_BSF) += bsf/imx_dump_header.o
> +OBJS_BSF-$(CONFIG_MEDIA100_TO_MJPEGB_BSF) += bsf/media100_to_mjpegb.o
> +OBJS_BSF-$(CONFIG_MJPEG2JPEG_BSF) += bsf/mjpeg2jpeg.o
> +OBJS_BSF-$(CONFIG_MJPEGA_DUMP_HEADER_BSF) += bsf/mjpega_dump_header.o
> +OBJS_BSF-$(CONFIG_MPEG4_UNPACK_BFRAMES_BSF) += bsf/mpeg4_unpack_bframes.o
> +OBJS_BSF-$(CONFIG_MOV2TEXTSUB_BSF) += bsf/movsub.o
> +OBJS_BSF-$(CONFIG_MP3_HEADER_DECOMPRESS_BSF) += bsf/mp3_header_decompress.o \
> + mpegaudiotabs.o
> +OBJS_BSF-$(CONFIG_MPEG2_METADATA_BSF) += bsf/mpeg2_metadata.o
> +OBJS_BSF-$(CONFIG_NOISE_BSF) += bsf/noise.o
> +OBJS_BSF-$(CONFIG_NULL_BSF) += bsf/null.o
> +OBJS_BSF-$(CONFIG_OPUS_METADATA_BSF) += bsf/opus_metadata.o
> +OBJS_BSF-$(CONFIG_PCM_RECHUNK_BSF) += bsf/pcm_rechunk.o
> +OBJS_BSF-$(CONFIG_PGS_FRAME_MERGE_BSF) += bsf/pgs_frame_merge.o
> +OBJS_BSF-$(CONFIG_PRORES_METADATA_BSF) += bsf/prores_metadata.o
> +OBJS_BSF-$(CONFIG_REMOVE_EXTRADATA_BSF) += bsf/remove_extradata.o av1_parse.o
> +OBJS_BSF-$(CONFIG_SETTS_BSF) += bsf/setts.o
> +OBJS_BSF-$(CONFIG_TEXT2MOVSUB_BSF) += bsf/movsub.o
> +OBJS_BSF-$(CONFIG_TRACE_HEADERS_BSF) += bsf/trace_headers.o
> +OBJS_BSF-$(CONFIG_TRUEHD_CORE_BSF) += bsf/truehd_core.o mlp_parse.o mlp.o
> +OBJS_BSF-$(CONFIG_VP9_METADATA_BSF) += bsf/vp9_metadata.o
> +OBJS_BSF-$(CONFIG_VP9_RAW_REORDER_BSF) += bsf/vp9_raw_reorder.o
> +OBJS_BSF-$(CONFIG_VP9_SUPERFRAME_BSF) += bsf/vp9_superframe.o
> +OBJS_BSF-$(CONFIG_VP9_SUPERFRAME_SPLIT_BSF) += bsf/vp9_superframe_split.o
> +OBJS_BSF-$(CONFIG_VVC_METADATA_BSF) += bsf/h266_metadata.o
> +OBJS_BSF-$(CONFIG_VVC_MP4TOANNEXB_BSF) += bsf/vvc_mp4toannexb.o
> +OBJS_BSF-$(CONFIG_EVC_FRAME_MERGE_BSF) += bsf/evc_frame_merge.o
> +
> +$(addprefix libavcodec/, $(OBJS_BSF-yes)): CPPFLAGS += -I$(SRC_PATH)/libavcodec/
This is inconsistent with the behaviour for arch-specific subfolders.
It also interferes with the files not in the bsf-subfolder (like
h264_levels.o). Granted, it won't break anything, but it nevertheless
feels wrong.
- Andreas
More information about the ffmpeg-devel
mailing list