簡體   English   中英

使用 Stream/RAF Tester 調試 Roku 技巧模式

[英]Debug Roku trick mode with Stream/RAF Tester

我正在嘗試在 Roku 上為我們的 VoD 實現技巧模式。 我在這里遵循了他們的 HLS 指南: https://developer.roku.com/en-gb/docs/developer-program/media-playback/trick-mode/hls-and-dash.md

我看到我的播放列表使用 EXT-X-IMAGE-STREAM-IN 進行了更新:

#EXTM3U
#EXT-X-VERSION:7
#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="audio_0",NAME="main",DEFAULT=YES,AUTOSELECT=YES,URI="a/3000/chunklist_audio_1611173953675_1611174576175.m3u8"
#EXT-X-STREAM-INF:BANDWIDTH=3000000,CODECS="avc1.640020,mp4a.40.2",RESOLUTION=1280x720,AUDIO="audio_0"
a/3000/chunklist_1611173953675_1611174576175.m3u8
#EXT-X-IMAGE-STREAM-INF:BANDWIDTH=311040,RESOLUTION=480x270,CODECS="jpeg",URI="media_playlists/media_playlist_480x270_1611173953675_1611174576175.m3u8"

如您所見,播放列表指向media_playlists/media_playlist_480x270_1611173953675_1611174576175.m3u8與此內容存在:

#EXTM3U
#EXT-X-TARGETDURATION:1000
#EXT-X-VERSION:7
#EXT-X-MEDIA-SEQUENCE:1
#EXT-X-PLAYLIST-TYPE:VOD
#EXT-X-IMAGES-ONLY
#EXTINF:1000.000
#EXT-X-TILES:RESOLUTION=480x270,LAYOUT=10x10,DURATION=10.000
../images/tiles_480x270_1611173953675_1611174576175_0001.jpg
#EXT-X-ENDLIST

而且我已經確認圖像存在於上面指出的位置。

我很困惑,因為我對 Stream/RAF 測試工具發出的請求一無所知,所以我不知道哪個請求可能會失敗。

當我在測試頻道上播放視頻時,它可以正常播放,所以我知道 HLS 正在按預期工作。 但是,當我在播放視頻時嘗試搜索時,縮略圖不顯示,並且洗滌器停留在起始 position。

任何建議都將不勝感激 - 特別是如果有辦法從流/raf 測試工具中查看日志記錄!

嗨,我遇到了與 DASH 類似的問題,其行為與您描述的洗滌器 position 吸在 0 時類似。

我不知道為什么你的擦洗不起作用。 據,直到...為止

任何建議都將不勝感激 - 特別是如果有辦法從流/raf 測試工具中查看日志記錄!

go 的一種方法是在測試通道和發布視頻 stream 的遠程端點之間添加代理服務器。 我在 GO 中寫了一個簡單的代理。 這是代碼https://play.golang.org/p/-EA8bVt75cG我在示例代碼中將服務器本地部署在 localhost:8998 上。 然后在 stream 測試儀請求中將您的主機:端口替換為 localhost:8998。 代理會將來自 Roku 播放器的請求轉發到流發布主機並記錄所有詳細信息。

現在我可以看到所有的特技播放請求/響應。

