KR20160074310A - 하이브리드망에서의 스트리밍 방법 및 그 장치 - Google Patents
하이브리드망에서의 스트리밍 방법 및 그 장치 Download PDFInfo
- Publication number
- KR20160074310A KR20160074310A KR1020140183499A KR20140183499A KR20160074310A KR 20160074310 A KR20160074310 A KR 20160074310A KR 1020140183499 A KR1020140183499 A KR 1020140183499A KR 20140183499 A KR20140183499 A KR 20140183499A KR 20160074310 A KR20160074310 A KR 20160074310A
- Authority
- KR
- South Korea
- Prior art keywords
- network
- metadata
- streaming
- communication network
- video
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/238—Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/238—Interfacing 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/23805—Controlling the feeding rate to the network, e.g. by controlling the video pump
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/238—Interfacing 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/2381—Adapting the multiplex stream to a specific network, e.g. an Internet Protocol [IP] network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/61—Network physical structure; Signal processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/631—Multimode Transmission, e.g. transmitting basic layers and enhancement layers of the content over different transmission paths or transmitting with different error corrections, different keys or with different transmission protocols
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
하이브리드망에서의 스트리밍 방법 및 그 장치가 제공된다. 방송망과 통신망이 결합된 하이브리드 망에서, 클라이언트 장치는 방송망을 통하여 비디오 스트림을 수신하는 상태에서 통신망으로의 망전환이 결정되면 연동 비디오 스트림 동기화를 위한 타임 스탬프값을 통신망을 통하여 스트리밍 서버로 전송하면서 메타데이터 파일을 요청하고, 요청에 따른 타임스탬프 메타데이터파일을 수신하고 분석하여 시작 세그먼트 위치를 찾는다. 클라이언트 장치는 시작 세그먼트 위치를 토대로 통신망을 통하여 스트리밍 서버로부터 관련 세그먼트 파일들을 수신하여 재생하며, 이후, 시작 세그먼트 위치에 대응하는 시간 윈도우 구간의 메타데이터만을 주기적으로 요청하여 제공받아 비디오 서비스를 제공한다.
Description
본 발명은 방송망과 통신망이 결합된 하이브리드 (hybrid) 망에서, 비디오 서비스를 제공하는 스트리밍 방법 및 그 장치에 관한 것이다.
방송망과 통신망을 결합한 네트워크를 방통 융합 하이브리드(hybrid) 망이라 하고, 하이브리드 망을 통해 제공되는 서비스를 방송 통신 융합형 서비스라 한다. 이러한 하이브리드 망을 구성하기 위해서는 단말의 방송 수신, 양방향 통신, 이종 망 간의 스트림 동기화 및 연계 서비스 등의 기능이 요구된다. 방송망에서 제공되는 방송 서비스에, 방송망과 통신망의 융합을 통한 스트리밍 서비스와 다양한 형태의 부가 서비스를 제공하기 위한 하이브리드 방송, 그리고 무선 통신 연계를 위한 추가 모듈 및 이를 제어하는 방법들이 연구되고 있다.
DMB(digital multimedia broadcating) 수신 단말과 같은 방송 장치는 이동형 수신 기기이다. 그런데 사용자가 이동 중에 방송 수신 장애 또는 방송 수신 불가 지역에 진입하는 경우와 같이 수신 환경이 급격히 악화되는 경우, 이동형 수신 기기의 방송 수신율이 현저하게 떨어지는 현상이 빈번히 발생할 수 있다. 이러한 경우 DMB 방송 서비스의 정상적인 제공이 어렵다. 이러한 상황에서 방통 융합 하이브리드 망을 이용하여 끊김 없이 비디오 서비스를 제공하는 기술 개발도 필요하다.
기존의 비디오 스트리밍은 RTP(realtime streaming protocol)와 같이 클라이언트가 서버에 접속하여 세션이 생성되고, 이 세션을 통하여 서버에서 클라이언트로 미디어 데이터를 흐르는 물과 같이 전송하는 고전적인 스트리밍 방식이다. 이와 달리 HTTP(hypertext transfer protocol) 기반의 스트리밍 기술은 미디어 데이터를 조각 형태의 세그먼트(segment) 파일로 분리하고 HTTP 프로토콜을 통한 다운로드 방식으로 클라이언트가 연속적인 미디어 데이터 조각을 요청하여 수신하는 스트리밍 방식이다. HTTP 기반의 스트리밍 기술은 서버와 클라이언트 사이의 세션을 유지하지 않으며, 서버에서 클라이언트로 데이터를 밀어주는 "푸쉬(PUSH)" 형태의 전송이 아닌 클라이언트가 서버로 데이터를 요청하여 다운받는 "풀(PULL)" 형태의 전송 방식이다.
HTTP 기반의 스트리밍 기술로는 HLS(HTTP live streaming), DASH(dynamic adaptive streaming HTTP) 등 다양한 방식이 있으며, 이러한 스트리밍 기술은 공통적으로 2가지 요소로 구성된다. 첫 번째 요소는 인코딩된 비디오 서비스 스트림 자체로, TS(transport stream)나 ISOBMFF(ISO base media file format) 등 미디어 데이터를 조각으로 분리한 미디어 세그먼트 파일이다. 두 번째 요소는 다운로드 가능한 미디어 세그먼트 파일 등 스트리밍에 관한 정보를 명시한 메타 데이터 파일로, HLS의 m3u8이나 DASH의 MPD(media presentation description) 등의 파일이다.
HTTP 기반의 스트리밍 기술은 망 상태에 따라 적응적으로 미디어 데이터 품질을 선택하여 받을 수 있도록 다양한 품질의 미디어 데이터 세그먼트 파일을 동시에 생성하고, 이에 대한 정보를 m3u8이나 MPD를 통해 클라이언트에게 제공하여 망 상태에 따라서 품질이 다른 비디오 서비스를 연속적으로 제공할 수 있는 특징이 있다.
방송망과 통신망 각각에서 비디오 스트림을 받을 수 있는 경우 단순히 스트림을 수신하는 망을 선택하여 서비스를 제공할 수도 있으나, 이러한 단순 전환 방법은 연속적인 서비스를 제공하기가 어렵다. 방송망과 통신망의 이종망 간에 연속적인 비디오 스트림을 제공하기 위해서는 "PUSH"와 "PULL" 형태의 스트리밍 방식에서 스트림 데이터를 동기화 할 수 있는 방법이 필요하다.
본 발명이 해결하고자 하는 과제는 방송망과 통신망이 결합된 하이브리드 (hybrid) 망에서, 비디오 서비스를 방송망으로 전송하면서 동시에 통신망을 통해 HTTP 기반 스트리밍 방식으로 연속적인 비디오 서비스를 제공할 수 있는 스트리밍 방법 및 그 장치를 제공하는 것이다.
본 발명의 특징에 따른 스트리밍 방법은, 방송망과 통신망이 결합된 하이브리드 (hybrid) 망에서, 비디오 서비스를 제공하는 스트리밍 방법에서, 클라이언트 장치는 상기 방송망을 통하여 비디오 스트림을 수신하는 상태에서, 상기 통신망으로의 망전환이 결정되면 연동 비디오 스트림 동기화를 위한 타임 스탬프값을 결정하는 단계; 상기 결정된 타임 스탬프값을 상기 통신망을 통하여 스트리밍 서버로 전송하면서 메타데이터 파일을 요청하는 단계; 상기 스트리밍 서버로부터 상기 요청에 대응하는 타임스탬프 메타데이터파일을 수신하고 분석하여 시작 세그먼트 위치를 찾는 단계; 및 상기 시작 세그먼트 위치를 토대로 상기 통신망을 통하여 스트리밍 서버로부터 관련 세그먼트 파일들을 수신하여 재생하는 단계를 포함한다. 상기 클라이언트 장치는 상기 요청에 대응하는 타임스탬프 메타데이터파일을 수신한 다음에, 상기 시작 세그먼트 위치에 대응하는 시간 윈도우 구간의 메타데이터만을 주기적으로 요청하여 제공받아 비디오 서비스를 제공할 수 있다.
본 발명의 실시 예에 따르면, 방송망과 통신망이 결합된 하이브리드망에서 방송망과 통신망을 통해 비디오 서비스를 연속적으로 제공할 수 있다.
또한, 통신망에서 HLS(http live streaming)나 DASH(dynamic adaptive streaming over HTTP)와 같은 HTTP 기반의 라이브 스트리밍 방식을 사용할 경우, 기존 방송망에서 통신망으로 전환시 방송망을 통해 마지막 수신된 비디오 서비스에 연속적인 미디어 세그먼트 파일을 찾아 스트리밍을 요청할 수 있다.
그러므로, 기존의 방송 시스템 변경 없이 비디오 서비스를 방송망으로 전송하면서 동시에 통신망을 통해 HTTP 기반 스트리밍 방식으로 연속적인 비디오 서비스를 제공하는 망 연동 서비스와 함께 기존 HTTP 기반의 스트리밍 서비스에 호환되는 라이브 스트리밍 서비스도 제공할 수 있다.
또한, 기존 HTTP 기반의 다양한 망 부하 저감 기술(예로서 CDN(contents delivery network))을 사용하여 서버에 큰 부하 없이 다수의 클라이언트를 동시 대응할 수 있는 구조의 망 전환 서비스 제공이 가능하다.
도 1은 본 발명의 실시 예에 따른 방송 통신 융합 하이브리드 망에서의 연동 비디오 서비스 제공을 위한 네트워크 환경을 나타낸 도이다.
도 2는 본 발명의 실시 예에 따른 스트리밍 서버의 구조를 나타낸 도이다.
도 3은 본 발명의 실시 예에 따른 메타데이터의 업데이트 시간 범위를 나타낸 도이다.
도 4는 본 발명의 실시 예에 따른 메타데이터들의 관계를 나타낸 예시도이다.
도 5는 본 발명의 실시 예에 따른 클라이언트 장치의 구조를 나타낸 도이다.
도 6은 본 발명의 실시 예에 따른 스트리밍 방법의 흐름도이다.
도 2는 본 발명의 실시 예에 따른 스트리밍 서버의 구조를 나타낸 도이다.
도 3은 본 발명의 실시 예에 따른 메타데이터의 업데이트 시간 범위를 나타낸 도이다.
도 4는 본 발명의 실시 예에 따른 메타데이터들의 관계를 나타낸 예시도이다.
도 5는 본 발명의 실시 예에 따른 클라이언트 장치의 구조를 나타낸 도이다.
도 6은 본 발명의 실시 예에 따른 스트리밍 방법의 흐름도이다.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시 예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성 요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
이하, 도면을 참조하여 본 발명의 실시 예에 따른 하이브리드 망에서의 스트리밍 방법 및 그 장치에 대하여 설명한다.
일반적으로 HTTP 기반의 라이브 스트리밍은 일정한 시간 간격마다 입력 받은 미디어 데이터를 분할된 미디어 세그먼트(segment) 파일로 만들고, 그 분할된 세그먼트 파일에 대한 정보가 포함된 m3u8이나 MPD(media presentation description) 와 같은 메타데이터 파일을 주기적으로 업데이트하며, 일정한 시간 구간(time window) 내의 연속적인 파일들에 접근할 수 있는 정보를 제공한다. 예를 들어, 가장 최근에 생성된 n개의 세그먼트 파일에 접근할 수 있는 정보를 제공하도록 메타데이터 파일을 주기적으로 업데이트하고 있다고 가정하면, 클라이언트가 HTTP 기반의 라이브 스트리밍 서버에 처음 접속하여 메타데이터 파일을 요청하여 분석하고, 이를 통해 가장 최근에 생성된 미디어 데이터의 세그먼트 파일 n개를 수신한 후, 메타데이터 업데이트시 새로 생성되는 미디어 데이터의 세그먼트 파일만을 확인하고 요청하여 라이브 스트리밍과 같이 비디오 서비스를 재생할 수 있다.
본 발명의 실시 예에서는 방송망과 통신망이 결합된 하이브리드 (hybrid) 망(또는 방송 통신 융합 하이브리드 망이라고도 명명함)에서, 비디오 서비스를 방송망으로 전송하면서 동시에 통신망을 통해 HTTP 기반 스트리밍 방식으로 연속적인 비디오 서비스를 제공한다.
통신망을 통한 HTTP 기반 스트리밍을 위해 생성된 미디어 세그먼트 파일을 방송망을 통하여 전송하는 경우, 망 전환시, 방송망에서 마지막으로 정상 수신된 세그먼트 파일을 연속적으로 요청하는 것만으로도 연속적인 비디오 서비스 제공이 가능한다. 본 발명의 실시 예에서는 방송 시스템 변경 없이 기존 방송망의 비디오 서비스 스트림과 통신망을 통한 HTTP 기반 스트리밍을 연동하여, 비디오 서비스를 방송망으로 전송하면서 동시에 통신망을 통해 HTTP 기반 스트리밍 방식으로 연속적인 비디오 서비스를 제공한다.
본 발명의 실시 예에서는 기존의 방송 시스템 변경 없이 방송망을 통해 수신된 비디오 서비스 스트림과 통신망을 통한 HTTP 기반의 스트리밍을 연속적으로 연결할 수 있는 동기화 방법을 제공하기 위하여, 방송 비디오 서비스 스트림의 타임 스탬프 정보를 사용한다.
타임 스탬프 정보는 PCR(program clock reference), PTS(presentation time stamp), CTS(composition time stamp) 등 방송 비디오 서비스 스트림의 연속성을 확인할 수 있는 값을 나타낸다. HTTP 기반의 스트리밍 기술에 따라 미디어 데이터를 조각 형태의 세그먼트 파일로 분리하는데, 타임 스탬프 정보는 세그먼트 파일 포맷에 따라 그 종류가 결정될 수 있다. 예를 들어, TS(transport stream) 형태의 세그먼트 파일을 사용하는 경우, PCR을 스트림 동기화를 위한 타임 스탬프로 사용할 수 있다.
이러한 본 발명의 실시 예에서, HTTP 기반 스트리밍으로 전송되는 비디오 스트림 내의 특정 비디오 및 오디오의 타임 스탬프 값들이, 방송망을 통해 전송되는 비디오 서비스 스트림 내의 특정 비디오 및 오디오의 타임스탬프 값과 일치한다는 것을 전제로 한다.
도 1은 본 발명의 실시 예에 따른 방송 통신 융합 하이브리드 망에서의 연동 비디오 서비스 제공을 위한 네트워크 환경을 나타낸 도이다.
첨부한 도 1에서와 같이, 비디오 서비스를 방송망으로 전송하면서 동시에 통신망을 통해 HTTP 기반 스트리밍 방식으로 연속적인 비디오 서비스를 제공하기 위하여, 비디오 서비스 인코딩 장치(1)는 방송 송신 시스템(2)으로 비디오 서비스 스트림을 전송하며, 또한, 통신망에 연결된 스트리밍 서버(3)로 비디오 서비스 스트림을 전송한다.
스트리밍 서버(3)는 통신망을 통하여 클라이언트 장치(4)로 비디오 서비스 스트림을 전송하며, 방송 시스템(1)도 방송망을 통하여 클라이언트 장치(4)로 비디오 서비스 스트림을 전송한다.
여기서, 스트리밍 서버(3)는 HTTP 기반의 서버이며, 클라이언트 장치(4)도 HTTP 기반의 클라이언트가 포함된 단말을 나타낸다.
비디오 서비스 인코딩 장치(1)는 영상 및 소리 신호를 압축하여 비디오 서비스 스트림을 생성한다. 방송 송신 시스템(2)은 비디오 서비스 인코딩 장치(1)로부터 전달되는 비디오 서비스 스트림을 방송망에 맞도록 방송 신호로 처리하여 클라이언트 장치(4)로 전송한다.
한편, 비디오 서비스 인코딩 장치(1)에서 생성된 비디오 서비스 스트림은 방송망의 방송 송신 시스템(2)뿐만 아니라 통신망의 스트리밍 서버(3)로도 제공된다.
도 2는 본 발명의 실시 예에 따른 스트리밍 서버의 구조를 나타낸 도이다.
첨부한 도 2에서와 같이, 스트리밍 서버(2)는 비디오 스트림 세그먼터(21), 타임스탬프 메타데이터 생성부(22), 시간 윈도우 구간별 메타데이터 생성부(23), 세그먼트 파일 캐시(24), 그리고 스트리밍부(25)를 포함한다.
비디오 스트림 세그먼터(21)는 비디오 서비스 인코딩 장치(1)로부터 입력되는 비디오 서비스 스트림을 HTTP 기반 라이브 스트리밍 방식에 적합한 지정된 규격의 세그먼트 파일들로 변환한다. 그리고 생성된 세그먼트 파일들을 세그먼트 파일 캐시(24)에 저장한다. 세그먼트 파일 생성 과정에서 미디어 데이터의 패키지 포맷은 변경될 수 있으나, 방송망과 통신망 스트림 동기화를 위해 지정된 타임스탬프 값은 변경 없이 포함되어야 한다.
타임스탬프 메타데이터 생성부(22)는 스트리밍에 관한 정보를 명시한 타임스탬프 메타 데이터를 생성한다. 타임스탬프 메타데이터는 세그먼트 파일 등 스트리밍에 관한 정보를 명시한 메타 데이터 파일로, 일반적인 HTTP 기반의 라이브 스트리밍을 위한 m3u8이나 MPD 메타데이터 보다 큰 시간 범위 내의 세그먼트 파일과 각 세그먼트 파일의 타임스탬프 정보를 제공한다(즉,타임스탬프 메타데이터 파일의 사이즈가 커도 무방하다). 기존의 HTTP기반 VOD(video on demand) 서비스에서 타임쉬프트(time shift) 기능 제공을 위해 사용되는 비디오 파일의 시작 세그먼트 위치에서 마지막 세그먼트까지의 전체 세그먼트 파일 리스트와, 각 세그먼트의 상대적인 재생 시간 정보를 제공하는 구조와 달리, 타임스탬프 메타 데이터는 일정 시간 구간 범위 내에만 해당하는 세그먼트 파일 리스트와, 각 세그먼트 파일의 수신 정보 및 각 세그먼트 파일의 타임스탬프 정보를 제공할 수 있다. 클라이언트 장치(4)가 요청하는 망 연동 비디오 스트림 동기화 타임스탬프 위치를 포함하는 스트림(방송망으로 수신한 스트림)과, 연속된 위치가 포함된 첫 번째 시작 세그먼트 파일을 검색할 수 있는 정보를 타임스탬프 메타데이터에서 제공한다.
이러한 타임스탬프 메타데이터 만으로도 망 연동 서비스가 가능하지만, 타임스탬프 메타데이터는 상대적으로 많은 세그먼트 파일 리스트와 정보를 포함할 수 있다. 이에 따라 라이브 스트리밍을 위해 클라이언트 장치(4)가 주기적으로 메타데이터를 수신해야 하는 경우 통신망 데이터 사용량이 증가될 수 있다. 그러므로 본 발명의 실시 예에서는 시간 윈도우 구간별로 별도의 메타데이터를 제공한다. 따라서 본 발명의 실시 예에 따른 메타 데이터는 타임스탬프 메타데이터와 시간 윈도우 구간별 메타데이터의 계층화된 구조로 이루어진다.
시간 윈도우 구간별 메타데이터 생성부(23)는 시간 윈도우 구간별로 별도의 메타데이터를 생성한다.
시간 윈도우 구간별 메타데이터는 타임스탬프 메타데이터의 세그먼트 파일 리스트의 범위를 시간 윈도우 구간별로 구분하고, 시간 윈도우 구간별로 기존의 HTTP기반 스트리밍 방식에서 사용되는 메타데이터와 동일한 구조의 m3u8이나 MPD와 같은 메타데이터를 생성한다. 따라서, 클라이언트 장치(4)는 망 연동 비디오 스트림 동기화를 위한 시작 세그먼트 위치 검색을 위하여 초기에 타임스탬프 메타데이터를 한번만 수신하고, 시작 세그먼트 위치가 검색되면 이 세그먼트가 포함된 시간 윈도우 구간의 메타데이터만 수신하고 분석하여, 세그먼트 파일 업데이트에 따른 라이브 스트리밍 서비스를 제공받는다.
도 3은 본 발명의 실시 예에 따른 메타데이터의 업데이트 시간 범위를 나타낸 도이다.
본 발명의 실시 예에 따른 타임스탬프 메타데이터와 시간 윈도우 구간별 메타데이터는 도 3과 같은 업데이트 범위를 가진다. 시간 윈도우 구간별 메타데이터의 업데이트 시간 범위들이 정해지며, 타임스탬프 메타데이터의 업데이트 시간 범위는 시간 윈도우 구간별 메타데이터 업데이트 시간 범위들의 전체 범위를 포함한다.
도 4는 본 발명의 실시 예에 따른 메타데이터들의 관계를 나타낸 예시도이다.
도 4의 (a)에서와 같이, 타임스탬프 메타데이터 "timestamp.m3u8"가 일정 시간 구간 범위 내에 해당하는 세그먼트 파일 리스트들(00011.ts~00019.ts)와, 각 세그먼트 파일의 타임스탬프 정보(Timestamp11~ Timestamp19)를 제공하고, 시간 윈도우 구간별 메타데이터들이 "window_1.m3u8", "window_2.m3u8", "window_3.m3u8"d와 같이 제공된다고 가정한다. 이러한 환경에서, 망 연동 비디오 스트림 동기화를 위한, 타임스탬프 값이 예를 들어, 제1 값(Timestamp15)과 제2 값(Timestamp16) 사이에 있다고 하면, 초기 타임스탬프 메타데이터 분석 후 클라이언트 장치(4)가 스트리밍 서버(3)로 요청하는 첫 번째 세그먼트 파일은 "00015.ts"이다. 클라이언트 장치(4)는 스트리밍 서버(3)로부터 "00015.ts"의 세그먼트 파일부터 순차적으로 세그먼트 파일들을 수신하고, 수신되는 세그먼트 파일들을 처리하여 재생한다.
이후, 클라이언트 장치(4)는 "00015.ts"에 대응하는 메타데이터 즉, 세그먼트 파일 업데이트에 따른 메타데이터 "window_2.m3u8" 파일만 주기적으로 수신하고, 수신되는 "window_2.m3u8"을 토대로 해당하는 세그먼트 파일들을 제공받아 라이브 스트리밍 서비스를 사용자에 제공한다.
세그먼트 파일 업데이트에 따라 도 4의 (b)에서와 같이, 타임스탬프 메타데이터와 시간 윈도우 구간별 메타데이터들이 업데이트되는데, 클라이언트 장치(4)는 위와 같이 초기에 타임스탬프 메타데이터를 한번만 수신하고, 메타데이터 "window_2.m3u8" 파일만 주기적으로 수신하고, 수신된 메타데이터 "window_2.m3u8" 파일을 토대로 스트리밍 서버(3)로 세그먼트 파일들을 요청 및 수신하여 라이브 스트리밍 서비스를 사용자에 제공한다.
클라이언트 장치(4)가 스트리밍 서버(3)로 요청하는 첫 번째 세그먼트 파일인 "00015.ts" 파일은 방송망에서 이미 수신된 비디오 스트림 내의 미디어 데이터 일부를 포함하고 있다. 클라이언트 장치(4)는 디코딩되는 비디오 스트림을 비디오 스트림 버퍼에 일시 저장하며, 비디오 스트림 버퍼에 저장된 비디오 스트림을 토대로 방송망을 통하여 수신되는 비디오 스트림에서 중복되는 부분을 제거하고, 통신망을 통하여 수신되는 비디오 스트림과 방송망을 통하여 수신되는 비디오 스트림을 동기화시킨다.
본 발명의 실시 예에 따른 타임스탬프 메타데이터에서 각 세그먼트 파일의 타임스탬프 정보와, 각 세그먼트 파일을 포함하는 시간 윈도우 구간별 메타데이터 정보들의 표기 방법은 특정한 방식으로 한정하지는 않는다. 다만, 시간 윈도우 구간별 메타데이터는 기존의 HTTP기반 라이브 스트리밍에서 사용하는 메타데이터와 호환될 수 있다. 타임스탬프 메타데이터는 추가적인 기능 제공을 위한 표준적인 방법과 무관하게 독자적으로 자체 정의하여 사용될 수 있다.
한편, 스트리밍 서버(3)의 스트리밍부(25)는 타임스탬프 메타데이터와 시간 윈도우 구간별 메타데이터를 통신망을 통하여 클라이언트 장치(4)로 전송한다. 그리고 클라이언트 장치(4)로부터의 요청에 대응하는 세그먼트 파일들을 클라이언트 장치(4)로 전송한다. 또한, 클라이언트 장치(4)의 요청에 따라 업데이트된 세그먼트 파일 및 메타 데이터를 클라이언트 장치(4)로 전송한다.
도 5는 본 발명의 실시 예에 따른 클라이언트 장치의 구조를 나타낸 도이다.
첨부한 도 5에서와 같이, 클라이언트 장치(4)는 제1 스트림 처리부(41), 제2 스트림 처리부(42), 망전환 결정부(43), 비디오 스트림 동기화부(44), 그리고 비디오 서비스 플레이어(45)를 포함한다.
제1 스트림 처리부(41)는 방송망을 통하여 송신되는 비디오 스트림을 수신하고 처리한다. 이를 위하여, 제1 스트림 처리부(41)는 방송망을 통하여 송신되는 비디오 스트림을 수신하는 방송 수신부(411) 및 방송 수신부에 의하여 수신되는 비디오 스트림을 저장하는 제1 비디오 스트림 버퍼(412)를 포함한다.
제2 스트림 처리부(42)는 통신망을 송신되는 비디오 스트림을 수신하고 처리한다. 이를 위하여, 제2 스트림 처리부(42)는 송수신부(421), 세그먼트 파일 디코더(422), 제2 비디오 스트림 버퍼(423), 타임스탬프 메타데이터 분석부(424), 시간 윈도우 구간별 메타데이터 분석부(425)를 포함한다.
송수신부(421)는 통신망을 통하여 스트리밍 서버(3)와의 스트림 및 파일 송수신을 수행한다.
세그먼트 파일 디코더(422)는 송수신부(421)를 통하여 통신망으로부터 송신되는 세그먼트 파일들을 수신하고 디코딩한다.
제2 비디오 스트림 버퍼(423)는 세그먼트 파일 디코더에 의하여 디코딩된 비디오 스트림들을 저장한다.
타임스탬프 메타데이터 분석부(424)는 스트리밍 서버(3)로부터 제공되는 세그먼트 파일들에 대한 타임스탬프 메타데이터를 수신하고, 수신된 타임스탬프 메타데이터를 분석하여 시작 세그먼트 위치를 찾는다.
특히, 타임스탬프 메타데이터 분석부(424)는 망전환 결정부(43)가 요청한 연동 비디오 스트림 동기화를 위한 타임스탬프에 대응하는 타임스탬프 메타데이터 파일을 스트리밍 서버(3)로부터 제공받는다. 그리고, 제공받은 타임스탬프 메타데이터 파일을 분석하여 연동 비디오 스트림 동기화를 위한 타임스탬프에 해당하는 시작 세그먼트 위치를 찾는다.
시간 윈도우 구간별 메타데이터 분석부(425)는 시간 윈도우 구간별 메타데이터를 통신망을 통하여 스트리밍 서버(2)로부터 수신하고, 수신된 시간 윈도우 구간별 메타데이터를 분석하여 관련 세그먼트 파일을 스트리밍 서버(2)로 요청한다. 특히, 시간 윈도우 구간별 메타데이터 분석부(425)는 타임스탬프 메타데이터 분석부(424)에 의하여 찾아진 시작 세그먼트 위치에 대응하는 구간 즉, 시간 윈도우 구간에 해당하는 메타데이터를 주기적으로 반복 수신하여 분석하고, 이를 토대로 관련 세그먼트 파일들을 요청한다.
한편, 망전환 결정부(43)는 방송망과 통신망의 이종망 간에 연속적인 비디오 스트림을 제공하기 위하여, 방송망에서 통신망으로의 전환 또는 통신망에서 방송망으로 전환을 결정한다. 망전환 결정부(43)는 망 전환 즉, 방송망에서 통신망으로의 망 전환이 결정되면, 제1 스트림 처리부(41)에 의하여 수신된 비디오 스트림들 중에서, 망 전환이 결정될 때 마지막으로 수신한 비디오 스트림의 타임스탬프 값을 검출한다. 그리고 검출된 마지막 수신 비디오 스트림의 타임스탬프 값을 연동 비디오 스트림 동기화를 위한 타임스탬프(이하, 설명의 편의를 위하여 동기화 타임스탬프라고 명명함)로 선택한다.
망전환 결정부(43)는 동기화 타임스탬프를 제2 스트림 처리부(42)의 송수신부(421)를 통하여 통신망을 통해 스트리밍 서버(3)로 전송하면서 해당하는 타임스탬프 메타데이터 파일을 요청한다. 그리고 망전환 결정부(43)는 검출된 동기화 타임스탬프를 타임스탬프 메타데이터 분석부(424)로 제공한다.
비디오 스트림 동기화부(44)는 제1 스트림 처리부(41)에 의하여 방송망을 통하여 수신된 비디오 스트림과 제2 스트림 처리부(42)에 의하여 통신망을 통하여 수신된 비디오 스트림의 동기화를 수행하여, 방송망 또는 통신망을 통한 연속적인 비디오 스트림 수신이 가능하도록 한다. 이러한 망 연동 비디오 스트림 동기화를 위하여, 비디오 스트림 동기화부(44)는 제2 비디오 스트림 버퍼(423)에 저장되는 비디오 스트림에서, 방송망을 통하여 수신되는 비디오 스트림과 중복되는 부분을 제거하여 비디오 서비스 플레이어(45)로 전달한다.
비디오 서비스 플레이어(45)는 비디오 스트림 동기화부(44)로부터 전달되는 비디오 스트림을 재생한다.
위에 기술된 바와 같은 스트리밍 서버 및 클라이언트 장치를 통하여, 기존의 방송 시스템 변경 없이 비디오 서비스를 방송망으로 전송하면서 동시에 통신망을 통해 HTTP 기반 스트리밍 방식으로 연속적인 비디오 서비스를 제공할 수 있다. 또한, 이러한 하는 망 연동 비디오 서비스와 함께 기존 HTTP 기반의 스트리밍 서비스에 호환되는 라이브 스트리밍 서비스도 제공할 수 있다. 여기서, 시간 윈도우 구간별 메타데이터는 기존 HTTP 기반 스트리밍 방식과 호환되기 때문에, 시간 윈도우 구간별 메타데이터 수신으로 호환되는 서비스 제공이 가능하다.
다음에는 이러한 구조를 토대로, 본 발명의 실시 예에 따른 스트리밍 방법에 대하여 설명한다.
도 6은 본 발명의 실시 예에 따른 스트리밍 방법의 흐름도이다.
기존의 방송 시스템 변경 없이 비디오 서비스를 방송망으로 전송하면서 동시에 통신망을 통해 HTTP 기반 스트리밍 방식으로 연속적인 비디오 서비스를 제공한다.
이를 위하여, 도 6에서와 같이, 비디오 인코딩 장치(1)는 영상 및 소리 신호를 압축하여 비디오 서비스 스트림을 생성하고, 비디오 서비스 스트림을 방송 송신 시스템(2)으로 전달한다. 방송 송신 시스템(2)은 수신된 비디오 비디오 스트림을 방송망의 송신 시스템에 맞도록 방송 신호로 처리하여 방송망을 통하여 클라이어트 장치(4)로 전송한다(S100).
클라이언트 장치(4)는 방송망을 통하여 송신되는 방송 신호를 수신하고, 수신된 방송 신호를 처리하여 비디오 스트림을 획득하고 이를 처리하여 비디오 서비스 플레이어(45)를 통하여 재생한다(S110). 방송망을 통하여 수신된 비디오 스트림은 제1 비디오 스트림 버퍼(412)에 저장된 다음에 처리되어 재생될 수 있다.
한편, 클라이언트 장치(4)의 망전환 결정부(43)는 여러 조건을 고려하여 비디오 서비스를 제공받기 위한 망을 방송망에서 통신망으로 전환하는 것을 결정한다. 망전환이 결정되면(S120), 망전환 결정부(43)는 방송망을 통해 마지막으로 정상 수신된 비디오 스트림의 타임스탬프 값을 검출하고, 이를 연동 비디오 스트림 동기화를 위한 타임스탬프 즉, 동기화 타임스탬프로 설정한다(S130). 그리고 클라이언트 장치(4)의 망전환 결정부(43)는 동기화 타임 스탬프를 송수신부(421)를 통하여 통신망을 통해 스트리밍 서버(3)로 전송하면서 해당하는 타임스탬프 메타데이터 파일을 요청한다(S140).
스트리밍 서버(3)는 클라이언트 장치(4)로부터의 요청에 대응하는 타임스탬프 메타데이터파일을 클라이언트 장치(4)로 전송하며(S150), 특히, 동기화 타임 스탬프에 대응하는 타임스탬프 메타데이터파일을 클라이언트 장치(4)로 전송한다.
클라이언트 장치(4)는 수신되는 타임스탬프 메타데이터 파일을 분석하여 연동 비디오 스트림 동기화를 위한 타임스탬프에 해당하는 시작 세그먼트 위치를 찾는다(S160). 그리고 시작 세그먼트에 대응하는 세그먼트 파일을 스트리밍 서버(3)로 요청하여 제공받는다(S170). 이에 따라 스트리밍 서버(3)는 클라이언트 장치(4)가 요청한 시작 세그먼트에 대응하는 세그먼트 파일부터 순차적으로 클라이언트 장치(4)로 전송한다(S180). 클라이언트 장치(4)는 수신되는 세그먼트 파일들을 처리하여 해당 비디오 스트림을 제2 스트림 버퍼(423)에 저장한다. 이후, 비디오 스트림 동기화부(44)는 제1 비디오 스트림 버퍼(412)와 제2 비디오 스트림 버퍼(423)에 저장된 스트림을 토대로, 방송망을 통하여 수신되는 비디오 스트림에서 중복되는 부분을 제거하고, 통신망을 통하여 수신되는 비디오 스트림과 방송망을 통하여 수신되는 비디오 스트림을 동기화시킨다. 이후, 통신망을 통하여 수신되는 비디오 스트림 중에서 중복되는 부분이 제거된 스트림이 비디오 서비스 플레이어(45)를 통하여 재생된다(S190).
이후, 클라이언트 장치(4)는 시작 세그먼트가 포함된 시간 윈도우 구간의 메타데이터를 주기적으로 요청하고, 스트리밍 서버(3)로부터 제공되는 시간 윈도우 구간의 메타데이터를 토대로 세그먼트 파일 업데이트에 따른 라이브 스트리밍 서비스를 제공받는다(S200).
본 발명의 실시 예는 이상에서 설명한 장치 및/또는 방법을 통해서만 구현이 되는 것은 아니며, 본 발명의 실시예의 구성에 대응하는 기능을 실현하기 위한 프로그램, 그 프로그램이 기록된 기록 매체 등을 통해 구현될 수도 있으며, 이러한 구현은 앞서 설명한 실시예의 기재로부터 본 발명이 속하는 기술분야의 전문가라면 쉽게 구현할 수 있는 것이다.
이상에서 본 발명의 실시 예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.
Claims (1)
- 방송망과 통신망이 결합된 하이브리드 (hybrid) 망에서, 비디오 서비스를 제공하는 스트리밍 방법에서,
클라이언트 장치는 상기 방송망을 통하여 비디오 스트림을 수신하는 상태에서, 상기 통신망으로의 망전환이 결정되면 연동 비디오 스트림 동기화를 위한 타임 스탬프값을 결정하는 단계;
상기 결정된 타임 스탬프값을 상기 통신망을 통하여 스트리밍 서버로 전송하면서 메타데이터 파일을 요청하는 단계;
상기 스트리밍 서버로부터 상기 요청에 대응하는 타임스탬프 메타데이터 파일을 수신하고 분석하여 시작 세그먼트 위치를 찾는 단계; 및
상기 시작 세그먼트 위치를 토대로 상기 통신망을 통하여 스트리밍 서버로부터 관련 세그먼트 파일들을 수신하여 재생하는 단계
를 포함하며,
상기 클라이언트 장치는 상기 요청에 대응하는 타임스탬프 메타데이터파일을 수신한 다음에, 상기 시작 세그먼트 위치에 대응하는 시간 윈도우 구간의 메타데이터만을 주기적으로 요청하여 제공받아, 비디오 서비스를 제공하는, 스트리밍 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140183499A KR102324604B1 (ko) | 2014-12-18 | 2014-12-18 | 하이브리드망에서의 스트리밍 방법 및 그 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140183499A KR102324604B1 (ko) | 2014-12-18 | 2014-12-18 | 하이브리드망에서의 스트리밍 방법 및 그 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20160074310A true KR20160074310A (ko) | 2016-06-28 |
KR102324604B1 KR102324604B1 (ko) | 2021-11-10 |
Family
ID=56366257
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140183499A KR102324604B1 (ko) | 2014-12-18 | 2014-12-18 | 하이브리드망에서의 스트리밍 방법 및 그 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102324604B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019107595A1 (ko) * | 2017-11-29 | 2019-06-06 | 전자부품연구원 | 방송 수신기 및 이의 운용 방법 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20130058648A (ko) * | 2011-11-25 | 2013-06-04 | (주)휴맥스 | Mmt 미디어와 dash 미디어와의 연동 방법 |
-
2014
- 2014-12-18 KR KR1020140183499A patent/KR102324604B1/ko active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20130058648A (ko) * | 2011-11-25 | 2013-06-04 | (주)휴맥스 | Mmt 미디어와 dash 미디어와의 연동 방법 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019107595A1 (ko) * | 2017-11-29 | 2019-06-06 | 전자부품연구원 | 방송 수신기 및 이의 운용 방법 |
Also Published As
Publication number | Publication date |
---|---|
KR102324604B1 (ko) | 2021-11-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7280408B2 (ja) | 送信方法および受信方法 | |
US11765414B2 (en) | Transmitting method, receiving method, transmitting apparatus, and receiving apparatus | |
EP2391086B1 (en) | Method and apparatus for playing live content | |
CN110278474B (zh) | 接收方法、发送方法、接收装置及发送装置 | |
US20130346566A1 (en) | Apparatus and method of transmitting and receiving associated broadcasting contents based on heterogeneous network | |
KR20120079019A (ko) | 신호 전송 방법, 신호 송신 장치 및 신호 수신 장치 | |
KR20130005873A (ko) | 방송 시스템에서 컨텐츠 수신 방법 및 장치 | |
KR20120114016A (ko) | 사용자 컨텐츠를 외부 단말기에서 네트워크 적응적으로 스트리밍하는 방법 및 장치 | |
JP7453266B2 (ja) | 送信装置 | |
EP2891323B1 (en) | Rendering time control | |
US20140189751A1 (en) | Broadband assisted channel change | |
JP2004297628A (ja) | ストリーム切替装置およびその装置にコンテンツを提供する装置 | |
CN113077799A (zh) | 具有两个音频链路的解码器装备 | |
CN102045586A (zh) | 网络设备、信息处理装置、流切换方法和内容分送系统 | |
JPWO2017047434A1 (ja) | 送信装置、受信装置、およびデータ処理方法 | |
KR102324604B1 (ko) | 하이브리드망에서의 스트리밍 방법 및 그 장치 | |
KR102271686B1 (ko) | 이종 네트워크 기반의 멀티미디어 자원 동기화 푸시 방법 | |
JP2022507910A (ja) | タイムシフト再生 | |
KR20200053178A (ko) | 미디어 서비스 채널 전환 방법 및 장치 | |
JP2008016894A (ja) | 送信装置及び受信装置 | |
KR101780247B1 (ko) | 동적 적응 버퍼링 기반의 ott 데이터 처리 방법 | |
JP7462199B1 (ja) | 番組受信表示装置及び番組受信表示制御方法 | |
KR20090078907A (ko) | Dlna 네트워크 상에서의 방송 수신 방법 및 dlna장치 | |
JPWO2017047433A1 (ja) | 送信装置、受信装置、およびデータ処理方法 | |
JP6596363B2 (ja) | 時刻マッピング情報生成装置、同期再生システム、時刻マッピング情報生成方法及び時刻マッピング情報生成プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |