publishing rtmp stream, and reading the stream via rtsp

1,675 views
Skip to first unread message

Nielsenaa

unread,
Jan 12, 2011, 9:00:19 PM1/12/11
to C++ RTMP Server
Hi !

i uncommented the acceptor for the rtsp part in rtmpd.lua ;

now say i can correctly view a rtmp stream im publishing to my server
at :

rtmp://server_ip/flvplayback/mylivestreamname

how can i now view the same live stream using rtsp ?

doing a simple :
rtsp://server_ip/flvplayback/mylivestreamname

does not work

what gives ?

I get this ending with a bad alloc :

/opt/crtmpserver/sources/thelib/src/protocols/rtp/
basertspappprotocolhandler.cpp:53 RTSP Request:
<MAP name="" isArray="false">
<MAP name="firstLine" isArray="false">
<STR name="method">SETUP</STR>
<STR name="url">rtsp://xx.x.x.x:554/flvplayback/
mystream31/809dc8bc22f0f033cbc3a9d555ea2d22</STR>
<STR name="version">RTSP/1.0</STR>
</MAP>
<MAP name="headers" isArray="false">
<STR name="CSeq">4</STR>
<STR name="Content-Length">0</STR>
<STR name="Transport">RTP/AVP;unicast;client_port=2508-2509</
STR>
<STR name="User-Agent">LibVLC/1.1.5 (LIVE555 Streaming Media
v2010.09.25)</STR>
</MAP>
<BOOL name="isRequest">true</BOOL>
</MAP>
/opt/crtmpserver/sources/thelib/src/protocols/rtp/rtspprotocol.cpp:242
Create stream
/opt/crtmpserver/sources/thelib/src/application/
baseclientapplication.cpp:123 Stream 5 of type ONP with name
`mystream31` registered to application `flvplayback`
terminate called after throwing an instance of 'std::bad_alloc'
what(): St9bad_alloc
Abandon

and the server goes dead, simply dead, have to relaunch

Os is centos 5.2, my rtmp stream is pure h264/aac , using wirecast
thx for any help!

Nielsenaa

unread,
Jan 12, 2011, 10:35:47 PM1/12/11
to C++ RTMP Server
oh forgot ! svn rev is 267

and i wasnt really trying with it, i mixed between servers, forget the
server is dying stuff..

i now have 267 tested for rtmp > rtmpd > rtsp ,

publishing works fine, and reading the stream via rtmp works fine

now if i try to read the rtsp stream version with vlc, i can't get
sound, or image, vlc connects, stays there for some seconds then
declare it fails

i use wirecast & fme 3.1 for publishing straight h264 aac content

What i am trying to do is to rtmp publish to server , be able to
read both via rtmp with a classic flash player, and rtsp using vlc
(v1.1.5), because it looks like vlc has great troubles reading rtmp
streams , even if the vlc teams says its officially supported..

any comment or help would be greatly appreciated
thx for reading

Bobby Bush

unread,
Jan 12, 2011, 11:02:33 PM1/12/11
to c-rtmp...@googlegroups.com
Try changing it to the VP6 codec in Wirecast.  Just out of curiosity...  I'm using wirecast as well, and for some reason, it acts weird when streaming in X.264 codec.

Thank you,

Bobby


You received this message because you are subscribed to "C++ RTMP Server" mailing list.
To post to this group, send email to c-rtmp...@googlegroups.com
To unsubscribe from this group, send email to
c-rtmp-serve...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/c-rtmp-server?hl=en

C++ RTMP Server

unread,
Jan 13, 2011, 6:29:39 AM1/13/11
to c-rtmp...@googlegroups.com
Under inspection....

Tx for the report

Cheers,
Andrei

> You received this message because you are subscribed to "C++ RTMP Server" mailing list.
> To post to this group, send email to c-rtmp...@googlegroups.com
> To unsubscribe from this group, send email to
> c-rtmp-serve...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/c-rtmp-server?hl=en

------
Eugen-Andrei Gavriloaie
Web: http://www.rtmpd.com

Anis Nielsen

unread,
Jan 13, 2011, 10:25:35 PM1/13/11
to c-rtmp...@googlegroups.com
Thank you Bobby for your suggestion, i tried that too, but i was explained just a bit earlierby Andrei that the stream categorically has to be an h264 | aac combination so rtmp streamer > rtmp > rtmpd server > rtsp > vlc can work, which is what i generally use.. but i also trust rtmpd's strict needs, which generaly comes with stability :)

