我正在使用 nginx-rtmp-module
here 从本地网络上的摄像头提取 rtsp
流并将其转换为 rtmp
。然后将此 rtmp
流转换为 hls
并可供直播。它也被记录在 5 分钟的片段中。 (这些都可以在下面的 nginx.conf
中看到)。
我想将视频编解码器更改为 h265
以节省存储空间,因为每 5 分钟的视频为 ~230mb
,并且使用 opencv
和 python
,我能够使用 <100mb
每 5 分钟获得 h265
,所以我知道有很多空间可以节省存储空间。
如何将流的编解码器更改为 h265
?
我尝试安装 libx265-dev
并设置 -vcodec libx265
,但是这告诉我 flv
是一个无效的容器,而且我找不到用于流式传输 + 录制的有效容器。< /p>
我的nginx.conf
:
rtmp {
server {
listen 1935; # Listen on standard RTMP port
application relay {
live on;
hls on;
hls_path /tmp/hls;
hls_fragment 15s;
exec_static /usr/bin/ffmpeg -i rtsp://test:test@192.168.100.10:8554/fhd -vcodec copy -f flv rtmp://localhost:1935/relay/fhd;
# record block
record video;
record_path /tmp/hls;
record_unique on;
record_interval 5m;
}
}
}
答案 0 :(得分:3)
RTMP 协议不支持 h.265 编解码器。没有标准的方法可以做到这一点。