jgh- / VideoCore-Inactive

*No longer in development* Please see https://github.com/unpause-live/SwiftVideo
MIT License
1.48k stars 540 forks source link

Support For RTP/RTSP #95

Open ghost opened 9 years ago

ghost commented 9 years ago

Hi @jgh-, I'd like to add support for RTP/RTSP to VideoCore. Is that a feature that would be desirable? The project looks solid and one facet of the application I'm working on shares about 60% of the same pipeline, except for the network portion. I would release the extension under the same license. Please let me know your thoughts on this.

jgh- commented 9 years ago

Hi @Zintinio that sounds great! I think if you make it conform to the IOutputSession interface it should be able to mostly be a drop-in replacement for the RTMP session.

ghost commented 9 years ago

That's the plan. I'll work on this once I'm back in the office and submit a pull request down the line.

jgh- commented 9 years ago

Perfect, I'll look forward to seeing it.

ashokrkm commented 9 years ago

would love support for RTSP too!

ghost commented 9 years ago

@KCastiglione I got this working a while back enough for my purposes. For now, I recommend eschewing the rtmp packetizer and rtmp session objects. You receive a stream of NAL units via the pushBuffer method, and can use an existing rtp/rtsp library. The only caveat if you need to build an sdp is that you'll have to parse the bytestreams yourself to get the sps, pps, asc, and you will have to modify the CMTime values to your format. In addition you'll have to provide your own Simple RTP session similar to VCSimpleSession.

I don't want to introduce a large dependency to this project, but I wanted to leave some feedback for those looking to integrate with live555 or ortp.