[FFmpeg-user] PTS resolution
pdr0
pdr0 at shaw.ca
Tue Feb 23 18:28:07 EET 2021
Mark Filipak (ffmpeg) wrote
> On 2021-02-23 00:41, Carl Zwanzig wrote:
> -snip-
>> If you're starting with mpeg-ps or -ts, ...
>
> There's no such thing as PTS in mpeg-ts. The transport stream sets the SCR
> (System Clock Reference)
> (aka TB) but the PTSs are in the presentation stream, stored as integer
> ticks of the SCR.
There is no such thing as /external/ timestamps, or container timestamps for
MPEG-TS that govern the timing. Nor are there external timestamps any CFR
container formats such as AVI. For AVI and MPEG-TS, MPEG-PS - the content
can be VFR (using field or frame repeats), but the container is CFR only.
Each coded frame cannot have variable display times in within a GOP.
> I've been told (at doom9.org) that MKV (which is a TS) stores PTSs but I
> find that hard to believe.
Then read the MKV documentation, section 16 "External Timestamp Files".
MKV is a container format. "TS" is usually reserved to denote for MPEG2-TS
"TS for Transport Stream" (such as .ts, .m2ts, .mts) , not so loosely as any
container stream.
FFMpeg and modern video container formats have to be able to handle VFR
without coding field or frame repeats - External timestamps are how PTS are
controlled. This is what video players use to control playback. When you
extract PTS from MKV using mkvextract or ffprobe, that's what you're getting
- an external timestamps file. When you multiplex in timestamps file with
mkvmerge, that's what you 're using - an external timestamps file. MP4, MOV,
FLV, also use this method.
--
Sent from: http://ffmpeg-users.933282.n4.nabble.com/
More information about the ffmpeg-user
mailing list