KR101819193B1 - 실시간 파일 포맷 변환 스트리밍 서비스 방법 - Google Patents
실시간 파일 포맷 변환 스트리밍 서비스 방법 Download PDFInfo
- Publication number
- KR101819193B1 KR101819193B1 KR1020160153066A KR20160153066A KR101819193B1 KR 101819193 B1 KR101819193 B1 KR 101819193B1 KR 1020160153066 A KR1020160153066 A KR 1020160153066A KR 20160153066 A KR20160153066 A KR 20160153066A KR 101819193 B1 KR101819193 B1 KR 101819193B1
- Authority
- KR
- South Korea
- Prior art keywords
- file format
- service
- format
- user terminal
- streaming
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 33
- 230000009466 transformation Effects 0.000 title abstract 3
- 238000006243 chemical reaction Methods 0.000 claims description 33
- 238000004891 communication Methods 0.000 claims description 14
- 230000005540 biological transmission Effects 0.000 claims description 6
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 239000000470 constituent Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000004044 response 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/266—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
- H04N21/2662—Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
-
- 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/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/234309—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4 or from Quicktime to Realvideo
-
- 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/236—Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
- H04N21/2362—Generation or processing of Service Information [SI]
-
- 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/236—Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
- H04N21/2365—Multiplexing of several video 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/24—Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
- H04N21/2402—Monitoring of the downstream path of the transmission network, e.g. bandwidth available
-
- 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/24—Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
- H04N21/2407—Monitoring of transmitted content, e.g. distribution time, number of downloads
-
- 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/24—Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
- H04N21/2408—Monitoring of the upstream path of the transmission network, e.g. client requests
-
- 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/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/258—Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
- H04N21/25808—Management of client data
- H04N21/25825—Management of client data involving client display capabilities, e.g. screen resolution of a mobile phone
-
- 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/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/258—Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
- H04N21/25866—Management of end-user data
-
- 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/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/85—Assembly of content; Generation of multimedia applications
- H04N21/854—Content authoring
- H04N21/85406—Content authoring involving a specific file format, e.g. MP4 format
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Computer Security & Cryptography (AREA)
- Computer Graphics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
실시간 파일 포맷 변환 스트리밍 서비스 방법이 개시된다. 본 발명의 일측면에 따른 동영상 스트리밍 서비스를 제공하는 서버 장치에서 수행되는 실시간 파일 포맷 변환 스트리밍 서비스 방법은 사용자 단말로부터 동영상 콘텐츠를 요청받는 단계; 사용자 단말의 디바이스 체크에 따라 서비스 포맷을 결정하는 단계; 요청된 동영상 콘텐츠의 파일 포맷이 MP4인 경우, 서비스 포맷에 따라 제공할 서비스 콘텐츠의 파일 포맷을 유지하거나 헤더를 분석하여 FLV 또는 HLS에 따른 파일 포맷으로 변환하는 단계; 및 서비스 콘텐츠를 사용자 단말로 스트리밍 전송하는 단계를 포함한다.
Description
본 발명은 효율적인 동영상 제공 서비스를 위한 실시간 파일 포맷 변환 스트리밍 서비스 방법에 관한 것이다.
인터넷의 발달 및 컴퓨터뿐 아니라 스마트폰, 태블릿PC 등의 모바일 기기까지 그 통신 장치의 발달로 인해, 사용자들은 언제 어디서든 인터넷을 이용하여 뮤직비디오, UCC, 영화 등의 동영상 콘텐츠를 쉽게 접하게 되었다.
기존에는 동영상을 다운로드 받은 이후 시청하는 방식이 주를 이루었지만, 최근에는 통신속도가 빨라져 스트리밍(streaming) 방식이 주로 사용되고 있다. 현재 웹상에서 제공되는 대다수의 동영상 콘텐츠는 MP4 포맷이 이용되고 있다. MP4의 경우 스트리밍 방식으로 서비스를 제공할 때, 사용자 단말에서의 재생을 위해서는 헤더가 우선적으로 제공되어야 하는데, 영상 크기에 따라 커지는 헤더의 사이즈로 인해 사용자 입장에서는 헤더 데이터를 모두 수신할 때까지 재생이 지연되어 불편을 겪게 된다. 특히, 사용자가 영상을 시청하다가 스킵하는 경우, MP4 헤더를 다시 수신해야 함에 따라 다시 지연시간이 발생됨으로 인해 더욱 불편을 느끼게 되는 문제가 있다.
따라서, 본 발명은 상술한 문제점을 해결하기 위해 안출된 것으로서, MP4 포맷의 동영상을 사용자 단말의 상황에 따라 FLV, HLS 등의 포맷으로 동적 변환하여 제공하는 실시간 파일 포맷 변환 스트리밍 서비스 방법 및 그 방법을 실행하는 프로그램이 기록된 기록매체를 제공하기 위한 것이다.
본 발명의 다른 목적들은 이하에 서술되는 바람직한 실시예를 통하여 보다 명확해질 것이다.
본 발명의 일 측면에 따르면, 동영상 스트리밍 서비스를 제공하는 서버 장치에서 수행되는 실시간 파일 포맷 변환 스트리밍 서비스 방법에 있어서, 사용자 단말로부터 동영상 콘텐츠를 요청받는 단계; 상기 사용자 단말의 디바이스 체크에 따라 서비스 포맷을 결정하는 단계; 요청된 동영상 콘텐츠의 파일 포맷이 MP4인 경우, 상기 서비스 포맷에 따라 제공할 서비스 콘텐츠의 파일 포맷을 유지하거나 헤더를 분석하여 FLV 또는 HLS에 따른 파일 포맷으로 변환하는 단계; 및 상기 서비스 콘텐츠를 상기 사용자 단말로 스트리밍 전송하는 단계를 포함하는 실시간 파일 포맷 변환 스트리밍 서비스 방법 및 그 방법을 실행하는 프로그램이 기록된 기록매체가 제공된다.
여기서, 상기 파일 포맷을 변환하는 단계는, 상기 사용자 단말과의 통신환경을 분석하는 단계를 포함하되, 상기 통신환경에 따라 상기 파일 포맷의 변환여부를 결정할 수 있다.
또한, 상기 파일 포맷을 변환하는 단계는, 상기 서비스 콘텐츠의 사용 이력에 따른 스킵발생율을 확인하는 단계를 포함하되, 상기 스킵발생율이 미리 설정된 임계수치 이상인 경우에만 상기 파일 포맷의 변환을 수행할 수 있다.
또한, 상기 서비스 콘텐츠의 총 재생시간에 따라 상기 임계수치를 달리 적용할 수 있다.
또한, 상기 파일 포맷을 변환하는 단계는, 상기 사용자 단말의 사용자 이력에 따른 스킵발생율을 확인하는 단계를 포함하되, 상기 스킵발생율이 미리 설정된 값 이상인 경우에만 상기 파일 포맷의 변환을 수행할 수 있다.
그리고, 동영상 스트리밍 서비스를 제공하는 서버 장치에서 수행되는 실시간 파일 포맷 변환 스트리밍 서비스 방법에 있어서, 사용자 단말로부터 동영상 콘텐츠를 요청받는 단계; 상기 동영상 콘텐츠를 상기 사용자 단말로 스트리밍 서비스하는 단계; 상기 사용자 단말로부터 상기 동영상 콘텐츠에 대한 스킵 요청을 수신하는 단계; 상기 동영상 콘텐츠의 파일 포맷이 MP4인 경우 상기 사용자 단말의 디바이스에 대응되는 서비스 포맷에 따라 헤더를 분석하여 상기 동영상 콘텐츠의 파일 포맷을 FLV 또는 HLS에 따른 파일 포맷으로 변환하는 단계; 및 변환된 파일 포맷으로 상기 동영상 콘텐츠를 상기 사용자 단말로 스트리밍 서비스하는 단계를 포함하는 실시간 파일 포맷 변환 스트리밍 서비스 방법 및 그 방법을 실행하는 프로그램이 기록된 기록매체가 제공된다.
여기서, 상기 스킵 요청이 미리 설정된 횟수만큼 수신되는 경우에만 상기 서비스 포맷으로의 파일 포맷 변환을 수행할 수 있다.
본 발명에 따르면, MP4 포맷의 동영상을 사용자 단말의 상황에 따라 FLV, HLS 등의 포맷으로 동적 변환하여 제공함으로써, MP4 헤더 데이터의 전송으로 인한 지연시간을 감소시킬 수 있다.
또한, 본 발명에 따르면 실시간으로 파일 포맷을 변환하여 스트리밍 서비스함으로써, 각 포맷에 따른 콘텐츠를 모두 저장할 필요가 없어 콘텐츠의 저장공간을 효율적으로 사용할 수 있는 효과가 있다.
도 1은 본 발명의 일 실시예에 따른 실시간 파일 포맷 변환 스트리밍 서비스를 제공하는 서버 장치의 구성을 도시한 블록도.
도 2는 본 발명의 일 실시예에 따른 실시간 파일 포맷 변환 스트리밍 서비스 과정을 도시한 흐름도.
도 3은 본 발명의 일 실시예에 따른 MP4파일의 포맷 변환을 도시한 예시도.
도 4 및 도 5는 본 발명의 각 실시예에 따른 파일 포맷 변환 과정을 도시한 흐름도들.
도 6은 본 발명의 다른 실시예에 따른 실시간 파일 포맷 변환 스트리밍 서비스 과정을 개략적으로 도시한 흐름도.
도 2는 본 발명의 일 실시예에 따른 실시간 파일 포맷 변환 스트리밍 서비스 과정을 도시한 흐름도.
도 3은 본 발명의 일 실시예에 따른 MP4파일의 포맷 변환을 도시한 예시도.
도 4 및 도 5는 본 발명의 각 실시예에 따른 파일 포맷 변환 과정을 도시한 흐름도들.
도 6은 본 발명의 다른 실시예에 따른 실시간 파일 포맷 변환 스트리밍 서비스 과정을 개략적으로 도시한 흐름도.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 명세서에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
또한, 각 도면을 참조하여 설명하는 실시예의 구성 요소가 해당 실시예에만 제한적으로 적용되는 것은 아니며, 본 발명의 기술적 사상이 유지되는 범위 내에서 다른 실시예에 포함되도록 구현될 수 있으며, 또한 별도의 설명이 생략될지라도 복수의 실시예가 통합된 하나의 실시예로 다시 구현될 수도 있음은 당연하다.
또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일하거나 관련된 참조부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
도 1은 본 발명의 일 실시예에 따른 실시간 파일 포맷 변환 스트리밍 서비스를 제공하는 서버 장치의 구성을 도시한 블록도이다.
도 1을 참조하면, 본 실시예에 따른 서버 장치는 데이터 전송부(10), 포맷 결정부(20), 데이터 변환부(30), 콘텐츠 저장부(40) 및 제어부(50)를 포함한다.
데이터 전송부(10)는 스트리밍 서비스를 사용자 단말에게 제공하기 위한 것으로서, 제공되는 콘텐츠(이하 서비스 콘텐츠라 칭함)의 파일 포맷에 따른 각각의 프로토콜을 이용하여 서비스 콘텐츠를 제공한다.
콘텐츠 저장부(40)에는 사용자 단말에게 제공될 동영상 콘텐츠가 저장되는데, 본 실시예에 따른 콘텐츠 저장부에는 주로 MP4 포맷의 동영상 콘텐츠가 저장되는 것을 위주로 설명하기로 한다. 물론 FLV, HLS 파일 포맷에 따른 콘텐츠가 저장될 수도 있음은 당연하다.
포맷 결정부(20)는 사용자 단말에게 제공할 서비스 콘텐츠의 파일 포맷(이하 서비스 포맷이라 칭함)을 결정한다. 일례에 따르면, 포맷 결정부(20)는 사용자 단말의 디바이스를 체크하고, 해당 디바이스에 적합한 서비스 포맷을 결정할 수 있다. 구체적인 예를 들자면, 사용자 단말이 일반 PC인 경우 FLV으로, 아이폰(I-phone)과 같은 IOS 운영체제가 설치된 단말기인 경우 HLS로, 안드로이드 OS가 설치된 단말기인 경우 MP4로 서비스 포맷을 결정할 수 있다. 이는 일례일 뿐 이에 한정되는 것은 아니며, 다른 예에 따르면 사용자 단말에 설치된 코덱(codec)의 종류에 따라 서비스 포맷이 결정될 수도 있을 것이다.
데이터 변환부(30)는 포맷 결정부(20)에 의해 결정된 서비스 포맷으로 서비스 콘텐츠의 파일 포맷을 변환한다.
제어부(50)는 각 구성부의 전반적인 제어를 수행한다. 예를 들어, 제어부(50)는 포맷 결정부(20)가 서비스 포맷을 결정하는 방식에 대한 제어, 또는 데이터 변환부(30)가 파일 변환을 수행할 지의 여부 또는 그 시기 등을 제어할 수 있다.
상술한 서버 장치에서의 스트리밍 서비스 방법에 대해서는 그 처리 과정에 따른 실시예를 참조하여 보다 상세히 설명하기로 한다.
도 2는 본 발명의 일 실시예에 따른 실시간 파일 포맷 변환 스트리밍 서비스 과정을 도시한 흐름도이고, 도 3은 본 발명의 일 실시예에 따른 MP4파일의 포맷 변환을 도시한 예시도이다.
도 2를 참조하면, 서버 장치는 사용자 단말로부터 동영상 콘텐츠 요청을 수신하면(S10), 제공할 동영상 콘텐츠인 제공 콘텐츠의 서비스 포맷을 결정한다(S20). 서비스 포맷의 결정 방식으로서, 일례에 따르면 상술한 바와 같이 사용자 단말의 디바이스(단말 자체 또는 구동 OS)를 체크하고, 해당 디바이스에 따라 미리 결정된 서비스 포맷이 결정될 수 있다. 디바이스에 대한 정보는 사용자 단말로부터 수신될 수 있을 것이다. 예를 들어, 요청 URL(ex: http://mcs.com/a.mp4?format=MP4)에 MP4를 요청하는 정보가 포함될 수 있다.
서비스 포맷이 결정되면, 서버 장치는 해당 포맷이 MP4인지 여부를 확인하고(S30), MP4인 경우 그에 따른 파일 포맷으로 스트리밍 서비스를 제공한다(S40). MP4의 경우 파일 컨테이너는 MP4이고, 코덱은 H.264/MPEG4SP이며, 전송 프로토콜은 HTTP일 수 있다.
이와 달리 서비스 포맷이 FLV, HLS에 따른 파일 포맷인 경우, 서버 장치는 해당 파일 포맷에 따라 서비스 콘텐츠의 파일 포맷을 변환하여 스트리밍 서비스한다(S50).
예를 들어, FLV인 경우 MP4의 파일 포맷을 FLV으로 변환하여 FLV컨테이너로 RTMP 프로토콜을 이용하여 전송하며, 코덱은 VP6일 수 있다. 또는 HLS인 경우 서버 장치는 TS컨테이너로 하여 HLS 프로토콜을 이용하여 전송하며, 사용자 단말은 H.264(MPEG-4 Part 10 AVC)를 이용하여 재생한다.
도 3을 함께 참조하면, MP4는 재생을 위해서는 먼저 헤더데이터를 모두 수신해야 하지만, FLV의 경우 헤더데이터와 실제 영상 데이터가 분할되어 있는 방식이므로, 일부 헤더만 전송되더라도 바로 재생이 가능하게 된다.
HLS 파일 포맷의 처리 방식에 대해 보다 상세히 설명하자면, 서버 장치는 MP4파일을 분석하여 HLS meta file(m3u8)을 실시간으로 생성하여 사용자 단말로 전송한다. 그리고, 사용자 단말로부터 meta file에 포함된 MPEG2-TS파일을 요청받으면, 서버 장치는 MP4파일을 MPEG2-TS파일로 실시간 변환하여 스티리밍 전송하는 것이다.
따라서, 재생 스킵(skip)이 발생하는 경우 MP4는 다시 헤더데이터를 모두 전송해야 하는 것에 비해, FLV 또는 HLS의 경우에는 헤더 일부 또는 데이터만 전송하면 되므로 지연시간을 줄일 수 있어, 사용자 입장에서는 지연없이 바로 스킵된 내용을 시청할 수 있게 된다.
본 실시예에 따르면, 서버 장치는 MP4 파일 포맷의 동영상 콘텐츠만을 저장하더라도 각 파일 포맷에 따른 스트리밍 서비스를 제공할 수 있어, 미리 각 파일 포맷의 콘텐츠를 각각 저장하는 기존 방식에 비해 저장공간을 효율적으로 사용할 수 있다. 다시 말해, 수만개 이상의 많은 수의 동영상을 저장하는 서버입장에서는 동일한 콘텐츠를 파일 포맷별로 각각 저장하게 되면, 저장매체의 운영비용이 높아지는 문제가 있는데, 본 실시예에 의하면 이러한 문제를 해결할 수 있게 되는 것이다.
그리고, 본 실시예는 항상 결정된 서비스 포맷으로 파일 포맷을 변환하여 스트리밍 서비스를 제공하는 방식을 위주로 설명하였다. 이와 다른 방식에 따르면 특정 조건을 만족하는 경우에만 파일 변환을 수행할 수 있는데, 이하 각 실시예를 참조하여 상세히 설명하기로 한다.
도 4 및 도 5는 본 발명의 각 실시예에 따른 파일 포맷 변환 과정을 도시한 흐름도들이다.
먼저 일례에 따른 도 4를 참조하면, 서버 장치는 사용자 단말의 통신환경을 분석하여(S410), 통신환경이 우수한지 여부를 판단한다(S420). 예를 들어, MP4 파일포맷인 서비스 콘텐츠의 헤더데이터가 사용자 단말로 모두 수신되기까지 소요되는 시간에 따라 통신환경을 구분할 수 있다. 구체적인 예를 들자면, 헤더 데이터의 전송시작시간부터 모든 헤더 데이터를 수신함에 따라 수신되는 사용자 단말로부터의 응답신호 수신시간까지의 시간이, 0.3초 이내인 경우에는 통신환경이 우수한 것으로 판단될 수 있다.
사용자 단말의 통신환경이 우수한 것으로 판단되면, 서비스 포맷을 원본 그대로 MP4로 결정할 수 있다(S430). 이와 달리, 통신환경이 우수하지 못한 것으로 판단되면, 서비스 포맷을 FLV 또는 HLS중 사용자 단말에 따라 결정한다(S440).
본 실시예에 따르면, 통신속도가 빠른 사용자 단말에게는 원본 그대로 MP4로 전송하고, 통신속도가 느린 사용자 단말에게는 파일 포맷을 변환하여 전송함으로써, 영상 스킵이 일어나더라도 최대한 끊김 없이 영상을 시청할 수 있도록 한다. 또한 동시에 파일 변환 횟수를 줄일 수 있어, 서버 장치에서도 파일 변환에 따른 처리 부하를 줄일 수 있게 된다.
다른 실시예에 따른 도 5를 참조하면, 서버 장치는 사용자 또는 서비스 콘텐츠의 사용이력에 따른 스킵발생율을 확인한다(S510). 다시 말해, 서비스 요청한 사용자 단말에 따른 사용자의 사용이력(예를 들어, 동영상 콘텐츠 스트리밍 서비스 이용횟수, 콘텐츠당 평균적인 스킵횟수 등)을 확인하여, 해당 사용자가 얼마나 동영상 콘텐츠를 시청할 때 스킵을 많이 하는지에 대한 스킵발생율을 확인하는 것이다. 또는 서비스 요청된 서비스 콘텐츠에 대한 사용자들의 사용이력(조회횟수, 스킵을 수행한 사용자 비율, 평균적인 스킵횟수 등)을 확인하여, 스킵발생율을 확인하는 것이다.
서버 장치는 상술한 스킵발생율이 임계값 이상인지 여부를 판단하고(S520), 임계값 이상인 경우 파일 포맷을 변환하는 것으로 결정한다(S540). 즉, 스킵발생율이 높다는 것은 스킵될 확률이 높은 것이므로, 스킵에 용이한 FLV 또는 HLS에 따른 파일 포맷으로 변환하여 서비스 콘텐츠의 스트리밍 서비스를 제공한다.
여기서, 상술한 임계값은 동적으로 변화될 수도 있는데, 예를 들어 서비스 콘텐츠의 스킵발생율을 이용하는 경우 서비스 콘텐츠의 총 재생시간에 따라 임계값을 달리 설정할 수 있다. 구체적인 예를 들자면, 콘텐츠의 재생시간이 1분 이하인 경우 임계값은 30%일 수 있으며, 재생시간이 1분 이상인 경우 임계값은 20%일 수 있다.
다시 도면을 참조하면, 스킵발생율이 임계값 미만인 경우, 원본 그대로 MP4 파일포맷으로 서비스 콘텐츠를 스트리밍 제공한다(S530).
본 실시예에 따르면, 불필요한 파일 변환을 수행하지 않게 될 수 있어, 파일 변환에 따른 처리 부하를 줄일 수 있다.
도 6은 본 발명의 다른 실시예에 따른 실시간 파일 포맷 변환 스트리밍 서비스 과정을 개략적으로 도시한 흐름도이다.
도 6을 참조하면, 서버 장치는 기본적으로 서비스 콘텐츠를 원본 그대로 MP4 포맷으로 스트리밍 제공한다(S610).
만일 사용자 단말로부터 해당 서비스 콘텐츠에 대한 스킵 요청이 수신되면(S620), MP4포맷에 따른 헤더를 전송하는 것이 아니라, FLV 또는 HLS와 같은 사용자 단말에 적합한 파일 포맷으로 서비스 콘텐츠를 변환하고(S630), 그에 따른 프로토콜로 스트리밍 전송한다(S640).
여기서, 첫번째 스킵 요청에서 파일 포맷을 변환할 수도 있으나, 다른 일례에 따르면 스킵 요청이 미리 설정된 복수회(예를 들어, 2회)만큼 수신되는 경우에만 서비스 포맷으로의 파일 포맷 변환을 수행할 수도 있다. 또는 스킵 요청이 일정 시간(예를 들어, 20초 등) 내에 복수번 요청되는 경우에만 포맷 변환을 수행할 수도 있다.
상술한 본 발명에 따른 실시간 파일 포맷 변환 스트리밍 서비스 방법은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터가 읽을 수 있는 코드로서 구현되는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체로는 컴퓨터 시스템에 의하여 해독될 수 있는 데이터가 저장된 모든 종류의 기록 매체를 포함한다. 예를 들어, ROM(Read Only Memory), RAM(Random Access Memory), 자기 테이프, 자기 디스크, 플래쉬 메모리, 광 데이터 저장장치 등이 있을 수 있다. 또한, 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 통신망으로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 읽을 수 있는 코드로서 저장되고 실행될 수 있다.
또한, 상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야에서 통상의 지식을 가진 자라면 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
10 : 데이터 전송부 20 : 포맷 결정부
30 : 데이터 변환부 40 : 콘텐츠 저장부
50 : 제어부
30 : 데이터 변환부 40 : 콘텐츠 저장부
50 : 제어부
Claims (8)
- 동영상 스트리밍 서비스를 제공하는 서버 장치에서 수행되는 실시간 파일 포맷 변환 스트리밍 서비스 방법에 있어서,
사용자 단말로부터 동영상 콘텐츠를 요청받는 단계;
상기 사용자 단말의 디바이스 체크에 따라 서비스 포맷을 결정하는 단계;
요청된 동영상 콘텐츠의 파일 포맷이 MP4인 경우, 상기 서비스 포맷에 따라 제공할 서비스 콘텐츠의 파일 포맷을 유지하거나 헤더를 분석하여 FLV 또는 HLS에 따른 파일 포맷으로 변환하는 단계; 및
상기 서비스 콘텐츠를 상기 사용자 단말로 스트리밍 전송하는 단계를 포함하되,
상기 파일 포맷을 변환하는 것으로 결정된 경우, 상기 서비스 콘텐츠의 사용 이력 및 상기 사용자 단말의 사용자 이력에 따른 스킵발생율을 확인하고, 상기 스킵발생율이 상기 서비스 콘텐츠의 총 재생시간에 따라 결정되는 임계수치 이상인 경우에만 상기 파일 포맷의 변환을 수행하며,
상기 파일 포맷을 유지하는 것으로 결정된 경우, 상기 스트리밍 전송 중 사용자로부터의 스킵 요청이 수신되면 상기 파일 포맷의 변환을 수행하는 것을 특징으로 하는 실시간 파일 포맷 변환 스트리밍 서비스 방법.
- 청구항 1에 있어서,
상기 파일 포맷을 변환하는 단계는,
상기 사용자 단말과의 통신환경을 분석하는 단계를 포함하되,
상기 통신환경에 따라 상기 파일 포맷의 변환여부를 결정하는 것을 특징으로 하는 실시간 파일 포맷 변환 스트리밍 서비스 방법.
- 청구항 1에 있어서,
상기 스킵 요청이 미리 설정된 횟수만큼 수신되는 경우에만 상기 서비스 포맷으로의 파일 포맷의 변환을 수행하는 것을 특징으로 하는 실시간 파일 포맷 변환 스트리밍 서비스 방법.
- 삭제
- 삭제
- 삭제
- 삭제
- 제 1항 내지 제 3항 중 어느 한 항의 방법을 수행하기 위한 프로그램이 컴퓨터가 읽을 수 있도록 기록된 기록 매체.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160153066A KR101819193B1 (ko) | 2016-11-17 | 2016-11-17 | 실시간 파일 포맷 변환 스트리밍 서비스 방법 |
US16/462,158 US20190335218A1 (en) | 2016-11-17 | 2017-10-19 | Method of real-time file format conversion streaming service |
PCT/KR2017/011602 WO2018093051A1 (ko) | 2016-11-17 | 2017-10-19 | 실시간 파일 포맷 변환 스트리밍 서비스 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160153066A KR101819193B1 (ko) | 2016-11-17 | 2016-11-17 | 실시간 파일 포맷 변환 스트리밍 서비스 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101819193B1 true KR101819193B1 (ko) | 2018-01-16 |
Family
ID=61066744
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020160153066A KR101819193B1 (ko) | 2016-11-17 | 2016-11-17 | 실시간 파일 포맷 변환 스트리밍 서비스 방법 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20190335218A1 (ko) |
KR (1) | KR101819193B1 (ko) |
WO (1) | WO2018093051A1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20210051312A (ko) * | 2019-10-30 | 2021-05-10 | 주식회사 엘지유플러스 | 음원 스트리밍 서비스 제공 시스템 및 방법 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113973214A (zh) * | 2021-09-30 | 2022-01-25 | 中通服科信信息技术有限公司 | 视频流格式转换方法、装置和存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120254456A1 (en) * | 2011-03-31 | 2012-10-04 | Juniper Networks, Inc. | Media file storage format and adaptive delivery system |
KR101640452B1 (ko) * | 2015-12-01 | 2016-07-18 | (주)판도라티비 | 스트리밍 미디어 서비스 장치 및 방법 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20080003960A (ko) * | 2006-07-04 | 2008-01-09 | (주) 컨텐츠플러그 | 디바이스 주문형 동영상 콘텐츠 자동 공급 시스템 |
US8208563B2 (en) * | 2008-04-23 | 2012-06-26 | Qualcomm Incorporated | Boundary artifact correction within video units |
KR101777347B1 (ko) * | 2009-11-13 | 2017-09-11 | 삼성전자주식회사 | 부분화에 기초한 적응적인 스트리밍 방법 및 장치 |
KR20120008432A (ko) * | 2010-07-16 | 2012-01-30 | 한국전자통신연구원 | 스트리밍 서비스 송/수신 장치 및 방법 |
KR102100963B1 (ko) * | 2013-07-03 | 2020-05-15 | (주)드림어스컴퍼니 | 음악 발견을 위한 음악 추천 서비스 장치 및 이를 이용한 시스템과 그 추천 방법 |
-
2016
- 2016-11-17 KR KR1020160153066A patent/KR101819193B1/ko active IP Right Grant
-
2017
- 2017-10-19 US US16/462,158 patent/US20190335218A1/en not_active Abandoned
- 2017-10-19 WO PCT/KR2017/011602 patent/WO2018093051A1/ko active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120254456A1 (en) * | 2011-03-31 | 2012-10-04 | Juniper Networks, Inc. | Media file storage format and adaptive delivery system |
KR101640452B1 (ko) * | 2015-12-01 | 2016-07-18 | (주)판도라티비 | 스트리밍 미디어 서비스 장치 및 방법 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20210051312A (ko) * | 2019-10-30 | 2021-05-10 | 주식회사 엘지유플러스 | 음원 스트리밍 서비스 제공 시스템 및 방법 |
KR102292416B1 (ko) * | 2019-10-30 | 2021-08-24 | 주식회사 엘지유플러스 | 음원 스트리밍 서비스 제공 시스템 및 방법 |
Also Published As
Publication number | Publication date |
---|---|
US20190335218A1 (en) | 2019-10-31 |
WO2018093051A1 (ko) | 2018-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11537562B2 (en) | Auxiliary manifest file to provide timed metadata | |
US8903895B2 (en) | Method of streaming media to heterogeneous client devices | |
KR100621784B1 (ko) | 사용자 단말 특성 기반의 멀티미디어 소비 방법과 시스템 | |
US7921150B1 (en) | Method for viewing videos on distributed networks | |
US20140139735A1 (en) | Online Media Data Conversion Method, Online Video Playing Method and Corresponding Device | |
CN103036888A (zh) | 自适应的流媒体播放方法及其自适应播放单元 | |
CN102473159A (zh) | 媒体内容流播的系统和方法 | |
US20140189141A1 (en) | Real-time content transcoding method, apparatus and system, and real-time content receiving method and apparatus | |
US20120207454A1 (en) | Streaming service and playback device using svc server | |
EP4060955A1 (en) | Security method, apparatus and system easy to access by user | |
US20230283652A1 (en) | Adaptive content streaming based on bandwidth | |
CN114040232A (zh) | 投屏系统、方法、电子设备和存储介质 | |
KR101819193B1 (ko) | 실시간 파일 포맷 변환 스트리밍 서비스 방법 | |
KR20200081161A (ko) | 컨텐츠 스트리밍 장치, 시스템 및 방법 | |
US20160100132A1 (en) | Reception apparatus, reception method, and program thereof, image capturing apparatus, image capturing method, and program thereof, and transmission apparatus, transmission method, and program thereof | |
JP5151763B2 (ja) | 映像配信システム、映像配信装置、映像受信装置、映像配信方法、映像受信方法及びプログラム | |
US20140201368A1 (en) | Method and apparatus for enforcing behavior of dash or other clients | |
US20220272394A1 (en) | Systems and methods for improved adaptive video streaming | |
US20160173551A1 (en) | System and method for session mobility for adaptive bitrate streaming | |
KR101933036B1 (ko) | 콘텐츠 재생 제어 장치 | |
WO2014073202A1 (ja) | 情報処理装置、情報処理方法、コンテンツ配信システム及びコンピュータプログラム記録媒体 | |
KR20190119696A (ko) | 스트리밍에서의 전송속도 제어방법 및 이를 위한 시스템 | |
KR20140086801A (ko) | 실시간 콘텐츠 트랜스코딩 방법, 장치 및 시스템, 및 실시간 콘텐츠 수신 장치 및 방법 | |
KR102058916B1 (ko) | Html5 실시간 재생기 및 그것을 이용한 실시간 재생 방법 | |
KR101933031B1 (ko) | 콘텐츠 재생 제어 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |