KR101336585B1 - Systme and method for providing adaptive streaming service - Google Patents
Systme and method for providing adaptive streaming service Download PDFInfo
- Publication number
- KR101336585B1 KR101336585B1 KR1020120039193A KR20120039193A KR101336585B1 KR 101336585 B1 KR101336585 B1 KR 101336585B1 KR 1020120039193 A KR1020120039193 A KR 1020120039193A KR 20120039193 A KR20120039193 A KR 20120039193A KR 101336585 B1 KR101336585 B1 KR 101336585B1
- Authority
- KR
- South Korea
- Prior art keywords
- content
- original file
- segments
- information
- conversion information
- Prior art date
Links
- 230000003044 adaptive effect Effects 0.000 title claims abstract description 70
- 238000000034 method Methods 0.000 title claims abstract description 43
- 238000006243 chemical reaction Methods 0.000 claims abstract description 86
- 230000008569 process Effects 0.000 claims description 18
- 238000012545 processing Methods 0.000 claims description 4
- 238000012544 monitoring process Methods 0.000 claims description 3
- 238000007726 management method Methods 0.000 description 30
- 239000003795 chemical substances by application Substances 0.000 description 12
- 238000010586 diagram Methods 0.000 description 4
- 238000012384 transportation and delivery Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 239000012634 fragment Substances 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
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/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/4402—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
- H04N21/440245—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display the reformatting operation being performed only on part of the stream, e.g. a region of the image or a time segment
-
- 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/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/433—Content storage operation, e.g. storage operation in response to a pause request, caching operations
-
- 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/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/442—Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
- H04N21/4424—Monitoring of the internal components or processes of the client device, e.g. CPU or memory load, processing speed, timer, counter or percentage of the hard disk space used
-
- 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/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/472—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Computer Networks & Wireless Communication (AREA)
- Information Transfer Between Computers (AREA)
Abstract
일 실시예에 따른 적응형 스트리밍 서비스를 위한 콘텐츠 생성 방법은, 콘텐츠 관리 서버로부터 적응형 스트리밍(Adaptive streaming)을 위한 콘텐츠 목록 및 상기 콘텐츠 목록에 포함된 콘텐츠의 변환 정보를 수신하는 단계; 상기 콘텐츠 목록에 기초하여, 스토리지 서버에 저장된 콘텐츠의 원본 파일을 수신하는 단계; 트랜스코더(trans coder) 및 세그먼터(segmenter)가 참조할 수 있는 와치 폴더(watch folder)에 상기 원본 파일 또는 상기 원본 파일의 TS(Transport stream) 파일을 저장하는 단계; 상기 변환 정보에 포함된 비트레이트들 별로 코딩된 콘텐츠 파일들이 생성되면, 상기 콘텐츠 파일들 각각의 TS 세그먼트들을 생성하는 단계; 및 상기 콘텐츠 목록에 대한 변환 결과를 상기 콘텐츠 관리 서버로 보고하고, 상기 TS 세그먼트들을 데이터 센터 서버로 전송하는 단계를 포함한다.According to an embodiment, there is provided a content generating method for an adaptive streaming service, the method including: receiving a content list for adaptive streaming and content conversion information of the content included in the content list from a content management server; Receiving an original file of content stored in a storage server based on the content list; Storing the original file or a transport stream (TS) file of the original file in a watch folder to which a trans coder and a segmenter can refer; Generating TS segments of each of the content files when coded content files are generated for each bitrate included in the conversion information; And reporting the conversion result of the content list to the content management server, and transmitting the TS segments to a data center server.
Description
본 발명은 적응형 스트리밍(Adaptive Streaming) 서비스를 위한 시스템에 관한 것으로서, 적응형 스트리밍 서비스를 위한 콘텐츠 생성 방법 및 장치에 관한 것이다. The present invention relates to a system for adaptive streaming service, and to a method and apparatus for generating content for adaptive streaming service.
최근에는 온라인 콘텐츠를 이용하는 사용자의 증가로 인하여 콘텐츠의 원활한 전송이 중요한 이슈가 되었고, 이에 가용한 전송 대역폭이나 사용자의 기기 성능의 변화에 따라 콘텐츠의 비트 레이트(Bit Rate)가 부드럽게 바뀌어 전송되는 적응 스트리밍(Adaptive Streaming) 기술이 제안되었다. Recently, the smooth delivery of content has become an important issue due to the increase in the number of users using the online content, and the adaptive streaming that the bit rate of the content is smoothly changed according to the available transmission bandwidth or the user's device performance is changed. (Adaptive Streaming) technology has been proposed.
도 1은 적응형 스트리밍의 개요를 설명하기 위한 도면이다. 1 is a diagram for explaining an overview of adaptive streaming.
도 1을 참조하면, 서버(110)는 비트레이트별로 인코딩된 동일한 비디오를 일정한 길이로 분할된 형태로 저장하고 있다. 이때, 일정한 길이로 분할된 형태는 조각파일(fragment or segment)을 의미한다. Referring to FIG. 1, the
수신기(120)는 가변적인 수신환경을 130단계에서 주기적으로 체크하면서 체크시점에 가장 적절한 비트레이트의 비디오를 서버(110)에 요청하여 재생할 수 있다. The
101단계 및 102단계에서, 서버(110)는 수신기(120)에게 해당 콘텐츠의 구성 정보를 메타데이터 형태로 제공할 수 있다. 이때, 콘텐츠의 구성 정보는 조각 파일의 위치, 압축률, 시간정보 등을 포함한다. In
적응형 스트리밍과 관련된 종래 기술은, 한국 공개특허 10-2012-0015254호(적응적 스트리밍 전송 방법), 한국 공개특허 10-2011-0120836호(디지털 콘텐트의 적응형 스트리밍 제어) 및 한국 공개특허 10-2011-0053178호(적응적인 스트리밍 방법 및 장치) 등이 공개되어 있다. Prior arts related to adaptive streaming include Korean Patent Publication No. 10-2012-0015254 (Adaptive Streaming Transmission Method), Korean Patent Publication No. 10-2011-0120836 (Adaptive Streaming Control of Digital Content) and Korean Patent Application Publication 10- 2011-0053178 (Adaptive streaming method and apparatus) and the like are disclosed.
이들 종래기술들은 적응형 스트리밍과 관련된 전송 기술 및 적응형 스트리밍의 제어 기술에 대해 상세히 기술하고 있다. These prior arts describe in detail transmission techniques associated with adaptive streaming and control techniques for adaptive streaming.
그러나, 종래 기술들은 적응형 스트리밍 서비스를 위한 콘텐츠의 생성 방법에 대해서는 구체적으로 제시하지 못한다. However, the prior arts do not specifically present a method of generating content for an adaptive streaming service.
또한, 종래 기술들은 적응형 스트리밍 서비스를 제공하기 위한 시스템의 효율성 및 확장성을 제공하지 못하는 문제가 있다. In addition, the prior art has a problem that does not provide the efficiency and scalability of the system for providing an adaptive streaming service.
본 발명은 콘텐츠 관리 서버, 트랜스 코더 및 데이터 센터(적응형 스트리밍 송출 시스템)과의 효과적인 연계가 가능한 콘텐츠 생성 방법 및 장치를 제공하고자 한다. An object of the present invention is to provide a method and apparatus for generating content that can be effectively linked with a content management server, a transcoder, and a data center (adaptive streaming delivery system).
또한, 본 발명은 트랜스코딩의 효율을 높일 수 있는 콘텐츠 생성 방법 및 장치를 제공하고자 한다.In addition, the present invention is to provide a method and apparatus for generating content that can increase the efficiency of transcoding.
또한, 본 발명은 적응형 스트리밍을 위한 트랜스코더 및 세그먼터의 독립적인 동작이 가능한 시스템을 통해, 시스템의 확장성을 제공하고자 한다. In addition, the present invention is to provide the scalability of the system through a system capable of independent operation of the transcoder and segmenter for adaptive streaming.
또한, 본 발명은 단계별 오류 처리를 통해 콘텐츠 생성 과정의 효율을 높일 수 있는 콘텐츠 생성 방법 및 장치를 제공하고자 한다.In addition, the present invention is to provide a content generating method and apparatus that can increase the efficiency of the content generation process through step-by-step error processing.
또한, 본 발명은 효율적인 클립 서비스의 제공이 가능한 적응형 스트리밍 서비스를 위한 시스템 및 방법을 제공하고자 한다. In addition, the present invention is to provide a system and method for an adaptive streaming service capable of providing an efficient clip service.
본 발명의 일 실시예에 따른 적응형 스트리밍 서비스를 위한 콘텐츠 생성 방법은, 콘텐츠 관리 서버로부터 적응형 스트리밍(Adaptive streaming)을 위한 콘텐츠 목록 및 상기 콘텐츠 목록에 포함된 콘텐츠의 변환 정보를 수신하는 단계; 상기 콘텐츠 목록에 기초하여, 스토리지 서버에 저장된 콘텐츠의 원본 파일을 수신하는 단계; 트랜스코더(trans coder) 및 세그먼터(segmenter)가 참조할 수 있는 와치 폴더(watch folder)에 상기 원본 파일 또는 상기 원본 파일의 TS(Transport stream) 파일을 저장하는 단계; 상기 변환 정보에 포함된 비트레이트들 별로 코딩된 콘텐츠 파일들이 생성되면, 상기 콘텐츠 파일들 각각의 TS 세그먼트들을 생성하는 단계; 및 상기 콘텐츠 목록에 대한 변환 결과를 상기 콘텐츠 관리 서버로 보고하고, 상기 TS 세그먼트들을 데이터 센터 서버로 전송하는 단계를 포함한다. Content generation method for an adaptive streaming service according to an embodiment of the present invention, receiving a content list for the adaptive streaming (Adaptive streaming) and the conversion information of the content included in the content list from the content management server; Receiving an original file of content stored in a storage server based on the content list; Storing the original file or a transport stream (TS) file of the original file in a watch folder to which a trans coder and a segmenter can refer; Generating TS segments of each of the content files when coded content files are generated for each bitrate included in the conversion information; And reporting the conversion result of the content list to the content management server, and transmitting the TS segments to a data center server.
본 발명의 일 실시예에 따른 적응형 스트리밍 서비스를 위한 콘텐츠 생성 장치는, 콘텐츠 관리 서버로부터 적응형 스트리밍(Adaptive streaming)을 위한 콘텐츠 목록 및 상기 콘텐츠 목록에 포함된 콘텐츠의 변환 정보를 수신하는 변환 정보 수신부; 상기 콘텐츠 목록에 기초하여, 스토리지 서버에 저장된 콘텐츠의 원본 파일을 수신하는 파일 수신부; 트랜스코더(trans coder) 및 세그먼터(segmenter)가 참조할 수 있는 와치 폴더(watch folder)에 상기 원본 파일 또는 상기 원본 파일의 TS(Transport stream) 파일을 저장하는 제어부; 및 상기 변환 정보에 포함된 비트레이트들 별로 코딩된 콘텐츠 파일들이 생성되면, 상기 콘텐츠 파일들 각각의 TS 세그먼트들을 생성하는 세그먼터를 포함한다. Content generation apparatus for an adaptive streaming service according to an embodiment of the present invention, the conversion information for receiving the content list for the adaptive streaming (Adaptive streaming) and the conversion information of the content included in the content list from the content management server Receiving unit; A file receiving unit receiving an original file of content stored in a storage server based on the content list; A control unit for storing the original file or a transport stream (TS) file of the original file in a watch folder to which a trans coder and a segmenter can refer; And a segmenter generating TS segments of each of the content files when coded content files are generated for each bitrate included in the conversion information.
상기 제어부는 상기 콘텐츠 목록에 대한 변환 결과를 상기 콘텐츠 관리 서버로 보고하고, 상기 TS 세그먼트들을 데이터 센터 서버로 전송한다. The controller reports a result of the conversion of the content list to the content management server, and transmits the TS segments to a data center server.
본 발명의 일 실시예에 따른 적응형 스트리밍 서비스를 위한 시스템은, 콘텐츠 관리 서버; 상기 콘텐츠 관리 서버로부터 적응형 스트리밍(Adaptive streaming)을 위한 콘텐츠 목록 및 상기 콘텐츠 목록에 포함된 콘텐츠의 변환 정보를 수신하고, 상기 변환 정보에 포함된 비트레이트들 별로 코딩된 콘텐츠 파일들이 생성되면 상기 콘텐츠 파일들 각각의 TS 세그먼트들을 생성하고, 상기 TS 세그먼트들을 데이터 센터 서버로 전송하는 콘텐츠 생성 장치; 상기 변환 정보에 포함된 비트레이트들 별로 코딩된 콘텐츠 파일들을 생성하는 트랜스 코더; 및 상기 TS 세그먼트들을 이용하여 수신기에 적응형 스트리밍 서비스를 제공하는 데이터 센터 서버를 포함한다. System for adaptive streaming service according to an embodiment of the present invention, the content management server; Receiving a content list for adaptive streaming and conversion information of the content included in the content list from the content management server, and if the content files coded for each bit rate included in the conversion information are generated, the content A content generating device for generating TS segments of each of the files and transmitting the TS segments to a data center server; A transcoder for generating coded content files for respective bitrates included in the conversion information; And a data center server providing an adaptive streaming service to a receiver using the TS segments.
본 발명은 콘텐츠 관리 서버, 트랜스 코더 및 데이터 센터(적응형 스트리밍 송출 시스템)과의 효과적인 연계가 가능하다. The present invention enables effective linkage with content management servers, transcoders and data centers (adaptive streaming delivery systems).
또한, 본 발명은 트랜스코딩의 효율을 높일 수 있으며, 적응형 스트리밍을 위한 트랜스코더 및 세그먼터의 독립적인 동작이 가능한 시스템을 통해 시스템의 확장성을 제공된다. In addition, the present invention can increase the efficiency of transcoding, and provides scalability of the system through a system capable of independent operation of the transcoder and the segmenter for adaptive streaming.
또한, 본 발명은 단계별 오류 처리를 통해 콘텐츠 생성 과정의 효율을 높일 수 있고, 효율적인 클립 서비스의 제공이 가능하다.In addition, the present invention can increase the efficiency of the content generation process through the step-by-step error processing, it is possible to provide an efficient clip service.
도 1은 적응형 스트리밍의 개요를 설명하기 위한 도면이다.
도 2는 본 발명의 일 실시예에 따른 적응형 스트리밍 서비스를 위한 시스템을 나타낸다.
도 3은 본 발명의 일 실시예에 따른 적응형 스트리밍 서비스를 위한 콘텐츠 생성 장치의 구성을 나타낸다.
도 4는 본 발명의 일 실시예에 따른 적응형 스트리밍 서비스를 위한 콘텐츠 생성 방법을 나타내는 흐름도이다.
도 5는 도 4에서 430단계의 구체적인 예를 나타내는 흐름도이다.
도 6은 본 발명의 일 실시예에 따른 콘텐츠 관리 서버와의 연동을 위한 유저 인터페이스를 나타낸다.
도 7은 도 6의 유저 인터페이스에서 제공되는 정보 표시 창의 일 예를 나타낸다.
도 8은 본 발명의 일 실시예에 따른 세그먼트를 설명하기 위한 도면이다. 1 is a diagram for explaining an overview of adaptive streaming.
2 shows a system for an adaptive streaming service according to an embodiment of the present invention.
3 illustrates a configuration of an apparatus for generating content for an adaptive streaming service according to an embodiment of the present invention.
4 is a flowchart illustrating a content generation method for an adaptive streaming service according to an embodiment of the present invention.
5 is a flowchart illustrating a specific example of
6 illustrates a user interface for interworking with a content management server according to an embodiment of the present invention.
FIG. 7 illustrates an example of an information display window provided in the user interface of FIG. 6.
8 is a diagram for explaining a segment according to one embodiment of the present invention;
이하, 본 발명의 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 2는 본 발명의 일 실시예에 따른 적응형 스트리밍 서비스를 위한 시스템을 나타낸다. 2 shows a system for an adaptive streaming service according to an embodiment of the present invention.
도 2를 참조하면, 적응형 스트리밍 서비스를 위한 시스템(200)은 콘텐츠 관리 서버(210), 콘텐츠 생성 장치(220), 스토리지 서버(230), 트랜스 코더(240), 와치 폴더(250), 데이터 센터 서버(270) 및 수신기(260)를 포함한다. Referring to FIG. 2, the
콘텐츠 관리 서버(210)는 예를 들어, VOD( Video on Demand) 서비스 시스템의 CMS(Contents Management System) 일 수 있다. 콘텐츠 관리 서버(210)는 DASH 규격의 적응형 스트리밍을 위한 모든 콘텐츠를 관리한다. 즉, 콘텐츠 관리 서버(210)는 적응형 스트리밍을 위한 콘텐츠의 위치 정보, 지원되는 규격 등의 각종 정보를 제공한다. The
콘텐츠 생성 장치(220)는 콘텐츠 관리 서버로부터 적응형 스트리밍을 위한 콘텐츠 목록 및 상기 콘텐츠 목록에 포함된 콘텐츠의 변환 정보를 수신하고, 본 발명의 실시예에 따른 동작을 수행한다. The
콘텐츠 생성 장치(220)는 크게 Agent 기능(221) 및 세그먼터 기능(223)을 수행할 수 있다. The
콘텐츠 생성 장치(220)의 구체적인 특징 및 수행 동작은 도 3 내지 도 8을 통해 상세히 설명하기로 한다. Specific features and operations of the
스토리지 서버(230)는 적응형 스트리밍의 대상이 되는 원본 파일을 저장하고 있으며, 원본 파일을 콘텐츠 생성 장치(220)로 제공한다. The
트랜스 코더(240)는 콘텐츠 생성 장치(220)로부터 제공되는 설정 정보에 따라 원본 파일을 다양한 비트레이트 별로 변환한다. 즉, 트랜스 코더(240)는 콘텐츠 관리 서버(210)로부터 제공되는 콘텐츠의 변환 정보에 포함된 비트레이트들 별로 코딩된 콘텐츠 파일들을 생성할 수 있다. The
와치 폴더(250)는 트랜스코더(trans coder) 및 세그먼터(segmenter)가 참조할 수 있는 저장소이며, 원본 파일 또는 상기 원본 파일의 TS(Transport stream) 파일을 저장할 수 있다. 이때, 원본 파일은 트랜스 코딩이 필요한 파일이고, 원본 파일의 TS(Transport stream) 파일은 TS 형태로 된 파일 또는 트랜스 코딩된 형태의 파일일 수 있다. The
또한, 와치 폴더(250)는 트랜스 코더(240)에 의해 다양한 비트레이트 별로 변환된 파일들을 저장할 수 있다. In addition, the
한편, 도 2에서 콘텐츠 생성 장치(220), 트랜스 코더(240), 와치 폴더(250)는 하나의 장치로 구성될 수 도 있으며, 각각 독립적인 장치일 수 도 있다. 즉, 특정 시스템이 콘텐츠 관리 서버(210), 스토리지 서버(230), 트랜스 코더(240), 와치 폴더(250), 데이터 센터 서버(270) 및 수신기(260)로 구성되는 경우, 콘텐츠 생성 장치(220)는 트랜스 코더(240), 콘텐츠 관리 서버(210) 및 데이터 센터 서버(270)의 효과적인 연동 또는 확장성을 보장하기 위한 어플리케이션 형태로 추가될 수 도 있다. Meanwhile, in FIG. 2, the
데이터 센터 서버(270)는 적응형 스트리밍을 직접 수신기(260)로 제공하는 서버를 의미하며, 예를 들어 IDC(internet data center) 내에 구비되는 서버일 수 있다. The
즉, 데이터 센터 서버(270)는 TS 세그먼트들을 이용하여 수신기(260)에 적응형 스트리밍 서비스를 제공할 수 있다. That is, the
데이터 센터 서버(270)는 TS 세그먼트들에 대한 메타 데이터를 이용하여 상기 원본 파일에 대한 클립 서비스(clip service)를 수신기(260)에 제공할 수 있다. 이때, 클립 서비스는 원본 파일의 일부 구간 만을 서비스하는 것을 의미한다. 예를 들어, 전체 프로그램 중 특정 코너가 클립 서비스로 제공될 수 있다.
The
도 3은 본 발명의 일 실시예에 따른 적응형 스트리밍 서비스를 위한 콘텐츠 생성 장치의 구성을 나타낸다. 3 illustrates a configuration of an apparatus for generating content for an adaptive streaming service according to an embodiment of the present invention.
도 3을 참조하면, 적응형 스트리밍 서비스를 위한 콘텐츠 생성 장치는 변환 정보 수신부(310), 원본 파일 수신부(320), 제어부(330) 및 세그먼터(340)를 포함한다. 이때, 세그먼터(340)는 독립적인 장치로 구성될 수 도 있다. 콘텐츠 생성 장치는 File 입출력 및 TCP/IP 통신 기능을 수행하는 I/O 포트(350)를 더 포함할 수 있다. Referring to FIG. 3, the content generating apparatus for the adaptive streaming service includes a
변환 정보 수신부(310)는 콘텐츠 관리 서버로부터 적응형 스트리밍(Adaptive streaming)을 위한 콘텐츠 목록 및 상기 콘텐츠 목록에 포함된 콘텐츠의 변환 정보를 수신한다. 이때, 콘텐츠 목록의 요청은 제어부(330)에 의해 수행될 수 있다. The
원본 파일 수신부(320)는 콘텐츠 목록에 기초하여, 스토리지 서버에 저장된 콘텐츠의 원본 파일을 수신한다. 이때, 원본 파일의 요청은 제어부(330)에 의해 수행될 수 있다. The original
제어부(330)는 트랜스코더(trans coder)(240) 및 세그먼터(segmenter)(340)가 참조할 수 있는 와치 폴더(watch folder)에 상기 원본 파일 또는 상기 원본 파일의 TS(Transport stream) 파일을 저장한다. The
또한, 제어부(330)는 콘텐츠 생성 장치의 전반적인 동작을 제어할 수 있으며, 도 2의 Agent 기능(221)을 수행하도록 구성된(configured) 적어도 하나의 프로세서를 포함할 수 있다. 따라서, 이하 별도의 설명이 없는 경우에도 Agent 기능(221)은 제어부(330)에 의해 수행되는 것이다. In addition, the
제어부(330)는 상기 콘텐츠 목록에 대한 변환 결과를 상기 콘텐츠 관리 서버로 보고하고, 상기 TS 세그먼트들을 데이터 센터 서버로 전송할 수 있다. 즉, 제어부(330)는 보고 및 파일 전송을 위해, I/O 포트(350)를 제어할 수 있다. The
제어부(330)는 콘텐츠 관리 서버와의 연동을 위한 유저 인터페이스를 실행하고, 유저 인터페이스를 통해 입력된 설정 정보에 따라 트랜스 코더를 제어할 수 있다. 유저 인터페이스의 구체적인 구성 예는 도 6을 통해 상세히 설명하기로 한다. The
제어부(330)는 콘텐츠 생성 과정 별 예외 처리를 통해 각 단계별로 오류를 처리함으로써, 콘텐츠 생성 과정의 효율성을 높인다. The
즉, 제어부(330)는 원본 파일이 수신되는 과정, 상기 변환 정보에 포함된 비트레이트들 별로 코딩된 콘텐츠 파일들이 생성되는 과정, 상기 콘텐츠 파일들 각각의 TS 세그먼트들을 생성하는 과정 및 상기 TS 세그먼트들을 데이터 센터 서버로 전송하는 과정 별로 오류 여부를 판단하고, 오류 발생 이전의 과정들 각각에 대한 정보를 저장하고 각 과정별로 오류를 처리할 수 있다. That is, the
예를 들어, 어느 한 과정에서 오류가 발생한 경우, 제어부(330)는 해당 오류 정보를 저장한다. 만일, 동일한 프로그램 식별자를 갖는 작업이 발생하면, 제어부(330)는 저장된 오류 정보를 참조하여 이미 성공한 단계는 무시하고, 오류가 발생한 단계부터 작업을 수행할 수 있다. For example, if an error occurs in one process, the
세그먼터(340)는 변환 정보에 포함된 비트레이트들 별로 코딩된 콘텐츠 파일들이 생성되면, 상기 콘텐츠 파일들 각각의 TS 세그먼트들을 생성한다. The
세그먼터(340)는 기 설정된 길이의 TS 세그먼트들을 생성하고, 상기 TS 세그먼트들을 포함한 콘텐츠의 구성정보를 나타내는 메타 데이터를 생성한다. 이때, TS 내의 각 프레임 위치 정보를 담고 있는 인덱싱 정보를 생성함으로써 효율적인 클립 서비스를 제공할 수 있다.The
세그먼터(340)에 의해 생성되는 세그먼트들의 구체적인 예는 도 8을 통해 설명하기로 한다.
Specific examples of the segments generated by the
도 4는 본 발명의 일 실시예에 따른 적응형 스트리밍 서비스를 위한 콘텐츠 생성 방법을 나타내는 흐름도이다. 4 is a flowchart illustrating a content generation method for an adaptive streaming service according to an embodiment of the present invention.
도 4에 도시된 방법은 도 3의 콘텐츠 생성 장치에 의해 수행될 수 있다. The method illustrated in FIG. 4 may be performed by the content generating device of FIG. 3.
도 4를 참조하면, 410단계에서 장치는 콘텐츠 관리 서버로부터 적응형 스트리밍(Adaptive streaming)을 위한 콘텐츠 목록 및 상기 콘텐츠 목록에 포함된 콘텐츠의 변환 정보를 수신한다. Referring to FIG. 4, in
이때, 410단계는, 콘텐츠 관리 서버와의 연동을 위한 유저 인터페이스를 제공하는 것, 콘텐츠 목록 및 상기 변환 정보의 요청 주소를 설정하고, 상기 콘텐츠 목록에 대한 변환 결과를 보고하기 위한 보고 주소를 설정하는 것, 및 상기 콘텐츠 목록 및 상기 변환 정보의 요청 주기를 설정하는 것을 포함할 수 있다. 즉, 제어부(330)는 도 6의 인터페이스를 통해 입력되는 정보에 따라 410 단계의 수행을 위한 정보들을 설정할 수 있다. In
이때, 변환 정보는 적응형 스트리밍(Adaptive streaming)을 위한 비트레이트들, 해상도 정보, 비디오 프레임 레이트, 또는 트랜스 코딩 필요 여부를 나타내는 정보를 포함할 수 있다. In this case, the conversion information may include bitrates for adaptive streaming, resolution information, a video frame rate, or information indicating whether transcoding is necessary.
물론, 변환 정보는 추가적인 정보를 더 포함할 수 있으며, [표 2]에 도시된 각종 정보를 더 포함할 수 있다. Of course, the conversion information may further include additional information, and may further include various information shown in [Table 2].
장치는 하기 [표 1]에 기재된 스키마를 이용하여 생성된 XML을 콘텐츠 관리 서버로부터 수신할 수 있다. 즉, 도 2의 Agent 기능(221)은 CMS에 접속하여 변환해야 하는 콘텐츠의 목록을 수신하며, UI를 통해 지정된 URL에 접속하여 리스트를 수신하는 것을 포함한다. The device may receive XML generated from the content management server using the schema described in Table 1 below. That is, the
[표 1][Table 1]
상기 [표 1]에서 XML의 각 요소들에 대한 설명은 [표 2]에 기재된 바와 같다. Description of each element of XML in [Table 1] is as described in [Table 2].
[표 2][Table 2]
한편, 도 2의 Agent 기능(221)은 서버에서 전송된 XML을 파싱하여 변환에 필요한 정보를 생성하고 실제 변환에 필요한 일련의 과정을 수행하는 것을 포함한다. Agent 기능(221)이 실행되면, 사용자가 지정한 주기로 타이머(도시되지 않음)가 구동되고, 제어부(330)는 서버에 리스트를 요청할 수 있다. Meanwhile, the
420단계에서 장치는 스토리지 서버로부터 콘텐츠의 원본 파일을 수신한다. 예를 들어, 특정 비트레이트로 트랜스코딩하도록 representation이 설정된 경우, 장치는 로컬 시스템 혹은 subnet 네트워크 내 지정된 폴더에서 원본 미디어 파일을 트랜스코딩을 위해 설정된 와치폴더로 복사할 수 있다. 또한, 또한 트랜스코딩 항목이 bypass하도록 설정되어 있는 경우는 세그멘테이션 단계를 위해 설정된 와치폴더로 원본 미디어 파일을 복사할 수 있다. 이때, "representation"은 몇 가지 종류의 적응형 스트리밍이 수행되는 지를 나타내는 지시자를 의미한다. 예를 들어, 도 7에서 참조부호 710을 참조하면, 해당 콘텐츠의 representation의 개수는 3개이고, 1번 representation은 트랜스 코딩이 필요 없음을 나타낸다. 430단계에서 장치는, 트랜스코더(trans coder) 또는 세그먼터(segmenter)가 참조할 수 있는 와치 폴더(watch folder)에 상기 원본 파일 또는 상기 원본 파일의 트랜스코딩된 파일을 저장한다. In
이때, 트랜스코더는 와치 폴더를 주기적으로 감시함으로써, 트랜스 코딩을 위한 원본 파일의 존재 유무를 판단할 수 있다. At this time, the transcoder periodically monitors the watch folder to determine whether there is an original file for transcoding.
430단계는 트랜스코딩의 필요 여부에 따라 도 5에 도시된 과정을 포함할 수 있다.
440단계에서 장치는, 변환 정보에 포함된 비트레이트들 별로 코딩된 콘텐츠 파일들이 생성되면, 상기 콘텐츠 파일들 각각의 TS 세그먼트들을 생성한다. 예를 들어, 도 3의 제어부(330)는 와치 폴더를 주기적으로 감시함으로써 트랜스 코더에 의해 representation별 트랜스 코딩이 완료되었음을 인식할 수 있다. 경우에 따라서, 트랜스 코딩은 수십분 이상 소요될 수 있기 때문에, 제어부(330)는 와치 폴더의 감시 기능을 통해 효율적인 작업 관리를 수행할 수 있다. In
최종적으로 적응적 스트리밍 서비스를 위한 콘텐츠 생성이 완료되면, 장치는 이를 콘텐츠 관리 서버로 보고하고, 생성된 콘텐츠를 데이터 센서 서버에 업로드할 수 있다. Finally, when content generation for the adaptive streaming service is completed, the device may report it to the content management server and upload the generated content to the data sensor server.
즉, 450단계에서 장치는 콘텐츠 목록에 대한 변환 결과를 상기 콘텐츠 관리 서버로 보고하고, 상기 TS 세그먼트들을 데이터 센터 서버로 전송한다. That is, in
예를 들어, 도 2의 Agent 기능(221)은 요청된 리스트의 모든 작업이 완료되면 program id별로 변환 결과를 생성하고, HTTP Post 방식으로 변환 결과를 CMS에 보고할 수 있다. 따라서, Agent 기능(221)을 통해 데이터 관리 서버와의 효과적인 연동이 가능하다. For example, the
이때, [표 3]은 보고를 위한 스키마의 예를 나타낸다. In this case, [Table 3] shows an example of a schema for reporting.
[표 3][Table 3]
[표 3]에서, XML의 각 요소들에 대한 설명은 [표 4]에 기재된 바와 같다. In [Table 3], the description of each element of XML is as described in [Table 4].
[표 4][Table 4]
한편, 도 2의 Agent 기능(221)은 변환이 완료된 program id별 결과 파일들을 CustomActionScript값을 이용하여 지정된 위치에 복사를 하거나 IDC와 같은 외부 망의 FTP 서버로 전송하는 것을 포함할 수 있다.
Meanwhile, the
도 5는 도 4에서 430단계의 구체적인 예를 나타내는 흐름도이다. 5 is a flowchart illustrating a specific example of
도 5를 참조하면, 531단계에서 장치는 변환 정보를 참조하여 상기 원본 파일에 대한 트랜스코딩 필요 여부를 판단한다. 원본 파일의 트랜스코딩 필요여부는 콘텐츠 관리 서버로부터 제공될 수 도 있고, 제어부(330)에 의해 판단될 수 도 있다. 예를 들어, 스토리지 서버에서 제공되는 원본 파일이 비트레이트 별로 코딩된 파일인 경우 제어부(330)는 트랜스 코딩이 필요 없는 것으로 판단할 수 있다. 또한, 트랜스 코딩의 필요 여부는 사용자에 의해 입력된 정보에 기초하여 판단될 수 도 있다. 즉, 사용자의 설정에 따라 representation이 추가될 수 있고, 추가된 representation에 해당하는 파일이 없는 경우, 제어부(330)는 트랜스 코딩이 필요한 것으로 판단할 수 있다. Referring to FIG. 5, in
트랜스 코딩이 필요한 경우, 533 단계에서 장치는 상기 원본 파일을 트랜스코더용 와치 폴더(watch folder)에 저장하고, 535단계에서 상기 트랜스코딩의 설정 정보를 상기 트랜스코더로 제공할 수 있다. 이때, 설정 정보는 적응형 스트리밍 서비스를 위한 변환 정보이다. 트랜스 코딩이 필요 없는 경우 장치는 537 단계에서 원본 파일을 세그먼터용 와치 폴더에 저장한다. 도 3의 세그먼터(340)는 와치 파일을 주기적으로 감시함으로써, 세그멘테이션의 수행이 필요한 지 여부를 감지할 수 있다.
If transcoding is required, the device may store the original file in a watch folder for a transcoder in
도 6은 본 발명의 일 실시예에 따른 콘텐츠 관리 서버와의 연동을 위한 유저 인터페이스를 나타낸다. 6 illustrates a user interface for interworking with a content management server according to an embodiment of the present invention.
도 6에 도시된 유저 인터페이스(600)는 Agent 기능(221)을 설정하기 위해 사용자에게 제공될 수 있다. 따라서, 유저 인터페이스(600)를 통해 입력된 정보에 따라서 제어부(330)는 Agent 기능(221)을 수행할 수 있다. The
유저 인터페이스(600)는 접속 정보 패널(610), 제어 패널(620), 변환 정보 표시 패널(630), MPD(Media Presentatin Description) 정보 설정 패널(640), 왓치 폴더 설정 패널(650) 및 세그먼트 정보 설정 패널(660)을 포함한다. The
접속 정보 패널(610)은 콘텐츠 목록 및 상기 변환 정보의 요청 주소를 설정하고, 상기 콘텐츠 목록에 대한 변환 결과를 보고하기 위한 보고 주소를 설정하고, 상기 콘텐츠 목록 및 상기 변환 정보의 요청 주기를 설정하는 패널이다. The
제어 패널(620)은 Agent 기능(221)의 시작, 정지 등의 조작을 위한 패널이다. The
변환 정보 표시 패널(630)은 트랜스 코딩의 진행 상태나 변환 결과를 표시하는 창(633) 및 콘텐츠 관리 서버에서 제공되는 변환 정보들을 표시하거나 사용자에 의해 변환 정보를 입력할 수 있는 창(631)을 포함할 수 있다. The conversion
MPD(Media Presentation Description) 정보 설정 패널(640)은 각종 메타데이터를 기록할 수 있는 패널이다. 적응형 스트리밍 서비스를 이용하는 수신기는 메타데이터를 보고 자신의 통신환경이나 하드웨어 사양 등에 따라 어떤 버전의 representation을 선택할 지 결정할 수 있다. The MPD (Media Presentation Description)
왓치 폴더 설정 패널(650)은 와치 폴더의 설정(즉, 저장 경로)이 가능한 창을 제공한다. The watch
이때, 와치 폴더는 상기 트랜스코더에서 상기 원본 파일의 존재 유무를 감시하기 위한 제1 와치 폴더(651) 및 상기 트랜스코더에서 변환된 결과 파일을 저장하는 제2 와치 폴더(653)를 포함할 수 있다. 제2 와치 폴더는 도 3의 세그먼터(340)에 의해 주기적으로 감시될 수 있다. 따라서, 도 6에서 653은 "Segmenter"라 표시되어 있다. 이때, 제어부(330)는 제2 와치 폴더(653)를 주기적으로 감시하여 트랜스코딩의 완료 여부를 판단할 수 있다. In this case, the watch folder may include a
세그먼트 정보 설정 패널(660)는 TS 세그먼트들의 생성 정보를 설정하는 창을 제공한다. 즉, 세그먼터(340)는 세그먼트 정보 설정 패널(660)에 입력된 정보에 따라 TS 세그먼트를 생성할 수 있다. 사용자에게 segmentation이 된 임시 파일을 저장하기 위한 폴더를 지정하도록 하여, 예상치 못한 오류가 발생시에 수동으로 변환된 결과를 관리할 수 있는 방안이 제공된다. 또한 세그먼트를 생성하는 프로세스를 소켓을 이용하여 구동하도록 하는 옵션이 제공될 수 있다.
The segment
한편, 유저 인터페이스(600)는, 상기 변환 정보와 기 저장된 설정 정보가 상이하면, 트랜스코더의 설정 변경을 위한 정보 표시 창(700)을 제공할 수 있다. On the other hand, if the conversion information and the previously stored setting information is different, the
도 7은 도 6의 유저 인터페이스에서 제공되는 정보 표시 창의 일 예를 나타낸다. FIG. 7 illustrates an example of an information display window provided in the user interface of FIG. 6.
도 7은 트랜스코더의 설정 변경을 위한 정보 표시 창(700)이 예를 나타낸다. 만일, 사용자에 의해 입력된 설정 정보와 변환 정보에 포함된 트랜스 코딩 설정 정보가 상이한 경우, 정보 표시 창(700)이 표시될 수 있다. 일반적으로 상기 변환정보는 한번 결정하면 서비스 정책상 바뀌지 않는 경우가 많으므로 트랜스코더 설정을 매번 다시 하는 것이 필요 없다. 그러나 서비스 정책 변경으로 이 값이 바뀌게 되면 장치는 기 저장된 설정 정보와 다르다는 것을 알려서 트랜스코더를 재설정하게 한다.
7 shows an example of an
도 7을 참조하면, MPD를 위한 Representation의 수는 3개이며, 1M bps와 700K bps를 위한 콘텐츠는 트랜스코더를 통하여 변환해야 한다는 것을 표시한 예(710)이다. 710과 같이 표시된 정보를 통해 사용자는 트랜스코더의 설정을 수정하여 1M와 700K의 콘텐츠를 생성할 수 있다.
Referring to FIG. 7, the number of Representations for MPD is three, and an example 710 indicating that content for 1M bps and 700K bps should be converted through a transcoder is shown. The information displayed as 710 allows the user to modify the transcoder's settings to create 1M and 700K content.
도 8은 본 발명의 일 실시예에 따른 세그먼트를 설명하기 위한 도면이다.8 is a diagram for explaining a segment according to one embodiment of the present invention;
MPEG DASH 규격에서 정의하고 있는 전송 형식(Delivery Format)은 ISO 기반의 미디어 파일 형식과 MPEG-2 Transport Stream 규격의 형식이 있으며, MPEG-2 TS 형식의 콘텐츠를 이용하여 서비스를 제공하는 예를 중심으로 설명한다. The delivery format defined in the MPEG DASH standard includes the ISO-based media file format and the MPEG-2 Transport Stream standard, and is mainly focused on the case of providing services using the contents of the MPEG-2 TS format. Explain.
세그먼터(340)는 프로세스를 직접 호출하여 구동하거나, 소켓을 이용한 독립적인 프로세스로 운용될 수 있다. 따라서 다중 비트율의 인코더와의 연동 및 향후 확장이 가능하다. The
세그먼터(340)는 기본적으로 MPEG-2 TS파일을 입력 받아 initialization segment(810)와 주어진 길이로 나누어진 segment 파일(820, 830, 840) 그리고 콘텐츠 구성정보를 나타내는 메타데이터를 생성할 수 있다. 또한 Clip MPD를 위한 인덱스 정보를 생성할 수 있다.The
각 세그먼트는 Random access가 가능하도록 비디오 기준으로 I 프레임으로 시작이 된다. 그리고, 단말에서 Clip MPD를 이용한 재생을 시도할 때 필요한 초기 정보인 PAT(Program Association Table)와 PMT(Program Map Table) 패킷만을 포함하고 있는 Initialization segment를 생성할 수 있다. Clip MPD는 인덱스 정보를 활용하여 Clip 서비스를 위한 구간정보를 포함할 수 있다. 인덱스 정보는 Index segment 형태로 단말에 전송될 수 있는데, 이 경우 Clip MPD는 시간단위로 구간정보를 기술할 수 있다. Clip MPD를 활용하여 일반 MPD보다 더 정확한 구간재생을 할 수 있다. Each segment starts with an I frame on a video basis for random access. In addition, an initialization segment including only PAT (Program Association Table) and PMT (Program Map Table) packets, which are initial information required when the UE attempts to play using the Clip MPD, may be generated. The Clip MPD may include section information for a Clip service using index information. The index information may be transmitted to the terminal in the form of an index segment. In this case, the Clip MPD may describe section information in units of time. Clip MPD can be used for more accurate section playback than general MPD.
세그먼터(340)는 TCP/IP 소켓을 이용하여 XML을 전송함으로써 콘텐츠 변환 및 변환 상태 조회 등을 수행할 수 있다. 이때, 전송되는 XML의 예는 [표 5]와 같이, 각 요소에 대한 설명은 [표 6]에 기재된 바와 같다. The
[표 5][Table 5]
[표 6]TABLE 6
본 발명의 실시 예에 따른 방법들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. The methods according to embodiments of the present invention may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions recorded on the medium may be those specially designed and constructed for the present invention or may be available to those skilled in the art of computer software.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.As described above, the present invention has been described by way of limited embodiments and drawings, but the present invention is not limited to the above embodiments, and those skilled in the art to which the present invention pertains various modifications and variations from such descriptions. This is possible.
그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.Therefore, the scope of the present invention should not be limited to the described embodiments, but should be determined by the equivalents of the claims, as well as the claims.
Claims (12)
상기 콘텐츠 목록에 기초하여, 스토리지 서버에 저장된 콘텐츠의 원본 파일을 수신하는 단계;
트랜스코더(trans coder) 및 세그먼터(segmenter)가 참조할 수 있는 와치 폴더(watch folder)에 상기 원본 파일 또는 상기 원본 파일의 TS(Transport stream) 파일을 저장하는 단계;
상기 변환 정보에 포함된 비트레이트들 별로 코딩된 콘텐츠 파일들이 생성되면, 상기 콘텐츠 파일들 각각의 TS 세그먼트들을 생성하는 단계; 및
상기 콘텐츠 목록에 대한 변환 결과를 상기 콘텐츠 관리 서버로 보고하고, 상기 TS 세그먼트들을 데이터 센터 서버로 전송하는 단계를 포함하고,
상기 콘텐츠 목록 및 상기 콘텐츠 목록에 포함된 콘텐츠의 변환 정보를 수신하는 단계는,
상기 콘텐츠 관리 서버와의 연동을 위한 유저 인터페이스를 제공하는 단계;
상기 콘텐츠 목록 및 상기 변환 정보의 요청 주소를 설정하고, 상기 콘텐츠 목록에 대한 변환 결과를 보고하기 위한 보고 주소를 설정하는 단계; 및
상기 콘텐츠 목록 및 상기 변환 정보의 요청 주기를 설정하는 단계를 포함하는,
적응형 스트리밍 서비스를 위한 콘텐츠 생성 방법.Receiving a content list for adaptive streaming and content conversion information of the content included in the content list from a content management server;
Receiving an original file of content stored in a storage server based on the content list;
Storing the original file or a transport stream (TS) file of the original file in a watch folder to which a trans coder and a segmenter can refer;
Generating TS segments of each of the content files when coded content files are generated for each bitrate included in the conversion information; And
Reporting the conversion result of the content list to the content management server, and transmitting the TS segments to a data center server;
Receiving the content list and the conversion information of the content included in the content list,
Providing a user interface for interworking with the content management server;
Setting a request address of the content list and the conversion information, and setting a report address for reporting a conversion result for the content list; And
Setting a request period of the content list and the conversion information;
Content generation method for adaptive streaming service.
상기 콘텐츠 목록에 기초하여, 스토리지 서버에 저장된 콘텐츠의 원본 파일을 수신하는 단계;
트랜스코더(trans coder) 및 세그먼터(segmenter)가 참조할 수 있는 와치 폴더(watch folder)에 상기 원본 파일 또는 상기 원본 파일의 TS(Transport stream) 파일을 저장하는 단계;
상기 변환 정보에 포함된 비트레이트들 별로 코딩된 콘텐츠 파일들이 생성되면, 상기 콘텐츠 파일들 각각의 TS 세그먼트들을 생성하는 단계; 및
상기 콘텐츠 목록에 대한 변환 결과를 상기 콘텐츠 관리 서버로 보고하고, 상기 TS 세그먼트들을 데이터 센터 서버로 전송하는 단계를 포함하고,
상기 원본 파일 또는 상기 원본 파일의 TS(Transport stream) 파일을 저장하는 단계는,
상기 변환 정보를 참조하여 상기 원본 파일에 대한 트랜스코딩 필요 여부를 판단하는 단계;
상기 원본 파일에 대한 트랜스코딩 트랜스코딩이 필요한 경우 상기 원본 파일을 트랜스코더용 와치 폴더(watch folder)에 저장하고, 상기 트랜스코딩의 설정 정보를 상기 트랜스코더로 제공하는 단계; 및
트랜스코딩이 필요 없는 경우 상기 원본 파일의 TS(Transport stream) 파일을 세그먼터용 와치 폴더에 저장하는 단계를 포함하는,
적응형 스트리밍 서비스를 위한 콘텐츠 생성 방법.Receiving a content list for adaptive streaming and content conversion information of the content included in the content list from a content management server;
Receiving an original file of content stored in a storage server based on the content list;
Storing the original file or a transport stream (TS) file of the original file in a watch folder to which a trans coder and a segmenter can refer;
Generating TS segments of each of the content files when coded content files are generated for each bitrate included in the conversion information; And
Reporting the conversion result of the content list to the content management server, and transmitting the TS segments to a data center server;
The storing of the original file or a TS file of the original file may include:
Determining whether transcoding of the original file is necessary with reference to the conversion information;
If transcoding of the original file is necessary, storing the original file in a watch folder for a transcoder and providing setting information of the transcoding to the transcoder; And
If the transcoding is not required, including the step of storing a transport stream (TS) file of the original file in the watch folder for the segmenter,
Content generation method for adaptive streaming service.
상기 콘텐츠 목록에 기초하여, 스토리지 서버에 저장된 콘텐츠의 원본 파일을 수신하는 단계;
트랜스코더(trans coder) 및 세그먼터(segmenter)가 참조할 수 있는 와치 폴더(watch folder)에 상기 원본 파일 또는 상기 원본 파일의 TS(Transport stream) 파일을 저장하는 단계;
상기 변환 정보에 포함된 비트레이트들 별로 코딩된 콘텐츠 파일들이 생성되면, 상기 콘텐츠 파일들 각각의 TS 세그먼트들을 생성하는 단계; 및
상기 콘텐츠 목록에 대한 변환 결과를 상기 콘텐츠 관리 서버로 보고하고, 상기 TS 세그먼트들을 데이터 센터 서버로 전송하는 단계를 포함하고,
상기 콘텐츠 파일들 각각의 TS 세그먼트들을 생성하는 단계는,
기 설정된 길이의 TS 세그먼트들을 생성하는 단계; 및
상기 TS 세그먼트들을 포함하는 콘텐츠의 구성정보를 나타내는 메타 데이터를 생성하는 단계를 포함하고,
상기 메타 데이터는 인덱싱 정보를 활용하여 클립(clip) 서비스를 제공하기 위한 구간 정보를 포함하는,
적응형 스트리밍 서비스를 위한 콘텐츠 생성 방법.Receiving a content list for adaptive streaming and content conversion information of the content included in the content list from a content management server;
Receiving an original file of content stored in a storage server based on the content list;
Storing the original file or a transport stream (TS) file of the original file in a watch folder to which a trans coder and a segmenter can refer;
Generating TS segments of each of the content files when coded content files are generated for each bitrate included in the conversion information; And
Reporting the conversion result of the content list to the content management server, and transmitting the TS segments to a data center server;
Generating TS segments of each of the content files includes:
Generating TS segments of a preset length; And
Generating metadata representing configuration information of content including the TS segments;
The metadata includes section information for providing a clip service by using indexing information.
Content generation method for adaptive streaming service.
상기 변환 정보는,
적응형 스트리밍(Adaptive streaming)을 위한 비트레이트들, 해상도 정보, 비디오 프레임 레이트, 또는 트랜스 코딩 필요 여부를 나타내는 정보를 포함하는,
적응형 스트리밍 서비스를 위한 콘텐츠 생성 방법.5. The method of claim 4,
The conversion information,
Including bitrates for adaptive streaming, resolution information, video frame rate, or information indicating whether transcoding is needed,
Content generation method for adaptive streaming service.
상기 콘텐츠 목록에 기초하여, 스토리지 서버에 저장된 콘텐츠의 원본 파일을 수신하는 파일 수신부;
트랜스코더(trans coder) 및 세그먼터(segmenter)가 참조할 수 있는 와치 폴더(watch folder)에 상기 원본 파일 또는 상기 원본 파일의 TS(Transport stream) 파일을 저장하는 제어부; 및
상기 변환 정보에 포함된 비트레이트들 별로 코딩된 콘텐츠 파일들이 생성되면, 상기 콘텐츠 파일들 각각의 TS 세그먼트들을 생성하는 세그먼터를 포함하고,
상기 제어부는 상기 콘텐츠 목록에 대한 변환 결과를 상기 콘텐츠 관리 서버로 보고하고, 상기 TS 세그먼트들을 데이터 센터 서버로 전송하고,
상기 제어부는 상기 콘텐츠 관리 서버와의 연동을 위한 유저 인터페이스를 실행하고,
상기 유저 인터페이스는,
상기 콘텐츠 목록 및 상기 변환 정보의 요청 주소를 설정하고, 상기 콘텐츠 목록에 대한 변환 결과를 보고하기 위한 보고 주소를 설정하고, 상기 콘텐츠 목록 및 상기 변환 정보의 요청 주기를 설정하는 접속 정보 패널;
상기 와치 폴더의 설정이 가능한 왓치 폴더 설정 패널;
상기 변환 정보 및 트랜스코딩 진행 상태를 표시하는 변환 정보 표시 패널; 및
상기 TS 세그먼트들의 생성 정보를 설정하는 세그먼트 정보 설정 패널을 포함하는,
적응형 스트리밍 서비스를 위한 콘텐츠 생성 장치.A conversion information receiver configured to receive a content list for adaptive streaming and content conversion information of the content included in the content list from a content management server;
A file receiving unit receiving an original file of content stored in a storage server based on the content list;
A control unit for storing the original file or a transport stream (TS) file of the original file in a watch folder to which a trans coder and a segmenter can refer; And
When the coded content files are generated for each of the bitrates included in the conversion information, a segmenter for generating TS segments of each of the content files is included.
The control unit reports the conversion result of the content list to the content management server, transmits the TS segments to a data center server,
The controller executes a user interface for interworking with the content management server,
The user interface includes:
A connection information panel for setting a request address of the content list and the conversion information, a report address for reporting a conversion result for the content list, and setting a request period of the content list and the conversion information;
A watch folder setting panel capable of setting the watch folder;
A conversion information display panel displaying the conversion information and the transcoding progress state; And
A segment information setting panel for setting generation information of the TS segments;
Content generation device for adaptive streaming service.
상기 유저 인터페이스는,
상기 변환 정보와 기 저장된 설정 정보가 상이하면, 트랜스코더의 설정 변경을 위한 정보 표시 창을 제공하는,
적응형 스트리밍 서비스를 위한 콘텐츠 생성 장치.The method of claim 7, wherein
The user interface includes:
If the conversion information and the previously stored setting information is different, providing an information display window for changing the setting of the transcoder,
Content generation device for adaptive streaming service.
상기 콘텐츠 목록에 기초하여, 스토리지 서버에 저장된 콘텐츠의 원본 파일을 수신하는 파일 수신부;
트랜스코더(trans coder) 및 세그먼터(segmenter)가 참조할 수 있는 와치 폴더(watch folder)에 상기 원본 파일 또는 상기 원본 파일의 TS(Transport stream) 파일을 저장하는 제어부; 및
상기 변환 정보에 포함된 비트레이트들 별로 코딩된 콘텐츠 파일들이 생성되면, 상기 콘텐츠 파일들 각각의 TS 세그먼트들을 생성하는 세그먼터를 포함하고,
상기 제어부는 상기 콘텐츠 목록에 대한 변환 결과를 상기 콘텐츠 관리 서버로 보고하고, 상기 TS 세그먼트들을 데이터 센터 서버로 전송하고,
상기 와치 폴더는 상기 트랜스코더에서 상기 원본 파일의 존재 유무를 감시하기 위한 제1 와치 폴더 및 상기 트랜스코더에서 변환된 결과 파일을 저장하는 제2 와치 폴더를 포함하고,
상기 제어부는 상기 제2 와치 폴더를 주기적으로 감시하여 트랜스코딩의 완료 여부를 판단하는,
적응형 스트리밍 서비스를 위한 콘텐츠 생성 장치.A conversion information receiver configured to receive a content list for adaptive streaming and content conversion information of the content included in the content list from a content management server;
A file receiving unit receiving an original file of content stored in a storage server based on the content list;
A control unit for storing the original file or a transport stream (TS) file of the original file in a watch folder to which a trans coder and a segmenter can refer; And
When the coded content files are generated for each of the bitrates included in the conversion information, a segmenter for generating TS segments of each of the content files is included.
The control unit reports the conversion result of the content list to the content management server, transmits the TS segments to a data center server,
The watch folder includes a first watch folder for monitoring the existence of the original file in the transcoder and a second watch folder for storing the result file converted by the transcoder,
The controller periodically monitors the second watch folder to determine whether transcoding is completed.
Content generation device for adaptive streaming service.
상기 콘텐츠 목록에 기초하여, 스토리지 서버에 저장된 콘텐츠의 원본 파일을 수신하는 파일 수신부;
트랜스코더(trans coder) 및 세그먼터(segmenter)가 참조할 수 있는 와치 폴더(watch folder)에 상기 원본 파일 또는 상기 원본 파일의 TS(Transport stream) 파일을 저장하는 제어부; 및
상기 변환 정보에 포함된 비트레이트들 별로 코딩된 콘텐츠 파일들이 생성되면, 상기 콘텐츠 파일들 각각의 TS 세그먼트들을 생성하는 세그먼터를 포함하고,
상기 제어부는 상기 콘텐츠 목록에 대한 변환 결과를 상기 콘텐츠 관리 서버로 보고하고, 상기 TS 세그먼트들을 데이터 센터 서버로 전송하고,
상기 제어부는,
상기 원본 파일이 수신되는 과정, 상기 변환 정보에 포함된 비트레이트들 별로 코딩된 콘텐츠 파일들이 생성되는 과정, 상기 콘텐츠 파일들 각각의 TS 세그먼트들을 생성하는 과정 및 상기 TS 세그먼트들을 데이터 센터 서버로 전송하는 과정 별로 오류 여부를 판단하고, 오류 발생 이전의 과정들 각각에 대한 정보를 저장하고 각 과정별로 오류를 처리하는,
적응형 스트리밍 서비스를 위한 콘텐츠 생성 장치.A conversion information receiver configured to receive a content list for adaptive streaming and content conversion information of the content included in the content list from a content management server;
A file receiving unit receiving an original file of content stored in a storage server based on the content list;
A control unit for storing the original file or a transport stream (TS) file of the original file in a watch folder to which a trans coder and a segmenter can refer; And
When the coded content files are generated for each of the bitrates included in the conversion information, a segmenter for generating TS segments of each of the content files is included.
The control unit reports the conversion result of the content list to the content management server, transmits the TS segments to a data center server,
The control unit,
Receiving the original file, generating coded content files for each bitrate included in the conversion information, generating TS segments of each of the content files, and transmitting the TS segments to a data center server Determining whether there is an error for each process, storing information about each process before the error occurred and processing the error for each process,
Content generation device for adaptive streaming service.
상기 콘텐츠 관리 서버로부터 적응형 스트리밍(Adaptive streaming)을 위한 콘텐츠 목록 및 상기 콘텐츠 목록에 포함된 콘텐츠의 변환 정보를 수신하고, 상기 변환 정보에 포함된 비트레이트들 별로 코딩된 콘텐츠 파일들이 생성되면 상기 콘텐츠 파일들 각각의 TS 세그먼트들을 생성하고, 상기 TS 세그먼트들을 데이터 센터 서버로 전송하는 콘텐츠 생성 장치;
상기 변환 정보에 포함된 비트레이트들 별로 코딩된 콘텐츠 파일들을 생성하는 트랜스 코더; 및
상기 TS 세그먼트들을 이용하여 수신기에 적응형 스트리밍 서비스를 제공하는 데이터 센터 서버를 포함하고,
상기 데이터 센터 서버는,
상기 TS 세그먼트들에 대한 메타 데이터를 이용하여 원본 파일에 대한 클립 서비스 -여기서, 상기 클립 서비스는 상기 원본 파일의 일부 구간 만을 서비스하는 것임 - 를 상기 수신기에 제공하는,
적응형 스트리밍 서비스를 위한 시스템.A content management server;
Receiving a content list for adaptive streaming and conversion information of the content included in the content list from the content management server, and if the content files coded for each bit rate included in the conversion information are generated, the content A content generating device for generating TS segments of each of the files and transmitting the TS segments to a data center server;
A transcoder for generating coded content files for respective bitrates included in the conversion information; And
A data center server providing an adaptive streaming service to a receiver using the TS segments;
The data center server,
Providing the receiver with a clip service for the original file using the metadata for the TS segments, wherein the clip service serves only a part of the original file.
System for Adaptive Streaming Service.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120039193A KR101336585B1 (en) | 2012-04-16 | 2012-04-16 | Systme and method for providing adaptive streaming service |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120039193A KR101336585B1 (en) | 2012-04-16 | 2012-04-16 | Systme and method for providing adaptive streaming service |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20130116630A KR20130116630A (en) | 2013-10-24 |
KR101336585B1 true KR101336585B1 (en) | 2013-12-05 |
Family
ID=49635658
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020120039193A KR101336585B1 (en) | 2012-04-16 | 2012-04-16 | Systme and method for providing adaptive streaming service |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101336585B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101581947B1 (en) | 2014-07-17 | 2015-12-31 | 주식회사 케이티 | System and method for selectively transcoding |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100735274B1 (en) * | 2004-11-18 | 2007-07-03 | 삼성전자주식회사 | Apparatus and Method for Transcoding of Distributed Multimedia transmission Network with Transcoder |
KR20090008016A (en) * | 2007-07-16 | 2009-01-21 | 엠비엔테크(주) | System for integrated management of multimedia contents |
JP4622121B2 (en) * | 2000-03-13 | 2011-02-02 | ソニー株式会社 | Data conversion apparatus and method, and encoding apparatus and method |
KR20110053178A (en) * | 2009-11-13 | 2011-05-19 | 삼성전자주식회사 | Method and apparatus for adaptive streaming |
-
2012
- 2012-04-16 KR KR1020120039193A patent/KR101336585B1/en active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4622121B2 (en) * | 2000-03-13 | 2011-02-02 | ソニー株式会社 | Data conversion apparatus and method, and encoding apparatus and method |
KR100735274B1 (en) * | 2004-11-18 | 2007-07-03 | 삼성전자주식회사 | Apparatus and Method for Transcoding of Distributed Multimedia transmission Network with Transcoder |
KR20090008016A (en) * | 2007-07-16 | 2009-01-21 | 엠비엔테크(주) | System for integrated management of multimedia contents |
KR20110053178A (en) * | 2009-11-13 | 2011-05-19 | 삼성전자주식회사 | Method and apparatus for adaptive streaming |
Also Published As
Publication number | Publication date |
---|---|
KR20130116630A (en) | 2013-10-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9271003B2 (en) | Real-time audio or video transcoding | |
US10999340B2 (en) | Cloud-based video delivery | |
US9351020B2 (en) | On the fly transcoding of video on demand content for adaptive streaming | |
TWI623226B (en) | Directory limit based system and method for storing media segments | |
CN109842613B (en) | Method and apparatus for providing and receiving media data and storage medium | |
US20140359679A1 (en) | Content streaming with client device trick play index | |
CN102473159A (en) | System and method for media content streaming | |
KR101569510B1 (en) | Method for adaptive real-time transcoding, and streaming server thereof | |
US8656443B2 (en) | Method and system for providing dynamic time slice encoding for complete internet anywhere | |
WO2014193996A2 (en) | Network video streaming with trick play based on separate trick play files | |
CN104349177A (en) | Method for turning to play multimedia file under desktop cloud, virtual machine and system | |
US20140189141A1 (en) | Real-time content transcoding method, apparatus and system, and real-time content receiving method and apparatus | |
US10708667B1 (en) | Combining fragments with different encodings | |
US9665646B1 (en) | Method and system for providing bit rate adaptaion to video files having metadata | |
US10019448B2 (en) | Methods and systems for providing file data for media files | |
CN114040232A (en) | Screen projection system, method, electronic device and storage medium | |
KR101336585B1 (en) | Systme and method for providing adaptive streaming service | |
US20180034883A1 (en) | Operating method of client for streaming service | |
US20140237077A1 (en) | Methods and systems for providing file data for video files | |
KR101087599B1 (en) | Transmission control method for http streaming video service | |
US10547878B2 (en) | Hybrid transmission protocol | |
US10893303B1 (en) | Streaming chunked media segments | |
US20130041975A1 (en) | Distributed media access | |
WO2017193760A1 (en) | Content publishing method, device and system, and content-distributed network system | |
EP3376769A1 (en) | Systems and methods for adaptive streaming using jpeg 2000 |
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 | ||
FPAY | Annual fee payment |
Payment date: 20161019 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20170626 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20191107 Year of fee payment: 7 |