This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hi experts,
I'v implemented a UDP sender/receiver socket with gstreamer pipelines in two EVMs (TMDSEVM572x).
in the first EVM (as UDP sender), the gstreamer pipeline involves v4l2src, deinterlace, vpe, ducatih264enc, appsink elements. and all encoded frames are read from appsink then sent to UDP socket.
in the second EVM (as UDP receiver), UDP packets is received and pushed to appsrc element of gstreamer pipeline. the gstreamer pipeline have elements appsrc, h264parse, ducatih264dec, vpe, waylandsink.
also in a PC , a C# program is written to receive UDP packets and decode them to play video in real time. a similar gstreamer pipeline is implemented in PC program C# (with elements appsrc, h264parse, avdec_h264, fpsdisplaysink).
in both PC and EVM receiver side, whenever a packet is received, it is pushed to appsrc element immediately.
my problem is that while in PC side all packets are received and played correctly with correct fps (same as that is run in sender side, 50 fps), but in second EVM as UDP receiver, the fps in not correct. it is played with lower frame rate (I think it is about 10 fps or lower) and frames are buffered and played with increasing latency. it is shown that after stoping sender side UDP TX, the receiver side continues to play buffered frames long time.
how can I resolve this problem?
any help will be appreciated,
Best Regards,
Ali
Hi all
I'm waiting for a response !
no anyone who can reply and tell me any solution ?
Ali
Hi All TI experts
I wonder if there is not anybody to respond this question?!
...
...
BR,
Ali
Ali,
Are you following http://software-dl.ti.com/processor-sdk-linux/esd/docs/latest/linux/Foundational_Components_Multimedia_IVAHD.html?highlight=gstreamer#multimedia and leveraging the h.264 encode and decode demos from the SDK directly, or is this a custom application?
Best regards,
Dave
Hi, Why are you using avdec_h264 to decode the video? It will run on Arm core which doesn't have enough horse power to decode h264 compressed stream.
You should use ducatih264dec plugin to decode the content on hardware accelerator. Check the example pipelines mentioned in the document here for hardware accelerated video decode.
Regards,
Manisha
Hi all freinds , TI & non-TIs experts.
I'm wanna say that the problem is resolved with adding element videorate in pipeline and decreasing the fps to 25.
thanks all
BR,
Ali
Hi Dave
thank you for your attention.
my problem is resolved with adding Element videorate to pipeline in UDP sender side an decreased fps to 25.
Best Regards,
Ali
Hi Manisha
thanks a lot for your response.
the element avdec_h264 is used in PC side in C# program and it has been running correctly W.O any problem. the problem was in EVM receiver side and I'v used the element ducatih264dec in pipeline.
I should mention that the problem is resolved with adding videorate element in gstreamer pipeline in sender side.
thanks and Best Regards,
Ali
Thanks for the update Ali and great to know your problem is resolved now.