Also thank you again Andrei, i will take appropriate time in a few hours to retest more strictly, and feed you back with proper logs, both from vlc and rtmpd 's console , with details about my rtmp stream encodings used in wirecast and fme

Cheers Everyone
Anis

Nielsenaa

unread,
Jan 15, 2011, 9:30:13 PM1/15/11
to C++ RTMP Server
Hi everyone, got my testings and here are the results , and my step by
step process :

I launch the server :

rtmpd console :
# ./rtmpserver/rtmpserver rtmpserver/rtmpserver.lua

+-----------------------------------------------------------------------------
+
|
Services|
+---+---------------+-----+-------------------------
+-------------------------+
| c | ip | port| protocol stack name | application
name |
+---+---------------+-----+-------------------------
+-------------------------+
|tcp| 0.0.0.0| 9311|
inboundDns| #none#|
+---+---------------+-----+-------------------------
+-------------------------+
|tcp| 0.0.0.0| 1935| inboundRtmp|
appselector|
+---+---------------+-----+-------------------------
+-------------------------+
|tcp| 0.0.0.0| 8081| inboundRtmps|
appselector|
+---+---------------+-----+-------------------------
+-------------------------+
|tcp| 0.0.0.0| 8080| inboundRtmpt|
appselector|
+---+---------------+-----+-------------------------
+-------------------------+
|tcp| 0.0.0.0| 6666| inboundLiveFlv|
flvplayback|
+---+---------------+-----+-------------------------
+-------------------------+
|tcp| 0.0.0.0| 9999| inboundTcpTs|
flvplayback|
+---+---------------+-----+-------------------------
+-------------------------+
|tcp| 0.0.0.0| 554| inboundRtsp|
flvplayback|
+---+---------------+-----+-------------------------
+-------------------------+
|tcp| 0.0.0.0| 8989| inboundHTTPDBAccess|
samplefactory|
+---+---------------+-----+-------------------------
+-------------------------+
|tcp| 0.0.0.0| 1111| inboundHttpXmlVariant|
vptests|
+---+---------------+-----+-------------------------
+-------------------------+
|tcp| 0.0.0.0| 6665| inboundLiveFlv|
proxypublish|
+---+---------------+-----+-------------------------
+-------------------------+

/opt/crtmpserver/sources/rtmpserver/src/rtmpserver.cpp:201 GO! GO! GO!
(5199)
/opt/crtmpserver/sources/thelib/src/netio/epoll/iohandlermanager.cpp:
96
Handlers
count changed: 11->12 IOHT_TCP_CARRIER
/opt/crtmpserver/sources/thelib/src/netio/epoll/tcpacceptor.cpp:134
Client
conne
cted: 127.0.0.1:41807 -> 0.0.0.0:9311
/opt/crtmpserver/sources/thelib/src/netio/epoll/iohandlermanager.cpp:
96
Handlers
count changed: 12->13 IOHT_TCP_CARRIER
/opt/crtmpserver/sources/thelib/src/netio/epoll/iohandlermanager.cpp:
105
Handler s
count changed: 13->12 IOHT_TCP_CONNECTOR

Server starts ok, Now i go for rtmp publishing, with wirecast :

