mpv/audio
wm4 614efea3e6 ad_lavc: work around braindead ffmpeg behavior
The libavcodec wmapro decoder will skip some bytes at the start of the
first packet and return each time. It will not return any audio data in
this state.

Our own code as well as libavcodec's new API handling
(avcodec_send_packet() etc.) discard the PTS on the first return, which
means the PTS is never known for the first packet. This results in a
"Failed audio resync." message.

Fixy it by remember the PTS in next_pts. This field is used only if the
decoder outputs no PTS, and is updated after each frame - and thus
should be safe to set.

(Possibly this should be fixed in libavcodec new API handling by not
setting the PTS to NOPTS as long as no real data has been output. It
could even interpolate the PTS if the timebase is known.)

Fixes the failure message seen in #3297.
2016-07-01 15:51:34 +02:00
..
decode ad_lavc: work around braindead ffmpeg behavior 2016-07-01 15:51:34 +02:00
filter Fix misspellings 2016-06-26 13:47:21 +02:00
out ao_oss: do not add an entry to audio-device-list if device file missing 2016-06-29 17:40:04 +02:00
audio.c audio: add a helper for getting frame end PTS 2016-06-27 15:12:21 +02:00
audio.h audio: add a helper for getting frame end PTS 2016-06-27 15:12:21 +02:00
audio_buffer.c Relicense some non-MPlayer source files to LGPL 2.1 or later 2016-01-19 18:36:06 +01:00
audio_buffer.h Relicense some non-MPlayer source files to LGPL 2.1 or later 2016-01-19 18:36:06 +01:00
chmap.c Relicense some non-MPlayer source files to LGPL 2.1 or later 2016-01-19 18:36:06 +01:00
chmap.h Relicense some non-MPlayer source files to LGPL 2.1 or later 2016-01-19 18:36:06 +01:00
chmap_sel.c Relicense some non-MPlayer source files to LGPL 2.1 or later 2016-01-19 18:36:06 +01:00
chmap_sel.h Relicense some non-MPlayer source files to LGPL 2.1 or later 2016-01-19 18:36:06 +01:00
fmt-conversion.c
fmt-conversion.h
format.c audio: add af_select_best_samplerate function 2016-03-17 02:31:05 -07:00
format.h audio: add af_select_best_samplerate function 2016-03-17 02:31:05 -07:00
mixer.c command: always allow setting volume/mute properties 2016-01-26 15:23:09 +01:00
mixer.h audio: change range of volume option/property 2015-05-22 18:35:03 +02:00