I have been studying the Overall Bit Rate and Bit Rate for my outputs. I am trying to get a barometer to ensure the quality of my DVD Rips while maintaining a decent file-size. I generally like my files between 1.4-1.6 GB.
When using x264 what would be a good guideline for Overall Bit Rate and Bit Rate?
When using Xvid what would be a good guideline for Overall Bit Rate and Bit Rate?
+ Reply to Thread
Results 1 to 30 of 114
Do understand that quality is subjective. I had a friend once who used to record over the air TV broadcasts in VCD format (very low resolution and bit rate) and to make it worse, his OTA reception was terrible and he had snow in everything he recorded. He thought what he was recording was perfectly acceptable but I doubt that anyone here would agree with him.
What exactly do you mean by Overall Bit Rate? This is a non-standard term. Do you mean maximum bit rate? Maximum bit rate is not that important. Average bit rate is.
In general Xvid is thought to be of vaguely similar quality to an MPEG-2 source at half the bit rate of the original. This is a vague guideline and your mileage and opinion may vary quite a bit in either direction (you may think half is too much or too little). You can do an encode to keep the same quality as the original but there are no controls over the bit rate used to do that. You use whatever bit rate is necessary to maintain the same quality and it can be much more than half or in some cases maybe less.
In general X.264 is thought to look as good as an MPEG-2 source at one fourth the bit rate. The same possibility to do a quality based encode is present here as with Xvid.
You should probably do encodes at various values and see what pleases you. Downsizing the video to a smaller resolution will let you get by with lower bit rate encodings. And note that for non-MPEG-2 sources (ie. DVD) my guidelines may not apply. For example if you have an H.264 source I would not want to imply that you can get by with one fourth the bit rate in re-encoding that.
Just do quality-based encodes for a quality that satisfies you and be happy with that and let the sizes fall where they may. Maybe try quant=3 for XviD and CRF=18-20 for x264.
You haven't even given the resolutions you plan on using. You haven't given the sources (Blu-Ray, DVD, downloaded stuff). Those make huge differences as well (for the final file size).
Last edited by kingaddi; 4th Sep 2012 at 11:23.
Just post back more information on what your sources are and if you want or need to resize down to a lower resolution. But my post provides a general guideline that you could just try and see if it works for you or not.
Last edited by kingaddi; 4th Sep 2012 at 11:21.
You can stay in this thread. Just post a new reply and rephrase your question.
Last edited by sanlyn; 23rd Mar 2014 at 08:07.
It is all subjective, but as you asked for opinions, I will give you my friendly opinion. For quality xvid, I like at least 1500Kbps usually higher maybe 2000 or as high as 4000, and for H264 maybe at least 1200Kbps, to 2500Kbps.
When I encode individual 5 minute music videos from DVD's I will use the higher bit rates. When I encode my favorite TV shows from DVD, I will use at least 2500Kbps xvid, or at least 1500Kbps H264. For an average movie or TV series I will encode maybe at 1500 xvid, or 1200 to 1500 H264.
It all depends on what you want. If you want DVD encodes at 1.5 gb, then I would just use the maximum bit rate to get that particular file size. Many people prefer quality based encoding, but I prefer 2 pass bit rates.
It's often pointed out that an action movie will *usually* need more bitrate than a drama. Except when the action movie source is very clean and the drama has noticeable film grain. It doesn't take much grain to greatly increase the bitrate requirements.
Save yourself the headaches and do crf encodes. Good luck.Pull! Bang! Darn!
Here's some examples for you.
I had a quick look at the last half a dozen DVD encodes as they're still sitting on my hard drive. Lowest bitrate, 1978Kbps (resolution 1024x424), highest 3414Kbps (resolution 1024x572). They were all encoded using x264's default settings (slow speed preset) and a CRF value of 18. Comparing each encode to the original DVD, I can't see any quality difference. Normally I use anamorphic encoding rather than resizing the DVDs "up" so the required bitrates would be lower (maybe around 500Kbps less) and if you resize "down" when encoding (ending up with 720x400 type resolutions) then you could reduce the bitrate even further, but resolution aside, there's an example of two DVDs encoded using the same CRF value who's final bitrates differ by around 1500Kbps.
As it happens, I also converted the two DVDs above to AVI using AutoGK and Xvid. Both were encoded using 2 pass encoding and I always aim for a final quality (according to AutoGK) of around 75%, which in single pass encoding Xvid-speak, would be fairly close to using a constant quantizer value of 2.60. The first had a final bitrate of 1129Kbps (resolution 720x304) while the bitrate for the second was 1820Kbps (resolution 720x400). So once again for pretty much the same quality (the same quality relative to the source, that is) there's a 700Kbps bitrate difference.
I know for a fact (they stood out at the time so I distinctly remember encoding them which made it easy to check), and once again encoded running 2 passes with Xvid to achieve around 75% quality as reported by AutoGK, the highest bitrate Xvid has ever used when I've encoded a movie is 2696Kbps (720x384) while the lowest so far is 536Kbps (720x304). Both of those were re-encoded using HD sources but regardless of the source, it's pretty much why I stopped trying to use the crystal ball to predict required bitrates not long after I started encoding.
For the record, based on my understanding of how Xvid works.....
If you use Xvid's default settings and run a single pass encode using a constant quantizer value of two, that's basically maximum quality for Xvid. The final file size is as big as it needs to be for maximum quality. If you run a 2 pass encode while specifying a higher birate or file size then chances are the output will be undersized. Well Xvid uses a minimum quantizer value of 1.0 by default these days, which as far as I'm aware is for the sole purpose of allowing it to achieve "greater than 100% quality" file sizes so people won't complain about their files being undersized while they specify unnecessarily high bitrates, but anyway.....
If you then run a 2 pass encode while specifying a file size which is 75% of the first, that gives you 75% "compression" or what AutoGK reports as 75% "quality". Around 70% to 75% is supposed to be the optimum quality/file size ratio for Xvid. Several times I've run a single pass 100% quality Xvid encode and compared it to a 75% quality 2 pass encode using the same source. With the 2 videos playing side by side I generally can't see any difference. If I pause each on identical frames to look for differences I can see them, but they're nothing significant and nothing you'd notice while watching the video in a normal manner.
Personally if I wanted to be specifying anything when encoding using Xvid I'd be specifying a target quantizer rather than bitrate. Even if you use a target quantizer of 2.0 you'll at least know every encode is maximum quality. Naturally the file sizes will vary quite a bit, but if I managed to overcome my OCD tendencies when it came to file sizes I'm sure anyone can.
When it comes to x264 encoding it has a true "quality" based method for single pass encoding. No need for compression tests to determine file sizes and messing with running 2 passes like the good old Xvid days, simply pick a quality setting you're happy with and use it for everything.
Last edited by hello_hello; 4th Sep 2012 at 04:45.
I'm not sure I agree with your view, but then realistically I'm not sure I fully understand it either. However.....
In the past, I've encoded the occasional poor quality mpeg2 video using Xvid, and to achieve a decent quality level, or lets just assume the maximum quality for Xvid, the bitrate used when encoding has been higher than the mpeg2 source. It doesn't happen very often, but if the source quality is low enough.... well the encoder will probably try to faithfully reproduce all the nasty stuff too and if that makes it really hard to compress.... Even though in theory mpeg4 is more efficient than mpeg2, wouldn't the relative "efficiency" apply more to both encoders being used to re-encode the same source rather than using one encoder to re-encode the mess the first encoder made of the job?
My understanding of x264 CRF vs 2 pass encoding.....
Yes CRF encoding tries to maintain a particular quality relative to the source, not a "fixed" quality, but then I'm not sure 2 pass encoding really does it any differently, or "caps the detail" as such. If you run a CRF encode at a particular quality, then use the resulting file size/bitrate for a 2 pass encode (all x264 settings being the same), the question is, will x264 distribute the bits (quality) any differently the second time? The general consensus seems to be (aside from our recent discussion in another thread) that no, it doesn't, or at least not in any significant way. If the peak bitrates are still the same, then I'm not sure how running 2 passes as such has "capped" the quality. If you run a 2 pass encode using a lower bitrate then you're "capping the quality" relative to the first encode, but I'm not convinced you wouldn't be "capping it" the same way by running a single pass encode using a higher CRF value too.
My understanding has always been (after reading many of an x264 developers posts over at doom9) when it comes to CRF vs 2 pass encoding, the only real difference is one of perspective. ie CRF encoding = known quality (relative to the source) but unknown file size, while for 2 pass encoding you're effectively specifying the quality by specifying the file size, only you've no idea what the quality you've specified might be.
I'm not trying to put anyone off using 2 pass encoding.... well yes as a general rule I guess I am..... but only because as a general rule specifying a known quality when encoding over specifying an unknown quality to keep file sizes consistent seems silly to me. Naturally there'll be occasions you'll need to hit a specific file size in preference to quality, but aren't most of us primarily encoding video in order to enjoy watching it, not to open Windows Explorer to marvel at a folder full of 350MB files?
Anyway, if someone can show me CRF encoding and 2 pass encoding do distribute the bits in a significantly different way (all else including the overall bitrate being equal), maybe I'll have a re-think, but there'd have to be an undeniable quality benefit to running 2 passes which I'm yet to see.
Last edited by hello_hello; 4th Sep 2012 at 07:33.
Just to clarify a potential wrongness in my previous post....
When I posted the maximum and minimum bitrates Xvid has used when I've encoded movies, I remembered the two encodes in question as one of them was particularly large, while the other particularly small. So at the time I made a possibly bad assumption that the max and min bit rates would apply to them, but of course that doesn't take resolution or runtime into account, so it's possible I've got encodes hiding somewhere which could use even lower or higher bitrates. I did skim through a hard drive full of AVI encodes looking for potential higher and lower bit rates and didn't find any, but while the original min and max bitrates I posted mightn't be 100% accurate, they're probably pretty close.
I had a look at the "source" used for the AVI encode which resulted in the highest Xvid bitrate. I didn't encode it myself and to be honest it's probably compressed a little hard, but I found it interesting that while it consists of x264 encoded video and 5.1ch AAC, with a resolution of 1280x688, it's total file size is 2.49GB. After I used AutoGK to convert it to AVI, aiming for 75% Xvid compression and converting the audio to 128k CBR MP3, the final file size was 3.32GB with the resolution reduced to 720x384.
Watching the two videos side by side with ffdshow displaying the input bitrate, the AVI bitrate never seemed to fall lower than the x264 source, but there was plenty of occasions where the bitrate of the Xvid version climbed around 1000Kbps higher despite such a reduction in resolution. I'm not sure what to make of that.... maybe as the method used for encoding the source is unknown there's nothing to be made of it.... but I found it interesting.
I did a few very quick CRF v 2 pass test encodes myself using a SD music video AVI as the source. For the CRF encode I used a value of 40 and then the resulting bitrate for a 2 pass encode. The closest I managed to get them in terms of bitrate was 7.9Kbps for the CRF encode and 8.0Kbps for the 2 pass encode.
Anyway, then I played the two encodes and went through them frame by frame. Both looked horrible. Lots of blocking etc. Did they look the same? Virtually never. Every single frame was obviously compressed differently, even if only slightly. Was one more faithful to the source? Well I'd probably say the CRF encode had a marginal edge there, but given that's what I'm hoping/expecting the result to be I'll refrain from saying that as neither was reproducing the source even remotely accurately.
If anything..... while obviously every frame had been compressed differently, there's no way I could say one was compressed "better" than the other. It's hard to explain what I mean, but as an example..... in some scenes where there was a closeup of the singer's face if I stopped each on identical frames, there might be a big section of blocking on the singer's cheek. Only in the CRF version that blocking might be centered several pixels higher than the 2 pass version. Or the next frame the singer's eye might be a blurred mess in one version, almost acceptable in the other, then move on one frame and the effect is reversed.
And if anything that's what I originally found when comparing a decent quality CRF encode with a 2 pass encode (same bitrate). I never looked at bitrates or quantizers etc because it never occurred to me to care, I just compared the two encodes in the same way. And when doing the same thing, comparing them frame by frame, there was often differences I could see in the way the frame had been compressed, but at decent quality levels those differences became so subtle as to seem irrelevant . There may have been more differences in frames with high motion vs frames with little motion, but it was so long ago I can't remember with any degree of accuracy.
Similar to my quick low quality test encodes, where each was compressing frames differently while failing to faithfully reproduce the source to an equal degree, when I compared high quality encodes I could pick differences, but couldn't say one was any "better" than the other. And when it came to actually watching the video rather than examining individual frames, well I could play them both simultaneously, sync them and switch between them running maximized on my monitor, and have no idea which was which unless I looked.
To me it was a bit like the times I compared running a single pass Xvid encode to a 2 pass encode using a similar bitrate. In the case of Xvid when comparing individual frames the differences are often obvious and I'd go out on a limb and say frame by frame 2 pass encoding does a better job, but 99% of the time at a high enough bitrate, while comparing the two as you play them, you'd probably need "golden eyes" to spot differences. By the time you do the same using x264 for encoding at a high quality.... well probably even golden-eyes wouldn't be enough.
Anyway, if you run some more comparison encodes I'll be interested to hear your conclusions, especially when it comes to how each encode looks to you. I guess comparing bitrates and quantizers etc might prove interesting too, but I tend to be more concerned about the former than the latter.
Is there any chance we could both try the same comparison encodes at the same bitrates using the same source? I guess "same source" might be the stumbling block, but surely there's some free to download, high quality video out there... even though nothing comes to mind immediately. I've got a fairly slow internet connection which loves to torture me by dropping the connection when I'm downloading large files directly (ie using a browser), so preferably something not too over the top file-size wise.
I'd assume when Dark Shikari claimed 2-passes is identical to CRF with the same overall file size, he was referring to perceived quality, not that each would be encoded in exactly the same way. In fact at the time he said CRF had an extremely marginal quality edge, which pretty much implies they're not.
Your "anything above CRF20" comment interests me. I can't say I've gone any higher when encoding HD video myself, but not so long ago I ran some comparison SD encodes using a high quality 720p source, originally to compare x264 to Xvid. It's one of the few times I've applied any sharpening while encoding. Just something subtle (I'm not a fan of sharpening as a rule) as the object of the exercise was to compare loss of fine detail. While I was at it I ran a few encodes at different CRF values. I think I stopped at 21, but even there x264 was still doing better than Xvid. However in the case of my test encodes at least, the difference between CRF 18 and CRF 21 was fairly marginal at best, so when you said anything above CRF 20 turns your eyeballs inside out that quite surprised me.
I guess though it depends on the source.... I've been involved in a couple of discussions regarding encoding video which has one or two hard to compress scenes, and there were quite noticeable differences while comparing CRF values between 18 and 20, but while that sort of thing seems to be the exception rather than the rule, in a couple of instances only CRF 16 managed them well, although x264 was still better than Xvid at CRF values of a little over 20. Whether 2 passes at similar bitrates would have done a better job, I'm not sure.
I'm still hanging on to XP for as long as possible, so I'm running a 32 bit version of x264 (whatever the latest release might be). It might be interesting to compare identical CRF encodes with your encodes using the 64 bit version.
I think I'm retiring from video stuff for today, but thinking about it I'm in PAL-Land so that's a problem..... not that I own a lot of stuff on disc. I gave most of mine to family members after encoding them a while back, but between the others in the house there's a fair collection.
I'd be surprised if any of my encoder settings change the CRF vs 2 pass equation. Well given I rarely stray from using the x264 defaults aside from choosing a particular speed preset, I'd certainly hope they don't. Once you start tweaking though.... well I'd still hope the same.
MediaCoder? I wonder..... we're basically using 2 different workflows for encoding. Me via AVIsynth, you.... not so much. Is that another hurdle? Should everything else be equal? How do we make for certain both encoders are being fed the same thing when encoding?
Not that I've ever used it and not that I really know anything about it, but I think I recall some not so kind things being said about MediaCoder in this forum on occasion. I assume there's nothing wrong with it or you wouldn't be using it....
Actually maybe that's where I should start..... install MediaCoder and repeat one of the DVD encodes I did a couple of days ago using the same x264 settings just to make sure nothing changes first. Then maybe a couple of 2 pass encodes to make sure each appears the same. Just to be sure. Maybe in a few hours when I've had a break and participated a little in that thing other people seem to refer to as normal life.
If anything, shouldn't 2 pass encoding achieve exactly the opposite? I mean, isn't that what the first pass is for, so the encoder knows exactly how the bits should be distributed the next time around? Given as I rule I wouldn't expect encoders have "off days", or need to warm up before they start encoding at peak performance levels, how would it matter if the video being encoded was 2 minutes, 20 minutes, or two hours long?
Well I'll play around a bit more tomorrow maybe, but for the moment I've had enough. I downloaded MediaCoder, installed it, and then grew to hate everything about it while still finding more ways to dislike it as I went. Okay, I'm new to it, things don't always work as expected, but even simple stuff like cropping was a chore. Some co-ordinate system instead of just "x" pixels top, "x" pixels bottom, but anyway....
Maybe you can tell me how to go about it. I want to encode the video using x264 default settings and a CRF value of 18 (what's with video quality as a percentage?) and the slow x264 speed preset. That's it. How do I specify CRF 18 when changing the percentage value causes it to jump from 20 to 15? After messing around for a bit I tried to use the various options for resetting everything but none of them actually seem to do anything. In the end the only way I managed it was by uninstalling the whole program and re-installing it again.
I don't know..... obviously when it comes to using the program you know what you're doing but to me nothing works as expected, or at least as I'd hope. As an example, when setting up x264 using MeGUI it has a "load defaults" button which actually works, and when you change the x264 speed preset all the appropriate advanced options change accordingly (including any you've fiddled with manually) and you pretty much know where you are. Change the x264 speed preset to Very Slow using MeGUI for example, and the number of B frames automatically changes to 8 in advanced options. If you've previously changed it to something else "--bframes" is removed from the command line, "--preset very slow" is added and you're using the speed preset as requested. If you want to modify it, say change the b frame value to 7, modifying it in advanced options after changing the speed preset adds "--bframes 7" to the command line again. Easy.
In MediaCoder's case there's no way to tell what's "default" for most settings, and even after a fresh install MediaCoder's defaults don't seem to be x264's defaults. Once you change an option it's added to the command line accordingly, but using B frames as an example again, once you specify a b frame value it's added to the command line, obviously over-riding any speed preset you've selected, but if you want to revert back to the default value for the speed preset, how do you know what it is? Logically I thought, if I specify the default value it'll just be removed from the command line as when using MeGUI.... because what's the sense in keeping "--bframes 8" when it's default for "--preset very slow".... and then I'll be able to tell what the default b frame value is, but nooooo....
Even some of x264's advanced options seem to labelled in MediaCoder-speak rather than standard x264-speak, so before I can confidently encode using MediaCoder I guess I'll have to spend a little time working on the translations.
Anyway..... I'll stop my MediaCoder whining and go back to running an MeGUI test encode. I've encoded a DVD using x264 defaults, no filtering, no resizing, now I'm going to run a 2 pass encode using the same bitrate to see if I can pick differences. I'm not saying there's anything wrong with your settings, but I'd at least like to be able to try a 2 pass vs CRF encode using both MeGUI and MediaCoder with nothing but the x264 defaults to see if I get consistent results between the two programs. Admittedly it's probably due to my own ignorance regarding using it, but I'm not exactly ready to trust MediaCoder yet.
Last edited by hello_hello; 5th Sep 2012 at 13:57.
I'm really not seeing how 2 pass encoding provides the encoder with a "bit bank" it can use to make withdrawals later on. Think of it this way..... you've specified a bitrate for a 2 pass encode, the encoder runs the two passes, it puts bits into a savings account as it goes, then later on in the encode it either starts spending extra bits willy-nilly or it doesn't hit the target bitrate/file size. What you're effectively saying is when you specify a bitrate the encoding quality improves as the encode progresses.
I guess one way to verify your theory might be take one of the scenes which produces a high bitrate after a 2 pass encode and splice it to the beginning of the movie (the actual source). Leave it where it is as well, but add it to the beginning. If I'm correct the bitrate used when encoding it at the beginning of the video will be the same as the bitrate used when encoding it later on. If you're correct the bitrate used at the beginning will be lower, but it doesn't seem logical to me that's what would happen, given the whole point of the first pass is to enable the encoder to distribute the bits for consistent quality over the entire video.
I might even try it myself at some stage. I'll just have to give myself a refresher course on how to get AVIsynth to encode two seperate videos as a single encode, and how to add cuts to the script so when it encodes the first copy of the movie, it only encodes a particular scene.
Last edited by hello_hello; 5th Sep 2012 at 15:50.
MeGUI. In this case the total height was 576 pixels, and I knew I wanted to crop 76 from the top and 76 from the bottom. But 76 from the bottom wasn't 500 has expected once I'd cropped 76 from the top, then the bottom cropping changed was 424. Once I worked out why changing the top cropping value changed the bottom one.....
Actually I just realized the tooltip also says "videoenc.x264.no_chroma_me" so I guess that lets me look up --no_chroma_me in the x264 wiki to find the default value.
The main area where MeGUI bugs me a little is when it comes to resizing. It's anamorphic encoding works fine, but when it comes to resizing and encoding using square pixels....it won't let you resize video up via the GUI, for instance it won't let you encode a DVD using an 854x480 type resolution, you've either got to use anamorphic encoding or resize a DVD down to something like 720x416, and it won't re-size using anything other than mod16 dimensions, which seems pretty poor these days. I recently put in a feature request to have that changed. I don't know if it'll happen soon, but.....
In the case of resizing, it's simply a matter of typing in your desired dimensions before saving the script. The issue is working the resizing out correctly (I'm really anal about aspect ratio distortion). I've got a few standard resizing dimensions locked in my head, but once I start cropping I get an aspect ratio calculator to work it out. Have you used this? I don't know what I'd do without it. Use my brain, maybe.... http://www.mediafire.com/?09v9bldu9a6hm00
Last edited by Slipster; 9th Sep 2012 at 16:16.
Okay, my test 2 pass encode just finished. Bitrate for a CRF 18, slow preset anamorphic DVD encode was 1178Kbps. I specified it as the bitrate for a 2 pass encode and according to MediaInfo I got 1177Kbps.
So, does one look better than the other? Absolutely not.
I'm very tired at the moment so I'll probably have another look tomorrow..... it may even be the following day as I think the real world is going to get in the way tomorrow.... but at the moment.....
The DVD I used is fairly average quality. Lots of encoding artifacts before it's even re-encoded in places. I had a look at a couple of known "noisy" scenes. What would probably have been film grain was turned into.... not ringing..... more like tiny dancing blocks in places during the original encoding process (gotta love my technical terms). In turn, in some static scenes, the little dancing blocks have been turned into larger dancing blocks by the re-encoding process. Keep in mind this is a DVD I'm viewing on a 51" Plasma while sitting 3 or 4 feet from the screen. If it was a HD video it wouldn't be upscaled by anywhere near the same amount and the effect of re-encoding would be far less obvious. If I was sitting back at normal viewing distance I probably wouldn't see any re-encoding quality differeces at all.....
So anyway, the result I got is exactly in line with what I described earlier. I went through sections of video frame by frame and while no two are exactly the same, neither are better or worse, just different. For instance where there's dark blue blocks dancing on a blue wall in the backgound, they're doing exactly the same dance in each encode, only they're just not dancing exactly in syc with each other. Same when I look at a close up of someone's face. Close to the screen I can see where some areas are compressed more than others, but while the effect isn't identical for each frame between encodes, there's no way I'd say one looked better than the other. Just slightly different. And this is "face up against the TV' type comparing, not viewing anywhere close to normal distance.
It probably won't be tomorrow, but as soon as I get a chance I'll have a re-look, in case I'm missing the obvious while half asleep, and I'll pick another disc and run a CRF 20, medium preset vs 2 pass encode to see if anything changes, but I'm not optimistic it will.
So I'm fairly confident I'm right, you're fairly confident you are, we're both testing our theories rather than simply talking about it, so what's going on? Why aren't we getting the same results?
PS. I saw your latest post after posting this one but there's no point in my reading it as I'll get to the end and not have taken any of it in. I'm not ignoring you, I've just got to sleep. Tomorrow.....
Last edited by hello_hello; 5th Sep 2012 at 16:56.