RTP를 위한 DirectShow Filter 구현 관련자료


사용자 삽입 이미지
사용자 삽입 이미지MorganRTP DirectShow Filters

!!! Beta –Beta –Beta –Beta –Beta –Beta –Beta !!!

사용자 삽입 이미지

What is this ?

It is a set ofDirectShow filtersthat allows you to performmedia-streamingon yourWindows PC:

  • Morgan RTP Source Filter(to receive media content over a network).
  • Morgan RTP Destination Filter(to send media content over a network).

DirectShowis a sub-system of MicrosoftDirectXdedicated to media content on Windows platforms. ADirectShow filteris asoftware component(a kind of Plug-in) that adds features to DirectShow. When you install a new DirectShow filter on your system,every applicationsbased on DirectShow (like Windows Media Player)can use it.

Morgan RTP DirectShow Filtersare usingRTP, RTCP, RTSP and SDPstandard Internet protocols.

 



사용자 삽입 이미지Screenshots

사용자 삽입 이미지
Windows Media Player automatically uses the
Morgan RTP Source Filterto play media content
delivered by a streaming server.

사용자 삽입 이미지
Windows Media Player 6 can display network
statistics of
Morgan RTP Source Filter.

사용자 삽입 이미지
Morgan Streaming Serveruses theMorgan RTP Destination Filter
to deliver streaming media content over a network.

 

사용자 삽입 이미지Morgan RTP Source Filter :

사용자 삽입 이미지
Graph using theMorgan RTP Source Filterto play a ‘JPEG’ mov file
streamed by aDarwin Streaming Server.

사용자 삽입 이미지
Output window of the above graph.

  • Implements anRTSPclient.
  • ReceivesRTPpackets from an RTP server.
  • Supportsunicast,mulcicastandRTP over TCP.
  • SupportsRTCPprotocol.
  • Can parseSDPfiles describing a streaming session.
  • Supports‘specific’ payload type (96,X-MS-DSHOW) of Morgan RTP Destination filter.
  • SupportsMPEG 1 VideoRTP payload type.
  • SupportsMPEG 1 AudioRTP payload type (includingMP3).
  • Supportsa subset ofJPEGRTP payload type(*).
  • Will support more RTP payload types likeJPEG2000.

(*)With "Q field > 127" (seeRFC 2435: "3.1.4. – Q: 8 bits") and "Quantization Table Length = 128".

 

사용자 삽입 이미지

Morgan RTP Destination Filter :

사용자 삽입 이미지
Graph created by Morgan Streaming Server showing
Morgan RTP Destination Filterstreaming a mj2 file.

  • Implements anRTSPsession server.
  • SendsRTPpackets to an RTP client.
  • Supportsunicast,mulcicastandRTP over TCP.
  • SupportsRTCPprotocol.
  • Only supports a‘specific’RTP payload type(96,X-MS-DSHOW).
  • Will supportsstandards RTP payload typeslikeMPEG,JPEGandJPEG2000.

 

사용자 삽입 이미지

Morgan Streaming Server :

