Producing a DVD slideshow

When shooting friends’ wedding, I decided it would be “way cool” to give them – beside an album (of course) – a DVD with a slideshow of the best pictures of D-Day. This is so simple to send to friends abroad, you just need a TV or a computer to play it and you can also include higher definition pictures if someone wants to have prints.

Now there is a set of tools that allows to do just that on Linux: dvd-slideshow. You start with preparing your slideshow (defining pictures, timing, transitions…) then create a DVD menu and generate an ISO which you burn on a DVD.

Linux being Linux, dvd-slideshow is command line based. And no, it is not as bad as it looks. However, this entry is based on a several months old successful experience with dvd-slideshow, so there may be some inaccuracies…

Preparing your slideshow

Before generating a slideshow, you need to produce an input file which specifies which pictures to use, how long each picture stays on the screen and which transition effect is applied.

The simplest way to do it is to put all of your pictures in one directory and run dir2slideshow. This will create the input file for the next step. Although there are many configuration options, this command should give you acceptable defaults:

dir2slideshow -n 'test slideshow' -t 5 -c 1 slideshow_pictures

This asks to take all the (JPEG or PNG) pictures from slideshow_pictures, show them for 5 seconds and then crossfade to the next picture for 1 second. It generates a test_slideshow.txt input file. Pretty standard defaults, but the link above gives you a description of all the options available.

An interesting switch is -p if you want to generate a PAL slideshow instead of default NTSC.

You have then a file describing your slideshow’s characteristics. Its syntax is fairly straightforward; you can hand-edit it if needed.

Generating the slideshow

Once you are happy with your input file, generating the slideshow is something as simple as typing:

dvd-slideshow -n 'test slideshow' -f test_slideshow.txt

If you add the switch:

-a audiotrack.ogg

it will add an audio track to the slideshow. The result will be 2 files: test_slideshow.xml and test_slideshow.vob. You can try playing your slideshow with mplayer:

mplayer test_slideshow.vob

If you are happy with it, you can move to defining the menu.

Making DVD menus

In my case, I needed a menu to allow people to either watch part of the images (church, group pictures, portraits) or all of them. So for each entry menu, I generated a new slideshow – yes that means that I ended up having pictures twice but given how much room there is on a DVD and the definition of the images, this wasn’t a problem (the final ISO was 600 Mb).

Once you have decided which menu entries you need and have a .vob and .xml file for each of them, you can move to the next utility: dvd-menu

Now you can chose which theme you want to use for your menu. You can download a few standard ones here. You can use a theme throughout your slideshow – including printing photo titles with a matching font and color or theme matching transitions.

I like to have rather simple design, so I just to adapted the image, font and menu title from the wedding theme – more info on theme format is available here. The goal was to present photo the best possible way, not to show off all of dvd-slideshow’s bells and whistles. So I ended up with this command:

dvd-menu -p \
-t ' Toutes les photos - Všechny fotky' \
-t ' Cérémonie - Svatební obřad' \
-t ' Photos de groupes - Skupinové fotky' \
-t ' Portraits des Mariés - Potrét manželů' \
-t 'Soirée aux 3 Barbus - Večer u třech vousatých' \
-t ' Portraits des invités - Portrét hostů' \
-f 'Toutes_les_photos.xml' \
-f 'Ceremonie.xml' \
-f 'Photos_de_Groupes.xml' \
-f 'Portraits_des_maries.xml' \
-f 'Repas_aux_3_Barbus.xml' \
-f 'Portraits_des_invites.xml' \
-n 'Florian & Anna' \
-theme wedding -fadein -fadeout

This basically connects .xml files to the buttons (labeled in French / Slovaquian). I used the -p switch to use the PAL standard. -n gives the DVD title and -theme, well, you guess it. This command creates a subdirectory “dvd_fs” where which now also has menus. You can test it with xine by typing:

xine -g -u 0 dvd:"`pwd`/dvd_fs/"

