直播錄製是將直播中心接收到的推流資料錄製並儲存至指定儲存位置,以便直播結束後再次觀看。目前直播錄製提供兩種儲存方式:儲存至 VOD 和儲存至 OSS。
功能介紹
錄製原理
直播錄製時,系統會拉取推送的直播流,將音視頻切分成 TS 格式的切片,再將其封裝為目標格式(如 FLV、MP4 或 M3U8),並儲存至您指定的儲存空間。
直播錄製在工作時僅修改音視頻的封裝格式,不修改編碼層內容。若源流存在花屏、音畫不同步等異常,錄製檔案也將包含這些瑕疵。
音視頻編碼格式
由於直播錄製需要先將直播流切分為 TS 檔案,因此直播流的編碼格式必須滿足 TS 封裝要求。直播錄製目前僅支援以下編碼格式:
視頻編碼:H.264 (AVC)、H.265 (HEVC)、MPEG-4
音頻編碼:AAC、MP3
如果直播流包含了非以上格式編碼的音視頻,可能出現無法產生錄製檔案、錄製黑屏、無聲等異常。
儲存方式對比
直播錄製提供兩種儲存方式:儲存至 VOD 和儲存至 OSS。同一個直播流不能同時配置兩種儲存方式,請根據業務需求選擇。
對比項 | 儲存至 VOD | 儲存至 OSS |
關聯產品 | ApsaraVideo for VOD | Object Storage Service |
儲存格式 |
|
|
錄製視頻處理 | 支援對錄製的視頻進行自動合并、轉碼等ApsaraVideo for Media Processing | 需自行處理 |
適用情境 | 適用於錄製內容的二次生產,如剪輯、轉碼、合成等 | 適用於錄製內容的長期儲存和管理 |
錄製觸發方式
直播錄製支援四種錄製觸發方式:自動錄製、回調確認、推流參數設定、手動錄製。
自動錄製
ApsaraVideo for Live以錄製模板的形式管理錄製配置。系統根據您推流地址中的 DomainName、AppName 和 StreamName 來匹配相應的自動錄製模板。
匹配邏輯
精準匹配:錄製模板中,指定具體的 AppName 和 StreamName,表示僅對該直播流生效。
通配匹配:錄製模板中,AppName 填寫
*,表示對該網域名稱下所有應用生效;StreamName 填寫*,表示該應用下所有直播流生效。
回調確認
如果您希望基於商務規則來動態決定是否對某一次直播內容進行錄製,可以使用“按需錄製”模式。
工作流程:
直播流推流時,如匹配的錄製模板設定觸發方式為“回調確認”,直播服務會向您預設的按需回調地址發送一條 HTTP 要求,詢問是否對當前直播流進行錄製。
您的業務系統收到請求後,根據當前業務狀態返回錄製指令(允許或拒絕)。
直播服務根據您的返回結果,決定是否開啟錄製任務。
您需要先在事件回調配置中指定直播錄製的“按需回調地址”。詳細配置方式、請求參數和響應格式請參見直播錄製回調和按需錄製回調。
注意事項:
回調確認模式下,按需錄製回調的部分參數會對模板的既有配置進行覆蓋:
Interval:覆蓋錄製模板中配置的原有錄製周期。Format:與錄製模板中原配置的格式取交集。如果沒有交集,則不會錄製這路直播流。
推流參數設定
當觸發方式配置為“推流參數設定”時,您可以直接在推流地址中通過 record_config 參數,控制當前流是否開啟錄製。
參數格式:
record_config={"NeedRecord": <true/false>}參數說明:
true:開啟錄製,false:關閉錄製注意事項:構造URL時,必須通過 URL Encode 對參數進行編碼
假設推流地址為:rtmp://push.example.com/live/stream1
若需要通過參數開啟錄製,URL 可構造為:rtmp://push.example.com/live/stream1?record_config=%7B%22NeedRecord%22%3Atrue%7D&auth_key=xxx
使用限制:
該觸發方式僅支援控制是否錄製源流,不支援轉碼流錄製。錄製內容包括轉碼流時,請選擇其他觸發方式。
手動錄製
如果您希望完全由商務邏輯控制錄製過程,可以關閉自動錄製,改用“手動錄製”模式。
此時,您可以調用 RealTimeRecordCommand (即時錄製指令)介面,手動啟動某條直播流的錄製。
該介面同時支援主動停止錄製,無論當前錄製是通過“自動觸發”、“按需觸發”還是“手動啟動”,都可以調用該介面強制停止當前錄製任務。
請參見RealTimeRecordCommand - 即時錄製指令介面文檔,使用 command 參數執行 start或 stop操作。
儲存至 VOD
前提條件
開通ApsaraVideo for VOD服務並配置儲存 Bucket。儲存 Bucket 必須與待佈建網域名的直播中心同地區。
功能配置
ApsaraVideo for Live以錄製模板的形式管理錄製配置。您可以通過控制台或 API 建立儲存至 VOD 的錄制模板。
錄製配置需在直播推流開始前完成。未開啟錄製功能的直播流,在直播結束後無法追溯歷史視頻 ID 或擷取回放內容。請確保在開始推流前已建立錄製模板。
方法一:控制台配置
在左側導覽列選擇功能管理 > 直播錄製。在錄製配置頁簽,選擇儲存至VOD。
選擇待配置的播流網域名稱,並且單擊添加。
配置錄製模板。
基礎錄製設定
參數
描述
AppName
應用程式名稱,必須與推流地址的 AppName 保持一致方可生效。若需對網域名稱下所有應用生效,填寫
*。StreamName
流名稱。支援精確匹配,即錄製特定流。若需錄製當前 AppName 下的所有直播流,填寫
*。儲存應用空間
錄製檔案儲存體在點播服務建立的應用空間。若未開啟應用空間,則不顯示該欄位。
儲存地址
可選擇點播服務當前地區下建立的儲存地址。預設使用點播系統配置的預設上傳地址。
錄製內容
支援錄製源流或轉碼流,兩者可同時選擇。
選擇轉碼流時,可指定轉碼模板(上限10個)或選擇全部轉碼模板。
轉碼模板的 AppName 為
*或與錄製模板一致時,轉碼流錄製才會生效。觸發方式
支援通過以下方式觸發錄製:自動錄製、回調確認、推流參數設定、手動錄製。
詳情請參見錄製觸發方式。
儲存格式
支援 M3U8、FLV、MP4 格式。選擇多格式時,支援按格式分別配置點播視訊設定。
錄製周期
單個錄製檔案的最大時間長度。當直播期間超過此閾值,系統將產生新檔案。預設值:180分鐘。範圍:15-360分鐘。
斷流拼接時間長度
直播中斷時,當斷流時間不超過此時間長度,重新推流後的內容會自動合并至同一個檔案。當斷流時間超過此時間長度,則錄製為新檔案。預設值:180秒。範圍:15-21600秒。
單個切片時間長度
單個 TS 切片的時間長度。僅選擇 M3U8 格式時顯示。
預設值:30秒。範圍:5-30秒。
點播視訊設定
儲存至 VOD 時,您可通過此設定,使用ApsaraVideo for VOD的ApsaraVideo for Media Processing能力來處理錄製的檔案。若您選擇了多個錄製格式,可按格式分別配置。
參數
描述
自動合并
開啟後,可在直播錄製結束後自動將多個錄製周期檔案合并成一個錄製檔案,並儲存到 VOD。原錄製檔案仍然保留。
視頻處理
使用ApsaraVideo for VOD服務對錄製的視頻進行ApsaraVideo for Media Processing。
源視頻:對每個錄製周期檔案單獨處理。
合并後視頻:對合并後的檔案進行處理(開啟自動合并後顯示)。
處理方式
支援用轉碼模板組處理和用工作流程處理兩種方式。
處理模板
選擇從ApsaraVideo for VOD服務擷取的轉碼模板組或工作流程範本。
注意:僅支援選擇網域名稱直播中心所在地區建立的模板。
視頻分類
設定錄製檔案在ApsaraVideo for VOD服務中的分類。
單擊確定建立錄製模板。
方法二:API 配置
調用AddLiveRecordVodConfig介面,添加錄製儲存至 VOD 配置。範例程式碼:
// Parameter settings for API request
AddLiveRecordVodConfigRequest.RecordFormat recordFormat0 = AddLiveRecordVodConfigRequest.RecordFormat.builder()
.format("m3u8")
.sliceDuration(30)
.autoCompose("ON")
.videoProcess("origin,compose")
.processMethod("transcode")
.processTemplateId("e2d796d3bb5fd8049d32bff62f94****")
.tags("sports")
.build();
AddLiveRecordVodConfigRequest addLiveRecordVodConfigRequest = AddLiveRecordVodConfigRequest.builder()
.regionId("<Your RegionID>")
.domainName("<Your DomainName>")
.appName("live")
.streamName("stream1")
.cycleDuration(3600)
.spaceId("app-1000000")
.storageLocation("<Your StorageLocation>")
.onDemand(0)
.recordContent("raw,transcode")
.delayTime(180)
.recordFormat(java.util.Arrays.asList(recordFormat0))
.transcodeTemplates(java.util.Arrays.asList("sd"))
// Request-level configuration rewrite, can set Http request parameters, etc.
// .requestConfiguration(RequestConfiguration.create().setHttpHeaders(new HttpHeaders()))
.build();部分參數說明
OnDemand
錄製觸發方式。有效值:0(自動錄製),1(回調確認),2(推流參數設定),7(手動錄製)。詳情請參見錄製觸發方式。
DelayTime
斷流拼接時間長度(秒)。當斷流時間不超過此時間長度,重新推流後的內容會自動合并至同一個檔案。當斷流時間超過此時間長度,則錄製為新檔案。
RecordContent、TranscodeTemplates
指定錄製源流或轉碼流。錄製轉碼流時,需指定轉碼模板 ID。
RecordFormat:設定儲存格式及點播視訊配置。其中:
AutoCompose:開啟後,可在直播錄製結束後,自動將多個錄製周期檔案合并成一個錄製檔案。
VideoProcess、ProcessMethod、ProcessTemplateId:使用ApsaraVideo for VOD的轉碼或工作流程範本,來處理原錄製檔案或自動合并的視頻。
完整參數說明請參見AddLiveRecordVodConfig - 添加直播錄製轉點播配置。
錄製檔案管理
您可以在ApsaraVideo for Live控制台查看儲存至 VOD 的錄製檔案,並使用ApsaraVideo for VOD管理錄製檔案。
在左側導覽列選擇功能管理 > 直播錄製。選擇錄製檔案管理頁簽。
選擇配置的播流網域名稱。
單擊儲存至VOD頁簽。
可通過日期範圍、AppName 和 StreamName 篩選錄製記錄。
如需查看和管理具體的錄製檔案,可在操作列點擊去點播控制台管理,或登入ApsaraVideo for VOD控制台,選擇媒資庫 > 音/視頻。
儲存至 OSS
前提條件
開通 OSS 服務並建立儲存 Bucket。OSS Bucket 必須與待佈建網域名的直播中心同地區。
配置直播寫入 OSS 許可權:正常情況下,開通直播服務時,已完成自動授權。如果該許可權意外被刪除,可點擊同意雲資源訪問授權完成快速授權。
建議您使用阿里雲帳號完成授權,若使用 RAM 使用者必須擁有以下許可權:ram:CreateRole、ram:GetRole、ram:ListPoliciesForRole、ram:AttachPolicyToRole,授予 RAM 使用者以上許可權存在安全風險(不推薦)。
功能配置
ApsaraVideo for Live以錄製模板的形式管理錄製配置。您可以通過控制台或 API 建立儲存至 OSS 的錄制模板。
完成配置後重新推流,錄製配置才會生效。如需錄製回放,請在直播開始前建立錄製模板。
方法一:控制台配置
在左側導覽列選擇功能管理 > 直播錄製。在錄製配置頁簽,選擇儲存至OSS。
選擇待配置的播流網域名稱,並且單擊添加。
配置錄製模板。支援錄製源流或轉碼流,兩者可同時選擇。
基礎錄製設定
參數
描述
AppName
應用程式名稱,必須與推流地址的 AppName 保持一致方可生效。若需對網域名稱下所有應用生效,填寫
*。StreamName
流名稱。支援精確匹配,即錄製特定流。若需錄製當前 AppName 下的所有直播流,填寫
*。儲存位置
可選擇當前地區在 OSS 中建立的 Bucket。
說明儲存 Bucket 分為兩類:
標準 Bucket:用於常規檔案儲存體
媒體 Bucket:專用於視頻轉碼處理,存入該類型的檔案可自動觸發 MPS 轉碼任務
當前系統未對 Bucket 類型進行標識區分,如需執行視頻轉碼,請自行記錄所使用的媒體 Bucket 名稱,以確保轉碼後的媒體檔案儲存位置準確。
斷流拼接時間長度
直播中斷時,當斷流時間不超過此時間長度,重新推流後的內容會自動合并至同一個檔案。當斷流時間超過此時間長度,則錄製為新檔案。預設值:180秒。範圍:15-21600秒。
觸發方式
支援通過以下方式觸發錄製:自動錄製、回調確認、推流參數設定、手動錄製。
詳情請參見錄製觸發方式。
錄製源流
參數
描述
儲存格式
支援 M3U8、FLV、MP4、CMAF 四種格式。可選擇多個格式,但不能同時選擇 M3U8 和 CMAF 格式。
儲存規則
錄製檔案的命名方式。預設路徑:
M3U8、FLV、MP4:
record/{AppName}/{StreamName}/{EscapedStartTime}_{EscapedEndTime}TS、fMP4:
record/{AppName}/{StreamName}/{UnixTimestamp}_{Sequence}單個切片時間長度
單個 TS 切片的時間長度。僅選擇 M3U8 和 CMAF 格式時顯示。
預設值:30秒。範圍:5-30秒。
錄製周期
單個錄製檔案的最大時間長度。當直播期間超過此閾值,系統將產生新檔案。預設值:180分鐘。範圍:15-360分鐘。
錄製轉碼流
參數
描述
轉碼流選擇
選擇需要錄製的轉碼流。可指定轉碼模板(上限10個)或選擇全部轉碼模板。
轉碼模板的 AppName 為
*或與錄製模板一致時,轉碼流錄製才會生效。儲存格式
支援 M3U8、FLV、MP4、CMAF 四種格式。可選擇多個格式,但不能同時選擇 M3U8 和 CMAF 格式。
儲存規則
錄製檔案的命名方式。預設路徑:
M3U8、FLV、MP4:
transcodeRecord/{AppName}/{StreamName}_{轉碼模板ID}/{EscapedStartTime}_{EscapedEndTime}TS、fMP4:
transcodeRecord/{AppName}/{StreamName}_{轉碼模板ID}/{UnixTimestamp}_{Sequence}單個切片時間長度
單個 TS 切片的時間長度。僅選擇 M3U8 和 CMAF 格式時顯示。
預設值:30秒。範圍:5-30秒。
錄製周期
單個錄製檔案的最大時間長度。當直播期間超過此閾值,系統將產生新檔案。預設值:180分鐘。範圍:15-360分鐘。
單擊確定建立錄製模板。
方法二:API 配置
調用AddLiveAppRecordConfig介面,添加錄製儲存至 OSS 配置。範例程式碼:
// Parameter settings for API request
AddLiveAppRecordConfigRequest.TranscodeRecordFormat transcodeRecordFormat0 = AddLiveAppRecordConfigRequest.TranscodeRecordFormat.builder()
.sliceDuration(30)
.sliceOssObjectPrefix("transcodeRecord/{AppName}/{StreamName}_{TranscodeTemplateID}/{UnixTimestamp}_{Sequence}")
.ossObjectPrefix("transcodeRecord/{AppName}/{StreamName}_{TranscodeTemplateID}/{EscapedStartTime}_{EscapedEndTime}")
.cycleDuration(900)
.format("m3u8")
.build();
AddLiveAppRecordConfigRequest.RecordFormat recordFormat0 = AddLiveAppRecordConfigRequest.RecordFormat.builder()
.sliceDuration(30)
.format("m3u8")
.cycleDuration(900)
.sliceOssObjectPrefix("record/{AppName}/{StreamName}/{UnixTimestamp}_{Sequence}")
.ossObjectPrefix("record/{AppName}/{StreamName}/{Sequence}_{EscapedStartTime}_{EscapedEndTime}")
.build();
AddLiveAppRecordConfigRequest addLiveAppRecordConfigRequest = AddLiveAppRecordConfigRequest.builder()
.domainName("<Your DomainName>")
.appName("live")
.ossEndpoint("<Your OssEndpoint>")
.ossBucket("<Your OssBucket>")
.streamName("stream1")
.onDemand(0)
.delayTime(180)
.recordFormat(java.util.Arrays.asList(recordFormat0))
.transcodeRecordFormat(java.util.Arrays.asList(transcodeRecordFormat0))
.transcodeTemplates(java.util.Arrays.asList("sd"))
// Request-level configuration rewrite, can set Http request parameters, etc.
// .requestConfiguration(RequestConfiguration.create().setHttpHeaders(new HttpHeaders()))
.build();部分參數說明
OnDemand
錄製觸發方式。有效值:0(自動錄製),1(回調確認),2(推流參數設定),7(手動錄製)。詳情請參見錄製觸發方式。
DelayTime
斷流拼接時間長度(秒)。當斷流時間不超過此時間長度,重新推流後的內容會自動合并至同一個檔案。當斷流時間超過此時間長度,則錄製為新檔案。
RecordFormat
源流儲存格式及錄製參數,包括 Format(儲存格式)、OssObjectPrefix(儲存規則)、SliceDuration(切片時間長度)、CycleDuration(錄製周期)等。
TranscodeTemplates、TranscodeRecordFormat
錄製轉碼流時,指定轉碼模板 ID 列表和轉碼流的儲存格式及錄製參數。
完整參數說明請參見AddLiveAppRecordConfig - 添加錄製配置。
錄製檔案管理
查看錄製檔案
可使用以下三種方式查看儲存至 OSS 的錄製檔案:
方法一:直播控制台
在左側導覽列選擇功能管理 > 直播錄製。選擇錄製檔案管理頁簽。
選擇配置的播流網域名稱。
單擊儲存至OSS頁簽。
您可通過日期範圍、AppName 和 StreamName 篩選錄製記錄。
方法二:直播 API
ApsaraVideo for Live提供介面查詢某個時間段內的所有錄製索引檔案。索引檔案資訊在ApsaraVideo for Live系統中僅儲存 6 個月,因此僅支援查詢 6 個月內的資料。介面調用詳情和參數配置請參見DescribeLiveStreamRecordIndexFiles - 查詢某個時間段內的所有錄製索引檔案。
方法三:OSS
在配置錄製功能時,已指定了錄製檔案在 OSS 中的儲存地址。如需在 OSS 中查看錄製檔案,可參見列舉檔案。
合并與提取錄製內容
儲存至 OSS 支援通過建立新的索引檔案,將錄製內容按照時間段提取出來,也可以將起止時間段內的多個錄製檔案內容合并為一個。
錄製內容需要包含 M3U8 儲存格式才能夠進行合并或提取。
方法一:直播控制台
在左側導覽列選擇功能管理 > 直播錄製。選擇錄製檔案管理頁簽。
選擇配置的播流網域名稱。
選擇儲存至OSS頁簽。
點擊錄製索引剪輯。通過播流網域名稱、AppName、StreamName 和時間範圍篩選錄製檔案。
在時間軸內可查看有錄製內容的時間段。設定開始和結束時間,點擊儲存新檔案儲存產生的新 M3U8 檔案。
方法二:直播 API
ApsaraVideo for Live提供介面建立新的索引檔案。TS 切片資訊在ApsaraVideo for Live系統中僅儲存 3 個月,因此只能選擇 3 個月內的錄製內容。
介面調用詳情和參數配置請參見CreateLiveStreamRecordIndexFiles - 建立錄製索引檔案。
刪除錄製檔案
ApsaraVideo for Live儲存的是錄製檔案資訊,如 AppName,StreamName,OSS 檔案儲存路徑等,實際錄製檔案儲存在 OSS 中。
如果在ApsaraVideo for Live刪除錄製檔案資訊時,同步刪除儲存在 OSS 中的檔案,則需要建立服務角色 AliyunMTSVideoLifecycleRole,並精確授權 AliyunMTSVideoLifecycleRolePolicy 系統策略。您可以點擊授權進行一鍵授權。
目前支援以下方式刪除錄製檔案:
直播控制台:在錄製檔案管理頁簽選擇檔案並刪除。勾選同步刪除儲存在OSS的錄製檔案可同步刪除 OSS 檔案。
直播 API:調用DeleteLiveStreamRecordIndexFiles - 刪除直播錄製檔案介面。
OSS 直接刪除:一般情況下,不建議直接刪除儲存在 OSS 中的錄製檔案。如果您因業務需求,需要直接刪除儲存在 OSS中 的錄製檔案,可參考 OSS 文檔刪除檔案。
到期自動刪除:需提交工單,我們會在後台為您配置到期時間。
配置 CDN 網域名稱
如果您希望錄製的視頻能夠更快速地在網路中進行分發,可以配置一個 CDN 加速網域名稱。CDN 將視頻分發到各地節點,使用者就近訪問而無需串連 OSS 來源站點,且有效節省網路費用。具體操作可參見通過 CDN 加速訪問 OSS。
錄製模板優先順序
如果您配置了多個錄製模板,且某一路直播流同時匹配到多個模板,系統將根據以下優先順序生效(數值越小,優先順序越高):
優先順序 | DomainName | AppName | StreamName |
1 | 指定 | 指定 | 指定 |
2 | 指定 | 指定 | * |
3 | 指定 | * | * |
("指定"代表通過控制台或 API 配置自動錄製規則時,對應參數有值,且值不為*)
計費說明
使用直播錄製功能可能產生以下費用:
月錄製服務費
開啟直播錄製後,按照每月錄製的並發峰值路數計費。詳情請參見直播錄製費用。
錄製轉封裝費
選擇FLV、MP4、CMAF等非預設格式時,按照時間長度計費,在ApsaraVideo for Live服務收取。詳情請參見直播錄製費用。
錄製視頻處理費
儲存至 VOD 時,對錄製後的視頻進行自動合并、轉碼處理等,將產生視頻處理費用,在ApsaraVideo for VOD服務收取。詳情請參見剪輯合成計費和媒資轉碼計費。
儲存費用
錄製檔案儲存體在ApsaraVideo for VOD中,會產生儲存費用,在ApsaraVideo for VOD服務收取。詳情請參見媒資儲存計費。
錄製檔案儲存體在 OSS 中,會產生儲存費用,在 OSS 服務收取。詳情請參見儲存費用。
常見問題
直播結束後多長時間可以看到錄製檔案?可以立即產生嗎?
產生機制
錄製檔案並非在斷流瞬間產生。系統會在斷流後等待斷流拼接時間長度(預設180秒)。在此期間若恢複推流,錄製內容將自動合并;若逾時未恢複,系統判定直播結束並產生錄製檔案。
您可以根據業務需求調整斷流拼接時間長度,建議保持預設配置。若設定過短,易因網路抖動產生大量片段檔案;若設定過長,會導致直播結束後需長時間等待才能看到檔案。
立即產生方案
如果需要在直播結束後立即擷取錄製檔案,而無等待斷流拼接時間長度,可以給推流設定回調事件(請參見事件回調),在接收到推流結束通知時,通過調用RealTimeRecordCommand - 即時錄製指令介面取消斷流拼接。
realTimeRecordCommandRequest.setCommand("cancel_delay");直播未結束時,可以查看當前的錄製檔案嗎?
在直播時間長度未超過錄製周期的情況下,錄製檔案一般在直播結束後產生。若是您的業務需要在直播未結束的情況下查看當前的錄製檔案,可以調用RealTimeRecordCommand - 即時錄製指令介面,重新整理錄製內容。該指令會強制結束當前的錄製進程並立即組建檔案,隨後系統會自動開啟新的一輪錄製。
realTimeRecordCommandRequest.setCommand("restart");若您的直播流錄製配置了多種儲存格式,此操作會將多種儲存格式一起重新整理。
直播流出現異常,會影響錄製嗎?
系統根據流的異常程度採取不同的處理策略:
標準流(滿足編碼要求且幀率/時間戳記穩定):100%正常產生錄製檔案。
輕微異常流(偶發幀率波動/時間戳記跳變):系統自動相容處理。
嚴重異常流(長期無視訊框架/時間戳記錯亂/主要畫面格缺失):無法保證錄製成功率。
錄製檔案未產生、內容異常如何排查?
遇到以下錄製相關問題時,可參考排查:
配置不生效:錄製模板僅對配置完成後的新推流生效,已在推流中的直播流不錄製。斷流後重新推流,使新配置生效。
轉碼流未錄製:檢查轉碼模板的觸發方式是否為“推流觸發”。若觸發方式為“拉流觸發”,則需要有觀眾實際拉流觀看時才會啟動轉碼並開始錄製轉碼流。
回放內容有重複片段:通常因推流端網路不穩定導致斷連重連,同一時段的內容被重複推送並錄製。此類問題需在後期通過剪輯工具處理。
高解析度情境錄製畫面白屏但有聲音:排查推流端的螢幕畫面分享源捕獲設定、編碼器配置(如硬體編碼相容性)以及播放器對高解析度的相容性。
VOD 錄製檔案名稱不符合預期:儲存至 VOD 的錄製檔案名稱預設為 StreamName,不支援自訂檔案名稱。