History

lavu/frame: add side data storing view ID for multi-view video

Anton Khirnov committed 9 years ago

Commit 6940a6d1 parent a7505ec6 files · +18 −1Browse files

Unified · Split

6 files
  1. doc/APIchanges +3 −0
  2. fftools/ffprobe.c +2 −0
  3. libavfilter/vf_showinfo.c +2 −0
  4. libavutil/frame.c +1 −0
  5. libavutil/frame.h +9 −0
  6. libavutil/version.h +1 −1
doc/APIchanges+3−0
@@ -2,6 +2,9 @@ The last version increases of all libraries were on 2024-03-07 · 1 unmodified line
22
33 API changes, most recent first:
44
5+2024-09-23 - xxxxxxx - lavu 59.38.100 - frame.h
6+ Add AV_FRAME_DATA_VIEW_ID.
7+
58 2024-09-23 - xxxxxxxxxx - lavc 61.18.100 - avcodec.h
69 Add a new flag AV_CODEC_EXPORT_DATA_ENHANCEMENTS for export_side_data.
710
fftools/ffprobe.c+2−0
@@ -2920,6 +2920,8 @@ static void print_frame_side_data(WriterContext *w, · 2919 unmodified lines
29202920 } else if (sd->type == AV_FRAME_DATA_FILM_GRAIN_PARAMS) {
29212921 AVFilmGrainParams *fgp = (AVFilmGrainParams *)sd->data;
29222922 print_film_grain_params(w, fgp);
2923+ } else if (sd->type == AV_FRAME_DATA_VIEW_ID) {
2924+ print_int("view_id", *(int*)sd->data);
29232925 }
29242926 writer_print_section_footer(w);
29252927 }
libavfilter/vf_showinfo.c+2−0
@@ -857,6 +857,8 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *frame) · 856 unmodified lines
857857 case AV_FRAME_DATA_AMBIENT_VIEWING_ENVIRONMENT:
858858 dump_ambient_viewing_environment(ctx, sd);
859859 break;
860+ case AV_FRAME_DATA_VIEW_ID:
861+ av_log(ctx, AV_LOG_INFO, "view id: %d\n", *(int*)sd->data);
860862 default:
861863 if (name)
862864 av_log(ctx, AV_LOG_INFO,
libavutil/frame.c+1−0
@@ -47,6 +47,7 @@ static const AVSideDataDescriptor sd_props[] = { · 46 unmodified lines
4747 [AV_FRAME_DATA_DOVI_RPU_BUFFER] = { "Dolby Vision RPU Data" },
4848 [AV_FRAME_DATA_DOVI_METADATA] = { "Dolby Vision Metadata" },
4949 [AV_FRAME_DATA_LCEVC] = { "LCEVC NAL data" },
50+ [AV_FRAME_DATA_VIEW_ID] = { "View ID" },
5051 [AV_FRAME_DATA_STEREO3D] = { "Stereo 3D", AV_SIDE_DATA_PROP_GLOBAL },
5152 [AV_FRAME_DATA_REPLAYGAIN] = { "AVReplayGain", AV_SIDE_DATA_PROP_GLOBAL },
5253 [AV_FRAME_DATA_DISPLAYMATRIX] = { "3x3 displaymatrix", AV_SIDE_DATA_PROP_GLOBAL },
libavutil/frame.h+9−0
@@ -234,6 +234,15 @@ enum AVFrameSideDataType { · 233 unmodified lines
234234 * bytes intact.
235235 */
236236 AV_FRAME_DATA_LCEVC,
237+
238+ /**
239+ * This side data must be associated with a video frame.
240+ * The presence of this side data indicates that the video stream is
241+ * composed of multiple views (e.g. stereoscopic 3D content,
242+ * cf. H.264 Annex H or H.265 Annex G).
243+ * The data is an int storing the view ID.
244+ */
245+ AV_FRAME_DATA_VIEW_ID,
237246 };
238247
239248 enum AVActiveFormatDescription {
libavutil/version.h+1−1
@@ -79,7 +79,7 @@ · 78 unmodified lines
7979 */
8080
8181 #define LIBAVUTIL_VERSION_MAJOR 59
82−#define LIBAVUTIL_VERSION_MINOR 37
82+#define LIBAVUTIL_VERSION_MINOR 38
8383 #define LIBAVUTIL_VERSION_MICRO 100
8484
8585 #define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t