小编Bru*_*o F的帖子

使用 libx264 编解码器在 FFmpeg 中编码的视频无法在移动设备上按预期播放

我目前正在进行一个项目,抓取 IP 摄像机视频并将其流式传输到网站。该摄像机位于海滩,因此想法是将流信号发送到服务器,然后从服务器发送到客户端设备。

\n\n

为此,我在海滩上使用了 Raspberry Pi 3 B+,负责从相机获取信号并将其发送到服务器。

\n\n

I\xe2\x80\x99m 使用 FFmpeg 将 RTSP 信号转换为 HLS 片段,然后将它们存储在服务器上,然后使用 VideoJS 7.4.1 在浏览器中播放片段。

\n\n

这是我\xe2\x80\x99m 使用的 FFmpeg 中的代码:

\n\n
ffmpeg -i  rtsp://CameraIP/onvif1 -c:v libx264  -preset veryfast -crf 17 -an -hls_time 40 -hls_list_size 5 ftp://ServerIP/stream/abc.m3u8\n
Run Code Online (Sandbox Code Playgroud)\n\n

这工作得很好,但问题是,Raspberry 使用了大约 70% 的 CPU 使用率来执行此任务,因此我必须降低质量,好消息是相机信号已经是 h264 格式(说 h264本机)所以我尝试不将视频编解码器转换为 libx264,而是使用以下命令复制流:

\n\n
ffmpeg -i  rtsp://cameraIP/onvif1 -c:v copy -an -hls_time 40 -hls_list_size 5 ftp://ServerIP/stream/abc.m3u8\n
Run Code Online (Sandbox Code Playgroud)\n\n

使用这个命令,CPU 使用率下降到 2% 或 3%,这很好,我可以提高质量,甚至更好,获得更好的相机。但问题是它不适用于手机(在 FireFix、Chrome 和 Safari 中尝试,在 Android 和 iO 操作系统中),VideoJS 显示此错误: …

h.264 ffmpeg

5
推荐指数
1
解决办法
4074
查看次数

标签 统计

ffmpeg ×1

h.264 ×1