KR101936384B1 - Method and apparatus for providing playing list to force viewers to watch video - Google Patents

Method and apparatus for providing playing list to force viewers to watch video Download PDF

Info

Publication number
KR101936384B1
KR101936384B1 KR1020160113464A KR20160113464A KR101936384B1 KR 101936384 B1 KR101936384 B1 KR 101936384B1 KR 1020160113464 A KR1020160113464 A KR 1020160113464A KR 20160113464 A KR20160113464 A KR 20160113464A KR 101936384 B1 KR101936384 B1 KR 101936384B1
Authority
KR
South Korea
Prior art keywords
playlist file
client
time
file
playlist
Prior art date
Application number
KR1020160113464A
Other languages
Korean (ko)
Other versions
KR20180026287A (en
Inventor
김현호
전병완
Original Assignee
주식회사 솔박스
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 솔박스 filed Critical 주식회사 솔박스
Priority to KR1020160113464A priority Critical patent/KR101936384B1/en
Publication of KR20180026287A publication Critical patent/KR20180026287A/en
Application granted granted Critical
Publication of KR101936384B1 publication Critical patent/KR101936384B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/482End-user interface for program selection
    • H04N21/4825End-user interface for program selection using a list of items to be played back in a given order, e.g. playlists
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23424Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management 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/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26258Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for generating a list of items to be played back in a given order, e.g. playlist, or scheduling item distribution according to such list
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
    • H04N21/4314Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations for fitting data in a restricted space on the screen, e.g. EPG data in a rectangular grid
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-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
    • H04N21/47202End-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 for requesting content on demand, e.g. video on demand

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Databases & Information Systems (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

동영상 강제 시청을 위한 재생 목록 제공 방법 및 장치가 제공된다. 클라이언트로부터의 스트리밍 요청에 따라 해당 동영상의 조각 파일들 목록을 포함하는 제1 형태의 재생 목록 파일을 클라이언트로 제공하며, 클라이언트에서의 재생이 설정 시점을 경과한 경우에는 재생하여야 할 조각 파일의 목록을 포함하는 제2 형태의 재생 목록 파일을 클라이언트로 제공한다. 제1 형태의 재생 목록 파일은 설정 지시어를 포함하지 않고, 제2 형태의 재생 목록 파일은 상기 설정 지시어를 포함하며, 설정 시점은 클라이언트에 제공하는 상기 동영상에서 반드시 재생되어야 하는 구간을 토대로 설정된다. A method and apparatus for providing a playlist for forced video viewing are provided. Providing a first type of playlist file including a list of fragmented files of the corresponding video according to a streaming request from a client to a client and providing a list of fragmented files to be played back when a playback time of the client exceeds the set time To the client, a second type of playlist file containing the playlist file. The playlist file of the first form does not include a setting directive and the playlist file of the second form includes the setting directive and the set time point is set based on an interval that must be reproduced in the moving picture provided to the client.

Description

동영상 강제 시청을 위한 재생 목록 제공 방법 및 장치{Method and apparatus for providing playing list to force viewers to watch video}BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a method and apparatus for providing a playlist for forced video viewing,

본 발명은 데이터 전송 방법에 관한 것으로, 더욱 상세하게 말하자면 서버단에서 클라이언트에서의 동영상 등의 미디어 데이터 시청을 위하여 재생 목록을 제공하는 방법 및 장치에 관한 것이다. The present invention relates to a data transmission method, and more particularly, to a method and apparatus for providing a play list for viewing media data such as moving pictures in a client terminal at a server terminal.

네트워크 관련 기술의 발전에 따라 네트워크를 통하여 다양한 형태의 컨텐츠를 제공하고 있으며, 컨텐츠 이외에도 광고를 제공하고 있다. 네트워크 상에서 광고는 다양한 형태의 노출 방식을 이용하여 제공되고 있다. In accordance with the development of network related technology, various types of contents are provided through a network, and advertisements are provided in addition to contents. Advertisements on the network are provided using various types of exposure schemes.

멀티미디어 데이터를 실시간으로 재생해 주는 라이브 스트리밍(live streaming) 서비스의 경우 라이브 영상 중간(예: 프로그램과 프로그램 사이, 야구에서의 공수 교대)에 광고를 제공하고 있다. 스트리밍 서비스에서 동영상 광고는, 클라이언트측 광고삽입(Client Side Ad Insertion) 방법과 서버측 광고 삽입(Server Side Ad Insertion) 방법을 통해 제공할 수 있다. 라이브 스트리밍의 경우, 사용자는 지나간 화면을 돌려 볼 수 없다. 이러한 문제점 해결을 위해, 서버에 지나간 영상을 실시간으로 백업하면서 사용자에게 VOD(Video on Demand) 서비스를 제공하고 있다.In the case of live streaming services that play multimedia data in real time, advertisements are provided in the middle of live video (for example, between programs and programs, and airborne alternatives in baseball). In the streaming service, the video advertisement can be provided through a client side advertisement insertion (client side ad insertion) method and a server side advertisement insertion (server side ad insertion) method. In the case of live streaming, the user can not view the past screen. In order to solve such a problem, a VOD (Video on Demand) service is provided to the user while backing up the image to the server in real time.

VOD 서비스는 VOD 파일을 생성하여 저장하고, 사용자로부터의 요청에 따라 해당하는 VOD 파일을 사용자에게 제공한다. The VOD service generates and stores a VOD file, and provides a corresponding VOD file to the user according to a request from the user.

라이브 스트리밍 서비스에서는 스트리밍 서버와, 실시간 스트리밍 인코더가 사용되고, VOD 서비스에서는 스트리밍 서버와 동영상 파일이 사용된다. 예를 들어, 스트리밍 서버에서 광고 영상을 노출시키기 위하여, 인코딩 전 단계에서 동영상에 광고 영상을 미리 포함시킨다. 구체적으로 인코딩 이전에 LIVE/VOD 영상과 광고 영상을 결합하여 하나의 영상으로 처리하고, 처리된 하나의 영상을 하나의 스트리밍 세션을 통하여 클라이언트에게 제공한다. 또는 LIVE/VOD 영상과 광고 영상을 별도로 각각 인코딩하고, LIVE/VOD 영상과 광고 영상을 별도의 스트리밍 세션을 통하여 제공할 수 있다. In a live streaming service, a streaming server and a real-time streaming encoder are used. In a VOD service, a streaming server and a video file are used. For example, in order to expose the advertisement image on the streaming server, the advertisement image is previously included in the moving image in the encoding step. Specifically, the LIVE / VOD image and the advertisement image are combined into one image before the encoding, and the processed one image is provided to the client through one streaming session. Alternatively, the LIVE / VOD image and the advertisement image may be separately encoded, and the LIVE / VOD image and the advertisement image may be provided through separate streaming sessions.

동영상 등의 멀티미디어 데이터를 제공하는 라이브 스트리밍 서비스나 VOD 서비스는 성공적인 유료화 모델과 광고 모델을 통하여 새로운 수익을 창출하고 있다. 서비스 제공자는 광고 영상을 제공하면서 이에 대한 비용을 광고주에게 청구할 수 있는데, 이를 위해서는 광고주가 원하는 만큼의 광고를 노출시켜야 한다. 즉, 사용자가 일정 분량의 광고를 반드시 시청하도록 강제하여야 한다. 이를 위하여 사용자가 광고를 시청해야 하는 구간에서는 건너뛰기와 같은 제어를 막아야 한다. 기존에는 앱(APP)이나 웹(Web)에서 탐색(seek) 기능을 차단하거나, 탐색 UI(use interface)를 감추는 방법 등이 사용된다. Live streaming service or VOD service, which provides multimedia data such as video, is generating new revenue through a successful monetization model and an advertisement model. The service provider can charge the advertiser for the advertisement while providing the advertisement image. For this purpose, the advertiser should expose the advertisement as much as he wants. That is, the user must be forced to view a certain amount of advertisements. For this purpose, it is necessary to prevent the control such as skipping in the section where the user should watch the advertisement. Conventionally, a method of blocking a seek function in an APP or a web, or hiding a use interface is used.

그러나, iOS를 사용하는 작은 디바이스의 웹브라우저에서, 동영상에 대하여 전체 화면에 고정되어 있는 UI가 제공되며, 프로그램이나 설정으로 이것을 변경할 수 없다. 많은 동영상 광고 플랫폼에서 이와 같은 문제가 있어서 특정 디바이스(예를 들어, 아이폰(IPhone))에 대해서는 광고를 빼고 동영상 서비스를 제공하고 있다.However, in the web browser of a small device using iOS, the UI is fixed to the entire screen for the video, and can not be changed by the program or the setting. Many video ad platforms have such a problem that they offer video services for certain devices (for example, IPhone) without advertising.

본 발명이 해결하고자 하는 과제는 멀티미디어 데이터를 서비스 하는 경우, 클라이언트에서 광고 등의 특정 동영상이 반드시 시청될 수 있도록 하는 방법 및 그 장치를 제공하는 것이다. SUMMARY OF THE INVENTION It is an object of the present invention to provide a method and apparatus for enabling a client to view a specific moving picture such as an advertisement when multimedia data is served.

본 발명의 특징에 따른 방법은, 클라이언트에게 동영상 재생을 위한 재생 목록 파일을 제공하는 방법으로, 상기 클라이언트로부터의 스트리밍 요청에 따라 해당 동영상의 조각 파일들 목록을 포함하는 제1 형태의 재생 목록 파일을 상기 클라이언트로 제공하는 단계; 상기 클라이언트에서의 재생이 설정 시점을 경과하였는지를 판단하는 단계; 및 상기 설정 시점을 경과한 경우, 재생하여야 할 조각 파일의 목록을 포함하는 제2 형태의 재생 목록 파일을 상기 클라이언트로 제공하는 단계를 포함하며, 상기 제1 형태의 재생 목록 파일을 설정 지시어를 포함하지 않고, 상기 제2 형태의 재생 목록 파일을 상기 설정 지시어를 포함하며, 상기 설정 시점은 클라이언트에 제공하는 상기 동영상에서 반드시 재생되어야 하는 구간을 토대로 설정된다. A method according to an aspect of the present invention is a method of providing a playlist file for playing a moving image to a client, the method comprising: receiving a first type playlist file including a list of fragmented files of the moving image according to a streaming request from the client; Providing to the client; Determining whether playback of the client has passed a set time; And providing a second type of playlist file including a list of pieces of pieces to be played back to the client when the set time has elapsed, wherein the first type of playlist file includes a setting directive The playlist file of the second form includes the setting directive, and the setting time is set based on a section that must be reproduced in the moving picture to be provided to the client.

상기 설정 지시어는 “EXT-X-ENDLIST"일 수 있다. The setting directive may be " EXT-X-ENDLIST ".

이 경우, 상기 클라이언트에서의 재생이 설정 시점을 경과하였는지를 판단하는 단계는, 재생 경과 시간을 산출하는 단계; 및 상기 재생 경과 시간이 상기 설정 시점을 경과하였는지를 판단하는 단계를 포함할 수 있으며, 상기 재생 경과 시간은 현재 시간에서 재생 시작 시간을 감산하여 획득될 수 있다. In this case, the step of determining whether the playback time of the client has exceeded the set time may include: calculating a playback elapsed time; And determining whether the playback elapsed time has passed the set time, and the playback elapsed time may be obtained by subtracting the playback start time from the current time.

또한, 상기 설정 시점은 설정 시점 = 전체 구간 - (목표 구간 × 1/2)의 조건을 토대로 산출될 수 있으며, 상기 전체 구간은 클라이언트에 제공하는 동영상이 재생되는 전체 구간을 나타내고, 상기 목표 구간은 미디어 세그먼트의 최대 길이일 수 있다. In addition, the setting time may be calculated based on a condition of a setting time = entire section - (target section x 1/2), the whole section represents a whole section in which a moving picture to be provided to a client is reproduced, May be the maximum length of the media segment.

한편, 상기 제2 형태의 재생 목록 파일을 상기 클라이언트로 제공하는 단계는, 상기 동영상에서 반드시 재생되어야 하는 구간에 대응하는 조각 파일들의 목록에서 마지막 조각 파일을 재생 목록 파일에 추가하여 상기 제1 형태의 재생 목록 파일을 제공하는 단계; 및 상기 마지막 조각 파일의 재생이 끝나기 직전에 상기 설정 지시어를 재생 목록 파일에 추가하여 상기 제2 형태의 재생 목록 파일을 제공하는 단계를 포함할 수 있다. The providing of the playlist file of the second type to the client may include adding a last playlist file to a playlist file from a list of fragment files corresponding to a section that must be played back in the movie, Providing a playlist file; And adding the setting directive to the playlist file immediately before the playback of the last fragment file is completed to provide the playlist file of the second type.

상기 클라이언트는 동영상 재생시 전체 화면에 대해 재생 위치를 이동하는 UI(user interface)를 제공하는 디바이스이며, 상기 재생 목록 파일에 상기 설정 지시어가 포함되어 있지 않으면 상기 UI를 상기 전체 화면에 표시하지 않는 감추기를 수행하고, 상기 재생 목록 파일에 상기 설정 지시어가 포함되어 있으면 상기 UI를 상기 전체 화면에 표시하는 보여주기를 수행할 수 있다. The client is a device for providing a user interface (UI) for moving a playback position with respect to the entire screen when playing a moving image, and when the setting directive is not included in the playlist file, And if the playlist file includes the setting directive, display the UI on the full screen.

본 발명의 다른 특징에 따른 장치는, 클라이언트에게 동영상 재생을 위한 재생 목록 파일을 제공하는 장치로서, 네트워크를 통하여 신호를 송수신하는 신호 송수신부; 그리고 상기 송수신부와 연결되고, 재생 목록 파일 제공 처리를 수행하는 프로세서를 포함하며, 상기 프로세서는, 상기 클라이언트로부터의 스트리밍 요청을 수신하는 요청 수신부; 상기 스트리밍 요청에 따라 해당 동영상의 조각 파일들 목록을 포함하는 제1 형태의 재생 목록 파일 또는 제2 형태의 재생 목록 파일을 생성하는 재생 목록 생성부; 및 상기 클라이언트에서의 재생이 설정 시점을 경과하지 않은 경우에는 상기 제1 형태의 재생목록 파일을 제공하고, 상기 재생이 상기 설정 시점을 경과하지 않은 경우에는 상기 제2 형태의 재생 목록 파일을 상기 클라이언트로 제공하는 재생 목록 제공부를 포함하며, 상기 제1 형태의 재생 목록 파일을 설정 지시어를 포함하지 않고, 상기 제2 형태의 재생 목록 파일을 상기 설정 지시어를 포함하고, 상기 설정 시점은 클라이언트에 제공하는 상기 동영상에서 반드시 재생되어야 하는 구간을 토대로 설정될 수 있다. According to another aspect of the present invention, there is provided an apparatus for providing a client with a playlist file for playing back moving pictures, comprising: a signal transmitting / receiving unit for transmitting / receiving signals through a network; And a processor connected to the transceiver and performing a playlist file providing process, the processor comprising: a request receiver for receiving a streaming request from the client; A playlist generating unit for generating a playlist file of a first type or a playlist file of a second type including a list of fragmented files of a corresponding video according to the streaming request; And providing the first type of playlist file if the playback of the client does not pass the set time, and if the playback does not pass the set time, Wherein the playlist file includes the setting directive, and the playlist file of the second form is not included in the playlist file, and the setting point of time is provided to the client And may be set based on an interval that must be reproduced in the moving image.

상기 설정 지시어는 “EXT-X-ENDLIST"일 수 있다. The setting directive may be " EXT-X-ENDLIST ".

상기 프로세서는 현재 시간에서 재생 시작 시간을 감산하여 재생 경과 시간을 산출하는 재생 경과 시간 산출부를 포함할 수 있으며, 상기 재생 목록 제공부는 상기 재생 경과 시간이 상기 설정 시점을 경과하였는지를 판단하고 그 결과에 따라 상기 제1 형태 또는 제2 형태의 재생 목록 파일을 제공할 수 있다. The processor may include a playback elapsed time calculating unit that calculates a playback elapsed time by subtracting a playback start time from a current time, wherein the play list providing unit determines whether the playback elapsed time has passed the set time, And may provide the playlist file of the first or second type.

상기 설정 시점은 설정 시점 = 전체 구간 - (목표 구간 × 1/2)의 조건을 토대로 산출되며, 상기 전체 구간은 클라이언트에 제공하는 동영상이 재생되는 전체 구간을 나타내고, 상기 목표 구간은 미디어 세그먼트의 최대 길이일 수 있다. The set time is calculated based on a condition of a set time = total time - (target time x 1/2), the whole time represents a whole time period in which a moving picture to be provided to a client is played back, Lt; / RTI >

한편, 상기 재생 목록 제공부는, 상기 동영상에서 반드시 재생되어야 하는 구간에 대응하는 조각 파일들의 목록에서 마지막 조각 파일을 재생 목록 파일에 추가하여 상기 제1 형태의 재생 목록 파일을 제공하고, 상기 마지막 조각 파일의 재생이 끝나기 직전에 상기 설정 지시어를 재생 목록 파일에 추가하여 상기 제2 형태의 재생 목록 파일을 제공할 수 있다. Meanwhile, the playlist providing unit may provide the playlist file of the first type by adding the last fragment file to the playlist file in the list of fragment files corresponding to the section that must be played back in the movie, The setting directive may be added to the playlist file to provide the playlist file of the second form immediately before the end of the playlist.

본 발명의 실시 예에 따르면, 클라이언트에서 광고 영상 등의 특정 동영상을 반드시 시청될 수 있도록 할 수 있다. 또한, iOS를 사용하는 작은 디바이스뿐만 아니라, 이러한 디바이스 이외의 플랫폼에서 앱이나 웹 프로그래밍의 도움 없이 광고를 강제로 시청하게 할 수 있다. According to the embodiment of the present invention, a client can make sure that a specific video such as an advertisement video can be viewed. In addition, you can force your ad to be viewed without the help of apps or web programming on platforms other than these devices, as well as smaller devices using iOS.

도 1은 본 발명의 실시 예에 따른 스트리밍 서비스에서 광고 영상을 제공하는 것을 나타낸 도이다.
도 2는 본 발명의 실시 예에 따른 재생 목록 제공 방법의 흐름도이다.
도 3은 본 발명의 실시 예에 따른 제1 형태의 재생 목록 파일을 나타낸 예시도이다.
도 4는 본 발명의 실시 예에 따른 제2 형태의 재생 목록 파일을 나타낸 예시도이다.
도 5는 본 발명의 실시 예에 따른 재생 목록 제공 장치의 구조를 나타낸 도이다.
1 is a diagram illustrating an advertisement image in a streaming service according to an exemplary embodiment of the present invention.
2 is a flowchart of a method of providing a playlist according to an embodiment of the present invention.
FIG. 3 is a view illustrating an example of a playlist file according to an embodiment of the present invention.
4 is an exemplary view showing a playlist file of a second form according to an embodiment of the present invention.
5 is a diagram illustrating a structure of a playlist providing apparatus according to an embodiment of the present invention.

아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시 예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art can easily carry out the present invention. The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. In order to clearly illustrate the present invention, parts not related to the description are omitted, and similar parts are denoted by like reference characters throughout the specification.

명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성 요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. Throughout the specification, when an element is referred to as " comprising ", it means that it can include other elements as well, without excluding other elements unless specifically stated otherwise.

이하, 도면을 참조하여 본 발명의 실시 예에 따른 동영상 강제 시청을 위한 재생 목록 제공 방법 및 장치에 대하여 설명한다. Hereinafter, a method and apparatus for providing a playlist for forced video viewing according to an embodiment of the present invention will be described with reference to the drawings.

표준 HTTP 프로토콜을 사용해서 클라이언트 주도형 스트리밍 서비스가 많이 이용되고 있으며, 표준 HTTP 프로토콜 관련하여 W3C(World Wide Web Consortium)에서 웹을 통해서 스트리밍 서비스뿐만 아니라 다양한 멀티미디어 서비스를 제공할 수 있는 기능을 포함한 HTML(Hyper Text Markup Language)5에 대한 표준화를 추진 중이다. HTML5에서는 웹 브라우저에 별도의 플러그인(plug-in)없이 동영상을 재생할 수 있도록 비디오 태그와 오디오 태그를 정의하고 있다. 이에 따라 별도의 플러그인을 설치하는 것이 어려운 모바일 단말에서 웹 브라우저를 통해 쉽게 동영상 재생이 가능하게 되었다. HTML5 프로토콜을 사용하여 스트리밍 서비스를 제공하는 방식으로는 HTTP 순차 다운로드(Progressive Download) 방식과, HTTP 라이브 스트리밍(HTTP Live Streaming, 이하 HLS라고 명명함) 방식이 주로 많이 사용되고 있다. HLS 방식은 VOD(video on demand) 및 LIVE 서비스에 모두 적용 가능하다. The client-driven streaming service is widely used by using the standard HTTP protocol. The standard HTTP protocol is used by the World Wide Web Consortium (W3C) to provide a variety of multimedia services as well as streaming services through the web. Text Markup Language). HTML5 defines a video tag and an audio tag so that a web browser can play a video without a separate plug-in. As a result, it is now possible to play back video easily through a web browser in a mobile terminal which is difficult to install a separate plug-in. HTTP streaming (HTTP Live Streaming, hereinafter referred to as HLS) is widely used as a method of providing a streaming service using the HTML5 protocol, such as HTTP sequential download method and HTTP live streaming method. The HLS method is applicable to both video on demand (VOD) and live services.

이러한 HLS 스트리밍 서비스에서 광고를 제공할 수 있다. 일반적으로 동영상 광고를 제공하는 방법으로, 클라이언트는 광고 서버에서 VAST(Video Ad Serving Template)와 같은 광고 템플릿으로 광고 정보를 수신하고, 이 정보를 토대로 적절한 시점에 광고 영상과 콘텐츠 영상을 수신하여 재생하는 방법을 사용한다. 일부 클라이언트는 적절한 시점에 광고 영상의 종료를 알려주지 않으면, 즉, 라이브(Live) 방식으로만 보내면, 자동으로 콘텐츠 영상으로 이동할 수 없다. Such an HLS streaming service can provide advertisements. Generally, as a method of providing a video advertisement, a client receives advertisement information from an advertisement template such as a VAST (Video Ad Serving Template), and receives and reproduces the advertisement image and the content image at an appropriate time based on the information Method. Some clients can not automatically move to the content video if they do not notify the end of the advertisement video at the appropriate time, that is, only in the Live mode.

도 1은 본 발명의 실시 예에 따른 스트리밍 서비스에서 광고 영상을 제공하는 것을 나타낸 도이다. 1 is a diagram illustrating an advertisement image in a streaming service according to an exemplary embodiment of the present invention.

첨부한 도 1에서와 같이, 스트리밍 서비스를 제공하는 경우, 스트리밍 서버는 클라이언트에게 본 영상과 광고 영상을 송출할 수 있다. 1, when the streaming service is provided, the streaming server can transmit the image and the advertisement image to the client.

본 발명의 실시 예에서는 HLS 스트리밍 서비스에서 광고를 제공하는 경우, 광고 전송시에는 “EXT-X-ENDLIST" 지시어를 배제하여 광고를 스킵(skip)할 수 없도록 하고, 광고 종료 시점에 “EXT-X-ENDLIST"지시어를 전송하여 광고 스킵에 의해 본 콘텐츠로 넘어갈 수 있도록 한다. 사용자가 광고의 일부를 건너뛰지 못하게 한다. 클라이언트는 네트워크를 통하여 미디어 데이터(동영상 등)를 수신하고 재생할 수 있는 기능을 가지는 사용자 장비(user equipment)를 나타낸다. 여기서, 동영상 중 광고 영상에 대해 강제 시청이 가능하도록 하는 것을 예로 들어 설명하지만, 본 발명은 반드시 광고 영상에 한정되는 것은 아니며, 강제 시청이 요구되는 모든 미디어 데이터에 적용될 수 있다. In the embodiment of the present invention, when the advertisement is provided by the HLS streaming service, the advertisement can be skipped by excluding the "EXT-X-ENDLIST" directive at the time of advertisement transmission, -ENDLIST " directive to allow the user to skip the content by skipping the advertisement. Prevents users from skipping parts of the ad. A client represents a user equipment having a function of receiving and reproducing media data (video, etc.) through a network. Here, the forced viewing of the advertisement image is described as an example. However, the present invention is not limited to the advertisement image, and can be applied to all media data requiring forced viewing.

HLS 스트리밍 서비스에서, 스트리밍 서버가 미디어 데이터를 클라이언트로 제공하는 경우, 미디어 데이터를 예를 들어, 10초(일반적으로 5초~15초 사용) 정도의 작은 길이를 가지는 파일(예를 들어, MPEG-2 Transport Stream(TS) 파일)로 조각화하고, 조각 파일들의 메타 정보인 재생목록 파일을 클라이언트로 제공한다. 재생목록 파일은 XML (Extensible Markup Language)의 일종인 SMIL(Synchronized Multimedia Integration Language) 문법을 사용하는 M3U8 파일을 사용할 수 있으며, 매니피스트(manifest) 파일이라고도 한다. 하나의 영상 조각파일 즉, 하나의 TS 파일은 188 바이트 크기를 가지는 다수의 TS 패킷으로 구성되며, 하나의 TS 패킷은 헤더(header)와 페이로드(payload)를 포함하며, 헤더는 다양한 정보를 포함한다. 예를 들어, TS 패킷의 페이로드에 보내지는 데이터를 구분하는 PID(packet Identifier)와 CC(continuity counter)를 포함할 수 있다. In the HLS streaming service, when a streaming server provides media data to a client, the media data is recorded in a file having a small length (for example, MPEG- 2 Transport Stream (TS) file), and provides the client with a playlist file that is meta information of the fragmented files. The playlist file can use an M3U8 file that uses SMIL (Synchronized Multimedia Integration Language) syntax, which is a type of XML (Extensible Markup Language), and is also referred to as a manifest file. One video fragment file, i.e., one TS file, is composed of a plurality of TS packets each having a size of 188 bytes. One TS packet includes a header and a payload. The header includes various information do. For example, it may include a PID (packet identifier) and a CC (continuity counter) for distinguishing data to be sent to the payload of the TS packet.

클라이언트는 재생 목록 파일(예: M3U8 파일)을 HTTP 프로토콜을 이용하여 스트리밍 서버로부터 다운로드 받고, 재생 목록 파일에서 지정된 조각 파일(예: TS 파일)들을 스트리밍 서버로부터 다운로드 받아서 순차적으로 이어서 재생을 한다. 이에 따라 사용자는 마치 하나의 큰 파일이 재생되는 것 같이 느끼게 된다. The client downloads the playlist file (e.g., M3U8 file) from the streaming server using the HTTP protocol, downloads the specified fragment file (e.g., TS file) from the playlist file, and sequentially plays back the stream. As a result, the user feels as if a single large file is being played.

한편, iOS를 사용하는 작은 디바이스 등의 클라이언트에서는 재생 목록 파일에 “EXT-X-ENDLIST"가 포함되어 있는지의 여부에 따라, 재생 위치를 이동하는 UI(user interface)(설명의 편의상, 재생 위치 이동 UI라고 명명함)의 보여주기/감추기를 결정한다. 즉, 클라이언트는 재생 목록 파일에 “EXT-X-ENDLIST"가 포함되어 있는 경우에는 재생 위치 이동 UI의 보여주기를 결정하여, 재생 위치 이동 UI를 노출시킨다. 반면, 재생 목록 파일에 “EXT-X-ENDLIST"가 포함되어 있지 않은 경우에는 재생 위치 이동 UI의 감추기를 결정하여, 재생 위치 이동 UI의 노출을 수행하지 않는다. On the other hand, in a client such as a small device using iOS, depending on whether or not "EXT-X-ENDLIST" is included in the playlist file, a UI (user interface) for moving the playback position The client determines to show / hide the playback position movement UI, that is, when the client includes " EXT-X-ENDLIST " in the playlist file, . On the other hand, if the playlist file does not contain " EXT-X-ENDLIST ", the hide of the playback position movement UI is determined and the playback position movement UI is not exposed.

본 발명의 실시 예에서는 iOS를 사용하는 작은 디바이스 등의 클라이언트에서의 “EXT-X-ENDLIST" 처리 동작을 이용하여, 특정 동영상 예를 들어, 광고 영상이 종료될 때까지 클라이언트에서 강제적으로 재생될 수 있도록 한다. In the embodiment of the present invention, by using the " EXT-X-ENDLIST " processing operation in a client such as a small device using iOS, it is possible to forcibly reproduce a specific moving image, for example, .

도 2는 본 발명의 실시 예에 따른 재생 목록 제공 방법의 흐름도이다. 2 is a flowchart of a method of providing a playlist according to an embodiment of the present invention.

첨부한 도 2에 도시된 바와 같이, 스트리밍 서버는 임의 클라이언트로부터 스트리밍 URL(uniform resource locator)에 대해서 스트리밍 요청이 수신되면(S100), 수신된 스트리밍 요청에 대응하는 동영상 파일을 클라이언트에 제공한다. 이 경우, 광고 노출을 위하여 광고 영상에 대응하는 동영상 파일을 먼저 클라이언트로 제공하고 이후에 스트리밍 요청에 대응하는 동영상 파일을 제공할 수 있다. 광고 영상에 대한 동영상 파일을 제공하는 순서가 이것에 한정되지는 않는다. 2, when the streaming server receives a streaming request for a streaming URL (uniform resource locator) from an arbitrary client (S100), the streaming server provides the client with a video file corresponding to the received streaming request. In this case, a video file corresponding to the advertisement video may be provided first to the client for advertisement exposure, and then a video file corresponding to the streaming request may be provided. The order of providing the moving picture file for the advertisement image is not limited to this.

광고 영상에 대한 동영상 파일을 제공하는 경우, 스트리밍 서버는 광고 영상에 대한 동영상 파일을 구성하는 조각 파일의 목록을 포함하는 재생 목록 파일을 제공한다. When providing a video file for the advertisement video, the streaming server provides a playlist file including a list of the fragmented files constituting the video file for the advertisement video.

먼저, 본 발명의 실시 예에서, 스트리밍 서버는 제1 형태의 재생 목록 파일을 제공한다. 즉, 설정 지시어인 “EXT-X-ENDLIST"를 포함하지 않은 제1 형태의 재생 목록 파일을 제공한다(S110). First, in an embodiment of the present invention, the streaming server provides a playlist file of the first type. That is, the first type playlist file not including the setting directive "EXT-X-ENDLIST" is provided (S110).

도 3은 본 발명의 실시 예에 따른 제1 형태의 재생 목록 파일을 나타낸 예시도이다. FIG. 3 is a view illustrating an example of a playlist file according to an embodiment of the present invention.

재생 목록 파일은 도 3에 예시된 바와 같이, 해당 파일이 M3U8 포맷을 사용한다는 것을 나타내는 지시어(#EXTM3U), 제일 먼저 재생해야 하는 파일의 일련 번호를 나타내는 지시어(#EXT-X-MEDIA-SEQUENCE), 목록 파일에 나열되는 각 파일의 최대 재생 시간을 나타내는 지시어(#EXT-X_TARGETDURATION), 해당 지시어의 다음에 나오는 TS 파일의 재생 시간을 나타내는 지시어(#EXTINF)를 포함할 수 있다. 또한, 재생 목록 파일의 호환 가능 버전을 나타내는 지시어(#EXT-X-VERSION)와, 조각 파일(청크 파일)의 캐싱 허용 여부를 나타내는 지시어(#EXT-X-ALLOW-CACHE)를 더 포함할 수 있다. The playlist file includes a directive (# EXTM3U) indicating that the file uses the M3U8 format, a directive (# EXT-X-MEDIA-SEQUENCE) indicating the serial number of the file to be played first, A directive (# EXT-X_TARGETDURATION) indicating the maximum playback time of each file listed in the list file, and a directive (#EXTINF) indicating the playback time of the TS file next to the directive. (# EXT-X-ALLOW-CACHE) indicating whether or not to permit caching of fragmented files (chunk files) can be further included have.

도 3에 예시된 재생 목록 파일에 따르면, 재생할 조각 파일(TS 파일)들이 "media0.ts, media1.ts, media2.ts"이 있고, 목록에 포함된 파일의 최대 재생 시간은 "11초"인, 동영상에 관련된 조각 파일들의 목록(청크(Chunk) 목록이라고도 명명됨)이 포함된다. 조각 파일의 목록은 스트리밍 서비스의 진행 상황을 고려하여 추가적으로 제공된다. According to the playlist file exemplified in Fig. 3, there are " media0.ts, media1.ts, media2.ts ", and the maximum playback time of the files included in the list is " 11 seconds " , And a list (also called a chunk list) of fragmented files associated with the video. The list of fragmented files is additionally provided considering the progress of the streaming service.

한편, 본 발명의 실시 예에서, 스트리밍 서버는 클라이언트의 플레이어에서의 재생 시간을 추적하고, 추적된 재생 시간에 대응하는 조각 파일을 재생 목록에 덧붙일 수 있다. HLS 스트리밍 서비스에서, 클라이언트가 조각 파일을 받을 때마다 새로운 연결을 하기 때문에 특정 클라이언트의 요청이 있었을 때 처음 요청한 시점에 대한 이력관리를 하기 위해서 세션 관리를 수행한다. 이를 위해 재생 목록 파일의 경로 URL에 세션 ID(세션 ID는 세션을 구분할 수 있는 문자열 등의 정보를 나타냄)를 추가한다. 스트리밍 서버는 세션 ID를 '플레이어의 처음 접속 시간', '마지막 요청 시간' 등의 플레이어의 재생 정보를 관리하는 식별자로 사용한다. 스트리밍 서버는 스트리밍 요청에 포함된 스트리밍 URL에 포함되어 있는 세션 ID를 토대로, 해당 요청에 따른 재생 정보를 관리한다. 예를 들어, 해당 세션 ID의 스트리밍 요청이 처음 요청된 시점을 재생 시작 시간으로 설정할 수 있다. On the other hand, in the embodiment of the present invention, the streaming server can track the playback time in the player of the client and add the fragment file corresponding to the tracked playback time to the playlist. In the HLS streaming service, whenever a client receives a fragmented file, a new connection is made. Therefore, when a specific client requests, the session management is performed to manage the history of the first requested time. To do this, add the session ID to the path URL of the playlist file (the session ID represents information such as a string that can identify the session). The streaming server uses the session ID as an identifier for managing player playback information such as 'player's first access time' and 'last requested time'. The streaming server manages playback information according to the request based on the session ID included in the streaming URL included in the streaming request. For example, the point in time at which the streaming request of the corresponding session ID is first requested can be set as the playback start time.

HLS 스트리밍에서, 실제 시간과 동일하게 컨텐츠의 시간이 결정된다. 예를 들어, 재생을 시작한 뒤 n초가 흘렀다면, 스트리밍 서버는 n초에 재생할 조각 파일을 재생 목록 파일에 덧붙인다. 구체적으로, 클라이언트의 플레이어가 언제 재생을 시작했는지를 알고 있다면, 스트리밍 서버는 "현재 시간 - 재생 시작 시간 = 재생 경과 시간"을 알 수 있으며, 재생 경과 시간에 대응하는 조각 파일을 재생 목록 파일에 덧붙일 수 있다. 본 발명의 실시 예에서, 스트리밍 서버는 설정 개수의 조각 파일들의 목록으로 이루어지는 재생 목록 파일을 클라이언트에게 제공한 후에, 재생 시작 시간과 현재 시간을 토대로 재생 경과 시간을 산출하고 재생 경과 시간에 대응하는 조각 파일을 재생 목록 파일에 추가적으로 제공한다. In HLS streaming, the time of content is determined to be equal to the actual time. For example, if n seconds have elapsed since you started playback, the streaming server appends the slice file to play in n seconds to the playlist file. Specifically, if the player of the client knows when playback has started, the streaming server can know the "current time - playback start time = playback elapsed time" and add the fragment file corresponding to the elapsed playback time to the playlist file . In an embodiment of the present invention, after the streaming server provides the client with a playlist file composed of a list of pieces of pieces of pieces of pieces of setting, the streaming server calculates the elapsed playback time based on the playback start time and the current time, The file is additionally provided in the playlist file.

구체적으로, 스트리밍 서버는 도 2에서와 같이, 재생 경과 시간을 산출한 다음에(S120), 재생 경과 시간을 토대로 설정 시점이 경과되었는지를 판단한다(S130). 여기서 설정 시점은 클라이언트에게 현재 재생 중인 영상의 종료를 알려주어야 하는 시점이다. 설정 시점은 예를 들어 다음과 같이 산출될 수 있다.Specifically, as shown in FIG. 2, the streaming server calculates the elapsed playback time (S120), and determines whether the set time has elapsed based on the elapsed playback time (S130). Here, the setting time is a point at which the end of the video currently being reproduced must be notified to the client. The setting time can be calculated, for example, as follows.

Figure 112016086085503-pat00001
Figure 112016086085503-pat00001

여기서, 전체 구간은 클라이언트에 제공하는 동영상 파일이 재생되는 전체 구간을 나타내고, 목표 구간(예를 들어, (EXT-X-TARGETDURATION))은 미디어 세그먼트의 최대 길이를 의미한다.Here, the whole section represents the entire section in which the moving picture file provided to the client is reproduced, and the target section (for example, (EXT-X-TARGETDURATION)) means the maximum length of the media segment.

스트리밍 서버는 재생 경과 시간이 설정 시점을 경과하지 않은 경우에는, 재생 경과 시간에 대응하는 조각 파일을 재생 목록 파일에 덧붙여서 제공한다. 즉, 재생 경과 시간에 대응하는 조각 파일을 재생 목록 파일에 추가적으로 제공하며, 이때, 추가적으로 제공되는 재생 목록 파일은 “EXT-X-ENDLIST"를 포함하지 않은 제1 형태의 재생 목록 파일이다(S140). 따라서, 이러한 제1 형태의 재생 목록 파일이 제공됨에 따라, iOS를 사용하는 작은 디바이스 등의 클라이언트에서는 재생 목록 파일에 “EXT-X-ENDLIST"가 포함되어 있지 않으므로, 재생 위치 이동 UI의 감추기를 수행한다. 그 결과 클라이언트의 플레이어 상에 재생 위치 이동 UI가 표시되지 않음에 따라, 사용자는 재생되는 영상에 대하여 스킵(skip) 등의 재생 위치 변경을 수행할 수 없다. 그러므로 사용자는 클라이언트의 플레이어에서 재생되는 영상을 강제적으로 시청하게 된다. If the elapsed playback time does not pass the set time, the streaming server adds the fragmented file corresponding to the playback elapsed time to the playlist file. That is, the playlist file corresponding to the playback elapsed time is additionally provided to the playlist file. At this time, the playlist file provided additionally is the first type playlist file not including " EXT-X-ENDLIST & . Therefore, as the first type of playlist file is provided, a client such as a small device using iOS does not include " EXT-X-ENDLIST " in the playlist file. . As a result, since the playback position movement UI is not displayed on the player of the client, the user can not perform the playback position change such as skipping with respect to the playback image. Therefore, the user forcibly watches the image reproduced by the player of the client.

한편, 스트리밍 서버는 재생 경과 시간이 설정 시점을 경과한 경우에는, 재생 경과 시간에 대응하는 조각 파일을 재생 목록 파일에 덧붙여서 제공하는데, 구체적으로, 재생 경과 시간에 대응하는 조각 파일을 재생 목록 파일에 추가적으로 제공하면서, 재생 목록 파일을 “EXT-X-ENDLIST"를 포함하는 제2 형태의 재생 목록 파일로 구성하여 제공한다(S150). On the other hand, if the elapsed playback time exceeds the set time, the streaming server adds the fragment file corresponding to the playback elapsed time to the playlist file. Specifically, the streaming server provides the fragment file corresponding to the elapsed playback time to the playlist file And provides the playlist file as a second type playlist file including " EXT-X-ENDLIST " (S150).

도 4는 본 발명의 실시 예에 따른 제2 형태의 재생 목록 파일을 나타낸 예시도이다. 4 is an exemplary view showing a playlist file of a second form according to an embodiment of the present invention.

제2 형태의 재생 목록 파일은 도 4에 예시된 바와 같이, 재생할 조각 파일(TS 파일)들이 "media8.ts, media9.ts, media10.ts"이 있고, 목록에 포함된 파일의 최대 재생 시간은 "11초"인, 조각 파일들의 목록을 제공하면서, 특히, 특정 지시어 "#EXT-X-ENDLIST"를 포함한다. “EXT-X-ENDLIST"는 재생 목록 파일에서 더 이상 재생할 조각 파일이 없음을 나타내는 지시어인데, 본 발명의 실시 예에서는 더 이상 강제적으로 재생되어야 할 조각 파일이 없음을 나타내는 지시어로서 기능하게 된다. As shown in Fig. 4, the playlist file of the second type includes pieces of files (TS files) to be played back as " media8.ts, media9.ts, media10.ts ", and the maximum playback time of the files included in the list Quot ;, " 11 seconds ", and in particular includes a specific directive "# EXT-X-ENDLIST ". &Quot; EXT-X-ENDLIST " is an instruction indicating that there is no more fragmented file to be reproduced in the playlist file. In the embodiment of the present invention, it serves as an indicator indicating that there is no fragmented file to be forcibly reproduced.

이때, 반드시 시청해야 하는 구간에 대응하는 조각 파일들의 목록에서 마지막 조각 파일을 재생 목록 파일에 추가하여 전송하고, 마지막 조각 파일의 재생이 끝나기 직전에 재생 목록 파일에 "EXT-X-ENDLIST" 를 추가할 수 있다. At this time, the last fragment file is added to the play list file in the list of fragment files corresponding to the section to be necessarily viewed, and "EXT-X-ENDLIST" is added to the play list file immediately before the reproduction of the last fragment file ends can do.

이러한 제2 형태의 재생 목록 파일이 제공됨에 따라, iOS를 사용하는 작은 디바이스 등의 클라이언트에서는 재생 목록 파일에 “EXT-X-ENDLIST"가 포함되어 있으므로, 재생 위치 이동 UI의 보여주기를 수행한다. 그 결과 클라이언트의 플레이어 상에 재생 위치 이동 UI가 표시됨에 따라, 사용자는 재생되는 영상에 대하여 스킵 등의 재생 변경을 수행할 수 있다. As the second type of playlist file is provided, a client such as a small device using iOS includes "EXT-X-ENDLIST" in the playlist file, so the playback position movement UI is displayed. As a result, the playback position movement UI is displayed on the player of the client, so that the user can perform playback change such as skipping on the image to be played back.

이러한 과정을 통하여, 동영상 파일에서 반드시 재생되어야 하는 구간에 대응하는 조각 파일들의 리스트를 제공할 경우에는 “EXT-X-ENDLIST"가 포함되지 않은 제1 형태의 재생 목록 파일을 제공하고, 반드시 재생되어야 하는 구간이 종료되는 경우에는 “EXT-X-ENDLIST"가 포함된 제2 형태의 재생 목록 파일을 제공함으로써, 클라이언트에서 해당 구간의 강제적 재생이 가능하도록 한다. Through this process, when providing a list of fragmented files corresponding to a section that must be reproduced in the moving image file, the first type of playlist file not including " EXT-X-ENDLIST "Quot; EXT-X-ENDLIST " is provided, the client can forcibly reproduce the corresponding section by providing the second-type playlist file.

한편, 재생 경과 시간이 설정 시점을 경과하여 “EXT-X-ENDLIST"를 포함하는 제2 형태의 재생 목록 파일을 제공한 다음에, 스트리밍 서버는 이후 재생 경과 시간에 따라 대응하는 조각 파일들의 리스트를 포함하는 재생 목록 파일을 제공하면서 해당 동영상 파일의 마지막 조각 파일 이후에 “EXT-X-ENDLIST"를 추가적으로 제공하여, 해당 조각 파일이 마지막 재생 파일임을 표시할 수도 있다. On the other hand, after the reproduction elapsed time has elapsed from the set time point, the streaming server provides the second type of playlist file including " EXT-X-ENDLIST "Quot; EXT-X-ENDLIST " after the last fragmented file of the corresponding movie file while providing a playlist file containing the fragmented file, indicating that the fragmented file is the last reproduced file.

도 5는 본 발명의 실시 예에 따른 재생 목록 제공 장치의 구조를 나타낸 도이다. 5 is a diagram illustrating a structure of a playlist providing apparatus according to an embodiment of the present invention.

본 발명의 실시 예에 따른 재생 목록 제공 장치 (100)는, 도 5에서와 같이, 프로세서(11), 메모리(12) 및 송수신부(13)를 포함한다. 프로세서(11)는 위의 도 1 내지 도 4를 토대로 설명한 방법들을 구현하도록 구성될 수 있다. The apparatus 100 for providing playlists according to the embodiment of the present invention includes a processor 11, a memory 12 and a transceiver 13 as shown in Fig. The processor 11 may be configured to implement the methods described above based on Figs.

이를 위하여, 프로세서(11)는 요청 수신부(110), 재생 경과 시간 산출부(120), 재생 목록 생성부(130), 재생 목록 제공부(140)를 포함한다. The processor 11 includes a request receiving unit 110, a playback elapsed time calculating unit 120, a playlist generating unit 130, and a playlist providing unit 140.

요청 수신부(110)는 클라이언트로의 스트리밍 요청을 수신하도록 구성된다. The request receiving unit 110 is configured to receive a streaming request to the client.

재생 경과 시간 산출부(120)는 클라이언트의 재생 시작 시간부터 현재 시간을 토대로 해당 동영상의 재생 경과 시간을 산출하도록 구성된다. The playback elapsed time calculating unit 120 is configured to calculate the playback elapsed time of the moving picture based on the current time from the playback start time of the client.

재생 목록 생성부(130)는 재생 경과 시간과 설정 시점을 비교하고 그 결과에 따라 제1 형태의 재생 목록 파일을 생성하거나 제2 형태의 재생 목록 파일을 생성하도록 구성된다. 재생 경과 시간이 설정 시점을 경과하지 않은 경우에는 설정 지시어인 “EXT-X-ENDLIST"를 포함하지 않는 제1 형태의 재생 목록 파일을 생성하고, 재생 경과 시간이 설정 시점을 경과한 경우에는 “EXT-X-ENDLIST"를 포함하는 제2 형태의 재생 목록 파일을 생성한다. The playlist generating unit 130 is configured to compare the elapsed playback time with the set point and generate a playlist file of the first type or generate a playlist file of the second type according to the result. EXT-X-ENDLIST ", if the playback elapsed time does not pass the set time, generates a first-type play list file that does not include the setting directive " EXT-X-ENDLIST "Quot; -X-ENDLIST ".

재생 목록 제공부(140)는 재생 목록 생성부(130)에 의해 전달되는 재생 목록 파일을 클라이언트로 제공하도록 구성된다. The playlist providing unit 140 is configured to provide the playlist file delivered by the playlist creating unit 130 to the client.

메모리(12)는 프로세서(11)와 연결되고 프로세서(11)의 동작과 관련한 다양한 정보를 저장한다. 송수신부(13)는 프로세서(11)와 연결되며 네트워크를 통하여 클라이언트와의 신호 송수신을 수행한다. The memory 12 is connected to the processor 11 and stores various information related to the operation of the processor 11. [ The transmission / reception unit 13 is connected to the processor 11 and transmits / receives signals to / from the client via the network.

본 발명의 실시 예는 이상에서 설명한 장치 및/또는 방법을 통해서만 구현이 되는 것은 아니며, 본 발명의 실시예의 구성에 대응하는 기능을 실현하기 위한 프로그램, 그 프로그램이 기록된 기록 매체 등을 통해 구현될 수도 있으며, 이러한 구현은 앞서 설명한 실시예의 기재로부터 본 발명이 속하는 기술분야의 전문가라면 쉽게 구현할 수 있는 것이다.The embodiments of the present invention are not limited to the above-described apparatuses and / or methods, but may be implemented through a program for realizing functions corresponding to the configuration of the embodiment of the present invention, a recording medium on which the program is recorded And such an embodiment can be easily implemented by those skilled in the art from the description of the embodiments described above.

이상에서 본 발명의 실시 예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments, It belongs to the scope of right.

Claims (12)

클라이언트에게 동영상 재생을 위한 재생 목록 파일을 제공하는 방법에서,
상기 클라이언트로부터의 스트리밍 요청에 따라 해당 동영상의 조각 파일들 목록을 포함하는 제1 형태의 재생 목록 파일을 상기 클라이언트로 제공하는 단계;
상기 클라이언트에서의 재생이 설정 시점을 경과하였는지를 판단하는 단계; 및
상기 설정 시점을 경과한 경우, 재생하여야 할 조각 파일의 목록을 포함하는 제2 형태의 재생 목록 파일을 상기 클라이언트로 제공하는 단계
를 포함하며,
상기 제1 형태의 재생 목록 파일은 설정 지시어를 포함하지 않고, 상기 제2 형태의 재생 목록 파일은 상기 설정 지시어를 포함하며, 상기 설정 시점은 클라이언트에 제공하는 상기 동영상에서 반드시 재생되어야 하는 구간을 토대로 설정되는, 방법.
In a method of providing a client with a playlist file for playing a movie,
Providing a client with a first type of playlist file including a list of fragmented files of a corresponding video according to a streaming request from the client;
Determining whether playback of the client has passed a set time; And
Providing a second type of playlist file to the client, the second type of playlist file including a list of fragmented files to be played back if the set time has elapsed
/ RTI >
Wherein the playlist file of the first type does not include a setting directive, the playlist file of the second type includes the setting directive, and the setting time is based on an interval that must be reproduced in the moving picture provided to the client .
제1항에 있어서,
상기 설정 지시어는 재생 목록 파일에서 더 이상 재생할 조각 파일이 없음을 나타내는 EXT-X-ENDLIST"인, 방법.
The method according to claim 1,
Wherein the setting directive is EXT-X-ENDLIST " indicating that there is no more fragmented file to be reproduced in the playlist file.
제2항에 있어서,
상기 클라이언트에서의 재생이 설정 시점을 경과하였는지를 판단하는 단계는,
재생 경과 시간을 산출하는 단계; 및
상기 재생 경과 시간이 상기 설정 시점을 경과하였는지를 판단하는 단계
를 포함하며,
상기 재생 경과 시간은 현재 시간에서 재생 시작 시간을 감산하여 획득되는, 방법.
3. The method of claim 2,
Wherein the step of determining whether playback of the client has exceeded a set time,
Calculating a reproduction elapsed time; And
Determining whether the playback elapsed time has passed the set time point
/ RTI >
Wherein the playback elapsed time is obtained by subtracting the playback start time from the current time.
제1항에 있어서,
상기 설정 시점은 설정 시점 = 전체 구간 - (목표 구간 × 1/2)의 조건을 토대로 산출되며, 상기 전체 구간은 클라이언트에 제공하는 동영상이 재생되는 전체 구간을 나타내고, 상기 목표 구간은 미디어 세그먼트의 최대 길이인, 방법.
The method according to claim 1,
The set time is calculated based on a condition of a set time = total time - (target time x 1/2), the whole time represents a whole time period in which a moving picture to be provided to a client is played back, Length.
제1항에 있어서,
상기 제2 형태의 재생 목록 파일을 상기 클라이언트로 제공하는 단계는,
상기 동영상에서 반드시 재생되어야 하는 구간에 대응하는 조각 파일들의 목록에서 마지막 조각 파일을 재생 목록 파일에 추가하여 상기 제1 형태의 재생 목록 파일을 제공하는 단계; 및
상기 마지막 조각 파일의 재생이 끝나기 직전에 상기 설정 지시어를 재생 목록 파일에 추가하여 상기 제2 형태의 재생 목록 파일을 제공하는 단계
를 포함하는, 방법.
The method according to claim 1,
Wherein providing the second type of playlist file to the client comprises:
Providing a playlist file of the first type by adding a last fragment file to a playlist file from a list of fragment files corresponding to a section that must be played back in the movie; And
Adding the setting directive to the playlist file immediately before the end of the play of the last fragment file to provide the playlist file of the second form
/ RTI >
제1항에 있어서,
상기 클라이언트는 동영상 재생시 전체 화면에 대해 재생 위치를 이동하는 UI(user interface)를 제공하는 디바이스이며, 상기 재생 목록 파일에 상기 설정 지시어가 포함되어 있지 않으면 상기 UI를 상기 전체 화면에 표시하지 않는 감추기를 수행하고, 상기 재생 목록 파일에 상기 설정 지시어가 포함되어 있으면 상기 UI를 상기 전체 화면에 표시하는 보여주기를 수행하는, 방법.
The method according to claim 1,
The client is a device for providing a user interface (UI) for moving a playback position with respect to the entire screen when playing a moving image, and when the setting directive is not included in the playlist file, And displaying the UI on the full screen if the playlist file includes the setting directive.
클라이언트에게 동영상 재생을 위한 재생 목록 파일을 제공하는 장치에서,
네트워크를 통하여 신호를 송수신하는 신호 송수신부; 그리고
상기 송수신부와 연결되고, 재생 목록 파일 제공 처리를 수행하는 프로세서를 포함하며,
상기 프로세서는,
상기 클라이언트로부터의 스트리밍 요청을 수신하는 요청 수신부;
상기 스트리밍 요청에 따라 해당 동영상의 조각 파일들 목록을 포함하는 제1 형태의 재생 목록 파일 또는 제2 형태의 재생 목록 파일을 생성하는 재생 목록 생성부; 및
상기 클라이언트에서의 재생이 설정 시점을 경과하지 않은 경우에는 상기 제1 형태의 재생목록 파일을 제공하고, 상기 재생이 상기 설정 시점을 경과하지 않은 경우에는 상기 제2 형태의 재생 목록 파일을 상기 클라이언트로 제공하는 재생 목록 제공부
를 포함하며,
상기 제1 형태의 재생 목록 파일은 설정 지시어를 포함하지 않고, 상기 제2 형태의 재생 목록 파일은 상기 설정 지시어를 포함하며, 상기 설정 시점은 클라이언트에 제공하는 상기 동영상에서 반드시 재생되어야 하는 구간을 토대로 설정되는, 장치.
In a device for providing a client with a playlist file for playing a movie,
A signal transmitting / receiving unit for transmitting / receiving a signal through a network; And
A processor coupled to the transceiver and performing a playlist file providing process,
The processor comprising:
A request receiving unit for receiving a streaming request from the client;
A playlist generating unit for generating a playlist file of a first type or a playlist file of a second type including a list of fragmented files of a corresponding video according to the streaming request; And
If the playback of the client does not pass the set time, providing the playlist file of the first type, and if the playout does not pass the set time, transmitting the playlist file of the second type to the client Provided playlist offerings
/ RTI >
Wherein the playlist file of the first type does not include a setting directive, the playlist file of the second type includes the setting directive, and the setting time is based on an interval that must be reproduced in the moving picture provided to the client Set.
제7항에 있어서,
상기 설정 지시어는 재생 목록 파일에서 더 이상 재생할 조각 파일이 없음을 나타내는“EXT-X-ENDLIST"인, 장치.
8. The method of claim 7,
Wherein the setting directive is " EXT-X-ENDLIST " indicating that there is no fragmented file to be played back in the playlist file.
제7항에 있어서,
상기 프로세서는
현재 시간에서 재생 시작 시간을 감산하여 재생 경과 시간을 산출하는 재생 경과 시간 산출부
를 포함하고,
상기 재생 목록 제공부는 상기 재생 경과 시간이 상기 설정 시점을 경과하였는지를 판단하고 그 결과에 따라 상기 제1 형태 또는 제2 형태의 재생 목록 파일을 제공하는, 장치.
8. The method of claim 7,
The processor
A playback elapsed time calculating unit for calculating a playback elapsed time by subtracting a playback start time from a current time,
Lt; / RTI >
Wherein the playlist providing unit determines whether the elapsed playback time has passed the set time point and provides the playlist file of the first or second type according to a result of the determination.
제7항에 있어서,
상기 설정 시점은 설정 시점 = 전체 구간 - (목표 구간 × 1/2)의 조건을 토대로 산출되며, 상기 전체 구간은 클라이언트에 제공하는 동영상이 재생되는 전체 구간을 나타내고, 상기 목표 구간은 미디어 세그먼트의 최대 길이인, 장치.
8. The method of claim 7,
The set time is calculated based on a condition of a set time = total time - (target time x 1/2), the whole time represents a whole time period in which a moving picture to be provided to a client is played back, Length.
제7항에 있어서,
상기 재생 목록 제공부는,
상기 동영상에서 반드시 재생되어야 하는 구간에 대응하는 조각 파일들의 목록에서 마지막 조각 파일을 재생 목록 파일에 추가하여 상기 제1 형태의 재생 목록 파일을 제공하고, 상기 마지막 조각 파일의 재생이 끝나기 직전에 상기 설정 지시어를 재생 목록 파일에 추가하여 상기 제2 형태의 재생 목록 파일을 제공하는, 장치.
8. The method of claim 7,
Wherein the playlist providing unit comprises:
The playlist file of the first type is added by adding the last fragment file to the playlist file in the list of fragment files corresponding to the section to be necessarily reproduced in the moving picture, And adds a directive to the playlist file to provide the playlist file of the second type.
제7항에 있어서,
상기 클라이언트는 동영상 재생시 전체 화면에 대해 재생 위치를 이동하는 UI(user interface)를 제공하는 디바이스이며, 상기 재생 목록 파일에 상기 설정 지시어가 포함되어 있지 않으면 상기 UI를 상기 전체 화면에 표시하지 않는 감추기를 수행하고, 상기 재생 목록 파일에 상기 설정 지시어가 포함되어 있으면 상기 UI를 상기 전체 화면에 표시하는 보여주기를 수행하는, 장치.

8. The method of claim 7,
The client is a device for providing a user interface (UI) for moving a playback position with respect to the entire screen when playing a moving image, and when the setting directive is not included in the playlist file, And displays the UI on the full screen if the playlist file includes the setting directive.

KR1020160113464A 2016-09-02 2016-09-02 Method and apparatus for providing playing list to force viewers to watch video KR101936384B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160113464A KR101936384B1 (en) 2016-09-02 2016-09-02 Method and apparatus for providing playing list to force viewers to watch video

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160113464A KR101936384B1 (en) 2016-09-02 2016-09-02 Method and apparatus for providing playing list to force viewers to watch video

Publications (2)

Publication Number Publication Date
KR20180026287A KR20180026287A (en) 2018-03-12
KR101936384B1 true KR101936384B1 (en) 2019-01-08

Family

ID=61729138

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160113464A KR101936384B1 (en) 2016-09-02 2016-09-02 Method and apparatus for providing playing list to force viewers to watch video

Country Status (1)

Country Link
KR (1) KR101936384B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102144527B1 (en) * 2019-02-27 2020-08-13 주식회사 솔박스 Method and apparatus for server based advertisement provision
KR102526605B1 (en) * 2021-02-10 2023-05-02 주식회사 엘지유플러스 Method of provding advertisement

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101501860B1 (en) 2010-11-30 2015-03-11 모토로라 모빌리티 엘엘씨 A method of targeted ad insertion using http live streaming protocol
KR101610862B1 (en) 2015-01-23 2016-04-08 주식회사 솔박스 Method and apparatus for inserting advertisement in streaming service

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101501860B1 (en) 2010-11-30 2015-03-11 모토로라 모빌리티 엘엘씨 A method of targeted ad insertion using http live streaming protocol
KR101610862B1 (en) 2015-01-23 2016-04-08 주식회사 솔박스 Method and apparatus for inserting advertisement in streaming service

Also Published As

Publication number Publication date
KR20180026287A (en) 2018-03-12

Similar Documents

Publication Publication Date Title
US9992537B2 (en) Real-time tracking collection for video experiences
CN108702537B (en) System for video playback using server generated manifest
KR101750049B1 (en) Method and apparatus for adaptive streaming
KR101837687B1 (en) Method and apparatus for adaptive streaming based on plurality of elements determining quality of content
KR101737084B1 (en) Method and apparatus for streaming by inserting another content to main content
CN107835156B (en) Method and device for streaming media transmission processing
KR101786050B1 (en) Method and apparatus for transmitting and receiving of data
RU2652099C2 (en) Transmission device, transmission method, reception device and reception method
US8990849B2 (en) Advertisement insertion into media content for streaming
KR101573333B1 (en) Method and apparatus to provide contents sharing service
US20080212937A1 (en) Content Distribution System, Content Distribution Method, Content Distribution Server, Content Reproduction Apparatus, Content Distribution Program, And Content Reproduction Program
US20120011225A1 (en) Method and apparatus for providing broadcast content and system using the same
KR20120119790A (en) Method and apparatus for media data transmission, and method and apparatus for media data reception
US9961415B2 (en) Method and system for identifying events in a streaming media program
KR102085192B1 (en) Rendering time control
CN103747285A (en) Program playing method, server side and client
JP2013192062A (en) Video distribution system, video distribution apparatus, video distribution method and program
US12022169B2 (en) Real-time ad tracking proxy
JP2004272712A (en) Receiving device and information browsing method
KR101666918B1 (en) Method and apparatus for skip and seek processing in streaming service
KR101936384B1 (en) Method and apparatus for providing playing list to force viewers to watch video
KR101841259B1 (en) Method and apparatus for tracking video playing of client
KR101940973B1 (en) System for event based target advertising
KR20130103931A (en) Advance metadata provision augmented broadcasting apparatus and method
JP6091777B2 (en) Video receiving apparatus, video transmission / reception system, and video receiving method

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