refactor(streamer): adopt proxy backends and typed statuses

This commit is contained in:
2026-03-10 23:29:59 +08:00
parent 6af97ee5d3
commit 0ad6887095
22 changed files with 1686 additions and 275 deletions
@@ -25,6 +25,12 @@ enum class RtmpMode {
Domestic,
};
enum class RtmpTransportType {
Libavformat,
FfmpegProcess,
LegacyCustom,
};
enum class EncoderBackendType {
Auto,
FFmpeg,
@@ -58,6 +64,8 @@ struct EncoderConfig {
struct RtmpOutputConfig {
bool enabled{false};
std::vector<std::string> urls{};
RtmpTransportType transport{RtmpTransportType::Libavformat};
std::string ffmpeg_path{"ffmpeg"};
RtmpMode mode{RtmpMode::Enhanced};
};
@@ -112,6 +120,7 @@ struct RuntimeConfig {
std::string_view to_string(CodecType codec);
std::string_view to_string(RunMode mode);
std::string_view to_string(RtmpMode mode);
std::string_view to_string(RtmpTransportType transport);
std::string_view to_string(EncoderBackendType backend);
std::string_view to_string(EncoderDeviceType device);
std::string_view to_string(McapCompression compression);