[Live-devel] Live Streaming to Nokia/RealPlayer with DarwinInjector

Simonsen, Erlend erlend.simonsen at aspiro.com
Thu Oct 27 14:58:32 PDT 2005


I'm having some problems figuring out why this isn't working, and how I
can get it to work.

I have a live AMR-NB stream, which I feed to a Darwin Streaming Server
using LiveMedia/DarwinInjector. QuickTime, RealPlayer 10 and cellphones
not using RealPlayer get the stream fine and play it correctly. 

But my Nokia phones with the RealMedia Player (mc.26.08.01 (s60;
epoc_av21_thumb)) refuses to play the stream at all. It gets the sdp
file, issues a PLAY command, and I can see the server sending it lots of
UDP packets. The sample_50kbit.3gp file that shipped with DSS plays just
fine, so I know it's not a firewall/networking issue.

To make matters more confusing, testOnDemandRTSPServer with the same
AMR-NB live stream piped into stdin plays correctly on the Nokia
RealMedia Player. 

After comparing just about everything, all I can find that's different
is:

npt=0.000- vs npt=now-
track1 vs trackID=1
placing of the "c=IN IP4 0.0.0.0" line in the sdp file
a=type:broadcast only in LiveMedia

RTP/AVP;unicast;source=80.91.34.234;client_port=34152-34153;server_port=6970-6971
vs
RTP/AVP;unicast;destination=192.168.83.100;client_port=34152-34153;server_port=6970-6971

If I look at the packets sent to the cellphone, only the LiveMedia
stream contains a marker flag in the first UDP packet sent. 

Anyone have any ideas as to how to get the stream to play on the Nokia
Real players as well? I've tried adding a b=AS:10 line, but it still
doesn't work. I'm probably missing something obvious, and hopefully this
is doable (even though the RealPlayer is a bit .. picky).

Erlend Simonsen

Injected Darwin Stream:
-------------------------------------
Sending request: OPTIONS rtsp://stf2.inpoc.com/test_nb.sdp RTSP/1.0
CSeq: 1
User-Agent: ./openRTSP (LIVE555 Streaming Media v2005.10.05)


Received OPTIONS response: RTSP/1.0 200 OK
Server: DSS/5.5.2 (Build/493; Platform/Linux; Release/Development;
BuildNote/Sync to QTSS 5.5.2)
Cseq: 1
Public: DESCRIBE, SETUP, TEARDOWN, PLAY, PAUSE, OPTIONS, ANNOUNCE,
RECORD


Sending request: DESCRIBE rtsp://stf2.inpoc.com/test_nb.sdp RTSP/1.0
CSeq: 2
Accept: application/sdp
User-Agent: ./openRTSP (LIVE555 Streaming Media v2005.10.05)


Received DESCRIBE response: RTSP/1.0 200 OK
Server: DSS/5.5.2 (Build/493; Platform/Linux; Release/Development;
BuildNote/Sync to QTSS 5.5.2)
Cseq: 2
Cache-Control: no-cache
Content-length: 339
Date: Thu, 27 Oct 2005 11:28:07 GMT
Expires: Thu, 27 Oct 2005 11:28:07 GMT
Content-Type: application/sdp
x-Accept-Retransmit: our-retransmit
x-Accept-Dynamic-Rate: 1
Content-Base: rtsp://stf2.inpoc.com/test_nb.sdp/


Need to read 339 extra bytes
Read 339 extra bytes: v=0
o=- 1825052214 1825052214 IN IP4 127.0.0.1
s=Inpoc Streamer
i=3gp Test stream
c=IN IP4 0.0.0.0
t=0 0
a=x-qt-text-nam:Inpoc Streamer
a=x-qt-text-inf:3gp Test stream
a=x-qt-text-cmt:./test
a=x-qt-text-aut:
a=x-qt-text-cpy:
a=control:*
m=audio 0 RTP/AVP 96
a=rtpmap:96 AMR/8000
a=fmtp:96 octet-align=1
a=control:trackID=1

Opened URL "rtsp://stf2.inpoc.com/test_nb.sdp", returning a SDP
description:
v=0
o=- 1825052214 1825052214 IN IP4 127.0.0.1
s=Inpoc Streamer
i=3gp Test stream
c=IN IP4 0.0.0.0
t=0 0
a=x-qt-text-nam:Inpoc Streamer
a=x-qt-text-inf:3gp Test stream
a=x-qt-text-cmt:./test
a=x-qt-text-aut:
a=x-qt-text-cpy:
a=control:*
m=audio 0 RTP/AVP 96
a=rtpmap:96 AMR/8000
a=fmtp:96 octet-align=1
a=control:trackID=1

Created receiver for "audio/AMR" subsession (client ports 34152-34153)
Sending request: SETUP rtsp://stf2.inpoc.com/test_nb.sdp/trackID=1
RTSP/1.0
CSeq: 3
Transport: RTP/AVP;unicast;client_port=34152-34153
User-Agent: ./openRTSP (LIVE555 Streaming Media v2005.10.05)


