如何在MediaMTX服务器上将传入流分割成多个不同分辨率的流? rtsp中有一个输入流,需要将其分割成多个不同分辨率的通道。我想朝ffmpeg的方向发展,但我不明白如何在mediamtx设置中注册它。
谢谢克里斯托夫:
nano /usr/local/bin/rtsp.sh
#!/bin/bash
ffmpeg -use_wallclock_as_timestamps 1 -rtsp_transport tcp -i "rtsp://localhost:8554/mystream" \
-vf scale=1280:720 -vcodec libx264 -preset:v ultrafast -tune zerolatency -crf 33 -an -rtsp_transport tcp \
-c:a copy -f rtsp "rtsp://localhost:8554/mystream720p" &
ffmpeg -use_wallclock_as_timestamps 1 -rtsp_transport tcp -i "rtsp://localhost:8554/mystream" \
-vf scale=854:480 -vcodec libx264 -preset:v ultrafast -tune zerolatency -crf 33 -an -rtsp_transport tcp \
-c:a copy -f rtsp "rtsp://localhost:8554/mystream480p" &
ffmpeg -use_wallclock_as_timestamps 1 -rtsp_transport tcp -i "rtsp://localhost:8554/mystream" \
-vf scale=640:360 -vcodec libx264 -preset:v ultrafast -tune zerolatency -crf 33 -an -rtsp_transport tcp \
-c:a copy -f rtsp "rtsp://localhost:8554/mystream360p"
在 mediamtx.yaml 中
paths:
mystream:
runOnReady: /usr/local/bin/rtsp.sh
runOnReadyRestart: yes