我正在用 Beamer 做演示,但嵌入视频时出现问题。当我使用多媒体包时,Adobe Reader 崩溃了;当我使用 media9 包时,内存容量超出了上限。
这是带有多媒体的代码:
\documentclass[transparent,dvips]{beamer}% if you use latex dvips ps2pdf
\usepackage{multimedia}
\begin{document}
\begin{frame}
\movie[width=10cm,height=8cm]{blabla}{x_unknown.avi}
\end{frame}
\end{document}
这是 media9 的代码:
\documentclass[transparent,dvips]{beamer}% if you use latex dvips ps2pdf
\usepackage{media9}
\begin{document}
\begin{frame}
\includemedia[
width=10cm,height=8cm,
addresource=x_unknown.FLV,
flashvars={source=x_unknown.FLV}]{blabla}{VPlayer.swf}
\end{frame}
\end{document}
FLV 文件为 15.8 MB 有谁遇到过这些问题并知道如何解决吗?
谢谢。
答案1
事实上,大型媒体文件可能会导致 TeX 出现错误中断
! TeX capacity exceeded, sorry [main memory size=3000000].
当进入latex
--> dvips
-->ps2pdf
路径时。在写入 DVI 文件时,当前页面中即将嵌入的媒体文件将保留在 TeX 的内存中,直到从排版好的页面中输出。如果文件很大或很多,这可能超出 TeX 默认能够处理的范围。
有两种方法可以处理这种情况:
第一个是增加 TeX 的主内存。你可以按照漏洞包文档的部分animate
。在 TeXLive-2012 中,可以设置的最大值是main_memory = 12435455
。
如果增加 TeX 的主内存没有帮助(这很可能适用于您的情况),则必须等待下一个 CTAN/TeXLive 更新media9
(v0.11)。届时bigfiles
将提供一个包选项。它将文件嵌入从 DVI 生成推迟到 PDF 生成步骤。但是,这要求使用ps2pdf
选项 调用-dNOSAFER
。否则,ps2pdf
将中止并出现错误invalidfileaccess
。