RTSP works in VLC (macOS), but not VLC (iOS)
I have been able to use EvoStream for pushing a stream from my camera (using ffmpeg) and then consuming the rtmp/rtsp/hls/dash streams from the EvoStream server using VLC on my Mac. I\’ve also been able to consume the rtsp stream directly from the camera on a local network using VLC for iOS. But, if I try to playback the rtsp stream from EvoStream using VLC on iOS, it seems to establish the connection and then fail with the following:
**********************************
1490402180:0:/thelib/src/protocols/rtp/basertspappprotocolhandler.cpp:718:HandleRTSPRequestSetup:Invalid state
1490402180:0:/thelib/src/protocols/rtp/rtspprotocol.cpp:391:SignalInputData:Unable to handle content
1490402180:0:/thelib/src/netio/epoll/tcpcarrier.cpp:93:OnEvent:Unable to read data from connection: (Far: xxx.xx.xxx.251:53647; Near: 10.0.3.224:5544) CTCP(29) <-> [TCP(1717)] <-> RTSP(1718). Signaling upper protocols failed ********************************** Is there some known issue using VLC on iOS for playback?
1490402180:0:/thelib/src/protocols/rtp/basertspappprotocolhandler.cpp:718:HandleRTSPRequestSetup:Invalid state
1490402180:0:/thelib/src/protocols/rtp/rtspprotocol.cpp:391:SignalInputData:Unable to handle content
1490402180:0:/thelib/src/netio/epoll/tcpcarrier.cpp:93:OnEvent:Unable to read data from connection: (Far: xxx.xx.xxx.251:53647; Near: 10.0.3.224:5544) CTCP(29) <-> [TCP(1717)] <-> RTSP(1718). Signaling upper protocols failed ********************************** Is there some known issue using VLC on iOS for playback?
5 Answers
Hi jnorgan!
I was able to do playback with VLC on iOS:
- VLC for iOS v.2.7.8
- iOS v10.2.1
I am using VLC for iOS v2.7.8 (278.1) on iOS 10.2.1. No firewall issue as I am running EvoStream on an AWS instance and was successfully playing an RTSP stream from this same server using VLC for Mac from a laptop on the same network as the iPhone.
The EMS version I am running is:
EvoStream Media Server (www.evostream.com) version 1.7.1 build 4491 with hash: 64b305253110afc4acd5aeaf87f0a0b0f9b53526 – PacMan|m| – (built for Ubuntu-16.04-x86_64 on 2016-06-17T10:05:48.000)
The logs are what I pasted in the original question. I can paste more log messages, but they don’t appear to be relevant.
Hi jnorgan!
I replicated the issue you encountered. We will raise a ticket for this. This only occurs with the EMS in Amazon.
Kindly use the RTMP protocol first as we are going to investigate on this.
Thank you!
Great! Any idea on possible estimates for a fix? I’m currently evaluating EvoStream for a large-scale project and need to know that we’ll be able to use the RTSP streaming from EvoStream running on an AWS instance.
Please let me know if I can help in any way.
Hi jnorgan! Sorry for the delay, we found out that this is not an issue with EMS. It looks like the Amazon networking layers are trimming off the UDP traffic for typical RTSP connections. By telling VLC to request TCP that problem is eliminated and playback will succeed. Unfortunately we cannot see the configuration in the VLC iOS app. In VLC desktop app you will see the option “Use RTP over RTSP (TCP)“, see attached.
Thank you!