From b9ba9a898a9354b52c2154e25a0b5afcb359c5b1 Mon Sep 17 00:00:00 2001 From: wm4 Date: Fri, 12 Aug 2016 21:39:32 +0200 Subject: demux: add per-track metadata ...and ignore it. The main purpose is for retrieving per-track replaygain tags. Other than that per-track tags are not used or accessed by the playback core yet. The demuxer infrastructure is still not really good with that whole synchronization thing (at least in part due to being inherited from mplayer's single-threaded architecture). A convoluted mechanism is needed to transport the tags from demuxer thread to user thread. Two factors contribute to the complexity: tags can change during playback, and tracks (i.e. struct sh_stream) are not duplicated per thread. In particular, we update the way replaygain tags are retrieved. We first try to use per-track tags (common in Matroska) and global tags (effectively formats like mp3). This part fixes #3405. --- demux/stheader.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'demux/stheader.h') diff --git a/demux/stheader.h b/demux/stheader.h index 77d0eb1da3..f9d564c230 100644 --- a/demux/stheader.h +++ b/demux/stheader.h @@ -46,6 +46,8 @@ struct sh_stream { bool forced_track; // container forced track flag int hls_bitrate; + struct mp_tags *tags; + bool missing_timestamps; // stream is a picture (such as album art) -- cgit v1.2.3