rtmpd console :
/opt/crtmpserver/sources/thelib/src/protocols/rtmp/
basertmpappprotocolhandler.cpp:71 Register protocol CTCP(17) <->
TCP(5) <-> [IR(6)] to application appselector
/opt/crtmpserver/sources/thelib/src/protocols/rtmp/
inboundrtmpprotocol.cpp:126 This version of player doesn't support
validation
/opt/crtmpserver/sources/applications/appselector/src/
rtmpappprotocolhandler.cpp:81 Selected application: flvplayback
/opt/crtmpserver/sources/thelib/src/application/
baseclientapplication.cpp:152 Protocol CTCP(17) <-> TCP(5) <-> [IR(6)]
unregistered from application: appselector
/opt/crtmpserver/sources/thelib/src/protocols/rtmp/
basertmpappprotocolhandler.cpp:71 Register protocol CTCP(17) <->
TCP(5) <-> [IR(6)] to application flvplayback
/opt/crtmpserver/sources/thelib/src/application/
baseclientapplication.cpp:160 Stream 1 of type NR with name ``
registered to application `flvplayback`
/opt/crtmpserver/sources/thelib/src/protocols/rtmp/
basertmpappprotocolhandler.cpp:543 Try to publish stream slotch31.
/opt/crtmpserver/sources/thelib/src/application/
baseclientapplication.cpp:168 Stream 1 of type NR with name ``
unregistered from application `flvplayback`
/opt/crtmpserver/sources/thelib/src/application/
baseclientapplication.cpp:160 Stream 2 of type INR with name
`slotch31` registered to application `flvplayback`
/opt/crtmpserver/sources/thelib/src/streaming/streamsmanager.cpp:91
short name: slotch31; long name: slotch31
/opt/crtmpserver/sources/thelib/src/streaming/streamsmanager.cpp:99
short count: 0; long count: 0
/opt/crtmpserver/sources/thelib/src/protocols/rtmp/
basertmpappprotocolhandler.cpp:565 subscribedOutStreams count: 0
/opt/crtmpserver/sources/thelib/src/protocols/rtmp/streaming/
innetrtmpstream.cpp:305 Cached the h264 video codec initialization: 40
/opt/crtmpserver/sources/thelib/src/protocols/rtmp/streaming/
innetrtmpstream.cpp:284 Cached the AAC audio codec initialization: 4


/opt/crtmpserver/sources/thelib/src/netio/epoll/tcpacceptor.cpp:134
Client connected: my.comp.ip.adr:2737 -> 0.0.0.0:1935
/opt/crtmpserver/sources/thelib/src/netio/epoll/iohandlermanager.cpp:
96 Handlers count changed: 13->14 IOHT_TCP_CARRIER
/opt/crtmpserver/sources/thelib/src/protocols/rtmp/
basertmpappprotocolhandler.cpp:71 Register protocol CTCP(18) <->
TCP(10) <-> [IR(11)] to application appselector
/opt/crtmpserver/sources/applications/appselector/src/
rtmpappprotocolhandler.cpp:83 Selected application: flvplayback
(oflaDemo)
/opt/crtmpserver/sources/thelib/src/application/
baseclientapplication.cpp:152 Protocol CTCP(18) <-> TCP(10) <->
[IR(11)] unregistered from application: appselector
/opt/crtmpserver/sources/thelib/src/protocols/rtmp/
basertmpappprotocolhandler.cpp:71 Register protocol CTCP(18) <->
TCP(10) <-> [IR(11)] to application flvplayback
/opt/crtmpserver/sources/thelib/src/protocols/rtmp/
basertmpappprotocolhandler.cpp:324 User control message type:
RM_USRCTRL_TYPE_STREAM_SET_BUFFER_LENGTH
/opt/crtmpserver/sources/thelib/src/application/
baseclientapplication.cpp:160 Stream 6 of type NR with name ``
registered to application `flvplayback`
/opt/crtmpserver/sources/thelib/src/protocols/rtmp/
basertmpappprotocolhandler.cpp:668 Play request for stream name
`slotch31`. Start: -2; length: -1
/opt/crtmpserver/sources/thelib/src/application/
baseclientapplication.cpp:168 Stream 6 of type NR with name ``
unregistered from application `flvplayback`
/opt/crtmpserver/sources/thelib/src/application/
baseclientapplication.cpp:160 Stream 7 of type ONR4R with name
`slotch31` registered to application `flvplayback`
/opt/crtmpserver/sources/thelib/src/protocols/rtmp/
basertmpappprotocolhandler.cpp:324 User control message type:
RM_USRCTRL_TYPE_STREAM_SET_BUFFER_LENGTH

*******************************************************************************************************************************
Everything is fine, Publishing ok, stays fast, accurate and steady via
a flash player, as usual (jw in this case)
Wirecast doesnt complain, does its work

Then i try connecting and reading from rtsp with vlc, i connect at :
rtsp://server_ip/slotch31
*******************************************************************************************************************************
rtmpd console :

/opt/crtmpserver/sources/thelib/src/netio/epoll/tcpacceptor.cpp:134
Client connected: my.client.ip.adr:3487 -> 0.0.0.0:554
/opt/crtmpserver/sources/thelib/src/netio/epoll/iohandlermanager.cpp:
96 Handlers count changed: 14->15 IOHT_TCP_CARRIER
/opt/crtmpserver/sources/thelib/src/protocols/rtp/
basertspappprotocolhandler.cpp:1012 result: m=audio 0 RTP/AVP 96
a=recvonly
a=rtpmap:96 mpeg4-generic/44100/2