2021/02/15 19:44:46 RquestUri /live/dev/trickplay/trickplay/1613433254/thumbnails-1727.jpeg
2021/02/15 19:44:46 New RquestUri http://myhost.com:80/live/dev/trickplay/trickplay/1613433254/thumbnails-1727.jpeg
Header field "User-Agent", Value ["Roku/DVP-9.40 (509.40E04200A)"]
Header field "Accept", Value ["*/*"]
2021/02/15 19:44:46 10.0.0.15:50536   200 OK
2021/02/15 19:44:46 Remote Address 10.0.0.15:50521 
2021/02/15 19:44:46 RquestUri /live/dev/trickplay/trickplay/1613433254_video_288p-30fps-350k/video_1865.ts
2021/02/15 19:44:46 New RquestUri http://myhost.com:80/live/dev/trickplay/trickplay/1613433254_video_288p-30fps-350k/video_1865.ts
Header field "User-Agent", Value ["Roku/DVP-9.40 (509.40E04200A)"]
Header field "Accept", Value ["*/*"]
2021/02/15 19:44:46 10.0.0.15:50521   200 OK
2021/02/15 19:44:46 Remote Address 10.0.0.15:50523 
2021/02/15 19:44:46 RquestUri /live/dev/trickplay/trickplay/1613433254_video_288p-30fps-350k/video_1866.ts
2021/02/15 19:44:46 New RquestUri http://myhost.com:80/live/dev/trickplay/trickplay/1613433254_video_288p-30fps-350k/video_1866.ts
Header field "User-Agent", Value ["Roku/DVP-9.40 (509.40E04200A)"]
Header field "Accept", Value ["*/*"]
2021/02/15 19:44:46 Remote Address 10.0.0.15:50537 
2021/02/15 19:44:46 RquestUri /live/dev/trickplay/trickplay/1613433254/thumbnails-1728.jpeg
2021/02/15 19:44:46 New RquestUri http://myhost.com:80/live/dev/trickplay/trickplay/1613433254/thumbnails-1728.jpeg
Header field "User-Agent", Value ["Roku/DVP-9.40 (509.40E04200A)"]
Header field "Accept", Value ["*/*"]
2021/02/15 19:44:46 10.0.0.15:50523   200 OK
2021/02/15 19:44:46 10.0.0.15:50537   200 OK
2021/02/15 19:44:47 Remote Address 10.0.0.15:50535 
2021/02/15 19:44:47 RquestUri /live/dev/trickplay/trickplay/1613433254/thumbnails-1729.jpeg
2021/02/15 19:44:47 New RquestUri http://myhost.com:80/live/dev/trickplay/trickplay/1613433254/thumbnails-1729.jpeg
Header field "Accept", Value ["*/*"]
Header field "User-Agent", Value ["Roku/DVP-9.40 (509.40E04200A)"]
2021/02/15 19:44:47 10.0.0.15:50535   200 OK
2021/02/15 19:44:47 Remote Address 10.0.0.15:50538 
2021/02/15 19:44:47 RquestUri /live/dev/trickplay/trickplay/1613433254/thumbnails-1730.jpeg
2021/02/15 19:44:47 New RquestUri http://myhost.com:80/live/dev/trickplay/trickplay/1613433254/thumbnails-1730.jpeg
Header field "User-Agent", Value ["Roku/DVP-9.40 (509.40E04200A)"]
Header field "Accept", Value ["*/*"]
2021/02/15 19:44:47 10.0.0.15:50538   200 OK
2021/02/15 19:44:47 Remote Address 10.0.0.15:50536 
2021/02/15 19:44:47 RquestUri /live/dev/trickplay/trickplay/1613433254/thumbnails-1731.jpeg

我沒有確切的答案,但我們有一些線索和解決方案。

我完全按照@allap 的描述進行了操作,但使用了 python 的 SimpleHTTPServer,並將 stream 測試儀指向我的 IP(不是我的本地主機)。 我們發現媒體/trickplay 播放列表不是事件請求。 當我們從播放列表中刪除對它的引用或將媒體播放列表設為 404 時,清理工作正常。 顯然,特技模式沒有縮略圖。

我從一個布局為 10x10 的平鋪圖像開始,每個平鋪的分辨率為 480x270。 我們將它降低到 5x5 並且它起作用了。 ...在我的電視上使用新的 Roku 設備,它在舊的 Roku 設備上不起作用。 它也不適用於 TCL 智能電視,我們將布局降低到 5x2。 它適用於 TCL。 我們必須將分辨率降低到 320x180 才能在較舊的 Roku 設備上工作。

TL;博士; 如果在將特技播放引入播放列表時擦洗中斷,請嘗試減少平鋪圖像存檔文件的布局(如果您使用平鋪)和/或降低媒體播放列表的分辨率。 認為增加間隔也可能會有所幫助(我們從 10 秒開始,增加這意味着更少的圖像,因此更少的請求)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM