Skip to content

Commit f9b950f

Browse files
committed
vcomp/lavc: add Advanced Professional Video
+ reindent av_to_uv_map struct
1 parent 0ef4569 commit f9b950f

File tree

4 files changed

+19
-12
lines changed

4 files changed

+19
-12
lines changed

src/libavcodec/lavc_common.c

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
* @author Martin Piatka <[email protected]>
55
*/
66
/*
7-
* Copyright (c) 2013-2023 CESNET, z. s. p. o.
7+
* Copyright (c) 2013-2025 CESNET, zájmové sdružení právnických osob
88
* All rights reserved.
99
*
1010
* Redistribution and use in source and binary forms, with or without
@@ -64,16 +64,17 @@ static const struct {
6464
enum AVCodecID av;
6565
codec_t uv;
6666
} av_to_uv_map[] = {
67-
{ AV_CODEC_ID_H264, H264 },
68-
{ AV_CODEC_ID_HEVC, H265 },
69-
{ AV_CODEC_ID_MJPEG, JPEG },
70-
{ AV_CODEC_ID_JPEG2000, J2K },
71-
{ AV_CODEC_ID_VP8, VP8 },
72-
{ AV_CODEC_ID_VP9, VP9 },
73-
{ AV_CODEC_ID_HUFFYUV, HFYU },
74-
{ AV_CODEC_ID_FFV1, FFV1 },
75-
{ AV_CODEC_ID_AV1, AV1 },
76-
{ AV_CODEC_ID_PRORES, PRORES },
67+
{ AV_CODEC_ID_H264, H264 },
68+
{ AV_CODEC_ID_HEVC, H265 },
69+
{ AV_CODEC_ID_MJPEG, JPEG },
70+
{ AV_CODEC_ID_JPEG2000, J2K },
71+
{ AV_CODEC_ID_VP8, VP8 },
72+
{ AV_CODEC_ID_VP9, VP9 },
73+
{ AV_CODEC_ID_HUFFYUV, HFYU },
74+
{ AV_CODEC_ID_FFV1, FFV1 },
75+
{ AV_CODEC_ID_AV1, AV1 },
76+
{ AV_CODEC_ID_PRORES, PRORES },
77+
{ AV_CODEC_ID_APV, APV },
7778
};
7879

7980
codec_t get_av_to_ug_codec(enum AVCodecID av_codec)

src/libavcodec/lavc_common.h

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
* @author Martin Pulec <[email protected]>
44
*/
55
/*
6-
* Copyright (c) 2013-2023 CESNET, z. s. p. o.
6+
* Copyright (c) 2013-2025 CESNET, zájmové sdružení právnických osob
77
* All rights reserved.
88
*
99
* Redistribution and use in source and binary forms, with or without
@@ -77,6 +77,9 @@ enum {
7777
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(58, 26, 0)
7878
#define AV_CODEC_ID_AV1 AV_CODEC_ID_NONE
7979
#endif
80+
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(62, 3, 100)
81+
#define AV_CODEC_ID_APV AV_CODEC_ID_NONE
82+
#endif
8083

8184
#define Y210_PRESENT LIBAVUTIL_VERSION_INT >= AV_VERSION_INT(56, 42, 100) // FFMPEG commit 1c37cad0
8285
#define X2RGB10LE_PRESENT LIBAVUTIL_VERSION_INT >= AV_VERSION_INT(56, 55, 100) // FFMPEG commit b09fb030

src/types.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,7 @@ typedef enum {
101101
PRORES_422, ///< Apple ProRes 422
102102
PRORES_422_PROXY, ///< Apple ProRes 422 (Proxy)
103103
PRORES_422_LT, ///< Apple ProRes 422 (LT)
104+
APV, ///< Samsung's Advanced Profesional Video
104105
DRM_PRIME, ///< DRM Prime buffer, data contains struct drm_prime_frame
105106
VIDEO_CODEC_COUNT, ///< count of known video codecs (including VIDEO_CODEC_NONE)
106107
VC_COUNT = VIDEO_CODEC_COUNT,

src/video_codec.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -199,6 +199,8 @@ static const struct codec_info_t codec_info[] = {
199199
to_fourcc('a','p','c','o'), 1, 1, 0, 8, VCF_NONE, VC_OPAQUE, "apco"},
200200
[PRORES_422_LT] = {"PRORES_422_LT", "Apple ProRes 422 (LT)",
201201
to_fourcc('a','p','c','s'), 1, 1, 0, 8, VCF_NONE, VC_OPAQUE, "apcs"},
202+
[APV] = {"APV", "Advanceed Professional Video",
203+
to_fourcc('a','p','v','1'), 1, 1, 0, 0, VCF_NONE, VC_OPAQUE, "apv"},
202204
[DRM_PRIME] = {"DRM_PRIME", "DRM Prime buffer",
203205
to_fourcc('D', 'R', 'M', 'P'), sizeof(struct drm_prime_frame), 1, 0, 8, VCF_CONST_SIZE, VC_OPAQUE, "drm_prime"},
204206
};

0 commit comments

Comments
 (0)