KR20160036924A - 사용기기에 독립적인 라이브 스트리밍 시스템 - Google Patents

사용기기에 독립적인 라이브 스트리밍 시스템 Download PDF

Info

Publication number
KR20160036924A
KR20160036924A KR1020140129216A KR20140129216A KR20160036924A KR 20160036924 A KR20160036924 A KR 20160036924A KR 1020140129216 A KR1020140129216 A KR 1020140129216A KR 20140129216 A KR20140129216 A KR 20140129216A KR 20160036924 A KR20160036924 A KR 20160036924A
Authority
KR
South Korea
Prior art keywords
protocol
data
client device
media
live streaming
Prior art date
Application number
KR1020140129216A
Other languages
English (en)
Inventor
최병욱
김종훈
Original Assignee
서울과학기술대학교 산학협력단
주식회사 세연테크
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 서울과학기술대학교 산학협력단, 주식회사 세연테크 filed Critical 서울과학기술대학교 산학협력단
Priority to KR1020140129216A priority Critical patent/KR20160036924A/ko
Publication of KR20160036924A publication Critical patent/KR20160036924A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2381Adapting the multiplex stream to a specific network, e.g. an Internet Protocol [IP] network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

본 발명은 사용기기에 독립적인 라이브 스트리밍 시스템에 관한 것으로서, 현재 표준으로 제안되고 있는 HLS 프로토콜과 DASH 프로토콜에 대하여, 클라이언트 디바이스의 사용환경 정보를 확인하여 그에 알맞은 프로토콜을 지원함으로써, HTML5에서 지원하는 별도의 플러그인(plug-in) 또는 응용프로그램이 없는 상태에서 운영체제 또는 브라우저에 독립적인 라이브 스트리밍(live streaming)을 구현할 수 있는 시스템을 제공함에 목적이 있다.
이러한 목적을 달성하기 위한 본 발명은, 웹 서버로서, 클라이언트 디바이스가 지원하는 프로토콜을 통해 미디어 데이터를 전송하여 라이브 스트리밍을 제공하는 스트리밍 제공부; 및 상기 클라이언트 디바이스가 지원하는 프로토콜 정보에 따라 IP 카메라로부터 취득한 데이터를 변환함으로써 해당 프로토콜을 구현하여, 변환된 데이터 및 구현된 프로토콜을 상기 스트리밍 제공부로 전송하는 미디어 인코더; 를 포함한다.

Description

