fix(video): 修正默认码率配置并优化软件编码器

- 将默认码率从 8 Mbps 降至 1 Mbps,更适合嵌入式设备
- 修复 WebRtcConfig 中 max_bitrate < target_bitrate 的逻辑错误
- 优化 libx264/libx265 软件编码器的低延迟配置
- 优化 libvpx (VP8/VP9) 的实时编码参数
This commit is contained in:
mofeng-git
2025-12-31 22:04:58 +08:00
parent 8be45155ac
commit bc85810849
11 changed files with 148 additions and 19 deletions

View File

@@ -77,7 +77,7 @@ impl Default for SharedVideoPipelineConfig {
resolution: Resolution::HD720,
input_format: PixelFormat::Yuyv,
output_codec: VideoEncoderType::H264,
bitrate_kbps: 8000,
bitrate_kbps: 1000,
fps: 30,
gop_size: 30,
encoder_backend: None,
@@ -311,7 +311,7 @@ impl SharedVideoPipeline {
config.input_format
);
let (frame_tx, _) = broadcast::channel(16);
let (frame_tx, _) = broadcast::channel(64); // Increased from 16 for software encoding
let (running_tx, running_rx) = watch::channel(false);
let nv12_size = (config.resolution.width * config.resolution.height * 3 / 2) as usize;
let yuv420p_size = nv12_size; // Same size as NV12