将(从webm、rtmp等任何格式)编码为通用hls或dash格式的“好”方法是什么???
我看到大量关于HLS和MPEG-DASH的讨论,视频标签看起来像这样
<video width="90%" height="669" controls > <source src="index.m3u8" type="application/x-mpegURL" > </video>
但FFMPEG中的好命令是什么?
当我这么做的时候
ffmpeg -i file.webm -acodec aac -vcodec libx264 -movflags faststart -s 640x360 -start_number 0 -hls_time 10 -hls_list_size 0 -f hls index.m3u8
它只能在chrome中播放:(
但我需要它能在safari、firefox、opera等平台上播放
我最近看过关于MP4box的讨论,能将任何源代码转换成通用可播放流的最佳线路是什么?
Hi发现了一个经过测试并可以使用的代码
注1;输入可以是https://www.....file.webm ;) webm可以在一台服务器上生成,ffmpeg可以在另一台服务器上生成;)
注2;(未经测试),但似乎FFMPEG可以听IP凸轮以及ffmpeg-rtsp_flags听-i rtsp://own地址/live.sdp
FFMPEG:
ffmpeg -re -v verbose -i "file.webm" -c:v libx264 -c:a aac -ac 1 -strict -2 -crf 18 -profile:v baseline -maxrate 1000k -bufsize 1835k -pix_fmt yuv420p -flags -global_header -hls_time 10 -hls_list_size 6 -hls_wrap 10 -start_number 1 'index.m3u8'
HLS通用可播放HTML;)多亏了hls。jshttps://github.com/video-dev/hls.js/
<html>
<head></head>
<body>
<script src="https://cdn.jsdelivr.net/npm/hls.js@latest"></script>
<center><video width="90%" height="600" id="video" controls="" src="https://moctobpltc-i.akamaihd.net/hls/live/571329/eight/playlist.m3u" playsinline="true" ></video></center>
<script>
var video = document.getElementById("video");
var videoSrc = "https://moctobpltc-i.akamaihd.net/hls/live/571329/eight/playlist.m3u8";
if (video.canPlayType("application/vnd.apple.mpegurl")) {
video.src = videoSrc;
} else if (Hls.isSupported()) {
var hls = new Hls();
hls.loadSource(videoSrc);
hls.attachMedia(video);
}
</script>
</body>
</html>
***********它必须在http或最好是https中:因为本地测试不起作用
****另一个注意事项:视频标签中的playsinline=“true”适用于IOS和WKWebview,以避免被迫只能全屏观看
这个. m3u8是一个实时阿卡迈播放列表...
它是一个后端API(由RubyonRails开发),iphone和android手机使用它上传视频。API正在将上传的视频转换为MP4格式。我在后端使用曲别针ffmpeg gem进行视频转换。以下是我使用的: 我面临的问题有: 当用户从Android手机上传视频时,它在Android手机上运行良好,但在iPhone上无法播放。当用户从iPhone上传视频时,会发生另一件奇怪的事情,视频上传后,它会
我在PCAP文件中捕获了H264流,并试图从数据中创建媒体文件。容器并不重要(avi、mp4、mkv、...)。 当我使用Videosnarf或rtpbref(结合在每个数据包之前添加00 00 00 01的python代码)然后ffmpeg时,只有当输入帧率恒定(或接近恒定)时,结果才OK。但是,当输入为vfr时,结果播放得太快(在同样罕见的情况下太慢)。 例如: videosnarf-我捕捉到
问题内容: 我可以使用或标签播放播放列表并对其进行控制吗? 我的目标是知道视频/歌曲何时播放完毕,然后播放下一个并更改其音量。 问题答案: 您可以像这样在onend事件中加载下一个剪辑
我在另一个论坛上问过这个问题,但从来没有运气。我在网上找到了下面的命令,它应该使用FFMPEG从图像创建一个视频(每个持续时间为5秒)。 FFMPEG-F image2-r 1/5-i img%03d.png-vcodec libx264 out.mp4 编辑:添加命令行输出
在我的网络应用程序中,用户应该能够上传自己的视频(任意一种格式)。我正在使用ffmpeg对视频进行编码。mp4和。flv使用命令: ffmpeg-iuservid.whateveroutput.mp4output.flv 当ffmpeg对视频进行编码时,它会加载到用户页面上的flowplayer中。但flowplayer总是说“找不到文件”,因为ffmpeg编码尚未完成。 是否有可能在某个播放器中
我是一名大学生,现在正在学习FFmpeg。 当我使用这个公式时,我发现一个现象。 1.帧率越高,视频播放速度越快。 2.帧率越慢,视频播放速度越快。 我希望无论帧率是多少,视频播放速度都是合适的。不要太快或太慢。