在一个投影仪帧内,我希望视频剪辑播放一次。然后我希望文本出现,并且剪辑的最后一帧保持可见。为了避免点击视频,我使用了函数activate=pageopen
内的选项media9
\includemedia
。因此,当文本出现时,视频会重播,因为它也嵌入到该幻灯片中。
我对实现上述目标的任何解决方案都持开放态度,但我尝试过的一件事是仅在第一张幻灯片中包含实际视频,而对于后续幻灯片,则包含一个“视频”,该视频只是实际视频的最后一帧(没有声音)。以下是 MWE(当然,缺少的视频文件除外):
\documentclass{beamer}
\usepackage{media9}
\begin{document}
\begin{frame}{Video and Text Frame}
\only<1>%
{%
\includemedia%
[%
width=\textwidth,%
height=.5625\textwidth,%
activate=pageopen,%
deactivate=onclick,%
addresource=VideoClip.mp4,%
flashvars=%
{%
source=VideoClip.mp4&%
autoPlay=true&%
loop=false%
}%
]%
{}{VPlayer.swf}%
}%
\only<2>%
{%
\includemedia%
[%
width=\textwidth,%
height=.5625\textwidth,%
activate=pageopen,%
deactivate=onclick,%
addresource=OneFrameVideo.mp4,%
flashvars=%
{%
source=OneFrameVideo.mp4&%
autoPlay=true&%
loop=false%
}%
]%
{}{VPlayer.swf}%
}
\onslide<2>{Text that appears}
\end{frame}
\end{document}
问题是视频,特别是单帧视频,需要一段时间才能显示出来。结果是幻灯片过渡非常难看,因为第一个视频在第二个视频替换它之前会暂时消失。有没有办法让视频看起来更无缝?如果我点击一次 pdf,难看的间隙就会消失(因为 pdf 查看器已经加载了视频?),但它会破坏相关帧和其他不相关帧的自动播放功能。
我也尝试使用\includegraphics
最后一帧的图像,但无论我如何尝试设置,尺寸都有些偏差(导致过渡以不同的方式变得丑陋)width
。
答案1
对我来说这个工作:
\documentclass{beamer}
\usepackage{media9}
\begin{document}
\begin{frame}{Video and Text Frame}
\includemedia%
[%
width=\textwidth,%
height=.5625\textwidth,%
activate=pageopen,%
deactivate=onclick,%
addresource=VideoClip.mp4,%
flashvars=%
{%
source=VideoClip.mp4&%
autoPlay=true&%
loop=false%
}%
]%
{}{VPlayer.swf}
\phantom{Text that appears}
\end{frame}
\begin{frame}{Video and Text Frame}
\includegraphics[
width=\textwidth,%
height=.5625\textwidth,%
]{lastFrameVideoClip}
Text that appears
\end{frame}
\end{document}
我已经得到lastFrameVideoClip.jpg
了ffmpeg
此指令