1
mirror of https://github.com/mpv-player/mpv synced 2024-11-03 03:19:24 +01:00
mpv/common
wm4 05e4df3f0c video/audio: always provide "proper" timestamps to libavcodec
Instead of passing through double float timestamps opaquely, pass real
timestamps. Do so by always setting a valid timebase on the
AVCodecContext for audio and video decoding.

Specifically try not to round timestamps to a too coarse timebase, which
could round off small adjustments to timestamps (such as for start time
rebasing or demux_timeline). If the timebase is considered too coarse,
make it finer.

This gets rid of the need to do this specifically for some hardware
decoding wrapper. The old method of passing through double timestamps
was also a bit questionable. While libavcodec is not supposed to
interpret timestamps at all if no timebase is provided, it was
needlessly tricky. Also, it actually does compare them with
AV_NOPTS_VALUE. This change will probably also reduce confusion in the
future.
2016-08-19 14:59:30 +02:00
..
av_common.c video/audio: always provide "proper" timestamps to libavcodec 2016-08-19 14:59:30 +02:00
av_common.h video/audio: always provide "proper" timestamps to libavcodec 2016-08-19 14:59:30 +02:00
av_log.c player: fatal error if linked and compiled FFmpeg versions mismatch 2016-07-01 20:56:59 +02:00
av_log.h player: fatal error if linked and compiled FFmpeg versions mismatch 2016-07-01 20:56:59 +02:00
codecs.c Relicense some non-MPlayer source files to LGPL 2.1 or later 2016-01-19 18:36:06 +01:00
codecs.h Relicense some non-MPlayer source files to LGPL 2.1 or later 2016-01-19 18:36:06 +01:00
common.c Initial Android support 2016-02-10 21:29:36 +01:00
common.h audio/video: merge decoder return values 2016-02-01 22:03:04 +01:00
encode_lavc.c encode_lavc: Migrate to codecpar API. 2016-04-11 14:57:20 -04:00
encode_lavc.h encode_lavc: Migrate to codecpar API. 2016-04-11 14:57:20 -04:00
encode.h encode: make option struct local 2014-06-11 02:05:07 +02:00
global.h global: add client API pointer to library handle 2016-01-15 22:54:08 +01:00
msg_control.h client API: allow using msg-level option for log messages 2015-06-20 21:40:47 +02:00
msg.c msg: introduce partial line buffers per mp_log 2016-03-01 22:36:05 +01:00
msg.h Update license headers 2015-04-13 12:10:01 +02:00
playlist.c playlist: improve shuffle algorithm 2016-03-20 19:51:22 +01:00
playlist.h Relicense some non-MPlayer source files to LGPL 2.1 or later 2016-01-19 18:36:06 +01:00
tags.c Relicense some non-MPlayer source files to LGPL 2.1 or later 2016-01-19 18:36:06 +01:00
tags.h player: filter tags, add --display-tags option 2014-12-29 22:51:18 +01:00
version.c Relicense some non-MPlayer source files to LGPL 2.1 or later 2016-01-19 18:36:06 +01:00