From patchwork Sun Jan 28 17:49:50 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anton Khirnov X-Patchwork-Id: 45870 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a21:8786:b0:199:de12:6fa6 with SMTP id ph6csp1127440pzb; Sun, 28 Jan 2024 09:50:10 -0800 (PST) X-Google-Smtp-Source: AGHT+IFGZuIGeAvdTdrDX/6Ct9qDiGs4K4+WEgaog6KAOkBPmTypJyAOch/3IBXKt2itTUBwR/8c X-Received: by 2002:a17:907:9485:b0:a30:ff25:5dfc with SMTP id dm5-20020a170907948500b00a30ff255dfcmr3961648ejc.6.1706464210304; Sun, 28 Jan 2024 09:50:10 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1706464210; cv=none; d=google.com; s=arc-20160816; b=YaLW6RW77eSgcrvZcKam1Z2HjTzmHxJxvv0P5KYYNPPcP8aKJI71kwqIA2yEgYeXBh KpArHx1hd7YS4St5WAhY6wGTT0hFKzrPIqd8aUnX5W5Ui24J9xKMh/5/uPE+FDhxu7ko aMMMBd3tZLBtD4s2kvnxYa+5ysZ61pMyk3h5dKwmv8W9Vp+pof9YzbrftBs6Xa3R9Ryi tv3FbPvjB9hVCXKhDDpIOl+Xuga/srb4uuKmNGChpDaWUIXsxSIi1QUMFRhenkQH7bv6 V08/jc9TUsOq4fbXX1C8mR3vSuJ7azGVZXIvrlDj0FunIDNiorkhFeDxoKei5D4ENHx1 RQ2A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:reply-to:list-subscribe :list-help:list-post:list-archive:list-unsubscribe:list-id :precedence:subject:mime-version:references:in-reply-to:message-id :date:to:from:dkim-signature:delivered-to; bh=BPWWUbrEIzWVzHMU4pmTrN9G5awnqSofexGndEihvUM=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=aXXp9v1gK89s+aKNx7jNo+5tN6pk6euCIFEbdNLvtMaXI7SOo0bkeDpwVbRncf/U06 6zQzxH4gmiuzIUK6/MqJhbvjUdluZybLnNmcXURJH03yCcdIg3pYDldKzsRLmlt9oVRz IQtZPFlYrTm5dsg2BDSIh0d2rH9urdRpaLrVEOhXkYRSvd92ksvawM0RWxn0d981Xi6N SpK9AGIOn1sXvfR2ljadQHPk0nTomtztWMeQVXnNQ2rdmjYIf8NuJXFUXiiKUpy1562B eiyREaL4OvFKZc4EThMlm5O6IEj5asFXvlqGxnnWnCIOq/hx3l/6S7yjAYijcax+uqZI Y+bg== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@khirnov.net header.s=mail header.b=r7CNBrmw; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id xa14-20020a170907b9ce00b00a358c84a583si698053ejc.73.2024.01.28.09.50.09; Sun, 28 Jan 2024 09:50:10 -0800 (PST) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@khirnov.net header.s=mail header.b=r7CNBrmw; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 5B15C68D163; Sun, 28 Jan 2024 19:50:06 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail1.khirnov.net (quelana.khirnov.net [94.230.150.81]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id AF7E668CEE5 for ; Sun, 28 Jan 2024 19:49:59 +0200 (EET) Authentication-Results: mail1.khirnov.net; dkim=pass (2048-bit key; unprotected) header.d=khirnov.net header.i=@khirnov.net header.a=rsa-sha256 header.s=mail header.b=r7CNBrmw; dkim-atps=neutral Received: from localhost (mail1.khirnov.net [IPv6:::1]) by mail1.khirnov.net (Postfix) with ESMTP id 8FA801A09 for ; Sun, 28 Jan 2024 18:49:58 +0100 (CET) Received: from mail1.khirnov.net ([IPv6:::1]) by localhost (mail1.khirnov.net [IPv6:::1]) (amavis, port 10024) with ESMTP id UNdyq-AaR6uk for ; Sun, 28 Jan 2024 18:49:57 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=khirnov.net; s=mail; t=1706464197; bh=g5BNTrkNmNM1udlY8HpWCsZW0ysXx6Rs6AkfLdZnms0=; h=From:To:Subject:Date:In-Reply-To:References:From; b=r7CNBrmwoL4xmphPeQJMrgDO6LvnVSr0h6uiuhpDDNk0cNpdMJn9+E8MIA67eLu2i UY2WGQ1S5+xLUT34MsxQwanL+N10bjTI4CHCoJh5cwb8Z7IQnNPGZBEqxOlDh2vpVo dJ10MHQtEa/PpuB1exOn1q6C0d4SLWrnmN3mXfrp6KOPnpj0qybTg12ZhwS9eUUTPL IStkHC+jzWCkqtnIUnhT5+pOJ8Ol+Df8Uf7pbjvshYQOUsJrPVCQm2AnQ3WQCdZLJ+ M/pHg22//q4AwkjKoLIVPhg4H8JEU8V12/VK/16JsivQrv8ni8UqqHBWjFdLrvOYEM hn59lS2ZqJRMw== Received: from libav.khirnov.net (libav.khirnov.net [IPv6:2a00:c500:561:201::7]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "libav.khirnov.net", Issuer "smtp.khirnov.net SMTP CA" (verified OK)) by mail1.khirnov.net (Postfix) with ESMTPS id 817E891F for ; Sun, 28 Jan 2024 18:49:57 +0100 (CET) Received: from libav.khirnov.net (libav.khirnov.net [IPv6:::1]) by libav.khirnov.net (Postfix) with ESMTP id 43E5B3A0534 for ; Sun, 28 Jan 2024 18:49:57 +0100 (CET) From: Anton Khirnov To: ffmpeg-devel@ffmpeg.org Date: Sun, 28 Jan 2024 18:49:50 +0100 Message-ID: <20240128174950.20735-1-anton@khirnov.net> X-Mailer: git-send-email 2.42.0 In-Reply-To: References: MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH] lavc: move bitstream filters into bsf/ subdir X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: MXWWvCljODGm --- libavcodec/Makefile | 49 +--------------- libavcodec/bsf/Makefile | 57 +++++++++++++++++++ .../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, 58 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..21a39adc4b --- /dev/null +++ b/libavcodec/bsf/Makefile @@ -0,0 +1,57 @@ +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 + +# add libavcodec/ to include path for bsfs +$(addprefix libavcodec/, $(sort $(filter bsf/%,$(OBJS_BSF-yes)))): CPPFLAGS += -I$(SRC_PATH)/libavcodec/ + +OBJS += $(OBJS_BSF-yes) diff --git a/libavcodec/aac_adtstoasc_bsf.c b/libavcodec/bsf/aac_adtstoasc.c similarity index 100% rename from libavcodec/aac_adtstoasc_bsf.c rename to libavcodec/bsf/aac_adtstoasc.c diff --git a/libavcodec/av1_frame_merge_bsf.c b/libavcodec/bsf/av1_frame_merge.c similarity index 100% rename from libavcodec/av1_frame_merge_bsf.c rename to libavcodec/bsf/av1_frame_merge.c diff --git a/libavcodec/av1_frame_split_bsf.c b/libavcodec/bsf/av1_frame_split.c similarity index 100% rename from libavcodec/av1_frame_split_bsf.c rename to libavcodec/bsf/av1_frame_split.c diff --git a/libavcodec/av1_metadata_bsf.c b/libavcodec/bsf/av1_metadata.c similarity index 100% rename from libavcodec/av1_metadata_bsf.c rename to libavcodec/bsf/av1_metadata.c diff --git a/libavcodec/chomp_bsf.c b/libavcodec/bsf/chomp.c similarity index 100% rename from libavcodec/chomp_bsf.c rename to libavcodec/bsf/chomp.c diff --git a/libavcodec/dca_core_bsf.c b/libavcodec/bsf/dca_core.c similarity index 100% rename from libavcodec/dca_core_bsf.c rename to libavcodec/bsf/dca_core.c diff --git a/libavcodec/dts2pts_bsf.c b/libavcodec/bsf/dts2pts.c similarity index 100% rename from libavcodec/dts2pts_bsf.c rename to libavcodec/bsf/dts2pts.c diff --git a/libavcodec/dump_extradata_bsf.c b/libavcodec/bsf/dump_extradata.c similarity index 100% rename from libavcodec/dump_extradata_bsf.c rename to libavcodec/bsf/dump_extradata.c diff --git a/libavcodec/dv_error_marker_bsf.c b/libavcodec/bsf/dv_error_marker.c similarity index 100% rename from libavcodec/dv_error_marker_bsf.c rename to libavcodec/bsf/dv_error_marker.c diff --git a/libavcodec/eac3_core_bsf.c b/libavcodec/bsf/eac3_core.c similarity index 100% rename from libavcodec/eac3_core_bsf.c rename to libavcodec/bsf/eac3_core.c diff --git a/libavcodec/evc_frame_merge_bsf.c b/libavcodec/bsf/evc_frame_merge.c similarity index 100% rename from libavcodec/evc_frame_merge_bsf.c rename to libavcodec/bsf/evc_frame_merge.c diff --git a/libavcodec/extract_extradata_bsf.c b/libavcodec/bsf/extract_extradata.c similarity index 100% rename from libavcodec/extract_extradata_bsf.c rename to libavcodec/bsf/extract_extradata.c diff --git a/libavcodec/filter_units_bsf.c b/libavcodec/bsf/filter_units.c similarity index 100% rename from libavcodec/filter_units_bsf.c rename to libavcodec/bsf/filter_units.c diff --git a/libavcodec/h264_metadata_bsf.c b/libavcodec/bsf/h264_metadata.c similarity index 100% rename from libavcodec/h264_metadata_bsf.c rename to libavcodec/bsf/h264_metadata.c diff --git a/libavcodec/h264_mp4toannexb_bsf.c b/libavcodec/bsf/h264_mp4toannexb.c similarity index 100% rename from libavcodec/h264_mp4toannexb_bsf.c rename to libavcodec/bsf/h264_mp4toannexb.c diff --git a/libavcodec/h264_redundant_pps_bsf.c b/libavcodec/bsf/h264_redundant_pps.c similarity index 100% rename from libavcodec/h264_redundant_pps_bsf.c rename to libavcodec/bsf/h264_redundant_pps.c diff --git a/libavcodec/h265_metadata_bsf.c b/libavcodec/bsf/h265_metadata.c similarity index 100% rename from libavcodec/h265_metadata_bsf.c rename to libavcodec/bsf/h265_metadata.c diff --git a/libavcodec/h266_metadata_bsf.c b/libavcodec/bsf/h266_metadata.c similarity index 100% rename from libavcodec/h266_metadata_bsf.c rename to libavcodec/bsf/h266_metadata.c diff --git a/libavcodec/hapqa_extract_bsf.c b/libavcodec/bsf/hapqa_extract.c similarity index 100% rename from libavcodec/hapqa_extract_bsf.c rename to libavcodec/bsf/hapqa_extract.c diff --git a/libavcodec/hevc_mp4toannexb_bsf.c b/libavcodec/bsf/hevc_mp4toannexb.c similarity index 100% rename from libavcodec/hevc_mp4toannexb_bsf.c rename to libavcodec/bsf/hevc_mp4toannexb.c diff --git a/libavcodec/imx_dump_header_bsf.c b/libavcodec/bsf/imx_dump_header.c similarity index 100% rename from libavcodec/imx_dump_header_bsf.c rename to libavcodec/bsf/imx_dump_header.c diff --git a/libavcodec/media100_to_mjpegb_bsf.c b/libavcodec/bsf/media100_to_mjpegb.c similarity index 100% rename from libavcodec/media100_to_mjpegb_bsf.c rename to libavcodec/bsf/media100_to_mjpegb.c diff --git a/libavcodec/mjpeg2jpeg_bsf.c b/libavcodec/bsf/mjpeg2jpeg.c similarity index 100% rename from libavcodec/mjpeg2jpeg_bsf.c rename to libavcodec/bsf/mjpeg2jpeg.c diff --git a/libavcodec/mjpega_dump_header_bsf.c b/libavcodec/bsf/mjpega_dump_header.c similarity index 100% rename from libavcodec/mjpega_dump_header_bsf.c rename to libavcodec/bsf/mjpega_dump_header.c diff --git a/libavcodec/movsub_bsf.c b/libavcodec/bsf/movsub.c similarity index 100% rename from libavcodec/movsub_bsf.c rename to libavcodec/bsf/movsub.c diff --git a/libavcodec/mp3_header_decompress_bsf.c b/libavcodec/bsf/mp3_header_decompress.c similarity index 100% rename from libavcodec/mp3_header_decompress_bsf.c rename to libavcodec/bsf/mp3_header_decompress.c diff --git a/libavcodec/mpeg2_metadata_bsf.c b/libavcodec/bsf/mpeg2_metadata.c similarity index 100% rename from libavcodec/mpeg2_metadata_bsf.c rename to libavcodec/bsf/mpeg2_metadata.c diff --git a/libavcodec/mpeg4_unpack_bframes_bsf.c b/libavcodec/bsf/mpeg4_unpack_bframes.c similarity index 100% rename from libavcodec/mpeg4_unpack_bframes_bsf.c rename to libavcodec/bsf/mpeg4_unpack_bframes.c diff --git a/libavcodec/noise_bsf.c b/libavcodec/bsf/noise.c similarity index 100% rename from libavcodec/noise_bsf.c rename to libavcodec/bsf/noise.c diff --git a/libavcodec/null_bsf.c b/libavcodec/bsf/null.c similarity index 100% rename from libavcodec/null_bsf.c rename to libavcodec/bsf/null.c diff --git a/libavcodec/opus_metadata_bsf.c b/libavcodec/bsf/opus_metadata.c similarity index 100% rename from libavcodec/opus_metadata_bsf.c rename to libavcodec/bsf/opus_metadata.c diff --git a/libavcodec/pcm_rechunk_bsf.c b/libavcodec/bsf/pcm_rechunk.c similarity index 100% rename from libavcodec/pcm_rechunk_bsf.c rename to libavcodec/bsf/pcm_rechunk.c diff --git a/libavcodec/pgs_frame_merge_bsf.c b/libavcodec/bsf/pgs_frame_merge.c similarity index 100% rename from libavcodec/pgs_frame_merge_bsf.c rename to libavcodec/bsf/pgs_frame_merge.c diff --git a/libavcodec/prores_metadata_bsf.c b/libavcodec/bsf/prores_metadata.c similarity index 100% rename from libavcodec/prores_metadata_bsf.c rename to libavcodec/bsf/prores_metadata.c diff --git a/libavcodec/remove_extradata_bsf.c b/libavcodec/bsf/remove_extradata.c similarity index 100% rename from libavcodec/remove_extradata_bsf.c rename to libavcodec/bsf/remove_extradata.c diff --git a/libavcodec/setts_bsf.c b/libavcodec/bsf/setts.c similarity index 100% rename from libavcodec/setts_bsf.c rename to libavcodec/bsf/setts.c diff --git a/libavcodec/trace_headers_bsf.c b/libavcodec/bsf/trace_headers.c similarity index 100% rename from libavcodec/trace_headers_bsf.c rename to libavcodec/bsf/trace_headers.c diff --git a/libavcodec/truehd_core_bsf.c b/libavcodec/bsf/truehd_core.c similarity index 100% rename from libavcodec/truehd_core_bsf.c rename to libavcodec/bsf/truehd_core.c diff --git a/libavcodec/vp9_metadata_bsf.c b/libavcodec/bsf/vp9_metadata.c similarity index 100% rename from libavcodec/vp9_metadata_bsf.c rename to libavcodec/bsf/vp9_metadata.c diff --git a/libavcodec/vp9_raw_reorder_bsf.c b/libavcodec/bsf/vp9_raw_reorder.c similarity index 100% rename from libavcodec/vp9_raw_reorder_bsf.c rename to libavcodec/bsf/vp9_raw_reorder.c diff --git a/libavcodec/vp9_superframe_bsf.c b/libavcodec/bsf/vp9_superframe.c similarity index 100% rename from libavcodec/vp9_superframe_bsf.c rename to libavcodec/bsf/vp9_superframe.c diff --git a/libavcodec/vp9_superframe_split_bsf.c b/libavcodec/bsf/vp9_superframe_split.c similarity index 100% rename from libavcodec/vp9_superframe_split_bsf.c rename to libavcodec/bsf/vp9_superframe_split.c diff --git a/libavcodec/vvc_mp4toannexb_bsf.c b/libavcodec/bsf/vvc_mp4toannexb.c similarity index 100% rename from libavcodec/vvc_mp4toannexb_bsf.c rename to libavcodec/bsf/vvc_mp4toannexb.c