Added prerequisites that must be met before providing support for the APV codec - Added new entry to codec IDs list - Added new entry to the codec descriptor list - Bumped libavcodec minor version - Added profiles for APV codec
Signed-off-by: Dawid Kozinski <d.kozin...@samsung.com> --- doc/APIchanges | 3 +++ libavcodec/codec_desc.c | 9 +++++++++ libavcodec/codec_id.h | 1 + libavcodec/defs.h | 7 +++++++ libavcodec/profiles.c | 11 +++++++++++ libavcodec/profiles.h | 1 + libavcodec/version.h | 2 +- libavutil/version.h | 2 +- 8 files changed, 34 insertions(+), 2 deletions(-) diff --git a/doc/APIchanges b/doc/APIchanges index 75d66f87f3..3e65c53d8b 100644 --- a/doc/APIchanges +++ b/doc/APIchanges @@ -2,6 +2,9 @@ The last version increases of all libraries were on 2025-03-28 API changes, most recent first: +2025-04-22 - xxxxxxxxxx - lavu 60.3.100 - avcodec.h codec_id.h + Add AV_CODEC_ID_APV. + 2025-04-21 - xxxxxxxxxx - lavu 60.2.100 - log.h Add AV_CLASS_CATEGORY_HWDEVICE. diff --git a/libavcodec/codec_desc.c b/libavcodec/codec_desc.c index 9fb190e35a..2b2a4ddf6d 100644 --- a/libavcodec/codec_desc.c +++ b/libavcodec/codec_desc.c @@ -1985,6 +1985,15 @@ static const AVCodecDescriptor codec_descriptors[] = { .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_LOSSLESS, .mime_types= MT("image/jxl"), }, + { + .id = AV_CODEC_ID_APV, + .type = AVMEDIA_TYPE_VIDEO, + .name = "apv", + .long_name = NULL_IF_CONFIG_SMALL("Advanced Professional Video (APV) Codec"), + .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER, + .profiles = NULL_IF_CONFIG_SMALL(ff_apv_profiles), + + }, /* various PCM "codecs" */ { diff --git a/libavcodec/codec_id.h b/libavcodec/codec_id.h index 2f6efe8261..be0a65bcb9 100644 --- a/libavcodec/codec_id.h +++ b/libavcodec/codec_id.h @@ -329,6 +329,7 @@ enum AVCodecID { AV_CODEC_ID_DNXUC, AV_CODEC_ID_RV60, AV_CODEC_ID_JPEGXL_ANIM, + AV_CODEC_ID_APV, /* various PCM "codecs" */ AV_CODEC_ID_FIRST_AUDIO = 0x10000, ///< A dummy id pointing at the start of audio codecs diff --git a/libavcodec/defs.h b/libavcodec/defs.h index 24250f8af5..ec5d6348fe 100644 --- a/libavcodec/defs.h +++ b/libavcodec/defs.h @@ -194,6 +194,13 @@ #define AV_PROFILE_EVC_BASELINE 0 #define AV_PROFILE_EVC_MAIN 1 +#define AV_PROFILE_APV_422_10 33 +#define AV_PROFILE_APV_422_12 44 +#define AV_PROFILE_APV_444_10 55 +#define AV_PROFILE_APV_444_12 66 +#define AV_PROFILE_APV_4444_10 77 +#define AV_PROFILE_APV_4444_12 88 +#define AV_PROFILE_APV_400_10 99 #define AV_LEVEL_UNKNOWN -99 diff --git a/libavcodec/profiles.c b/libavcodec/profiles.c index 3cef82be3b..991f24135d 100644 --- a/libavcodec/profiles.c +++ b/libavcodec/profiles.c @@ -203,4 +203,15 @@ const AVProfile ff_evc_profiles[] = { { AV_PROFILE_UNKNOWN }, }; +const AVProfile ff_apv_profiles[] = { + { AV_PROFILE_APV_422_10, "422-10" }, + { AV_PROFILE_APV_422_12, "422-12" }, + { AV_PROFILE_APV_444_10, "444-10" }, + { AV_PROFILE_APV_444_12, "444-12" }, + { AV_PROFILE_APV_4444_10, "4444-10" }, + { AV_PROFILE_APV_4444_12, "4444-12" }, + { AV_PROFILE_APV_400_10, "400-10" }, + { AV_PROFILE_UNKNOWN }, +}; + #endif /* !CONFIG_SMALL */ diff --git a/libavcodec/profiles.h b/libavcodec/profiles.h index 33b7ffc17a..4892388149 100644 --- a/libavcodec/profiles.h +++ b/libavcodec/profiles.h @@ -77,5 +77,6 @@ extern const AVProfile ff_prores_profiles[]; extern const AVProfile ff_mjpeg_profiles[]; extern const AVProfile ff_arib_caption_profiles[]; extern const AVProfile ff_evc_profiles[]; +extern const AVProfile ff_apv_profiles[]; #endif /* AVCODEC_PROFILES_H */ diff --git a/libavcodec/version.h b/libavcodec/version.h index 0d4156e74a..b4616ccc27 100644 --- a/libavcodec/version.h +++ b/libavcodec/version.h @@ -29,7 +29,7 @@ #include "version_major.h" -#define LIBAVCODEC_VERSION_MINOR 0 +#define LIBAVCODEC_VERSION_MINOR 1 #define LIBAVCODEC_VERSION_MICRO 101 #define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \ diff --git a/libavutil/version.h b/libavutil/version.h index 4717cd562b..2979f80233 100644 --- a/libavutil/version.h +++ b/libavutil/version.h @@ -79,7 +79,7 @@ */ #define LIBAVUTIL_VERSION_MAJOR 60 -#define LIBAVUTIL_VERSION_MINOR 2 +#define LIBAVUTIL_VERSION_MINOR 3 #define LIBAVUTIL_VERSION_MICRO 100 #define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \ -- 2.34.1 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".