--- libavcodec/codec_desc.c | 8 ++++++++ libavcodec/codec_id.h | 1 + libavcodec/defs.h | 3 +++ libavcodec/profiles.c | 6 ++++++ libavcodec/profiles.h | 1 + libavformat/isom_tags.c | 4 ++++ 6 files changed, 23 insertions(+)
diff --git a/libavcodec/codec_desc.c b/libavcodec/codec_desc.c index dae2296689..36cbaf288e 100644 --- a/libavcodec/codec_desc.c +++ b/libavcodec/codec_desc.c @@ -1992,6 +1992,14 @@ static const AVCodecDescriptor codec_descriptors[] = { .long_name = NULL_IF_CONFIG_SMALL("Advanced Professional Video"), .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY, }, + { + .id = AV_CODEC_ID_PRORES_RAW, + .type = AVMEDIA_TYPE_VIDEO, + .name = "prores_raw", + .long_name = NULL_IF_CONFIG_SMALL("Apple ProRes RAW"), + .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_LOSSLESS, + .profiles = NULL_IF_CONFIG_SMALL(ff_prores_raw_profiles), + }, /* various PCM "codecs" */ { diff --git a/libavcodec/codec_id.h b/libavcodec/codec_id.h index d00d3fe121..adf263f6b0 100644 --- a/libavcodec/codec_id.h +++ b/libavcodec/codec_id.h @@ -330,6 +330,7 @@ enum AVCodecID { AV_CODEC_ID_RV60, AV_CODEC_ID_JPEGXL_ANIM, AV_CODEC_ID_APV, + AV_CODEC_ID_PRORES_RAW, /* 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 8ce5d424c9..b13e983b13 100644 --- a/libavcodec/defs.h +++ b/libavcodec/defs.h @@ -185,6 +185,9 @@ #define AV_PROFILE_PRORES_4444 4 #define AV_PROFILE_PRORES_XQ 5 +#define AV_PROFILE_PRORES_RAW 0 +#define AV_PROFILE_PRORES_RAW_HQ 1 + #define AV_PROFILE_ARIB_PROFILE_A 0 #define AV_PROFILE_ARIB_PROFILE_C 1 diff --git a/libavcodec/profiles.c b/libavcodec/profiles.c index 991f24135d..2cf733b0a2 100644 --- a/libavcodec/profiles.c +++ b/libavcodec/profiles.c @@ -182,6 +182,12 @@ const AVProfile ff_prores_profiles[] = { { AV_PROFILE_UNKNOWN } }; +const AVProfile ff_prores_raw_profiles[] = { + { AV_PROFILE_PRORES_RAW, "RAW" }, + { AV_PROFILE_PRORES_RAW_HQ, "HQ" }, + { AV_PROFILE_UNKNOWN } +}; + const AVProfile ff_mjpeg_profiles[] = { { AV_PROFILE_MJPEG_HUFFMAN_BASELINE_DCT, "Baseline" }, { AV_PROFILE_MJPEG_HUFFMAN_EXTENDED_SEQUENTIAL_DCT, "Sequential" }, diff --git a/libavcodec/profiles.h b/libavcodec/profiles.h index 4892388149..6f4011ff0c 100644 --- a/libavcodec/profiles.h +++ b/libavcodec/profiles.h @@ -74,6 +74,7 @@ extern const AVProfile ff_vp9_profiles[]; extern const AVProfile ff_av1_profiles[]; extern const AVProfile ff_sbc_profiles[]; extern const AVProfile ff_prores_profiles[]; +extern const AVProfile ff_prores_raw_profiles[]; extern const AVProfile ff_mjpeg_profiles[]; extern const AVProfile ff_arib_caption_profiles[]; extern const AVProfile ff_evc_profiles[]; diff --git a/libavformat/isom_tags.c b/libavformat/isom_tags.c index 69174b4a3f..151c42e9e6 100644 --- a/libavformat/isom_tags.c +++ b/libavformat/isom_tags.c @@ -240,6 +240,10 @@ const AVCodecTag ff_codec_movvideo_tags[] = { { AV_CODEC_ID_PRORES, MKTAG('a', 'p', 'c', 'o') }, /* Apple ProRes 422 Proxy */ { AV_CODEC_ID_PRORES, MKTAG('a', 'p', '4', 'h') }, /* Apple ProRes 4444 */ { AV_CODEC_ID_PRORES, MKTAG('a', 'p', '4', 'x') }, /* Apple ProRes 4444 XQ */ + + { AV_CODEC_ID_PRORES_RAW, MKTAG('a', 'p', 'r', 'n') }, /* Apple ProRes RAW */ + { AV_CODEC_ID_PRORES_RAW, MKTAG('a', 'p', 'r', 'h') }, /* Apple ProRes RAW HQ */ + { AV_CODEC_ID_FLIC, MKTAG('f', 'l', 'i', 'c') }, { AV_CODEC_ID_AIC, MKTAG('i', 'c', 'o', 'd') }, -- 2.49.0.395.g12beb8f557c _______________________________________________ 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".