I want to read from an RTP stream, but when I specify "test.sdp" to avformat_open_input()
I get this message:
[rtp @ 03928900] Protocol not on whitelist 'file'!
Failed: cannot open input.
avformat_open_input() fail: Invalid data found when processing input
Normally if I were using ffplay on the console, I would add the option -protocol_whitelist file,udp,rtp
and it would work fine.
So I tried this:
AVDictionary *d = NULL;
av_dict_set(&d, "protocol_whitelist", "file, udp, rtp", 0);
ret = avformat_open_input(&inFormatCtx, filename, NULL, &d);
But the same message still pops up. Any ideas?
This is awkward...
avformat_open_input
failed because I have white spaces. Removing the whitespaces now work.EDIT: This answer works up to some version. You should use the options parameter of avformat_open_input as described in bot1131357's answer
I'm not totally sure about this, but I believe this options go into the AVFormatContext
Take a look at the cvs log of this change: https://ffmpeg.org/pipermail/ffmpeg-cvslog/2016-March/098694.html