

ffmpegでrtmp送信してきた4kストリームを4分割して4つのrtmpに送信しようとしています。

[code]

    ffmpeg -i rtmp://127.0.0.1:1935/live/4k -filter_complex "[0:v]split=4[in1][in2][in3][in4];[in1]scale=w=1920:h=1080[in1s];[in2]scale=w=1920:h=1080[in2s];[in3]scale=w=1920:h=1080[in3s];[in4]scale=w=1920:h=1080[in4s];[in1s]setsar=1[1s];[in2s]setsar=1[2s];[in3s]setsar=1[3s];[in4s]setsar=1[4s];[1s]drawbox=x=0:y=0:w=960:h=540:color=black:t=fill[1s];[2s]drawbox=x=960:y=0:w=960:h=540:color=black:t=fill[2s];[3s]drawbox=x=0:y=540:w=960:h=540:color=black:t=fill[3s];[4s]drawbox=x=960:y=540:w=960:h=540:color=black:t=fill[4s];[1s]amix=inputs=1[a1];[2s]amix=inputs=1[a2];[3s]amix=inputs=1[a3];[4s]amix=inputs=1[a4]" -map "[a1]" -map "[1s]" -c:v libx264 -preset ultrafast -tune zerolatency -b:v 15000k -maxrate 15000k -bufsize 30000k -g 60 -keyint_min 60 -f flv rtmp://localhost:1935/live/stream1 -map "[a2]" -map "[2s]" -c:v libx264 -preset ultrafast -tune zerolatency -b:v 15000k -maxrate 15000k -bufsize 30000k -g 60 -keyint_min 60 -f flv rtmp://localhost:1935/live/stream2 -map "[a3]" -map "[3s]" -c:v libx264 -preset ultrafast -tune zerolatency -b:v 15000k -maxrate 15000k -bufsize 30000k -g 60 -keyint_min 60 -f flv rtmp://localhost:1935/live/stream3 -map "[a4]" -map "[4s]" -c:v libx264 -tune zerolatency -b:v 15000k -maxrate 15000k -bufsize 30000k -g 60 -keyint_min 60 -f flv rtmp://127.0.0.1:1935/live/stream4;
    
[/code]

というコマンドを打った所、(127.0.0.1にはnginx+nginx-rtmp-moduleでapplication
liveでstream1/stream2/stream3/stream4を設定)

[code]

    [Parsed_drawbox_9 @ 0xc41be40] Media type mismatch between the 'Parsed_drawbox_9' filter output pad 0 (video) and the 'Parsed_amix_13' filter input pad 0 (audio)
    [AVFilterGraph @ 0xc44b240] Error linking filters
    Error initializing complex filters.
    Invalid argument
    
[/code]

というエラーが表示されて実行できません。原因と対応はどのようにしたらいいのでしょうか？


CC BY-SA 4.0
2023-05-06T12:24:17.490
94770
2023-05-06T12:24:17.490
8593
question
ffmpeg nginx-rtmp-module
ffmpegが画面を4分割してrtmp送信しようとするが