/opt/crtmpserver/sources/thelib/src/protocols/rtp/rtspprotocol.cpp:246
Create stream
/opt/crtmpserver/sources/thelib/src/application/
baseclientapplication.cpp:160 Stream 67 of type ONP with name
`slotch31` registered to application `flvplayback`
/opt/crtmpserver/sources/thelib/src/protocols/rtp/streaming/
outnetrtpudph264stream.cpp:387 Bogus AAC packet
/opt/crtmpserver/sources/thelib/src/protocols/rtp/connectivity/
outboundconnectivity.cpp:483 -----AUDIO-----
/opt/crtmpserver/sources/thelib/src/protocols/rtp/connectivity/
outboundconnectivity.cpp:484 _startupTime: 1295143365472558.00
/opt/crtmpserver/sources/thelib/src/protocols/rtp/connectivity/
outboundconnectivity.cpp:485 currentTime: 1295143365472565.00
/opt/crtmpserver/sources/thelib/src/protocols/rtp/connectivity/
outboundconnectivity.cpp:488 currentTime - _startupTime: 7.00 (0.0000)
/opt/crtmpserver/sources/thelib/src/protocols/rtp/connectivity/
outboundconnectivity.cpp:489 rate: 44100
/opt/crtmpserver/sources/thelib/src/protocols/rtp/connectivity/
outboundconnectivity.cpp:490 rtpDouble: 0.31
/opt/crtmpserver/sources/thelib/src/protocols/rtp/connectivity/
outboundconnectivity.cpp:491 firstRtp: 20430824
/opt/crtmpserver/sources/thelib/src/protocols/rtp/connectivity/
outboundconnectivity.cpp:492 rtp: 20430824
/opt/crtmpserver/sources/thelib/src/protocols/rtp/connectivity/
outboundconnectivity.cpp:494 packetRtp: 20431838
/opt/crtmpserver/sources/thelib/src/protocols/rtp/connectivity/
outboundconnectivity.cpp:495 diff: 1014; (0.0230 s)
/opt/crtmpserver/sources/thelib/src/protocols/rtp/connectivity/
outboundconnectivity.cpp:496 ---------------
/opt/crtmpserver/sources/thelib/src/protocols/rtp/connectivity/
outboundconnectivity.cpp:483 -----VIDEO-----
/opt/crtmpserver/sources/thelib/src/protocols/rtp/connectivity/
outboundconnectivity.cpp:484 _startupTime: 1295143365472558.00
/opt/crtmpserver/sources/thelib/src/protocols/rtp/connectivity/
outboundconnectivity.cpp:485 currentTime: 1295143365504607.00
/opt/crtmpserver/sources/thelib/src/protocols/rtp/connectivity/
outboundconnectivity.cpp:488 currentTime - _startupTime: 32049.00
(0.0320)
/opt/crtmpserver/sources/thelib/src/protocols/rtp/connectivity/
outboundconnectivity.cpp:489 rate: 90000
/opt/crtmpserver/sources/thelib/src/protocols/rtp/connectivity/
outboundconnectivity.cpp:490 rtpDouble: 2884.41
/opt/crtmpserver/sources/thelib/src/protocols/rtp/connectivity/
outboundconnectivity.cpp:491 firstRtp: 41697000
/opt/crtmpserver/sources/thelib/src/protocols/rtp/connectivity/
outboundconnectivity.cpp:492 rtp: 41699884
/opt/crtmpserver/sources/thelib/src/protocols/rtp/connectivity/
outboundconnectivity.cpp:494 packetRtp: 41697000
/opt/crtmpserver/sources/thelib/src/protocols/rtp/connectivity/
outboundconnectivity.cpp:495 diff: -2884; (-0.0320 s)
/opt/crtmpserver/sources/thelib/src/protocols/rtp/connectivity/
outboundconnectivity.cpp:496 ---------------

*******************************************************************************************************************************
VLC stays apparently connected, is communicating or trying for a good
12seconds
then VLC disconnects or fails to maintain communication and in same
time on rtmpd console:
*******************************************************************************************************************************

