问题标签 [shaka]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 最简单的 Shaka 播放器不工作
我想要的只是让我的 shaka-player 工作。我已经列出了我的电影目录中的所有文件。我的清单文件 (.mpd) 由位于同一目录中的 5 个不同的 webm 视频流文件组成(我意识到音频不存在,这在这种情况下并不重要)。
我几乎按照网站上的教程进行操作:
https://shaka-player-demo.appspot.com/docs/api/tutorial-welcome.html
我不确定为什么这不起作用。有人可以帮忙吗?
电影目录:
Movie_WebM.html:
电影.js:
html5-video - 沙卡球员是做什么的
<video>
据我了解,现代浏览器已经发展到一个标签可以在没有 JavaScript 的情况下播放 HLS 或 MPEG-DASH 流的地步。
Shaka Player ( https://github.com/google/shaka-player ) 似乎是一个 JS 库,用于......做<video>
标签已经做的事情。然而,它得到了积极的维护。
Shaka 提供了哪些不提供的<video>
功能?我什么时候/为什么要使用它?
javascript - 保存到离线而不使用 shaka 播放器创建播放器对象
有一个构造函数
有一个构造函数
但我想做的是保存一个视频网址,而页面中没有视频元素。有没有可能做。
如果我能在电子应用主要过程的背景下做到这一点,那就太好了。
android - iOS 扩展控制器和迷你播放器不会使用基于 shaka 播放器的 chromecast 接收器处理事件
我正在使用 https://github.com/google/shaka-player/tree/master/demo/cast_receiver
带有 iOS 客户端和 android 客户端。我的 iOS 它基于:
https://github.com/googlecast/CastVideos-ios
使用 Android,当 ai 在 shaka 播放器接收器上投射视频时,在迷你播放器或谷歌提供的扩展控制器上进行搜索、暂停、播放是没有问题的。
在 iOS 中,我收到以下消息:
-[GCKMediaControlChannel mediaSessionID] 调用需要有媒体状态而没有媒体状态的方法,忽略;确保媒体已加载,媒体通道已收到状态,并且在设备管理器尝试重新连接时未调用此方法
和其他日志:
-[GCKUIMediaController updateTransportControls] updateTransportControls; mediaclient is , mediaStatus is , _currentRequest is -[GCKUIMediaController request:didFailWithError:] request 15 failed with error Error Domain=com.google.GCKError Code=32 "No media session is available" UserInfo={NSLocalizedDescription=No media session is available}
ffmpeg - FFmpeg/DASH:mov/mp4 格式的持续时间或时间戳超出范围
我正在尝试将aac
流转换为破折号。问题是我遇到了很多错误,如下所示(尽管它似乎将其分割成多个文件,但我在播放器上也遇到了错误)。问题是为什么我会收到这些错误,我该如何解决?如果我只是将它“复制”为单个 mp4 文件,它可以正常工作。
输出
复制到单个 MP4 效果很好 ffmpeg -i "a.mkv" -y -map 0:1 -c:0 copy -f mp4 -dash 1 "out/out.mp4" -loglevel 错误
探测
沙卡调试
ffmpeg - ffmpeg dash Segment offset
I'm trying to integrate live-transcoding like "plex" or "emby" with my application.
I am able to serve dash content over to shaka-player or dash.js but only in 'live-mode'. But I want to enable seeking through the player.
I looked at plex and to enable this they create their own mpd file with duration so the player will have a full seekbar.
However when seeking the player will ask for a segment number eg: 449. I need to stop ffmpeg and restart with an offset (-ss <<segment * sgement_length>>)
, but ffmpeg will just restart a transcode session from segment 0 with an initial segment.
What I want is to tell ffmpeg to start at a seekpoint but only output from segment number and now-on.
When playing with hls and mpegts, I can tell ffmpeg to output at a certain segment : with the option -segment_start_number
but this is not available for dash. And plex use their own transcoder based of ffmpeg with the option -skip_to_segment
I tried to 'hack' around by keeping a manual offset on my web-server, even if I serve the "supposed" right segment after the seek point dash.js and shaka-player can't recover the stream.. VLC on the other habd is able to (probably more tolerent) to errors in segments.
Is the supposed right segment after a seek in dash (contains the initial segment) or only the segment.
Is ffmpeg able to start segmenting dash as a supposed segment (for seek and resume)
The same technique works in hls with forced key frames and a custom m3u8 (with all the "predicted" segments) but calculating the right segment length and the right bandwidth is much harder and hackish and dash is more tolerant to variation.
I would really like to be able to seek through my live transcoding video.
For reference here is a custom mpd file I serve to enable "seeking":
And here is the ffmpeg command to pull it off:
The media_seg_name
is where I prepend the custom seek_point let's say I want to seek to segment 1233 the template would be:
and the segments would be 1233_1 1233_2 1233_* So I can serve the right segment after seek. but the player does not recover and still downloading subsequent segments. I guess since a new initial segment is generated and I somehow miss headers for continuous playback after seek but I'm probably wrong.
Thanks for your help
http-live-streaming - DASH 和 HLS On Demand 与实时配置文件的分段 mp4
我正在尝试使用 Bento4 和 Shaka Packager 使用分段 mp4 为 DASH 和 HLS 输出文件。
我在理解 MPEG-DASH Live 和 On-Demand 配置文件之间的差异和优缺点时遇到了一些麻烦。如果我正在流式传输直播内容,我会使用 Live 配置文件,但对于静态点播视频,我似乎可以使用 On-Demand 或 Live 配置文件。每个配置文件以完全不同的文件格式和文件夹结构输出文件,按需输出包含 .mp4 文件的平面文件夹结构,实时输出包含 m4s 文件的嵌套文件夹结构。
对于不会直播的静态视频内容(例如浏览器支持、功效等),是否建议使用一个配置文件而不是另一个配置文件,如果是,为什么?
cobalt - 有没有人有一个版本的 Shaka 播放器与 Cobalt 一起工作
我一直在尝试使用 Cobalt 版本 11 基于存储库中的最新版本运行一个简单的 shaka 播放器测试页面。
目前使用 shaka player 的调试版本,我得到以下控制台日志:
有没有人成功让 shaka player 使用 Cobalt 浏览器工作?如果是这样,请您指出使用的版本以及是否进行了任何修改以使其正常工作。
ios - AVPlayer 未在 HLS 视频流中播放音频
我用 shaka 打包器创建了 HLS 清单和碎片化的 mp4 段。清单在 ios 和 web Safari 浏览器中可以正常播放。但是,当馈送到 AVPlayer 时,它只播放视频而不播放音频。
mediastreamvalidator 工具已验证流并且未显示任何错误。
hls_manifest.m3u8
hls_manifest_a.m3u8
hls_manifest_v.m3u8
我错过了什么?
http-live-streaming - Mpeg Dash - 碎片和分割
我正在尝试使用 shaka 打包器实现 Mpeg DASH 流。要生成每个持续时间为 5 秒的片段,-- segment_duration参数可以帮助我实现这一点。
https://google.github.io/shaka-packager/html/documentation.html#chunking-options
我可以从以下链接中看到片段视频是如何表示的
Fragmented mp4(fMP4) 究竟是什么?它与普通的mp4有什么不同?
- 碎片化的目的是什么?
- 打包器在分段时会自动创建片段吗?
- 每个段是否有 moof+mdat 如上所述?
- 什么是子段?
- 如果--segment_duration和--fragment_duration设置为相同的值会发生什么?
- --min-buffer-time 的目的是什么?