KR20120088148A - Method and apparatus for media trick playing in universal plug and play - Google Patents

Method and apparatus for media trick playing in universal plug and play Download PDF

Info

Publication number
KR20120088148A
KR20120088148A KR1020110009289A KR20110009289A KR20120088148A KR 20120088148 A KR20120088148 A KR 20120088148A KR 1020110009289 A KR1020110009289 A KR 1020110009289A KR 20110009289 A KR20110009289 A KR 20110009289A KR 20120088148 A KR20120088148 A KR 20120088148A
Authority
KR
South Korea
Prior art keywords
frame
frames
time information
digital media
playback
Prior art date
Application number
KR1020110009289A
Other languages
Korean (ko)
Other versions
KR101762754B1 (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 KR1020110009289A priority Critical patent/KR101762754B1/en
Publication of KR20120088148A publication Critical patent/KR20120088148A/en
Application granted granted Critical
Publication of KR101762754B1 publication Critical patent/KR101762754B1/en

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6581Reference data, e.g. a movie identifier for ordering a movie or a product identifier in a home shopping application
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/78Television signal recording using magnetic recording
    • H04N5/782Television signal recording using magnetic recording on tape
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/84Television signal recording using optical recording

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

PURPOSE: A media X-speed rating reproducing method in a universal plug and play network and a device thereof are provided to determine a cycle of a frame provided to a digital media player according to an X-rating speed in a digital media server of the universal plug and play network. CONSTITUTION: A receiving unit(200) receives an X-rating speed reproduction request from a digital media player. A control unit(210) selects frames to be transmitted to the digital media player based on the X-rating speed reproduction request. The control unit controls a function for resetting reproduction time information of the selected frames. A transmission unit(270) transmits the reset reproduction time information and the selected frames to the digital media player.

Description

범용 플러그 앤 플레이 네트워크에서 미디어 배속 재생 방법 및 장치{METHOD AND APPARATUS FOR MEDIA TRICK PLAYING IN UNIVERSAL PLUG AND PLAY}METHOD AND APPARATUS FOR MEDIA TRICK PLAYING IN UNIVERSAL PLUG AND PLAY}

본 발명은 범용 플러그 앤 플레이(UPnP: Universal Plug and Play) 네트워크의 미디어 배속 재생에 관한 것으로서, 특히 PTS(Presentation Time Stamp)를 가공하여 미디어 배속 재생을 제어하는 방법 및 장치에 관한 것이다.
The present invention relates to media double speed playback of a Universal Plug and Play (UPnP) network, and more particularly, to a method and apparatus for controlling media double speed playback by processing a presentation time stamp (PTS).

범용 플러그 앤 플레이(UPnP: Universal Plug and Play)는 PC(Personal Computer), 주변 장치, 지능형 가전제품 및 미디어 기기 등과 같은 장치들이 네트워크에 접속하였을 때, 인터넷과 웹 프로토콜을 사용하여 상기 네트워크에 연결된 다른 장치들을 자동으로 인식하여 통신할 수 있도록 하는 표준이다. 상기 범용 플러그 앤 플레이 기반의 네트워크는 미디어 파일을 저장하는 디지털 미디어 서버(DMS: Digital Media Server)와 상기 디지털 미디어 서버에 저장된 미디어 파일을 스트리밍(streaming)하는 디지털 미디어 플레이어(DMP: Digital Media Player)로 구성된다.Universal Plug and Play (UPnP) is used to connect other devices connected to the network using the Internet and Web protocols when devices such as personal computers (PCs), peripherals, intelligent appliances and media devices are connected to the network. It is a standard that enables devices to be automatically recognized and communicated. The universal plug and play-based network includes a digital media server (DMS) for storing media files and a digital media player (DMP) for streaming media files stored in the digital media server. It is composed.

최근에는 상기 디지털 미디어 서버에 저장된 미디어 파일을 상기 디지털 미디어 플레이어(DMP)에서 효과적으로 배속 재생을 수행하기 위한 방식이 연구 및 제공되고 있으며, 그 대표적인 예로 풀 방식(Pull Mode)과 푸시 방식(Push Model)이 있다.Recently, a method for effectively double-speed playback of a media file stored in the digital media server in the digital media player (DMP) has been researched and provided. Examples thereof include a pull mode and a push model. There is this.

상기 풀 방식은 상기 디지털 미디어 플레이어가 디지털 미디어 서버로 배속 재생을 요청하면, 상기 디지털 미디어 서버 상기 디지털 미디어 플레이어의 요청에 따라 실제 재생 속도를 결정하고, 현재 재생 속도, 대역폭의 제한, 프레임의 종류 등을 고려하여 최종 프레임 율을 산출한 후, 이 정보들과 해당 미디어에 대한 모든 프레임들을 상기 디지털 미디어 플레이어로 전송하여, 상기 디지털 미디어 플레이어가 상기 정보들을 바탕으로 일부 프레임을 폐기하고 일부 프레임만을 선택한 후, 디코딩 속도를 조절하여 재생하는 방식이다.In the pull method, when the digital media player requests double speed playback from the digital media server, the digital media server determines the actual playback speed according to the request of the digital media player, and the current playback speed, bandwidth limitation, frame type, and the like. After calculating the final frame rate in consideration of the above, and transmitting this information and all frames for the media to the digital media player, the digital media player discards some frames and selects only some frames based on the information. In this case, the playback speed is controlled by adjusting the decoding speed.

또한, 상기 푸시 방식은 디지털 미디어 플레이어가 디지털 미디어 서버에 특정 미디어의 배속 재생을 요청하면, 상기 디지털 미디어 서버가 1 배속 이상의 배속 재생인 경우, I 프레임과 P 프레임을 선택하여 전송하는 방식이다.In addition, when the digital media player requests the digital media server to play a specific speed at a digital media server, the digital media player selects and transmits an I frame and a P frame when the digital media server is playing at a 1x speed or more.

그러나, 상기와 같이 풀 방식은 디지털 미디어 서버가 해당 미디어의 모든 프레임을 디지털 미디어 플레이어로 전송하지만, 상기 디지털 미디어 플레이어에서 모든 프레임이 유효하게 사용되는 것이 아니므로, 불필요한 대역폭이 낭비되는 문제점이 있으며, 디지털 미디어 플레이어에서 배속에 따라 프레임을 선택 및 폐기하고 디코딩 속도를 조절하는 작업을 수행해야하므로, 상기 디지털 미디어 플레이어의 부하가 커질 수 있는 단점이 있다.However, in the full method as described above, although the digital media server transmits all the frames of the media to the digital media player, not all the frames are effectively used in the digital media player, which causes unnecessary bandwidth waste. Since a digital media player needs to perform a task of selecting and discarding frames and adjusting decoding speeds according to the speed, the digital media player has a disadvantage in that the load may increase.

또한, 상기 푸시 방식 역시 상기 풀 방식과 마찬가지로 상기 디지털 미디어 플레이어에서 배속에 따라 프레임을 디코딩하는 속도를 조절해야함으로써, 부하가 커질 수 있는 단점이 그대로 존재하게 된다.
In addition, the push method also needs to adjust the speed of decoding the frame according to the double speed in the digital media player, as in the pull method, so that there is a disadvantage that the load may increase.

본 발명은 상술한 바와 같은 문제점을 해결하기 위해 도출된 것으로서, 본 발명의 목적은 범용 플러그 앤 플레이 네트워크에서 미디어 배속 재생 방법 및 장치를 제공함에 있다.SUMMARY OF THE INVENTION The present invention has been made to solve the above-described problems, and an object of the present invention is to provide a method and apparatus for media double speed playback in a universal plug and play network.

본 발명의 다른 목적은 범용 플러그 앤 플레이 네트워크의 디지털 미디어 서버에서 배속에 따라 디지털 미디어 플레이어로 제공할 프레임의 주기를 결정하는 방법 및 장치를 제공함에 있다.Another object of the present invention is to provide a method and apparatus for determining a period of a frame to be provided to a digital media player according to a double speed in a digital media server of a general-purpose plug and play network.

본 발명의 또 다른 목적은 범용 플러그 앤 플레이 네트워크의 디지털 미디어 서버에서 미디어의 PTS(Presentation Time Stamp)를 가공하여 디지털 미디어 플레이어로 제공하는 방법 및 장치를 제공함에 있다.
It is still another object of the present invention to provide a method and apparatus for processing a PTS (Presentation Time Stamp) of media in a digital media server of a universal plug and play network and providing the same to a digital media player.

상술한 목적들을 달성하기 위한 본 발명의 제 1 견지에 따르면, 디지털 미디어 서버의 미디어 배속 재생 제공 방법은, 디지털 미디어 플레이어로부터 배속 재생을 요청받는 과정과, 상기 배속 재생 요청에 기초하여 디지털 미디어 플레이어로 전송할 프레임들을 선택하는 과정과, 상기 선택된 프레임들의 재생 시간에 대한 정보를 재설정하는 과정과, 상기 재설정된 재생 시간 정보 및 선택된 프레임들을 상기 디지털 미디어 플레이어로 전송하는 과정을 포함하는 것을 특징으로 한다.According to a first aspect of the present invention for achieving the above objects, a method of providing a media speed playback of a digital media server comprises: receiving a request for double speed playback from a digital media player, and transmitting the media speed playback to a digital media player based on the double speed playback request. And selecting frames to be transmitted, resetting information on the reproduction time of the selected frames, and transmitting the reset reproduction time information and the selected frames to the digital media player.

상술한 목적들을 달성하기 위한 본 발명의 제 2 견지에 따르면, 미디어 배속 재생을 위한 디지털 미디어 서버 장치는, 디지털 미디어 플레이어로부터 배속 재생을 요청받는 수신부와, 상기 배속 재생 요청에 기초하여 디지털 미디어 플레이어로 전송할 프레임들을 선택하고, 상기 선택된 프레임들의 재생 시간 정보를 재설정하기 위한 기능을 제어하는 제어부와, 상기 재설정된 재생 시간 정보 및 선택된 프레임들을 상기 디지털 미디어 플레이어로 전송하는 전송부를 포함하는 것을 특징으로를 포함하는 것을 특징으로 한다.According to a second aspect of the present invention for achieving the above objects, a digital media server apparatus for media double speed playback includes a receiving unit for requesting double speed playback from a digital media player, and a digital media player based on the double speed playback request. And a control unit for selecting a frame to be transmitted and controlling a function for resetting the play time information of the selected frames, and a transmitter for transmitting the reset play time information and the selected frames to the digital media player. Characterized in that.

상술한 목적들을 달성하기 위한 본 발명의 제 2 견지에 따르면, 디지털 미디어 플레이어에서 미디어 배속 재생 방법은, 디지털 미디어 서버로 미디어 배속 재생을 요청하는 과정과, 상기 디지털 미디어 서버로부터 재생할 프레임들 및 상기 재생할 프레임들에 대한 재생 시간 정보를 수신하는 과정과, 상기 재생 시간 정보에 따라 상기 디지털 미디어 서버로부터 수신되는 모든 프레임들을 재생하는 과정을 포함하는 것을 특징으로 한다.According to a second aspect of the present invention for achieving the above objects, the media speed playback method in a digital media player, the process of requesting the media speed playback to the digital media server, the frames to be played back from the digital media server and the playback; Receiving playback time information for the frames, and playing back all frames received from the digital media server according to the playback time information.

상술한 목적들을 달성하기 위한 본 발명의 제 2 견지에 따르면, 디지털 미디어 플레이어에서 미디어 배속 재생 장치는, 디지털 미디어 서버로 미디어 배속 재생을 요청하는 전송부와, 상기 디지털 미디어 서버로부터 재생할 프레임들 및 상기 재생할 프레임들에 대한 재생 시간 정보를 수신하는 수신부와, 상기 재생 시간 정보에 따라 상기 디지털 미디어 서버로부터 수신되는 모든 프레임들을 재생하는 재생부를 포함하는 것을 특징으로 한다.
According to a second aspect of the present invention for achieving the above objects, a media speed playback apparatus in a digital media player includes a transmission unit for requesting media speed playback to a digital media server, frames to be played back from the digital media server, and And a receiving unit for receiving reproduction time information of frames to be reproduced, and a reproduction unit for reproducing all frames received from the digital media server according to the reproduction time information.

본 발명은 범용 플러그 앤 플레이 네트워크의 디지털 미디어 서버에서 배속에 따라 디지털 미디어 플레이어로 제공할 프레임 주기를 결정하고, 선택된 프레임의 PTS(Presentation Time Stamp)를 가공하여 디지털 미디어 플레이어로 제공함으로써, 디지털 미디어 플레이어에서 별도의 처리 과정 없이 미디어를 배속 재생할 수 있으며, 네트워크 대역폭의 점유율을 감소시키면서 상기 디지털 멀티미디어 플레이어의 부하를 감소시킬 수 있는 효과가 있다.
The present invention provides a digital media player by determining a frame period to be provided to a digital media player according to a double speed at a digital media server of a general-purpose plug and play network, and processing the PTS (Presentation Time Stamp) of the selected frame to provide the digital media player. In the present invention, media can be played at a speed without additional processing, and the load of the digital multimedia player can be reduced while reducing the share of network bandwidth.

도 1은 본 발명에 따른 범용 플러그 앤 플레이 네트워크에서 미디어 재생을 위한 시스템 구성을 도시하는 도면,
도 2는 본 발명의 실시 예에 따른 범용 플러그 앤 플레이 네트워크에서 디지털 미디어 서버의 블럭 구성을 도시하는 도면,
도 3은 본 발명의 실시 예에 따른 범용 플러그 앤 플레이 네트워크에서 디지털 미디어 서버의 동작 절차를 도시하는 도면, 및
도 4는 본 발명의 실시 예에 따라 PTS를 가공하는 예를 도시하는 도면.
1 is a diagram illustrating a system configuration for media playback in a universal plug and play network according to the present invention;
2 is a block diagram of a digital media server in a universal plug and play network according to an embodiment of the present invention;
3 is a diagram illustrating an operation procedure of a digital media server in a universal plug and play network according to an embodiment of the present invention; and
4 illustrates an example of processing a PTS in accordance with an embodiment of the present invention.

이하 본 발명의 바람직한 실시 예를 첨부된 도면을 참조하여 설명한다. 그리고, 본 발명을 설명함에 있어서, 관련된 공지기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단된 경우 그 상세한 설명은 생략할 것이다. 또한, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
Hereinafter, exemplary embodiments of the present invention will be described with reference to the accompanying drawings. In the following description of the present invention, detailed descriptions of related well-known functions or configurations will be omitted if it is determined that the detailed description of the present invention may unnecessarily obscure the subject matter of the present invention. In addition, terms to be described below are terms defined in consideration of functions in the present invention, which may vary according to intention or custom of a user or an operator. Therefore, the definition should be based on the contents throughout this specification.

이하 본 발명에서는 범용 플러그 앤 플레이 네트워크에서 미디어의 배속 재생을 위해 PTS(Presentation Time Stamp)를 가공하는 방법 및 장치에 관해 설명할 것이다. 여기서, 상기 배속 재생은 되감기(Rewind), 빨리 감기(Fast Forward), 구간 점프(Frame Jump), 일시 정지(Pause), 느리게 재생(Slow Play) 등을 모두 포함하는 의미로서, 트릭 재생이라고도 한다.
Hereinafter, the present invention will be described a method and apparatus for processing PTS (Presentation Time Stamp) for double speed playback of media in a universal plug and play network. In this case, the double speed playback includes rewind, fast forward, frame jump, pause, slow play, and so on, and is also called trick play.

도 1은 본 발명에 따른 범용 플러그 앤 플레이 네트워크에서 미디어 재생을 위한 시스템 구성을 도시하고 있다.1 illustrates a system configuration for media playback in a universal plug and play network according to the present invention.

상기 도 1을 참조하면, 디지털 미디어 서버(100)는 110단계에서 디지털 미디어 플레이어(102)로부터 특정 미디어의 배속 재생을 요청받고, 상기 요청된 배속에 따라 상기 디지털 미디어 플레이어(102)로 제공할 프레임을 선택하기 위한 프레임 주기를 결정한다. Referring to FIG. 1, in step 110, the digital media server 100 receives a request to play a specific speed from the digital media player 102 and provides a frame to the digital media player 102 according to the requested speed. Determine the frame period for selecting the.

이후, 상기 디지털 미디어 서버(100)는 TS(Transport Stream) 형태로 저장된 해당 미디어 파일을 역다중화(de-multiplexing)하여 PES(Packetized Elementary Stream)로 변환한 후, 필요한 비디오 기본 스트림(Elementary Stream)을 추출하고, 상기 결정된 프레임 주기에 따라 상기 비디오 기본 스트림에서 상기 디지털 미디어 플레이어(102)로 제공할 프레임들을 선택하고, 선택된 프레임 각각의 PTS를 가공한다. 여기서, 상기 디지털 미디어 서버(100)는 상기 결정된 프레임 주기에 따라 사익 PES에서 프레임을 선택하여 PTS를 가공할 수도 있다. 즉, 상기 디지털 미디어 서버(100)는 상기 미디어 파일의 프레임에 대한 정보를 나타내는 인덱스 파일에서 상기 선택된 프레임들의 PTS를 참조하여 새로운 PTS를 생성하고, 상기 새로운 PTS를 포함하는 인덱스 파일을 생성한다. 이후, 상기 디지털 미디어 서버(100)는 상기 선택된 프레임들을 다중화(multiplexing)하여 전송 스트림(TS)으로 변환하고, 변환된 전송 스트림 파일과 상기 새로운 PTS를 포함하는 인덱스 파일을 112단계와 같이 상기 디지털 미디어 플레이어(102)로 제공한다.Thereafter, the digital media server 100 de-multiplexes the media file stored in the form of a transport stream (TS) to convert it into a packetized elementary stream (PES), and then converts the required video elementary stream into an elementary stream. Extract and select frames to be provided to the digital media player 102 in the video elementary stream according to the determined frame period, and process the PTS of each of the selected frames. In this case, the digital media server 100 may process a PTS by selecting a frame in the sound PES according to the determined frame period. That is, the digital media server 100 generates a new PTS by referring to the PTSs of the selected frames in the index file representing the frame information of the media file, and generates an index file including the new PTS. Thereafter, the digital media server 100 multiplexes the selected frames and converts the selected frames into a transport stream (TS), and converts the converted transport stream file and the index file including the new PTS into the digital media in step 112. Provided to player 102.

상기 디지털 미디어 플레이어(102)는 사용자로부터 특정 미디어의 배속 재생이 요청되면, 수신부(미도시)를 통해 110단계와 같이 상기 미디어를 저장하고 있는 상기 디지털 미디어 서버(100)로 상기 미디어의 배속 재생을 요청한다. 여기서, 상기 디지털 미디어 플레이어(102)는 전송부(미도시)를 통해 HTTP 프로토콜에서 제공하는 HTTP Get Message를 바탕으로 특정 미디어의 배속 재생을 요청할 수 있다. 이후, 상기 디지털 미디어 플레이어(102)는 112단계와 같이 상기 디지털 미디어 서버(100)로부터 전송 스트림(TS) 파일과 인덱스 파일을 제공받고, 상기 제공되는 전송 스트림(TS) 파일을 역다중화하여 PES로 변환한 후, 재생부(미도시)를 통해 상기 인덱스 파일로부터 상기 비디오 기본 스트림(ES)을 구성하는 각 프레임의 PTS 정보를 참조하여 각 프레임을 재생한다. 즉, 상기 디지털 미디어 플레이어(102)는 재생하고자 하는 배속에 관계없이 상기 수신 전송 스트림(TS) 파일에 포함된 모든 프레임들을 PTS 정보에 따라 재생 처리한다. 상기 수신되는 전송 스트림(TS)에 포함된 프레임들의 PTS 정보는 순차적으로 증가하거나 감소하는 값을 가지므로, 상기 디지털 미디어 플레이어(102)는 상기 별도의 추가적인 작업을 수행하지 않고, PTS 정보의 값이 작은 프레임들부터 순차적으로 재생 처리한다.When a digital media player 102 is requested to play a specific media from the user, the digital media player 102 performs a double speed playback of the media to the digital media server 100 that stores the media through a receiver (not shown) in step 110. request. Here, the digital media player 102 may request a double speed playback of a specific media based on an HTTP Get message provided by the HTTP protocol through a transmission unit (not shown). Thereafter, the digital media player 102 receives the transport stream (TS) file and the index file from the digital media server 100 in step 112, demultiplexes the provided transport stream (TS) file to the PES. After the conversion, each frame is reproduced by referring to the PTS information of each frame constituting the video elementary stream (ES) from the index file through a playback unit (not shown). That is, the digital media player 102 reproduces all the frames included in the received transport stream (TS) file according to the PTS information regardless of the speed to be played back. Since the PTS information of the frames included in the received transport stream (TS) has a value that sequentially increases or decreases, the digital media player 102 does not perform the separate additional operation, and the value of the PTS information does not increase. Playback is performed sequentially from small frames.

상기와 같이, 상기 디지털 미디어 서버(100)에서 재생하고자 하는 배속에 따라 프레임을 선택하고, 선택된 프레임의 PTS를 가공하여 상기 디지털 미디어 플레이어(102)로 제공함으로써, 상기 디지털 미디어 플레이어(102)는 상기 재생하고자 하는 배속에 따라 일부 프레임을 선택하거나 폐기하는 과정, 혹은 디코딩 속도를 조절하는 과정 등을 생략할 수 있다.
As described above, the digital media server 102 selects a frame according to the speed to be played in the digital media server 100 and processes the PTS of the selected frame to provide the digital media player 102 to the digital media player 102. The process of selecting or discarding some frames or adjusting the decoding speed may be omitted depending on the speed of reproduction.

도 2는 본 발명의 실시 예에 따른 범용 플러그 앤 플레이 네트워크에서 디지털 미디어 서버의 블럭 구성을 도시하고 있다.2 is a block diagram of a digital media server in a universal plug and play network according to an exemplary embodiment of the present invention.

상기 도 2를 참조하면, 상기 디지털 미디어 서버는 수신부(200), 제어부(210), 저장부(220), 역다중화부(230), 프레임 선택부(240), PTS 가공부(250), 다중화부(260), 전송부(270)를 포함하여 구성된다.2, the digital media server includes a receiver 200, a controller 210, a storage 220, a demultiplexer 230, a frame selector 240, a PTS processor 250, and multiplexing. The unit 260 and the transmission unit 270 are configured.

상기 수신부(200)는 디지털 미디어 플레이어로부터 특정 미디어에 대한 배속 재생을 요청하는 신호를 수신하고, 이를 상기 제어부(210)로 제공한다.The receiver 200 receives a signal for requesting double speed playback of a specific media from a digital media player and provides it to the controller 210.

상기 제어부(210)는 상기 수신부(200)를 통해 디지털 미디어 플레이어로부터 특정 미디어 컨텐츠에 대한 배속 재생을 요청하는 신호가 입력될 시, 상기 저장부(220)에서 해당 미디어 컨텐츠를 검색하고, 상기 미디어 컨텐츠를 상기 역다중화부(230)로 제공하기 위한 기능을 제어 및 처리한다. 여기서, 상기 미디어 컨텐츠는 MPEG TS 형태의 미디어 파일과 상기 미디어 파일에 대응하는 인덱스 파일을 포함한다.The control unit 210 searches for the media content in the storage unit 220 when a signal for requesting a double speed reproduction of a specific media content is input from the digital media player through the receiving unit 200, and the media content is retrieved. Control and process a function for providing to the demultiplexer 230. Here, the media content includes a media file of MPEG TS type and an index file corresponding to the media file.

또한, 상기 제어부(210)는 상기 요청 신호에 포함된 재생 속도를 확인하여 프레임 선택을 위한 프레임 주기를 결정한 후, 결정된 프레임 주기를 상기 프레임 선택부(240)로 제공한다. 여기서, 상기 제어부(210)는 상기 재생 속도, 프레임 주기, 미디어 파일에 해당하는 스트림의 전체 크기, 배속 재생될 스트림의 크기, 전체 스트림에 포함된 I 프레임의 수, 전체 I 프레임의 크기, I 프레임의 평균 크기, 배속 재생될 프레임 수 등을 이용하여 프레임 주기를 결정할 수 있다. 즉, 상기 제어부(210)는 하기 수학식 1과 같이 프레임 주기를 결정할 수 있다.In addition, the controller 210 determines a frame period for frame selection by checking a playback speed included in the request signal, and then provides the determined frame period to the frame selector 240. Here, the control unit 210 is the playback speed, frame period, the total size of the stream corresponding to the media file, the size of the stream to be played at double speed, the number of I frames contained in the entire stream, the size of the entire I frame, I frame The frame period may be determined using the average size of the frames, the number of frames to be reproduced at double speed, and the like. That is, the controller 210 may determine the frame period as shown in Equation 1 below.

Figure pat00001
Figure pat00001

Figure pat00002
Figure pat00002

Figure pat00003
Figure pat00003

Figure pat00004
Figure pat00004