사용기기에 독립적인 라이브 스트리밍 시스템{SYSTEM FOR DEVICE INDEPENDENT LIVE STREAMING}
본 발명은 원격 보안에 적합한 IP 카메라를 통해 취득한 비디오 정보 확인을 위한 라이브 스트리밍 시스템에 관한 것으로서, 더욱 상세하게는 디바이스에서 별도의 플러그인 또는 응용프로그램의 설치 없이, 운영체제 또는 브라우저에 독립적인 라이브 스트리밍을 수행하도록 하는 시스템에 관한 것이다.
IP 네트워크를 이용한 영상 감시 및 관리와 관련해서는, 한국공개특허 제10-2010-0038560호(이하, '선행문헌') 외에 다수 등록 및 공개되어 있다.
상기한 선행문헌에는, 네트워크망을 통해 수신되는 영상을 인코딩하고, 스트리밍하는 구성이 개시되어 있다. 상기한 선행문헌과 같이, 감시 보안 등의 목적으로 공공장소에 많은 아날로그/디지털 방식의 CCTV가 설치되어 운영되고 있다. 이에 비하여 최근에는 IP 카메라를 이용한 비디오 보안 감시 시스템이 저가의 시스템으로 일반화되고 있다.
IP 기반의 통신 방식으로 LAN을 이용한 네트워크 방식, 동축케이블 방식 및 유무선 방식 등으로 장소와 상관없이 카메라의 모니터링이 가능하다.
일반적으로, IP 카메라를 이용하여 비디오 정보를 확인하기 위하여서는 별도의 플러그인(Plug-in)이 필요하여 추가적인 소프트웨어를 설치한 후에 사용이 가능하며, 특화된 프로토콜을 이용할 경우 방화벽 등으로 일반적인 접촉이 쉽지 않다.
또한, IP 카메라의 라이브 스트리밍(live streaming)을 지원하기 위한 방법으로는 Real-Time Transport Protocol(RTP), Real-Time Streaming Protocol(RTSP) 프로토콜이 일반적으로 이용되고 있다.
그러나 RTP/RTSP를 이용한 라이브 스트리밍 영상을 사용자의 디바이스에서 재생하기 위해서는, 별도의 응용 프로그램을 통하여 멀티미디어 데이터를 전송받아야 하며, 사용자의 디바이스 및 브라우저에 따라 각각 다른 응용프로그램의 설계가 필요하다.
HTTP 기반 라이브 스트리밍 프로토콜로서는 적응형 라이브 스트리밍(adaptive live streaming)으로서 가장 많은 사용자와 표준화가 진행된 프로토콜을 구현한다. 하나는 애플에서 개발한 HTTP Live Streaming(HLS)프로토콜로서 애플 기기에서 사용이 가능하며, 또 하나는 ISO/IEC 에서 표준화가 진행 중인 Dynamic Adaptive Streaming over HTTP(DASH) 프로토콜로 안드로이드 계열 및 PC 운영체제에서 다양한 브라우저를 지원한다.
한국공개특허 제10-2010-0038560호.
본 발명은 상기와 같은 문제점을 감안하여 안출된 것으로, 현재 표준으로 제안되고 있는 HLS 프로토콜과 DASH 프로토콜에 대하여, 클라이언트 디바이스의 사용환경 정보를 확인하여 그에 알맞은 프로토콜을 지원함으로써, HTML5에서 지원하는 별도의 플러그인(plug-in) 또는 응용프로그램이 없는 상태에서 운영체제 또는 브라우저에 독립적인 라이브 스트리밍(live streaming)을 구현할 수 있는 시스템을 제공함에 목적이 있다.
이러한 기술적 과제를 달성하기 위한 본 발명은 사용기기에 독립적인 라이브 스트리밍 시스템에 관한 것으로서, 웹 서버로서, 클라이언트 디바이스가 지원하는 프로토콜을 통해 미디어 데이터를 전송하여 라이브 스트리밍을 제공하는 스트리밍 제공부; 및 상기 클라이언트 디바이스가 지원하는 프로토콜 정보에 따라 IP 카메라로부터 취득한 데이터를 변환함으로써 해당 프로토콜을 구현하여, 변환된 데이터 및 구현된 프로토콜을 상기 스트리밍 제공부로 전송하는 미디어 인코더; 를 포함한다.
또한 상기 스트리밍 제공부는, 상기 클라이언트 디바이스로부터 미디어 데이터 요청신호를 수신한 경우, 상기 클라이언트 디바이스가 지원하는 프로토콜 정보를 판단하고, 미디어 데이터를 요청한 상기 클라이언트 디바이스가 지원하는 프로토콜 정보를 상기 미디어 인코더로 전달하는 사용환경 정보 확인모듈; 및 CGI(Common Gateway Interface)를 이용하여, 상기 클라이언트 디바이스가 지원하는 프로토콜을 제공하는 프로그램을 실행하고, HTTP 기반으로 해당 프로토콜을 통해 상기 클라이언트 디바이스로 미디어 데이터를 전송하여 라이브 스트리밍을 제공하는 프로그램 실행모듈; 을 포함하는 것을 특징으로 한다.
또한 상기 사용환경 정보 확인모듈은, 디바이스 정보 또는 브라우저 정보를 포함하는 클라이언트 디바이스의 사용환경 정보를 확인하여, 상기 클라이언트 디바이스가 지원하는 프로토콜 정보를 판단하는 것을 특징으로 한다.
또한 상기 미디어 인코더는, 상기 스트리밍 제공부를 통해 전달된 클라이언트 디바이스가 지원하는 프로토콜 정보를 바탕으로, 상기 IP 카메라로부터 취득한 데이터를 프로토콜에 맞게 변환함으로써 해당 프로토콜을 구현하는 데이터 변환모듈; 및 상기 데이터 변환모듈을 통해 변환된 데이터와 구현된 프로토콜을 상기 스트리밍 제공부로 전송하는 데이터 전송모듈; 을 포함하는 것을 특징으로 한다.
그리고 상기 데이터 변환모듈은, 지원하는 프로토콜이 HLS일 경우, 초기 IP 카메라로부터 제공된 H.264 코덱으로 인코딩된 Raw H.264 스트림(Stream) 데이터를 MPEG-2 TS 파일 포맷으로 변환하여 HLS 프로토콜을 위한 분할된 미디어 파일 데이터로 생성하며, 오픈소스 미디어 컨버터인 FFmpeg의 라이브러리를 이용하여 HLS 프로토콜을 구현하는 것을 특징으로 한다.
그리고 상기 데이터 변환모듈은, 지원하는 프로토콜이 DASH일 경우, 초기 IP 카메라로부터 제공된 H.264 코덱으로 인코딩된 Raw H.264 스트림(Stream) 데이터를 Fragmented MP4 파일 포맷으로 변환하여 DASH 프로토콜을 위한 분할된 미디어 파일 데이터로 생성하며, FFmpeg과 더불어 gpac의 미디어 패키지인 MP4Box를 이용하여 DASH 프로토콜을 구현하는 것을 특징으로 한다.
상기와 같은 본 발명에 따르면, 별도의 플러그인 또는 응용프로그램 설치가 필요치 않아, 사용자 디바이스 및 브라우저에 따라 각각 다른 응용프로그램을 설계할 필요가 없으며, 오픈 소스 기반의 미디어 컨버터를 이용함으로써 임베디드 시스템의 메모리를 최소화할 수 있는 효과가 있다.
도 1 은 HLS(HTTP 라이브 스트리밍) 시스템 구조를 보이는 일예시도.
도 2 는 본 발명에 따른 사용기기에 독립적인 라이브 스트리밍 시스템에 관한 전체 구성도.
도 3 은 본 발명에 따른 스트리밍 제공부에서의 CGI를 이용한 프로토콜 스위칭 구조를 보이는 일예시도.
도 4 는 본 발명에 따른 CGI 프로그램 의사코드를 보이는 일예시도.
도 5 는 본 발명에 따른 IP 카메라를 이용한 라이브 스트리밍 실행 화면을 보이는 일예시도.
본 발명의 구체적 특징 및 이점들은 첨부도면에 의거한 다음의 상세한 설명으로 더욱 명백해질 것이다. 이에 앞서 본 발명에 관련된 공지 기능 및 그 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는, 그 구체적인 설명을 생략하였음에 유의해야 할 것이다.
이하, 첨부된 도면을 참조하여 본 발명을 상세하게 설명한다.
본 발명에 따른 사용기기에 독립적인 라이브 스트리밍 시스템에 관하여 도 1 내지 도 5 를 참조하여 설명하면 다음과 같다.
IP 카메라를 이용하여 라이브 스트리밍을 구현하는 방법은 일반적으로 플러그인을 이용하거나 웹 브라우저에서 지원하는 라이브 스트리밍 프로토콜을 사용하는 방법이 있다.
현재 널리 사용되는 라이브 스트리밍 프로토콜은 [표 1] 에 나타낸 바와 같이 플러그인을 이용할 경우 Adobe HDS(HTTP Dynamic Streaming)나 Microsoft IIS(Internet Information Services)를 이용하는 방법이 있다.
[표 1]
Figure pat00001
하지만, Adobe HDS를 또는 Microsoft IIS를 이용하는 경우, 플러그인 또는 별도의 어플리케이션의 설치가 요구되며, 이를 설치할 수 없는 디바이스의 경우에는 재생할 수 없다. 특히, Apple의 iOS에서는 Flash Player를 지원하지 않아 Adobe HDS를 재생할 수 없다.
상술한 바와 같이, 본 발명에서는 보안 감시로 일반적으로 사용되는 IP 카메라를 이용하여 PC 및 모바일 디바이스에서 별도의 플러그인 또는 응용프로그램을 설치하지 않고 라이브 스트리밍을 제공하는 것을 목적으로 한다.
[표 1] 은 현재 많이 사용되고 있는 스트리밍 서비스의 비교표이다. [표 1] 에서 나타낸 바와 같이, 별도의 플러그인을 사용하지 않기 위하여 IP 카메라에 HLS나 DASH 프로토콜을 구현이 요구된다.
즉, 본 발명에서는 HLS와 DASH 프로토콜을 구현하여, PC 및 모바일 디바이스를 목표로 라이브 스트리밍을 제공할 수 있도록 한다.
HLS는 Apple에서 iOS/Safari와 QuickTime Player, Apple TV를 위하여 개발한 프로토콜이며, 라이브 스트리밍과 VOD를 제공하기 위한 프로토콜이다.
HLS는 Apple기기는 물론 현재 안드로이드 기기에서도 지원하는 추세이므로 모바일 기기를 위한 라이브 스트리밍 프로토콜로 적합하다. 또한, HLS는 HTML5 표준을 지원하며 플러그인이나 추가적인 응용프로그램 없이 모바일 기기에서 라이브 스트리밍이 가능한 프로토콜이다.
현재 HTML5에서 DASH 프로토콜의 미디어를 재생할 수 있는 Adaptive Streaming Player를 제공하기 위해서 Media Source Extension(MSE)와 Encrypted Media Extension(EME)을 이용하여 DASH 프로토콜을 통한 미디어를 재생이 가능하도록 개발이 진행되고 있다.
본 발명에서는 IP 카메라에서 HTTP 프로토콜을 이용한 라이브 스트리밍으로 HLS와 DASH 프로토콜과 기존의 RTP/RTSP를 이용하여 라이브 스트리밍을 제공하는 방법의 호환성을 유지할 수 있는 라이브 스트리밍 구조를 제안한다.
도 1 은 HLS(HTTP 라이브 스트리밍) 시스템 구조를 나타내는 그림으로서, 도시된 바와 같이 HLS 프로토콜의 구조는, 미디어 인코딩 후 스트림 세그멘터(Stream segmenter)를 통해 미디어를 분할하는 구조이며, 분할된 미디어를 HTTP 프로토콜을 이용하여 사용자의 미디어 플레이어에 제공하는 구조이다.
이러한 스트림 세그멘터는 일정한 시간 간격마다 입력받은 미디어 데이터를 분할하여 파일을 생성, 분할된 파일에 접근할 수 있는 메타 데이터(m3u8)를 생성하는 일을 한다. 라이브 스트리밍의 경우, 실시간으로 데이터를 저장해야 하므로 스트림 세그멘터를 통하여 미디어 데이터의 분할이 요구되지 않고, 미리 정해진 분할된 미디어의 재생시간만큼 미디어 데이터를 분할하여 저장함으로써 분할된 스트리밍 데이터를 생성할 수 있다. 재생 목록파일은 m3u8 파일 확장자로 라이브 스트리밍을 위해서는 MPEG-2 미디어 포맷인 TS 파일을 최소 3개를 가지고 있어야 하며, 사용자는 m3u8 파일에 기재되어 있는 MPEG2-TS 파일의 URL(Uniform Resource Locator)을 통해 순차적으로 미디어 파일을 요청 및 재생한다. 또한, 지속적인 라이브스트리밍을 위하여서는 MPEG-2 TS 파일의 생성과 함께 생성된 파일에 대한 URL으로 재생 목록이 업데이트 되어야 한다.
본 발명에서는 기존의 보안 감시 시스템의 관리 소프트웨어로의 호환성을 유지하기 위하여 미디어 인코더와 스트림 세그멘터의 순서가 뒤바뀐 형태로 도 1 과 같은 구조를 유지한다.
본 발명에서 사용된 IP 카메라인 FW1173-DS는 JES(JPEG Elementary Stream)로 정의된 이미지 데이터 형식으로 이미지 데이터를 생성한다. JES 이미지 데이터(image data)는 H.264로 인코딩되어 있으며 관리 소프트웨어와 기존의 전송 프로토콜을 이용하여 보안 감시 시스템으로 활용된다.
JES 이미지 데이터를 이용하는 기존 보안 감시 IP 카메라의 통합 관리 소프트웨어와의 호환성을 유지할 수 있도록 IP 카메라로부터 제공되는 JES 이미지 데이터를 이용하여 HLS 프로토콜을 지원한다.
HLS 프로토콜 기반 IP 카메라의 라이브 스트리밍을 구현하기 위해서는 서버에서 실시간으로 미디어 파일을 생성하고 재생 목록 파일을 수정해 주어야한다. 도 1 에서 HLS 프로토콜의 스트림 세그멘터는 카메라에 입력되는 Audio/Video의 JES 이미지 데이터를 이용하여 미리 정해진 분할된 미디어의 재생시간 만큼 프레임이 누적된 raw H.264 스트림 데이터(Stream data)로 생성한다.
미디어 인코더는 FFmpeg의 library를 이용하여 구현되었으며, raw H.264 Stream data를 MPEG-2 TS format으로 변환하여 HLS 프로토콜을 위한 분할된 미디어 파일을 생성한다. 이 과정에서 생성된 분할된 미디어에 대한 재생 목록파일인 m3u8 파일을 생성함으로써 사용자로부터 재생 목록이 요청될 경우 분할된 미디어로 링크가 가능하도록 한다.
도 2 는 본 발명에 따른 사용기기에 독립적인 라이브 스트리밍 시스템에 관한 전체 구성도로서, 도시된 바와 같이 스트리밍 제공부(100) 및 미디어 인코더(200)를 포함하여 이루어진다.
스트리밍 제공부(100)는 웹 서버로서, 클라이언트 디바이스(10)가 지원하는 프로토콜을 통해 미디어 데이터를 전송하여 라이브 스트리밍을 제공하는 기능을 수행하는 바, 도 2 에 도시된 바와 같이 사용환경 정보 확인모듈(110) 및 프로그램 실행모듈(120)을 포함한다.
구체적으로, 사용환경 정보 확인모듈(110)은 클라이언트 디바이스(10)로부터 미디어 데이터 요청신호를 수신한 경우, 디바이스 정보 또는 브라우저 정보를 포함하는 클라이언트 디바이스(10)의 사용환경 정보를 확인하여, 클라이언트 디바이스(10)가 지원하는 프로토콜 정보를 판단하고, 미디어 데이터를 요청한 클라이언트 디바이스(10)가 지원하는 프로토콜 정보를 미디어 인코더(200)로 전달한다.
프로그램 실행모듈(120)은 CGI(Common Gateway Interface)를 이용하여, 클라이언트 디바이스(10)가 지원하는 프로토콜을 제공하는 프로그램을 실행하고, HTTP/1.1 기반으로 해당 프로토콜을 통해 클라이언트 디바이스(10)로 미디어 데이터를 전송하여 라이브 스트리밍을 제공한다.
미디어 인코더(200)는 클라이언트 디바이스(10)가 지원하는 프로토콜 정보에 따라 IP 카메라(20)로부터 취득한 Raw H.264 스트림 데이터를 해당 프로토콜에 적합하게 변환함으로써, 변환된 데이터 및 구현된 프로토콜을 스트리밍 제공부(100)로 전송하는 기능을 수행하는 바, 도 2 에 도시된 바와 같이 데이터 변환모듈(210) 및 데이터 전송모듈(220)을 포함한다.
구체적으로, 데이터 변환모듈(210)은 스트리밍 제공부(100)를 통해 전달된 클라이언트 디바이스(10)가 지원하는 프로토콜 정보를 바탕으로, IP 카메라(20)로부터 취득한 데이터를 프로토콜에 맞게 변환함으로써 해당 프로토콜을 구현한다.
이때, 데이터 변환모듈(210)은 지원하는 프로토콜이 HLS일 경우, 초기 IP 카메라(20)로부터 제공된 H.264 코덱으로 인코딩된 Raw H.264 스트림 데이터를 MPEG-2 TS 파일 포맷으로 변환하여 HLS 프로토콜을 위한 분할된 미디어 파일 데이터로 생성하며, 오픈소스 미디어 컨버터인 FFmpeg의 라이브러리를 이용하여 HLS 프로토콜을 구현한다.
또한, 데이터 변환모듈(210)은 지원하는 프로토콜이 DASH일 경우, 초기 IP 카메라(20)로부터 제공된 H.264 코덱으로 인코딩된 Raw H.264 스트림 데이터를 Fragmented MP4 파일 포맷으로 변환하여 DASH 프로토콜을 위한 분할된 미디어 파일 데이터로 생성하며, FFmpeg과 더불어 gpac의 미디어 패키지인 MP4Box를 이용하여 DASH 프로토콜을 구현한다.
데이터 전송모듈(220)은 데이터 변환모듈(210)을 통해 변환된 데이터와 구현된 프로토콜을 스트리밍 제공부(100)로 전송한다.
데이터 변환모듈(210)을 통해 분할된 미디어 파일을 생성하는 과정에서, HLS 프로토콜을 위한 분할된 미디어 파일 데이터는 m3u8파일이며, DASH 프로토콜을 위한 분할된 미디어 파일 데이터는 MPD 파일이다.
이에, 데이터 전송모듈(220)은 클라이언트 디바이스(10)로부터 재생목록이 요청될 경우, 상술한 분할된 미디어로 링크되도록 할 수 도 있다.
도 3 은 스트리밍 제공부(100)에서의 CGI를 이용한 프로토콜 스위칭 구조를 보이는 일예시도로서, 클라이언트 디바이스(10)가 웹 서버인 스트리밍 제공부(100)에 접속할 경우, 스트리밍 제공부(100)에서 클라이언트 디바이스(10)의 사용환경 정보를 판단하여 CGI(Common Gateway Interface)를 통해 사용자의 사용환경에 맞는 프로토콜을 실행하는 구조를 나타낸다.
예를 들어, 클라이언트 디바이스(10)가 MAC OS 또는 Safari 브라우저(6.0 이후 버전)를 이용하여 접속한 경우, HLS 프로토콜을 제공할 수 있도록 서버의 프로그램을 실행한다.
또한, Windows 운영체제 또는 안드로이드 운영체제에서 Chrome 브라우저를 이용하여 접속한 경우, DASH 프로토콜을 제공하는 프로그램이 실행된다. 도 4 는 CGI를 이용하여 사용자의 사용환경 정보에 따라 HLS 또는 DASH 프로토콜을 선택적으로 제공하도록 하는 의사코드 이다.
이하에서는, IP 카메라 기반의 HTTP 라이브 스트리밍 실험 결과에 관하여 설명하도록 한다.
실험에는 Windows 7 운영체제의 PC와 Windows 8.1 그리고 모바일 디바이스로는 iPhone 4S iOS 7.0.1과 Android 4.4.2에서 수행되었으며, 결과는 도 5 에 나타나 있다. iPhone의 경우, 브라우저와 독립적으로 브라우저상에서 미디어를 재생할 경우 QuickTime 플레이어를 이용하여 미디어를 재생하며, QuickTime 플레이어에서 HLS만을 지원한다.
한편, iOS 또는 Mac OS로 접속할 경우 CGI를 이용하여 서버의 HLS를 제공하는 프로그램을 실행하며, 라이브 스트리밍을 제공한다. 현재 DASH 프로토콜은 Chrome 브라우저와 Windows 8.1의 IE 11에서만 재생이 가능하므로 PC상에서 Chrome 브라우저를 이용하여 서버에 접속하였을 경우 DASH프로토콜을 제공하는 프로그램을 실행한다.
실험 결과, IP 카메라로부터 제공받은 JES 이미지 데이터를 이용한 HTTP기반 라이브 스트리밍을 플러그인 또는 어플리케이션의 설치없이 재생이 가능하였다.
하지만, HLS 프로토콜의 경우 최소 3개의 분할된 미디어 파일이 생성된 이후부터 라이브 스트리밍을 제공할 수 있으며, Apple에서 권장하는 분할된 미디어 파일의 재생시간인 10초로 라이브스트리밍 제공시 촬영시점과 재생시점 간에 30초의 지연시간이 발생한다. 또한, DASH 프로토콜의 경우 서버의 성능에 따라 분할된 미디어 파일의 재생시간을 결정할 수 있으며, 본 실험에서는 분할된 미디어 파일의 재생시간을 2초로 설정하여 실험을 수행하였다. 실험 결과, DASH 프로토콜의 경우 HLS 프로토콜보다 짧은 지연시간이 발생하는 것을 확인할 수 있었다.
지금까지 상술한 바와 같은, 본 발명에 따른 사용기기에 독립적인 라이브 스트리밍 시스템은, HTML5를 기반으로 별도의 플러그인 또는 추가적인 응용프로그램의 설치 없이 사용자의 디바이스 및 브라우저에 독립적으로 지원 가능한 라이브 스트리밍 프로토콜을 제공하는 시스템을 구현하였다.
Apple Inc.의 디바이스와 이외의 PC 및 안드로이드 디바이스에서 라이브 스트리밍을 요구할 경우, 사용자의 환경에 따라 미디어 인코더를 선택하여 라이브 스트리밍 영상을 확인하였다. 현재 설치된 CCTV의 감시, 방범 기능을 별도의 플러그인 없이 추가하여 손쉽게 실현가능하다는 것을 실험하였다.
이와 같은 시스템은 모바일 디바이스에 적합하며, 별도의 플러그인이 없는 상황에서 실시간 라이브 스트리밍이 가능함으로써 다양한 응용이 가능한 특징적인 장점을 갖는다.
이상으로 본 발명의 기술적 사상을 예시하기 위한 바람직한 실시예와 관련하여 설명하고 도시하였지만, 본 발명은 이와 같이 도시되고 설명된 그대로의 구성 및 작용에만 국한되는 것이 아니며, 기술적 사상의 범주를 일탈함이 없이 본 발명에 대해 다수의 변경 및 수정이 가능함을 당업자들은 잘 이해할 수 있을 것이다. 따라서, 그러한 모든 적절한 변경 및 수정과 균등물들도 본 발명의 범위에 속하는 것으로 간주되어야 할 것이다.
100: 프로토콜 생성 요청부 200: 미디어 인코더
110: 사용환경 정보 확인모듈 120: 프로그램 실행모듈
210: 데이터 변환모듈 220: 데이터 전송모듈
10: 클라이언트 디바이스 20: IP 카메라

