[Vnc2swf-users] Shrinking a vnc2flv file
Status: Alpha
Brought to you by:
euske
From: Brian C. <B.C...@po...> - 2009-11-04 23:26:29
|
This isn't exactly a vnc2flv problem, but I thought this would be a reasonable place to ask anyway. I have used vnc2flv to create a screencast which is 9 mins 27 secs long, at a screen size of 992 x 608. [The large screen area is because the app I'm capturing really needs this much space]. The resulting file is 19.1MB. Now, I would like to reduce the file size significantly. I am happy to reduce the picture 2:1 so that it becomes 496 x 304. I can do this using ffmpeg (*), and the picture quality is usable for my purpose: ffmpeg -i in.flv -s 496x304 -r 4 -acodec copy -y out.flv However the resultant file is still 12MB in size, even after dropping the output frame rate to 4fps! I tried outputting using the 'flashsv' codec (**): ffmpeg -i in.flv -s 496x304 -vcodec flashsv -r 4 -acodec copy -y out-flashsv.flv but now the resultant file is even larger, at 16.2MB. LAME tells me it's encoding the audio at 32kbps mono, in which case that only accounts for about 2.2MB of the total. Here's what 'ffplay -stats' says about the source file (19MB): Input #0, flv, from 'in.flv': 0KB vq= 0KB sq= 0B Duration: 00:09:26.66, start: 0.000000, bitrate: 32 kb/s Stream #0.0: Video: flashsv, bgr24, 992x608, 12 tbr, 1k tbn, 1k tbc Stream #0.1: Audio: mp3, 22050 Hz, mono, s16, 32 kb/s 23.81 A-V: 4.297 aq= 79KB vq= 498KB sq= 0B and the version shrunk as 'flv' (12MB): Input #0, flv, from 'out.flv': vq= 0KB sq= 0B Duration: 00:09:27.00, start: 0.000000, bitrate: 232 kb/s Stream #0.0: Video: flv, yuv420p, 496x304, 200 kb/s, 4 tbr, 1k tbn, 1k tbc Stream #0.1: Audio: mp3, 22050 Hz, mono, s16, 32 kb/s 23.49 A-V: -0.027 aq= 79KB vq= 170KB sq= 0B and the version shrunk as 'flashsv' (16MB): Input #0, flv, from 'out-flashsv.flv': Duration: 00:09:27.00, start: 1257374691.83 A-V: 0.000 aq= 0KB vq= 0KB 0.000000, bitrate: 232 kb/s Stream #0.0: Video: flashsv, bgr24, 496x304, 200 kb/s, 4 tbr, 1k tbn, 1k tbc Stream #0.1: Audio: mp3, 22050 Hz, mono, s16, 32 kb/s 23.00 A-V: -0.015 aq= 80KB vq= 232KB sq= 0B So, do you have any suggestions about how I could improve this? Have I missed an important option from ffmpeg? Is there a better way to shrink a vnc2flv stream? Many thanks, Brian. (*) ffmpeg is the stock version from Ubuntu Jaunty: ii ffmpeg 3:0.svn20090303-1ubuntu6 multimedia player, server and encoder ii gstreamer0.10-ffmpeg 0.10.6.2-1ubuntu2 FFmpeg plugin for GStreamer ii libavcodec-unstripped-52 3:0.svn20090303-1ubuntu2+unstripped1 ffmpeg codec library ii libavdevice52 3:0.svn20090303-1ubuntu6 ffmpeg device handling library ii libavfilter0 3:0.svn20090303-1ubuntu6 ffmpeg video filtering library ii libavformat52 3:0.svn20090303-1ubuntu6 ffmpeg file format library ii libavutil-unstripped-49 3:0.svn20090303-1ubuntu2+unstripped1 ffmpeg utility library ii libpostproc51 3:0.svn20090303-1ubuntu6 ffmpeg video postprocessing library ii libswscale0 3:0.svn20090303-1ubuntu6 ffmpeg video scaling library (**) According to Wikipedia, flash video supports two tiling codecs specifically for screencasts, so I guess that 'flashsv' is one of those. I also saw a recent posting to this list showing '-vcodec flashsv'. |