diff options
author | Johns <johns98@gmx.net> | 2012-04-26 15:33:51 +0200 |
---|---|---|
committer | Johns <johns98@gmx.net> | 2012-04-26 15:33:51 +0200 |
commit | 6dd7c2680a21eca2e60b68be4d444f4b954f9444 (patch) | |
tree | 8f536a57699e2b7c920dff5480cabfc22f79d2a9 /video.c | |
parent | 3b5c1adef2642546c0008ec7c133e2df288e7405 (diff) | |
download | vdr-plugin-softhddevice-6dd7c2680a21eca2e60b68be4d444f4b954f9444.tar.gz vdr-plugin-softhddevice-6dd7c2680a21eca2e60b68be4d444f4b954f9444.tar.bz2 |
Skip audio sync while trick play.
Diffstat (limited to 'video.c')
-rw-r--r-- | video.c | 4 |
1 files changed, 3 insertions, 1 deletions
@@ -4464,6 +4464,7 @@ static void VaapiSyncDecoder(VaapiDecoder * decoder) goto out; } decoder->TrickCounter = decoder->TrickSpeed; + goto skip_sync; } // at start of new video stream, soft or hard sync video to audio if (!VideoSoftStartSync && decoder->StartCounter < VideoSoftStartFrames @@ -7626,7 +7627,7 @@ static int64_t VdpauGetClock(const VdpauDecoder * decoder) decoder->SurfaceField, atomic_read(&decoder->SurfacesFilled)); */ - // - 2 fields are future, + 2 in driver queue + // 1 field is future, 2 fields are past, + 2 in driver queue return decoder->PTS - 20 * 90 * (2 * atomic_read(&decoder->SurfacesFilled) - decoder->SurfaceField - 2 + 2); @@ -7693,6 +7694,7 @@ static void VdpauSyncDecoder(VdpauDecoder * decoder) goto out; } decoder->TrickCounter = decoder->TrickSpeed; + goto skip_sync; } // at start of new video stream, soft or hard sync video to audio if (!VideoSoftStartSync && decoder->StartCounter < VideoSoftStartFrames |