Claims (6)

  1. 웹 서버로서, 클라이언트 디바이스가 지원하는 프로토콜을 통해 미디어 데이터를 전송하여 라이브 스트리밍을 제공하는 스트리밍 제공부; 및
    상기 클라이언트 디바이스가 지원하는 프로토콜 정보에 따라 IP 카메라로부터 취득한 데이터를 변환함으로써 해당 프로토콜을 구현하여, 변환된 데이터 및 구현된 프로토콜을 상기 스트리밍 제공부로 전송하는 미디어 인코더; 를 포함하는 사용기기에 독립적인 라이브 스트리밍 시스템.
  2. 제 1 항에 있어서,
    상기 스트리밍 제공부는,
    상기 클라이언트 디바이스로부터 미디어 데이터 요청신호를 수신한 경우, 상기 클라이언트 디바이스가 지원하는 프로토콜 정보를 판단하고, 미디어 데이터를 요청한 상기 클라이언트 디바이스가 지원하는 프로토콜 정보를 상기 미디어 인코더로 전달하는 사용환경 정보 확인모듈; 및
    CGI(Common Gateway Interface)를 이용하여, 상기 클라이언트 디바이스가 지원하는 프로토콜을 제공하는 프로그램을 실행하고, HTTP 기반으로 해당 프로토콜을 통해 상기 클라이언트 디바이스로 미디어 데이터를 전송하여 라이브 스트리밍을 제공하는 프로그램 실행모듈; 을 포함하는 것을 특징으로 하는 사용기기에 독립적인 라이브 스트리밍 시스템.
  3. 제 2 항에 있어서,
    상기 사용환경 정보 확인모듈은,
    디바이스 정보 또는 브라우저 정보를 포함하는 클라이언트 디바이스의 사용환경 정보를 확인하여, 상기 클라이언트 디바이스가 지원하는 프로토콜 정보를 판단하는 것을 특징으로 하는 사용기기에 독립적인 라이브 스트리밍 시스템.
  4. 제 1 항에 있어서,
    상기 미디어 인코더는,
    상기 스트리밍 제공부를 통해 전달된 클라이언트 디바이스가 지원하는 프로토콜 정보를 바탕으로, 상기 IP 카메라로부터 취득한 데이터를 프로토콜에 맞게 변환함으로써 해당 프로토콜을 구현하는 데이터 변환모듈; 및
    상기 데이터 변환모듈을 통해 변환된 데이터와 구현된 프로토콜을 상기 스트리밍 제공부로 전송하는 데이터 전송모듈; 을 포함하는 것을 특징으로 하는 사용기기에 독립적인 라이브 스트리밍 시스템.
  5. 제 4 항에 있어서,
    상기 데이터 변환모듈은,
    지원하는 프로토콜이 HLS일 경우, 초기 IP 카메라로부터 제공된 H.264 코덱으로 인코딩된 Raw H.264 스트림 데이터를 MPEG-2 TS 파일 포맷으로 변환하여 HLS 프로토콜을 위한 분할된 미디어 파일 데이터로 생성하며, 오픈소스 미디어 컨버터인 FFmpeg의 라이브러리를 이용하여 HLS 프로토콜을 구현하는 것을 특징으로 하는 사용기기에 독립적인 라이브 스트리밍 시스템.
  6. 제 4 항에 있어서,
    상기 데이터 변환모듈은,
    지원하는 프로토콜이 DASH일 경우, 초기 IP 카메라로부터 제공된 H.264 코덱으로 인코딩된 Raw H.264 스트림 데이터를 Fragmented MP4 파일 포맷으로 변환하여 DASH 프로토콜을 위한 분할된 미디어 파일 데이터로 생성하며, FFmpeg과 더불어 gpac의 미디어 패키지인 MP4Box를 이용하여 DASH 프로토콜을 구현하는 것을 특징으로 하는 사용기기에 독립적인 라이브 스트리밍 시스템.

