Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

k0.11.8 版本note里面写的 support Network or Local Blu-ray Disc/BDMV,经测试发现远程的 iso 镜像播放报错。 #56

Open
huaibaobao2017 opened this issue Nov 10, 2024 · 6 comments

Comments

@huaibaobao2017
Copy link

ffmpeg的协议里支持bluray协议,但貌似只支持本地路径,想了解下远程播放的实现逻辑。

@debugly
Copy link
Owner

debugly commented Nov 11, 2024

估计是传给播放的地址有问题,比如现在 smb 服务器上有个 iso 的文件,地址如下:

smb2://user:password@host/videos/xx.iso

那么传给播放器的地址需要先百分号编码,然后加上 bluray:// 前缀,即:

bluray://smb2%3A%2F%2Fuser%3Apassword%40host%2Fvideos%2Fxx.iso

@huaibaobao2017
Copy link
Author

的确可以了。谢谢

@huaibaobao2017
Copy link
Author

huaibaobao2017 commented Nov 11, 2024

另外想请教下,播放远程iso文件的实现原理是啥?是通过代码的方式挂载镜像还是什么办法实现?我之前测试过貌似只支持本地路径。谢谢

@debugly
Copy link
Owner

debugly commented Nov 11, 2024

对bluray库做了移植,支持了Apple各个平台,然后自定义bluray读取数据的方式,替代本地file方式的默认实现,自定义读取数据层内部调用了 FFmpeg 内置的 url protocol 层,所以理论上可以支持任意协议播放 iso 镜像。
实现起来还是很麻烦的,不介意的话买杯咖啡给我哈。

@huaibaobao2017
Copy link
Author

huaibaobao2017 commented Nov 22, 2024

对bluray库做了移植,支持了Apple各个平台,然后自定义bluray读取数据的方式,替代本地file方式的默认实现,自定义读取数据层内部调用了 FFmpeg 内置的 url protocol 层,所以理论上可以支持任意协议播放 iso 镜像。 实现起来还是很麻烦的,不介意的话买杯咖啡给我哈。

经测试发现有个bug。测试过一些镜像,有些可以正常播放,有些不行(只能播放第一段,远程和本地都一样的问题)。
不行的这些iso镜像可能是分了好几段的,比如第一段是几秒钟,然后后面才是真正完整的内容。使用ijk只能播放第一段,然后就触发了eof了,不会再接着播放。我使用mpv来播放是可以正常播放的,播放顺序和ijk一样,但是mpv能接着后面的stream播放。

比如这个镜像:
magnet:?xt=urn:btih:7409fb070f9e01e0cddfd42dd4d75ff1a7829d16&dn=%E3%80%90%E9%AB%98%E6%B8%85%E6%8E%A7%E8%81%94%E7%9B%9F%E3%80%91%5B%E5%8E%9F%E7%9B%98%5D%E4%BC%8D%E4%BD%B0%E5%85%89%E5%92%8C%E7%83%AD%EF%BC%9A%E6%97%A0%E5%B0%BD%E9%97%AA%E4%BA%AE%E7%9A%84%E4%B8%96%E7%95%8C%E5%8F%B0%E5%8C%97%E6%BC%94%E5%94%B1%E4%BC%9A.Wubai.%26.China.Blue.-.Light.%26.Hot.Live.In.Taipei.2014.1080i.Blu-ray.AVC.DTS-HD.MA.5.1-TTG&xl=46511021461

@huaibaobao2017
Copy link
Author

bluray://longest 可能需要加一个这样的参数。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants