X-Git-Url: https://git.carlh.net/gitweb/?p=dcpomatic.git;a=blobdiff_plain;f=doc%2Fdesign%2Fwho_fills_the_gaps.tex;fp=doc%2Fdesign%2Fwho_fills_the_gaps.tex;h=0000000000000000000000000000000000000000;hp=00e8ac39f6269c734557b8c7a8c4c73cfb80ae8a;hb=97632e5e91fc0e2c0a3dd84ed9a167f79e4bd14d;hpb=d02e03907214808ce9da9eb9a2267ff577e85559 diff --git a/doc/design/who_fills_the_gaps.tex b/doc/design/who_fills_the_gaps.tex deleted file mode 100644 index 00e8ac39f..000000000 --- a/doc/design/who_fills_the_gaps.tex +++ /dev/null @@ -1,30 +0,0 @@ -\documentclass{article} -\begin{document} - -There is a lot of dancing about to handle potential gaps and sync -problems in the FFmpeg decoder. It might be nicer if -\texttt{FFmpegDecoder} could just spit out video and audio with -timestamps and let the player sort it out, since the player must -already handle insertion of black and silence. - -The first question would be what time unit the decoder should use to -stamp its output. Initially we have the PTS, in some time base, and -we can convert that to seconds at the content's frame rate; this is -basically a \texttt{Time}. So we could emit video and audio content -with \texttt{Time} stamps. - -Then the player receives video frames, and can fill in gaps. - -The FFmpeg decoder would still have to account for non-zero initial -PTS, as it is expected that such `dead time' is trimmed from the -source implicitly. - -The snag with this is that hitherto \texttt{Time} has meant DCP time, -not time at a content's rates (before the content is potentially sped -up). As it stands, seek takes a \texttt{Time} in the DCP and the -content class converts it to content frames. This is then (rather -grottily) converted back to time again via the content frame rate. -All a bit grim. Everything should probably work in time rather than -frame rates. - -\end{document}