여기서, 상기 SO는 미디어 파일에 해당하는 전체 스트림의 크기를 의미하며, Trickspeed는 재생 속도를 의미하며, ST는 배속 재생될 스트림의 크기를 의미한다. 또한, 상기 SIFrame은 전체 I 프레임의 크기를 의미하며, NI는 전체 스트림에 포함된 I 프레임의 수를 의미하고, SIFrameAvg은 I 프레임의 평균 크기를 의미한다. 또한, 상기 NPossible은 배속 재생될 프레임 수를 의미하고, NTotal은 전체 프레임 수를 의미하고, Ff는 프레임 주기를 의미한다. 여기서, 상기 배속 재생될 스트림과 배속 재생될 프레임은 상기 디지털 미디어 서버에서 상기 디지털 미디어 플레이어로 제공될 스트림과 프레임을 의미한다. Here, S O means the size of the entire stream corresponding to the media file, Trick speed means the playback speed, S T means the size of the stream to be played at double speed. In addition, the S IFrame means the size of the entire I frame, N I means the number of I frames included in the entire stream, S IFrameAvg means the average size of the I frame. In addition, N Possibl e means the number of frames to be reproduced at double speed, N Total means the total number of frames, and F f means the frame period. Here, the stream to be played at double speed and the frame to be played at double speed mean a stream and a frame to be provided from the digital media server to the digital media player.

