brian d foy asked in his use.perl blog:
I haven't had time to figure out how to put the slides and audio together in one package. Has anyone done that before?
I've even had a good rant about how hard it is.
Slideshare
Put simply, if you're using slideshare, and your talk is short, and you move through your slides relatively slowly, and you have somewhere to host the audio, then using slideshare's "slidecasting" options is fine. I've got an example with one of my own talks on hiveminder.
If any of those conditions aren't true, then unless SlideShare's slidecasting software has become significantly better, avoid them. SlideShare is particularly bad if you have lots of fast slide transitions, because it only tries to cache "one frame ahead", and depending upon network conditions whoever is watching your slidecast may hit that frame before it's fully loaded, in which case it just gets dropped. I only really consider SlideShare suitable for death-by-powerpoint.
YouTube
These days I do videos, and upload them to youtube. The resolution sucks, and there's a 10 minute time limit, but everyone knows how it works, and it doesn't drop frames.
If you've gone to the effort of putting together a decent movie for youtube, then you can always place the full-resolution copy somewhere for people who care.
Video Production
So, how do you put together the video? For me, it's usually three steps:
1. Record the audio. If you've done this at a life presentation, great, having a real audience laugh at your jokes is fantastic. If not, then sit down with a mike and your slides, and pretend you have an audience. Give yourself a few seconds of complete silence at the start, you'll thank yourself when it comes to doing noise-removal later on.
If you flub while doing the recording, that's fine. Wait to get a few seconds of silence, then count back in with a "one, two, three". This makes it easy to see the flub when editing the soundtrack.
For sound editing, I recommend using audacity. It's free, open source, cross platform, and totally awesome. Edit out your flubs and any other sounds you don't want in your final cut. Do a noise removal and a normalisation on the whole soundtrack if it needs it.
2. Dump the slides as images. This can be really frustrating. I use OpenOffice.org (OOo), which has an "export as png/jpg/etc" feature. However it only exports the current slide, and my talks usually have hundreds. There are some OOo macros about that apparently do the job for you, but I haven't tried them. I don't know why "Export entire document as png/jpg/etc" isn't built into the software.
Instead of using OOo's image export, I use OOo's "Export as PDF" function. It works really well. I then convert the PDF into images, since there are lots of PDF->image converters out there. I personally use ghostscript for this job. Make sure all your images sort correctly in asciibetical order; so the images should be called slide-001.png, slide-002.png. If you just call your images slide-1.png and slide-2.png you'll hit sorting issues once you get to ten slides or more.
3. Make the movie. If you have decent movie-making software, this should be a matter of importing the slides, importing the audio, and moving the slides back and forth until they match the timing you want. This can take a lot of time if you have a lot of slides, audio, or both.
Production Software
If you're using a Mac, you probably have some awesome video editing software installed which does the job for you; Macs seem to be good at that. If you're using Linux, there seems to be a huge number of FOSS video editing solutions with great reviews.
If you're using Windows, then don't use Windows Movie Maker. You'll get about half way through your editing process, and it will die horribly. Really, it's awful.
I use CyberLink Power Director, because it came bundled with a camera I purchased a while ago. It's more suited to taking the video of your child riding a bike, adding some music and titles and burning onto DVD, but it does an okay job with talks production.
The export features on Power Director are awful, they all produce massively huge files (because that's what DVDs want), or crappy resolution files (designed for mobile devices), or produce audio artefacts when encoding(!), or want to use a widescreen aspect ratio (because you'll be playing your DVDs on your TV), or run incredibly slowly. With enough screwing around I found I could get it to use the xVid encoders which I probably installed from the Combined Community Codec Pack, which are fast and awesome and let me specify exactly what I want.
Now what?
Once your talk is exported, upload it to youtube, and publicise it. I recommend embedding it into one of your own pages, and then at the very least submitting that page to digg and stumbleupon. I recommend this over publicising the youtube page directly because it gives you more control over your content. It's much easier to provide a link to your other presentations, a download link, a list of further resources, or anything else when you control the page your viewers will be going to.
And that ends my not very brief write-up on how to put a talk on-line. If you want to see some that I've done myself, you can find an index on my talks page. My most popular so far (with over 100,000 views) has been fixing the web with greasemonkey.
I've recently been playing w/ screencasting, and I gotta say, its pretty fuggin kewl. The s/w is FOSS, not as spit & polish as commercial stuff, but very effective.
Obviously, you'll need a mic and whatever presentation s/w you use; note that the codec for this is for fairly static content, so avoid including Indiana Jones action sequences in your presentation!
To setup for screencasts:
Once you've got the compressed AVI, you can convert it to WMV using Window Movie Maker (tho I haven't tried that yet) or another converter (google up "avi to wmv"), but the quality tends to degrade a lot. CamStudio also provides a SWF converter, tho I haven't yet tried it with the Screen Cast Codec. With the original codec, the number of swf files was huge; hopefully the better codec with few keyframes will reduce the number of flash frames.
But the AVI file will likely be reasonable size; I recently did a 6.5 minute screencast with lots of keyboard/GUI interaction + audio that was only 13Meg (which sounds like a lot, but for video, thats pretty damn good.)
Then you'll just need to find a website to host it.
BTW: if you google up CamStudio you should find dozens of screencasts on how to use it.
I'd love to see the Perl community jump all over this tech; I wish I had more time to whip up some screencasts for some of my CPAN goods.