我有HLS m3u8在IOS和Android上使用html5播放效果很好 <video>
但不能在桌面PC或桌面MAC(Chrome,Firefox)上播放
如何在台式机上玩m3u8?
是否存在可在桌面和移动设备上播放的视频流格式?
我正在尝试在 safari iOS 上使用 Aframe 流式传输 hls,其中 Aframe 在后台具有三个.js。但视频显示黑屏,仅播放音频。视频 src 的类型为 .m3u8。我试图通读很多相关的帖子,但似乎没有一个合适的解决方案。让 HLS 和 WebGL 在 iOS 上运行是一种一厢情愿的想法吗?如果没有,请有人帮我解决一个问题。
关于 github 上可用问题的一些讨论:
我从项目后端获取 m3u8 格式的 url。如何在react中播放m3u8格式..我正在使用React播放器包,但它似乎不支持它。有没有其他方法可以显示m3u8格式?我找到了 ReactHlsPlayer ..我也无法使用它显示谢谢
我遇到了这个stackoverflow链接,讨论播放m3u8文件:播放带有HTML视频标签的m3u8文件
我尝试过类似的东西来播放m3u8文件中的视频链接,就像在phpfiddle上一样:
echo '<video width="352" height="198" controls>
<source src="https://udemy-adaptive-streaming-prod.udemy.com/9287/72689/2012-04-30_04-09-49-f5ad53b1736807ee7f8837b37115aeeb/hls/677cda5a7077be8d22348b5edebd77db.m3u8?sign=%252BCIehx2LKCxUcNSU33mWdfm5SbA%253D&mign=EEsJDxEabAoMa1kFRgIfbEkIDw8RHGwKDGtZXAFYS3lHSwgIGEoJUl57U1sfTBQlBTYIFRkNEVlZfVtaAl5Dc15fAQ==&quality=HD" type="application/x-mpegURL"></video>';
Run Code Online (Sandbox Code Playgroud)
但它不起作用.它似乎显示了视频元素,但视频没有加载到其中.有可能以这种方式播放m3u8文件吗?我想播放的m3u8文件位于"https://www.udemy.com/excel-tutorial/
谢谢你的帮助.
我有一个 Blazor 托管应用程序,我需要根据客户请求从 AXIS 摄像机获取 h264 录制内容(通过 RTSP PLAY 命令)并以浏览器可以重现视频的方式返回它。如果向 AXIS 摄像机查询录音列表,答案包括这个,即我尝试在浏览器上播放的那个
<recording diskid="SD_DISK" recordingid="20211109_122753_1AB3_B8A44F2D0300" starttime="2021-11-09T11:27:53.060281Z" starttimelocal="2021-11-09T12:27:53.060281+01:00" stoptime="2021-11-09T11:43:01.125987Z" stoptimelocal="2021-11-09T12:43:01.125987+01:00" recordingtype="continuous" eventid="continuous" eventtrigger="continuous" recordingstatus="completed" source="1" locked="No">
<video mimetype="video/x-h264" width="800" height="600" framerate="15:1" resolution="800x600"/>
</recording>
Run Code Online (Sandbox Code Playgroud)
我可以通过“开放网络流...”并输入来成功地使用 VLC 重现录音
rtsp://192.168.0.125/axis-media/media.amp?recordingid=20211109_140710_E1A3_B8A44F2D0300
Run Code Online (Sandbox Code Playgroud)
然后提供用户名和密码,所以我确信命令是正确的。通过在 url 中嵌入用户名和密码,也可以在该项目中播放录音,其中使用了我下面使用的更简单的语法,因此我的示例可能有点过于复杂。
服务器端由于RtspClientSharp ,我可以成功检索流,但我无法以正确的方式返回它。到目前为止我有这个:
[HttpGet("RecordingsDemo")]
public async Task<IActionResult> RecordingsDemo() {
string deviceIp = "rtsp://192.168.0.125";
string recordingUri = "rtsp://192.168.0.125/axis-media/media.amp?recordingid=20211109_140710_E1A3_B8A44F2D0300";
Uri playRequestUri = new Uri(recordingUri);
CancellationTokenSource cts = new CancellationTokenSource();
NetworkCredential networkCredential = new NetworkCredential("user", "password");
ConnectionParameters connectionParameters = new ConnectionParameters(new Uri(deviceIp), …Run Code Online (Sandbox Code Playgroud) 我有一个视频,我想向用户展示('''用户,因为他可以访问Chrome PC或Chrome android).
如果有可能它会很好用html5标签,但因为它TS它不能......
所以,我需要一个更好的建议,我怎么能玩它们而不是打开vlc并复制并通过文件路径.但那是个糟糕的主意......
我看到这个库添加了VLC协议(vlc:// links),但我更喜欢使用服务器端解决方案.
我上传了一个示例文件,您可以在此处看到.
我不想将所有文件转换为另一种格式.
编辑:如果有人来这里,在接受@szatmary建议之后,GitHub上有一些项目是谁做的,但我不能使用其中任何一个没有部分转换(以某种方式),并且因为我正在使用非常大的文件(10G +)和极弱的计算机(单1.8 Cpu核心)我设法只显示音频,而不是真正的解决方案,但满足我的需求.