Mar 232010

I used to encode to mpeg4, which worked pretty well, but quality wasn’t the greatest. The files weren’t exactly tiny either.

/usr/bin/nice -n 19 ffmpeg -i "${directory}/${file}.tmp" -acodec libfaac -ab ${abitrate} -ac 2 -s ${width}x${height} -vcodec mpeg4 -b ${vbitrate} -flags +aic+mv4 -trellis 1 -mbd 2 -cmp 2 -subcmp 2 -g 250 -maxrate 512k -bufsize 2M -metadata title="${file}" "${directory}/${file}.mp4" >> "/tmp/${file}.log" 2>&1

Using libx264 seems to be an improvement. It works pretty well. It plays on my Roku digital video player, my Sandisk Sansa View, my Motorola Droid, JWPlayer, and Miro. I still need to test the xbox running xbmc, xbox 360, and ipod touch. Video files are pretty small.


/usr/bin/nice -n 19 ffmpeg -i "${directory}/${file}.tmp" -s 320x240 -vcodec libx264 -crf 26 -coder 0 -bf 0 -refs 1 -flags2 -wpred-dct8x8 -flags +loop -cmp +chroma -partitions +parti8x8+parti4x4+partp8x8+partb8x8 -me_method umh -subq 8 -me_range 16 -g 250 -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -b_strategy 2 -qcomp 0.6 -qmin 10 -qmax 51 -qdiff 4 -directpred 3 -trellis 1 -level 13 -maxrate 768000 -bufsize 3000000 -acodec libfaac -ac 2 -ar 48000 -ab 96k -metadata title="${file}" "${directory}/${file}.mp4" >> "/tmp/${file}.log" 2>&1

/usr/bin/MP4Box -tmp "${directory}" -inter 500 "${directory}/${file}.mp4"

I make no guarantees, but for me, it seems to work. An hour of video without commercials removed was around 205M, now it’s around 140M. The resolution is a bit smaller but the files aren’t as blocky and scale up fairly well.

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>