07-21-2017 10:46 AM
Hi,
When using the application framework, I can send video using the UDP port and receive it without any problems. However, I can't get this to work in the LAA example.
Whenever I turn on a UDP video stream, my "PDSCH (CRC OK)" throughput drops to nothing from being near "PDSCH (overall)." The "PDSCH (overall)" stays the same.
I've turned off the "transmit counter value" on the main host VI so that the MINI MAC will send data from the FIFO. I've probed the UDP output, and I am definitely receiving UDP data and feeding it into the FIFO.
Any thoughts on this?
Are there any know limitations so that the video stream only works on certain settings or something?
Thanks,
ctarver
Solved! Go to Solution.
07-24-2017 01:00 PM
Hi Ctaver,
Can you be a little more specific with the LAA Application Example? Is it the one that is mentioned in this whitepaper?
07-24-2017 02:34 PM - edited 07-24-2017 02:35 PM
Hi,
Yes it is that from the whitepaper. The specific version is "LTE_WIFI_coex_2_0_1_RC1_20170629."
I open the example and change nothing except for the "transmit counter value" so that the MINI Mac takes data from the host.
I turn on the TX and RX, and everything works. We see some throughput.
Then, I turn on a VLC video stream to udp port 50000. The overall throughput stays constant, but the CRC ok throughput completely drops off.
These same steps works in the plain LTE application framework
Thanks,
-ctarver
07-26-2017 02:46 PM
Hi Ctarver,
Does this behavior occur if you stream random data to the UDP port? Or is it only when transmitting video data?
07-27-2017 10:48 AM
Hi,
So I did some experiments to further investigate.
I started by sending a small udp packet with just an ASCII string. Every small test packet I did, I was able to broadcast and successfully receive on the LAA testbed. Using a packet sniffer I could see my outgoing packet on UDP port 50000 and received packet on 60000 (default UDP ports in the LabView Code). My throughput remained constant with no issues.
I then created a simple matlab script to send random data to LabView over UDP.
port = 50000; amountOfRandomData = 309; u = udp('127.0.0.1',port); fopen(u); %Create random data r2 = randi(9,amountOfRandomData,1); %Use only 1 digit for each integer %Write to udp port fprintf(u, '%d', r2); %Clean up fclose(u); delete(u); clear u echoudp('off');
I found that my data would be broadcast successfully when I sent 309 bytes or less of random data. As soon as I tried to send 310 bytes or more, the "CRC ok" throughput would drop to 0 just like I was seeing when trying to send data on VLC.
So it seems that I have problems with longer UDP packets while using the LTE-U/LAA Application Example.
Any ideas?
Can anyone else duplicate this?
Thanks,
Ctarver
07-27-2017 12:53 PM
So I kept looking in this.
I was able to change the length of my vlc packets by adding a mtu argument.
>vlc SampleVideo_720x480_30mb.mp4 --mtu=70 --sout=#transcode{vcodec=h264,acodec=mpga,ab=128,channels=2,samplerate=44100}:udp{dst=127.0.0.1:50000} :sout-keep
My CRC Ok throughput still goes to 0 when I stream.
Then I went back to my Matlab and wrapped the UDP write function with a for loop. Although everything works for individual packets, the CRC Ok throughput goes to 0 when I do multiple packets back-to-back.
Weird.
07-31-2017 09:58 AM
Hi Ctarver,
Thanks for bringing this to our attention! I've brought this to our R&D team, and they have let us know that this is a bug within the LAA code. A fix is currently in progress, and will be eventually available.
Please let me know if you have any other questions!
07-31-2017 10:07 AM
Thanks!
It's good to know that it's not just me.
-ctarver
04-08-2019 05:27 AM
@ctarver can you please tell how to send and receive video streaming through udp port in plain lte application framework.
04-09-2019 04:04 PM
Hi Bh@nu,
The instructions for sending and receiving video streams through UDP can be found in the LTE Application Framework Getting Started Guide: http://www.ni.com/pdf/manuals/376778d.pdf.