[PLUG-AV] Result of 1st AV Workshop at Artifactory

Jason Nicholls jason at mindsocket.com.au
Fri Mar 25 17:16:41 WST 2011


> Very cool. Were both cores in use when encoding, or just one?

Depends on the app, ffmpeg and the x264 encoder use multicpu.

ffmpeg2theora doesn't.


> Do we want a quad core i7 box for this or something else new
> and beefy?

Think we need to decide on a quality level then we can do some
testing to see what minimum hw is needed for real-time encoding.


> Can you post your sample videos up with the command line you
> used so we can see the difference?

yup see below.


> > I've used ogg theora/vorbis but the output isn't as good for filesize...
>
> Was that using the suggested encoding from the wiki?:
>
> dvsink-command -- ffmpeg2theora - -f dv -F 25:5 --speedlevel 0 -v 4 -a 0 -c
> 1 -H 9600 -o - | oggfwd giss.tv 8001 $STREAMPW /CarlFK.ogg

ffmpeg2theora as I mentioned is single threaded, it took almost twice as
long to encode as vid running time on my laptop for the above command.

Output size was fairly good, quality was blocky.

Here are links to 3 encoded files. The first is the ogv (above command line)
and the following 2 are using x264 with different encoding constant rate
targets (constant rate factor, "crf"). The crf basically determines the
overall encoding bitrate and the lower the crf the higher the bitrate. There
are also presets that effect encoding speed with names like "slower" and
"faster" etc... These don't seem to make a difference with output quality,
only filesize. i.e. for crf 30 the "faster" version will be bigger than the
"slower" version. If we're not encoding real-time then the obvious thing is
to use the slower methods to achieve smaller files.


http://jason.mindsocket.com.au/plug/out-f2t.ogv (4.91Mb)
http://jason.mindsocket.com.au/plug/1pass-slower-28.mp4 (5.18Mb)
http://jason.mindsocket.com.au/plug/1pass-slower-30.mp4 (4.24Mb)

Original file size is raw-dv (NTSC) at 341.38Mb

As a comparison the crf 30 superfast is 6.21Mb (versus 4.24 above for
"slower"). Even with "superfast" it's still too slow to encode real-time on
my laptop but I think the reason for this is the filters I'm using which
make a real difference to output (deinterlacer, de-noiser, and unsharp).


A sample encoding line that I used for above is:

ffmpeg -i dvgrab-001.dv -vf yadif=1,hqdn3d,unsharp -acodec libfaac -ab
96k -ar 44100 -crf 28 -threads 0 -vcodec libx264 -vpre slower
1pass-slower-28.mp4



Jason Nicholls
jason at mindsocket.com.au
0430 314 857


More information about the AV mailing list