Elecard Codec SDK G4 (see http://www.elecard.com/products/products-pc/sdk/codec-sdk/) provides a DirectShow filter which can be used with any other DirectShow filters you have to stream audio and video over RTP. I am successfully streaming from an Hauppauge HD PVR H.264/AAC usb encoder to RTP multicast with the Elecard NWRenderer filter.
Using GraphEdit the graph is
"Hauppauge HD PVR Crossbar" >> "Hauppauage HD PVR Capture Device" >> "Hauppauage HD PVR Encoder" >> "Elecard NWRenderer"
The saved SDP looks like this:
v=0
o=- 1266135728 5 IN IP4 10.5.26.16
s=Elecard NWRenderer
i=Elecard streaming
u=http://www.elecard.com
e=tsup@elecard.net.ru
c=IN IP4 234.5.5.5/64
m=video 10200 RTP/AVP 33
a=rtpmap:33 MP2T/90000
a=control:trackID=0
NWRenderer can also be configured to send SAP announces.
This plays great in VLC Player. I cannot get it to stream using rtp-live with this sdp file from wowza. The wowza error.log is empty when I attempt. This is what the wowza access.log files looks like:
INFO vhost vhost-start 2009-03-17 15:44:41 - - - - - 0.765 - - - - - - _defaultVHost_ -
INFO vhost comment 2009-03-17 15:44:41 - - - - - 0.812 - - - - - - _defaultVHost_ RTMP/RTMPT bind attempt ([any]:1935)
INFO vhost comment 2009-03-17 15:44:41 - - - - - 0.812 - - - - - - _defaultVHost_ Bind successful ([any]:1935)
INFO application app-start 2009-03-17 15:44:52 - - - - - 12.429 - - - - - - _definst_ rtplive/_definst_
INFO session connect-pending 2009-03-17 15:44:52 186527882 127.0.0.1 - 3328 3073 0.359 - - - - - - 127.0.0.1 -
INFO session connect 2009-03-17 15:44:52 186527882 127.0.0.1 - 3328 3073 0.359 - - - - - - 127.0.0.1 -
INFO stream create 2009-03-17 15:44:52 186527882 127.0.0.1 - 3400 3361 0.016 - 1 0 0 - - - -
INFO server comment 2009-03-17 15:44:52 - - - - - 12.46 - - - - - - - MediaStreamMediaCasterPlay: startPlay
INFO server comment 2009-03-17 15:44:52 - - - - - 12.476 - - - - - - - RTPMediaCaster.create
INFO server comment 2009-03-17 15:44:52 - - - - - 12.476 - - - - - - - RTPMediaCaster.init
INFO server comment 2009-03-17 15:44:52 - - - - - 12.476 - - - - - - - RTPMediaCaster.Reconnector: start
INFO server comment 2009-03-17 15:44:52 - - - - - 12.476 - - - - - - - RTPSessionDescriptionDataProviderBasic.getStreamInfo: C:/Program Files/Wowza Media Systems/Wowza Media Server Pro 1.7.0/content/myStream.sdp
INFO stream create 2009-03-17 15:44:52 - - - - - 0.0 - 2 0 0 - - - -
INFO stream create 2009-03-17 15:44:52 - - - - - 0.0 - 2 0 0 - - - -
INFO stream publish 2009-03-17 15:44:52 - - - - - 0.016 myStream.sdp 2 0 0 - - myStream.sdp -
INFO server comment 2009-03-17 15:44:52 - - - - - 12.507 - - - - - - - MulticastTransport.bind: 234.5.5.5/10300
INFO server comment 2009-03-17 15:44:52 - - - - - 12.507 - - - - - - - MulticastTransport.bind: 234.5.5.5/10301
INFO server comment 2009-03-17 15:44:52 - - - - - 12.507 - - - - - - - RTPMediaCaster.Reconnector: stop
INFO server comment 2009-03-17 15:44:52 - - - - - 12.522 - - - - - - - MulticastTransport.firstPacket: 234.5.5.5/10300
INFO server comment 2009-03-17 15:47:11 - - - - - 151.439 - - - - - - - MulticastTransport.firstPacket: 234.5.5.5/10301
Any caveats with the rtp-live support that I should know about to inspect the Elecard RTP packets?
Here are some of the settings I could change (any suggestions?):
Transport can be UDP, TCP, RTP/AVP, or RTP/AVP over TCP.
Address can be any multicast or unicast ip address.
H264 could be Advanced GOP 4/32/128, Simple GOP 4/32/128, Advanced No IDR GOP 4/32/0, Simple No IDR GOP 4/32/0. Constant or Variable bit rates.
Actually there a lot of settings I can tweak on both the H.264 encoder device and the RTP broadcast directshow filter.
I’d appreciate any tips you have.
UPDATE: 4/8/2008: I did get this working. The simple trick was to request a trial license to the MPEG-TS add on for Wowza Media Server. Once I added the MPEG-TS license to my install of Wowza Media Server this solution worked perfectly. In summary I used DirectShow Filters from the Hauppauge device to the Elecard NW Renderer, then Wowza Media Server ingested the RTP stream and restreamed it to flash clients. See my blog (http://sray.squidpower.com) for more details.