/opt/crtmpserver/sources/thelib/src/protocols/protocolmanager.cpp:43
Enqueue for delete for protool CTCP(18) <-> TCP(139) <-> [RTSP(140)]
/opt/crtmpserver/sources/thelib/src/application/
baseclientapplication.cpp:152 Protocol CTCP(18) <-> TCP(139) <->
[RTSP(140)] unregistered from application: flvplayback
/opt/crtmpserver/sources/thelib/src/protocols/rtmp/streaming/
innetrtmpstream.cpp:201 outbound stream 67 detached from inbound
stream 51
/opt/crtmpserver/sources/thelib/src/application/
baseclientapplication.cpp:168 Stream 67 of type ONP with name
`slotch31` unregistered from application `flvplayback`
/opt/crtmpserver/sources/thelib/src/protocols/rtp/connectivity/
outboundconnectivity.cpp:118 OC deleted: 0x80984f8
/opt/crtmpserver/sources/thelib/src/protocols/protocolmanager.cpp:43
Enqueue for delete for protool CTCP(18) <-> [TCP(139)]
/opt/crtmpserver/sources/thelib/src/netio/epoll/iohandlermanager.cpp:
105 Handlers count changed: 15->14 IOHT_TCP_CARRIER
/opt/crtmpserver/sources/thelib/src/netio/epoll/tcpacceptor.cpp:134
Client connected: my.client.ip.adr:3491 -> 0.0.0.0:554
/opt/crtmpserver/sources/thelib/src/netio/epoll/iohandlermanager.cpp:
96 Handlers count changed: 14->15 IOHT_TCP_CARRIER
/opt/crtmpserver/sources/thelib/src/protocols/rtp/
basertspappprotocolhandler.cpp:1012 result: m=audio 0 RTP/AVP 96
a=recvonly
a=rtpmap:96 mpeg4-generic/44100/2

/opt/crtmpserver/sources/thelib/src/protocols/rtp/rtspprotocol.cpp:246
Create stream
/opt/crtmpserver/sources/thelib/src/application/
baseclientapplication.cpp:160 Stream 68 of type ONP with name
`slotch31` registered to application `flvplayback`
/opt/crtmpserver/sources/thelib/src/protocols/rtp/streaming/
outnetrtpudph264stream.cpp:387 Bogus AAC packet
/opt/crtmpserver/sources/thelib/src/protocols/rtp/connectivity/
outboundconnectivity.cpp:318 Ports switch
/opt/crtmpserver/sources/thelib/src/protocols/rtp/
basertspappprotocolhandler.cpp:369 RTP/AVP/UDP or RTP/AVP transport
part not found: RTP/AVP/TCP;unicast;interleaved=0-1
/opt/crtmpserver/sources/thelib/src/protocols/rtp/rtspprotocol.cpp:131
Unable to handle content
/opt/crtmpserver/sources/thelib/src/netio/epoll/tcpcarrier.cpp:93
Unable to signal data available
/opt/crtmpserver/sources/thelib/src/protocols/protocolmanager.cpp:43
Enqueue for delete for protool [TCP(141)] <-> RTSP(142)
/opt/crtmpserver/sources/thelib/src/netio/epoll/iohandlermanager.cpp:
105 Handlers count changed: 15->14 IOHT_TCP_CARRIER
/opt/crtmpserver/sources/thelib/src/protocols/protocolmanager.cpp:43
Enqueue for delete for protool [RTSP(142)]
/opt/crtmpserver/sources/thelib/src/application/
baseclientapplication.cpp:152 Protocol [RTSP(142)] unregistered from
application: flvplayback
/opt/crtmpserver/sources/thelib/src/protocols/rtmp/streaming/
innetrtmpstream.cpp:201 outbound stream 68 detached from inbound
stream 51
/opt/crtmpserver/sources/thelib/src/application/
baseclientapplication.cpp:168 Stream 68 of type ONP with name
`slotch31` unregistered from application `flvplayback`
/opt/crtmpserver/sources/thelib/src/protocols/rtp/connectivity/
outboundconnectivity.cpp:118 OC deleted: 0x8098570
/opt/crtmpserver/sources/thelib/src/netio/epoll/tcpacceptor.cpp:134
Client connected: my.client.ip.adr:3495 -> 0.0.0.0:554
/opt/crtmpserver/sources/thelib/src/netio/epoll/iohandlermanager.cpp:
96 Handlers count changed: 14->15 IOHT_TCP_CARRIER
/opt/crtmpserver/sources/thelib/src/protocols/rtp/
basertspappprotocolhandler.cpp:290 Invalid state
/opt/crtmpserver/sources/thelib/src/protocols/rtp/rtspprotocol.cpp:131
Unable to handle content
/opt/crtmpserver/sources/thelib/src/netio/epoll/tcpcarrier.cpp:93
Unable to signal data available
/opt/crtmpserver/sources/thelib/src/protocols/protocolmanager.cpp:43
Enqueue for delete for protool [TCP(143)] <-> RTSP(144)
/opt/crtmpserver/sources/thelib/src/netio/epoll/iohandlermanager.cpp:
105 Handlers count changed: 15->14 IOHT_TCP_CARRIER
/opt/crtmpserver/sources/thelib/src/protocols/protocolmanager.cpp:43
Enqueue for delete for protool [RTSP(144)]
/opt/crtmpserver/sources/thelib/src/application/
baseclientapplication.cpp:152 Protocol [RTSP(144)] unregistered from
application: flvplayback
/opt/crtmpserver/sources/thelib/src/netio/epoll/tcpacceptor.cpp:134
Client connected: my.client.ip.adr:3496 -> 0.0.0.0:554
/opt/crtmpserver/sources/thelib/src/netio/epoll/iohandlermanager.cpp:
96 Handlers count changed: 14->15 IOHT_TCP_CARRIER
/opt/crtmpserver/sources/thelib/src/netio/epoll/tcpcarrier.cpp:82
Unable to read data. my.client.ip.adr:3496 -> my.server.ip.adr:554
/opt/crtmpserver/sources/thelib/src/protocols/protocolmanager.cpp:43
Enqueue for delete for protool [TCP(145)] <-> RTSP(146)
/opt/crtmpserver/sources/thelib/src/netio/epoll/iohandlermanager.cpp:
105 Handlers count changed: 15->14 IOHT_TCP_CARRIER
/opt/crtmpserver/sources/thelib/src/protocols/protocolmanager.cpp:43
Enqueue for delete for protool [RTSP(146)]
/opt/crtmpserver/sources/thelib/src/application/
baseclientapplication.cpp:152 Protocol [RTSP(146)] unregistered from
application: flvplayback


