Log in

View Full Version : Really need 3.5 - 5Mbps x264 for blip.tv?


seandarcy
30th April 2011, 03:45
I'm putting a series of older school plays up on blip.tv. Some are from vhs, others are dv's from a consumer camcorder.

ffprobe Play2005.dv
.........
Input #0, dv, from 'Play2005.dv':
Duration: 00:04:51.55, start: 0.000000, bitrate: 28771 kb/s
Stream #0.0: Video: dvvideo, yuv411p, 720x480, 28771 kb/s, PAR 8:9

I've been using:

ffmpeg -i $INPUT -an -vcodec libx264 -level 30 -preset slower -tune film \
-bufsize 10000000 -maxrate 10000000 -b 1200k -threads 0 out.m4v

But blip.tv suggests:

Video Codec: H.264

Video Bitrate: 3.5Mbps - 5.0Mbps

This seems a huge bitrate to me for my type of input. Would tripling the bitrate really make a difference? I can't see it, but I've only got my monitor.

I guess what you'd really need to do is display both the original and the 264 on a large screen. Has anybody done this? Could you point me to anyone who has tried to evaluate bitrates?

Thanks,

sean

Dark Shikari
30th April 2011, 04:59
Use constant quality mode; it's silly to force a particular bitrate.

nm
30th April 2011, 10:46
I'm putting a series of older school plays up on blip.tv. Some are from vhs, others are dv's from a consumer camcorder.

ffprobe Play2005.dv
.........
Input #0, dv, from 'Play2005.dv':
Duration: 00:04:51.55, start: 0.000000, bitrate: 28771 kb/s
Stream #0.0: Video: dvvideo, yuv411p, 720x480, 28771 kb/s, PAR 8:9

I've been using:

ffmpeg -i $INPUT -an -vcodec libx264 -level 30 -preset slower -tune film \
-bufsize 10000000 -maxrate 10000000 -b 1200k -threads 0 out.m4v

Your source is interlaced and you don't deinterlace? Or is your $INPUT preprocessed video?

seandarcy
1st May 2011, 17:10
I'm not using constant quality, because I'm using 2 pass. As I understand it, you must use bitrate if you use 2 pass.

But maybe 2 pass doesn't make any sense anymore?

And yes, the video has been preprocessed. BTW, what happens if you use -deninterlace , and the input is _not_ interlaced? Is ffmpeg smart enough to recognize that nothing needs to be done?

sean

nm
1st May 2011, 17:22
I'm not using constant quality, because I'm using 2 pass. As I understand it, you must use bitrate if you use 2 pass.

But maybe 2 pass doesn't make any sense anymore?

It makes less sense in your case since you aren't bound by physical media capacity. CRF gives the same quality/bits ratio and you don't need to guess a suitable bitrate for a particular video. You may want to use VBV to limit maximum bitrates, but it's not absolutely necessary for progressive download Flash videos.

BTW, what happens if you use -deninterlace , and the input is _not_ interlaced? Is ffmpeg smart enough to recognize that nothing needs to be done?

Nope, it's not that smart. It will deinterlace and add artifacts to progressive video.

seandarcy
1st May 2011, 22:18
If I can't just specify -deinterlace, how do I check if a video is interlaced? I guess I could do it visually by looking for comb artifacts in high motion scenes, but that seems like too muck work!

ffprobe doesn't show anything useful. Anything else that checks for interlacing?

sean

Blue_MiSfit
2nd May 2011, 00:37
DV is almost always interlaced ;)