• Codec

    RTSP Client를 테스트 해 보았습니다.

    twitter facebook

    안녕하세요? 착한이입니다.


    동영상 스트리밍에는  RTSP, RTMP, HTTPS, UDP 등 다양한 프로토콜이 사용되고 있습니다.

    WAD-MX6W 보드도 여러 프로토콜을 지원하고 있습니다.

    이번 강좌에서는 RTSP 수신에 대해서 설명 드리겠습니다.

    RTSP는 Real Time Streaming Protocol의 약자로 실시간 비디오 전송, 화상 회의, IP Camera, CCTV 등에

    많이 사용되고 있는 프로토콜입니다.

    RTSP 에 대한 자세한 사항은 https://en.wikipedia.org/wiki/Real_Time_Streaming_Protocol 를 참고하시길 바랍니다.


    i.MX6 CPU로 만든 WAD-MX6W 보드는 Windows Embedded Compact 2013(Wince 8.0) 운영체제를 지원합니다.

    Windows Embedded Compact 2013에서 RTSP 방식의 비디오 스트림을 수신하고,

    코덱을 이용하여 재생하기 위해 RTSP 수신 필터를 개발하였습니다.

    필터는 Directshow 기반으로 개발하였으며, File Source 필터와 같은 형태로 만들었습니다.

    IP Camera 또는 CCTV 에서 RTSP로 동영상 데이터를 전송하면

    RTSP 수신 필터에서 데이터를 받아서 demux 하여 오디오 및 비디오 스트림 데이터를 추출합니다.

    이렇게 추출된 스트림 데이터를 오디오 및 비디오 디코딩 필터로 전달하게 됩니다.


    다음 그림은 1080P 해상도, H.264 비디오 코덱을 사용하는 IP Camera에서

    RTSP 방식으로 보내는 스트리밍을 WAD-MX6W 보드로 수신하여 재생하는 모습입니다.

    IP Camera와 WAD-MX6W 는 공유기에 연결되어 있고 H.264 비디오 스트림 데이터를

    받아서 i.MX6의 하드웨어 비디오 가속기인 VPU를 이용해서 디코딩하고 있습니다.


    하나의 이상의 IP Camera가 연결되어 있을 경우에는 IP 주소로 각각에 연결할 수 있습니다.

    내부 네트워크망을 이용하여 사설 감시 시스템이나 NVR을 구현할 수 있습니다.


    다음 동영상은 RTSP 수신 테스트를 보여 줍니다.

    동영상을 보면 드래곤님의 손이 움직이는 것을 보실 수 있습니다. ^^


    여기까지 WAD-MX6W 보드를 이용한

    Windows Embedded Compact 2013 운영체제 상에서 RTSP Client 테스트 관련 내용이였습니다.

    RTSP 수신 필터는 Directshow 기반이므로 Windows Embedded Compact 7(Wince 7.0) 도 지원하며,

    PC용으로 컴파일 할 경우, Windows 운영체제에서도 사용할 수 있습니다. 곧 공개해 드리겠습니다.


    RTSP 스트림을 수신하기 위해서 꼭 Directshow 필터를 개발하실 필요는 없습니다.

    공개 되어 있는 라이브러리를 이용하여 API 레벨로도 구현 가능합니다.

    하지만 비디오 디코딩 및 오디오 디코딩과 연동하려면 Directshow 필터 형태로 구현하는 것이 좋습니다.

    그리고 WAD-MX6W 보드와 같이 Android와 Linux를 지원한다면

    MediaCodec, GStreamer, VLC 등을 이용하셔서 구현하시면 됩니다.

    다음에 Android 상에서 RTSP Client 를 구현하는 것에 대해 설명 드리겠습니다.


    Windows Embedded Compact 2013 또는 Windows Embedded Compact 7 용 RTSP 필터가

    필요하시거나 코덱에 대해 문의 사항이 있으시면 help@wearedev.net 으로 메일 주시거나

    http://www.wearedev.net/?mod=contactus 을 이용하셔서 연락 주십시오.


    WAD-MX6와 WAD-MX6W 는 Windows Embedded Compact 2013과

    Windows Embedded Compact 7과 Android 7.1, Linux를 지원합니다.

    운영체제에 최적화된 코덱을 지원하고 있습니다.


    WAD-MX6W CPU 모듈의 사양은 다음과 같습니다.

    1. CPU : i.MX6 (Cortex A9 - Max 1.2GHz) Quad Plus, Quad, Dual Plus, Dual, Solo Core
    2. RAM : 2GB DDR3 (Max 4GB)
    3. eMMC : 8GB (Max 128GB)
    4. WiFi & Bluetooth Combo
    5. Connector : 300 pins Connector  

    6. OS : Windows Embedded Compact 2013(WinCE 8),

               Windows Embedded Compact 7(WinCE 7),

               Android 7.1

               Linux(Yocto)

               QNX

    7. Size : 50 x 32 mm



    WAD-MX6W CPU 모듈 관련 문의 사항이 있으시면

    http://www.wearedev.net/?mod=contactus 또는 help@wearedev.net 으로 연락 주십시오.

    그럼 즐거운 개발 하시길 바랍니다.