• Join
  • Sign In with my.TI Login
Texas Instruments
  • Products
  • Applications
  • Tools & Software
  • Support & Community
  • Sample & Buy
  • About TI
Sample & Purchase Cart Sample & Purchase Cart
  • Search
  • Advanced
TI E2E™ Community
  • Support Forums
  • Blogs
  • Groups
  • Videos
  • 简体中文
  • More ...
TI Home » TI E2E Community » Support Forums » Embedded Software » Multimedia Software Codecs » Multimedia Software Codecs forum » H264 dynamic targetbit rate BUG. Doubling output rate.
Share
Multimedia Software Codecs
  • Forum
Options
  • Subscribe via RSS

Forums

H264 dynamic targetbit rate BUG. Doubling output rate.

This question is answered
Michael Stuur
Posted by Michael Stuur
on Apr 05 2012 12:47 PM
Prodigy20 points

On a DM368 system using the h264 encoder ( main profile, probably also other profile), with different rcAlgo's etc.

when I change the dynamic targetBitrate every frame (with 1 bit) the output bitrate   DOUBLES.

It seems that changing the bitrate does something like doubling the target allocation of bits for a frame.

Also changing once with 1 bit will give a local noticable peak in the bitrate .

And as said changing the bitrate every frame (+-1 bit) doubles the output bitrate.

Could there be something counted double in the TI code?

Note bitrate must be different at least one bit from the last update to have this behaviour.

dvsdk_2_10_00_17

h264enc 2.30.00.4

Report Abuse
  • Reply
You have posted to a forum that requires a moderator to approve posts before they are publicly available.
All Replies
  • Yashwant Dutt
    Posted by Yashwant Dutt
    on Apr 05 2012 14:22 PM
    Genius15110 points

    Hi Michael,

    Whenever you change the bitrate, the rate control module resets itself. Upon reset, it may optionally insert an IDR (depends on the parameter setting) and starts from default buffer level.

    This might be the reason why you see o/p bitrate doubling as you do this every frame. Idealy, you may like to change the bitrate only when desired. The kind of test you are doing may have side effects.

    regards

    Yashwant

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Michael Stuur
    Posted by Michael Stuur
    on Apr 05 2012 15:10 PM
    Prodigy20 points

    Hi Yashwant,

    there is no IDR or I frame insertion.(Checked the stream for that).

    I can imagine indeed that the VBV level is reset, or something like that, although I don't think that should be done  (I think It the VBV level should scale with the bitrate).  Since the bitrate is allmost exactly doubled I still suspect something else is going on.

    regards,

    Michael

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Yashwant Dutt
    Posted by Yashwant Dutt
    on Apr 25 2012 07:30 AM
    Verified Answer
    Verified by Yashwant Dutt
    Genius15110 points

    This was resolved over email.

    regards

    YD

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Chris Richardson77843
    Posted by Chris Richardson77843
    on Apr 25 2012 11:10 AM
    Intellectual315 points

    Hi Yashwant,

    Would you mind posting how this issue was resolved?

    Thanks,

    Chris

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Yashwant Dutt
    Posted by Yashwant Dutt
    on Apr 25 2012 15:29 PM
    Genius15110 points

    The reason is our RC implementation does a .RC reset when it sees a bitrate or framerate change and puts in VBV level to default state. This causes the target bitrate becoming higher than target bitrate. Note that it may not always become twice, the resultant value depends on the current bitrate, delay, maxFrameSize etc.

     Below are workaround - 

     

    1.  Try reducing frequency of bitrate change control calls.

    2. There is a parameter called LBRmaxpicsize. This control the maximum size a picture can take. (see http://processors.wiki.ti.com/index.php/DM36x_Rate_Control_Modes and also the user guide). Whenever you see that the frequency of bitrate change is becoming higher, you can go and put a smaller value to LBRmaxpicsize and then restore it back when bitrate/channel rate rate becomes steady.

    We are also planning a fix for this issue, this would be available in the next release of the encoder(expected after few weeks).

    regards

    Yashwant

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Chris Richardson77843
    Posted by Chris Richardson77843
    on Apr 25 2012 16:58 PM
    Intellectual315 points

    Hi Yashwant,

    Thank you for posting the information; this is useful to me as well.

    Chris

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
TI E2E™ Community
  • Support Forums
  • Blogs
  • Videos
  • Groups
  • Site Support & Feedback
  • Settings
TI E2E™ Community Groups
  • TI University Program
  • Make the Switch
  • Microcontroller Projects
  • Motor Drive & Control
Other Communities
  • Deyisupport
  • Designsomething.org
  • beagleboard.org
  • TI on Element 14
  • TI on TechXchangeSM
Other Technical & Support Resources
  • WEBENCH® Design Center
  • Product Information Centers
  • Technical Documents
  • TI Design Network
  • TI Technical Articles
  • TI Training

All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.

Content on this site may contain or be subject to specific guidelines or limitations on use. All postings and use of the content on this site are subject to the Terms of Use of the site; third parties using this content agree to abide by any limitations or guidelines and to comply with the Terms of Use of this site. TI, its suppliers and providers of content reserve the right to make corrections, deletions, modifications, enhancements, improvements and other changes to the content and materials, its products, programs and services at any time or to move or discontinue any content, products, programs, or services without notice.

Follow Us Texas Instruments on Facebook Texas Instruments on Twitter Texas Instruments on LinkedIn Texas Instruments on Google+
TI Worldwide | Contact Us | my.TI Login | Site Map | Corporate Citizenship | mobile m.ti.com (Mobile Version)

TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs and
embedded processors, along with software, tools and the industry’s largest sales/support staff.

© Copyright 1995-2013 Texas Instruments Incorporated. All rights reserved.
Trademarks | Privacy Policy | Terms of Use