KR1020140129216A 2014-09-26 2014-09-26 사용기기에 독립적인 라이브 스트리밍 시스템 KR20160036924A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140129216A KR20160036924A (ko) 2014-09-26 2014-09-26 사용기기에 독립적인 라이브 스트리밍 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140129216A KR20160036924A (ko) 2014-09-26 2014-09-26 사용기기에 독립적인 라이브 스트리밍 시스템

Publications (1)

Publication Number Publication Date
KR20160036924A true KR20160036924A (ko) 2016-04-05

Family

ID=55800176

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140129216A KR20160036924A (ko) 2014-09-26 2014-09-26 사용기기에 독립적인 라이브 스트리밍 시스템

Country Status (1)

Country Link
KR (1) KR20160036924A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108540515A (zh) * 2017-03-06 2018-09-14 腾讯科技(深圳)有限公司 一种数据处理方法及服务器
US11622164B2 (en) 2019-07-12 2023-04-04 Carrier Corporation System and method for streaming video/s

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108540515A (zh) * 2017-03-06 2018-09-14 腾讯科技(深圳)有限公司 一种数据处理方法及服务器
CN108540515B (zh) * 2017-03-06 2022-04-15 腾讯科技(深圳)有限公司 一种数据处理方法及服务器
US11622164B2 (en) 2019-07-12 2023-04-04 Carrier Corporation System and method for streaming video/s

