<p>as you said</p><p>I checked the testOnDemandRTSPServer demo application,</p><p>I also read the FAQ about liveInput-unicast several times.</p><p><br></p><p>I also implemented and checked a simple sample program.</p><p><br></p><p>1. Like the testOnDemandRTSPServer demo application, I implemented a file streaming demo program using the H264VideoFileServerMediaSubsession object and confirmed that it operates normally.</p><p><br></p><p>2. For real-time streaming, I followed the FAQ about liveInput-unicast.</p><p><span id="goog_1962667220"></span><span style="color: rgb(0, 85, 255);">I created a MyH264LiveServerMediaSubsession object that inherits OnDemandServerMediaSubsession and redefined two pure virtual functions.</span></p><p><span style="color: rgb(0, 85, 255);">The doGetNextFrame function should be called when the camera is connected properly, but it is not working.</span><br></p><p><span style="color: rgb(0, 85, 255);">Since doGetNextFrame is not called, camera frame data cannot be processed or transmitted.</span><span id="goog_1962667221"></span></p><p><br></p><p>No matter how much I think about it, I can't figure out what the problem is.</p><p>I sincerely ask for your help.<br>I am attaching a simplified sample code.<br></p><p></p><p><style unikey="ecountPStyleUnikey">p{margin-top:0px;margin-bottom:0px;}</style></p><p></p><p></p><p class="MsoNormal"></p><p class="MsoNormal"><br></p><p class="MsoNormal">/************************ main ***************************************************/</p><p class="MsoNormal">#include "MyH264LiveServerMediaSubsession.h"</p><p class="MsoNormal"><br></p><p class="MsoNormal">main(){</p><p class="MsoNormal">    TaskScheduler* scheduler = BasicTaskScheduler::createNew();</p><p class="MsoNormal">    UsageEnvironment* env = BasicUsageEnvironment::createNew(*scheduler);</p><p class="MsoNormal"><br></p><p class="MsoNormal">    RTSPServer* rtspServer = RTSPServer::createNew(*env, 8554);</p><p class="MsoNormal">    if (rtspServer == NULL) {</p><p class="MsoNormal">        *env << "Failed to create RTSP server: " << env->getResultMsg() << "\n";</p><p class="MsoNormal">        return -1;</p><p class="MsoNormal">    }</p><p class="MsoNormal"><br></p><p class="MsoNormal">    ServerMediaSession* sms = ServerMediaSession::createNew(*env, "ggg", "Live Stream", "Live stream from webcam");</p><p class="MsoNormal">    sms->addSubsession(MyH264LiveServerMediaSubsession::createNew(*env));</p><p class="MsoNormal">    //sms->addSubsession(H264VideoFileServerMediaSubsession::createNew(*env, "D:\\1.264", false));</p><p class="MsoNormal">    rtspServer->addServerMediaSession(sms);</p><p class="MsoNormal"><br></p><p class="MsoNormal">    *env << "RTSP stream ready at rtsp://localhost:8554/ggg\n";</p><p class="MsoNormal"><br></p><p class="MsoNormal">    env->taskScheduler().doEventLoop();</p><p class="MsoNormal">    return 0;</p><p class="MsoNormal">}</p><p class="MsoNormal">/*********************** MyH264LiveServerMediaSubsession.h ****************************************************/</p><p class="MsoNormal">#include "MyH264LiveSource.h"</p><p class="MsoNormal"><br></p><p class="MsoNormal"><br></p><p class="MsoNormal">class MyH264LiveServerMediaSubsession : public OnDemandServerMediaSubsession {</p><p class="MsoNormal">public:</p><p class="MsoNormal">    static MyH264LiveServerMediaSubsession* createNew(UsageEnvironment& env) {</p><p class="MsoNormal">        return new MyH264LiveServerMediaSubsession(env);</p><p class="MsoNormal">    }</p><p class="MsoNormal"><br></p><p class="MsoNormal">protected:</p><p class="MsoNormal">    MyH264LiveServerMediaSubsession(UsageEnvironment& env)</p><p class="MsoNormal">        : OnDemandServerMediaSubsession(env, true) {</p><p class="MsoNormal">    }</p><p class="MsoNormal"><br></p><p class="MsoNormal">    virtual ~MyH264LiveServerMediaSubsession() {</p><p class="MsoNormal">    }</p><p class="MsoNormal"><br></p><p class="MsoNormal">    virtual FramedSource* createNewStreamSource(unsigned /*clientSessionId*/, unsigned& estBitrate) {</p><p class="MsoNormal">        return MyH264LiveSource::createNew(envir());</p><p class="MsoNormal">    }</p><p class="MsoNormal"><br></p><p class="MsoNormal">    virtual RTPSink* createNewRTPSink(Groupsock* rtpGroupsock, unsigned char rtpPayloadTypeIfDynamic, FramedSource* /*inputSource*/) {</p><p class="MsoNormal">        return H264VideoRTPSink::createNew(envir(), rtpGroupsock, rtpPayloadTypeIfDynamic);</p><p class="MsoNormal">        //return SimpleRTPSink::createNew(envir(), rtpGroupsock, rtpPayloadTypeIfDynamic, 90000, "video", "H264", 1, true, false);</p><p class="MsoNormal">    }</p><p class="MsoNormal">};</p><p class="MsoNormal"><br></p><p class="MsoNormal">/*********************** MyH264LiveSource.h ****************************************************/</p><p class="MsoNormal">class MyH264LiveSource : public FramedSource {</p><p class="MsoNormal">public:</p><p class="MsoNormal">    static MyH264LiveSource* createNew(UsageEnvironment& env) {</p><p class="MsoNormal">        return new MyH264LiveSource(env);</p><p class="MsoNormal">    }</p><p class="MsoNormal"><br></p><p class="MsoNormal">protected:</p><p class="MsoNormal">    MyH264LiveSource(UsageEnvironment& env)</p><p class="MsoNormal">        : FramedSource(env) {</p><p class="MsoNormal">    }</p><p class="MsoNormal"><br></p><p class="MsoNormal">    virtual ~MyH264LiveSource() {}</p><p class="MsoNormal"><br></p><p class="MsoNormal"><span id="goog_1962667224"></span><span style="color: rgb(0, 85, 255);">    virtual void doGetNextFrame() {</span></p><p class="MsoNormal"><span style="color: rgb(0, 85, 255);">        envir() << "Process Data\n";</span></p><p class="MsoNormal"><span style="color: rgb(0, 85, 255);">        FramedSource::afterGetting(this);</span></p><p class="MsoNormal"><span style="color: rgb(0, 85, 255);">    }</span><span id="goog_1962667225"></span></p><p class="MsoNormal"><br></p><p class="MsoNormal">};</p><p>

<span id="goog_2041644200"></span><span id="goog_2041644201"></span></p><table class="MsoTableGrid" border="0" cellspacing="0" cellpadding="0" width="727" style="border-collapse:collapse;mso-table-layout-alt:fixed;border:none;
 mso-yfti-tbllook:1184;mso-padding-alt:0cm 0cm 0cm 0cm;mso-border-insideh:none;
 mso-border-insidev:none">
 <tbody><tr style="mso-yfti-irow:0;mso-yfti-firstrow:yes;height:19.0pt">
  <td width="178px" rowspan="3" style="width: 178px; border-top: 1pt solid rgb(231, 230, 230); border-bottom: 1pt solid rgb(231, 230, 230); border-left: 1pt solid rgb(231, 230, 230); border-image: initial; border-right: none; padding: 0cm; height: 19pt;">
  <p class="MsoNormal" style="margin-bottom:0cm;line-height:normal"><v:line id="직선_x0020_연결선_x0020_10" o:spid="_x0000_s1027" style="position:absolute;left:0;text-align:left;
   flip:x;z-index:251659264;visibility:visible;mso-wrap-style:square;
   mso-width-percent:0;mso-height-percent:0;mso-wrap-distance-left:9pt;
   mso-wrap-distance-top:0;mso-wrap-distance-right:9pt;
   mso-wrap-distance-bottom:0;mso-position-horizontal:absolute;
   mso-position-horizontal-relative:text;mso-position-vertical:absolute;
   mso-position-vertical-relative:text;mso-width-percent:0;
   mso-height-percent:0;mso-width-relative:margin;mso-height-relative:margin" from="109.15pt,2.25pt" to="109.15pt,92.8pt" o:gfxdata="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
" strokecolor="#e7e6e6 [3214]" strokeweight="1pt">
   <v:stroke joinstyle="miter">
   <o:lock v:ext="edit" shapetype="f">
  </o:lock></v:stroke></v:line><v:shapetype id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f">
   <v:stroke joinstyle="miter">
   <v:formulas>
    <v:f eqn="if lineDrawn pixelLineWidth 0">
    <v:f eqn="sum @0 1 0">
    <v:f eqn="sum 0 0 @1">
    <v:f eqn="prod @2 1 2">
    <v:f eqn="prod @3 21600 pixelWidth">
    <v:f eqn="prod @3 21600 pixelHeight">
    <v:f eqn="sum @0 0 1">
    <v:f eqn="prod @6 1 2">
    <v:f eqn="prod @7 21600 pixelWidth">
    <v:f eqn="sum @8 21600 0">
    <v:f eqn="prod @7 21600 pixelHeight">
    <v:f eqn="sum @10 21600 0">
   </v:f></v:f></v:f></v:f></v:f></v:f></v:f></v:f></v:f></v:f></v:f></v:f></v:formulas>
   <v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect">
   <o:lock v:ext="edit" aspectratio="t">
  </o:lock></v:path></v:stroke></v:shapetype><v:shape id="그림_x0020_8" o:spid="_x0000_s1026" type="#_x0000_t75" style="position:absolute;left:0;text-align:left;margin-left:-.1pt;
   margin-top:.55pt;width:104pt;height:97.7pt;z-index:251660288;visibility:visible;
   mso-wrap-style:square;mso-width-percent:0;mso-height-percent:0;
   mso-wrap-distance-left:9pt;mso-wrap-distance-top:0;
   mso-wrap-distance-right:9pt;mso-wrap-distance-bottom:0;
   mso-position-horizontal:absolute;mso-position-horizontal-relative:text;
   mso-position-vertical:absolute;mso-position-vertical-relative:text;
   mso-width-percent:0;mso-height-percent:0;mso-width-relative:page;
   mso-height-relative:page"></v:shape></p><p class="MsoNormal" style="margin-bottom:0cm;line-height:normal"></p><p>    <img src="https://ifile.ecounterp.com/webdav/autol.co.kr/hyungu.kang/sign/o_1g9tjde4ffmu1bja1uv1fnr7401g.png" width="0" height="0" style="width: 135.375px; height: 126.847px;" data-isoriginalimage="true"></p><p></p><p class="MsoNormal" style="margin-bottom:0cm;line-height:normal"><v:shape id="그림_x0020_8" o:spid="_x0000_s1026" type="#_x0000_t75" style="position:absolute;left:0;text-align:left;margin-left:-.1pt;
   margin-top:.55pt;width:104pt;height:97.7pt;z-index:251660288;visibility:visible;
   mso-wrap-style:square;mso-width-percent:0;mso-height-percent:0;
   mso-wrap-distance-left:9pt;mso-wrap-distance-top:0;
   mso-wrap-distance-right:9pt;mso-wrap-distance-bottom:0;
   mso-position-horizontal:absolute;mso-position-horizontal-relative:text;
   mso-position-vertical:absolute;mso-position-vertical-relative:text;
   mso-width-percent:0;mso-height-percent:0;mso-width-relative:page;
   mso-height-relative:page">
   <v:imagedata src="file:///C:/Users/ProDesk/AppData/Local/Temp/msohtmlclip1/01/clip_image001.png" o:title="" cropbottom="7054f" cropleft="9168f" cropright="11507f">
  </v:imagedata></v:shape><span lang="EN-US"><o:p></o:p></span></p>
  </td>
  <td width="107px" style="width: 107px; border-right: none; border-bottom: none; border-left: none; border-image: initial; border-top: 1pt solid rgb(231, 230, 230); padding: 0cm; height: 19pt;">
  <p class="MsoNormal" style="margin-bottom:0cm;text-indent:5.0pt;mso-char-indent-count:
  .5;line-height:normal"><b><span style="color:#002C5F">강현구</span></b><b><span lang="EN-US" style="font-size:9.0pt;color:#002C5F"><o:p></o:p></span></b></p>
  </td>
  <td width="441px" style="width: 441px; border-top: 1pt solid rgb(231, 230, 230); border-left: none; border-bottom: none; border-right: 1pt solid rgb(231, 230, 230); padding: 0cm; height: 19pt;">
  <p class="MsoNormal" style="margin-bottom:0cm;line-height:normal"><span style="font-size:9.0pt;mso-bidi-font-size:10.0pt;color:#002C5F">책임연구원 <span lang="EN-US">/ S/W</span>개발팀<span lang="EN-US"><o:p></o:p></span></span></p>
  </td>
 </tr>
 <tr style="mso-yfti-irow:1;height:19.0pt">
  <td width="107px" style="width: 107px; padding: 0cm; height: 19pt;">
  <p class="MsoNormal" style="margin-bottom:0cm;text-indent:4.5pt;mso-char-indent-count:
  .5;line-height:normal"><span lang="EN-US" style="font-size:9.0pt;color:#3B3838;
  mso-themecolor:background2;mso-themeshade:64">Hyungu Kang<o:p></o:p></span></p>
  <p class="MsoNormal" style="margin-bottom:0cm;text-indent:4.5pt;mso-char-indent-count:
  .5;line-height:normal"><span lang="EN-US" style="font-size:9.0pt;mso-bidi-font-size:
  10.0pt;color:#002C5F"><o:p> </o:p></span></p>
  </td>
  <td width="441px" style="width: 441px; border-top: none; border-bottom: none; border-left: none; border-image: initial; border-right: 1pt solid rgb(231, 230, 230); padding: 0cm; height: 19pt;">
  <p class="MsoNormal" style="margin-bottom:0cm;line-height:normal"><span lang="EN-US" style="font-size:9.0pt;mso-bidi-font-size:10.0pt;color:#3B3838;
  mso-themecolor:background2;mso-themeshade:64">Senior Research Engineer / S/W
  R&D Team<o:p></o:p></span></p>
  <p class="MsoNormal" style="margin-bottom:0cm;line-height:normal"><span lang="EN-US"><a href="http://www.autol.co.kr/"><span style="font-size:8.0pt;
  mso-bidi-font-size:10.0pt">www.autol.co.kr</span></a></span><span lang="EN-US" style="font-size:9.0pt;mso-bidi-font-size:10.0pt;color:#002C5F"><o:p></o:p></span></p>
  </td>
 </tr>
 <tr style="mso-yfti-irow:2;height:49.55pt">
  <td width="547px" colspan="2" valign="top" style="width: 547px; border-top: none; border-left: none; border-bottom: 1pt solid rgb(231, 230, 230); border-right: 1pt solid rgb(231, 230, 230); padding: 0cm; height: 49.55pt;">
  <p class="MsoNormal" style="margin-bottom:0cm;text-indent:4.0pt;mso-char-indent-count:
  .5;line-height:normal"><span lang="EN-US" style="font-size:8.0pt;color:#767171;
  mso-themecolor:background2;mso-themeshade:128">T 070-4228-1071 F 031-702-5314
  M 010-8584-8093 E <u style="text-underline:#767171;mso-text-underline-themecolor:
  background2;mso-text-underline-themeshade:128">hyungu.kang@autol.co.kr</u><o:p></o:p></span></p>
  <p class="MsoNormal" style="margin-bottom:0cm;text-indent:4.0pt;mso-char-indent-count:
  .5;line-height:normal"><span lang="EN-US" style="font-size:8.0pt;color:#767171;
  mso-themecolor:background2;mso-themeshade:128">13453 </span><span style="font-size:8.0pt;color:#767171;mso-themecolor:background2;mso-themeshade:
  128">경기도 성남시 수정구 금토로<span lang="EN-US"> 80</span>번길<span lang="EN-US"> 11, </span>판교이노베이션랩
  지식산업센터<span lang="EN-US"> 305</span>호<span lang="EN-US"><o:p></o:p></span></span></p>
  <p class="MsoNormal" style="margin-bottom:0cm;text-indent:4.0pt;mso-char-indent-count:
  .5;line-height:normal"><span lang="EN-US" style="font-size:8.0pt;color:#767171;
  mso-themecolor:background2;mso-themeshade:128">305, 11 Geumto-ro 80beon-gil,
  Sujeong-gu, Seongnam-si, Gyeonggi-do, 13453, Republic of Korea</span><span lang="EN-US" style="font-size:8.0pt;mso-bidi-font-size:9.0pt;color:#3B3838;
  mso-themecolor:background2;mso-themeshade:64"><o:p></o:p></span></p>
  </td>
 </tr>
 <tr style="mso-yfti-irow:3;mso-yfti-lastrow:yes;height:84.55pt">
  <td width="727" colspan="3" valign="top" style="width:545.5pt;border:none;
  mso-border-top-alt:solid #E7E6E6 .5pt;mso-border-top-themecolor:background2;
  padding:0cm 0cm 0cm 0cm;height:84.55pt">
  <p class="MsoNormal" style="margin-bottom:0cm;line-height:normal"><span style="font-size:7.0pt;mso-bidi-font-size:8.0pt;color:#767171;mso-themecolor:
  background2;mso-themeshade:128">이 메시지<span lang="EN-US">(</span>첨부파일 포함<span lang="EN-US">)</span>는 지정된 수신인에게만 전달될 목적으로 발송되었으며<span lang="EN-US">, </span>부정경쟁방지
  및 영업비밀의 보호에 관한 법률 등 관계법령에 따라 법으로 보호되는 중요한 정보를 담고 있을 수 있습니다<span lang="EN-US">. </span>이
  메시지와 첨부파일 등에 있어서<span lang="EN-US">, </span>공개<span lang="EN-US">, </span>복사<span lang="EN-US">, </span>배포 또는 기재된 내용을 근거로 한 일체의 행동 등의<span lang="EN-US"> 2</span>차 활용에
  대해서는 메일 발신자에게 확인을 받아야 하며<span lang="EN-US">, </span>메일 발신자의 확인이 없는<span lang="EN-US"> 2</span>차 활용은 엄격히 금지되어 있음을 주지하시기 바랍니다<span lang="EN-US">. </span>만약
  이 메시지가 잘못 전송되었을 경우<span lang="EN-US">, </span>발신인 또는 당사에 알려주시고<span lang="EN-US">,
  </span>본 메시지를 즉시 삭제하여 주시기 바랍니다<span lang="EN-US">.<o:p></o:p></span></span></p>
  <p class="MsoNormal" style="margin-bottom:0cm;line-height:normal"><span lang="EN-US" style="font-size:7.0pt;mso-bidi-font-size:8.0pt;color:#767171;
  mso-themecolor:background2;mso-themeshade:128">This message (including
  attachments) contains confidential information intended for a specific
  individual and purpose and is protected by law. If you are not the intended
  recipient, you should delete this message and are hereby notified that any
  disclosure, copying, or distribution of this message, or the taking of any
  action based on it, is strictly prohibited. <o:p></o:p></span></p>
  </td>
 </tr>
