KR20150146353A - Playback point change method of user apparatus - Google Patents
Playback point change method of user apparatus Download PDFInfo
- Publication number
- KR20150146353A KR20150146353A KR1020140127805A KR20140127805A KR20150146353A KR 20150146353 A KR20150146353 A KR 20150146353A KR 1020140127805 A KR1020140127805 A KR 1020140127805A KR 20140127805 A KR20140127805 A KR 20140127805A KR 20150146353 A KR20150146353 A KR 20150146353A
- Authority
- KR
- South Korea
- Prior art keywords
- segment
- media content
- media player
- time
- media
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/238—Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
- H04N21/2387—Stream processing in response to a playback request from an end-user, e.g. for trick-play
-
- 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, manipulating MPEG-4 scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/234345—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements the reformatting operation being performed only on part of the stream, e.g. a region of the image or a time segment
Abstract
Description
아래의 설명은 미디어 플레이어의 재생 시점 변경 방법에 관한 것으로, 웹 환경에서 다중 시점을 가지는 영상의 스트리밍 서비스에서 시점 변경에 따른 시간 지연을 최소화하기 위한 재생 시점 변경 방법에 관한 것이다.The following description relates to a method of changing a playback point of a media player, and relates to a playback point-in-time changing method for minimizing a time delay due to a point-in-time change in a streaming service of an image having multiple points of view in a web environment.
최근에는 별도의 서버를 통해 사용자가 원하는 콘텐츠를 전송받아 재생하는 웹 기반의 스트리밍 서비스가 대중화되어 널리 사용된다.In recent years, a web-based streaming service for receiving and reproducing contents desired by a user through a separate server has become popular and widely used.
스트리밍 서비스는 크게 프로그레시브 다운로드 방식과 DASH(Dynamic Adaptive Streaming over HTTP) 방식으로 구분되며, 최근에는 프로그레시브 다운로드 방식에서 DASH 방식으로 교체되어가고 있다. 여기서, 프로그레시브 다운로드 방식은 사용자가 동영상을 요청하면 파일이 다운로드 되면서 재생되는 방식으로, 구현이 간단하고 별도의 실시간 인코딩 작업이 필요 없기 때문에 빠르다는 장점이 있다. 그러나 사용자가 재생시간을 이동(Seek)시키거나 다른 시점의 영상으로 변경하는 경우, 그 시점까지 영상을 다운로드 하는 지연이 발생하여 반응성이 떨어지는 문제가 발생한다.The streaming service is divided into a progressive download method and a dynamic adaptive streaming over HTTP (DASH) method. Recently, the progressive download method has been replaced with the DASH method. Here, the progressive downloading method is a method in which a file is downloaded and reproduced when a user requests a video, which is simple because it is simple and requires no separate real-time encoding operation. However, when the user changes the playback time to an image at a different point in time, there is a delay in downloading the image up to that point of time, resulting in a problem of poor responsiveness.
또한, 프로그레시브 다운로드 방식은 다른 시점의 카메라 영상으로 변경할 경우, 세션이 다시 연결되면서 중간 재생이 끊겨 서비스의 QoS (Quality of Service)가 보장되지 못하는 문제점도 있다.In addition, when the progressive download method is changed to a camera image at another point of time, there is a problem that quality of service (QoS) of a service can not be guaranteed due to interruption of intermediate playback while the session is connected again.
이에 따라 최근에는 HTTP 적응적 스트리밍 기법인 DASH 방식이 사용된다. DASH 방식은 서버로부터 사용자가 네트워크 환경에 따라 적절한 비트레이트의 영상을 스트리밍 서비스 받는다.Accordingly, the DASH scheme, which is an HTTP adaptive streaming scheme, is recently used. In the DASH method, a user receives streaming service of a video having an appropriate bit rate according to the network environment from the server.
그러나, 다중 시점 영상 스트리밍 서비스의 경우, DASH 방식은 버퍼링된 이전 영상이 다 소비된 후에 다음 세그먼트가 재생이 되기 때문에, 영상 시점 변경의 반응성이 떨어지는 문제점이 존재한다.However, in the case of the multi-view image streaming service, the DASH scheme has a problem that the reactivity of the image viewpoint change becomes poor because the next segment is reproduced after the buffered previous image is consumed.
다중 시점을 갖는 영상의 시점 변경에 다운로드 지연에 대한 반응성을 향상시키기 위해 DASH 방식을 이용함으로써, 보다 빠르고, 부드럽게 화면이 전환되도록 버퍼를 제어하는 미디어 플레이어의 재생 시점 변경 방법을 제공할 수 있다.It is possible to provide a method of changing a playback point of a media player that controls the buffer so that the screen is switched more quickly and smoothly by using the DASH scheme to improve the responsiveness to the download delay in changing the viewpoint of an image having multiple viewpoints.
부드럽게 화면이 전환되도록 버퍼에 저장된 영상에 대한 세그먼트를 제어함으로써, 끊김 없는 재생을 보장함에 따른 스트리밍 서비스의 QoS를 향상시키는 미디어 플레이어의 재생 시점 변경 방법을 제공할 수 있다.It is possible to provide a method of changing the playback point of the media player that improves the QoS of the streaming service by ensuring seamless playback by controlling the segment of the video stored in the buffer so that the screen is switched smoothly.
일실시예에 따른 미디어 플레이어의 재생 시점 변경 방법은 미디어 콘텐츠에 대한 제어 요청에 대응하여 서버로부터 수신한 미디어 콘텐츠의 상태 정보를 분석하는 단계; 상기 제어 요청에 따른 분석한 상태 정보 및 미디어 콘텐츠에 대한 요청 시간을 이용하여 서버에 미디어 콘텐츠의 세그먼트를 요청하는 단계; 미디어 플레이어를 통해 디스플레이 되는 상기 세그먼트의 재생 시점에 대한 변경 여부를 확인하는 단계; 및 상기 확인 결과에 따라 상기 분석한 상태 정보 및 상기 미디어 플레이어의 버퍼 상태 정보를 이용하여 변경하고자 하는 상기 세그먼트의 재생 시점에 따른 세그먼트를 상기 서버에 요청하는 단계를 포함하고, 상기 서버는, 상기 요청된 미디어 콘텐츠의 재생 시점 또는 요청 시간에 따른 세그먼트를 상기 미디어 플레이어에 전달할 수 있다.According to another aspect of the present invention, there is provided a method of changing a playback time of a media player, the method comprising: analyzing status information of media content received from a server in response to a control request for media content; Requesting a segment of the media content to the server using the analyzed status information and the request time for the media content according to the control request; Confirming whether or not the playback time of the segment displayed through the media player is changed; And requesting the server for a segment according to the playback time of the segment to be changed using the analyzed state information and the buffer state information of the media player according to the result of the checking, The media player can transmit a segment according to a playback time or a request time of the media content to the media player.
일실시예에 따른 변경 시점에 따른 세그먼트를 상기 서버에 요청하는 단계는 상기 미디어 콘텐츠의 재생 시점이 변경되는 경우, 상기 미디어 플레이어의 버퍼에 저장된 세그먼트 중 상기 요청된 미디어 콘텐츠의 재생 시점에 따른 세그먼트가 미디어 플레이어에 수신되어 재생되는 준비 시간에 재생될 세그먼트를 제외한 나머지 세그먼트를 삭제할 수 있다.The step of requesting the server for a segment according to a change time according to an embodiment may include: when a playback point of the media content is changed, a segment corresponding to a playback point of the requested media content among the segments stored in the buffer of the media player It is possible to delete the segments other than the segment to be reproduced at the preparation time, which is received and reproduced by the media player.
일실시예에 따른 준비 시간은 상기 미디어 플레이어를 통해 재생 중인 세그먼트 이후에 재생되는 세그먼트의 첫 프레임 요청 시간, 상기 재생 중인 세그먼트의 요청 시간 및 미디어 콘텐츠를 제공하기 위한 버퍼링 시간을 기반으로 결정될 수 있다.The preparation time according to an embodiment may be determined based on a request time of a first frame of a segment reproduced after a segment being reproduced through the media player, a request time of the segment being reproduced, and a buffering time for providing the media content.
일실시예에 따른 재생될 세그먼트는 상기 미디어 플레이어의 버퍼에 저장된 세그먼트의 요청 시간 및 상기 준비 시간을 기반으로 상기 재생될 세그먼트가 결정될 수 있다.A segment to be reproduced according to an embodiment may be determined based on a request time of a segment stored in the buffer of the media player and the preparation time.
일실시예에 따른 서버는 적어도 하나의 미디어 콘텐츠에 대하여 서로 다른 재생 시점에 따른 요청 시간을 고려하여 각각의 세그먼트로 분할하여 저장할 수 있다.The server according to an embodiment may divide and store the at least one media content in each segment in consideration of a request time according to different playback time points.
일실시예에 따른 미디어 콘텐츠의 상태 정보는 상기 미디어 콘텐츠의 시점 정보, 상기 미디어 콘텐츠의 요청 시간 정보, 상기 미디어 콘텐츠의 세그먼트 정보, 상기 미디어 콘텐츠의 해상도 정보, 상기 미디어 콘텐츠의 프레임률 정보 중 적어도 하나를 포함할 수 있다.The status information of the media content according to one embodiment includes at least one of the viewpoint information of the media content, the request time information of the media content, the segment information of the media content, the resolution information of the media content, . ≪ / RTI >
미디어 플레이어의 재생 시점 변경 방법은 다중 시점을 갖는 영상의 시점 변경의 지연에 대한 반응성을 향상시키기 위해 DASH 방식을 이용함으로써, 보다 빠르고, 부드럽게 화면이 전환되도록 버퍼를 제어할 수 있다. The method of changing the reproduction time of the media player can control the buffer to switch the screen more quickly and smoothly by using the DASH method in order to improve the responsiveness to the delay of the viewpoint change of the multi-viewpoint image.
미디어 플레이어의 재생 시점 변경 방법은 부드럽게 화면이 전환되도록 버퍼에 저장된 영상에 대한 세그먼트를 제어함으로써, 끊김 없는 재생을 보장함에 따라 스트리밍 서비스의 QoS를 향상시킬 수 있다.The method of changing the playback point of the media player can improve the QoS of the streaming service by ensuring seamless playback by controlling the segment of the video stored in the buffer so that the screen is switched smoothly.
도 1은 일실시예에 따른 미디어 플레이어와 서버를 도시한 도면이다.
도 2는 일실시예에 따른 미디어 플레이어의 재생 시점 변경 방법에 관한 플로우 차트이다.
도 3은 일실시예에 따른 미디어 플레이어의 버퍼에 저장된 미디어 콘텐츠에 대한 세그먼트를 설명하기 위한 도면이다.
도 4는 일실시예에 따른 미디어 플레이어의 구현하기 위한 세부 구성도를 도시한 도면이다.1 is a diagram illustrating a media player and a server according to an exemplary embodiment of the present invention.
2 is a flowchart illustrating a method of changing a playback time of a media player according to an embodiment.
3 is a view for explaining a segment of a media content stored in a buffer of a media player according to an exemplary embodiment of the present invention.
FIG. 4 is a detailed block diagram of a media player according to an exemplary embodiment of the present invention. Referring to FIG.
이하, 본 발명의 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 1은 일실시예에 따른 미디어 플레이어와 서버를 도시한 도면이다.1 is a diagram illustrating a media player and a server according to an exemplary embodiment of the present invention.
도 1을 참고하면, 미디어 플레이어(101)는 상태 정보 분석부(102), 제1 요청부(103), 재생 시점 확인부(104) 및 제2 요청부(105)를 포함할 수 있다.1, the
상태 정보 분석부(102)는 미디어 콘텐츠에 대한 제어 요청에 대응하여 서버로부터 수신한 미디어 콘텐츠의 상태 정보를 분석할 수 있다. 미디어 콘텐츠의 상태 정보는 파일 형태로 미디어 콘텐츠의 시점 정보, 미디어 콘텐츠의 요청 시간 정보, 미디어 콘텐츠의 세그먼트 정보, 미디어 콘텐츠의 해상도 정보, 미디어 콘텐츠의 프레임률 정보 등을 포함할 수 있다. 일례로, 미디어 콘텐츠의 상태 정보는 MPD(Media Presentation Description) 파일로써, 미디어 콘텐츠에 대한 세부적인 정보를 포함할 수 있다.The status
제1 요청부(103)는 제어 요청에 따라 미디어 콘텐츠에 대한 요청 시간을 측정하고, 측정된 요청 시간에 따른 미디어 콘텐츠의 세그먼트를 서버에 요청할 수 있다. 다시 말해, 제1 요청부(103)는 미디어 콘텐츠를 재생하기 위한 최초 동작에 따른 1회에 한하여 현재 시작 위치에 따른 요청 시간을 측정할 수 있다.The first requesting
그리고, 제1 요청부(103)는 사용자의 미디어 콘텐츠에 대한 제어 요청에 따라 서버(106)로부터 제어 요청에 대응하는 미디어 콘텐츠의 세그먼트를 다운로드 할 수 있다. 여기서, 미디어 콘텐츠의 세그먼트는 사용자의 네트워크 환경에 따른 서로 다른 비트레이트의 콘텐츠를 스트리밍 서비스에 적합하도록 분할된 단위를 의미할 수 있다.The first requesting
즉, 서버(106)는 비트레이트의 콘텐츠에 대한 관리의 효율성을 높이기 위해 각각의 콘텐츠를 세그먼트 단위로 분할할 수 있다. 그리고, 미디어 플레이어(101)는 제어 요청에 따라 서버(106)로부터 미디어 콘텐츠에 대하여 세그먼트 단위로 다운로드 할 수 있다. 그리고, 미디어 플레이어(101)는 서버(106)로부터 다운로드 한 미디어 콘텐츠의 세그먼트를 버퍼에 저장하고, 버퍼에 저장된 미디어 콘텐츠의 세그먼트를 화면에 렌더링하여 사용자에게 제공할 수 있다.That is, the
재생 시점 확인부(104)는 현재 디스플레이 되고 있는 세그먼트의 재생 시점에 대한 변경 여부를 확인할 수 있다. 여기서, 세그먼트의 재생 시점은 사용자에 의해 재생 시간이 이동(Seek)되거나, 다른 시점의 영상으로 변경되는 것을 의미할 수 있다.The playback
또한, 제2 요청부(105)는 확인 결과에 따라 상기 분석한 상태 정보 및 상기 미디어 플레이어의 버퍼 상태 정보를 이용하여 변경하고자 하는 상기 세그먼트의 재생 시점에 따른 세그먼트를 상기 서버에 요청할 수 있다. 그리고, 제2 요청부(105)는 미디어 콘텐츠의 세그먼트에 대한 재생 시점 변경에 대응하여 서버(106)로부터 변경된 재생 시점에 대한 미디어 콘텐츠의 세그먼트를 다운로드 할 수 있다.In addition, the second requesting
도 2는 일실시예에 따른 미디어 플레이어의 재생 시점 변경 방법에 관한 플로우 차트이다.2 is a flowchart illustrating a method of changing a playback time of a media player according to an embodiment.
단계(201)에서 서버(106)는 미디어 플레이어(101)로부터 요청되는 제어 요청에 따라 실시간으로 미디어 콘텐츠의 세그먼트를 제공하기 위해 복수의 미디어 콘텐츠의 세그먼트를 관리할 수 있다. 구체적으로, 서버(106)는 DASH 기반의 다중 시점 스트리밍 서비스를 제공하기 위해 미디어 콘텐츠에 대하여 DASH 포맷의 세그먼트로 조각 내어 서버 내에 존재하거나 별도로 존재하는 저장소에 저장한 후, 저장된 세그먼트를 관리할 수 있다.In
그리고, 미디어 플레이어(101)는 실시간으로 미디어 콘텐츠에 대한 제어 요청을 서버(106)에 전달할 수 있다. 이 때, 미디어 플레이어(101)는 웹 사이트를 통해 사용자가 원하는 미디어 콘텐츠에 대한 제어 요청을 서버(106)에 전달할 수 있다. 그리고, 서버(106)는 전달된 제어 요청에 대응하여 해당 미디어 콘텐츠에 대한 상태 정보를 전달할 수 있다.Then, the
단계(202)에서 미디어 플레이어(101)는 서버(106)로부터 전달받은 미디어 콘텐츠에 대한 상태 정보를 분석할 수 있다. 상태 정보는 미디어 콘텐츠에 대한 세부 정보를 포함하는 것으로, 요청 시간, 재생 시점 정보, 프레임률, 해상도 등의 정보를 포함할 수 있다. 그리고, 미디어 플레이어(101)는 상태 정보를 바탕으로 미디어 콘텐츠에 대한 세부적인 구성을 파악할 수 있다.In
그리고, 미디어 플레이어(101)는 서버(106)로부터 전달받는 미디어 콘텐츠의 세그먼트를 저장하는 버퍼의 저장 상태를 파악할 수 있다. 다시 말해, 미디어 플레이어(101)는 버퍼 저장 상태를 파악하고, 파악한 버퍼 저장 상태를 기반으로 서버(106)로부터 미디어 콘텐츠의 세그먼트를 다운받기 위한 동작을 수행할 수 있다.The
단계(203)에서 미디어 플레이어(101)는 미디어 콘텐츠의 세그먼트에 대한 요청 시간을 측정할 수 있다. 구체적으로, 미디어 플레이어(101)는 파악한 미디어 플레이어의 상태 정보 및 버퍼 저장 상태를 바탕으로 버퍼의 언더플로우를 방지하기 위해 세그먼트에 대한 요청 시간을 측정할 수 있다. 또한, 미디어 플레이어(101)는 세그먼트에 대한 요청 시간을 측정함으로써, 미디어 콘텐츠의 끊김 현상 없이 부드럽게 재생이 가능할 수 있다.In
그리고, 미디어 플레이어(101)는 파악한 세그먼트의 상태 정보 및 버퍼 저장 상태에 대한 정보를 기반으로 서버(106)에 미디어 콘텐츠의 세그먼트를 요청할 수 있다. 이에 서버(106)는 미디어 플레이어(101)의 요청에 대응하여 해당 미디어 콘텐츠의 세그먼트를 미디어 플레이어(101)에 전달할 수 있다. 일례로, 미디어 플레이어(101)는 세그먼트에 대한 요청 시간을 기반으로 서버(106)로 HTTP 프로토콜을 통해 세그먼트를 요청할 수 있다. 그리고, 서버(106)는 미디어 플레이어(101)로부터 요청 받은 HTTP 요청에 대한 응답으로 해당 세그먼트를 미디어 플레이어(101)에 요청할 수 있다.The
단계(204)에서 미디어 플레이어(101)는 서버(106)로부터 수신한 미디어 콘텐츠의 세그먼트를 버퍼에 저장할 수 있다. 그리고, 미디어 플레이어(101)는 버퍼에 저장된 세그먼트의 순서에 따라 디스플레이 할 수 있다. 일례로, 미디어 플레이어(101)는 버퍼에 버퍼링 된 세그먼트를 디코딩하여 웹 브라우저 상에 렌더링함으로써, 해당 세그먼트를 디스플레이 할 수 있다.In
그리고, 단계(205)에서 미디어 플레이어(101)는 실시간으로 세그먼트의 재생 시점에 대한 변경 여부를 확인할 수 있다. 단계(206)에서 재생 시점에 대한 변경 여부가 확인되면, 미디어 플레이어(101)는 기 파악한 미디어 콘텐츠의 상태 정보 및 버터의 저장 상태를 파악할 수 있다. 이 때, 미디어 플레이어(101)는 세그먼트의 재생 시점의 변경에 따른 반응성을 향상시키기 위해, 단계(203)과 같이 세그먼트에 대한 요청 시간을 계산하지 않을 수 있다.Then, in
여기서, 미디어 플레이어(101)는 세그먼트의 재생 시점에 따른 변경 여부에 대한 확인 결과에 따라 다음과 같은 동작을 수행할 수 있다.Here, the
세그먼트의 재생 시점에 대한 변경이 확인되지 않은 경우, 미디어 플레이어(101)는 미디어 콘텐츠를 끊김 없이 제공하기 위해 버퍼의 언더플로우 방지를 고려하여 버퍼의 저장 상태에 따라 해당 세그먼트를 서버(106)에 요청할 수 있다.In the case where the change to the playback point of the segment is not confirmed, the
반면, 세그먼트의 재생 시점에 대한 변경이 확인이 된 경우, 에서 미디어 플레이어(101)는 변경된 세그먼트의 재생 시점에 대응하여 서버(106)로 보다 신속하게 세그먼트를 요청할 수 있다. 그리고, 단계(207)에서 미디어 플레이어는 현재 버퍼에 저장된 세그먼트를 삭제할 수 있다. 그러나, 미디어 플레이어(101)는 버퍼에 버퍼링 된 세그먼트를 모두 삭제하게 되면 현재 재생 가능한 세그먼트가 존재하지 않기 때문에 재생의 끊김 형상이 발생할 수 있다. 따라서, 미디어 플레이어(101)는 서버(106)에 요청한 세그먼트가 수신되어 디스플레이 되기까지 걸기는 준비 시간을 고려하여 버퍼에 버퍼링 된 세그먼트를 삭제하지 않고, 최소한의 세그먼트를 남겨둘 수 있다. 즉, 미디어 플레이어(101)는 준비 시간을 고려하여 버퍼에 버퍼링된 세그먼트의 일부를 남겨둠에 따라 시점 변경에 따른 QoS 서비스를 향상시킬 수 있다.On the other hand, if the change to the playback point of the segment is confirmed, the
결국, 미디어 플레이어(101)는 미디어 콘텐츠의 세그먼트에 대한 재생 시점이 변경됨에 따라 디스플레이하는 동작까지 정지하는 것이 아니라, 재생 중이던 미디어 콘텐츠와 변경된 재생 시점에 해당하는 미디어 콘텐츠가 자연스럽게 연결되어 디스플레이 되도록 버퍼를 제어할 수 있다. 여기서, 세그먼트가 수신되어 재생되기까지 걸리는 준비 시간에 대해서는 도 3을 통해 자세히 설명하도록 한다.As a result, the
그리고, 서버(106)는 미디어 플레이어(101)의 요청에 따라 해당 세그먼트를 전달할 수 있다.The
단계(208)에서 미디어 플레이어(101)는 서버(106)로부터 수신한 세그먼트를 버퍼에 저장하고, 버퍼에 저장된 세그먼트를 버퍼링한 후, 렌더링함으로써, 해당 세그먼트를 디스플레이 할 수 있다.In
도 3은 일실시예에 따른 미디어 플레이어의 버퍼에 저장된 미디어 콘텐츠에 대한 세그먼트를 설명하기 위한 도면이다.3 is a view for explaining a segment of a media content stored in a buffer of a media player according to an exemplary embodiment of the present invention.
도 3을 참고하면, 미디어 플레이어는 사용자에 의해 미디어 콘텐츠에 대한 재생 시점이 변경됨에 따라 미디어 콘텐츠 A에서 미디어 콘텐츠 B로 변경될 수 있다. 이 때, 미디어 플레이어는 세그먼트의 재생 시점에 대한 변경 여부에 따라 버퍼에 버퍼링된 세그먼트를 삭제할 수 있다. 하지만, 미디어 플레이어는 버퍼링 된 세그먼트 중 서버에 요청한 세그먼트가 수신되어 재생되기까지 걸리는 준비 시간 동안 디스플레이 될 최소한의 세그먼트를 남겨둘 수 있다.Referring to FIG. 3, the media player can be changed from the media content A to the media content B as the playback point of the media content is changed by the user. At this time, the media player can delete the segment buffered in the buffer depending on whether the segment is changed or not. However, the media player may leave a minimal segment to be displayed during the preparation time that it takes for the requested segment from the buffered segment to be received and played back to the server.
구체적으로, 미디어 플레이어는 다음과 같이 기재된 수학식1을 기반으로 준비 시간을 연산할 수 있다.Specifically, the media player can calculate the preparation time based on Equation (1) described below.
여기서, 수학식 1을 살펴보면 는 세그먼트의 남은 다운로드 시간에 관한 것으로, 세그먼트가 수신되어 재생되기까지 걸리는 준비 시간을 의미하고, 는 재생 중인 세그먼트 이후에 재생되는 세그먼트의 첫 프레임 요청 시간을 의미하며, 는 재생 중인 세그먼트의 현재 시간을 의미할 수 있다. 그리고, 는 DASH 기반 스트리밍 서비스에서 목표로 하는 미디어 콘텐츠를 제공하기 위한 버퍼링 시간을 의미할 수 있다. 그리고, 미디어 플레이어는 각각의 요소들을 조합하여 세그먼트가 수신되어 재생되기까지 걸리는 준비 시간을 최종적으로 측정할 수 있다.Here, as shown in Equation (1) Quot; refers to the remaining download time of the segment, which means the preparation time taken for the segment to be received and reproduced, Quot; refers to the first frame request time of a segment that is played after the segment being played, May mean the current time of the segment being played. And, May refer to a buffering time for providing a target media content in a DASH-based streaming service. Then, the media player can finally measure the preparation time required for the segments to be received and reproduced by combining the respective elements.
그리고, 미디어 플레이어는 다음과 같이 기재된 수학식2를 통해 최소한의 세그먼트를 연산할 수 있다.Then, the media player can calculate the minimum segment through Equation (2) described below.
수학식 2를 살펴보면, 는 준비 시간 동안 디스플레이 될 최소한의 세그먼트를 의미하며, 는 Media Segment Duration의 약자로 세그먼트의 재생시간을 의미할 수 있다.In Equation (2), denotes a minimum segment to be displayed during the preparation time, and " Media Segment Duration " is an abbreviation of a segment playback time.
결국, 미디어 플레이어는 수학식1 및 수학식2를 통하여 세그먼트의 재생시간 및 준비 시간을 고려하여 버퍼에 남겨둘 최소한의 세그먼트를 결정할 수 있다. 또한, 미디어 플레이어는 최소한의 세그먼트를 버퍼에 남겨둠으로써, 미디어 콘텐츠의 끊김 현상 없이 재생할 수 있으며, 재생 시점 변경에 따른 반응성을 향상 시킬 수 있다.As a result, the media player can determine the minimum segment to be left in the buffer in consideration of the playback time and the preparation time of the segment through Equation (1) and Equation (2). In addition, by leaving a minimum segment in the buffer, the media player can reproduce the media content without any interruption of the media content and improve the responsiveness according to the change of the playback time point.
따라서, 미디어 플레이어는 미디어 콘텐츠의 재생 시점이 변경됨에 따라 미디어 콘텐츠 A에 대한 버터의 세그먼트를 모두 삭제하는 것이 아니라, 미디어 콘텐츠 B가 디스플레이될 때까지의 준비 시간을 고려하여 미디어 콘텐츠 A에 대한 최소한의 세그먼트를 남겨둘 수 있다.Accordingly, the media player does not delete all the segments of the butter for the media content A as the playback point of the media content is changed, but rather deletes the segments of the butter for the media content A in consideration of the preparation time until the media content B is displayed You can leave a segment.
도 4는 일실시예에 따른 미디어 플레이어의 구현하기 위한 세부 구성도를 도시한 도면이다.FIG. 4 is a detailed block diagram of a media player according to an exemplary embodiment of the present invention. Referring to FIG.
도 4를 참고하면, 미디어 플레이어(401)는 웹 사이트 모듈(402), 비디오 요소 모듈(403), 미디어 소스 모듈(404) 및 미디어 전달 모듈(405)을 포함할 수 있다.4, the
웹 사이트 모듈(402)은 웹 브라우저를 통해 사용자에게 제공되는 인터페이스 일 수 있다. 비디오 요소 모듈(403)은 미디어 플레이어(401)의 버퍼에 저장되어 있는 미디어 콘텐츠의 세그먼트를 웹 브라우저의 화면에 렌더링할 수 있다. 비디오 요소 모듈(403)는 미디어 콘텐츠를 컨트롤할 수 있는 제어 기능을 제공할 수 있다. 일례로, 비디오 요소 모듈(403)는 미디어 콘텐츠에 대하여 재생, 멈춤, 일시정지, 시간 이동 및 시점 변경 등의 API를 통한 제어 기능을 제공할 수 있다.The
미디어 전달 모듈(405)은 비디오 요소 모듈(403)의 제어 기능에 따른 미디어 콘텐츠의 제어 요청에 대응하여 서버(411)와 연동할 수 있다. 여기서, 미디어 전달 모듈(405)은 미디어 플레이어(401)의 내부에 위치하거나, 별도의 장치에 포함되어 동작할 수 있다.The
세부적으로 미디어 전달 모듈(405)은 MPD 파서부(406), 버퍼 상태 모니터링부(407), 세그먼트 요청부(408), 시점 변경부(409) 및 QoS 관리부(410)를 포함할 수 있다.In detail, the
MPD 파서부(406)는 미디어 플레이어의 상태 정보 분석부에 매칭될 수 있다. MPD 파서부(406)는 미디어 콘텐츠의 제어 요청에 따라 서버(411)로부터 MPD 파일을 수신할 수 있다. MPD 파일은 미디어 콘텐츠에 대한 세부 정보를 포함하는 것으로, 카메라 시점, 세그먼트 정보, 해상도, 프레임률 등의 정보들을 포함할 수 있다. 그리고, MPD 파서부(406)는 수신한 MPD 파일을 파싱하여 미디어 콘텐츠를 분석할 수 있다.The
버퍼 상태 모니터링부(407)는 버퍼의 저장 상태를 모니터링 할 수 있다. 버퍼 상태 모니터링부(407)는 버퍼 상태 정보를 실시간으로 모니터링함으로써, 버퍼의 언더플로우를 방지할 수 있다.The buffer
세그먼트 요청부(408)는 미디어 플레이어의 제1 요청부에 매칭될 수 있다. 세그먼트 요청부(408)는 MPD 파서부(406)를 통해 분석한 미디어 콘텐츠에 대한 상태 정보와 버퍼 상태 모니터링부(407)를 통해 획득한 버퍼 상태 정보를 기반으로 서버(411)에 세그먼트를 요청할 수 있다.The
시점 변경부(409)는 미디어 플레이어의 재생 시점 확인부에 매칭될 수 있다. 미디어 소스 모듈(404)에 의한 제어 기능 중 재생 시점 변경과 관련된 이벤트를 수신할 수 있다. 즉, 시점 변경부(409)는 재생 중인 미디어 콘텐츠에 대하여 재생 시점에 대한 변경 여부를 확인할 수 있다.The
QoS 관리부(410)는 미디어 플레이어의 제2 요청부에 매칭될 수 있다. QoS 관리부(410)는 MPD 파서부(406)를 통해 분석한 미디어 콘텐츠에 대한 상태 정보와 버퍼 상태 모니터링부(407)를 통해 획득한 버퍼 상태 정보 및 재생 시점에 대한 변경 여부를 고려하여 서버(411)로 세그먼트 요청을 수행할 수 있다. 이 때, QoS 관리부(410)는 재생 시점에 대한 변경 여부에 따라 버퍼의 언더플로우 방지를 위한 동작을 수행하거나, 세그먼트의 재생시간 및 준비 시간을 고려하여 버퍼에 최소한의 세그먼트를 남겨두는 동작을 수행할 수 있다.The
서버(411)는 HTTP 부(412), 저장소(413)를 포함할 수 있다. 서버(411)는 저장소(320)에 저장되어있는 미디어 콘텐츠와 관련된 정보를 기술하고 있는 MPD 파일을 웹 사이트 모듈(402)의 요청에 따라 제공할 수 있다.The
저장소(413)는 다양한 시점의 미디어 콘텐츠들이 DASH포멧의 세그먼트들로 조각내어 저장될 수 있다.The
본 발명의 실시 예에 따른 방법들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.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 configured for the present invention or may be available to those skilled in the art of computer software.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.While the invention has been shown and described with reference to certain preferred embodiments thereof, it will be understood by those of ordinary skill in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the appended claims. 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.
101: 미디어 플레이어
102: 상태 정보 분석부
103: 제1 요청부
104: 재생 시점 확인부
105: 제2 요청부
106: 서버101: Media Player
102: Status information analysis unit
103: first request unit
104:
105: second request unit
106: Server
Claims (1)
상기 제어 요청에 따른 분석한 상태 정보 및 미디어 콘텐츠에 대한 요청 시간을 이용하여 서버에 미디어 콘텐츠의 세그먼트를 요청하는 단계;
미디어 플레이어를 통해 디스플레이 되는 상기 세그먼트의 재생 시점에 대한 변경 여부를 확인하는 단계; 및
상기 확인 결과에 따라 상기 분석한 상태 정보 및 상기 미디어 플레이어의 버퍼 상태 정보를 이용하여 변경하고자 하는 상기 세그먼트의 재생 시점에 따른 세그먼트를 상기 서버에 요청하는 단계
를 포함하고,
상기 서버는,
상기 요청된 미디어 콘텐츠의 재생 시점 또는 요청 시간에 따른 세그먼트를 상기 미디어 플레이어에 전달하는 미디어 플레이어의 재생 시점 변경 방법.Analyzing status information of the media content received from the server in response to a control request for the media content;
Requesting a segment of the media content to the server using the analyzed status information and the request time for the media content according to the control request;
Confirming whether or not the playback time of the segment displayed through the media player is changed; And
Requesting the server for a segment according to a playback time point of the segment to be changed using the analyzed state information and the buffer state information of the media player according to the result of the checking
Lt; / RTI >
The server comprises:
And transmits a segment according to a playback time or a requested time of the requested media content to the media player.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140075452 | 2014-06-20 | ||
KR20140075452 | 2014-06-20 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20150146353A true KR20150146353A (en) | 2015-12-31 |
Family
ID=55129053
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140127805A KR20150146353A (en) | 2014-06-20 | 2014-09-24 | Playback point change method of user apparatus |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20150146353A (en) |
-
2014
- 2014-09-24 KR KR1020140127805A patent/KR20150146353A/en not_active Application Discontinuation
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8925021B2 (en) | Method and system for trick play in over-the-top video delivery | |
KR101737325B1 (en) | Method and apparatus for reducing decreasing of qualitly of experience in a multimedia system | |
JP5979483B2 (en) | Content reproduction apparatus, content reproduction system, and content reproduction method | |
JP4944484B2 (en) | Playback apparatus, playback method, and program | |
US8886765B2 (en) | System and method for predicitive trick play using adaptive video streaming | |
ES2624910T3 (en) | Client side sequence switching | |
KR20190019953A (en) | System and method for providing variable speed in trick play mode | |
JP2009159644A (en) | Progressive downloading of timed multimedia content | |
JP6021385B2 (en) | Streaming media playback apparatus, streaming media playback method, and program | |
EP3251019A1 (en) | Multiple protocol media streaming | |
TW201637455A (en) | Video transmission method and video transmission apparatus | |
WO2016185998A1 (en) | Delivery control device and delivery control method for abr delivery system content delivery | |
JP6305738B2 (en) | Media playback control device, media playback control method, and program | |
KR20180033667A (en) | Apparatus and method for providing streaming service | |
KR101863598B1 (en) | Operating method of client for streaming service | |
TWI613912B (en) | Video data file generation method and video data file generation apparatus | |
JP4222253B2 (en) | Client terminal, streaming server, and streaming switching distribution system | |
JP5784538B2 (en) | Streaming media playback device, media bit rate change determination method, and program | |
JP7162019B2 (en) | DATA STREAMING METHOD, DATA STREAMING DEVICE, AND COMPUTER PROGRAM | |
JP6099715B2 (en) | Streaming media playback apparatus, streaming media playback method, and program | |
JP6513054B2 (en) | Client device of content delivery system, method and program for acquiring content | |
JP2018523341A (en) | System and method for transmitting video data from server to client | |
JP2017098706A (en) | Receiving device, segment acquisition method and program | |
KR20150146353A (en) | Playback point change method of user apparatus | |
CN105007521A (en) | Method and device for playing TS (Transport Stream) video |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WITN | Withdrawal due to no request for examination |