Generating an ISO file

At that stage, you may want to include a few extras to your DVD. I added high definition JPEG of the images, in case anyone wanted to have prints. Just drop them in your dvd_fs directory.

From there, typing:

mkisofs -dvd-video -udf -o dvd.iso dvd_fs

will create the dvd.iso file which you can burn on your DVD.

What about GUI?

There are 3 GUI tools for dvd-slideshow. Basically, they allow you to chose your images, duration, effects, transitions and will invoke dvd-slideshow for you. Unfortunately, none of them is really mature, simple and easy to use – hence this entry based on using the command line tools.

  • The first one is slideshow creator which is a KDE application based on Gambas. It does a good job, although its last update was from June 2006, so it doesn’t pick the latest additions to dvd-slideshow (version 0.80).
  • There also is jDVDSlideshow which is java-based. I got it running with sun-java(32bits). It didn’t like me changing any slideshow preferences (PAL / NTSC, etc) having dvd-slideshow complaining about a malformed line. Still, it does a decent job at generating a simple slideshow.
  • Lastly, there is Q DVD-author which is more than a slideshow creation program. It will allow you however to create slideshow, although it doesn’t offer a front end for all the options available in dvd-slideshow. You can also use it to generate the menus, apparently.

Last bullet points

  • In high-quality mode, dvd-slideshow will resize your images to JPEG of 720×480 possibly applying a bit of unsharp (if given the -sharpen parameter). A good alternative (if you are as picky as me) is to create your images directly at the right size using Phatch or an ImageMagick / bash script (with proper sharpening)
  • From a photographer’s perspective, the images quality on TV is quite appalling. Still, a DVD is a nice give-out that isn’t expensive and that anyone can enjoy.
  • I can only recommend that you pay a visit to the dvd-slideshow site where you will find lots of details a more information about how to make most of this set of utilities. This entry is mainly a rip-off of the complete example you find on their site.
  • One last thing: if your dvd-slideshow complains about “error during ffmpeg execution” when generating the .vob files, try changing ac3=1 to ac3=0 in /usr/bin/dvd-slideshow, line 561. It did the trick for me.

Here is what my DVD menu looked like:

sl1.jpg

and one of my favorite images from the wedding:

florianna.jpg

