VideoHelp Forum




+ Reply to Thread
Results 1 to 12 of 12
  1. Hi,

    I hope this isn't a dumb question... When discussing VBR SVCDs I see varying recommendations about the value of the "Minimum Bitrate." Some posts say leave it at 0, others say set it at 500, another says to set it at 1200. I understand the basic idea of how VBR intelligently allocates bits to scenes that need them (e.g. action scenes) but I have this question:

    How does the encoder determine the bitrate to use for a given scene? In other words, if I set the minimum bitrate to be 500kbps, will the encoder actually use this bitrate for scenes with low motion? Seems like a scene encoded at 500 kbps would look reeeaaallly bad (low quality).

    On the one hand people say a lower minimum bitrate produces best results because it allows for a bigger pool of bits to be allocated to high motion scenes that need them via the VBR algorithm. On the other hand, it seems to me that a higher minimum bitrate would produce better results because it would ensure that no scenes would ever be encoded below that rate.

    What's the truth on this? What produces the best results? A low min bitrate or a high min bitrate?

    Thanks, vcddude
    Quote Quote  
  2. Member DJRumpy's Avatar
    Join Date
    Sep 2002
    Location
    Dallas, Texas
    Search Comp PM
    The answer depends on the type of VBR you use. If you use CQ mode, then the encoder has only a MIN, and MAX value. It will give any frame, as much, or as little bitrate as needed, to encode the frame. The only rule, is not to exceed either the MIN, or MAX values.

    Your question is directed more towards MultiPass-VBR.
    How does the encoder determine the bitrate to use for a given scene? In other words, if I set the minimum bitrate to be 500kbps, will the encoder actually use this bitrate for scenes with low motion? Seems like a scene encoded at 500 kbps would look reeeaaallly bad (low quality).
    In this case, the encoder would only drop to 500, ONLY if the scene required only 500 kb/s. If it required even less than 500, the encoder would stop at 500, going no lower. The encoder will not take bitrate from a frame, to the point of degrading quality to give to another frame needing more bitrate because of a low MIN setting.

    The process works like a checking account. As the encoder does the first pass using a MIN value of 500, it may find a frame that needs 700kb/s to encode (note that this is above the MIN value). Say the AVG setting is set to 1200, and the MAX is set to 2520. Since the frame only needs 700kb/s, the encoder can take those extra 500 kbits (1200-700=500kb), leaving the 700kb that the frame requires alone. It does this by finding the remaining bitrate after the frame has used what it requires. Subtracting the frames required bitrate (700), from the AVG value (1200-700=500kb) gives the 'available' kbits on that frame. This 500kb is put into the 'bank' as "available". When the encoder encounters a frame that has a bitrate need that is higher than the AVG setting (say a GOP needs the max kbits of 2520 due to alot of motion in this example), then it takes those all of those 'available' 500 kbits from the bank account, and applies them to that frame. In this example, it then has 0 kbits left to apply (the bank is empty), and our 2520kb frame still needs more (it got 500 kb from the bank, and added this to the AVG value of 1200, giving that frame 1700kb/s). It will NOT go back to the first frame we discussed to find more bits. It will continue to scan, until it finds other frames with 'available' bits that are not needed.

    This is of course a very linear process. The encoder examines each frame to see if it has any available bits. When it completes it's first pass, it knows exactly how much extra bits it has 'available' to apply to frames that are 'needy'. It also knows exatly how many frames are needy. This part is important too, because the encoder has to 'balance the account' for the entire MPEG. It will use all of it's 'available' bitrate if possible. The reason for this is due to the AVG setting. In order to produce a file that is XXX in size, it must give back what it takes, to meet that AVG kb/s. That is how you can use the AVG to specify exactly how big your output will be. If the encoder didn't 'balance' the account, then the file would be too large, or too small. What it borrows, it gives back.

    The AVG setting and the MAX setting affect how much bitrate is available to the entire MPEG, and where it can allocate 'available' bits. If your AVG or MAX setting is to low, then the entire MPEG would suffer as a result (In this case, think of a low AVG or low MAX setting as a sort of cap on quailty). The encoder would balance everything so the AVG bitrate met your AVG setting, even if this degrades your output. If the MAX is too low, it would not be able to apply 'available' bits beyond the MAX value. In this type of scenario, very few scenes would have excess ('available') bitrate, because the low AVG setting dictates the total overall available bitrate for the entire MPEG, and a low MAX setting limits where the encoder can give bitrate that it has marked as 'available'.

    One final thing. I've been mostly talking about this on the FRAME level. In actuality, many encoders work on the GOP (group of pictures) level (at least on the first pass of a multipass run). CCE works at the frame level on any additional passes after the first. I don't know how the other encoders handle additional passes. A group of pictures (GOP) is made up of multiple frames. If a particular GOP has a bitrate need of 1700 kb/second, and the AVG setting is 2000 kb/second, then there would be 300 kb/second that could be applied to another GOP that needs more bitrate.
    Impossible to see the future is. The Dark Side clouds everything...
    Quote Quote  
  3. In this case, the encoder would only drop to 500, ONLY if the scene required only 500 kb/s. If it required even less than 500, the encoder would stop at 500, going no lower.
    This is exactly what I am getting at. How does the encoder determine that a scene "requires only 500 kbps"? How is this required bitrate defined? Is it based on some computed quality-based criteria?

    thanks,
    vcddude
    Quote Quote  
  4. Member ZippyP.'s Avatar
    Join Date
    Nov 2002
    Location
    Lotus Land
    Search Comp PM
    [quote="vcddude"]
    In How does the encoder determine that a scene "requires only 500 kbps"?
    You also may ask,"How does the encoder determine that a scene "requires" any sort of bitrate?"

    It is the amount of change in the video from scene to scene (or GOP to GOP) that determines the bitrate required. High action/movement requires higher bitrate and static, low action shots require little. For a static scene the encoder will "draw" the video once and then not assign any more bits until the scene changes, thus the bitrate could in theory hit zero. Similarily, it can draw a scene and then if only part of a scene changes, it will assign more bits for only the part that changed, like in the credits for instance. In high action, everything is changing so a high bitrate is required.

    As far as the minimum setting is concerned, some players (mine) do not like the bitrate to be too low, I set it at 300 with padding enabled just in case it wants to go lower. You should set it as low as possible.
    "Art is making something out of nothing and selling it." - Frank Zappa
    Quote Quote  
  5. Member DJRumpy's Avatar
    Join Date
    Sep 2002
    Location
    Dallas, Texas
    Search Comp PM
    The bitrate should never hit 0. The audio track is also present in the stream adding to the bitrate. You also have bitrate for every I-frame, and any motion from frame to frame. Even stray noise, which is present in everything but pure digital sources (think Monsters Inc, which has no noise.), will use up bitrate. The VBV circuit present in all DVD players also controls the outflow of bitrate to prevent buffer under-runs.
    This is exactly what I am getting at. How does the encoder determine that a scene "requires only 500 kbps"? How is this required bitrate defined? Is it based on some computed quality-based criteria?
    The bitrate needed is defined first by the keyframe, and then by any frames containing data that uses additional bitrate. Each keyframe is encoded in it's complete form, leaving nothing out. A raw/uncompressed frame uses three bits per pixel. If your frame size was 480x480, then you would have something like (480x480)*3=691200 bits, or 675kb for that one frame in uncompressed format. For any second of video, using 23.976 frames per second, and assuming for this example, that we have 2 I-frames in our example second, that's at least 1350kb just for those two I-frames. Of course an I-frame is also compressed, but this is just an example. Now any motion in the next frame also uses some of the precious bitrate, adding to that 1350 total in our example. By the time we get to the end of our second, hopefully we have not exceeded our allowence of 2524kb/second (our MAX value in my first post/example). If we have, then a degradation in quality is the result. It would also degrade if there simply wasn't any 'available' bitrate in the 'bank' to apply to this GOP to help with it's bit shortage.
    Impossible to see the future is. The Dark Side clouds everything...
    Quote Quote  
  6. The Old One SatStorm's Avatar
    Join Date
    Aug 2000
    Location
    Hellas (Greece), E.U.
    Search Comp PM
    The reason everyone suggests different lower values, is because of limited knowledge of the subject!

    The story starts from VCD. It is 1150kb/s CBR.
    Then CVD came. The commercial releases was 2400Kb/s multipass CBR
    SVCD followed: The commercial releases was 2512kb/s multipassed CBR. (35min/ 74min CD).

    Anyway, in short terms: For the SVCD indestry, any CD based video format can't go lower the VCD bitrate (1150kb/s).
    In the real world, things are different: You can go for sure lower.

    But is it worth it? And how lower?

    Well, bad news. First of all, DVD standalones support what the commercial indestry points. And the Home material needs are minority. Don't forget most people turned DVD/2Hours now. They never bother with SVCD for example. And why to do it? DVD is far better! So, it is 1200 kb/s for them (~1150 for video).
    Also, a still picture needs some kind of bitrate to remain OK in the screen. In practice, those values, are: For VCD about 600kb/s, for CVD about 1000kb/s, for SVCD about 1200kb/s and for DVD about 1800kb/s.
    Also, that's the reason you never gonna see a DVB transmission less than 1500kb/s (352 X 576).

    Not that it is impossible, or it is out of specifics, to go lower, but lower gonna harm picture quality. Expecially with TMPGenc encoder. With CCE for example, set whatever you want, it is almost a cosmetic thing. CCE gonna count what you set for average. The other values, counts only in close determinations (ps: 2300min- 2500ave - 3000max)

    How the encoder calculate the bitrate?
    The encoder gonna calclulate how plus or minus the average bitrate can turn, by using calculation technics which it is impossible to explain in a forum post. Let say that the calculation is bases on temporal changes and normalization. Next question what is temporal and what normalise. Trust me, it never ends! you need to read a lot for the subject. Accept the "Hot to" and don't dig lower. It will only confuse you.

    Practical speaking, I can give a reason never go lower 1150.
    Use a lower than 1150kb/s value and your drive gonna die sooner. Why? Because DVD drivers can spin lower than realtime VCD, but that's no good for them! And that explains why DVD standalones DIE when someone use them mainly for x(S)VCDs based on lower values than ~1000.
    There are even reports for DVD standalones that they are able to play CDs but not DVDs any more. (Apex anyone?)

    Personally, even if you use CQ never go lower 1000. I follow this rule and I have the same standalone 3 years now, with no problems on both CD/DVD media. I know people , with the same standalone but using "Lower" bitrates and had to excange twice the same period.

    As you see, there are always things beyond "specifics".

    And a practical advice: If you want to choose lower values, then choose those of the various CD speeds. 1X, 2X, 4X, etc. It helps that way a bit.
    Quote Quote  
  7. Member DJRumpy's Avatar
    Join Date
    Sep 2002
    Location
    Dallas, Texas
    Search Comp PM
    SatStorm, this may sound like an attack and I apologize in advance if it does. Please consider it a difference of opinion, as I consider you to be an intelligent and thoughtful contributor here.

    Anyway, in short terms: For the SVCD indestry, any CD based video format can't go lower the VCD bitrate (1150kb/s).
    This is incorrect. The VCD format has a Maximum bitrate of 1150 (due to the original 1X drives). The VCD specification does not have a have a minimum bitrate that I'm aware of. VCD required only CBR values (MPEG-1 didn't support VBR encoding). It is common practive to have VCD's with less than the maximum (necessary to fit larger video onto a smaller number of discs).

    SVCD supports both, and also has no minimum value.
    The encoder gonna calclulate how plus or minus the average bitrate can turn, by using calculation technics which it is impossible to explain in a forum post.
    Not impossible. The encoder calculates the variance by the range between the MIN and MAX values. If you set your MIN to 0, your AVG to 2400, and your MAX to 2524, then your encoder could drop as low as 0, it could go as high as 2524. Initially, it would appear that it could only swing as far as the smallest minimum distance from AVG to either MIN, or MAX (whichever was smaller). This is not the case. With the above settings, it could still achieve a low min, with only 124kb seperating the AVG and MAX. This could be achieved by borrowing a large amount of bits from a relatively small number of low motion frames/gops, and distributing these bits over a large segment of the movie. This would limit the effectiveness of VBR, but it could still function within the parameters you've given it.

    The only exception is when AVG = MIN, or AVG = MAX. With this configuration, it cannot borrow from one, to give to the other, becuase there is no swing from AVG on one side of the equation (effectively producing a CBR encode).
    Practical speaking, I can give a reason never go lower 1150.
    Use a lower than 1150kb/s value and your drive gonna die sooner. Why? Because DVD drivers can spin lower than realtime VCD, but that's no good for them! And that explains why DVD standalones DIE when someone use them mainly for x(S)VCDs based on lower values than ~1000.
    I would also dispute this. If possible, I would like to see vendor, or consumer documentation of this problem, as this sounds more like a personal opinion. Almost all DVD players come with basic VCD, or SVCD compatability, and variable speed motors. These drive motors are designed for variable speeds ranging from off, to full tilt on, and have been in use for years, long before DVD, or even CD though of using them. If this was an issue, causing poor performance, we'd be getting DVD, and CD drives that supported only one speed. I own three DVD players, the oldest being well over 5 years old, the newest less than a year. All of them are functioning perfectly. If yours fail that quickly, I might suggest you try a different brand.
    Impossible to see the future is. The Dark Side clouds everything...
    Quote Quote  
  8. Member ZippyP.'s Avatar
    Join Date
    Nov 2002
    Location
    Lotus Land
    Search Comp PM
    Originally Posted by DJRumpy
    The bitrate should never hit 0. The audio track is also present in the stream adding to the bitrate. You also have bitrate for every I-frame, and any motion from frame to frame. Even stray noise, which is present in everything but pure digital sources (think Monsters Inc, which has no noise.), will use up bitrate.
    Like I said, in theory it could hit 0 (for the video portion), in practice is different. I tried to give a practical explanation for how bitrate is assigned (hope it helped a bit) but I bow to the superior technical knowledge of others on this board.
    "Art is making something out of nothing and selling it." - Frank Zappa
    Quote Quote  
  9. Wow, thanks for the detailed answers and the excellent ensuing discussion. You dudes rule and so does this site!

    vcddude
    Quote Quote  
  10. The Old One SatStorm's Avatar
    Join Date
    Aug 2000
    Location
    Hellas (Greece), E.U.
    Search Comp PM
    DJ, once again I didn't express myself fluently. It is not of course attack, and yes, now I read my post, it looks like it, so sorry. It wasn't my intention. It is the way I write: I translate from my native language to english. So expresions and some meaning ain't correct many times.
    Example: I say "Full" when I mean "Loaded".
    So sorry.
    You know, I'm Greek. And you americans have a phrase: That's Greek for me. Well, I can say that trying to ... simplify greek to english (because greeks is a very complicated language) ain't easy. Expecially if you learned english from MTV europe, as I did. So sorry.

    Now let me try clearify...


    "Anyway, in short terms: For the SVCD indestry, any CD based video format can't go lower the VCD bitrate (1150kb/s).
    "
    You answer:

    This is incorrect. The VCD format has a Maximum bitrate of 1150 (due to the original 1X drives). The VCD specification does not have a have a minimum bitrate that I'm aware of. VCD required only CBR values (MPEG-1 didn't support VBR encoding). It is common practive to have VCD's with less than the maximum (necessary to fit larger video onto a smaller number of discs).
    SVCD supports both, and also has no minimum value.

    Yes, okey, but you do a mistake: You think correct! Yes, thinking correct is a mistake! You know why? Because indenstry don't think correct. Indestry thinks specific. Thinks with average standards. So, for the stupid manufactor, mpeg 1 is only VCD and VCD is 1150kb/s. Who really cares if it can go lower in another form.
    By the way, can you tell me another form of commercial video distribution beyond VCD, CVD, SVCD and DVD? I don't know any...
    So, even if the specifications are flexible, those who control the indestry ain't. That's why many standalones don't support nothing beyond standard VCDs and SVCDs.

    About how to cover the VBR subject: You can describe it, you can't analyse it in a simply post. Also, encoders have a different approach for the subject. CCE and TMPGenc do multipass VBR really different for example. I'm not talking for how to set the values and what to expect, that is easy to say. There are plenty posts for this subject. But to analyse how the encoding really happens, well if it was that easy people wouldn't have to study years for it...

    Also, about DVD drivers, you answer
    "I would also dispute this. If possible, I would like to see vendor, or consumer documentation of this problem, as this sounds more like a personal opinion...."

    First of all I have to say that only an american would ask me something like that. The answer: There is no documention or anything. It is an objervation from various users. Do a forum search in 2000, while VCD and low xVCD was the hype (remember the xVCDs like KVCD, CVCD, SeVCD, etc) and you gonna see many reports for this subject. Or do a google/teoma search.
    Also, even if we say "These drive motors are designed for variable speeds ranging from off, to full tilt on, and have been in use for years, long before DVD, or even CD though of using them", you talk from which ones? From those from quality manufactures, or those from low quality ones?
    Because a DVD rom from China, to be cheap has a so low quality. Don't expect stuff like that from those. And about the 60% worldwide of the flexible and VCD/SVCD compatible DVD standalones comes from them.


    Anyway, it is 1.51AM, I have to go to sleep...
    Quote Quote  
  11. Member
    Join Date
    Aug 2002
    Location
    Sweden
    Search PM
    Make a test disc. If your player does not have any problems with VBR using a MIN below 1150 kbit/s then by all means use VBR MIN below 1150 kbit/s.

    Some players drives have problems to playback at a CD speed below 1x and above 2x. That's why it's safer to use a VBR MIN that won't give a CD speed below 1x. If your audio data rate is below 224 kbit/s then your min vide data rate should be higher than 1150 kbit/s to allow a minimum rotation speed of 1x.

    The SVCD standard does not say anything about a minimum bitrate but when some manufacturers have been using bad quality drives this has resulted in a practise of using 1 x speed as minimum when making most compatible SVCD discs.

    The same think could be said about the maximum data rate. If your drive speed in your player is higher than 2x then you can XSVCD with bitrates above the standard. But the disc is less compatible because fewer players can play them without problems.
    Ronny
    Quote Quote  
  12. Member DJRumpy's Avatar
    Join Date
    Sep 2002
    Location
    Dallas, Texas
    Search Comp PM
    LOL SatStorm, I was implying that I didn't want you to think that I was attacking YOU. No worries. It's all just chatter anyway...
    Impossible to see the future is. The Dark Side clouds everything...
    Quote Quote  



Similar Threads

Visit our sponsor! Try DVDFab and backup Blu-rays!