Closed tobyzxj closed 2 years ago
不管是否是内存模式,实时播放的HLS的m3u8都从内存中读取了。
对的,但是代码中先去从本地文件系统中读取m3u8文件就有问题,老版本不管内存模式还是写本地文件模式,都会在本地文件系统中生成一个主m3u8文件, ts会写到这个文件中。这样会导致之前只配置内存模式的用户,升级到3.0.4版本之后,会去读取存在在本地文件系统中的这个老m3u8文件(理论上删除这个文件也就没问题了,但从老版本升级过来的用户就会遇到hls无法播放的问题,我升级后调试了老半天才发现是这个问题造成的)导致播放失败。
你说的没错,但是不需要判断内存模式
可以,那就是把打开本地的的语句直接删除好了
不是的,打开本地也需要的,因为有回放的需求,会保留一个完整的m3u8用来播放回放的视频
我明白你的意思了,那就是要对用户请求的m3u8文件路径进行判断,是请求实时m3u8文件,还是历史以unix时间戳存储的文件,如果请求的实时m3u8文件路径,就走内存,否则走本地文件,对吧
原来文件系统中存在stream.m3u8文件,导致在内存模式下,直接去打开stream.m3u8文件了,导致hls播放失败