<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><div><blockquote type="cite" class=""><div class=""><div class="WordSection1" style="page: WordSection1; font-family: Helvetica; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;"><div style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;" class=""><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);" class="">I get this part now, but what I still don't get is how to pass incoming data from RSTPClient to H264VideoStreamFramer. The constructor for it is:<o:p class=""></o:p></span></div><div style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;" class=""><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);" class=""> </span></div><div style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;" class=""><span style="font-size: 11pt; font-family: Consolas;" class="">H264VideoStreamDiscreteFramer::createNew(UsageEnvironment& env, FramedSource* inputSource) {<o:p class=""></o:p></span></div><div style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;" class=""><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);" class=""> </span></div><div style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;" class=""><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);" class="">A FramedSource input, but RSTPClient is not a FramedSource. Don't see any framed source in it.</span></div></div></div></blockquote><div><br class=""></div>Several times now, I have pointed you at code (‘testRTSPClient.cpp”) that illustrates how to do this. If you look at this code, you’ll see that you don’t feed a “RTSPClient” into anything. Instead, you use a “RTSPClient” to create a “MediaSession” object (which in turn will contain “MediaSubsession” objects - one for each audio or video track in the stream). Once you’ve used the “RTSPClient” to create these objects (using the RTSP protocol, as illustrated by the “testRTSPClient” application code (yet again :-(), you then feed each “MediaSubsession::readSource()” object into whatever you want.</div><div><br class=""></div><div>So, you *could*, in principle, feed the “MediaSubsession::readSource()” object into a “H264VideoStreamDiscreteFramer” (*not* into a “H264VideoStreamFramer”, because that’s for unstructured byte-stream input). I’m not sure why you’d want to do this, though. You’d need to do this *only* if you plan to re-transmit the H.264 video (by feeding it into a “H264VideoRTPSink”).</div><div><br class=""></div><div><br class=""></div><div><blockquote type="cite" class=""><div class="WordSection1" style="page: WordSection1;"><div class=""><span style="color: rgb(31, 73, 125); font-family: Calibri, sans-serif; font-size: 11pt;" class="">I'm sure this is this is a lame question as you all are familiar with live555 and this seems every day simple, but to me it seems somewhat insurmountable. What makes a framed source a framed source?</span></div></div></blockquote><div><br class=""></div>A “Framed Source” is simply an object that delivers chunks of data (which we call ‘frames’ in the code).</div><div><br class=""></div><div><br class=""><blockquote type="cite" class=""><div class="WordSection1" style="page: WordSection1;"><div class=""><span style="color: rgb(31, 73, 125); font-family: Calibri, sans-serif; font-size: 11pt;" class=""> If it's a FramedSource, then why does it need a framer? </span></div></div></blockquote><div><br class=""></div>It usually doesn’t. I don’t know where you got the idea that you need to feed your incoming H.264 video data into a ‘Framer’. As I noted above, you would do this only if you plan to re-transmit the incoming H.264 video NAL units.<blockquote type="cite" class=""><div class=""></div></blockquote></div><div><br class=""></div><div>But in any case, this thread has gone on long enough. (Note that this mailing list has more than 2000 members.) So this will be my - and your - last posting on this subject.</div><br class=""><div apple-content-edited="true" class="">
<span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; ">Ross Finlayson<br class="">Live Networks, Inc.<br class=""><a href="http://www.live555.com/" class="">http://www.live555.com/</a></span></span>
</div>
<br class=""></body></html>