emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Leo Butler <Leo.Butler@umanitoba.ca>
To: luis antunes pena <antunespena@web.de>
Cc: Org mailing list <emacs-orgmode@gnu.org>
Subject: Re: Audio File in beamer and orgmode
Date: Wed, 2 Oct 2024 15:20:39 +0000	[thread overview]
Message-ID: <87v7yaila1.fsf@t14.reltub.ca> (raw)
In-Reply-To: <Zv1ADtD4VIv3G7gY@orm-t14s> (Orm Finnendahl's message of "Wed, 2 Oct 2024 14:43:58 +0200")

On Wed, Oct 02 2024, Orm Finnendahl <orm.finnendahl@selma.hfmdk-frankfurt.de> wrote:

> Hi Luís,
>
>  it doesn't work OOTB in org-mode, but you can always embed LaTex
> verbatim in Org files using the #+LATEX: prefix.
>
> My recommendation: Generate a LaTex file from org beamer with some
> blind text at a place where you need your link and then check, what
> you have to input there in order to get working links to audio files
> by directly rendering from the LaTeX file generated by org.
>
> This page might get you there:
>
> https://tex.stackexchange.com/questions/51632/embedding-sound-files-into-beamer-presentation-with-media9
>
> This part on the page:
>
> \includemedia[
>   addresource=igottafever.mp3,
>   flashvars={
>     source=igottafever.mp3
>    &autoPlay=true
>   }
>
> has to be marked up in org-mode like this to appear in the latex after
> export:
>
> #+LATEX: \includemedia[
> #+LATEX:   addresource=igottafever.mp3,
>
> #+LATEX:   flashvars={
> #+LATEX:     source=igottafever.mp3
>
> #+LATEX:    &autoPlay=true
> #+LATEX:   }
>
> Once it works, this could also be put into an elisp function and
> invoked on a keystroke prompting for the url and its name. I think you
> can also use #+BEGIN_LATEX: and #+END_LATEX: to avoid repeating the
> #+LATEX on every line.

You can use `org-link-set-parameters' to set a custom handlers for a link
type.

Here is a simple example:

#+begin_src elisp
(org-link-set-parameters "play" :export #'(lambda (path description backend info)
					    (message "path=%s description=%s backend=%s info=%s" path description backend info)
					    (cl-case backend
					      ((beamer latex)
					       (format "\\href{run:%s}{%s}\n" path description))
					      (t
					       (format "")))))
#+end_src

Then, the link

[[play:vlc --rate 3 --loop --fullscreen unfolding.mp4][unfolding.mp4]]

will be exported as a link in the beamer file that runs that command.

For your purposes, with Orm's example,

#+begin_src elisp
(org-link-set-parameters "mp3emb" :export #'(lambda (path description backend _info)
					    (cl-case backend
					      ((beamer latex)
					       (format
                                               "\\includemedia[addresource=%s,flashvars={source=%s&autoPlay=true}]{\\fbox{%s}}{PLAYER}\n"
                                               path path description))
					      (t
					       (format "")))))
#+end_src

should allow you to use a link like

[[mp3emb:music.mp3][Background noise]]

in your Org file.

Note that you do need to set the PLAYER.

Best,
Leo

>
> --
> Orm
>
>
> Am Mittwoch, den 02. Oktober 2024 um 11:50:10 Uhr (+0200) schrieb luis
> antunes pena:
>> Dear all,
>> 
>> I'm working on a presentation in beamer using
>> orgmode and couldn´t find information on how to
>> include an audio file in orgmode to be converted
>> to beamer and a pdf.
>> 
>> Is there any example that you could share?
>> 
>> Thanks in advance.
>> 
>> Luís
>

-- 
---
Best regards,
Dr Butler

      parent reply	other threads:[~2024-10-02 15:26 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-10-02  9:50 Audio File in beamer and orgmode luis antunes pena
2024-10-02 12:43 ` Orm Finnendahl
2024-10-02 15:07   ` luis antunes pena
2024-10-02 17:51     ` Orm Finnendahl
2024-10-02 15:20   ` Leo Butler [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87v7yaila1.fsf@t14.reltub.ca \
    --to=leo.butler@umanitoba.ca \
    --cc=antunespena@web.de \
    --cc=emacs-orgmode@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).