4

I'm trying to embed movies in my document. That would normally mean use the movie15 package but since I'm also using the xetex engine I have to use movie15_dvipdfmx. (See “ Can XeLaTeX | LuaTeX import movies? ”)

Here's a sample file.

\documentclass{article}
\usepackage[dvipdfmx]{movie15_dvipdfmx}
\usepackage{hyperref}
\begin{document}
Whispering-gallery mode in a quarter circle:
\begin{figure}[ht]
\includemovie[
  poster,
  text={\small(Loading Circle-m-increase3.mp4)}
]{6cm}{6cm}{Circle-m-increase3.mp4}
\end{figure}
\end{document}

See “Generating PDF Animations with LaTeX” for the tutorial and movie file.

Compiling this gives me these errors:

! Use of \pdfmdfivesum doesn't match its definition.
\pdf@filemdfivesum {->\pdfmdfivesum file{

l.4 \begin{document}

? s
OK, entering \scrollmode...
! Extra }, or forgotten \endgroup.
\ReFiCh@Check ...#1\edef #2{\ReFiCh@CheckSum {#3}}
                                                  \ifx #2\ReFiCh@Separator #...
l.4 \begin{document}

(/usr/local/texlive/2010/texmf-dist/tex/generic/oberdiek/se-ascii-print.def)
[1] (./movie_xetex.aux)
! Use of \pdfmdfivesum doesn't match its definition.
\pdf@filemdfivesum {->\pdfmdfivesum file{

l.12 \end{document}

! Extra }, or forgotten \endgroup.
\ReFiCh@Check ...#1\edef #2{\ReFiCh@CheckSum {#3}}
                                                  \ifx #2\ReFiCh@Separator #...
l.12 \end{document}

 )
(see the transcript file for additional information)
Output written on movie_xetex.pdf (1 page).
Transcript written on movie_xetex.log.

Just those four errors, two at \begin{document} and two at \end{document}. Thing is, if you open the pdf in a suitably capable reader (like Acrobat Pro or Reader), the animation does work.

I googled the error message but I didn't get anything useful. Any clues?

5

movie15_dvipdfmx defines for xetex a dummy \pdfmdfivesum such that it needs the file keyword (in pdftex file is optional). rerunfilecheck.sty loaded by hyperref now tries to use \pdfmdfivesum without the file keyword and fails. You can load rerunfilecheck before movie15_dvipdfmx to avoid the error, but it would be much better if movie15_dvipdfmx would find a saner solution.

2

The problem is that the package defines \pdfmdfivesum, a primitive which is provided by pdftex, by itself if it not defined yet. The used definition is \def\pdfmdfivesum file #1{#1}, but the file is actually marked optional in the pdftex manual! On solution would be to not redefine and use \pdfmdfivesum but use a replacement macro for it, e.g:

replace this code in the movie15_dvipdfmx package:

 \ifx\@undefined\pdfmdfivesum
  \def\pdfmdfivesum file #1{#1}
 \fi

with:

 \ifx\@undefined\pdfmdfivesum
  \def\@pdfmdfivesum file #1{#1}
\else
  \let\@pdfmdfivesum\pdfmdfivesum
 \fi

and replace all usages of \pdfmdfivesum file with \@pdfmdfivesum file.

I still get then an error:

** WARNING ** Could not open file: Circle-m-increase3.mp4
** WARNING ** Interpreting special command fstream (pdf:) failed.
...

but I think that is a different thing. I downloaded the MP4 file.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.