ffmpeg

Does ffmpeg violate the SAT>IP specification (DESCRIBE syntax)?


I am trying to play a SAT>IP stream using ffmpeg -i rtsp://sat.ip/?src=1&freq=11493&pol=h&sr=22000&msys=dvbs&pids=0,5100,5101,5101,8191, which returns method DESCRIBE failed: 404 Not Found. For reference, VLC plays the stream just fine.

When tcpflowing the ffmpeg traffic, I get the following:

192.168.002.104.34018-192.168.002.222.00554: OPTIONS rtsp://sat.ip:554/?src=1&freq=11493&pol=h&sr=22000&msys=dvbs&pids=0,5100,5101,5101,8191 RTSP/1.0
CSeq: 1
User-Agent: Lavf58.29.100


192.168.002.222.00554-192.168.002.104.34018: RTSP/1.0 200 OK
CSeq: 1
Public: OPTIONS, SETUP, PLAY, TEARDOWN, DESCRIBE


192.168.002.104.34018-192.168.002.222.00554: DESCRIBE rtsp://sat.ip:554/?src=1&freq=11493&pol=h&sr=22000&msys=dvbs&pids=0,5100,5101,5101,8191 RTSP/1.0
Accept: application/sdp
CSeq: 2
User-Agent: Lavf58.29.100


192.168.002.222.00554-192.168.002.104.34018: RTSP/1.0 404 Not Found
CSeq: 2

ffmpeg first issues an OPTION command, then a DESCRIBE, asking for the specified stream. The SAT>IP spec (http://www.satip.info/sites/satip/files/resource/satip_specification_version_1_2_2.pdf) however says in chap. 3.5.7:

If no session has been previously setup on the SAT>IP server (and thus no stream has been created), the response to the DESCRIBE request will be error message 404 (stream not found). So in my opinion ffmpeg violates the spec when issuing a URI-specfic DESCRIBE without a SETUP, and thus the 404 response is correct.

Am I missing something here?

(By the way, of course I tried to open an issue in the ffmpeg bug tracker, but registration does not work).


Solution

  • Just realized myself that SAT>IP somewhat conflicts with the underlying RTSP spec in this respect. RTSP allows the client to issue a DESCRIBE using the desired URI, whereas SAT>IP requires the client to SETUP this URI first.

    It seems that ffmpeg simply does not (cannot?) know about SAT>IP.