즉, 상기 제어부(210)는 미디어 파일에 해당하는 전체 스트림의 크기(SO)와 디지털 미디어 플레이어에서 요청된 재생 속도(Trickspeed)를 이용하여 상기 디지털 미디어 플레이어에서 배속 재생될 스트림의 크기(ST)를 결정하고, 전체 I 프레임의 크기(SIFrame)와 전체 스트림에 포함된 I 프레임의 수(NI)를 이용하여 I 프레임의 평균 크기(SIFrameAvg)를 결정한다. 이후, 상기 제어부(210)는 상기 결정된 배속 재생될 스트림의 크기(ST)와 I 프레임의 평균 크기(SIFrameAvg)를 이용하여 배속 재생될 프레임 수(NPossible)를 결정한 후, 전체 프레임 수(NTotal)를 상기 배속 재생될 프레임 수(NPossible)로 나눔으로써 프레임 주기(Ff)를 결정한다. That is, the controller 210 is the size of the double-speed stream to be reproduced in the digital media player using the play speed (Trick speed) requested from the size of the entire stream (S O) and a digital media player that corresponds to the media file (S T ) and the average size S IFrameAvg of the I frame is determined using the size S IFrame of the entire I frame and the number N I of the frames included in the entire stream. Subsequently, the controller 210 determines the number of frames to be played at double speed (N Possible ) by using the determined size of the stream to be reproduced at double speed (S T ) and the average size (S IFrameAvg ) of I frames, and then determines the total number of frames ( The frame period F f is determined by dividing N Total by the number of frames N Possible to be reproduced at double speed.

또한, 상기 제어부(210)는 상기 미디어 파일에 대응하는 인덱스 파일과 상기 PTS 가공을 위해 필요한 정보들을 수집하여 상기 PTS 가공부(250)로 제공한다. 여기서, 상기 PTS 가공을 위해 필요한 정보들은 상기 재생 속도, 재생 방향을 포함하는 의미이다.In addition, the controller 210 collects an index file corresponding to the media file and information necessary for the PTS processing and provides the index file to the PTS processing unit 250. Herein, the information necessary for the PTS processing is meant to include the reproduction speed and the reproduction direction.

또한, 상기 제어부는 미리 설정된 주기(예: 400msce)마다 상기 미디어 파일 재생에 필요한 PAT(Program Association Table) 및 PMT(Program Map Table) 정보를 상기 디지털 미디어 플레이어로 전송하기 위한 기능을 제어 및 처리한다. 여기서, 상기 PAT는 TS에서 사용 가능한 프로그램을 나타내며, PMT는 각 프로그램에 대한 정보를 나타낸다.In addition, the controller controls and processes a function for transmitting PAT (Program Association Table) and PMT (Program Map Table) information required for playing the media file at predetermined intervals (eg, 400 msce) to the digital media player. Here, the PAT represents a program usable in the TS, and the PMT represents information about each program.

상기 저장부(220)는 상기 디지털 미디어 서버의 전반적인 동작을 위한 각종 프로그램 및 데이터를 저장하며, 특히 상기 미디어 컨텐츠를 저장하고, 상기 제어부(210)의 제어에 따라 미디어 컨텐츠를 상기 역다중화부(230)로 제공한다. 상기 미디어 컨텐츠는 MPEG TS 형태의 미디어 파일과 상기 미디어 파일에 대응하는 인덱스 파일로 구성된다. 여기서, 상기 인덱스 파일은 미디어 파일이 녹화될 때 함께 생성된 것으로, 해당 미디어 파일을 재생하기 위해 필요한 정보들을 포함한다. 즉, 상기 인덱스 파일은 해당 미디어 파일의 각 프레임에 대한 인덱스 정보를 포함하며, 상기 인덱스 정보는 해당 프레임의 프레임 타입, 프레임 옵셋, 프레임 크기, 프레임 PTS를 포함한다. 여기서, 상기 프레임 타입은 해당 프레임이 I프레임인지, P프레임인지 혹은 B프레임인지 나타내며, 프레임 옵셋은 미디어 파일의 시작점으로부터 해당 프레임의 옵셋을 나타내고, 프레임 크기는 해당 프레임의 크기를 나타내며, 상기 프레임 PTS는 해당 프레임의 재생 시점을 나타낸다. The storage unit 220 stores various programs and data for the overall operation of the digital media server, and in particular, the media content, and the demultiplexer 230 controls the media content under the control of the controller 210. To provide. The media content is composed of a media file of MPEG TS format and an index file corresponding to the media file. Here, the index file is generated when the media file is recorded and includes information necessary for playing the media file. That is, the index file includes index information for each frame of the media file, and the index information includes a frame type, frame offset, frame size, and frame PTS of the frame. Herein, the frame type indicates whether the corresponding frame is an I frame, a P frame, or a B frame, the frame offset indicates an offset of the frame from the start of the media file, the frame size indicates the size of the frame, and the frame PTS. Indicates the playback time of the frame.

상기 역다중화부(230)는 상기 저장부(220)로부터 제공되는 미디어 컨텐츠에 대한 역다중화를 수행하여 TS 형태의 미디어 파일을 PES(Packetized Elementary Stream)로 변환한 후, 상기 프레임 선택부(240)로 제공한다.The demultiplexer 230 demultiplexes the media content provided from the storage 220 to convert a TS-type media file into a packetized elementary stream (PES), and then the frame selector 240. To provide.

상기 프레임 선택부(240)는 상기 역다중화부(230)로부터 제공되는 PES에서 비디오 PES를 분리한 후, 상기 제어부(210)에서 결정된 프레임 주기에 따라 상기 비디오 PES 중에서 상기 디지털 미디어 플레이어로 제공할 프레임을 선택한다. 이때, 상기 프레임 선택부(240)는 상기 비디오 PES 중에서 상기 프레임 주기에 대응하는 I 프레임을 선택할 수 있으며, 해당 프레임 주기에 I 프레임이 존재하지 않을 시, 상기 프레임 주기에 해당하는 프레임과 가장 가까이 위치한 I 프레임을 선택할 수 있을 것이다. 예를 들어, 도 4에 도시된 바와 같이 비디오 PES가 입력되고, 이때 프레임 주기가 5인 경우, 상기 프레임 선택부(240)는 다섯 프레임을 주기로 I 프레임을 반복적으로 선택(401, 403, 405)할 수 있으며, 이때 해당 주기에 P 프레임(411)이 존재할 시, 상기 P 프레임(411)에 가장 가까이 위치한 I프레임(413)을 선택할 수 있다. 상기 프레임 선택부(240)는 선택된 프레임을 상기 PTS 가공부(250)로 제공한다. 여기서, 각 프레임이 I 프레임인지 혹은 P 프레임인지 여부는 상기 인덱스 파일에 포함된 각 프레임의 프레임 타입 정보로부터 알 수 있다.The frame selector 240 separates the video PES from the PES provided from the demultiplexer 230, and then provides a frame to be provided to the digital media player among the video PESs according to the frame period determined by the controller 210. Select. In this case, the frame selector 240 may select an I frame corresponding to the frame period from the video PES, and when the I frame does not exist in the frame period, the frame selector 240 is located closest to the frame corresponding to the frame period. You will be able to select I frames. For example, as shown in FIG. 4, when the video PES is input and the frame period is 5, the frame selector 240 repeatedly selects I frames every five frames (401, 403, 405). In this case, when the P frame 411 exists in the period, the I frame 413 located closest to the P frame 411 may be selected. The frame selector 240 provides the selected frame to the PTS processing unit 250. Here, whether each frame is an I frame or a P frame can be known from frame type information of each frame included in the index file.

상기 PTS 가공부(250)는 인덱스 파일과 PTS 가공을 위해 필요한 정보들을 입력받고, 입력된 정보들을 이용하여 상기 프레임 선택부(240)로부터 제공되는 선택된 프레임들의 원래 PTS 정보를 하기 수학식 2와 같이 가공한다. The PTS processing unit 250 receives the index file and the information necessary for the PTS processing, and uses the input information to perform original PTS information of the selected frames provided from the frame selection unit 240 as shown in Equation 2 below. Processing.

Figure pat00005
Figure pat00005

Figure pat00006
Figure pat00006

여기서, 상기 DT는 재생 방향을 의미하며, PTScur _ original은 현재 가공하고자 하는 프레임의 원래 PTS를 의미하며, 상기 PTSprev - original은 이전에 가공한 프레임의 원래 PTS를 의미한다. 또한, 상기 PTScur _ new는 현재 가공하고자 하는 프레임의 새로운 PTS를 의미하며, 상기 PTSprev _ new는 이전에 가공한 프레임의 새로운 PTS값을 의미하고, TrickSpeed는 재생 속도를 의미한다. 여기서, 상기 재생 방향은 순 방향 재생일 경우에 1이고, 역 방향 재생일 경우에는 -1이 될 것이다.Here, D T means a playback direction, PTS cur _ original means the original PTS of the frame to be currently processed, and PTS prev - original means the original PTS of the previously processed frame. In addition, the PTS cur _ new means a new PTS of the frame to be currently processed, the PTS prev _ new means a new PTS value of the previously processed frame, Trick Speed means the playback speed. Here, the regeneration direction will be 1 for forward regeneration and -1 for reverse regeneration.

즉, 상기 PTS 가공부(250)는 현재 가공하고자 하는 프레임의 원래 PTS(PTScur_original)와 이전에 가공한 프레임의 원래 PTS(PTSprev - original), 그리고 재생 방향(DT)을 이용하여 PTS 차이 값(PTSDiff)을 결정한 후, 상기 PTS 차이 값(PTSDiff)과, 이전에 가공한 프레임의 새로운 PTS값(PTSprev _ new), 재생 속도(TrickSpeed)를 이용하여 현재 가공하고자 하는 프레임의 새로운 PTS(PTScur _ new)를 결정할 수 있다. 물론, 이때 가장 처음 선택된 프레임의 PTS는 미리 설정된 값(예: 1)으로 가공될 수 있을 것이다.That is, the PTS processing unit 250 uses the original PTS (PTS cur_original ) of the frame to be currently processed, the original PTS (PTS prev - original ) of the previously processed frame, and the PTS difference using the reproduction direction (D T ). After determining the value (PTS Diff ), the PTS difference value (PTS Diff ), the new PTS value (PTS prev _ new ) and the playback speed (Trick Speed ) of the previously processed frame are used to determine the current frame. A new PTS (PTS cur _ new ) can be determined. Of course, at this time, the PTS of the first selected frame may be processed to a preset value (eg, 1).

상기 PTS 가공부(250)의 PTS 가공 방식을 예로 들어, 상기 도 4에 도시된 바와 같이, I 프레임들이 선택된 상황에서 재생 속도가 5이고 재생 방향이 순방향인 경우, 원래 PTS가 10인 I 프레임(403)의 PTS를 가공하는 경우를 살펴보기로 한다. 상기 도 4에서, 이전 선택된 I 프레임(401)의 원래 PTS가 10이고 가공된 PTS가 1이므로, 상기 PTS 가공부(250)는 현재 가공하고자 하는 I 프레임(403)의 PTS를 " 1 + ( ( 1 ×( 15 - 10 )) / 5) "를 통해 2로 설정할 수 있다.Taking the PTS processing method of the PTS processing unit 250 as an example, as shown in FIG. 4, when the playback speed is 5 and the playback direction is forward when I frames are selected, an I frame having an original PTS of 10 ( The case of processing the PTS of 403) will be described. In FIG. 4, since the original PTS of the previously selected I frame 401 is 10 and the processed PTS is 1, the PTS processing unit 250 sets the PTS of the I frame 403 to be processed to "1 + (( It can be set to 2 via 1 × (15-10)) / 5) ".

상기 PTS 가공부(250)는 상기 가공된 PTS를 포함하는 선택된 프레임들 각각의 인덱스 정보를 상기 다중화부(260)로 제공한다. The PTS processing unit 250 provides the multiplexer 260 with index information of each of the selected frames including the processed PTS.

상기 다중화부(260)는 상기 PTS 가공부(250)로부터 제공되는 선택된 프레임들과 대응하는 인덱스 정보를 다중화하여 TS 형태의 미디어 파일과 인덱스 파일로 변환하고, 변환된 TS 형태의 미디어 파일과 인덱스 파일을 상기 전송부(270)로 제공한다.The multiplexer 260 multiplexes the index information corresponding to the selected frames provided from the PTS processing unit 250 and converts the index information into a TS type media file and an index file, and converts the converted TS type media file and index file. It provides to the transmission unit 270.

상기 전송부(270)는 상기 TS 형태의 미디어 파일과 인덱스 파일을 상기 디지털 미디어 플레이어로 전송한다.
The transmitter 270 transmits the TS file and the index file to the digital media player.

도 3은 본 발명의 실시 예에 따른 범용 플러그 앤 플레이 네트워크에서 디지털 미디어 서버의 동작 절차를 도시하고 있다.3 is a flowchart illustrating an operation procedure of a digital media server in a universal plug and play network according to an exemplary embodiment of the present invention.

상기 도 3을 참조하면, 상기 디지털 미디어 서버는 301단계에서 디지털 미디어 플레이어로부터 배속 재생이 요청된 특정 미디어 컨텐츠에 대한 MPEG TS 미디어 파일 및 인덱스 파일을 입력받고, 303단계에서 상기 디지털 미디어 플레이어로부터 요청된 재생 속도에 따라 프레임 주기를 결정한다. 여기서, 상기 디지털 미디어 서버는 상기 수학식 1과 같이, 미디어 파일에 해당하는 전체 스트림의 크기(SO)와 디지털 미디어 플레이어에서 요청된 재생 속도(Trickspeed)를 이용하여 상기 디지털 미디어 플레이어에서 배속 재생될 스트림의 크기(ST)를 결정하고, 전체 I 프레임의 크기(SIFrame)와 전체 스트림에 포함된 I 프레임의 수(NI)를 이용하여 I 프레임의 평균 크기(SIFrameAvg)를 결정한 후, 상기 결정된 배속 재생될 스트림의 크기(ST)와 I 프레임의 평균 크기(SIFrameAvg)를 이용하여 배속 재생될 프레임 수(NPossible)를 결정하고, 전체 프레임 수(NTotal)를 상기 배속 재생될 프레임 수(NPossible)로 나눔으로써 프레임 주기(Ff)를 결정할 수 있다.Referring to FIG. 3, the digital media server receives an MPEG TS media file and an index file for specific media content requested for double speed playback from the digital media player in step 301, and requests the digital media server from the digital media player in step 303. The frame period is determined according to the playback speed. In this case, the digital media server plays back at the digital media player using the size (S O ) of the entire stream corresponding to the media file and the play speed (Trick speed ) requested by the digital media player, as shown in Equation 1 above. Determine the size of the stream to be (S T ), and determine the average size of the I frame (S IFrameAvg ) by using the size of the entire I frame (S IFrame ) and the number of I frames (N I ) included in the entire stream. The frame rate (N Possible ) to be played back is determined by using the determined size of the stream to be played (S T ) and the average size (S IFrameAvg ) of I frames, and the total number of frames (N Total ) is played back. by dividing the number of frames to be (N Possible) may determine a frame period (f f).

이후, 상기 디지털 미디어 서버는 305단계에서 역다중화를 수행하여 TS 형태의 미디어 파일을 PES(Packetized Elementary Stream)를 획득하고, 307단계에서 상기 결정된 프레임 주기에 따라 상기 PES를 구성하는 프레임들 중에서 상기 디지털 미디어 플레이어로 제공할 프레임을 선택한다. 여기서, 상기 디지털 미디어 서버는 상기 결정된 프레임 주기에 따라 PES로부터 추출한 기본 스트림(ES)들 중에서 상기 디지털 미디어 플레이어로 제공할 프레임을 선택할 수 있다. 이때, 상기 디지털 미디어 서버는 상기 PES 중에서 상기 프레임 주기에 대응하는 I 프레임을 선택할 수 있으며, 해당 프레임 주기에 I 프레임이 존재하지 않을 시, 상기 프레임 주기에 해당하는 프레임과 가장 가까이 위치한 I 프레임을 선택할 수 있을 것이다. 예를 들어, 도 4에 도시된 바와 같이 PES가 입력되고, 이때 프레임 주기가 5인 경우, 상기 디지털 미디어 서버는 다섯 프레임을 주기로 I 프레임을 반복적으로 선택(401, 403, 405)할 수 있으며, 이때 해당 주기에 P 프레임(411)이 존재할 시, 상기 P 프레임(411)에 가장 가까이 위치한 I프레임(413)을 선택할 수 있다. In step 305, the digital media server performs demultiplexing to obtain a packetized elementary stream (PES) of the media file in TS format, and in step 307, the digital media server performs the digital processing among the frames constituting the PES according to the determined frame period. Select the frame you want to give to the media player. Here, the digital media server may select a frame to be provided to the digital media player among elementary streams (ES) extracted from the PES according to the determined frame period. In this case, the digital media server may select an I frame corresponding to the frame period among the PES, and when there is no I frame in the frame period, select the I frame located closest to the frame corresponding to the frame period. Could be. For example, as shown in FIG. 4, when the PES is input and the frame period is 5, the digital media server may repeatedly select (401, 403, 405) I frames every five frames. In this case, when the P frame 411 exists in the period, the I frame 413 located closest to the P frame 411 may be selected.

이후, 상기 디지털 미디어 서버는 309단계에서 상기 선택된 프레임의 PTS를 가공한다. 즉, 상기 디지털 미디어 서버는 상기 인덱스 파일에서 상기 선택된 프레임에 대한 원래 PTS를 확인하고, 상기 원래 PTS와 상기 재생 속도 및 재생 방향을 이용하여 상기 선택된 프레임에 대한 PTS를 재설정한다. 여기서, 상기 디지털 미디어 서버는 상기 수학식 2에 나타낸 바와 같이, 현재 프레임의 원래 PTS(PTScur_original)와 이전 프레임의 원래 PTS(PTSprev - original), 그리고 재생 방향(DT)을 이용하여 PTS 차이 값(PTSDiff)을 결정한 후, 상기 PTS 차이 값(PTSDiff)과 이전 프레임의 새로운 PTS(PTSprev _ new), 및 재생 속도(TrickSpeed)를 이용하여 현재 프레임의 새로운 PTS(PTScur _ new)를 결정할 수 있다. 예를 들어, 상기 도 4에 도시된 바와 같이, I 프레임들이 선택된 상황에서 재생 속도가 5이고 재생 방향이 순방향인 경우, 원래 PTS가 10인 I 프레임(403)의 PTS를 가공하는 경우를 살펴보면, 이전 선택된 I 프레임(401)의 원래 PTS가 10이고 가공된 PTS가 1이므로, 현재 I 프레임(403)의 PTS를 " 1 + ( ( 1 ×( 15 - 10 )) / 5) "를 통해 2로 재설정할 수 있다.In step 309, the digital media server processes the PTS of the selected frame. That is, the digital media server identifies the original PTS for the selected frame in the index file and resets the PTS for the selected frame using the original PTS, the playback speed, and the playback direction. Here, the digital media server, as shown in Equation 2, PTS difference using the original PTS (PTS cur_original ) of the current frame, the original PTS (PTS prev - original ) of the previous frame, and the playback direction (D T ). value (PTS Diff) and then determining the new PTS of the PTS difference value (PTS Diff) and the previous frame (PTS prev _ new), and the playback speed (Trick speed) PTS (the new PTS of the current frame using the cur _ new ) Can be determined. For example, as shown in FIG. 4, when the playback speed is 5 and the playback direction is forward when I frames are selected, a case in which the PTS of the I frame 403 whose original PTS is 10 is processed will be described. Since the original PTS of the previously selected I frame 401 is 10 and the processed PTS is 1, the PTS of the current I frame 403 is 2 through "1 + ((1 × (15-10)) / 5)". You can reset it.

이후, 상기 디지털 미디어 서버는 311단계에서 상기 선택된 프레임들과 상기 선택된 프레임에 대응하는 인덱스 정보에 대해 다중화를 수행하여 TS 미디어 파일과 인덱스 파일로 변환하고, 313단계에서 상기 변환된 TS 미디어 파일과 인덱스 파일을 상기 디지털 미디어 플레이어로 전송한다.In operation 311, the digital media server multiplexes the selected frames and the index information corresponding to the selected frames to convert them into TS media files and index files, and in step 313, the converted TS media files and indexes. Send a file to the digital media player.

이후, 상기 디지털 미디어 서버는 본 발명에 따른 알고리즘을 종료한다.
The digital media server then terminates the algorithm according to the invention.

상술한 바와 같이, 본 발명에서는 배속 재생의 경우, 디지털 미디어 서버가 선택된 프레임의 PTS 정보를 수학식 4와 같은 방식으로 순차적으로 증가시키거나 감소시켜 디지털 미디어 플레이어에 제공한다. 그러나, 배속 재생 타입이 느리게 재생(slow play)인 경우에는 상기 수학식 4와 같이 PTS를 순차적으로 증가 혹은 감소시키는 방식을 이용할 수 없으므로, 원래의 PTS를 동일하게 사용하되 적어도 하나의 프레임을 중복하여 전송함으로써, 상기 디지털 미디어 플레이어가 배속 재생을 위한 별도의 처리 과정을 수행하지 않고서도 해당 미디어를 느리게 재생할 수 있도록 한다.As described above, in the present invention, in the case of double speed playback, the digital media server sequentially increases or decreases the PTS information of the selected frame in the same manner as in Equation 4 to provide the digital media player. However, when the slow play type is slow play, the method of sequentially increasing or decreasing the PTS cannot be used as shown in Equation 4, so that the original PTS is used in the same manner, but at least one frame is overlapped. By transmitting, the digital media player can play the media slowly without performing a separate process for double speed playback.

상술한 설명에서는 스트림을 구성하는 프레임들 중에서 I 프레임만을 선택하는 것에 대해 설명하였으나, 사업자 및 설계자의 설계 방식에 따라 P프레임과 B프레임을 선택하는 것도 가능할 것이다. 즉, 본 발명은 상술한 바와 같이 I 프레임만을 선택할 수도 있으며, 소정 규칙에 따라 I프레임과 P프레임을 선택하거나 I프레임과 P프레임 및 B프레임을 선택할 수도 있을 것이다.
In the above description, only the I frame is selected from among the frames constituting the stream. However, the P frame and the B frame may be selected according to the design method of the operator and the designer. That is, the present invention may select only I frames as described above, and may select I frames and P frames or I frames and P frames and B frames according to a predetermined rule.

한편 본 발명의 상세한 설명에서는 구체적인 실시 예에 관해 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능하다. 그러므로 본 발명의 범위는 설명된 실시 예에 국한되어 정해져서는 아니 되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.
Meanwhile, in the detailed description of the present invention, specific embodiments have been described, but various modifications may be made without departing from the scope of the present invention. Therefore, the scope of the present invention should not be limited to the described embodiments, but should be determined not only by the scope of the following claims, but also by the equivalents of the claims.

100: 디지털 미디어 서버(Digital Media Server)
102: 디지털 미디어 플레이어(Digital Media Player)
200: 수신부 210: 제어부
220: 저장부 230: 역다중화부
240: 프레임 선택부 250: PTS 가공부
260: 다중화부 270: 전송부
100: Digital Media Server
102: Digital Media Player
200: receiver 210: controller
220: storage unit 230: demultiplexer
240: frame selection section 250: PTS processing section
260: multiplexer 270: transmission unit

Claims (22)

디지털 미디어 서버의 미디어 배속 재생 제공 방법에 있어서,
디지털 미디어 플레이어로부터 배속 재생을 요청받는 과정과,
상기 배속 재생 요청에 기초하여 디지털 미디어 플레이어로 전송할 프레임들을 선택하는 과정과,
상기 선택된 프레임들의 재생 시간에 대한 정보를 재설정하는 과정과,
상기 재설정된 재생 시간 정보 및 선택된 프레임들을 상기 디지털 미디어 플레이어로 전송하는 과정을 포함하는 것을 특징으로 하는 방법.
In the method of providing media double speed playback of a digital media server,
Receiving a request for double speed playback from a digital media player,
Selecting frames to be transmitted to the digital media player based on the double speed playback request;
Resetting information on a play time of the selected frames;
Transmitting the reset playback time information and the selected frames to the digital media player.
제 1항에 있어서,
상기 프레임들을 선택하는 과정은,
디지털 미디어 플레이어로부터 요청된 재생 속도에 따라 프레임 주기를 결정하는 과정과,
미디어 파일을 역다중화하여 PES(Packetized Elementary Stream) 혹은 ES(Elementary Stream)를 획득하는 과정과,
상기 프레임 주기에 따라 상기 PES 혹은 ES에서 프레임들을 선택하는 과정을 포함하는 것을 특징으로 하는 방법.
The method of claim 1,
The process of selecting the frames,
Determining a frame period according to the playback rate requested from the digital media player;
Demultiplexing the media file to obtain a Packetized Elementary Stream (PES) or Elementary Stream (ES);
Selecting frames in the PES or ES according to the frame period.
제 2항에 있어서,
상기 프레임 주기는, 재생 속도, 프레임 주기, 미디어 파일에 해당하는 스트림의 전체 크기, 배속 재생될 스트림의 크기, 전체 스트림에 포함된 I 프레임의 수, 전체 I 프레임의 크기, I 프레임의 평균 크기, 배속 재생될 프레임 수 중 적어도 하나를 이용하여 결정하는 것을 특징으로 하는 방법.
The method of claim 2,
The frame period may include a playback speed, a frame period, the total size of the stream corresponding to the media file, the size of the stream to be played at a double speed, the number of I frames included in the entire stream, the size of the entire I frame, the average size of the I frames, And determining at least one of the number of frames to be reproduced at double speed.
제 1항에 있어서,
상기 선택된 프레임들의 재생 시간 정보를 재설정하는 과정은,
미디어 파일에 대응하는 인덱스 파일에서 선택된 프레임들 각각에 대응하는 원래 재생 시간 정보를 획득하는 과정과,
상기 원래 재생 시간 정보와 재생 방향 및 재생 속도 중 적어도 하나를 고려하여 상기 선택된 프레임들 각각의 재생 시간 정보를 재설정하는 과정을 포함하는 것을 특징으로 하는 방법.
The method of claim 1,
Resetting the play time information of the selected frames,
Obtaining original play time information corresponding to each of the frames selected from the index file corresponding to the media file;
And resetting the play time information of each of the selected frames in consideration of the original play time information and at least one of a play direction and a play speed.
제 4항에 있어서,
상기 각각의 재생 시간 정보를 재설정하는 과정은,
상기 선택된 프레임들 중에서 현재 프레임의 원래 재생 시간 정보와 이전 프레임의 원래 재생 시간 정보 및 재생 방향을 이용하여 재생 시간 정보 차이 값을 결정하는 과정과,
상기 재생 시간 정보 차이 값과 이전 프레임의 재설정된 재생 시간 정보와 재생 속도를 이용하여 현재 프레임의 새로운 재생 시간 정보를 결정하는 과정을 포함하는 것을 특징으로 하는 방법.
The method of claim 4, wherein
Resetting the respective play time information,
Determining a difference value of the reproduction time information using the original reproduction time information of the current frame, the original reproduction time information of the previous frame, and the reproduction direction among the selected frames;
And determining the new play time information of the current frame by using the play time information difference value, the reset play time information of the previous frame and the play speed.
제 2항에 있어서,
상기 프레임 주기에 따라 상기 PES 혹은 ES에서 프레임들을 선택하는 과정은,
프레임 주기에 해당하는 프레임이 I 프레임인지 검사하는 과정과,
상기 해당 프레임이 I 프레임일 시, 해당 프레임을 선택하는 과정과,
상기 해당 프레임이 I 프레임이 아닐 시, 상기 프레임 주기에 해당하는 프레임에 가장 가까이 위치한 I 프레임을 선택하는 과정을 포함하는 것을 특징으로 하는 방법.
The method of claim 2,
The process of selecting frames in the PES or ES according to the frame period,
Checking whether the frame corresponding to the frame period is an I frame,
Selecting the frame when the frame is an I frame;
If the corresponding frame is not an I frame, selecting the I frame located closest to the frame corresponding to the frame period.
제 1항에 있어서,
상기 재설정된 재생 시간 정보를 갖는 선택된 프레임들을 상기 디지털 미디어 플레이어로 전송하는 과정은,
상기 선택된 프레임들과 상기 재설정된 재생 시간 정보를 포함하는 인덱스 파일을 다중화하는 과정을 포함하는 것을 특징으로 하는 방법.
The method of claim 1,
The transmitting of the selected frames having the reset play time information to the digital media player may include:
And multiplexing an index file including the selected frames and the reset play time information.
미디어 배속 재생을 위한 디지털 미디어 서버 장치에 있어서,
디지털 미디어 플레이어로부터 배속 재생을 요청받는 수신부와,
상기 배속 재생 요청에 기초하여 디지털 미디어 플레이어로 전송할 프레임들을 선택하고, 상기 선택된 프레임들의 재생 시간 정보를 재설정하기 위한 기능을 제어하는 제어부와,
상기 재설정된 재생 시간 정보 및 선택된 프레임들을 상기 디지털 미디어 플레이어로 전송하는 전송부를 포함하는 것을 특징으로 하는 장치.
In the digital media server device for media double speed playback,
A receiving unit for requesting double speed playback from a digital media player,
A controller configured to select frames to be transmitted to the digital media player based on the double speed playback request and to control a function for resetting playback time information of the selected frames;
And a transmitter for transmitting the reset play time information and the selected frames to the digital media player.
제 8항에 있어서,
상기 제어부는, 디지털 미디어 플레이어로부터 요청된 재생 속도에 따라 프레임 주기를 결정하며,
미디어 파일을 역다중화하여 PES(Packetized Elementary Stream) 혹은 ES(Elementary Stream)를 획득하는 역다중화부와,
상기 프레임 주기에 따라 상기 PES 혹은 ES에서 프레임들을 선택하는 프레임 선택부를 더 포함하는 것을 특징으로 하는 장치.
The method of claim 8,
The controller determines a frame period according to the playback rate requested from the digital media player,
A demultiplexer for demultiplexing the media file to obtain a packetized elementary stream (PES) or an elementary stream (ES);
And a frame selector for selecting frames in the PES or ES according to the frame period.
제 9항에 있어서,
상기 프레임 주기는, 재생 속도, 프레임 주기, 미디어 파일에 해당하는 스트림의 전체 크기, 배속 재생될 스트림의 크기, 전체 스트림에 포함된 I 프레임의 수, 전체 I 프레임의 크기, I 프레임의 평균 크기, 배속 재생될 프레임 수 중 적어도 하나를 이용하여 결정하는 것을 특징으로 하는 장치.
The method of claim 9,
The frame period may include a playback speed, a frame period, the total size of the stream corresponding to the media file, the size of the stream to be played at a double speed, the number of I frames included in the entire stream, the size of the entire I frame, the average size of the I frames, And determining at least one of the number of frames to be reproduced at double speed.
제 8항에 있어서,
상기 제어부의 제어에 따라 미디어 파일에 대응하는 인덱스 파일에서 선택된 프레임들 각각에 대응하는 원래 재생 시간 정보를 획득하고, 상기 원래 재생 시간 정보와 재생 방향 및 재생 속도 중 적어도 하나를 고려하여 상기 선택된 프레임들 각각의 재생 시간 정보를 재설정하는 재생 시간 정보 가공부를 더 포함하는 것을 특징으로 하는 장치.
The method of claim 8,
Under the control of the control unit, original playback time information corresponding to each of the frames selected from the index file corresponding to the media file is obtained, and the selected frames are considered in consideration of at least one of the original playback time information, a playback direction, and a playback speed. And a reproduction time information processing unit for resetting each reproduction time information.
제 11항에 있어서,
상기 재생 시간 정보 가공부는, 상기 선택된 프레임들 중에서 현재 프레임의 원래 재생 시간 정보와 이전 프레임의 원래 재생 시간 정보 및 재생 방향을 이용하여 재생 시간 정보 차이 값을 결정하고, 상기 재생 시간 정보 차이 값과 이전 프레임의 재설정된 재생 시간 정보와 재생 속도를 이용하여 현재 프레임의 새로운 재생 시간 정보를 결정하는 것을 특징으로 하는 장치.
12. The method of claim 11,
The reproduction time information processing unit may determine a reproduction time information difference value using the original reproduction time information of the current frame, the original reproduction time information of the previous frame, and the reproduction direction among the selected frames, and determine the reproduction time information difference value and the previous value. And determining the new play time information of the current frame by using the reset play time information and the play speed of the frame.
제 9항에 있어서,
상기 프레임 선택부는, 프레임 주기에 해당하는 프레임이 I 프레임인지 검사하여 상기 해당 프레임이 I 프레임일 시, 해당 프레임을 선택하고, 상기 해당 프레임이 I 프레임이 아닐 시, 상기 프레임 주기에 해당하는 프레임에 가장 가까이 위치한 I 프레임을 선택하는 것을 특징으로 하는 장치.
The method of claim 9,
The frame selector checks whether a frame corresponding to a frame period is an I frame, selects the frame when the frame is an I frame, and selects the frame when the frame is not an I frame. Device for selecting the nearest I frame.
제 8항에 있어서,
상기 선택된 프레임들과 상기 재설정된 재생 시간 정보를 포함하는 인덱스 파일을 다중화하여 상기 전송부로 제공하는 다중화부를 더 포함하는 것을 특징으로 하는 장치.
The method of claim 8,
And a multiplexer configured to multiplex the index file including the selected frames and the reset play time information to the transmitter.
디지털 미디어 플레이어에서 미디어 배속 재생 방법에 있어서,
디지털 미디어 서버로 미디어 배속 재생을 요청하는 과정과,
상기 디지털 미디어 서버로부터 재생할 프레임들 및 상기 재생할 프레임들에 대한 재생 시간 정보를 수신하는 과정과,
상기 재생 시간 정보에 따라 상기 디지털 미디어 서버로부터 수신되는 모든 프레임들을 재생하는 과정을 포함하는 것을 특징으로 하는 방법.
In the media speed playback method in a digital media player,
Requesting media play to the digital media server;
Receiving frames to be reproduced from the digital media server and play time information of the frames to be reproduced;
Playing all frames received from the digital media server according to the play time information.
제 15항에 있어서,
상기 프레임 수신 과정은,
TS(Transport Stream)을 수신하여 PES(Packetized Elementary Stream) 혹은 ES(Elementary Stream)으로 변환하는 과정을 포함하는 것을 특징으로 하는 방법
16. The method of claim 15,
The frame receiving process,
Receiving a TS and converting the TS into a packetized elementary stream (PES) or an elementary stream (ES);
제 15항에 있어서,
상기 재생 시간 정보 수신 과정은,
송신기로부터 생성된 인덱스 파일을 수신하여 PTS(Presentation Time Stamp)를 추출하는 과정을 포함하는 것을 특징으로 하는 방법
16. The method of claim 15,
The play time information receiving process,
Receiving a index file generated from a transmitter and extracting a presentation time stamp (PTS);
제 15항에 있어서,
상기 모든 프레임들을 재생하는 과정은,
미디어 서버로 요청한 배속에 관계없이 상기 재생 시간 정보에 기초하여 모든 프레임들을 순차적으로 재생하는 과정을 포함하는 것을 특징으로 하는 방법.
16. The method of claim 15,
The process of playing all the frames,
And sequentially playing all frames based on the play time information regardless of the speed requested by the media server.
디지털 미디어 플레이어에서 미디어 배속 재생 장치에 있어서,
디지털 미디어 서버로 미디어 배속 재생을 요청하는 전송부와,
상기 디지털 미디어 서버로부터 재생할 프레임들 및 상기 재생할 프레임들에 대한 재생 시간 정보를 수신하는 수신부와,
상기 재생 시간 정보에 따라 상기 디지털 미디어 서버로부터 수신되는 모든 프레임들을 재생하는 재생부를 포함하는 것을 특징으로 하는 장치.
In a media double speed playback apparatus in a digital media player,
A transmission unit for requesting media double speed playback to a digital media server;
A receiving unit which receives frames to be reproduced from the digital media server and play time information on the frames to be reproduced;
And a reproducing unit reproducing all frames received from the digital media server according to the reproducing time information.
제 19항에 있어서,
상기 수신부는,
TS(Transport Stream)을 수신하여 PES(Packetized Elementary Stream) 혹은 ES(Elementary Stream)으로 변환하는 것을 특징으로 하는 장치
20. The method of claim 19,
The receiver may further comprise:
A device characterized by receiving a transport stream (TS) and converting it into a packetized elementary stream (PES) or an elementary stream (ES)
제 19항에 있어서,
상기 수신부는,
송신기로부터 생성된 인덱스 파일을 수신하여 PTS(Presentation Time Stamp)를 추출하는 것을 특징으로 하는 장치
20. The method of claim 19,
The receiver may further comprise:
Receiving an index file generated from the transmitter to extract a PTS (Presentation Time Stamp)
제 19항에 있어서,
상기 재생부는, 미디어 서버로 요청한 배속에 관계없이 상기 재생 시간 정보에 기초하여 모든 프레임들을 순차적으로 재생하는 것을 특징으로 하는 장치.
20. The method of claim 19,
And the playback unit sequentially plays all frames based on the play time information regardless of the speed requested by the media server.
KR1020110009289A 2011-01-31 2011-01-31 Method and apparatus for media trick playing in universal plug and play KR101762754B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110009289A KR101762754B1 (en) 2011-01-31 2011-01-31 Method and apparatus for media trick playing in universal plug and play

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110009289A KR101762754B1 (en) 2011-01-31 2011-01-31 Method and apparatus for media trick playing in universal plug and play

Publications (2)

Publication Number Publication Date
KR20120088148A true KR20120088148A (en) 2012-08-08
KR101762754B1 KR101762754B1 (en) 2017-07-28

Family

ID=46873478

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110009289A KR101762754B1 (en) 2011-01-31 2011-01-31 Method and apparatus for media trick playing in universal plug and play

Country Status (1)

Country Link
KR (1) KR101762754B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021119052A1 (en) * 2019-12-12 2021-06-17 Arris Enterprises Llc Methods and systems for trick play using partial video file chunks

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006295645A (en) * 2005-04-12 2006-10-26 Matsushita Electric Ind Co Ltd Special reproduction data producing method, delivery device and video reproducing system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021119052A1 (en) * 2019-12-12 2021-06-17 Arris Enterprises Llc Methods and systems for trick play using partial video file chunks
US11616997B2 (en) 2019-12-12 2023-03-28 Arris Enterprises Llc Methods and systems for trick play using partial video file chunks

Also Published As

Publication number Publication date
KR101762754B1 (en) 2017-07-28

Similar Documents

Publication Publication Date Title
JP6783293B2 (en) Synchronizing multiple over-the-top streaming clients
JP4944484B2 (en) Playback apparatus, playback method, and program
CN105814900B (en) System and method for managing adjacent channel in adaptive streaming environment
JP6935552B2 (en) Transmission method, reception method, transmitter and receiver
US20140137168A1 (en) Transmitting apparatus, control method for transmitting apparatus, control program, and recording medium
US20060195884A1 (en) Interactive multichannel data distribution system
WO2012067219A1 (en) Device for generating content data, method for generating content data, computer program, and recording medium
JP2021040342A (en) System and method for providing audio content during trick-play playback
WO2012089014A1 (en) Method, device and system for generating media file
EP2061241A1 (en) Method and device for playing video data of high bit rate format by player suitable to play video data of low bit rate format
WO2018103696A1 (en) Media file playback method, server, client, and system
JP2006339855A (en) Network control apparatus, coding system conversion apparatus, and content data reproduction system
EP2643977B1 (en) Method and apparatus for processing a video signal
KR101762754B1 (en) Method and apparatus for media trick playing in universal plug and play
EP3193508B1 (en) Distribution device and information device
JP7275212B2 (en) Transmission method, reception method, transmission device and reception device
CN114257771B (en) Video playback method and device for multipath audio and video, storage medium and electronic equipment
US20120246269A1 (en) Data processing apparatus, data processing method, and computer program product
WO2020184357A1 (en) Information processing device, information processing method, and information processing program
JP2017130957A (en) Transmitter, transmission method, playback device, and playback method
JP2012156808A (en) Image transmission system and image reproducing device
JP2012222530A (en) Receiving device and method, and program
JP2004289629A (en) Apparatus and method for sending image data out
JP2019029931A (en) Video transmitter, video receiver, video transmission/reception system, control method, and program
KR101507993B1 (en) Method for streaming contents by partial content synchronization and its system

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