*******************************************************************************************************************************
End of it !

I presume either my h264ACC encoding settings in wirecast are
unsupported, or not "standard" in the eyes of rtmpd (AAC BOGUS
PACKET ?)

here there are :

H.264 video encoding :
320x240, 25fps, 700kbits/s
profile : baseline
keyframes each 240 images

AAC audio encoding :
64kbits/s, sample rate : 44.100khz, stereo


hope this helps and i certainly hope i am to blame ! :)
Anis


On Jan 14, 4:25 am, Anis Nielsen <nielse...@gmail.com> wrote:
> Thank you Bobby for your suggestion, i tried that too, but i was explained
> just a bit earlierby Andrei that the stream categorically has to be an h264
> | aac combination so rtmp streamer > rtmp > rtmpd server > rtsp > vlc can
> work, which is what i generally use.. but i also trust rtmpd's strict needs,
> which generaly comes with stability :)
>
> Also thank you again Andrei, i will take appropriate time in a few hours to
> retest more strictly, and feed you back with proper logs, both from vlc and
> rtmpd 's console , with details about my rtmp stream encodings used in
> wirecast and fme
>
> Cheers Everyone
> Anis
>
> > > c-rtmp-serve...@googlegroups.com<c-rtmp-server%2Bunsu...@googlegroups.com>

Nielsenaa

unread,
Jan 15, 2011, 11:06:14 PM1/15/11
to C++ RTMP Server
Forgot to include VLC's log info when connection finally times out
after 12s (buffer i suppose):

Live555 demuxx error: SETUP of 'audio/MPEG4-GENERIC' failed liveMedia3
Live555 demuxx error: SETUP of 'video/H264' failed liveMedia5
Live555 demuxx error: Nothing to play for rtsp://my.server.ip.adr/slotch31
Live555 demuxx error: TCP rollover failed, aborting



.. am continuing debug, but can't find out much more to think about,
tried playing with audio publish settings , read rfc 2326 .. but i
think this is way out of my league
http://tools.ietf.org/html/rfc2326

C++ RTMP Server

unread,
Jan 16, 2011, 8:24:23 AM1/16/11
to c-rtmp...@googlegroups.com
Hi,

I will try to look at this problem. But as i said countless times so far, don't copy-paste logs on the email. PLEASE use pastebin.com or something similar. Your mail is almost impossible to read because all the lines are wrapped up

Cheers,
Andrei

