KR20080006713A - Apparatus and method for multimedia play dynamically allocating data block size according to the storage medium - Google Patents
Apparatus and method for multimedia play dynamically allocating data block size according to the storage medium Download PDFInfo
- Publication number
- KR20080006713A KR20080006713A KR1020060065790A KR20060065790A KR20080006713A KR 20080006713 A KR20080006713 A KR 20080006713A KR 1020060065790 A KR1020060065790 A KR 1020060065790A KR 20060065790 A KR20060065790 A KR 20060065790A KR 20080006713 A KR20080006713 A KR 20080006713A
- Authority
- KR
- South Korea
- Prior art keywords
- data
- storage medium
- size
- medium
- ram
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Television Signal Processing For Recording (AREA)
Abstract
Description
도 1은 본 발명에 따른 휴대용 단말기의 저장매체에 따라 데이터 블록 크기를 계산하여 영상 또는 오디오를 재생하는 장치 블록도,1 is a device block diagram of reproducing an image or audio by calculating a data block size according to a storage medium of a portable terminal according to the present invention;
도 2은 본 발명에 따른 휴대용 단말기의 저장매체에 따라 데이터 블록 크기를 계산하여 영상 또는 오디오를 재생하는 흐름도,2 is a flowchart of reproducing an image or audio by calculating a data block size according to a storage medium of a portable terminal according to the present invention;
도 3은 본 발명에 따른 휴대용 단말기의 저장매체에 따라 데이터 블록 크기를 계산하는 흐름도 및,3 is a flowchart for calculating a data block size according to a storage medium of a portable terminal according to the present invention;
도 4는 본 발명에 따른 저장매체에 따른 디코딩 시작시간을 비교하는 도면.4 is a diagram comparing a decoding start time according to a storage medium according to the present invention;
본 발명은 휴대용 단말기에서 멀티미디어 재생 장치 및 방법에 관한 것으로, 특히 휴대용 단말기에서 저장매체의 입출력 특성에 따라 액세스 되는 데이터 블록 크기를 조절하는 멀티미디어 재생 장치 및 방법에 관한 것이다.The present invention relates to a multimedia playback apparatus and method in a portable terminal, and more particularly, to a multimedia playback apparatus and method for adjusting the data block size to be accessed according to the input and output characteristics of the storage medium in the portable terminal.
휴대용 단말기의 멀티미디어 부가서비스 증가로 인하여 많은 양의 데이터를 저장할 수 있는 저장 매체에 대한 요구가 증가하고 있다. 이런 저장 매체로는 휴대용 단말기 내에 내장되어 있는 플래시 메모리(flash memory), 장탈착이 가능한 메모리 카드(memory card), 내장 하드 디스크(hard disk) 등이 적용될 수 있다.Due to the increase in multimedia supplementary services of portable terminals, there is an increasing demand for a storage medium capable of storing a large amount of data. Such a storage medium may be a flash memory, a removable memory card, a built-in hard disk, and the like, which are built in a portable terminal.
메모리에 대한 수요 증가의 이유로, mp3(MPEG Audio Layer-3), aac(Advanced Audio Coding)를 비롯한 오디오 파일과 MPEG-4(Moving Picture Experts Group 4) 등의 동영상 파일을 저장해야 하는 수요가 증가하고 있으며 고화소 카메라 센서의 발달로 촬영한 대용량의 사진과 동영상을 저장하기 위해 대용량 메모리를 필요로 한다. GSM(Global System for Mobile communication), GPRS(General Packet Radio Service) 단말기의 경우. 64~128Mbytes 정도의 내장 NAND 플래시 메모리를 사용하고 있는데 이 정도의 용량도 대용량의 멀티미디어 파일들을 저장하기엔 점점 부족해지고 있어 메모리 추가나 업데이트가 필요하다. 그러나, 내장 플래시 메모리의 용량을 늘리기에는 비용이 증가하고 더불어 NOR 플래시 메모리, NAND 플래시 메모리, SDRAM(Synchronous Dynamic Random Access Memory) 등을 원칩화하는 패키징 기술의 발전까지 요구되기 때문에 바로 메모리 용량을 업그레이드하기엔 어려움이 많다. 하지만, 외부 메모리(external memory)나 내장 하드디스크(hard disk)는 사용자가 메모리 업그레이드가 쉽고 사용이 편리하여 많이 사용되고 있다.Because of the growing demand for memory, the demand for storing audio files, including MPEG Audio Layer-3 (mp3) and Advanced Audio Coding (aac), and moving picture files, such as Moving Picture Experts Group 4 (MPEG-4), has increased. In addition, it requires a large memory to store a large amount of photos and videos taken with the development of high pixel camera sensors. For GSM (Global System for Mobile communication) and GPRS (General Packet Radio Service) terminals. It uses 64 ~ 128Mbytes of built-in NAND flash memory, which is not enough to store large multimedia files, so it needs to add or update memory. However, increasing the capacity of the built-in flash memory is expensive and difficult to upgrade the memory capacity because it requires the development of packaging technology that makes NOR flash memory, NAND flash memory, and Synchronous Dynamic Random Access Memory (SDRAM) one-chip. There are many. However, an external memory or an internal hard disk is frequently used because the user can easily upgrade the memory and use the memory.
휴대용 단말기의 저장 매체에 저장된 대용량 오디오 파일이나 영상 파일을 재생할 때 오디오나 동영상 재생에 대한 정보(총 재생 시간, 비디오의 경우 X-Y 해 상도, 비트율, 샘플링 주파수 등)나 멀티미디어 코덱에서 디코딩에 필요한 헤더 정보를 분석하기 위해 데이터를 저장매체로부터 독출한다. 가변 비트 전송률(variable bit rate : VBR)을 가진 파일의 경우 정확한 총 재생 시간을 파악하기 위해서 파일 전체 데이터를 분석해야 하므로 헤더 파싱시 데이터 독출을 하기 위해 많은 시간이 소요된다.Information about audio or video playback (total playback time, XY resolution, bit rate, sampling frequency, etc.) when playing large audio or video files stored on the storage device of a mobile terminal, or header information required for decoding in a multimedia codec Read data from storage media to analyze In the case of a file having a variable bit rate (VBR), the entire data of the file needs to be analyzed in order to determine the correct total playback time, so it takes a lot of time to read the data when parsing the header.
그리고, 실제 영상 또는 오디오 데이터를 디코딩하기 위해 필요한 데이터를 저장매체로부터 독출하여 중앙 프로세서로 전송한다. 일반적으로 램(random access memory: RAM)영역에서 다른 프로세스에 의해 데이터 전송이 느려지거나 방해를 받아 디코딩시 데이터 언더플로워(data underflow)로 끊기는 문제를 막기 위해 버퍼링을 하고 있다. 저장 매체로부터 데이터를 램으로 전송되어 버퍼링을 하면서 데이터 블록 크기가 일정하기도하고 동적으로 변하기도 한다.The data necessary for decoding the actual video or audio data is read from the storage medium and transmitted to the central processor. In general, in the RAM (random access memory) area, data transmission is slowed or interrupted by another process, and buffering is performed to prevent the data underflow during decoding. As data is transferred from the storage medium to RAM for buffering, the data block size may be constant or change dynamically.
종래에는 휴대용 단말기에 저장매체로 플래시 메모리 하나만을 사용했기 때문에, 다양한 저장 매체와 멀티미디어 코덱 간의 데이터 블록 크기의 동적 할당 알고리즘이 요구되지 않았다. 따라서, 여러 종류의 저장매체에 저장되어 있는 오디오, 동영상 파일을 휴대용 단말기에서 재생 시 오디오, 영상에 대한 QoS(Quality of Service)를 보장하기 위해 멀티미디어 코덱에서 파일을 디코딩 시 어느 저장 매체에서 재생을 하던지 재생시작까지 걸리는 헤더 분석 시간과 초기 데이터 독출 시간이 일정하게 유지되어야 하지만, 각 저장 매체마다 멀티미디어 코덱에 데이터를 전송하고 저장하는 속도 차이로 재생시작까지 걸리는 헤더 분석 시간과 초기 데이터 독출 시간을 일정하게 유지할 수 없었다.In the related art, since only one flash memory is used as a storage medium in a portable terminal, a dynamic allocation algorithm for data block size between various storage media and a multimedia codec is not required. Therefore, in order to guarantee the quality of service (QoS) for audio and video when playing audio and video files stored in various types of storage media in a portable terminal, which storage media is played when decoding files in the multimedia codec Although the header analysis time and the initial data reading time until the start of playback should be kept constant, the header analysis time and the initial data reading time until the start of playback are consistently maintained due to the difference in the speed at which data is transmitted and stored in the multimedia codec for each storage medium. Couldn't keep up.
다시 말해, 종래의 경우처럼 각 저장 매체마다 액세스되는 데이터 블록 크기를 일정하게 하면, 각 저장 매체마다 오디오나 비디오를 분석하고 재생하는 시간이 다르게 되어, 헤더 분석 시간과 초기 데이터 독출 시간이 일정하지 않아 재생 시간이 달라 멀티미디어 코덱 성능을 떨어뜨렸다.In other words, if the data block size accessed for each storage medium is constant as in the conventional case, the time for analyzing and playing audio or video is different for each storage medium, and thus the header analysis time and initial data read time are not constant. The playback time was different, which reduced the performance of the multimedia codec.
따라서, 저장매체에 상관없이 헤더 분석 시간과 초기 데이터 독출 시간을 일정하게 유지하는 멀티미디어 재생 장치 및 방법이 필요하다.Accordingly, there is a need for a multimedia playback apparatus and method for maintaining a constant header analysis time and initial data read time regardless of a storage medium.
따라서, 본 발명의 목적은 데이터 블록 크기를 동적으로 할당하는 멀티미디어 재생 장치 및 방법을 제공함에 있다.Accordingly, an object of the present invention is to provide a multimedia playback apparatus and method for dynamically allocating a data block size.
본 발명의 다른 목적은 저장 매체에 따라 데이터 블록 크기를 동적으로 할당하는 멀티미디어 재생 장치 및 방법을 제공함에 있다.Another object of the present invention is to provide a multimedia playback apparatus and method for dynamically allocating a data block size according to a storage medium.
본 발명의 또 다른 목적은 헤더 분석 시간와 데이터 독출 시간을 최대한 일정하여 유지하는 멀티미디어 재생 장치 및 방법을 제공함에 있다.Another object of the present invention is to provide a multimedia playback apparatus and method for maintaining a header analysis time and a data read time as constant as possible.
본 발명의 또 다른 목적은 저장 매체의 데이터 액세스 속도에 따른 멀티미디어 코덱의 성능 저하를 개선한 멀티미디어 재생 장치 및 방법을 제공함에 있다.Another object of the present invention is to provide an apparatus and method for reproducing a multimedia, which reduces performance of a multimedia codec according to a data access speed of a storage medium.
상기한 목적들을 달성하기 위한 본 발명의 제 1 견지에 따르면, 휴대용 단말기에서 저장매체에 따라 데이터 블록 크기를 동적으로 할당하는 멀티미디어 재생 장치는 저장매체에 따라 저장매체와 코덱 사이에 전송되는 데이터 블록 크기를 계산하는 데이터 블록 크기 계산부와, 영상 또는 오디오 재생 요구 시, 상기 저장매 체로부터 상기 영상 또는 오디오 데이터를 상기 계산한 데이터 블록 크기 단위로 독출하여 저장하는 메모리와, 상기 메모리로부터 저장된 데이터를 읽어 디코딩하고 영상 또는 오디오를 재생하는 제어부를 포함하는 것을 특징으로 한다.According to a first aspect of the present invention for achieving the above object, the multimedia playback apparatus for dynamically allocating a data block size in accordance with a storage medium in a portable terminal, the data block size transmitted between the storage medium and the codec according to the storage medium A data block size calculation unit for calculating a data, a memory for reading and storing the video or audio data in the calculated data block size unit from the storage medium when a video or audio reproduction is requested, and reading the data stored in the memory. And a controller for decoding and reproducing an image or audio.
상기한 목적들을 달성하기 위한 본 발명의 제 2 견지에 따르면, According to a second aspect of the present invention for achieving the above objects,
휴대용 단말기에서 저장매체에 따라 데이터 블록 크기를 동적으로 할당하는 멀티미디어 재생 방법은 저장매체에 따라 각각의 저장매체와 코덱 사이에 전송되는 데이터 블록 크기를 계산하는 과정과, 영상 또는 오디오 재생 요구 시, 상기 저장매체로부터 상기 영상 또는 오디오 데이터를 상기 계산한 데이터 블록 크기 단위로 독출하는 과정과, 상기 독출한 데이터 블록 크기를 디코딩하고 영상 또는 오디오를 재생하는 과정을 포함하는 것을 특징으로 한다.The multimedia playback method of dynamically allocating a data block size according to a storage medium in a portable terminal includes calculating a data block size transmitted between each storage medium and a codec according to a storage medium, and when requesting video or audio playback, And reading out the image or audio data from the storage medium in the unit of the calculated data block size, and decoding the read data block size and playing back the image or audio.
이하 본 발명의 바람직한 실시 예를 첨부된 도면의 참조와 함께 상세히 설명한다. 그리고, 본 발명을 설명함에 있어서, 관련된 공지기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단된 경우 그 상세한 설명은 생략한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. In describing the present invention, when it is determined that a detailed description of a related known function or configuration may unnecessarily obscure the subject matter of the present invention, the detailed description thereof will be omitted.
이하, 본 발명은 휴대용 단말기의 저장매체에 따라 데이터 블록 크기를 동적으로 할당하는 멀티미디어 재생 장치 및 방법에 대해 설명하기로 한다.Hereinafter, the present invention will be described with respect to a multimedia playback apparatus and method for dynamically allocating a data block size according to a storage medium of a portable terminal.
도 1은 본 발명에 따른 휴대용 단말기의 저장매체에 따라 데이터 블록 크기를 계산하여 영상 또는 오디오를 재생하는 장치 블록을 도시하고 있다.1 is a block diagram of an apparatus for reproducing an image or audio by calculating a data block size according to a storage medium of a portable terminal according to the present invention.
상기 도 1을 참조하면, 제어부(100)는 상기 휴대용 단말기의 전반적인 동작을 제어한다. 예를 들어, 음성통화 및 데이터통신을 위한 처리 및 제어를 수행하고, 통상적인 기능에 더하여 본 발명에 따라 램(RAM)(102)을 통해 저장매체 A(104), 저장매체 B(106), 또는 저장매체 C(108)에 저장되어 있는 영상 또는 오디오 데이터를 저장매체 속도에 따라 데이터 블록 크기를 달리하여 독출하고 코덱(110)으로 이 데이터를 제공해 디코딩하여 영상 또는 오디오 신호로 재생하기 위한 처리 및 제어기능을 담당한다. 이하의 설명에 있어서 통상적인 제어부(100)의 처리 및 제어에 관한 설명은 생략한다.Referring to FIG. 1, the
상기 램(RAM : Random Access Memory)(102)은 상기 제어부(100)의 워킹 메모리(working memory)로, 각종 프로그램 수행 중에 발생하는 일시적인 데이터를 저장한다. 여기서는 상기 제어부(100)의 지시에 의해 저장 매체 A, B, C로부터 저장되어 있는 영상, 오디오 데이터를 독출하여 상기 제어부(100)로 제공한다.The random access memory (RAM) 102 is a working memory of the
저장 매체 A, B, C(104, 106, 108)은 NAND 플래시 메모리, NOR 플래시 메모리, 외부 메모리 카드(T-flash, SD card 등), 하드 디스크 중 하나로 사용자 데이터(그림 파일, 영상 데이터(영화 파일) 및 오디오 데이터(음악 파일) 등)가 저장된다.Storage media A, B, C (104, 106, 108) are one of NAND flash memory, NOR flash memory, external memory card (T-flash, SD card, etc.), hard disk and user data (picture file, image data (movie) Files) and audio data (music files, etc.) are stored.
상기 제어부(100)에 연결된 코덱(CODEC : Coder-Decoder)(110)과, 상기 코덱(110)에 접속된 스피커/마이크(114)는 전화 통화, 음성 녹음에 사용되는 소리 입출력 블록이다. The codec (Coder-Decoder) 110 connected to the
상기 코덱(110)은 상기 제어부(100)에서 제공되는 PCM 데이터를 아날로그 음 성신호로 변환하여 상기 스피커(114)를 통해 송출하고, 상기 마이크(114)를 통해 수신되는 음성신호를 PCM 데이터로 변환하여 상기 제어부(100)로 제공한다. 또한, 상기 제어부(100)에서 제공되는 저장매체 A,B,C(104, 106, 108)에 저장되어 있는 영상 데이터를 디코딩하여 표시부(116)로 제공하고 상기 제어부(100)의 지시에 의해 카메라로부터 외부 영상신호를 입력받아 인코딩하여 상기 저장매체 A, B, C(104, 106, 108)중 하나에 저장한다.The
표시부(112)는 상기 휴대용 단말기의 동작 중에 발생하는 상태 정보, 제한된 숫자의 문자들, 다량의 동영상 및 정지영상 등을 디스플레이한다. 상기 디스플레이부(112)는 칼라 액정 디스플레이 장치(LCD : Liquid Crystal Display)를 사용할 수 있다.The
데이터 블록 크기 계산부(116)는 정의된 상기 램(RAM)(102)에서 상기 제어부(100)로 전송되는 데이터 크기, 상기 코덱(110)이 디코딩을 시작하기 위해 필요한 최초 시간, 저장매체 A, B, C(104, 106, 108)으로부터 영상 또는 오디오 데이터를 독출하는 속도의 관계식으로부터 저장매체에 따라 저장매체와 코덱 사이에 전송되는 데이터 블록 크기를 계산하여 상기 제어부(100)로 제공한다.The data
도 2는 본 발명에 따른 휴대용 단말기의 저장매체에 따라 데이터 블록 크기를 계산하여 영상 또는 오디오를 재생하는 절차를 도시하고 있다.2 is a flowchart illustrating a process of reproducing an image or audio by calculating a data block size according to a storage medium of a portable terminal according to the present invention.
상기 도 2를 참조하면, 200 단계에서 저장매체 A, B 또는 C(104, 106, 108)에 저장되어 있는 오디오 또는 영상 데이터 재생 이벤트가 발행하면 206 단계로 진 행하여 제어부(100)는 램(102)을 통해 상기 저장매체 A, B 또는 C(104, 106, 108)에 저장되어 있는 영상 또는 오디오 데이터를 동적 데이터 블록 크기 단위로 제공받는다.Referring to FIG. 2, when an audio or video data reproduction event stored in storage mediums A, B, or C (104, 106, 108) is issued in
만약, 상기 200 단계에서 저장매체 A, B 또는 C(104, 106, 108)에 저장되어 있는 오디오 또는 영상 데이터 재생 이벤트가 발행하지 않으면 210 단계로 진행하여 재생 이벤트가 발생할 때까지 기다린다.If the audio or video data playback event stored in the storage medium A, B, or C (104, 106, 108) is not issued in
이후, 202 단계로 진행하여 상기 제어부는 데이터 블록 크기 계산부로부터 동적 데이터 블록 크기를 제공받아 상기 동적 데이터 블록 크기 단위로 저장매체에서 영상 또는 오디오 데이터를 독출하여 메모리로 전송한다.In
이후, 204 단계로 진행하여 상기 제어부는 제공받은 동적 데이터 블록 크기를 멀티미디어 코덱으로 전송하여 디코딩한다.In
이후, 206 단계로 진행하여 디코딩된 영상 또는 오디오 신호를 재생하여 표시부(112)나 스피커(114)로 출력한다.In
이후, 208 단계에서 상기 영상 또는 오디오 재생이 종료되면 재생을 멈추고 종료된다.Thereafter, when the video or audio playback ends in
이후, 상기 208 단계에 재생 종료가 아니면 상기 206 단계로 진행한다.Thereafter, if the playback is not terminated in
이후, 본 알고리즘을 종료한다.The algorithm then ends.
도 3는 본 발명에 따른 휴대용 단말기의 저장매체에 따라 데이터 블록 크기를 계산하는 절차를 도시하고 있다.3 illustrates a procedure for calculating a data block size according to a storage medium of a portable terminal according to the present invention.
상기 도 3을 참조하면, 300 단계에서 각 저장매체의 데이터 독출 속도를 정의한다.Referring to FIG. 3, in
본 발명에서 휴대용 단말기에서 멀티미디어 코덱이 접근 가능한 모든 저장 매체를 A,B,C 라 가정한다. 저장 매체의 예로는 NAND 플래시 메모리, NOR 플래시 메모리, 외부 메모리 카드(T-flash, SD card 등), 하드 디스크 등이 될 수 있다. 여기서, 각 저장 매체에서 데이터를 읽을 때 데이터 전송률(byte per seconds)을 각각 BPS_a, BPS_b, BPS_c로 정의한다. 클록(clock)의 변화에 의해 저장 매체에서 데이터 전송률을 변화시킬 수 있는 경우 BPS_a, BPS_b, BPS_c 는 변경될 수 있지만 편의상 BPS_a, BPS_b, BPS_c는 일정하다고 가정하며 그 속도의 차이는 BPS_a > BPS_b > BPS_c이라 가정한다.In the present invention, it is assumed that all storage media accessible by the multimedia codec in the portable terminal are A, B, and C. Examples of the storage medium may be a NAND flash memory, a NOR flash memory, an external memory card (T-flash, SD card, etc.), a hard disk, or the like. Here, data read rates (byte per seconds) when data is read from each storage medium are defined as BPS_a, BPS_b, and BPS_c, respectively. BPS_a, BPS_b, BPS_c can be changed when the data rate can be changed in the storage medium by changing the clock, but for convenience, BPS_a, BPS_b, BPS_c is assumed to be constant and the difference in speed is BPS_a> BPS_b> BPS_c Assume that
이후, 302 단계에서는 메모리에서 코덱을 제어하는 제어부로 전송되는 데이터 블록 크기를 정의한다.Subsequently, in
동등한 비교를 위해 저장 매체에 있는 이미지, 오디오 또는 비디오 같은 멀티미디어 데이터의 크기를 ORIGINAL_DATA_SIZE_IN_BYTES 라 정의한다. 단위는 바이트(bytes)로 정의한다. 그리고, 한번에 멀티미디어 코덱이 접근하는 램에서 제어부로 전송되는 데이터의 크기를 MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES로 정의하고 멀티미디어 코덱에서 디코딩을 시작하기 위해 필요한 최소 데이터 크기를 MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N라 정의한다. 이 데이터는 한번에 저장 매체에서 멀티미디어 코덱이 접근하는 램에 저장된다. 이것은 MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES 의 N 배라 정의한다. 각 저장 매체 A,B,C의 데이터 블록 크기는 MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N_a, MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N_b, MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N_c로 정의한다.For equal comparison, the size of multimedia data such as images, audio or video on a storage medium is defined as ORIGINAL_DATA_SIZE_IN_BYTES. The unit is defined as bytes. In addition, the size of data transmitted from the RAM accessed by the multimedia codec to the controller at one time is defined as MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES, and the minimum data size required to start decoding in the multimedia codec is defined as MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N. This data is stored at once in the RAM accessed by the multimedia codec on the storage medium. This is defined as N times MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES. The data block sizes of the storage media A, B, and C are defined as MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N_a, MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N_b, and MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N_c.
이후, 304 단계에서, 다양한 저장 매체에서 멀티미디어 코덱이 디코딩을 시작하기 위해 필요로 하는 최초 시간(T_start)을 정의한다. 여기서, 멀티미디어 재생시 공평성을 유지하기 위해 각각의 저장매체는 같은 T_start값을 갖는다. 다시 말해 T_start은 저장매체의 공평성을 고려해 상수 값을 갖고 아래 <수학식 1>에 의해 구해진다.Then, in
= MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N_b / BPS_b = MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N_b / BPS_b
= MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N_c / BPS_c = MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N_c / BPS_c
이 때, BPS_a > BPS_b > BPS_c인 관계로 T_start가 상수를 유지하기 위해 MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N_a > MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N_b > MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N_c이 성립한다.At this time, MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N_a>MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N_b> MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N_c is established to maintain T_ start constant because BPS_a>BPS_b> BPS_c.
디코딩을 시작하기 위해 요구되는 데이터 블록 크기와 N의 관계는 다음과 같 다.The relationship between N and the data block size required to start decoding is as follows.
MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N_b = MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES × N_bMEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N_b = MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES × N_b
MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N_c = MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES × N_cMEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N_c = MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES × N_c
이후, 306 단계에서 저장매체 A, B, C로부터 램으로 전송되는 데이터 블록 크기의 수를 구한다.In
위의 <수학식 2>을 각 <수학식 1> 대입하여 정리하면 다음의 관계를 도출할 수 있다.By substituting Equation 2 above into Equation 1, the following relationship can be derived.
N_b = T_start × BPS_b / MEDIUM_TO_RAM_DATA_SIZE_IN_BYTESN_b = T_ start × BPS_b / MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES
N_c = T_start × BPS_c / MEDIUM_TO_RAM_DATA_SIZE_IN_BYTESN_c = T_ start × BPS_c / MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES
<수학식 3>으로부터 각기 다른 데이터 전송률을 가지는 저장 매체 A,B,C 에 대하여 재생 시작시간을 같도록 하기 위해 N_a, N_b, N_c를 결정할 수 있다. 즉 T_start를 상수로 하면 데이터 전송률이 빠른 저장 매체 A 는 디코딩 시작 전까지 더 많은 크기의 데이터를 램에 저장해 놓는다. 이 개념에 의하면 빠른 데이터 액세스 속도를 가지는 저장 매체 A에서 디코딩시 한번에 큰 MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N_a를 독출하여 N_a 횟수만큼 MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES의 데이터 전송이 램에서 제어부로 이루어질 때 저장 매체 접근을 할 필요가 없기 때문에 B,C 에 비해 메모리 인터럽트(interrupt)가 적어 디코딩시 유리하다.From Equation 3, N_a, N_b, and N_c may be determined so that the reproduction start times are the same for storage media A, B, and C having different data rates. In other words, if T_ start is a constant, the storage medium A having a high data rate stores more data in RAM until the start of decoding. This concept reads large MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N_a at a time when decoding from storage medium A with a high data access rate, so that when the data transfer of MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES is made from the RAM to the controller as much as N_a times, it is not necessary to access the storage medium. Less memory interrupts are advantageous when decoding.
반면, 디코딩 시작시점을 고려한 공평성보다는 저장매체의 데이터의 중요성에 따라 T_start을 차별을 두는 경우를 고려한다.On the other hand, we consider the case where T_ start is discriminated according to the importance of data of the storage medium rather than fairness considering the decoding start time.
MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N_a,MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N_b, MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N_c를 일정하게 하면 디코딩 시작시간을 예측할 수 있다.Decoding start time can be predicted by keeping MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N_a, MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N_b and MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N_c constant.
<수학식 1>에서 데이터 액세스 속도가 빠른 저장 매체 A에서 시스템 마진(system margin)을 확보하기 위해 MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N_a 값을 좀 더 크게 설정한다면, T_start값은 커진다. 하지만, 속도가 느린 저장 매체 B에서는 MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N_b 값을 낮추어 T_start _b를 줄일 수 있다. 물론 MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N_b 는 멀티미디어 코덱이 디코딩 시작시 최소 데이터 요구 크기까지만 낮출 수 있다.In Equation 1, if the MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N_a value is set larger in order to secure a system margin in the storage medium A having a faster data access speed, the T_ start value becomes larger. However, in the storage medium B it can be reduced to a slow start T_ _b MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N_b lower the value. Of course, MEDIUM_TO_RAM_DATA_SIZE_IN_BYTES_N_b can only be reduced to the minimum required data size when the multimedia codec starts decoding.
여기서, △B는 T_start _b의 향상 정도를 나타낸다. 즉, △B만큼 T_start _b이 빨라진다.DELTA B represents the improvement degree of T_ start _b . That is, T_ start _ b becomes faster by ΔB.
도 4는 본 발명에 따른 저장매체에 따른 디코딩 시작시간을 비교하여 도시하고 있다.4 shows a comparison of decoding start times according to a storage medium according to the present invention.
상기 도 4를 참조하면, a의 경우는 저장매체의 데이터 액세스 속도와 상관없이 데이터 블록 크기를 고정하였을 때, 디코딩 시작시간 t1, t2, t3로 디코딩 시작시간이 달라진다.Referring to FIG. 4, in the case of a, when the data block size is fixed regardless of the data access speed of the storage medium, the decoding start time is changed to t1, t2, and t3.
b의 경우는 저장매체의 데이터 액세스 속도에 따라 데이터 블록 크기를 동적으로 할당하였을 때, 디코딩 시작시간 t1으로 디코딩 시작시간이 같아진다.In case of b, when the data block size is dynamically allocated according to the data access speed of the storage medium, the decoding start time is equal to the decoding start time t1.
한편 본 발명의 상세한 설명에서는 구체적인 실시 예에 관해 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 발명의 범위는 설명된 실시 예에 국한되어 정해져서는 아니 되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.Meanwhile, in the detailed description of the present invention, specific embodiments have been described, but various modifications are possible 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.
휴대용 단말기에서 다양한 저장 매체에서 따라 동적인 데이터 블록 크기로 전송함으로써 저장매체에 상관없이 멀티미디어 코덱에서 디코딩하는 시작시간을 같게 할 것인지, 아니며 가능한 최대속도를 보장할 것인지, 재생 속도 향상 정도는 어느 정도인지를 고려할 수 있는 이점이 있다.Whether the portable terminal transmits the dynamic data block size according to the various storage media to make the decoding time of the multimedia codec the same regardless of the storage medium, and ensures the maximum possible speed, and how much the playback speed is improved. There is an advantage to consider.
Claims (8)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060065790A KR20080006713A (en) | 2006-07-13 | 2006-07-13 | Apparatus and method for multimedia play dynamically allocating data block size according to the storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060065790A KR20080006713A (en) | 2006-07-13 | 2006-07-13 | Apparatus and method for multimedia play dynamically allocating data block size according to the storage medium |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20080006713A true KR20080006713A (en) | 2008-01-17 |
Family
ID=39220347
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020060065790A KR20080006713A (en) | 2006-07-13 | 2006-07-13 | Apparatus and method for multimedia play dynamically allocating data block size according to the storage medium |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20080006713A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190139895A1 (en) * | 2017-11-08 | 2019-05-09 | Taiwan Semiconductor Manufacturing Co., Ltd. | Method for forming semiconductor device structure with conductive line |
-
2006
- 2006-07-13 KR KR1020060065790A patent/KR20080006713A/en not_active Application Discontinuation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190139895A1 (en) * | 2017-11-08 | 2019-05-09 | Taiwan Semiconductor Manufacturing Co., Ltd. | Method for forming semiconductor device structure with conductive line |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6490250B1 (en) | Elementary stream multiplexer | |
US11094346B2 (en) | Systems and methods for adaptive streaming of multimedia content | |
CN105100876A (en) | Streaming media playing method and device | |
CN102883152A (en) | Media streaming with adaptation | |
TW201729187A (en) | System and method for controlling memory frequency using feed-forward compression statistics | |
EP1855483A2 (en) | Apparatus and method for transmitting and receiving moving pictures using near field communication | |
US20110282884A1 (en) | Method and Device for Recording Media | |
US7627702B2 (en) | Data reproduction device and method, and program | |
KR20110110434A (en) | Low power audio play device and mehod | |
CN103078810A (en) | Efficient rich media showing system and method | |
US7774632B2 (en) | Adaptive power management method in portable electronic device | |
JP2009026047A (en) | Audio processor having clock frequency dynamic automatic control function | |
US8369456B2 (en) | Data processing apparatus and method and encoding device | |
KR20080006713A (en) | Apparatus and method for multimedia play dynamically allocating data block size according to the storage medium | |
WO2003073759A1 (en) | Image transmission apparatus and image transmission method | |
US20050160069A1 (en) | Method for processing a file for a sub-memory in a wireless terminal | |
JP2007013602A (en) | Content recorder, content reproducing device and parameter information recording method | |
JP2011505623A (en) | Method, apparatus, and computer program for improving memory usage | |
CN109302574A (en) | A kind of method and apparatus handling video flowing | |
KR100721352B1 (en) | Portable Terminal for preventing an playback cutting among the playback of multimedia at multi-tasking state and Method thereof | |
KR100565307B1 (en) | Streaming contents store method for mobile communication device | |
WO2005104125A1 (en) | Record reproducing device, simultaneous record reproduction control method and simultaneous record reproduction control program | |
KR100683337B1 (en) | Play control apparatus and method for music file in the portable terminal | |
US20110119465A1 (en) | Data processing system | |
JP2002232846A (en) | Video and audio processor and video and audio processing method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E601 | Decision to refuse application |