diff options
| -rw-r--r-- | TO_PORT | 1 | ||||
| -rw-r--r-- | src/lib/ffmpeg_decoder.cc | 8 |
2 files changed, 8 insertions, 1 deletions
@@ -1,4 +1,3 @@ -ce1c03bfd420c537105525d65f0ce28deb9d0bb5 e7fe121fedc6d837c5bc8ab31e4b36c50497c4cd 250ff9430c5e3727e2c5e24f81bc6d05a8700b49 df4337db7d2f94f430caaf1b89f41dfae777799b diff --git a/src/lib/ffmpeg_decoder.cc b/src/lib/ffmpeg_decoder.cc index e90c33c80..810aa775b 100644 --- a/src/lib/ffmpeg_decoder.cc +++ b/src/lib/ffmpeg_decoder.cc @@ -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; |