사용자 삽입 이미지
Morgan Streaming Serverusing the Morgan RTP Destination Filter
to stream an mj2 file, window content describe the RTSP session.

  • Implements anRTSPserver.UsesMorgan RTP Destination Filterto stream media content.
  • Can streamany media formatsupported by DirectShowincludingMPEG,MP3,AVI,MOV,DivX, viaX-MS-DSHOWpayload type.
  • DynamicallycompressuncompressedPCMaudio toMP3.
  • Will supportliveaudio and videosourcesand willdynamically compressthem before sending.

     

    사용자 삽입 이미지Server side :

    Installation

    Downloadtheserver side (62K), unzip its content in an empty directory (C:\MMRTPServerfor instance) and run theinstall.batfile.

    You candownloadasample clip too :

    Sample clip (806K)
    (QuickTime – hinted – mov – 320×240 – 15 fps – JPEG – PCM audio).

    These clips can be streamed by bothMorgan Streaming ServerandDarwin Streaming Serverand can be played (on client side) by Windows Media Player 6 usingMorgan RTP Source FilterandMorgan M-JPEG codec.

    Content

    Install.bat: Installation script.
    RTPDest.ax
    : Morgan RTP Destination Filter.
    MStrmSrv.exe
    : Morgan Streaming Server.

    Usage

    1. Copymedia files to be served in the same directory

    1. (C:\MMRTPServerfor instance). It can beany media formatsupported by DirectShowincludingMPEG,MP3,AVI,MOV,DivX.

    2. RunMorgan Streaming Server(MStrmSrv.exe).

        Media files are ready to be served and streamed to the client side. Note thatRTSP serverimplemented in Morgan Streaming Server usesport 554.

      Limitations

      Current version only supports the  ‘specific’RTP payload type(96,X-MS-DSHOW). Next versions will supportsstandards RTP payload typeslikeMPEG,JPEGandJPEG2000.

      To streamMP3files withMorgan Streaming Serverthese files need to have a.mpgor.mpaextension,not .mp3

      Configuration (mss.ini)

      [RTSP]
      port=554
      thread_priority=0
      [Session]
      multicast=0
      mcast_addr=239.255.42.42
      [RTP]
      thread_priority=0
      [RTCP]
      thread_priority=0

      multicast can be 0 or 1 (multicast=0 means unicast)

      thread_priority can be :

      -15 (IDLE)
      -2 (LOWEST)
      -1 (BELOW_NORMAL)
      0 (NORMAL)
      1 (ABOVE_NORMAL)
      2 (HIGHEST)
      15 (TIME_CRITICAL)

       

      사용자 삽입 이미지Client side :

      Installation

      Downloadtheclient side (103K), unzip its content in an empty directory (C:\MMRTPClientfor instance) and run theinstall.batfile.

      Content

      Install.bat: Installation script.
      RTPSource.ax
      : Morgan RTP Source Filter.
      RTPSource.reg
      : Registry script.

      Usage

      1. RunWindows Media Player 6(mplayer2.exe).
      2. Click onFilemenu, chooseOpen …
      3. Type the location of your media (something likertsp://www.morganmultimedia.com/m2.movorrtsp://192.168.0.1/m2.mov).

      or

      1. Click onStartbutton.
      2. Click onRun.
      3. Type the "rtsp://…" location of your media.

      or

      1. Double-click on anSDPfile (with .sdp extension).

      Limitations

      Current version supports Windows Media Player versions 7, 8 and 9 only ifstatisticsis set to0in[WMP]section ofMMRTPSrc.iniconfiguration file. If statistics is set to 1, then only WMP 6 is supported.

      Configuration (MMRTPSrc.ini)

      [FILTER]
      data_available_timeout=2000
      media_type_found_timeout=15000
      buff_size=65536
      nb_aud_buff=4
      nb_vid_buff=32
      thread_priority=0
      [RTP]
      over_tcp=0
      thread_priority=0
      [WMP]
      statistics=0

      xxx_timeout are in milliseconds.

      buff_size is in bytes.

      thread_priority can be :

      -15 (IDLE)
      -2 (LOWEST)
      -1 (BELOW_NORMAL)
      0 (NORMAL)
      1 (ABOVE_NORMAL)
      2 (HIGHEST)
      15 (TIME_CRITICAL)

       

      사용자 삽입 이미지Requirements:

      Morgan RTP DirectShow Filters requires 32-bits Windows PC platform with support for DirectShow (now part of DirectX) :

      • Windows 98, Me, 2000, XP support DirectShow by default.

      • Windows 95 requires an extrainstallation.

      • Windows NT can poorly supportDirectShow(aka DirectX Media).

      Morgan RTP DirectShow Filters have been compiled using DirectX 8.1 SDK but they should work with previous and future versions of DirectXruntime.

      http://www.morgan-multimedia.com/RTP/

       

      사용자 삽입 이미지Source code:

      Source code ofMorgan Streaming Serveris availablehere(505K).

      Note that it contains a modified version ofliveMedialibrary.

      You need MSVC++ 6andDirectX 8.x SDKinstalled on your computer to build it.

      Morgan Streaming Serverprojectis :
      \MSS_v1_0\RTP\src\MStrmSrv\MStrmSrv.dsw

      RTP Destination FilterCOMInterface(IStreamingSession) is defined in :
      \MSS_v1_0\RTP\src\RTPDest\iStrmSes.h

      RTP Destination FilterGUIDis defined in :
      \MSS_v1_0\RTP\src\RTPDest\RTPDestuids.h

      All calls toIStreamingSession(RTP Destination Filter) are donebyCStreamingServerSession::onRTSPcmdin \MSS_v1_0\RTP\src\MStrmSrv\MStrmSrv.cpp

      Note that source code of Morgan RTP Source and Destination filters is not publically available.

      !!! Beta – Beta – Beta – Beta – Beta – Beta – Beta !!!


      답글 남기기

      이메일 주소는 공개되지 않습니다.