summaryrefslogtreecommitdiffstats
path: root/demux/stheader.h
diff options
context:
space:
mode:
authorGuido Cella <guido@guidocella.xyz>2021-10-14 16:36:57 +0200
committerDudemanguy <random342@airmail.cc>2021-10-14 15:39:07 +0000
commit9954fe01a91494b7b631d50a35e7c1d43b729529 (patch)
tree9ee5492c1d4724fbb9323f0f9d36376fbf3836ec /demux/stheader.h
parent00669dabd3f57c4791e463120f73a1566cac2426 (diff)
downloadmpv-9954fe01a91494b7b631d50a35e7c1d43b729529.tar.bz2
mpv-9954fe01a91494b7b631d50a35e7c1d43b729529.tar.xz
player: add track-list/N/image sub-property
This exposes whether a video track is detected as an image, which is useful for profile conditions, property expansion and lavfi-complex. The lavf demuxer sets image to true when the existing check detects an image. When the lavf demuxer fails, the mf one guesses if the file is an image by its extension, so sh->image is set to true when the mf demuxer succeds and there's only one file. The mkv demuxer just sets image to true for any attached picture. The timeline demuxer just copies the value of image from source to destination. This sets image to true for attached pictures, standalone images and images added with !new_stream in EDL playlists, but it is imperfect since you could concatenate multiple images in an EDL playlist (which should be done with the mf demuxer anyway). This is good enough anyway since the comment of the modified function already says it is "Imperfect and arbitrary".
Diffstat (limited to 'demux/stheader.h')
-rw-r--r--demux/stheader.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/demux/stheader.h b/demux/stheader.h
index 6be3b16463..8d2129e05b 100644
--- a/demux/stheader.h
+++ b/demux/stheader.h
@@ -48,6 +48,7 @@ struct sh_stream {
bool dependent_track; // container dependent track flag
bool visual_impaired_track; // container flag
bool hearing_impaired_track;// container flag
+ bool image; // video stream is an image
bool still_image; // video stream contains still images
int hls_bitrate;