50 Responses to Producing a DVD slideshow

  1. Rolf says:

    Another thing that I was looking for….. Linked on meetthegimp.org!

  2. Steve says:

    Sweet – that’s just the kind of thing that I was looking for, as I do wedding photography…and run Linux! Thanks for the heads up!

  3. jcornuz says:

    Hi there!

    @Rolf, that is where you video based approach will shine 🙂

    @Steve, I think you can have a very productive DVD creation workflow on Linux with Phatch (or a bash script) and dvd-slideshow. You may need a bit of time to set it up, but then you can enjoy the power of command-line…

    Take care,

    Joel

  4. prokoudine says:

    What about Manslide? 🙂

  5. jcornuz says:

    Hi Alexandre,

    I didn’t know about Manslide – l am looking forward to giving it a try…

    Take care,

    Joel

  6. Arielle says:

    Hi! Thanks for the wonderful entry. I’ll be trying this out in the near future. Cheers! 🙂

  7. I’ve been playing around with Cinelerra for just this purpose. It’s mostly meant to edit moving images, but it imports still images too. It basically does everything that DVD-Slideshow does, except it has more options, and a (mostly) nice GUI.

    I’ll have to check out manslide too!

    Nice photo and menu design, by the way.

  8. jcornuz says:

    Hi Shane,

    I didn’t know Cinelerra was able to do that. I’ll give it a go.
    Thanks for the compliments; I take it for the photo, but the menu design is just copied from the invitation 🙂

    Take care,

    Joel

  9. SMK says:

    Hi there!
    Your article is very helpful for me! 5 minutes ago I was able to play my very first DVD slideshow. Although I have QDVDAuthor installed, this does not work for me. The errors that I get have to do with the audio settings. However, if I use the commands that you describe here (and adding the -mp2 switch to a few of them) everything works fine.
    Thanks again!
    Kind regards,
    SMK

  10. jcornuz says:

    Happy to help. Still have a couple of GUI apps to review (Cinelarra and Manslide).
    Slowly getting there 🙂

    Take care,

    Joel

  11. Anders Rink says:

    What about diascope? A relatively recent command line tool that I think is not so well known yet but it does generate higher quality output specifically for watching on television (DVD). It also encodes others formats such as mp4 and flv.

    I like it especially for the possibility to pan and zoom along curved paths and for its soft luma transitions.

    Anders

  12. jcornuz says:

    Hi Anders,

    Thanks for the pointer. I am planning an update on the subject, so I’ll keep diascope in mind. That’s the beauty of Open Source 🙂

    Take care,

    Joel

  13. jcornuz says:

    Just to keep this tutorial up-to-date, on Ubuntu Hardy, you need to install some extra sox packages otherwise sound would fail (Debian bug).

    See: http://www.debianhelp.org/node/11877

  14. d-fens says:

    there is just a gui missing badly for diascope, apart from that its quite appealing!

  15. Slavko says:

    “Svatební obřad” is in czech language, not in slovak… 😉

  16. jcornuz says:

    Hi Slavko,

    I won’t argue with you on that one 😛
    Translation was made by a Czech friend and was doomed “good enough” for Slovakians… Obviously, I don’t speak a single word of any (except Pivo and Nasdravi, but I am not sure if that counts…)

    Take care,

    Joel

  17. Slavko says:

    jcornuz,

    it is OK. I wrote this as joke, but my bad english restrain me to write more 🙂

    It is very nice and for the first time (for me), when someone write slovak instead czech. Mostly it is vice versa…

  18. A Kishore says:

    Check out my post on how to create a DVD slideshow in Windows Vista using the built in software.

  19. BDion says:

    To A Kishore

    Why? This is a Photography on Linux site. If I wanted to use MS products I wouldn’t hang out here.

  20. George says:

    You’ve got to be kidding me.

  21. colossus73 says:

    Hi,

    I’ve been developing a simple gui in GTK+2 for makind dvd-slideshows. The site is:

    http://imagination.sf.net

    Any comments, patches are appreciated. Thank you!

  22. Qeni says:

    Thanks a lot for the ac3=0 tip. I was getting frustrated with the error message

  23. Settor51 says:

    Such an inclusion strategy helps to shift the responsibility for preventing problems away from professionals and agencies to the youth themselves becoming responsible for decisions that affect their lives. ,

  24. fr3sh1 says:

    This is simply great :-)! Check out the kenburns effect, connected with the crossfade effect it gives really nice results.
    Cheers!

  25. Irwan says:

    I just created yet another GUI for it for simply editing the kenburns/crop effect of the images in the script. Check out:
    http://code.google.com/p/dvd-slideshow-editor/

  26. Cyrus says:

    Hello
    How can i install it?

  27. Engraver says:

    Thanks, very helpful article!

  28. Bill H says:

    This worked great for over 600 photos I’d scanned with my mother.

    However, using shell scripts, creating a VOB for each year (subdirectory) and dir2slideshow & dvd-slideshow, I can’t see a way to have audio that crosses ‘chapters’.

    So, no audio on this first DVD slide show! This is going to be a ‘Christmas surprise’. Maybe next year I’ll find an alternative way to do this…

    Thanks for sharing it.

    /Bill

  29. url.org says:

    Hi there! This is kind of off topic but I need some help
    from an established blog. Is it very difficult to set up your own blog?
    I’m not very techincal but I can figure things out pretty quick. I’m thinking about
    creating my own but I’m not sure where to start. Do you have any tips or suggestions? Thanks

  30. Start with taking dieting for 8 weeks out greasy foods:
    such as, microwave butter popcorn, potato chips, fried foods, and what I have learned over the years that on
    the whole.

  31. The next steps which cost more money and take a month to complete
    are as follows:. Investment in property in Barnsley is a smart choice for any investment agency or potential property owner or landlord.
    Start online and see what others are asking
    for properties similar to yours.

  32. I got this site from my friend who told me regarding this web page and at the moment
    this time I am visiting this website and reading very informative posts here.

  33. Thanks to my father who shared with me regarding this
    webpage, this webpage is truly amazing.

  34. You really make it appear really easy along with your presentation
    however I in finding this topic to be really one thing that I
    think I’d by no means understand. It seems too complicated and extremely extensive for me. I’m having a look ahead to
    your next submit, I’ll attempt to get the dangle of it!

  35. Joshua says:

    What’s up i am kavin, its my first occasion to commenting anyplace, when i read this article i thought i could also create comment due to this brilliant article.

  36. Its like you learn my thoughts! You appear to understand so much about this, such
    as you wrote the e-book in it or something. I think that you simply could do with a few p.
    c. to force the message home a little bit, however other than that, that is fantastic blog.
    A fantastic read. I will certainly be back.

  37. Osvaldo says:

    If some one wants to be updated with most up-to-date technologies afterward he must be pay a visit this website and
    be up to date every day.

  38. We are a group of volunteers and starting a new scheme in our community.
    Your web site provided us with valuable information to work on.

    You’ve done an impressive job and our entire community will be grateful to you.

  39. kidney says:

    Wow that was unusual. I just wrote an very long
    comment but after I clicked submit my comment didn’t show up.
    Grrrr… well I’m not writing all that over again. Anyways, just wanted to say excellent blog!

  40. Benito says:

    Blonde 32 yr old MILF Cherie Deville spreads and plays together with her
    toes Fiesty milf Brooke Tyler will get sizzling and attractive
    as she rides the monkey rocker Busty blonde babe, Rachel Aziani, takes a
    dip within the pool wearing her mesh bikini and offers you a
    real good take a look at all the things. Beautiful blonde secretary exposes her attractive mature physique in the office At 43 years old blonde
    Nella from AllOver30 seems nice with no garments
    Candy is the proper massive titted blonde to swing by and let Ryan and
    Kelly open up her legs! Curvy blonde milf slutsucks a young
    mans big hard cock and gets fucked by a younger man year outdated blonde housewife Jenna Covelli working towards bare
    yoga Novice MILF blonde Klary takes off all the pieces however high heel boots
    and shows her shaved pussy enjoying herself

  41. Hello mates, how is the whole thing, and what you desire to say regarding this post, in my view its genuinely remarkable designed for me.

  42. I do believe all of the concepts you’ve introduced to your post.

    They are very convincing and can definitely work. Nonetheless, the posts are too
    brief for beginners. May you please extend them
    a little from subsequent time? Thanks for the post.

  43. Hi there! This post couldn’t be written any better! Reading this post reminds me of my previous room mate!
    He always kept talking about this. I will forward this post to him.

    Pretty sure he will have a good read. Many thanks for sharing!

  44. Merri says:

    First of all I would like to say fantastic blog!
    I had a quick question in which I’d like to ask if you do not mind.
    I was curious to know how you center yourself and
    clear your head prior to writing. I’ve had a
    difficult time clearing my mind in getting my
    ideas out there. I do take pleasure in writing however it just seems like the first
    10 to 15 minutes are usually wasted just trying to figure out how to begin. Any ideas or hints?
    Thanks!

  45. It’s great that you are getting ideas from this paragraph as well as from our discussion made at this place.

  46. Simply wanna remark that you have a very nice website, I the design it
    actually stands out.

  47. News Script says:

    I conceive this site has some rattling excellent information for everyone : D.

Leave a reply to jcornuz Cancel reply