#ifndef ULTRA_LOW_LATENCY_CONFIG_H #define ULTRA_LOW_LATENCY_CONFIG_H // 超低延迟模式配置参数(针对RTMP/WebRTC优化) namespace UltraLowLatencyConfig { // 缓冲区大小优化(激进模式) constexpr int ULTRA_FRAME_QUEUE_SIZE = 1; // 减少到1帧 ≈ 33ms@30fps constexpr int ULTRA_PACKET_QUEUE_SIZE = 2; // 减少到2包 ≈ 67ms constexpr int MAX_FRAME_QUEUE_SIZE = 2; // 最大帧队列大小 constexpr int MIN_FRAME_QUEUE_SIZE = 1; // 最小帧队列大小 // 音频缓冲区优化(激进模式) constexpr int ULTRA_AUDIO_SAMPLES = 128; // 减少到128样本 ≈ 2.9ms@44.1kHz constexpr int MAX_AUDIO_SAMPLES = 256; // 最大音频样本数 constexpr int MIN_AUDIO_SAMPLES = 64; // 最小音频样本数 // 同步阈值优化(激进模式) constexpr double ULTRA_SYNC_THRESHOLD_MIN = 0.005; // 减少到5ms constexpr double ULTRA_SYNC_THRESHOLD_MAX = 0.020; // 减少到20ms constexpr double ULTRA_NOSYNC_THRESHOLD = 1.0; // 减少到1秒放弃同步 constexpr double ULTRA_SYNC_FRAMEDUP_THRESHOLD = 0.040; // 减少到40ms constexpr double ULTRA_SYNC_REJUDGE_THRESHOLD = 0.002; // 减少到2ms // 高精度时间常量(int64类型,微秒单位) constexpr int64_t ULTRA_SYNC_THRESHOLD_MIN_US = 5000LL; // 5ms constexpr int64_t ULTRA_SYNC_THRESHOLD_MAX_US = 20000LL; // 20ms constexpr int64_t ULTRA_SYNC_REJUDGE_THRESHOLD_US = 2000LL; // 2ms // 网络优化参数(RTMP专用) constexpr const char* RTMP_LIVE = "1"; // 启用RTMP直播模式 constexpr int PROBE_SIZE = 16; // 极小探测大小 constexpr int ANALYZE_DURATION = 0; // 关闭分析 constexpr int MAX_DELAY = 100000; // 100ms最大延迟 constexpr const char* FFLAGS = "nobuffer+fastseek+flush_packets"; // 无缓冲+快速定位+立即刷新 constexpr int BUFFER_SIZE = 65536; // 64KB接收缓冲区 // 字符串版本的配置参数 constexpr const char* PROBE_SIZE_STR = "16"; constexpr const char* ANALYZE_DURATION_STR = "0"; constexpr const char* MAX_DELAY_STR = "100000"; // 100ms constexpr const char* BUFFER_SIZE_STR = "65536"; // 64KB constexpr const char* RTMP_LIVE_STR = "1"; // RTMP流优化参数 constexpr const char* RTMP_BUFFER = "0"; // 禁用RTMP缓冲 constexpr int STIMEOUT = 3000000; // 3秒连接超时 constexpr const char* STIMEOUT_STR = "3000000"; // 解码器优化(超低延迟配置) constexpr int DECODER_THREAD_COUNT = 1; // 单线程减少延迟 constexpr const char* CODEC_PRESET = "ultrafast"; // 最快预设 constexpr const char* CODEC_TUNE = "zerolatency"; // 零延迟调优 constexpr bool ENABLE_FRAME_DROP = true; // 启用丢帧 constexpr double FRAME_DROP_THRESHOLD = 0.020; // 20ms丢帧阈值 // 渲染优化 constexpr bool ENABLE_VSYNC = false; // 禁用垂直同步 constexpr int RENDER_AHEAD_FRAMES = 0; // 不提前渲染 } #endif // ULTRA_LOW_LATENCY_CONFIG_H