Similar Documents

Publication Publication Date Title
CN102118428B (zh) 一种播放流媒体的方法和***
US9113186B2 (en) Providing syndication feed content on a television set-top box with limited decoder capability
US9351020B2 (en) On the fly transcoding of video on demand content for adaptive streaming
TWI435568B (zh) 多媒體影音之轉換及傳輸的方法以及系統
US20140297804A1 (en) Control of multimedia content streaming through client-server interactions
WO2016100916A1 (en) Service signaling recovery for multimedia content using embedded watermarks
CN109587514B (zh) 一种视频播放方法、介质和相关装置
KR102499231B1 (ko) 수신 장치, 송신 장치 및 데이터 처리 방법
US20150237091A1 (en) Real-Time Transcode Transfer Method and System Based on HTTP under DLNA
KR20120114016A (ko) 사용자 컨텐츠를 외부 단말기에서 네트워크 적응적으로 스트리밍하는 방법 및 장치
CN106464933B (zh) 用于远程控制对多媒体内容的渲染的设备和方法
JP6359539B2 (ja) レンダリング時の制御
CN105049931B (zh) 对移动终端中非支持格式的视频进行转换的方法及***
CN107925798B (zh) 接收设备、发送设备和数据处理方法
Yang et al. Implementation of HTTP live streaming for an IP camera using an open source multimedia converter
JP2017011325A (ja) 受信装置、送信装置、及び、データ処理方法
TW201605230A (zh) 即時影音傳輸方法及其系統
KR20160036924A (ko) 사용기기에 독립적인 라이브 스트리밍 시스템
CN107534792B (zh) 接收设备、发送设备以及数据处理方法
KR101690153B1 (ko) Http 기반 무버퍼링 영상전송 방법을 이용한 실시간 스트리밍 시스템
US20190158898A1 (en) Hybrid transmission protocol
KR101568317B1 (ko) Ip 카메라에서 hls 프로토콜을 지원하는 시스템 및 그 방법
JP6862437B2 (ja) マルチメディアデータを送受信する方法及び装置
EP3759906A1 (en) Apparatus, method and system for multiple audio-video streams reception
KR20130115950A (ko) 방송 서비스 지원 방법 및 이에 적용되는 장치

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application