mpv/audio
wm4 bd5a02d080 player: detect audio PTS jumps, make video PTS heuristic less aggressive
This is another attempt at making files with sparse video frames work
better.

The problem is that you generally can't know whether a jump in video
timestamps is just a (very) long video frame, or a timestamp reset. Due
to the existence of files with sparse video frames (new frame only every
few seconds or longer), every heuristic will be arbitrary (in general,
at least).

But we can use the fact that if video is continuous, audio should also
be continuous. Audio discontinuities can be easily detected, and if that
happens, reset some of the playback state.

The way the playback state is reset is rather radical (resets decoders
as well), but it's just better not to cause too much obscure stuff to
happen here. If the A/V sync code were to be rewritten, it should
probably strictly use PTS values (not this strange time_frame/delay
stuff), which would make it much easier to detect such situations and
to react to them.
2016-01-09 20:39:28 +01:00
..
decode player: detect audio PTS jumps, make video PTS heuristic less aggressive 2016-01-09 20:39:28 +01:00
filter af_lavrresample: fix build on Libav 2015-11-26 00:25:28 +01:00
out ao_dsound: remove this audio output 2016-01-06 13:52:15 +01:00
audio.c audio: use AVFrames with more than 8 channels correctly 2015-10-26 15:54:00 +01:00
audio.h audio: move PTS setting out of the decoder 2015-11-08 17:22:56 +01:00
audio_buffer.c player: add audio drop/duplicate mode 2015-10-27 20:56:46 +01:00
audio_buffer.h player: add audio drop/duplicate mode 2015-10-27 20:56:46 +01:00
chmap.c chmap: remove MPlayer layouts 2015-11-07 15:22:30 +01:00
chmap.h chmap: remove MPlayer layouts 2015-11-07 15:22:30 +01:00
chmap_sel.c chmap_sel: prefer inexact equivalents over perfect upmix 2016-01-04 19:17:56 +01:00
chmap_sel.h chmap: remove MPlayer layouts 2015-11-07 15:22:30 +01:00
fmt-conversion.c Update license headers 2015-04-13 12:10:01 +02:00
fmt-conversion.h Update license headers 2015-04-13 12:10:01 +02:00
format.c audio: fix af_fmt_change_bytes() with spdif formats 2015-11-07 15:07:50 +01:00
format.h ao_lavc: use new sample format determination code 2015-09-10 23:38:42 +02:00
mixer.c mixer: fix volume initialization with --af=volume 2015-12-11 20:52:37 +01:00
mixer.h audio: change range of volume option/property 2015-05-22 18:35:03 +02:00