</tbody></table><br><p></p><br><br><br>----- Original Message -----------------------------------<br><b>From :</b> "Ross Finlayson" <finlayson@live555.com><br><b>To :</b> "LIVE555 Streaming Media - development & use" <live-devel@us.live555.com><br><b>Cc :</b> <br><b>Sent :</b> "2024-06-26T10:38:40"<br><b>Subject :</b> "RE: Re: [Live-devel] Technical inquiry"<br><br><br><br>> On Jun 25, 2024, at 6:31 PM, 강현구 <hyungu.kang@autol.co.kr> wrote:<br>> <br>> Thank you for your quick reply.<br>> <br>> I want to stream via IP unicast.<br>> For this purpose, I am inheriting and using the OnDemandServerMediaSubsession object.<br>> <br>> You said I was using mixed code.<br>> Please explain what part is wrong or what part of the code is for multicast streaming.<br><br>The part of your code where you<br>   - chose a random IP multicast address, and<br>    - created a “Groupsock” object that uses that address<br>This code is useful only when you are streaming via multicast.<br><br><br>> P.S. I checked the testOnDemandRTSPServer demo program, but I didn't get the information I wanted because it was an example of streaming file data.<br><br>Nonetheless, you should use that code as a model for your application.  See http://live555.com/liveMedia/faq.html#liveInput-unicast<br><br><br>Ross Finlayson<br>Live Networks, Inc.<br>http://www.live555.com/<br><br><br>_______________________________________________<br>live-devel mailing list<br>live-devel@lists.live555.com<br>http://lists.live555.com/mailman/listinfo/live-devel<br><p></p><p><br/></p><p><br/></p><table id="ecma_tracking"><tr><td><img src='https://wmail.ecount.com/WMAPI/Service/ReadReceipt/6d736769643d32303234303632363133333833392e3635323933302e423543414126656d61696c3d6c6976652d646576656c4075732e6c6976653535352e636f6d'></a></td></tr></table>