Are you having trouble converting CamTasia 6’s mp4 screencasts into the older flv format that we had in CamTasia 5 (and earlier)?
CamTasia 6 doesn’t include FLV as an output option – many of us have used it consistently in CamTasia 5 with JW FLV Media Player and TechSmith’s decision to remove it has caused some headaches.
ffmpeg is a free tool that easily allows us to convert .mp4 screencasts into .flv screencasts. Note that complex screencasts generate larger files – the mp4 example below is 10mb in size, the flv version with a similar visual quality is 20mb!
For testing I used my recent AppBeacon.com screencast. The version on Justin’s site is exported from CamTasia 5 using FLV using these custom settings:
- 15 frames per second (fps)
- 10 frames between key frames
- Variable 2-pass bitrate control
- 2000 kbps max bit rate
- MP3 22kHz Mono 96kBits/sec audio
Get ffmpeg exes from tripp.arrozcru.org (via the official ffmpeg site). I’m using 15625, the latest version (15815) crashed on my XP. Extract the compressed .7z using 7-zip.
For simplicity, extrac ffmpeg.exe and copy it into your working video directory. For long-term use add the ffmpeg directory into your path (else you have to copy ffmpeg.exe to your new project’s working directory each time).
The format to generate FLV output at the command line is:
ffmpeg -i INPUT -f flv -s WIDTHxHEIGHT -r 10fps -b 2000kbps -g 100
-acodec libmp3lame -ar 22050 -ab 48000 -ac 1 -y OUTPUT
The upper-case values need to be set by you, the rest of the values are good starting points for small files:
- INPUT is e.g. vid.avi or vid.mp4
- WIDTH is e.g. 640
- HEIGHT is e.g. 480
- OUTPUT is e.g. vid.flv
An example format to convert ‘vid.mp4′ into ‘vid.flv’ with a final size of 640×480 would be:
ffmpeg -i vid.avi -f flv -s 640x480 -r 10fps -b 2000kbps -g 100
-acodec libmp3lame -ar 22050 -ab 48000 -ac 1 -y vid.flv
The flags are:
- -f flv sets the output format to FLV
- -s 640×480 sets the output size, use e.g. 320×240 for a blog post
- -b 2000kbps sets the bitrate for the video, 2000 is fine for 640×480, use a smaller number if your output size is smaller
- -g 100 sets the gopsize (‘group of pictures’) to 100, this is ‘frames between a keyframe’, the keyframes are seek points and 100 is a large number (see below)
- -acodec libmp3lame gives mp3 which is required by flv videos
- -ar 22050 sets the audio rate to 22050Hz
- -ab 48000 sets the audio bitrate to 48kHz (i.e. high quality)
- -ac 1 sets the audio channels to 1 (i.e. mono)
- -r 10 fps set 10 frames-per-second, use a higher number for smoother animation (e.g. 25), larger numbers cause larger files
- -y is ‘force overwrite output file if exists’ (optional)
First I generated an mp4 version of the AppBeacon FLV file using CamTasia 6, the result is AppBeaconAutofps800kbps.mp4 (10mb).
Next I tried a variety of settings, finally settling on:
ffmpeg -i AppBeacon.mp4 -f flv -s 640x480 -r 15fps -b 700kbps -g 10
-acodec libmp3lame -ar 22050 -ab 48000 -ac 1 -y AppBeacon.flv
This generates AppBeacon15fps700kbps.flv (20mb) which has a similar size to the CamTasia 5 output and a similar quality.
Note the increased frame rate (15 fps), shorter gop size (10) and lower max bitrate (700kbps).
Now you have a simple, controllable way to convert CamTasia 6’s mp4 screencasts into flv files as generated by CamTasia 5.
Would you like a free eBook that covers all of this information (and more)? Our Little Book of Screencasting is in the works, to receive a notification when we release it send an email to: ebook_notify@procasts.co.uk
Ian is a professional screencaster (
ProCasts,
twitter) and blogger (
IanOzsvald.com).