作为服务运行时,ffmpeg -hls_time 选项无法正常工作

标签 ffmpeg

我正在运行 ffmpeg 命令作为 systemd 服务来捕获实时 RTSP 流并生成 hls block ,使用 -hls_time 选项将 block 设置为 30 秒长,当我自己在控制台上运行命令时它可以正常工作,但是当它从服务 block 运行时,wish 应该是 30 秒长,即 7 或 8 秒。
这是命令:

/usr/bin/ffmpeg -rtsp_flags prefer_tcp -i "rtsp://192.168.1.16:554/user=admin&password=&channel=1&stream=1.sdp" -acodec copy -vcodec copy -hls_time 30 -hls_list_size 10 -hls_flags append_list+delete_segments -f hls -use_localtime 1 -hls_segment_filename "/home/zurikato/video-backup/${FILENAME_FORMAT}_hls.ts" /home/zurikato/video-backup/playlist.m3u8



我是ffmpeg和linux服务的初学者,所以如果这是一件简单的事情,请原谅我。
提前致谢

最佳答案

使用 vcodec 复制时,您将受到传入媒体的关键帧间隔的支配。除非您对视频流进行转码,否则您无法在服务器端执行任何操作。

关于作为服务运行时,ffmpeg -hls_time 选项无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54521818/

相关文章:

ios - FFMPEG 在解码流时对每一帧提出请求,性能降低

matlab - 使用 MATLAB 和 ffmpeg 快速创建电影

python - 使用 FFMPEG : Glitchy\Desync output 连接视频

ffmpeg - 获取带字幕的视频截图

ffmpeg - 尝试在 Windows 上使用 NVIDIA 硬件加速支持构建 ffmpeg 时出现未知选项 "–disable-shared"

ffmpeg - 抽屉盒 : error when evaluating the expression 'max'

audio - FFmpeg 将音频持续时间附加到文件名

php - FFmpeg 权限被拒绝 CENTOS - PhpVideoToolKit

audio - 未找到输出流 #0 :1 的编码器(编解码器无)

python - ffmpeg rtmp 在 youtube 上播放速度低于 1x