我做了一个 LaTeXbeamer
演示文稿,我想为一些幻灯片添加背景音乐。我确实设法使用media9
包,但只在一张幻灯片上播放,即在转到下一张幻灯片时声音停止。是否可以嵌入声音文件(比如 MP3),在特定幻灯片上开始播放X并停在另一张幻灯片上是(使用media9
或任何其他包)?
答案1
deactivate
media9 包含命令有一个选项\includemedia
。 的默认设置deactivate
是pageclose
在页面切换时卸载媒体播放器。 如果设置为onclick
,媒体将继续在后台播放。
要自动开始播放,activate
必须将命令选项设置为 或pageopen
,pagevisible
并将autoPlay
播放器的 Flash 变量设置为true
。在下面的代码中,当打开特定幻灯片时,声音会自动开始播放。离开幻灯片后,声音仍会继续播放。
为了自动停止特定幻灯片上的声音,我们需要一些在/O
该幻灯片的(页面打开)事件上运行的 JavaScript。
从 Adobe Reader 11 版开始,媒体内容必须占用 PDF 页面上的某些空间(宽度 x 高度),否则媒体将保持沉默。为了使声音注释不可见,我们将其设为透明,并隐藏声音播放器的进度条,并将整个内容放在幻灯片标题之后。
\documentclass{beamer}
\usepackage{media9}
\begin{document}
\begin{frame}{dumb frame}
\dots
\end{frame}
\begin{frame}{frame with sound \includemedia[
label=my_sound,
width=1ex, height=1ex, transparent,
activate=pageopen, deactivate=onclick,
addresource=sound_sample.mp3,
flashvars={
source=sound_sample.mp3
&autoPlay=true
&hideBar=true
},
]{}{APlayer.swf}}
\dots
\end{frame}
\begin{frame}{other frame}
\dots
\end{frame}
\pdfpageattr{/AA <</O <</S/JavaScript/JS (annotRM['my_sound'].activated=false;)>> >>}
\begin{frame}{frame where sound stops}
\dots
\end{frame}
\begin{frame}{another dumb frame}
\dots
\end{frame}
\end{document}