Hand-apply 75be314ee89fb2f4e783b4079f7fabf69e79d636 from master; fix hidden content...
authorCarl Hetherington <cth@carlh.net>
Mon, 15 Dec 2014 10:31:48 +0000 (10:31 +0000)
committerCarl Hetherington <cth@carlh.net>
Mon, 15 Dec 2014 10:31:48 +0000 (10:31 +0000)
TO_PORT
src/lib/ffmpeg_decoder.cc

diff --git a/TO_PORT b/TO_PORT
index 3ee2a133ea4febb0f390ba5b77267e0ec174fa22..e340470c258fa55c921d924f21211d0dc10ee9e6 100644 (file)
--- a/TO_PORT
+++ b/TO_PORT
@@ -1,4 +1,3 @@
-ce1c03bfd420c537105525d65f0ce28deb9d0bb5
 e7fe121fedc6d837c5bc8ab31e4b36c50497c4cd
 250ff9430c5e3727e2c5e24f81bc6d05a8700b49
 df4337db7d2f94f430caaf1b89f41dfae777799b
index e90c33c80a848bca3c3faecbd7032c1df72d0526..810aa775bda70082b8fc51a4979489e72d74c48d 100644 (file)
@@ -97,6 +97,14 @@ FFmpegDecoder::FFmpegDecoder (shared_ptr<const FFmpegContent> c, shared_ptr<Log>
                _pts_offset = - c->audio_stream()->first_audio.get();
        }
 
+       /* If _pts_offset is positive we would be pushing things from a -ve PTS to be played.
+          I don't think we ever want to do that, as it seems things at -ve PTS are not meant
+          to be seen (use for alignment bars etc.); see mantis #418.
+       */
+       if (_pts_offset > 0) {
+               _pts_offset = 0;
+       }
+
        /* Now adjust both so that the video pts starts on a frame */
        if (have_video && have_audio) {
                ContentTime first_video = c->first_video().get() + _pts_offset;