• Ubuntu 18.04
• Jetson NX (not the devkit)
• DeepStream 6.0, JetPack 4.6, TensorRT 8.0.1.6
• Ffmpeg version 3.4.11-ubuntu0.1
Good day,
My colleague and I are trying to run our GStreamer pipeline (compiled in C++) using rtmp feeds. It works properly when the source is an rtsp URI, but not so well when it is an rtmp URI.
We first list down some ffmpeg commands in a .Json file, each pertaining to a different video source. The rtmp URIs are then re-published using an rtmp server similar to nginx’s rtmp.
This is how we generate the ffmpeg command in the JSON:
{
"apps": [
{
"name": "test",
"script": "ffmpeg -r 30 -f lavfi -re -i \"movie=test.mp4\" -vf scale=704:480 -vcodec libx264 -profile:v baseline -pix_fmt yuv420p -f flv rtmp://localhost:1936/test",
"namespace": "camera"
}
{
"... "
}
}
We have a catch in our code to indicate that the pipeline cannot bring the uridecode bin, that is created using that rtmp feed, into the PLAYING state. Also, the GStreamer pipeline throws the following error in the terminal output on receiving and attempting to play the rtmp feed:
WARNING from elementsrc_0 : Could not parse RTMP URI
Error details: gsturidecodebin.c(1415) gen_source_element… No element accepted URI ‘rtmp://…’
Aside from this, we previously generated the same rtmp stream using a short ffmpeg program, that is, without the rtmp server, and it ran in our pipeline without challenges.
We aren’t sure whether the issue here is to do with the encoding/decoding and were hoping you could shed some light on it. If my question is missing some pertinent info, do raise this and I’ll try improve it.
Thank you for any help you can provide.