- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正尝试在 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 测试器工具发出的请求没有任何可见性,所以我不知道哪个请求可能会失败。
当我在测试 channel 上播放视频时,效果很好,所以我知道 HLS 正在按预期工作。但是,当我在播放视频时尝试搜索时,缩略图不显示并且进度条停留在起始位置。
任何建议将不胜感激 - 特别是如果有一种方法可以从流/raf 测试工具中查看日志记录!
最佳答案
您好,我遇到了与 DASH 类似的问题,它的行为与您描述的类似,洗涤器位置为 0。
我不知道为什么你的擦洗不起作用。就
Any advice would be greatly appreciated - especially if there is a way to see logging from the stream/raf testing tool!
一种方法是在测试 channel 和发布视频流的远程端点之间添加代理服务器。我在 GO 中写了一个简单的代理。这是代码 https://play.golang.org/p/-EA8bVt75cG我在我的示例代码中将服务器本地部署在 localhost:8998 上。然后在流测试器请求中将您的主机:端口替换为本地主机: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
关于http-live-streaming - 使用 Stream/RAF Tester 调试 Roku 技巧模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66173540/
我在 Roku 中创建了登录面板。在登录时,我可以单击确定按钮导航到另一个面板。 我创建了一个登录面板,其中使用两个文本框,一个用于用户名,另一个用于密码,还有两个按钮,一个用于登录,另一个用于取消。
在 Roku 中,如何从文件夹 tmp: 中的临时文件中读取和写入数据?我找不到任何与此相关的文档。我存储的数据太大而无法存储在注册表中。 最佳答案 有两个简单的函数可以从 tmp:/ 读取和写入数据
我正在开发 Roku 应用,我们需要用户的出生日期。尽量不要在解析端变得太复杂(所以宁愿不只是有一个文本框,用户可以在其中输入他们想要的任何内容)。我研究过使用 roPinEntryDialog,但不
我正在使用 BrightScript 和 SceneGraph 组件在圆形 View 中显示图像,但未找到圆形 View 选项。我想要一个像下图这样的 View : 最佳答案 您必须插入您的 Post
我需要帮助理解深度链接,因为我们的 Roku 场景图应用程序被 Roku 拒绝了。 Roku 在此解释深层链接:https://sdkdocs.roku.com/display/sdkdoc/Deep
我想知道是否可以使用终端将 channel 的 zip 文件上传到 roku 设备。看起来应该是可行的,因为有一个可用于 Eclipse 的插件,但我的目标是尽可能不使用 Eclipse。任何帮助,将
我在禁用 Roku 应用程序中的“快进”、“暂停”等远程控制按钮时遇到问题。这是一个非常简单的应用程序,只有一个主场景,它只创建一个视频节点来播放我们电视 channel 的直播流。 Roku 接受了
roUrlTransfer 对象的 AsyncPostFromString 方法生成一个超时为 30 秒的 CURL 请求。 即 port = CreateObject ("roMessagePort
我可以使用curl从我的Roku设备中的计算机获取应用程序和应用程序ID。最终,我可以使用本地计算机上的curl 来启动 channel ,例如curl -d '' ' http://192.x.x.
我可以在 Roku 设备中使用 curl 从我的计算机获取应用程序和应用程序 ID。最终,我能够使用本地计算机上的 curl 启动 channel ,例如curl -d '' ' http://192
我正在尝试使用下面的 XML Roku Channel、Scenegraph 代码填充标签列表。我收到这些错误: BRIGHTSCRIPT: ERROR: roSGScreen: creating M
我正在尝试扩展 Vector2DFieldInterpolator为了在给定三个点(起点、终点和中间点)的情况下制作平滑的弧形动画。 我已经通过设置 key 让它工作了和 keyValue常规字段 V
roku/brightscript 开发新手:是否可以将一个对象添加到全局关联数组(所有组件均可访问),该对象具有定义为属性之一的方法,并调用该方法? 主.brs: function Main()
使用场景图的明亮脚本。我想在没有字体节点的情况下更改默认字体的大小。我使用了“SmallestSystemFont”字体。它看起来比实际需要的字体大。 最佳答案 将此代码添加到附加到您的组件的脚本中
使用场景图的明亮脚本。我想在没有字体节点的情况下更改默认字体的大小。我使用了“SmallestSystemFont”字体。它看起来比实际需要的字体大。 最佳答案 将此代码添加到附加到您的组件的脚本中
因此,对于工作中的一个项目,我们的任务是为客户创建 Roku 应用程序。抱歉,如果这是一个愚蠢的问题,但我一般从未接触过 BrightScript 或 Roku 开发,而且主要是一个 React/Ja
假设我正在观察一个变量 m.someObject.observeField("content", "onContentChanged") 一段时间后我不再需要m.someObject。我需要清理和调用
当 roTextureManager 发现内存不足时,是否会自动清除或替换其缓存中的位图?我似乎找不到任何好的答案。 最佳答案 是的,据推测这就是 roTextureManager 的目的,尽管该行为
我在 Roku Brightscript 的屏幕导航中遇到了一些问题。请任何人帮助我如何在我的 Roku 项目中管理 5-6 屏幕。我想从 1 到 2 屏幕导航,也想从该屏幕返回。这是我过去 6 个月
我正在尝试截取在 lcdtv 上播放的 roku 应用程序的屏幕截图。 将您的 Roku 置于开发者模式。确认您的 Roku 的 IP 地址。 Side load your app to the Ro
我是一名优秀的程序员,十分优秀!