FFMpeg producer parameters support?


#1

Hello guys, I used to program myself to organize video sources and then live broadcast it, but I was so tired to implement complex functions until I found CasparCG, it is all what I need.

I need some function which can be done by FFMpeg parameters, but looking into CasparCG wiki, I don’t how to use FFMpeg parameters as producer (not as consumer)

for exmaple, I need "rtsp_transport tcp " for rtsp stream
when I do

play 1-9 rtsp://172.16.10.3:8554/vlc -rtsp_transport tcp 

rtsp video played, but still shows udp on the log, did I put it wrong or is it not supported?
any suggestion?

also, I will need to do 3d lut apply to video stream by using ffmpeg parameters later


#2

I succeed to get 3dlut filter working
but still no luck on -rtsp_transport tcp
without this, I got a lot packet missing error

[2020-04-18 14:44:17.654] [warning] [ffmpeg] [rtsp @ 000001B84116FE80] max delay reached. need to consume packet
[2020-04-18 14:44:17.654] [warning] 
[2020-04-18 14:44:17.654] [warning] [ffmpeg] [rtsp @ 000001B84116FE80] RTP: missed 7 packets
[2020-04-18 14:44:17.654] [warning] 
[2020-04-18 14:44:17.654] [warning] [ffmpeg] [rtsp @ 000001B84116FE80] max delay reached. need to consume packet
[2020-04-18 14:44:17.654] [warning] 
[2020-04-18 14:44:17.654] [warning] [ffmpeg] [rtsp @ 000001B84116FE80] RTP: missed 6 packets
[2020-04-18 14:44:17.654] [warning] 
[2020-04-18 14:44:17.654] [warning] [ffmpeg] [rtsp @ 000001B84116FE80] max delay reached. need to consume packet
[2020-04-18 14:44:17.654] [warning] 
[2020-04-18 14:44:17.654] [warning] [ffmpeg] [rtsp @ 000001B84116FE80] RTP: missed 8 packets
[2020-04-18 14:44:17.654] [warning] 
[2020-04-18 14:44:17.654] [warning] [ffmpeg] [rtsp @ 000001B84116FE80] max delay reached. need to consume packet
[2020-04-18 14:44:17.654] [warning] 
[2020-04-18 14:44:17.654] [warning] [ffmpeg] [rtsp @ 000001B84116FE80] RTP: missed 7 packets
[2020-04-18 14:44:17.654] [warning] 
[2020-04-18 14:44:17.654] [warning] [ffmpeg] [rtsp @ 000001B84116FE80] max delay reached. need to consume packet

and video got glitch sometimes


#3

I did a workaround

just add some code

    if (url_parts.first == L"http" || url_parts.first == L"https") {
        FF(av_dict_set(&options, "http_persistent", "0", 0)); // NOTE https://trac.ffmpeg.org/ticket/7034#comment:3
        FF(av_dict_set(&options, "http_multiple", "0", 0));   // NOTE https://trac.ffmpeg.org/ticket/7034#comment:3
        FF(av_dict_set(&options, "reconnect", "1", 0));       // HTTP reconnect
        FF(av_dict_set(&options, "referer", filename_.c_str(), 0)); // HTTP referer header
    } else if (url_parts.first == L"rtmp" || url_parts.first == L"rtmps") {
        FF(av_dict_set(&options, "rtmp_live", "live", 0)); // HTTP referer header
    }
    **else if (url_parts.first == L"rtsp" || url_parts.first == L"rtsps") {**
**        FF(av_dict_set(&options, "rtsp_transport", "tcp", 0)); // HTTP referer header**
**    }**

hopefully, it will be fixed in future release


#4

it’s me again,

I just tried to enable Nvdec for decoding, but no lock, any one have some ideas?

        FF(av_dict_set(&options, "hwaccel", "cuvid", 0)); // HTTP referer header
        FF(av_dict_set(&options, "codec:v", "h264_cuvid", 0)); // HTTP referer header

CasparCG very low performance / high CPU usage compare to other tool?
#5

hello wher is this file or location to edit ?

thanks


#6

just search the whole code “rtmp”
you will find the location, and then add rtsp parameters for rtsp stream