- RevueSDK
- VideoCodec
Enumeration
VideoCodec
視訊編碼器(含對應 encoding 參數)
enum VideoCodecOverview
enum with associated value — codec 跟 encoding 綁在一起,型別系統保證不會出現 「codec 是 h264、但傳 vp8 encoding」的矛盾組合。
5 個 static preset 常數
VideoCodec.h264Default // H.264 + 預設 bitrate 3 Mbps
VideoCodec.vp8LowLatency // VP8 + 低延遲 preset (CBR)
VideoCodec.vp8HighQuality // VP8 + 高畫質 preset (VBR)
VideoCodec.vp8LowBandwidth // VP8 + 弱網優先 preset (CQ)
VideoCodec.vp8AllKeyframe // VP8 + 每幀 keyframe(不破圖)
Topics
Enumeration Cases
case h264(H264Encoding)H.264 — 走外部硬體編碼(VideoToolbox),輸出 Annex B 送給
send_frame_encodedcase vp8(Vp8Encoding)VP8 — 走 revuekit-c 內部軟體編碼,raw YUV 送給
send_frame
Instance Properties
var type: VideoCodecType取出 codec type(忽略 associated encoding),用於 map key / 比對 codec 類型
Type Properties
static let h264Default: VideoCodecH.264 + 預設 bitrate(3 Mbps)
static let vp8AllKeyframe: VideoCodecVP8 + 全 keyframe(每幀都是完整畫面、不破圖)
static let vp8HighQuality: VideoCodecVP8 + 高畫質 preset(對應 C 層
apply_high_quality_mode)static let vp8LowBandwidth: VideoCodecVP8 + 弱網優先 preset(對應 C 層
apply_low_bandwidth_mode)static let vp8LowLatency: VideoCodecVP8 + 低延遲 preset(對應 C 層
apply_low_latency_mode)