> You received this message because you are subscribed to "C++ RTMP Server" mailing list.
> To post to this group, send email to c-rtmp...@googlegroups.com
> To unsubscribe from this group, send email to
> c-rtmp-serve...@googlegroups.com

C++ RTMP Server

unread,
Jan 16, 2011, 8:44:56 AM1/16/11
to c-rtmp...@googlegroups.com
Hi,

I'm unable to reproduce your problem. Here is working just fine.

Make sure you have 100% connectivity between the server and the vlc. The server will try to send packets over UDP and that might be an issue in some network configurations

http://pastebin.com/Xca427V3

Cheers,
Andrei


On Jan 16, 2011, at 6:06 AM, Nielsenaa wrote:

> You received this message because you are subscribed to "C++ RTMP Server" mailing list.
> To post to this group, send email to c-rtmp...@googlegroups.com
> To unsubscribe from this group, send email to
> c-rtmp-serve...@googlegroups.com

Nielsenaa

unread,
Jan 16, 2011, 1:02:56 PM1/16/11
to C++ RTMP Server
Thank you Andrei for the time you used checking my troubles

About pastebin, be sure i'll use it next time ! sorry for that, i'm
still learning some basics

Well, so I svn 'ed up (rev 267) , I fidled with port mapping on my
router and forwarded udp protocols on port 554 , 1234 and 1235 to the
computer where i have vlc and i get a steady rtsp connection ! :)

BUT i only have sound, no image (it is clear and loud, no
problems!) ; seems like video is sent on another port ?

I suppose it is me/ my network setup.
Is there another port i should forward? is vlc waiting for video on
another port maybe ?.. because it doesnt complain at all

Thank you again Andrei, rtmpd is indeed a beautifull gem!

if i can get that video stream too, the people in the public hospital
im helping will be able to pull external broadcasted stuff to their
internal tv network
and the patients will be really glad for that !

Anis
>  smime.p7s
> 5KViewDownload

C++ RTMP Server

unread,
Jan 16, 2011, 1:21:34 PM1/16/11
to c-rtmp...@googlegroups.com
There are 5 ports:

TCP:554 - RTSP
UDP:XXXX - RTP Audio
UDP:XXXX+1 - RTCP Audio
UDP:YYYY - RTP Video
UDP:YYYY+1 - RTCP Video

XXXX/YYYY can be anything but they are even numbers. So, RTP is always even and RTCP is always odd

Just to be on the safe side, open the stream provided by VLC into another VLC instance and make sure is h264/AAC by looking in the stream properties window after playback has started

Cheers,
Andrei

Nielsenaa

unread,
Jan 16, 2011, 1:27:00 PM1/16/11
to C++ RTMP Server
Well in fact, vlc gets the complete stream , but doesnt decode
video .. strange
is there a specific demuxer to use on vlc ?

If i can ask, what do you use in your setup Andrei ? (for broadcasting
and for reading ..)

thx !
Anis

Nielsenaa

unread,
Jan 16, 2011, 1:31:09 PM1/16/11
to C++ RTMP Server
Flux 0 is Audio : MPEG AAC (mp4a)
Flux 1 is Video : H264 - MPEG-4 AVC (part 10) (h264)

im gonna fiddle again with some ports i think

C++ RTMP Server

unread,
Jan 16, 2011, 1:33:25 PM1/16/11
to c-rtmp...@googlegroups.com
FMLE -> rtmpd - RTMP protocol
rtmpd -> VLC/Quicktime - RTSP protocol

Cheers,
Andrei

Anis Nielsen

unread,
Jan 16, 2011, 2:37:13 PM1/16/11
to c-rtmp...@googlegroups.com
Ok i think i narrowed and sorted it out

i first port forwarded  everything udp from 1024 to 65534 on my router to my local pc as vlc changes video port on each new connection

then tried again rtmp publishing from wirecast (4.1) to rtmpd

On vlc/quicktime (thx for this one ;)) , i get perfect steady sound but video is not decoded

