[Live-devel] Noob wandering

Jesse Hemingway Jesse.Hemingway at nerdery.com
Mon Jan 28 15:07:40 PST 2013


Thanks Ross,

> Based on the testRTSPClient example, I've gotten a stable RTSP connection
> working on my target platform; in this case to a video+audio RTSP source.
>  But, now I'm struggling to figure out the next step.  My custom MediaSink
> classes do not receive any frame data via afterGettingFrame()
>
>
> That is the first thing that you should fix.  Note that when the
> (non-static) "DummySink::afterGettingFrame()" function
> ("testRTSPClient.cpp", lines 479-500) is called, a complete frame will have
> already been delivered into "fReceiveBuffer".
>

That's my first problem then - I should have been more clear, in my case,
that function is not getting called at all.  I'm not debugging the original
project, as that appears to exit immediately after proving that it can set
up a connection (maybe I've chosen a bad test source? "rtsp://
media1.law.harvard.edu/Media/policy_a/2012/02/02_unger.mov"). I have a
CustomMediaSink based more or less on copy-pasting your DummyMediaSink.  I
do these things in continueAfterSETUP:

        scs.subsession->sink = CustomRTSPMediaSink::createNew(env, *scs.
subsession, rtspClient->url());

and if all is well,

        scs.subsession->sink->startPlaying(*(scs.subsession->readSource()),
subsessionAfterPlaying, scs.subsession);

continueAfterPLAY then occurs without error, and I see some low-level RTSP
logs happen that give me the sense the session is happily running, but no
calls to my sad, little CustomRTSPMediaSink::afterGettingFrame(...)
implementation.

And how about these higher-level MediaSinks - do those work right out of
> the box?  Seems too good to be true.  Let's say I had AAC+VP8 streams
> coming in.  Would I conditionally create a MPEG4LATMAudioRTPSink (what if
> it's non-LATM MPEG4?) and a VP8VideoRTPSink in continueAfterSETUP() based
> on inspecting the subsession?  I suppose I will have to try this out myself
> ;)
>
>
> No, you're confused here.  The "*RTPSink" classes are used only for
> *transmitting* RTP packets.  I.e., they're used by servers, not clients,
> and are therefore not classes that you would use.
>

OK, thank you for that info!  I also understand that your library does not
offer the codecs.


Maybe you should begin by explaining what it is specifically that you're
> trying to do...
>

I'd love to say more, but I'm prohibited from going into too much detail to
a public mailing list.

I really appreciate your quick feedback.

Thanks,
Jesse
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.live555.com/pipermail/live-devel/attachments/20130128/50c474fb/attachment.html>


More information about the live-devel mailing list