DVR 實際上適用於所有需要觀看和保存串流媒體歷史記錄的用例,其中最為著名的用例是 IP 攝像頭系統。正如您所知,出於各種原因,有時需要不時地檢查歷史記錄。現在,您可以使用 Ant Media Server 自定義這個需求。
現在,我們將逐步解釋如何在 Ant Media Server 中激活 DVR:
Ant Media Server 默認刪除過時的 HLS 片段,因此我們需要讓 Ant Media Server 保留列表中的每個 HLS 片段,以便在串流媒體中使用即時倒帶。
1. 使用您喜愛的編輯器打開應用程序屬性文件。例如,對於LiveApp,它的文件路徑為
/usr/local/antmedia/webapps/LiveApp/WEB-INF/red5-web.properties
2. 在文件中設置或添加以下屬性。
settings.hlsPlayListType=event
settings.hlsflags=
默認的 HLS 標誌是 delete_segments,因此我們只需將其保持為空即可。對於此配置,用戶可以在廣播開始後任意時刻倒帶。
3. 保存文件並重新啟動Ant Media Server
sudo service antmedia restart
4. 使用 WebRTC 或 RTMP 將直播流發送到 Ant Media Server。假設您正在使用 stream1 ID 發送直播流。
5. 在您的瀏覽器中打開 HLS 播放器。
根據您的需求,您可以讓使用者在 HLS 中倒回 1 小時前或 24 小時前。
您有兩種選擇來指定倒回範圍。接下來將逐步解釋:
1. 只需使用以下應用程式設置。我們只需指定 settings.hlsListSize 和 settings.hlsTime。
讓我來解釋這些參數是什麼。
settings.hlsListSize 是片段列表大小,表示 m3u8 文件中的 ts 檔案數量。
settings.hlsTime 是片段持續時間,是每個 ts 檔案的持續時間。
因此,如果我們需要倒回 24 小時視窗,可以將 settings.hlsTime 設置為 4,settings.hlsListSize 設置為 21600,因為 4 * 21600 = 86400 秒,即為 24 小時。
settings.hlsPlayListType=
settings.hlsflags=delete_segments
settings.deleteHLSFilesOnEnded=true
settings.hlsListSize=21600
settings.hlsTime=4
更改應用程式屬性文件中的設置後,不要忘記使用 sudo service antmedia restart 重新啟動 Ant Media Server。
2. 如果您正在使用 IP攝像機或串流媒體源,可以使用此方法。
只需使用以下設置,並按如下方式設置應用程序屬性。
settings.hlsPlayListType=event
settings.hlsflags=
settings.streamFetcherRestartPeriod=86400
settings.deleteHLSFilesOnEnded=true
這些設置每 24 小時(86400)重新啟動流媒體源並清除每次重新啟動時的 ts 和 m3u8 文件。在更改應用程式屬性文件中的設置後,不要忘記重新啟動服務。
------------------------------------
謝謝收看這次的教學,我們下次見。