then i tried rtmp publishing with fmle 3.1 to rtmpd, with no audio (i have only the mp3 option , i don't have the aac plugin ..)  and i get perfect steady video; If i do the same with wirecast, i have no audio (normal, im not sending any) but no video also.

So i must conclude wirecast sends unsupported h264 (i use baseline h264) that vlc can't decode from but rtmpd fully understands ?

Andrei, do you want me to send you a copy of wirecast ?  this sofware is really good generally, allows mutlicam live switching etc.. , and when simply viewing a rtmp stream sent to rtmpd with  a flash player, it works perfect (sound and video), nearly better than fmle.. what could give ?

Anis

Nielsenaa

unread,
Jan 16, 2011, 7:19:07 PM1/16/11
to C++ RTMP Server
Got back to testing, installed the aac demo plugin for fmle , which
allows one to broadcast for only 30 sec h264 + AAC .. and it works
flawlessly when reading the resulting rtsp stream on vlc !

I am surprised with wirecast this time and spotted on this group
several messages, one in particular with "rtmpd as wowza edge/repeater
" as topic, where the guy has strangely the same problem around
wirecast , but in some others environnement/ final need , on rev
132/133

strangely too, i can't post on the discussion but only reply to the
author ( ;) )
are some discussions on the group definitely locked ?

Anis

Nielsenaa

unread,
Jan 16, 2011, 9:30:00 PM1/16/11
to C++ RTMP Server
After several other tests with rtmp > rtmpd > rtsp, vlc, fmle and
wirecast .. well here are my last findings.

The only difference i can see while reading a rtsp stream with VLC
coming from rtmp live publishing with fmle and wirecast is that :

In the case of using fmle and rtmp , VLC gets correctly the video
flux's Type, Codec, frame resolution and fps rate (i see this in vlc
with tools>codecs infos) ; both video and audio are ok , rtsp and
rtmp reading are ok

While when using wirecast and rtmp, VLC only gets the video flux's
Type and Codec, nothing else, it doesn't find or know the frame rez
and fps rate, thus it doesnt display video; nevertheless, audio is ok,
audio and video rtmp reading is ok, rtsp is only audio.

Cheers !
Anis

Nielsenaa

unread,
Jan 16, 2011, 9:33:42 PM1/16/11
to C++ RTMP Server
last but not least, in both cases, the rstp stream consumed by vlc
seems normal , 700+ k/s as one would expect when sending audio and
video ,

.. which means audio and video are transmitted in both cases, but in
one case (wirecast) , something is missing for vlc to decode video
beside audio. Same case on qt.

On Jan 17, 1:19 am, Nielsenaa <nielse...@gmail.com> wrote:

Anis Nielsen

unread,
Jan 17, 2011, 8:00:05 AM1/17/11
to C++ RTMP Server
I've contacted the wirecast team and they are willing to help, can i pass your contact info Andrei ?

Cheers
Anis

C++ RTMP Server

unread,
Jan 17, 2011, 8:57:41 AM1/17/11
to c-rtmp...@googlegroups.com
Yes, of course

Cheers,
Andrei

------

Nielsenaa

unread,
Jan 17, 2011, 12:57:19 PM1/17/11
to C++ RTMP Server
Hi Andrei ;

ok thank you, i posted the following message on wirecast's forum
http://forum.telestream.net/forum/messageview.aspx?catid=44&threadid=6973&enterthread=y

I already did the same a year or 2 ago , this was concerning wirecast
with Red5.

I hope you guys can together find out what exactly is missing/doesn't
work

and i hope everyone in here who are using other publishers than fmle
with rtmpd willl benefit from this (fmle is not free, and even tho,
limited (no multicam) if you wanna get it working for rtmp+rtsp with
rtmpd)

Also i invite everyone in here to donate much more to rtmpd, it
deserves it a thousand times!

Anis Nielsenaa


On Jan 17, 2:57 pm, C++ RTMP Server <crtmpser...@gmail.com> wrote:
> Yes, of course
>
> Cheers,
> Andrei
>
> On Jan 17, 2011, at 3:00 PM, Anis Nielsen wrote:
>
>
>
> > I've contacted the wirecast team and they are willing to help, can i pass your contact info Andrei ?
>
> > Cheers
> > Anis
>
>  smime.p7s
> 5KViewDownload

Nielsenaa

unread,
Jan 18, 2011, 6:02:16 PM1/18/11
to C++ RTMP Server
Problem solved :) !!

Andrei, that was a perfect one shot, thank you very much !

Glad to have svn'ed up to Rev 280 people ! try it out!



On Jan 17, 6:57 pm, Nielsenaa <nielse...@gmail.com> wrote:
> Hi Andrei ;
>
> ok thank you,  i posted the following message on wirecast's forumhttp://forum.telestream.net/forum/messageview.aspx?catid=44&threadid=...
Reply all
Reply to author
Forward
0 new messages