Received SETUP response: RTSP/1.0 200 OK
Server: DSS/5.5.2 (Build/493; Platform/Linux; Release/Development;
BuildNote/Sync to QTSS 5.5.2)
Cseq: 3
Cache-Control: no-cache
Session: 5845442764220494154
Date: Thu, 27 Oct 2005 11:28:07 GMT
Expires: Thu, 27 Oct 2005 11:28:07 GMT
Transport:
RTP/AVP;unicast;source=80.91.34.234;client_port=34152-34153;server_port=6970-6971


Setup "audio/AMR" subsession (client ports 34152-34153)
Created output file: "audio-AMR-1"
Sending request: PLAY rtsp://stf2.inpoc.com/test_nb.sdp RTSP/1.0
CSeq: 4
Session: 5845442764220494154
Range: npt=0.000-
User-Agent: ./openRTSP (LIVE555 Streaming Media v2005.10.05)


Received PLAY response: RTSP/1.0 200 OK
Server: DSS/5.5.2 (Build/493; Platform/Linux; Release/Development;
BuildNote/Sync to QTSS 5.5.2)
Cseq: 4
Session: 5845442764220494154
Range: npt=now-
RTP-Info:
url=rtsp://stf2.inpoc.com/test_nb.sdp/trackID=1;seq=52192;rtptime=3685300734


Started playing session
Receiving streamed data (signal with "kill -HUP 15039" or "kill -USR1
15039" to terminate)...



testOnDemandRTSPServer
-----------
Sending request: OPTIONS rtsp://stf2.inpoc.com/test_nb.sdp RTSP/1.0
CSeq: 1
User-Agent: ./openRTSP (LIVE555 Streaming Media v2005.10.05)


Received OPTIONS response: RTSP/1.0 200 OK
CSeq: 1
Date: Thu, Oct 27 2005 11:40:22 GMT
Public: OPTIONS, DESCRIBE, SETUP, TEARDOWN, PLAY, PAUSE


Sending request: DESCRIBE rtsp://stf2.inpoc.com/test_nb.sdp RTSP/1.0
CSeq: 2
Accept: application/sdp
User-Agent: ./openRTSP (LIVE555 Streaming Media v2005.10.05)


Received DESCRIBE response: RTSP/1.0 200 OK
CSeq: 2
Date: Thu, Oct 27 2005 11:40:22 GMT
Content-Base: rtsp://80.91.34.234/test_nb.sdp/
Content-Type: application/sdp
Content-Length: 406


Need to read 406 extra bytes
Read 406 extra bytes: v=0
o=- 1130413133110199 1 IN IP4 80.91.34.234
s=Session streamed by "testOnDemandRTSPServer"
i=test_nb.sdp
t=0 0
a=tool:LIVE555 Streaming Media v2005.10.22
a=type:broadcast
a=control:*
a=range:npt=0-
a=x-qt-text-nam:Session streamed by "testOnDemandRTSPServer"
a=x-qt-text-inf:test_nb.sdp
m=audio 0 RTP/AVP 96
c=IN IP4 0.0.0.0
a=rtpmap:96 AMR/8000
a=fmtp:96 octet-align=1
a=control:track1

Opened URL "rtsp://stf2.inpoc.com/test_nb.sdp", returning a SDP
description:
v=0
o=- 1130413133110199 1 IN IP4 80.91.34.234
s=Session streamed by "testOnDemandRTSPServer"
i=test_nb.sdp
t=0 0
a=tool:LIVE555 Streaming Media v2005.10.22
a=type:broadcast
a=control:*
a=range:npt=0-
a=x-qt-text-nam:Session streamed by "testOnDemandRTSPServer"
a=x-qt-text-inf:test_nb.sdp
m=audio 0 RTP/AVP 96
c=IN IP4 0.0.0.0
a=rtpmap:96 AMR/8000
a=fmtp:96 octet-align=1
a=control:track1

Created receiver for "audio/AMR" subsession (client ports 34152-34153)
Sending request: SETUP rtsp://stf2.inpoc.com/test_nb.sdp/track1 RTSP/1.0
CSeq: 3
Transport: RTP/AVP;unicast;client_port=34152-34153
User-Agent: ./openRTSP (LIVE555 Streaming Media v2005.10.05)


Received SETUP response: RTSP/1.0 200 OK
CSeq: 3
Date: Thu, Oct 27 2005 11:40:22 GMT
Transport:
RTP/AVP;unicast;destination=192.168.83.100;client_port=34152-34153;server_port=6970-6971
Session: 4


Setup "audio/AMR" subsession (client ports 34152-34153)
Created output file: "audio-AMR-1"
Sending request: PLAY rtsp://stf2.inpoc.com/test_nb.sdp RTSP/1.0
CSeq: 4
Session: 4
Range: npt=0.000-
User-Agent: ./openRTSP (LIVE555 Streaming Media v2005.10.05)


Received PLAY response: RTSP/1.0 200 OK
CSeq: 4
Date: Thu, Oct 27 2005 11:40:22 GMT
Range: npt=0.000-
Session: 4
RTP-Info:
url=rtsp://80.91.34.234/test_nb.sdp/track1;seq=41740;rtptime=1149866836


Started playing session
Receiving streamed data (signal with "kill -HUP 15430" or "kill -USR1
15430" to terminate)...



More information about the live-devel mailing list