videoBitRate property
The target video output bit rate in bits per second.
This is the target recorded video output bit rate if the application
configures the video recording via MediaRecorder.setProfile without
specifying any other MediaRecorder encoding parameters. For example, for
high speed quality profiles (from qualityHighSpeedLow to
qualityHighSpeed2160p), this is the bit rate where the video is recorded
with. If the application intends to record slow motion videos with the
high speed quality profiles, it must set a different video bit rate that
is corresponding to the desired recording output bit rate (i.e., the
encoded video bit rate during normal playback) via
MediaRecorder.setVideoEncodingBitRate. For example, if
qualityHighSpeed720p advertises 240fps videoFrameRate and 64Mbps
videoBitRate in the high speed CamcorderProfile, and the application
intends to record 1/8 factor slow motion recording videos, the application
must set 30fps via MediaRecorder.setVideoFrameRate and 8Mbps
(videoBitRate * slow motion factor
) via
MediaRecorder.setVideoEncodingBitRate. Failing to do so will result in
videos with unexpected frame rate and bit rate, or MediaRecorder error
if the output bit rate exceeds the encoder limit.
In native Android code: If the application intends to do the video recording with MediaCodec encoder, it must set each individual field of MediaFormat similarly according to this CamcorderProfile.
Implementation
final int videoBitRate;