我正在尝试制作一个视频流服务器,并直接从网络浏览器观看视频。这个想法是让服务器从远程服务器上流式传输视频,在本地服务器上以不同的音频格式进行转码,然后立即流到客户端(这是我需要它工作的具体方式)。这是我目前使用的FFMPEG代码:
ffmpeg -i "url" -c:v copy -c:a aac -ac 2 -f hls -hls_time 60 -hls_playlist_type event -hls_flags independent_segments out.m3u8HLS流通过hls.js附加到HTML播放器上,并且可以正常工作。然而,在视频转码的过程中,视频的时长是不断变化的。我尝试过像$('video').duration = 120;这样的JS来改变视频时长,但没有成功。
如何让播放器显示视频文件时长,而不是流当前转码时间?
我也计划实现视频搜索,但我一无所知。当前的想法是将查找时间发送到服务器,终止ffmpeg,并从特定时间开始。然而,我认为播放器可能会在加载时卡住,如果不重新加载就不会开始玩。
发布于 2019-08-20 09:35:06
在段在磁盘上之前,Ffmpeg无法将段写入清单。如果你不想在媒体准备过程中出现“喜欢直播”的行为,你需要等待ffmpeg完成。
https://stackoverflow.com/questions/57564657
复制相似问题