#[non_exhaustive]
#[derive(Clone, Copy, Debug, PartialEq, Eq)]
#[repr(i32)]
pub enum MediaSource {
File = 1 << 0,
Shell = 1 << 1,
FFmpeg = 1 << 2,
Device = 1 << 3,
Desktop = 1 << 4,
External = 1 << 5,
}
#[non_exhaustive]
#[derive(Clone, Copy, Debug, PartialEq, Eq)]
#[repr(i32)]
pub enum StreamDevice {
Microphone = 0,
Speaker = 1,
Camera = 2,
Screen = 3,
}
#[non_exhaustive]
#[derive(Clone, Copy, Debug, PartialEq, Eq)]
#[repr(i32)]
pub enum StreamMode {
Capture = 0,
Playback = 1,
}
#[non_exhaustive]
#[derive(Clone, Copy, Debug, PartialEq, Eq)]
#[repr(i32)]
pub enum StreamType {
Audio = 0,
Video = 1,
}
#[non_exhaustive]
#[derive(Clone, Copy, Debug, PartialEq, Eq)]
#[repr(i32)]
pub enum StreamStatus {
Active = 0,
Paused = 1,
Idling = 2,
}
#[non_exhaustive]
#[derive(Clone, Copy, Debug, PartialEq, Eq)]
#[repr(i32)]
pub enum ConnectionState {
Connecting = 0,
Connected = 1,
Timeout = 2,
Failed = 3,
Closed = 4,
}
#[non_exhaustive]
#[derive(Clone, Copy, Debug, PartialEq, Eq)]
#[repr(i32)]
pub enum ConnectionKind {
Normal = 0,
Presentation = 1,
}
#[non_exhaustive]
#[derive(Clone, Copy, Debug, PartialEq, Eq)]
#[repr(i32)]
pub enum ConnectionMode {
None = 0,
Rtc = 1,
Stream = 2,
Rtmp = 3,
}
#[non_exhaustive]
#[derive(Clone, Copy, Debug, PartialEq, Eq)]
#[repr(i32)]
pub enum MediaSegmentStatus {
NotReady = 0,
ResyncNeeded = 1,
Success = 2,
}
#[non_exhaustive]
#[derive(Clone, Copy, Debug, PartialEq, Eq)]
#[repr(i32)]
pub enum MediaSegmentQuality {
None = 0,
Thumbnail = 1,
Medium = 2,
Full = 3,
}