KR100865683B1 - How to store multidimensional scalable video data - Google Patents
How to store multidimensional scalable video data Download PDFInfo
- Publication number
- KR100865683B1 KR100865683B1 KR1020070061509A KR20070061509A KR100865683B1 KR 100865683 B1 KR100865683 B1 KR 100865683B1 KR 1020070061509 A KR1020070061509 A KR 1020070061509A KR 20070061509 A KR20070061509 A KR 20070061509A KR 100865683 B1 KR100865683 B1 KR 100865683B1
- Authority
- KR
- South Korea
- Prior art keywords
- unit
- data
- scalability
- stream
- video data
- Prior art date
- Legal status (The legal status 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 status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/91—Television signal processing therefor
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/23406—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving management of server-side video buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/266—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
- H04N21/2662—Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Databases & Information Systems (AREA)
- Television Signal Processing For Recording (AREA)
Abstract
본 발명은 다차원 확장성 비디오 데이터의 저장 방법에 관한 것으로서, 특히 다차원 확장성 비디오 데이터(Multi-Dimensional Scalable Video Data)를 스트리밍 서비스로 전송하기 위하여 찾기 연산이 수행되는 디스크에 비디오 데이터를 저장하는 방법에 관한 것으로, 더욱 상세하게는 확장성 레벨에 따라 프레임을 부분적으로 추출할 시, 다수번의 찾기 연산에 따른 찾기 지연을 방지하고, 이에 따른 디스크의 오버 헤드를 감소시키며, 이에 따라 서버의 과부하를 줄일 수 있고, 메모리 및 디스크의 처리율(Throughput)을 증가시키며, 디코딩에서 요구되지 않는 과잉 데이터를 읽는 시간이 감소되고, 이에 따라 서버에서 클라이언트의 요청에 따라 원활한 스트리밍 서비스를 제공할 수 있는 다차원 확장성 비디오 데이터의 저장 방법을 제공하기 위한 것으로서, 그 기술적 구성은 다차원 확장성 비디오 스트림을 해상도를 조절하는 확장성 레벨에 따라 단위 스트림으로 분리하는 제1 단계; 상기 단위 스트림을 스트리밍 서비스 주기 단위로 배열하는 제2 단계; 스트리밍 서비스 주기에 디스크로부터 읽어야 하는 읽기 데이터가 최소화되도록 상기 단위 스트림을 재배열하여 디스크에 비디오 데이터를 저장하는 제3 단계;를 포함하여 이루어지는 것을 특징으로 한다.The present invention relates to a method of storing multi-dimensional scalable video data, and more particularly, to a method of storing video data on a disk on which a search operation is performed to transmit multi-dimensional scalable video data to a streaming service. More specifically, when partially extracting a frame according to the level of scalability, it is possible to prevent a search delay caused by a plurality of search operations, thereby reducing the overhead of the disk, thereby reducing the overhead of the server Multi-dimensional scalable video data, which increases throughput of memory and disk, reduces the time for reading excess data that is not required for decoding, and thus enables the server to provide a smooth streaming service upon client request. To provide a storage method of the technology Configuring a first step for separating the unit streams in accordance with the scale level to control the resolution of the multi-dimensional scalability, the video stream; Arranging the unit streams in units of streaming service periods; And rearranging the unit stream to store video data on the disk in such a manner that the read data to be read from the disk is minimized during the streaming service cycle.
Description
도 1은 본 발명에 따른 다차원 확장성 비디오 데이터의 저장 방법을 개략적으로 도시한 블록도.1 is a block diagram schematically illustrating a method for storing multidimensional scalable video data according to the present invention;
도 2는 본 발명에 따른 다차원 확장성 비디오 데이터의 저장 방법을 개략적으로 도시한 블록도.2 is a block diagram schematically illustrating a method of storing multidimensional scalable video data according to the present invention;
도 3은 도 2의 단일 스트림 재배열 방법의 연산량을 감소시키는 방법을 개략적으로 도시한 블록도.3 is a block diagram schematically illustrating a method of reducing the amount of computation of the single stream rearrangement method of FIG.
도 4는 본 발명에 따른 공간적 확장성과 시간적 확장성을 가지는 확장성 비디오 스트림의 단위 스트림 구성을 도시한 도.4 is a diagram illustrating a unit stream configuration of a scalable video stream having spatial scalability and temporal scalability according to the present invention.
도 5는 일반적인 비디오 데이터의 저장 상태 및 본 발명에 따른 다차원 확장성 비디오 데이터의 저장 방법으로 비디오 데이터를 저장하는 순서를 개략적으로 도시한 도.5 is a diagram schematically illustrating a storage state of general video data and a procedure of storing video data in a method of storing multidimensional scalable video data according to the present invention.
도 6은 본 발명에 따른 다차원 확장성 비디오 데이터의 저장 방법을 적용한 일 실시예를 나타낸 도.6 is a diagram illustrating an embodiment to which a method of storing multidimensional scalable video data according to the present invention is applied.
도 7은 본 발명에 따른 다차원 확장성 비디오 데이터의 저장 방법을 적용한 일 실시예를 나타낸 도.FIG. 7 illustrates an embodiment to which a method of storing multidimensional scalable video data according to the present invention is applied; FIG.
본 발명은 다차원 확장성 비디오 데이터의 저장 방법에 관한 것으로, 더욱 상세하게는 다차원 확장성 비디오 데이터(Multi-Dimensional Scalable Video Data)를 스트리밍 서비스로 전송하기 위하여 찾기 연산이 수행되는 디스크에 비디오 데이터를 저장하는 방법에 관한 것이다.The present invention relates to a method for storing multi-dimensional scalable video data, and more particularly, to store video data on a disk on which a search operation is performed to transmit multi-dimensional scalable video data to a streaming service. It is about how to.
일반적으로, 확장성 비디오는 다양한 네트워크 환경과 단말기 용량 및 사용자의 선호도에 따라 적응적으로 전송 및 재생할 수 있도록 압축된 비디오이며, 압축된 단일 비디오 스트림만으로 다양한 해상도를 제공한다.In general, scalable video is video compressed to be adaptively transmitted and reproduced according to various network environments, terminal capacities, and user preferences, and provides various resolutions using only a single compressed video stream.
여기서, H.264/MPEG-4 SVC와 같은 다차원의 확장성 비디오는 다양한 화면의 크기를 가지는 비디오를 제공하는 공간적 확장성, 다양한 프레임률의 비디오를 제공하는 시간적 확장성, 특정 프레임률과 특정화면의 크기를 유지하면서 비트율(Bit-Rate)를 조절하여 다양한 품질의 비디오를 제공하는 SNR 확장성 등과 같은 다차원의 확장성을 제공한다.Here, multi-dimensional scalable video such as H.264 / MPEG-4 SVC has spatial scalability to provide video having various screen sizes, temporal scalability to provide video of various frame rates, specific frame rate and specific screen. It provides multi-dimensional scalability such as SNR scalability that provides various quality video by adjusting bit-rate while maintaining the size of.
그리고, 다차원의 확장성을 동시에 적용할 수 있으며, 확장성 비디오를 제공하는 서버는 특정 해상도를 요청하는 클라이언트에 대하여 요청에 상응하는 확장성 레벨을 추출하여 제공한다.In addition, multidimensional scalability may be simultaneously applied, and a server providing scalable video extracts and provides a scalability level corresponding to a request to a client requesting a specific resolution.
그러나, 확장성 비디오는 확장성 레벨에 따라 프레임 등을 부분적으로 추출하기 때문에, 연속적인 프레임 중 부분적인 프레임을 추출하면 스트리밍 서비스 주기 동안에 다수번의 찾기 연산이 수행되며, 찾기 연산이 발생하는 찾기 지연(Seek Latency)은 디스크의 오버 헤드(Over Head)를 유발하는 주요 원인으로 작용하고, 이에 따라 서버의 과부하를 유발할 수 있으며, 메모리 및 디스크의 처리율(Throughput)이 저하되며, 디코딩에서 요구되지 않는 과잉 데이터를 읽는 시간이 증가되는 등의 문제점이 있었다.However, since scalable video partially extracts frames and the like according to the scalability level, when partial frames are extracted from successive frames, a plurality of search operations are performed during a streaming service cycle, and a search delay (where a search operation occurs) is performed. Seek Latency acts as a major cause of disk overhead, which can cause server overload, degrades memory and disk throughput, and does not require excess data for decoding. There was a problem such as increased reading time.
본 발명은 상기한 문제점을 해결하기 위하여 안출한 것으로, 본 발명의 목적은 디스크의 오버 헤드를 줄이기 위해 추가적으로 읽는 과잉 데이터 읽기를 최소화함으로써 디스크의 이용률을 최대화하는 다차원 확장성 비디오 데이터의 저장 방법을 제공하는 것을 목적으로 한다.SUMMARY OF THE INVENTION The present invention has been made to solve the above problems, and an object of the present invention is to provide a method for storing multi-dimensional scalable video data which maximizes the utilization of the disk by minimizing the excess data read additionally to reduce the disk overhead. It aims to do it.
본 발명의 다른 목적은 디스크의 이용률을 최대화함과 동시에 비디오 서버 시스템의 메모리에서 버퍼링되는 데이터량을 감소시키는 다차원 확장성 비디오 데이터의 저장 방법을 제공하는 것을 목적으로 한다.Another object of the present invention is to provide a method for storing multidimensional scalable video data which maximizes disk utilization and reduces the amount of data buffered in the memory of a video server system.
상기한 바와 같은 목적을 달성하기 위하여 본 발명은 다차원 확장성 비디오 스트림을 해상도를 조절하는 확장성 레벨에 따라 단위 스트림으로 분리하는 제1 단계; 상기 단위 스트림을 스트리밍 서비스 주기 단위로 배열하는 제2 단계; 스트리밍 서비스 주기에 디스크로부터 읽어야 하는 읽기 데이터가 최소화되도록 상기 단위 스트림을 재배열하여 디스크에 비디오 데이터를 저장하는 제3 단계; 를 포함한다.In order to achieve the above object, the present invention provides a method comprising: a first step of dividing a multidimensional scalable video stream into unit streams according to a scalability level of adjusting resolution; Arranging the unit streams in units of streaming service periods; Rearranging the unit streams and storing video data on the disk to minimize read data that should be read from the disk in a streaming service period; It includes.
여기서, 상기 제3 단계에서 단위 스트림의 재배열은 상기 단위 스트림 배열의 모든 경우에 따라 읽기 데이터를 산출하고, 상기 읽기 데이터가 최소인 배열인 것을 특징으로 한다.Here, in the third step, the rearrangement of the unit streams may be performed to calculate read data according to all cases of the unit stream array, and may be an array having the minimum read data.
또한, 상기 제3 단계에서 단위 스트림의 재배열은 상기 단위 스트림 배열에서 임의의 단위 스트림을 선택하고, 그 위치를 단위 스트림 배열의 시작점부터 끝점까지 위치시키면서 각각의 경우에 따라 읽기 데이터를 산출하며, 상기 산출된 읽기 데이터가 최소인 배열인 것을 특징으로 한다.In addition, in the third step, the rearrangement of the unit streams selects an arbitrary unit stream from the unit stream array, and calculates read data according to each case while positioning the position from the start point to the end point of the unit stream array, The calculated read data may be a minimum array.
그리고, 임의의 단위 스트림을 선택할 때, 첫번째 단위 스트림에서 마지막 단위 스트림 중 하나를 선택하되, 단위 스트림 배열의 모든 단위 스트림을 각각 한번씩 선택하는 것을 특징으로 한다.When selecting an arbitrary unit stream, one of the last unit streams is selected from the first unit stream, and all unit streams of the unit stream array are selected once.
더불어, 상기 읽기 데이터는 각 스트리밍 서비스 주기에 따라 변동될 수 있는 것을 특징으로 한다.In addition, the read data may be changed according to each streaming service cycle.
또한, 상기 확장성 레벨은 비디오의 프레임률을 조절할 수 있는 시간적 확장성; 비디오를 재생할 화면의 크기를 조절할 수 있는 공간적 확장성; 비디오 데이터를 코딩하는 비트율을 조절할 수 있는 SNR 확장성; 을 포함하여 이루어지는 것을 특징으로 한다.In addition, the scalability level is temporal scalability to adjust the frame rate of the video; Spatial scalability to resize the screen to play video; SNR scalability to adjust bit rate coding video data; Characterized in that comprises a.
그리고, 상기 단위 스트림은 화상 그룹(GOP)에 해당하는 데이터의 부분 스트림으로서, 상기 확장성 레벨을 증가 및 감소시킨 비디오를 생성할 수 있는 최소 데이터 블록인 것을 특징으로 한다.The unit stream is a partial stream of data corresponding to a picture group (GOP), and is a minimum data block capable of generating a video having increased and decreased levels of scalability.
더불어, 상기 스트리밍 서비스 주기에 다수개의 화상 그룹이 포함될 경우, 상기 각 화상 그룹 내의 단위 스트림은 읽기 데이터가 최소화되도록 혼합될 수 있는 것을 특징으로 한다.In addition, when a plurality of picture groups are included in the streaming service period, the unit stream in each picture group may be mixed to minimize read data.
또한, 제3 단계에서 재배열된 단위 스트림을 혼합된 상태로 인덱스를 붙여 디스크에 저장하되, 스트리밍 서비스를 실시할 경우, 상기 인덱스에 따라 순서대로 메모리에 적재할 수 있는 것을 특징으로 한다.In addition, the re-arranged unit streams in the third step are indexed in a mixed state and stored on a disk, and when a streaming service is provided, the streams may be loaded in memory in order according to the indexes.
이하, 본 발명에 따른 실시예를 첨부된 예시도면을 참고로 하여 상세하게 설명한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 1은 본 발명에 따른 다차원 확장성 비디오 데이터의 저장 방법을 개략적으로 도시한 블록도이고, 도 2는 본 발명에 따른 다차원 확장성 비디오 데이터의 저장 방법을 개략적으로 도시한 블록도이다. 도면에서 도시하고 있는 바와 같이, 본 발명에 의한 다차원 확장성 비디오 데이터 저장 방법은 다음과 같이 이루어진다.1 is a block diagram schematically illustrating a method of storing multidimensional scalable video data according to the present invention, and FIG. 2 is a block diagram schematically illustrating a method of storing multidimensional scalable video data according to the present invention. As shown in the figure, the multi-dimensional scalable video data storage method according to the present invention is performed as follows.
우선, 비디오 데이터 원본을 사용자가 원하는 확장성 레벨(Scalability Level)에 따라 단위 스트림으로 분류한다(S10).First, a video data source is classified into a unit stream according to a scalability level desired by a user (S10).
여기서, 인코딩된 확장성 비디오 데이터는 디코더에서 디코딩되는 순서대로 배열되어 디스크 등의 저장장치에 저장되고, 이는 프레임(Frame) 단위로 저장되는 형태를 가진다.Here, the encoded scalable video data is arranged in the order of decoding by the decoder and stored in a storage device such as a disk, which is stored in units of frames.
그리고, 사용자가 원하는 확장성 레벨(Scalability Level)에 따라 단위 스트림별로 분리하여 저장하는데, 여기서 확장성 레벨은 다양한 화면의 크기를 가지는 비디오를 제공할 수 있는 공간적 확장성(Spatial Scalability)과, 다양한 프레임률(Frame Rate)의 비디오를 제공하는 시간적 확장성(Temporal Scalability)과, 특정 프레임률과 특정 화면의 크기를 유지하면서 비트율(Bit-Rate)을 조절함으로써 다양한 품질의 비디오를 제공하는 SNR 확장성(Signal to Noise Ratio Scalability) 등과 같은 다차원의 확장성을 제공하며, 이 같은 다차원의 확장성을 동시에 적용할 수 있도록 하는 것이다.In addition, the data is divided and stored for each unit stream according to a scalability level desired by the user, wherein the scalability level is a spatial scalability capable of providing a video having various screen sizes and various frames. Temporal Scalability to provide frame rate video, and SNR Scalability to provide video of various quality by adjusting bit-rate while maintaining a specific frame rate and specific screen size. It provides multi-dimensional scalability such as Signal to Noise Ratio Scalability, and enables to apply such multi-dimensional scalability at the same time.
따라서, 상기 단계(S10)에서 사용자가 핸드폰 크기의 비트율이 128이며 초당 300 프레임의 비디오 데이터를 요구했을 경우에는, 확장성 레벨 중 공간적 확장성은 핸드폰 화면 크기이며, 시간적 확장성은 300 프레임이고, SNR 확장성은 128 이 되어, 상기 다차원의 확장성 레벨에 따라 원본 비디오 데이터는 사용자에게 전달되도록 단위 스트림으로 분류시키는 것이다.Therefore, in the step S10, when the user requests the video data of 128 frames per second and the size of the cellular phone, the spatial scalability of the scalability level is the cell phone screen size, the temporal scalability is 300 frames, and the SNR extension. The surname is 128, so that the original video data is classified into a unit stream for delivery to the user according to the multidimensional scalability level.
그리고, 단위 스트림으로 분류된 비디오 데이터 원본은 단일 스트리밍 서비스 주기동안 보내질 양만큼 분류한다(S20).Video data sources classified into unit streams are classified by the amount to be sent during a single streaming service cycle (S20).
여기서, 스트리밍 서비스(Streaming Service)는 일정 주기를 가지고 사용자에게 데이터를 전송하는데, 음성이나 영상 애니매이션 등을 실시간으로 재생하는 기법으로써, 비디오 데이터 등의 파일을 하드디스크 드라이브에 다운로드하여 재생하는 것을 다운로드 없이 실시간으로 재생해주는 기법이다.Here, the streaming service transmits data to a user at a predetermined cycle. The streaming service is a technique for reproducing voice or video animation in real time, and downloading and playing files such as video data to a hard disk drive without downloading. It is a technique that plays in real time.
또한, 스트리밍이 동작하기 위해서는 비디오 데이터를 수신하고 있는 클라이언트 측이 비디오 데이터를 모으고, 그 데이터를 사운드 및 그림으로 변환해주는 응용 프로그램에 계속적으로 보내줄 수 있어야 하는데, 만약 클라이언트가 데이터를 수신하는 속도가 너무 빠르면 여분의 데이터를 버퍼에 저장하면서 동시에 스트리밍하게 되지만, 반대로 데이터의 수신 속도가 너무 느리면 데이터를 받지 못한채로 실시간 재생해야하므로, 데이터의 표현이 매끄럽지 못하다.Also, for streaming to work, the client receiving the video data must be able to collect the video data and send it continuously to an application that converts the data into sound and pictures. If it is too fast, the extra data is stored in the buffer and streamed at the same time. On the contrary, if the data reception speed is too slow, the data must be reproduced in real time without receiving the data, so the representation of the data is not smooth.
이때, 서버 측에서는 클라이언트에게 비디오 데이터를 일정 주기를 가지고 보내주게되는데, 예를 들어 30분의 영상을 스트리밍하고 있는 중이라면, 5분간 재생할 분량을 일정 주기를 6번 전송하고, 서버에 스트리밍을 요청하는 다른 클라이언트에게 여분의 시간 동안 일정 주기를 가지고 데이터를 전송하여 다수의 사용자들의 스트리밍 요청을 수행할 수 있도록 한다. At this time, the server side sends the video data to the client at regular intervals. For example, if you are streaming 30 minutes of video, the server side sends 6 times the periodicity to play for 5 minutes, and requests streaming to the server. It sends data to other clients with a certain period of time for extra time so that streaming requests from multiple users can be performed.
그래서, 상기 단계(S20)에서는 스트리밍 서비스 주기 동안 클라이언트에게 전송할 데이터 양을 파악하고, 전송할 데이터 양만큼 단위 스트림을 분류하는 것인데, 예를 들어 스트리밍 서비스 주기가 1 분이고, 전송할 전체 비디오 데이터는 100 이며, 1 분 동안 전송할 수 있는 비디오 데이터가 10 이라면, 10 만큼의 비디오 데이터만큼 분리해 놓는 것이다.Thus, in step S20, the amount of data to be transmitted to the client is identified during the streaming service period, and the unit stream is classified by the amount of data to be transmitted. For example, the streaming service period is 1 minute, and the total video data to be transmitted is 100. If the video data that can be transmitted in one minute is 10, it is separated by as much as 10 video data.
더불어, 분류된 단위 스트림을 디스크에 저장할 때에는, 사용자가 원하는 확장성 레벨에 따라 찾기(Seek) 연산이 최소화되도록 저장한다(S30, S40).In addition, when storing the classified unit stream on the disk, it stores the seek operation according to the level of scalability desired by the user (S30, S40).
여기서, 예를 들어 스트리밍 서비스 주기가 1 분이고, 전송할 전체 비디오 데이터는 100이며, 1분 동안 전송할 수 있는 비디오 데이터가 10으로 나누어져 있는 상태에서, 단일 서비스 주기인 1 분 동안에 전송할 비디오 데이터 10 단위로 찾기 연산(Seek) 연산이 최소화되도록 디스크에서 읽을 데이터 양이 최소화되도록 저장해야하고, 이를 위하여 단위 스트림의 배열을 변경해야한다.Here, for example, the streaming service cycle is 1 minute, the total video data to be transmitted is 100, and the video data that can be transmitted for 1 minute is divided into 10, the video data to be transmitted in 10 units of a
그 이유는, 단위 스트림은 기본적으로 순서대로 저장되어 있고, 사용자가 원하는 확장성 레벨에 따라 저장된 것이 아니므로, 클라이언트가 요구하는 확장성 레벨에 따른 데이터를 읽기 위해서는 원본 데이터를 순서대로 읽음으로 발생하는 필요없는 데이터에 대해서도 찾기(Seek) 연산을 실시해야하고, 이에 따라 찾기 연산을 최소화하도록 단위 스트림의 배열을 변경하는 것이다.The reason is that the unit stream is basically stored in order and not stored according to the scalability level desired by the user. Therefore, in order to read the data according to the scalability level required by the client, the original data is read in order. Seek operations should also be performed on data that is not needed, thereby changing the array of unit streams to minimize the seek operation.
이를 위하여, 하기 수학식 1 및 수학식 2를 인용하여 본 발명에 따른 다차원 확장성 비디오 데이터의 저장 방법을 설명한다.To this end, a method of storing multidimensional scalable video data according to the present invention will be described with reference to
여기서, GOP는 화상 집합(畵像集合, Group Of Picture)으로, 엠페그(MPEG) 화상 처리에서 적어도 1 장의 I 화상(Intra-coded picture)을 포함하는 화상들의 집합이며, MPEG 동화상 압축 알고리즘은 JPEG 정화상 압축 알고리듬과 H.261 동화상 압축 알고리듬 등을 발전시킨 형태이며, 화상은 휘도 신호 및 2 개의 색차 신호로 구성되는 프레임 또는 필드이고, JPEG 정화상으로 압축된 I 화상과 부호화 종료 직전의 화상으로부터 블록 단위 변화를 예측하는 P 화상(Predictive-coded picture), 연속하는 전후방 인접 화상 간의 보간인 B 화상(Bidirectional-coded picture) 등 3가지 화상으로 이루어지는데, 화상 집합은 I, P, B 등 화상들로 구성되며, 화상 편집 단위로 사용되는데, MPEG 비디오는 이 화상들이 일정한 패턴으로 조합된 것이다. Here, a GOP is a group of pictures, which is a set of pictures including at least one intra-coded picture in MPEG image processing, and the MPEG moving picture compression algorithm is a JPEG. It is a form that developed the compressed image compression algorithm and H.261 moving image compression algorithm, etc., and the image is a frame or field composed of a luminance signal and two chrominance signals, from an I image compressed with a JPEG purified image and an image immediately before the end of encoding. It consists of three pictures: P picture (Predictive-coded picture) that predicts the change in block unit, and B-directional picture (B picture), which is interpolation between successive front and back adjacent pictures. It is used as a unit of picture editing, and MPEG video is a combination of these pictures in a certain pattern.
그리고, 비디오 데이터의 경우에는 각각의 화면이 앞의 화면을 참조하여 재생이 되기 때문의 의존적인 반면, GOP는 전, 후 화면을 참조할 필요없이 독립적인 개체로 화면을 재생할 수 있는데, GOP는 확장성 레벨에 따른 단위 스트림들을 포함한다.In the case of video data, each screen is played by referring to the previous screen, whereas the GOP can play the screen as an independent object without having to refer to the front and back screens. It includes unit streams according to gender level.
또한, 상기 GOP가 임의의 확장성 레벨로 변환되기 위하여, 즉 임의의 확장성 레벨을 가지는 비디오로 변환되기 위하여 사용할 수 있는 최소의 데이터 블록을 단위 스트림이라고 정의한다.In addition, the minimum data block that can be used to convert the GOP to any scalability level, that is, to video having any scalability level, is defined as a unit stream.
상기 수학식 1 은 확장성 레벨에 따라 단일 GOP를 구성하기 위하여 필요한 단위 스트림을 나타내며, 다차원의 확장성 레벨을 (i, j, k)로 표현하는데, i는 공간적 확장성의 레벨을 나타내며, j는 시간적 확장성의 레벨을 나타내고, k 는 SNR 확장성의 레벨을 나타낸다.
또한, GOPk(L, M, N)는 공간적 확장성이 L이고, 시간적 확장성이 M이며, SNR 확장성이 N인 확장성 레벨을 가지는 k 번째 GOP를 나타내는 것이고, uk (i, j, k) 는 GOP를 구성하는데 필요한 단위 스트림들을 나타낸다.Further, GOP k (L, M, N) denotes a k-th GOP having a scalability level of spatial scalability L, temporal scalability M, and SNR scalability N, and u k (i, j , k) represents the unit streams required to construct a GOP.
여기서, SNR 확장성의 방법으로 연속적인 확장성을 제공하는 FGS(Fine Grain SNR Scalability)를 사용하는 경우에는, 인핸스먼트(Enhancement)층을 용도에 맞게 다수개의 층으로 분할시켜 SNR 확장성 방향으로 추가적으로 확장성 레벨을 생성할 수 있다.In the case of using FGS (Fine Grain SNR Scalability), which provides continuous scalability by the SNR scalability method, the enhancement layer is divided into a plurality of layers according to the application to further expand in the SNR scalability direction. You can create a castle level.
그리고, 사용자가 원하는 확장성 레벨에 따른 읽기 데이터를 산출하기 위하여 하기 수학식 2를 사용한다.Then,
여기서, L, M, N은 각 차원의 확장성 레벨의 최대값이며, C(i, j, k)는 확장성 레벨이 (i, j, k)인 서비스 요청의 수이고, Rs (i, j, k)는 한 서비스 주기에서 확장성 단계(i, j, k)의 요청에 해당하는 스트림을 제공하기 위하여 디스크로부터 읽어야하는 데이터의 양을 나타낸다.Where L, M, and N are the maximum values of the scalability level of each dimension, and C (i, j, k) is the number of service requests having the scalability level of (i, j, k), and Rs (i, j, k) represents the amount of data that must be read from disk in order to provide a stream corresponding to the request of the scalability step (i, j, k) in one service period.
예를 들어, (3, 1, 2)라면, 공간적 확장성 레벨이 3이며, 시간적 확장성 레벨이 1이고, SNR 확장성 레벨이 2인 요청에 해당하는 스트림을 제공하기 위하여 디스크로부터 읽어야하는 데이터의 양을 계산하는 것이다.For example, if (3, 1, 2), the data that must be read from disk to provide a stream corresponding to a request with a spatial scalability level of 3, a temporal scalability level of 1, and an SNR scalability level of 2 To calculate the amount of.
또한, 공간적 확장성 레벨이 3이면, 1과 2에 따른 단위 스트림은 읽어야하고, SNR 확장성이 2이면, 2와 함께 1에 해당하는 단위 스트림도 함께 읽어주어야 한다.If the spatial scalability level is 3, the unit streams according to 1 and 2 should be read. If the SNR scalability is 2, the unit stream corresponding to 1 should be read together with 2 as well.
따라서, 순서대로 배열되어 있는 단위 스트림의 배열을 모든 경우의 수에 따라 배열시키고, 이에 따라 확장성 레벨에 따라 읽어야하는 데이터의 양(Rs)을 계산하며, 읽기 데이터 양(Rs)이 최소화되는 배열로 단위 스트림을 배열시켜 디스크에 저장한다.Therefore, an array of unit streams arranged in order is arranged according to the number of all cases, and according to the scalability level, the amount of data Rs to be read is calculated, and the amount of read data Rs is minimized. Arrays of unit streams are stored on disk.
이때, 단위 스트림의 배열이 순서대로 되어있지 않아서 순서가 뒤바뀔 수 있지만, 인덱스를 붙여 단위 스트림을 찾기 연산이 최소화되는 배열로 저장하고, 이를 스트리밍 할 경우에는 인덱스를 보고 순서대로 배열하여 클라이언트에게 전달한다.In this case, the order of the unit streams may be reversed because they are not in order, but the unit streams are indexed and stored in an array that minimizes the search operation. .
도 3은 도 2의 단일 스트림 재배열 방법의 연산량을 감소시키는 방법을 개략적으로 도시한 블록도이다. 도면에서 도시하고 있는 바와 같이, 본 발명에 의한 단일 스트림 재배열 방법의 연산량을 감소시키는 방법은 위치를 결정한 단위 스트림을 선택하고(S30-1), 읽기 데이터가 최소인 위치로 단위 스트림을 배치하며(S30-2), 모든 단위 스트림에 대하여 위치를 결정할 때까지 상기 단계(S30-1, S30-2)를 반복하고, 모든 단위 스트림에 대하여 위치를 결정하였으면 종료시킨다(S30-3).3 is a block diagram schematically illustrating a method of reducing the amount of computation of the single stream rearrangement method of FIG. 2. As shown in the figure, the method of reducing the amount of calculation of the single stream rearrangement method according to the present invention selects the unit stream having the position determined (S30-1), and arranges the unit stream at the position where the read data is the minimum. (S30-2), the above steps (S30-1, S30-2) are repeated until the positions are determined for all the unit streams, and if the positions are determined for all the unit streams, the process ends (S30-3).
여기서, 본 발명에 따른 다차원 확장성 비디오 데이터의 저장 방법에서는 가장 정확하게 찾기 연산을 줄이기 위하여, 단위 스트림들의 배열의 모든 경우를 구하고, 이에 따른 읽기 데이터양을 계산하여 최소인 배열로 선택한다.Here, in the method for storing multidimensional scalable video data according to the present invention, in order to most accurately reduce a search operation, all cases of an array of unit streams are obtained, and the amount of read data is calculated and selected as the minimum array.
이때, 최적치(Optimal)로 계산할 수 있는데, 읽기 데이터 양이 최적으로 최소화되지는 않지만, 연산량을 줄여 속도를 빠르게 할 수 있는 방법을 추가한다.At this time, it can be calculated as an optimal value, but the amount of read data is not optimally minimized, but a method of increasing the speed by reducing the amount of computation is added.
한 서비스 주기에 포함된 단위 스트림 중에서 임의로 하나를 선택하고, 그 단위 스트림의 위치를 해당 서비스 주기에 해당하는 시작 위치에서 종료 위치로 차례로 변화시켜가면서 각 경우에 대하여 읽어야할 데이터 량(Rs)을 계산하는 것이다.Randomly select one of the unit streams included in one service cycle, and change the position of the unit stream from the start position corresponding to the service cycle to the end position in order to calculate the amount of data Rs to be read for each case. It is.
또한, 읽어야할 데이터량이 최소화되는 위치에서 단위 스트림의 위치가 결정되며, 이후 과정에서 순서의 변화는 일어나지 않는데, 예를 들어, 1 번째 단위 스트림의 위치를 결정하고, 2 번째 단위 스트림의 위치를 결정할 때 1 번째 단위 스트림의 배열보다 읽기 데이터 량(Rs)이 더 클 경우, 중단하는 것이다.In addition, the position of the unit stream is determined at the position where the amount of data to be read is minimized, and there is no change in order in the subsequent process. For example, the position of the first unit stream is determined and the position of the second unit stream is determined. When the read data amount Rs is larger than the array of the first unit stream, the operation is stopped.
그리고, 한 서비스 주기에 포함된 모든 단위 스트림이 선택될 때까지 상기와 같은 과정을 되풀이하는데, 이를 수식을 통하여 나타내면 다음과 같다.The above process is repeated until all of the unit streams included in one service period are selected.
초기 단위 스트림의 배열 순서를 S(0) = < us_1, us_2, us_3, ‥, us_N > 이라고 하면, us_n(n = 1, ...., N)은 단위 스트림을 나타내고, S(i - 1)에서 us_i를 선택하여 그 위치를 첫번째 위치에서 N번째 위치로 옮기면서 각각의 경우 디스크로부터 읽어야하는 데이터량(Rs)을 계산한다.S (0) = <us_1, us_2, us_3, ..., us_N>, the order in which the initial unit stream is arranged is us_n (n = 1, ...., N), which denotes a unit stream, and S (i-1 Select us_i and move the position from the first position to the Nth position to calculate the amount of data (Rs) that should be read from the disk in each case.
그리고, 디스크로부터 읽어야하는 데이터량(Rs)이 가장 작은 스트림의 배열을 S(i)로 결정하고, i 의 값을 1 만큼 증가시키는데, i < = N 이면, 즉 끝의 단위 스트림까지 위치가 선정되지 않았으면 그 다음 단위 스트림에 대하여 상기 과정을 반복하고, i > N 이면 즉, 끝의 단위 스트림까지 위치가 선정되었으면 전체 과정을 종료하고, 상기 과정에서 결정된 S(N)의 순서대로 단위 스트림을 디스크에 저장하는 것이다.Then, the array of streams having the smallest amount of data Rs to be read from the disk is determined as S (i), and the value of i is increased by one. If i <= N, that is, the position is selected up to the last unit stream. If not, repeat the above process for the next unit stream, and if i> N, i.e., if the position is selected up to the last unit stream, then the whole process is terminated, and the unit stream is processed in the order of S (N) determined in the above process. To save it to disk.
이는, 본 발명에 따른 다차원 확장성 비디오 데이터 저장 방법의 연산량을 줄일 수 있는 방법으로써, 최적치가 아닌 근사치라도 속도의 증가가 요구될 때 이용하는 것이 바람직하다.This is a method that can reduce the amount of calculation of the multi-dimensional scalable video data storage method according to the present invention, and it is preferable to use it when an increase in speed is required even if it is not an optimal value.
도 4는 본 발명에 따른 공간적 확장성과 시간적 확장성을 가지는 확장성 비디오 스트림의 단위 스트림 구성을 도시한 도이다. 도면에서 도시하고 있는 바와 같이, 비디오 화면의 크기와 같은 공간적 확장성을 1, 2, 3 등과 같은 레벨(단위)로 표현하였고, 프레임률과 같은 시간적 확장성을 1, 2, 3 등과 같은 레벨(단위)로 표현하였다.4 is a diagram illustrating a unit stream configuration of a scalable video stream having spatial scalability and temporal scalability according to the present invention. As shown in the figure, spatial scalability such as the size of a video screen is expressed in levels (units) such as 1, 2, 3, etc., and temporal scalability such as frame rate (such as 1, 2, 3, etc.) Unit).
여기서, 독립적으로 비디오를 재생할 수 있는 단위 즉, 화상 집합인 GOP는 한개 이상의 단위 스트림을 포함하며, 시간적 확장성 및 공간적 확장성을 증가시키기 위해서는 한개 이상의 단위 스트림을 더 포함하여야 한다.Here, the GOP, which is a unit capable of independently playing video, that is, a picture set, includes one or more unit streams, and in order to increase temporal scalability and spatial scalability, one or more unit streams must be further included.
예를 들어, GOPk(2, 2)는 시간적 확장성 1, 공간적 확장성 1의 레벨을 가지 는 단위 스트림 uk(1,1)과, 시간적 확장성 1, 공간적 확장성 2의 레벨을 가지는 단위 스트림 uk(1,2)와, 시간적 확장성 2, 공간적 확장성 1의 레벨을 가지는 단위 스트림 uk(2,1)와, 시간적 확장성 2, 공간적 확장성 2의 레벨을 가지는 단위 스트림 uk(2,2)을 포함한다.For example, GOP k (2, 2) is a unit stream u k (1,1) with a level of
여기서, 시간적 확장성 3, 공간적 확장성 2의 레벨을 가지는 GOPk(3, 2)로 변환시키기 위해서는 단위 스트림 uk(3,1)와, uk(3,2)를 더 포함해야하며, 디스크에서 GOPk(3, 2)를 읽기 위해서는 단위 스트림 uk(3,2) 의 하위에 있는 단위 스트림들은 모두 읽어주어야 한다.Here, further to include the stream unit u k (3,1) and, u k (3,2) in order to convert the temporal scalability 3, GOP k (3, 2 ) having a level of
또한, 시간적 확장성 2, 공간적 확장성 3의 레벨을 가지는 GOPk(2, 3)로 변환시키기 위해서는 단위 스트림 uk(1,3)와, uk(2,3)를 더 포함해야하며, 디스크에서 GOPk(2, 3)를 읽기 위해서는 단위 스트림 uk(2,3) 의 하위에 있는 단위 스트림들은 모두 읽어주어야 한다. .In addition, in order to convert to GOP k (2, 3) having a level of
도 5는 일반적인 비디오 데이터의 저장 상태 및 본 발명에 따른 다차원 확장성 비디오 데이터의 저장 방법으로 비디오 데이터를 저장하는 순서를 개략적으로 도시한 도이고, 도 6은 본 발명에 따른 다차원 확장성 비디오 데이터의 저장 방법 을 적용한 일 실시예를 나타낸 도이다. 도면에서 도시하고 있는 바와 같이, 본 발명에 의한 다차원 확장성 비디오 데이터의 저장 방법은 다음과 같다.FIG. 5 is a view schematically illustrating a storage state of general video data and a procedure of storing video data in a method of storing multidimensional scalable video data according to the present invention, and FIG. 6 is a diagram illustrating a multidimensional scalable video data according to the present invention. Figure 1 shows an embodiment to which the storage method is applied. As shown in the figure, a method of storing multidimensional scalable video data according to the present invention is as follows.
우선, 디코딩되는 순서대로 저장되는 원본 비디오 데이터를 스트리밍 서비스 주기 단위로 끊어서 보면, 각 단위 스트림들은 공간적 확장성 레벨 단위로 묶여 집합을 이루고 있다.First, when the original video data stored in decoding order is broken into streaming service cycle units, each unit stream is grouped into units of spatial scalability level.
여기서, 공간적 확장성 레벨이 1인 단위 스트림인 uk(1,1)과 uk(1,2)과 uk(1,3)은 하나의 집합으로 묶여있으며, 공간적 확장성 레벨 3까지 묶여있는 것을 확인할 수 있다.Here, u k (1,1), u k (1,2) and u k (1,3), which are unit streams having a spatial scalability level of 1, are grouped into a set, and are bound to a spatial scalability level 3 I can confirm that there is.
여기서, (a)에서 공간적 확장성 1, 시간적 확장성 2의 단위 스트림을 읽는 CASE 1과, 공간적 확장성 2, 시간적 확장성 1의 단위 스트림을 읽는 CASE 2와, 공간적 확장성 2, 시간적 확장성 2의 단위 스트림을 읽는 CASE 3의 경우로 나누어 설명한다.Here, in (a),
CASE 1의 경우, uk(1,2) 이하의 단위 스트림을 포함하여 읽어야함에 따라, 순차적으로 데이터가 저장된 경우에서는 uk(1,1), uk(2,1), uk(3,1), uk(2,1)을 읽어야 하는데, uk(1,1), uk(1,2)만이 읽어야하는 데이터이기 때문에 uk(2,1), uk(3,1)는 불필요하게 읽어야하는 데이터가 된다.In case of
CASE 2의 경우, uk(2,1) 이하의 단위 스트림을 포함하여 읽어야함에 따라, 순차적으로 데이터가 저장된 경우에서는 uk(1,1), uk(2,1) 읽어야 하므로 불필요하게 읽어야 하는 데이터가 없다.In case of
CASE 3의 경우, uk(2, 2) 이하의 단위 스트림을 포함하여 읽어야함에 따라, 순차적으로 데이터가 저장된 경우에서는 uk(1,1), uk(2,1), uk(3,1), uk(2,1), uk(2,2)을 읽어야 하는데, uk(1,1), uk(2,1), uk(2,1), uk(2,2)만이 읽어야하는 데이터이기 때문에 uk(3,1)는 불필요하게 읽어야하는 데이터가 된다.In case of
따라서, (b)에서는 사용자가 요구하는 확장성 레벨에 따라 읽기 데이터량이 가장 적도록, 즉 찾기 연산을 최소화하도록 본 발명에 따른 다차원 확장성 비디오 데이터 저장 방법으로 배열되어 저장된 것을 확인할 수 있다.Accordingly, in (b), it can be seen that the read data amount is arranged and stored in the multi-dimensional scalable video data storage method according to the present invention so that the amount of read data is the smallest, that is, the search operation is minimized according to the required scalability level.
여기서, uk(2,3), uk(1,3), uk(1,2), uk(1,1), uk(2,1), uk(2,1), uk(2,2), uk(3,1), uk(3,2), uk(3,3)과 같이 배열되어, CASE 1의 경우, uk(1,2) 이하의 단위 스트림을 포함하여 읽어야함에 따라, uk(1,1), uk(1,2)만이 읽어야하는 데이터이고, 중간에 포함된 단위 스트림이 없어 읽기 데이터량이 감소될 수 있다.Where u k (2,3), u k (1,3), u k (1,2), u k (1,1), u k (2,1), u k (2,1), u k (2,2), u k (3,1), u k (3,2), u k (3,3), and in the case of
그리고, CASE 2 및 CASE 3의 경우에서도 중간에 포함된 단위 스트림이 없으므로 읽기 데이터량이 감소될 수 있으며, 혼합되도록 배열되어 순서가 바뀐 경우에도 인덱스를 이용하여 순차적으로 데이터를 정렬시켜 스트리밍 서비스를 실시할 수 있다.Also, in case of
도 7은 본 발명에 따른 다차원 확장성 비디오 데이터의 저장 방법을 적용한 일 실시예를 나타낸 도이다. 도면에서 도시하고 있는 바와 같이, 본 발명에 의한 다차원 확장성 비디오 데이터 저장 방법은 다음과 같다.7 is a diagram illustrating an embodiment to which a method of storing multidimensional scalable video data according to the present invention is applied. As shown in the figure, the multi-dimensional scalable video data storage method according to the present invention is as follows.
(a)에서 공간적 확장성 1, 시간적 확장성 2의 단위 스트림을 읽는 CASE 1과, 공간적 확장성 2, 시간적 확장성 1의 단위 스트림을 읽는 CASE 2와, 공간적 확장성 2, 시간적 확장성 2의 단위 스트림을 읽는 CASE 3의 경우로 나누어 설명한다.In (a),
CASE 1의 경우, uk(1,2) 이하의 단위 스트림을 포함하여 읽어야함에 따라, 순차적으로 데이터가 저장된 경우에서는 uk(1,1), uk(2,1), uk(3,1), uk(2,1)을 읽어야 하는데, uk(1,1), uk(1,2)만이 읽어야하는 데이터이기 때문에 uk(2,1), uk(3,1)는 불필요하게 읽어야하는 데이터가 된다.In case of
CASE 2의 경우, uk(2,1) 이하의 단위 스트림을 포함하여 읽어야함에 따라, 순차적으로 데이터가 저장된 경우에서는 uk(1,1), uk(2,1) 읽어야 하므로 불필요하게 읽어야 하는 데이터가 없다.In case of
CASE 3의 경우, uk(2, 2) 이하의 단위 스트림을 포함하여 읽어야함에 따라, 순차적으로 데이터가 저장된 경우에서는 uk(1,1), uk(2,1), uk(3,1), uk(2,1), uk(2,2)을 읽어야 하는데, uk(1,1), uk(2,1), uk(2,1), uk(2,2)만이 읽어야하는 데이 터이기 때문에 uk(3,1)는 불필요하게 읽어야하는 데이터가 된다.In case of
따라서, (b)에서는 사용자가 요구하는 확장성 레벨에 따라 읽기 데이터량이 가장 적도록, 즉 찾기 연산을 최소화하도록 본 발명에 따른 다차원 확장성 비디오 데이터 저장 방법으로 배열되어 저장된 것을 확인할 수 있다.Accordingly, in (b), it can be seen that the read data amount is arranged and stored in the multi-dimensional scalable video data storage method according to the present invention so that the amount of read data is the smallest, that is, the search operation is minimized according to the required scalability level.
여기서, uk(2,3), uk(1,3), uk(1,2), uk(1,1), uk(2,1), uk(2,1), uk(2,2), uk(3,1), uk(3,2), uk(3,3)이 두번씩 중복되도록 배열되어, CASE 1의 경우, uk(1,2) 이하의 단위 스트림을 포함하여 읽어야함에 따라, uk(1,1), uk(1,2)만이 읽어야하는 데이터이고, 중간에 포함된 단위 스트림이 없어 읽기 데이터량이 감소될 수 있다.Where u k (2,3), u k (1,3), u k (1,2), u k (1,1), u k (2,1), u k (2,1), u k (2,2), u k (3,1), u k (3,2), u k (3,3) are arranged so that they overlap twice, and for
그리고, CASE 2 및 CASE 3의 경우에서도 중간에 포함된 단위 스트림이 없으므로 읽기 데이터량이 감소될 수 있으며, 혼합되도록 배열되어 순서가 바뀐 경우에도 인덱스를 이용하여 순차적으로 데이터를 정렬시켜 스트리밍 서비스를 실시할 수 있다.Also, in case of
더불어, k+1번째 화상 그룹인 GOP도 동일하게 적용되어 디스크에 상기와 같이 저장된다.In addition, the GOP, which is the k + 1th picture group, is similarly applied and stored in the disk as described above.
이상에서는 본 발명의 바람직한 실시예를 예시적으로 설명하였으나, 본 발명의 범위는 이같은 특정 실시예에만 한정되지 않으며 해당 분야에서 통상의 지식을 가진자라면 본 발명의 특허 청구 범위내에 기재된 범주 내에서 적절하게 변경이 가 능 할 것이다.Although the preferred embodiments of the present invention have been described above by way of example, the scope of the present invention is not limited to such specific embodiments, and those skilled in the art are appropriate within the scope described in the claims of the present invention. It may be possible to change it.
이상에서 설명한 바와 같이 상기와 같은 구성을 갖는 본 발명은 확장성 레벨에 따라 프레임을 부분적으로 추출할 시, 다수번의 찾기 연산에 따른 찾기 지연을 방지하고, 이에 따른 디스크의 오버 헤드를 감소시키며, 이에 따라 서버의 과부하를 줄일 수 있고, 메모리 및 디스크의 처리율(Throughput)을 증가시키며, 디코딩에서 요구되지 않는 과잉 데이터를 읽는 시간이 감소되고, 이에 따라 서버에서 클라이언트의 요청에 따라 원활한 스트리밍 서비스를 제공할 수 있는 등의 효과를 거둘 수 있다.As described above, the present invention having the configuration as described above prevents a search delay caused by a plurality of search operations when partially extracting a frame according to the level of scalability, thereby reducing the overhead of the disk. This reduces the overhead of the server, increases the throughput of memory and disk, and reduces the time to read excess data that is not required for decoding, thereby providing a seamless streaming service on the client's request. It can achieve such effects.
Claims (9)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020070061509A KR100865683B1 (en) | 2007-06-22 | 2007-06-22 | How to store multidimensional scalable video data |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020070061509A KR100865683B1 (en) | 2007-06-22 | 2007-06-22 | How to store multidimensional scalable video data |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| KR100865683B1 true KR100865683B1 (en) | 2008-10-29 |
Family
ID=40177698
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020070061509A Expired - Fee Related KR100865683B1 (en) | 2007-06-22 | 2007-06-22 | How to store multidimensional scalable video data |
Country Status (1)
| Country | Link |
|---|---|
| KR (1) | KR100865683B1 (en) |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20020024963A (en) * | 2000-09-27 | 2002-04-03 | 오길록 | Method for management of variable bit rate for streaming service |
| KR20050076160A (en) * | 2004-01-19 | 2005-07-26 | 삼성전자주식회사 | Apparatus and method for playing of scalable video coding |
| KR20060096004A (en) * | 2003-09-29 | 2006-09-05 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | System and method for combining fine-grained scalability with improved data partitioning for efficient spatial-temporal-SNR scalability video coding and streaming |
-
2007
- 2007-06-22 KR KR1020070061509A patent/KR100865683B1/en not_active Expired - Fee Related
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20020024963A (en) * | 2000-09-27 | 2002-04-03 | 오길록 | Method for management of variable bit rate for streaming service |
| KR20060096004A (en) * | 2003-09-29 | 2006-09-05 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | System and method for combining fine-grained scalability with improved data partitioning for efficient spatial-temporal-SNR scalability video coding and streaming |
| KR20050076160A (en) * | 2004-01-19 | 2005-07-26 | 삼성전자주식회사 | Apparatus and method for playing of scalable video coding |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| TWI511544B (en) | Techniques for adaptive video streaming | |
| US8265140B2 (en) | Fine-grained client-side control of scalable media delivery | |
| CN102598688B (en) | Streaming encoded video data | |
| KR100945548B1 (en) | Video error recovery | |
| US8325800B2 (en) | Encoding streaming media as a high bit rate layer, a low bit rate layer, and one or more intermediate bit rate layers | |
| JP6722995B2 (en) | Encoding method, encoding device, imaging device, and program | |
| JP4643988B2 (en) | Video on demand server system and method | |
| JP6225446B2 (en) | Moving image data distribution apparatus, method, program, and system | |
| JP2018198447A (en) | Coding concept, transport demultiplexer and video bitstream allowing parallel processing | |
| US8055974B2 (en) | Content distribution method, encoding method, reception/reproduction method and apparatus, and program | |
| JP2001512648A (en) | Method and apparatus for encoding and formatting data representing a video program to provide a plurality of overlapping presentations of the video program | |
| WO2007056048A1 (en) | Multi-view video delivery | |
| JPH10507889A (en) | Method and apparatus for encoding and formatting data representing a video program and providing multiple overlapping presentations of the video program | |
| US20030123546A1 (en) | Scalable multi-level video coding | |
| JPH09139940A (en) | Decoder for end-to-end stretchable video delivery system | |
| US20090220003A1 (en) | Method of compressing video data and a media player for implementing the method | |
| JP4526294B2 (en) | STREAM DATA TRANSMITTING DEVICE, RECEIVING DEVICE, RECORDING MEDIUM CONTAINING PROGRAM, AND SYSTEM | |
| CN101248668A (en) | Trick play using temporal layering | |
| Lee | Scalable continuous media streaming systems: Architecture, design, analysis and implementation | |
| CN104506866B (en) | A kind of video coding processing method and video encoder suitable for more code streams | |
| JP2018511237A (en) | Content adaptive B picture pattern video encoding | |
| KR100865683B1 (en) | How to store multidimensional scalable video data | |
| KR101144498B1 (en) | Scalable video providing system and method of providing scalable video | |
| US7471723B2 (en) | Error concealment and error resilience | |
| JP2004040526A (en) | Image distribution system and image distribution and reproduction system |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A201 | Request for examination | ||
| PA0109 | Patent application |
St.27 status event code: A-0-1-A10-A12-nap-PA0109 |
|
| PA0201 | Request for examination |
St.27 status event code: A-1-2-D10-D11-exm-PA0201 |
|
| D13-X000 | Search requested |
St.27 status event code: A-1-2-D10-D13-srh-X000 |
|
| D14-X000 | Search report completed |
St.27 status event code: A-1-2-D10-D14-srh-X000 |
|
| E902 | Notification of reason for refusal | ||
| PE0902 | Notice of grounds for rejection |
St.27 status event code: A-1-2-D10-D21-exm-PE0902 |
|
| P11-X000 | Amendment of application requested |
St.27 status event code: A-2-2-P10-P11-nap-X000 |
|
| P13-X000 | Application amended |
St.27 status event code: A-2-2-P10-P13-nap-X000 |
|
| E701 | Decision to grant or registration of patent right | ||
| PE0701 | Decision of registration |
St.27 status event code: A-1-2-D10-D22-exm-PE0701 |
|
| GRNT | Written decision to grant | ||
| PR0701 | Registration of establishment |
St.27 status event code: A-2-4-F10-F11-exm-PR0701 |
|
| PR1002 | Payment of registration fee |
St.27 status event code: A-2-2-U10-U11-oth-PR1002 Fee payment year number: 1 |
|
| PG1601 | Publication of registration |
St.27 status event code: A-4-4-Q10-Q13-nap-PG1601 |
|
| FPAY | Annual fee payment |
Payment date: 20111007 Year of fee payment: 4 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 4 |
|
| FPAY | Annual fee payment |
Payment date: 20121008 Year of fee payment: 5 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 5 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
| LAPS | Lapse due to unpaid annual fee | ||
| PC1903 | Unpaid annual fee |
St.27 status event code: A-4-4-U10-U13-oth-PC1903 Not in force date: 20131023 Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE |
|
| PC1903 | Unpaid annual fee |
St.27 status event code: N-4-6-H10-H13-oth-PC1903 Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE Not in force date: 20131023 |
|
| PN2301 | Change of applicant |
St.27 status event code: A-5-5-R10-R13-asn-PN2301 St.27 status event code: A-5-5-R10-R11-asn-PN2301 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
| P22-X000 | Classification modified |
St.27 status event code: A-4-4-P10-P22-nap-X000 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
| PN2301 | Change of applicant |
St.27 status event code: A-5-5-R10-R13-asn-PN2301 St.27 status event code: A-5-5-R10-R11-asn-PN2301 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
