Recently I am reading the x264 source codes. Mostly, I concern the RC part. And I am confused about the parameters --bitrate and --vbv-maxrate. When bitrate is set, the CBR mode is used in frame level. If you want to start the MB level RC, the parameters bitrate, vbv-maxrate and vbv-bufsize should be set. But I don't know the relationship between bitrate and vbv-maxrate. What is the criterion of the real encoding result when bitrate and vbv-maxrate are both set? And what is the recommended value for bitrate? Equals to vbv-maxrate? Also what is the recommended value for vbv-bufsize? Half of vbv-maxrate? Please give me some advice.
1
There are 1 best solutions below
Related Questions in H.264
- Android mediacodec avc/h264 encoder always produces 1MB output buffer size
- Video Emulation solution
- Exoplayer does not play h264 mpeg-4 avc (part 10) codec in Android
- Client side H.264 (MP4) video compression/encoding
- Gstreamer Serial communication between 2 devices
- Decode h264 frame using android hardware accelerated decoder in gstreamer
- FFMPEG C Library: Encoding h264 stream into Matroska .mkv container creates corrupt files
- Adding h264 frames to mp4 file
- H264 data changing after serial communication in Python
- Extend Frame Size and Re-Encoding Video to be Blu-Ray Compliant with ffmpeg and tsMuxer
- Is there min size of IMFSample when ProcessInput?
- RTSP server on live555 start send client on I-Frame (h264)
- Python Handling H264 Frames for Live Stream from Eufy Server
- MediaCodec Async mode with NDK not triggering callback functions
- GstAppSink: Sharing between two pipelines
Related Questions in X264
- How to create IDR I-slice frame for H264 bytestream?
- Why is a file unplayable in Windows Media Player?
- Encode NV12 frames to h264 using x264enc (appsrc and appsink)
- First/single frame encoded with ffmpeg/libavcodec library cannot be immediately decoded
- building ffmpeg for windows x264.h: No such file or directory
- Gstreamer convert and display video v4l2 - tee problems in rust
- How to fix the "No working C compiler found." problem for compiling x264 in Linux?
- x264 lib fails to build on Android, other plugins not included
- ffmpeg convert from H.264 (High 4:4:4 Profile) to H.265 (Main Profile)
- How is the FFMPEG x264 result bitrate calculated?
- x264: How to Correctly Use quant_offsets?
- How to encode an mp4 to the exact specs of another mp4 with FFMPEG
- build x264 failed on apple M1, No working C compiler found
- FFmpeg libxh264 error on Slackware current
- x264/x265 options for fast decoding while preserving quality
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular # Hahtags
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
bitrate address the "target filesize" when you are doing encoding. It is understandably confusing because it applies a "budget" of certain size and then tries to apportion this budget on the frames - that is why the later parts of a movie get a smaller amount of data which results in lower video quality. For example, if you have 10 seconds of complete black images followed by 10 second of natural video - the final encoded file will be very different than if the order was the opposite.
vbv-bufsize is the buffer that has to be completed before a "transmission" would occur say in a streaming scenario. Now, let's tie this to I-frames and P-frames: the vbv-bufsize will limit the size of any of your encoded video frames - most likely the I-frame.