KR101042614B1 - Low-power video playback method based on decoding time estimation - Google Patents

Low-power video playback method based on decoding time estimation Download PDF

Info

Publication number
KR101042614B1
KR101042614B1 KR1020090061295A KR20090061295A KR101042614B1 KR 101042614 B1 KR101042614 B1 KR 101042614B1 KR 1020090061295 A KR1020090061295 A KR 1020090061295A KR 20090061295 A KR20090061295 A KR 20090061295A KR 101042614 B1 KR101042614 B1 KR 101042614B1
Authority
KR
South Korea
Prior art keywords
decoding time
frame
operating frequency
video
decoding
Prior art date
Application number
KR1020090061295A
Other languages
Korean (ko)
Other versions
KR20110003835A (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 KR1020090061295A priority Critical patent/KR101042614B1/en
Publication of KR20110003835A publication Critical patent/KR20110003835A/en
Application granted granted Critical
Publication of KR101042614B1 publication Critical patent/KR101042614B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • H04N21/4436Power management, e.g. shutting down unused components of the receiver
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/324Power saving characterised by the action undertaken by lowering clock frequency
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

디코딩 시간 예측을 통한 저전력 동영상 재생 방법이 제공된다. 디코딩 시간 예측을 통한 저전력 동영상 재생 방법은 동영상에 포함된 프레임의 크기 정보를 획득하는 단계, 상기 프레임 별로 디코딩 시간을 샘플링하는 단계, 상기 샘플링된 값을 이용하여, 로그 회귀 분석을 통하며 상기 프레임과 상기 디코딩 시간과의 관계를 도출하고, 상기 도출된 관계에 기초하여, 재생될 프레임의 디코딩 시간을 예측하는 단계, 상기 예측된 디코딩 시간에 기초하여 중앙 처리 장치의 동작 주파수를 조절하는 단계 및 상기 조절된 동작 주파수에 기초하여, 상기 동영상 프레임을 디코딩하는 단계를 포함한다.A low power video playback method through decoding time prediction is provided. A low power video playback method using decoding time prediction may include obtaining size information of a frame included in a video, sampling the decoding time for each frame, and performing log regression analysis using the sampled values. Deriving a relationship with the decoding time and predicting a decoding time of a frame to be reproduced based on the derived relationship, adjusting an operating frequency of a central processing unit based on the predicted decoding time and adjusting the Decoding the video frame based on the specified operating frequency.

디코딩 시간, 예측, 로그 회귀 분석, 데드라인 미스, 동작 주파수 Decoding Time, Prediction, Log Regression, Deadline Miss, Operating Frequency

Description

디코딩 시간 예측을 통한 저전력 동영상 재생 방법{LOW-POWER VIDEO PLAYBACK METHOD BASED ON DECODING TIME ESTIMATION}LOW-POWER VIDEO PLAYBACK METHOD BASED ON DECODING TIME ESTIMATION}

본 발명은 디코딩 시간 예측을 통한 저전력 동영상 재생 방법에 관한 것으로서, 보다 상세하게는, 로그회귀분석을 통하여 디코딩 시간을 예측하고, 의도적으로 데드라인 미스를 발생시켜 중앙 처리 장치의 동작 주파수를 조절하는 저전력 동영상 재생 방법에 관한 것이다.The present invention relates to a low power video playback method through decoding time prediction, and more particularly, to predict a decoding time through log regression, and to intentionally generate a deadline miss to control an operating frequency of a central processing unit. It relates to a video playback method.

멀티미디어와 네트워크 기술의 최근의 발전은, 랩탑이나 PMP, 모바일 폰과 같은 장치들을 사용하여 언제든지 동영상 서비스에 접근할 수 있게 했다. 그러나 동영상 프로그램은 많은 양의 CPU 계산을 필요로 하고 높은 비율의 CPU 전력 소모를 수반한다. 모바일 시스템에서 CPU는 가장 많은 전력 소모를 야기하는 장치들 중 하나이기 때문에, 휴대용 멀티미디어 장치에서 CPU 전력 소모를 줄이는 것은 중요하다.Recent advances in multimedia and network technologies have made it possible to access video services at any time using devices such as laptops, PMPs and mobile phones. However, video programs require a large amount of CPU calculations and involve a high rate of CPU power consumption. Since the CPU is one of the most power consuming devices in mobile systems, it is important to reduce the CPU power consumption in portable multimedia devices.

CPU 전력 소모를 줄이는 효과적인 방법은 CPU의 동작 주파수(속도)를 변경하는 동적 전압 조절(DVS) 기술을 사용하는 것이다. PMP, 모바일 폰, 랩탑에서 사용하는 CPU는 대부분 저전력으로 동작하기 위해 여러 단계의 동작 주파수(CPU 속도) 를 지원하며 외부에서 컨트롤할 수 있는 방법을 제공한다. 동적 전압 조절 기법은 CPU 속도에 따라 프로세서에 인가되는 전압을 변화시켜 주고 CPU 속도를 동적으로 전환할 수 있게 해준다. CPU에 의해 소모되는 에너지는 입력 전압에 제곱에 비례하여 변화하므로, 전압을 감소시키는 것은 많은 양의 전력을 절약하게 해준다. 그러나 동시에 프로그램의 실행 속도를 저하시키므로 동영상 플레이어가 가지는 실시간 요구조건을 만족시킬 수 없게 된다.An effective way to reduce CPU power consumption is to use dynamic voltage regulation (DVS) technology that changes the operating frequency (speed) of the CPU. Most CPUs used in PMPs, mobile phones and laptops support multiple levels of operating frequency (CPU speed) for low power operation and provide an externally controllable way. Dynamic voltage regulation allows you to vary the voltage applied to the processor based on CPU speed and to dynamically switch CPU speed. The energy consumed by the CPU varies in proportion to the square of the input voltage, so reducing the voltage saves a lot of power. At the same time, however, the execution speed of the program is slowed down, so that the real-time requirements of the video player cannot be satisfied.

또한, 동영상 코덱은 압축 기술을 사용하기 때문에 각 프레임들은 정해진 재생률로 디코딩되어 화면에 뿌려져야 하고 그것은 많은 양의 연산을 필요로 한다. 예를 들어, 25프레임의 동영상을 재생하기 위해서는 하나의 프레임이 매 41ms 마다 한번 디코딩 되어야 한다. 그러나 전형적으로 미래의 디코딩 타임을 예측하는 것은 어렵기 때문에, 동적 전압 조절 기술의 효용성이라 함은 우선적으로 미래의 CPU 요구사항을 예측하는 능력에 의존하게 된다. 만약 디코딩 시간 예측에 있어서 예측치가 실제 디코딩 시간보다 클 경우, 필요 보다 높은 CPU 속도를 선택하게 되므로 결과적으로 전력을 낭비하게 되며, 예측치가 실제 디코딩 시간보다 작을 경우, 필요 보다 낮은 CPU 속도를 선택하게 되므로 동영상 플레이어의 실시간 요구 조건을 만족시키지 못한다.Also, because video codecs use compression techniques, each frame must be decoded and scattered on the screen at a fixed refresh rate, which requires a lot of computation. For example, to play 25 frames of video, one frame must be decoded once every 41 ms. However, since it is typically difficult to predict future decoding times, the utility of dynamic voltage regulation techniques will primarily depend on the ability to predict future CPU requirements. If the prediction is larger than the actual decoding time in the prediction of the decoding time, it will select higher CPU speed than necessary, resulting in a waste of power. If the prediction is smaller than the actual decoding time, it will select a lower CPU speed than necessary. It does not meet the real-time requirements of the video player.

기존의 예측 기법들은 앞선 프레임의 디코딩 시간을 바탕으로 다음 프레임의 디코딩 시간을 예측한다. 이 방법들은, 측정된 디코딩 시간을 최고 속도의 CPU에서의 디코딩 시간으로 변환한 후 다음 디코딩 시간을 예측하게 되는데, 실제로 프레임의 디코딩 시간은 CPU의 속도와 정확하게 선형적인 관계를 가지지 않는다. 결국, 잘못된 예측으로 인해 실시간 요구조건을 해치거나 전력을 낭비하게 된다. Existing prediction techniques predict the decoding time of the next frame based on the decoding time of the previous frame. These methods convert the measured decoding time into the decoding time at the highest speed CPU and then predict the next decoding time, in fact the decoding time of the frame does not have a precise linear relationship with the speed of the CPU. As a result, false predictions can hurt real-time requirements or waste power.

한편, 제 1 선행 기술로서, 대한민국 특허공개번호 제2006-0071293호에는 “디코딩 시간 예측에 따른 동작주파수 및 구동전압 변동을 이용한 MPEG 재생 장치 및 그 방법”이라는 명칭의 발명이 개시되어 있는 바, 디코딩할 MPEG 프레임 종류 및 크기 정보를 이용하여 프로세서를 이용할 때의 프레임 디코딩의 작업량 및 디코딩에 필요한 시간을 예측하고, 프로세서의 동작 주파수 및 그에 따른 구동 전압을 설정하는 설정하는 기술에 관한 것이다.On the other hand, as the first prior art, Korean Patent Publication No. 2006-0071293 discloses an invention entitled "MPEG playback apparatus and method using variation of operating frequency and driving voltage according to decoding time prediction", and decoding The present invention relates to a technique for estimating an operation amount of frame decoding and a time required for decoding using an MPEG frame type and size information to be used, and setting an operating frequency of the processor and a driving voltage according thereto.

하지만, 상술한 제 1 선행 기술은 프레임 별 디코딩 시간들의 평균값을 이용하여, 디코딩 시간을 예측하며, 동작 주파수 별로 프레임 별 디코딩 시간을 샘플링하지 않기 때문에, 영상 및 프레임의 급격하게 변화하는 동영상에 있어서, 디코딩 시간 예측을 정확하게 할 수 없으며, 동영상 재생 장치의 전력을 낭비하게 되는 문제가 있었다.However, since the above-described first prior art predicts the decoding time by using an average value of the decoding times per frame, and does not sample the decoding time per frame for each operating frequency, in the video and the rapidly changing video of the frame, There was a problem in that the decoding time prediction could not be accurately made and the power of the video reproducing apparatus was wasted.

따라서, 동영상에 포함된 프레임들의 종류와 현재 시스템의 환경에 따라 동영상 프레임과 디코딩 시간과의 상관관계를 정확하게 분석하여, 전력 소모를 최소화할 수 있는 동영상 재생 장치가 강력히 요구되고 있다.Accordingly, there is a strong demand for a video reproducing apparatus capable of minimizing power consumption by accurately analyzing a correlation between a video frame and a decoding time according to the type of frames included in a video and the current system environment.

본 발명의 일부 실시예는 프레임 별 디코딩 시간을 샘플링하고 로그 회귀 분석을 통하여 재생될 프레임의 디코딩 시간을 예측하는 저전력 동영상 재생 방법을 제공한다.Some embodiments of the present invention provide a low power video reproduction method of sampling a decoding time for each frame and predicting a decoding time of a frame to be reproduced by log regression analysis.

또한, 본 발명의 일 실시예에는 동작 주파수 별로 순차적으로 프레임 별 디코딩 시간을 샘플링하는 저전력 동영상 재생 방법을 제공한다.In addition, an embodiment of the present invention provides a low-power video playback method for sampling the decoding time for each frame sequentially by operating frequency.

또한, 본 발명의 일 실시예는 데드라인 미스를 의도적으로 발생시켜 중앙 처리 장치의 동작 주파수를 조절하는 저전력 동영상 재생 방법을 제공한다.In addition, an embodiment of the present invention provides a low-power video playback method for intentionally generating a deadline miss to adjust the operating frequency of the central processing unit.

상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 제 1 측면은 동영상에 포함된 프레임의 크기 정보를 획득하는 단계, 상기 프레임 별로 디코딩 시간을 샘플링하는 단계, 상기 샘플링된 값을 이용하여, 로그 회귀 분석을 통하며 상기 프레임과 상기 디코딩 시간과의 관계를 도출하고, 상기 도출된 관계에 기초하여, 재생될 프레임의 디코딩 시간을 예측하는 단계, 상기 예측된 디코딩 시간에 기초하여 중앙 처리 장치의 동작 주파수를 조절하는 단계 및 상기 조절된 동작 주파수에 기초하여, 상기 동영상 프레임을 디코딩하는 단계를 포함하는 디코딩 시간 예측을 통한 저전력 동영상 재생 방법을 제공할 수 있다.As a technical means for achieving the above technical problem, the first aspect of the present invention is to obtain the size information of the frame included in the video, sampling the decoding time for each frame, by using the sampled value, Deriving a relationship between the frame and the decoding time through log regression analysis, and predicting a decoding time of a frame to be reproduced, based on the derived relationship, based on the predicted decoding time. The method may provide a low-power video playback method through decoding time prediction, the method including adjusting an operating frequency and decoding the video frame based on the adjusted operating frequency.

또한, 본 발명의 제 1 측면에서, 상기 중앙 처리 장치의 동작 주파수를 조절하는 단계는, 기 설정된 범위 내에서 데드라인 미스를 발생시켜 상기 동작 주파수 를 조절할 수 있다.In addition, in the first aspect of the present disclosure, adjusting the operating frequency of the central processing unit may generate a deadline miss within a preset range to adjust the operating frequency.

또한, 본 발명의 제 1 측면에서, 상기 동영상 프레임을 디코딩하는 단계는, 상기 동영상 프레임의 디코딩 시간을 측정하고, 상기 측정된 값을 상기 샘플링된 값으로 제공하여, 상기 재생될 프레임의 디코딩 시간을 예측하는데 이용될 수 있도록 할 수 있다Also, in the first aspect of the present invention, the decoding of the video frame may include: measuring a decoding time of the video frame and providing the measured value as the sampled value to determine a decoding time of the frame to be reproduced. Can be used to predict

또한, 본 발명의 제 1 측면에서, 상기 디코딩 시간을 샘플링하는 단계는, 상기 프레임의 디코딩 시간을 상기 중앙 처리 장치의 동작 주파수 별로 각각 샘플링할 수 있다.Also, in the first aspect of the present invention, the sampling of the decoding time may include sampling the decoding time of the frame for each operating frequency of the CPU.

또한, 본 발명의 제 1 측면에서, 상기 디코딩 시간을 샘플링하는 단계는 상기 중앙 처리 장치의 동작 주파수를 높은 주파수와 낮은 주파수를 순차적으로 번갈아가면서 선택하고, 상기 선택된 동작 주파수에서의 상기 프레임의 디코딩 시간을 샘플링할 수 있다.Also, in the first aspect of the present invention, the sampling of the decoding time may include selecting an operating frequency of the central processing unit by sequentially alternating high and low frequencies, and decoding time of the frame at the selected operating frequency. Can be sampled.

전술한 본 발명의 과제 해결 수단에 의하면, 로그 회귀 분석을 통하여 재생될 프레임의 디코딩 시간을 정확하게 예측함으로써, 영상 및 프레임의 급격한 변화에서도 동영상 재생 장치의 전력 소모를 효율적으로 감소시킬 수 있다.According to the above-described problem solving means of the present invention, by accurately predicting the decoding time of the frame to be reproduced through log regression analysis, it is possible to efficiently reduce the power consumption of the video reproducing apparatus even in a sudden change of the image and frame.

또한, 전술한 본 발명의 과제 해결 수단에 의하면, 프레임 별 디코딩 시간을 샘플링함에 있어서 발생하는 디코딩 지연 시간을 상쇄시킬 수 있다.In addition, according to the above-described problem solving means of the present invention, it is possible to cancel the decoding delay time generated in sampling the decoding time for each frame.

또한, 전술한 본 발명의 과제 해결 수단에 의하면, 데드라인 미스를 의도적으로 발생시켜, QoS(Quality Of Service)를 해치지 않으면서도 효과적으로 동영상 재생 장치의 전력 소모를 감소시킬 수 있다.In addition, according to the above-described problem solving means of the present invention, it is possible to intentionally generate a deadline miss, effectively reducing the power consumption of the video playback apparatus without harming the quality of service (QoS).

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

명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.Throughout the specification, when a part is "connected" to another part, this includes not only "directly connected" but also "electrically connected" with another element in between. . In addition, when a part is said to "include" a certain component, which means that it may further include other components, except to exclude other components unless otherwise stated.

이하, 첨부된 도면을 참고하여 본 발명을 상세히 설명하기로 한다.Hereinafter, with reference to the accompanying drawings will be described in detail the present invention.

도 1은 본 발명의 일 실시예에 따른 디코딩 시간 예측을 통한 저전력 동영상 재생 장치의 세부 구성도이다.1 is a detailed block diagram of a low power video reproducing apparatus through decoding time prediction according to an embodiment of the present invention.

도 1에 도시된 바와 같이, 본 발명의 일 실시예에 따른 디코딩 시간 예측을 통한 저전력 동영상 재생 장치는 프레임 정보 획득부(100), 샘플링부(200), 디코딩 시간 예측부(300), 데드라인 설정부(400) 및 동작 주파수 조절부(500)를 포함한다.As shown in FIG. 1, a low power video reproduction apparatus through decoding time prediction according to an embodiment of the present invention may include a frame information acquisition unit 100, a sampling unit 200, a decoding time prediction unit 300, and a deadline. And a setting unit 400 and an operating frequency adjusting unit 500.

프레임 정보 획득부(100)은 동영상 파일로부터 동영상에 포함된 각 프레임의 종류 및 크기 정보를 획득한다.The frame information acquisition unit 100 obtains the type and size information of each frame included in the video from the video file.

프레임 정보 획득부(100)는 동영상 파일이 MPEG 파일인 경우에는, MPEG 파일의 헤더(Header) 또는 테일(Tail)로부터 동영상 프레임의 크기 정보를 획득할 수 있으며, 예를 들어, 프레임 정보 획득부(100)는 MPEG 방식으로 압축된 AVI 동영상 파일의 idx1 헤더로부터 프레임의 종류 정보 및 크기 정보를 추출할 수 있다. MPEG 압축 방식으로 압축된 동영상의 경우에는, I, P 및 B 타입의 프레임이 존재하며, 각 종류의 프레임은 각각 다른 크기를 가진다.When the video file is an MPEG file, the frame information acquisition unit 100 may obtain the size information of the video frame from a header or a tail of the MPEG file. For example, the frame information acquisition unit ( 100 may extract frame type information and size information from the idx1 header of the AVI video file compressed by the MPEG method. In the case of a video compressed by the MPEG compression method, there are frames of type I, P, and B, and each type of frame has a different size.

샘플링부(200)는 동영상 프레임 별로 디코딩 시간을 샘플링한다. 샘플링부(200)는 동영상 재생이 시작된 후에 중앙 처리 장치의 동작 주파수를 각각 달리하여, 각 동작 주파수 별로 동영상 프레임 별 디코딩 시간을 샘플링할 수 있다.The sampling unit 200 samples the decoding time for each video frame. The sampling unit 200 may sample the decoding time of each video frame for each operating frequency by changing the operating frequencies of the central processing unit after the video playback starts.

또한, 샘플링부(200)는 중앙 처리 장치의 동작 주파수를 높은 주파수와 낮은 주파수를 순차적으로 번갈아가면서 선택하고, 상기 선택된 동작 주파수에서 프레임의 디코딩 시간을 샘플링할 수 있다. 즉, 샘플링부(200)는 가장 높은 동작 주파수를 선택하기 이전에 가장 낮은 동작 주파수를 선택하고, 두 번째로 높은 동작 주파수를 선택하기 이전에 두 번째로 낮은 동작 주파수를 선택할 수 있다.In addition, the sampling unit 200 may select an operating frequency of the central processing unit by sequentially alternating a high frequency and a low frequency, and sample a decoding time of a frame at the selected operating frequency. That is, the sampling unit 200 may select the lowest operating frequency before selecting the highest operating frequency, and select the second lowest operating frequency before selecting the second highest operating frequency.

샘플링부(200)는, 예를 들어, 동작 주파수가 NS개의 단계로 선택 가능하다면,

Figure 112009041124511-pat00001
개의 샘플이 얻어질 때 까지
Figure 112009041124511-pat00002
의 순서로 동작 주파수의 단계를 선택할 수 있다. 만약,
Figure 112009041124511-pat00003
일 경우, 동작 주파수의 단계는
Figure 112009041124511-pat00004
의 순으로 선택될 수 있다.For example, if the operating frequency is selectable in NS steps,
Figure 112009041124511-pat00001
Until samples are obtained
Figure 112009041124511-pat00002
The steps of operating frequency can be selected in the order of. if,
Figure 112009041124511-pat00003
If, the step of operating frequency
Figure 112009041124511-pat00004
It may be selected in order.

따라서, 샘플링부(200)가 프레임의 디코딩 시간을 샘플링함에 있어서, 낮은 동작 주파수에서 샘플링할 경우에 발생하는 디코딩 지연 시간을, 이후의 높은 동작 주파수에서의 샘플링을 통해 상쇄시킬 수 있게 된다.Accordingly, in sampling the decoding time of the frame, the sampling unit 200 may cancel the decoding delay time generated when sampling at a low operating frequency through sampling at a later high operating frequency.

샘플링부(200)가

Figure 112009041124511-pat00005
개의 샘플을 측정하기 위하여
Figure 112009041124511-pat00006
초 동안 샘플링을 해야 하지만, 이는 전체 동영상의 재생 시간을 고려했을 때 매우 짧은 시간에 불과하므로, 동영상을 시청하는 시청자에게는 거의 불편을 주지 않을 수 있다(만약,
Figure 112009041124511-pat00007
이고
Figure 112009041124511-pat00008
라고 가정했을 때, 25
Figure 112009041124511-pat00009
의 동영상의 경우 샘플링에 8초가 필요할 뿐임).Sampling unit 200
Figure 112009041124511-pat00005
To measure two samples
Figure 112009041124511-pat00006
You need to sample for seconds, but this is a very short amount of time given the duration of the entire video, which can be inconvenient for viewers watching the video (
Figure 112009041124511-pat00007
ego
Figure 112009041124511-pat00008
Assuming 25
Figure 112009041124511-pat00009
Videos only require 8 seconds of sampling).

디코딩 시간 예측부(300)는 샘플링된 프레임 별 디코딩 시간을 이용하여 이후에 재생될 동영상 프레임의 디코딩 시간을 예측한다.The decoding time predictor 300 predicts a decoding time of a video frame to be reproduced later by using the sampled decoding time for each frame.

디코딩 시간 예측부(300)는 로그 회귀 분석을 통하여 동영상 프레임과 디코딩 시간과의 관계를 도출하고, 이후 재생될 프레임의 디코딩 시간을 예측할 수 있다.The decoding time predictor 300 may derive a relationship between the video frame and the decoding time through log regression analysis, and then predict the decoding time of the frame to be reproduced later.

디코딩 시간 예측부(300)는 샘플링된 측정 값에 기초하여, 로그 선형 회귀 곡선의 계산식을 이용하여 다음 프레임인

Figure 112009041124511-pat00010
번째 프레임의 디코딩 시간을 예측할 수 있으며, 디코딩 시간의 계산을 위하여 gettimeofday 함수를 이용할 수 있다. 만약, 동작 주파수 단계가
Figure 112009041124511-pat00011
일 때, 다음 프레임의 디코딩 시간은
Figure 112009041124511-pat00012
라 정의하며 수학식 1과 같이 표현할 수 있으며,
Figure 112009041124511-pat00013
Figure 112009041124511-pat00014
는 수학식 2로부터 계산될 수 있다.The decoding time predicting unit 300 is based on the sampled measured value, and the next frame is calculated by using a log linear regression curve.
Figure 112009041124511-pat00010
The decoding time of the first frame can be predicted and the gettimeofday function can be used to calculate the decoding time. If the operating frequency step
Figure 112009041124511-pat00011
When, the decoding time of the next frame is
Figure 112009041124511-pat00012
It can be defined as Equation 1,
Figure 112009041124511-pat00013
Wow
Figure 112009041124511-pat00014
Can be calculated from Equation 2.

<수학식 1>&Quot; (1) &quot;

Figure 112009041124511-pat00015
Figure 112009041124511-pat00015

<수학식 2><Equation 2>

Figure 112009041124511-pat00016
,
Figure 112009041124511-pat00017
일 때,
Figure 112009041124511-pat00016
,
Figure 112009041124511-pat00017
when,

Figure 112009041124511-pat00018
Figure 112009041124511-pat00018

Figure 112009041124511-pat00019
Figure 112009041124511-pat00019

여기서,

Figure 112009041124511-pat00020
는CPU의 동작 주파수의 속도 단계,
Figure 112009041124511-pat00021
는 동영상 화질의 단계,
Figure 112009041124511-pat00022
Figure 112009041124511-pat00023
번째 프레임의 예측된 디코딩 시간이다. 또한,
Figure 112009041124511-pat00024
는 화질의 단계인
Figure 112009041124511-pat00025
가 적용되었을 때,
Figure 112009041124511-pat00026
번째 프레임 디코딩 시 선택되는 CPU 속도의 단계이다
Figure 112009041124511-pat00027
Figure 112009041124511-pat00028
Figure 112009041124511-pat00029
.here,
Figure 112009041124511-pat00020
Speed step of the operating frequency of the CPU,
Figure 112009041124511-pat00021
Is the level of video quality,
Figure 112009041124511-pat00022
Is
Figure 112009041124511-pat00023
The predicted decoding time of the first frame. Also,
Figure 112009041124511-pat00024
Is the level of image quality
Figure 112009041124511-pat00025
When is applied,
Figure 112009041124511-pat00026
The speed of the CPU that is selected when decoding the second frame.
Figure 112009041124511-pat00027
Figure 112009041124511-pat00028
Figure 112009041124511-pat00029
.

또한,

Figure 112009041124511-pat00030
Figure 112009041124511-pat00031
의 화질 단계가 선택되었을 때, 예측에 사용될 프레임의 집합이며
Figure 112009041124511-pat00032
,
Figure 112009041124511-pat00033
는 수학식 3과 같이 나타낼 수 있다.Also,
Figure 112009041124511-pat00030
Is
Figure 112009041124511-pat00031
When the quality level of is selected, the set of frames to be used for prediction
Figure 112009041124511-pat00032
,
Figure 112009041124511-pat00033
Can be expressed as in Equation 3.

<수학식 3>&Quot; (3) &quot;

Figure 112009041124511-pat00034
Figure 112009041124511-pat00034

또한,

Figure 112009041124511-pat00035
는 CPU의 동작 주파수가
Figure 112009041124511-pat00036
일 때,
Figure 112009041124511-pat00037
번째 프레임의 디코딩 시간이다
Figure 112009041124511-pat00038
.Also,
Figure 112009041124511-pat00035
Is the operating frequency of the CPU
Figure 112009041124511-pat00036
when,
Figure 112009041124511-pat00037
Is the decoding time of the first frame
Figure 112009041124511-pat00038
.

디코딩 시간 예측부(300)는 로그선형 회귀 곡선식에 의해, 새로운

Figure 112009041124511-pat00039
번째 프레임을 디코딩하기 전,
Figure 112009041124511-pat00040
Figure 112009041124511-pat00041
and
Figure 112009041124511-pat00042
를 재계산할 수 있으며, 이를 위해 각 동작 주파수에서 최소한
Figure 112009041124511-pat00043
개의 측정값이 필요하다. 그러나 동영상 재생 초기에, 샘플의 개수가 너무 작으면 정확한 예측이 이루어 질 수 없다.The decoding time predicting unit 300 is a log linear regression curve equation,
Figure 112009041124511-pat00039
Before decoding the first frame,
Figure 112009041124511-pat00040
Figure 112009041124511-pat00041
and
Figure 112009041124511-pat00042
Can be recalculated, for which
Figure 112009041124511-pat00043
Two measurements are required. However, at the beginning of video playback, if the number of samples is too small, accurate prediction cannot be made.

도 3은 각 샘플 개수의 변화에 따라 예측 값이 얼마나 정확한지 여부를 실제 디코딩 시간과의 평균오차로써 나타내며, 도 3에 도시된 바와 같으며, 샘플의 개수가 50개 이상인 경우에 정확한 예측을 할 수 있었다. 3 shows how accurate the prediction value is according to the change in the number of samples as an average error with the actual decoding time, as shown in FIG. 3, and when the number of samples is 50 or more, accurate prediction can be performed. there was.

데드라인 설정부(400)는 의도적으로 발생시킬 데드라인 미스의 허용 범위를 설정한다.The deadline setting unit 400 sets an allowable range of the deadline miss to be intentionally generated.

데드라인 미스란, 디코딩 제한 시간(허용되는 디코딩 지연 시간)을 초과하는 것으로서, 예를 들어, 초당 25프레임을 재생해야 하는 동영상의 경우 하나의 프레임은 40ms 이내에 디코딩되어야 함에도 불구하고 실제 디코딩 시간이 이를 초과하 는 경우를 말한다.Deadline misses are those that exceed the decoding timeout (allowed decoding delay time), for example, for a video that needs to play 25 frames per second, even though one frame must be decoded within 40ms, If exceeded.

또한, 데드라인 설정부(400)는 QoS(Quality Of Service)를 해치지 않는 범위 내에서 데드라인 미스의 허용 범위를 설정할 수 있다.Also, the deadline setting unit 400 may set an allowable range of the deadline miss within a range that does not harm the quality of service (QoS).

동작 주파수 조절부(500)는 예측된 디코딩 시간에 기초하여 중앙 처리 장치의 동작 주파수를 조절한다.The operating frequency adjuster 500 adjusts the operating frequency of the CPU based on the estimated decoding time.

동작 주파수 조절부(500)는 데드라인 미스의 허용 범위 값 및 예측된 디코딩 시간에 기초하여 상기 동작 주파수를 조절할 수 있으며, 데드라인 미스의 허용 범위 내에서 재생 장치의 에너지 소모를 최소화 할 수 있는 동작 주파수를 선택할 수 있다.The operating frequency adjusting unit 500 may adjust the operating frequency based on the allowable range value of the deadline miss and the predicted decoding time, and minimize the energy consumption of the playback device within the allowable range of the deadline miss. Frequency can be selected.

또한, 동작 주파수 조절부(500)는 디코딩 시간을 예측한 이후의 동영상 프레임의 디코딩 시간을 반영하여 디코딩 시간을 조정하고, 상기 조정된 디코딩 시간에 기초하여 상기 동작 주파수를 조절할 수 있다.In addition, the operating frequency adjusting unit 500 may adjust the decoding time by reflecting the decoding time of the video frame after predicting the decoding time, and adjust the operating frequency based on the adjusted decoding time.

또한, 동작 주파수 조절부(500)는 원하는 수준의 화질을 결정하고, 결정된 수준의 화질을 보장할 수 있는 동작 주파수의 집합을 판단하고, 그 중 작은 낮은 속도의 동작 주파수로 동작 주파수를 조절할 수 있다.In addition, the operating frequency adjusting unit 500 may determine a desired level of image quality, determine a set of operating frequencies capable of guaranteeing the determined level of image quality, and adjust the operating frequency to a smaller low operating frequency. .

동작 주파수 조절부(500)는 Linux 커널에서 제공하는 CPU Frequency Governor를 이용하여 CPU의 동작 주파수를 변경할 수 있으며, 동작 주파수를 연속적으로 조절할 수 있다.The operating frequency controller 500 may change the operating frequency of the CPU by using the CPU Frequency Governor provided by the Linux kernel, and may continuously adjust the operating frequency.

이하, 도 2를 참조하여 본 발명의 일 실시예에 따른 디코딩 시간 예측을 통한 저전력 동영상 재생 방법에 대하여 설명하기로 한다.Hereinafter, a low power video reproduction method through decoding time prediction according to an embodiment of the present invention will be described with reference to FIG. 2.

도 2는 본 발명의 일 실시예에 따른 디코딩 시간 예측을 통한 저전력 동영상 재생 방법의 세부 흐름도이다.2 is a detailed flowchart of a low power video playback method through decoding time prediction according to an embodiment of the present invention.

단계 S200은 동영상에 포함된 프레임의 크기 정보를 획득하는 단계이다.Step S200 is a step of obtaining size information of a frame included in the video.

MPEG 압축 방식으로 압축된 동영상의 경우에는, MPEG 파일의 헤더(Header) 또는 테일(Tail)로부터 동영상 프레임의 크기 정보를 획득할 수 있다.In the case of a video compressed by the MPEG compression method, size information of a video frame may be obtained from a header or a tail of an MPEG file.

단계 S202는 프레임 별로 디코딩 시간을 샘플링하는 단계이다.Step S202 is a step of sampling the decoding time for each frame.

동영상 재생이 시작되면, 재생 중인 동영상 프레임에 대하여 중앙 처리 장치의 동작 주파수를 각각 달리하여, 동영상 프레임 별 디코딩 시간을 샘플링할 수 있다. 도 3에서와 같이, 샘플링 개수가 50개 이상일 경우에 디코딩 시간의 정확한 예측이 가능하다. 또한, 중앙 처리 장치의 동작 주파수를 높은 주파수와 낮은 주파수를 순차적으로 번갈아가면서 선택하고, 상기 선택된 동작 주파수에서 프레임의 디코딩 시간을 샘플링할 수 있다. 샘플링된 동작 주파수 별, 동영상 프레임 크기 별 디코딩 시간 값은 이후 재생될 동영상 프레임의 디코딩 시간을 예측하는데 이용된다. When the video playback starts, the decoding time for each video frame may be sampled by varying the operating frequency of the central processing unit with respect to the video frame being played. As shown in FIG. 3, when the number of samplings is 50 or more, accurate prediction of the decoding time is possible. In addition, the operating frequency of the central processing unit may be selected by sequentially alternating high and low frequencies, and sampling the decoding time of the frame at the selected operating frequency. Decoded time values for each sampled operating frequency and video frame size are used to predict a decoding time of a video frame to be reproduced later.

단계 S204는 샘플링된 프레임 별 디코딩 시간을 이용하여, 재생될 프레임의 디코딩 시간을 예측하는 단계이다.Step S204 is a step of predicting a decoding time of a frame to be reproduced using the sampled decoding time for each frame.

단계 S204에서는 로그 회귀 분석을 통하여, 샘플링된 프레임 별 디코딩 시간 값으로부터, 프레임과 디코딩 시간과의 관계를 도출하고, 향후 재생될 동영상 프레임의 디코딩 시간을 예측할 수 있다. 즉, 샘플링된 디코딩 시간 값에 기초하여, 로그 선형 회귀 곡선의 계산 식을 이용하여 다음 프레임의 디코딩 시간을 예측할 수 있다.In step S204, through the logarithmic regression analysis, a relationship between a frame and a decoding time may be derived from a sampled decoding time value of each frame, and the decoding time of a video frame to be reproduced in the future may be predicted. That is, based on the sampled decoding time value, the decoding time of the next frame may be predicted by using a calculation formula of a log linear regression curve.

단계 S206은 데드라인 미스의 허용 범위를 설정하는 단계이다.Step S206 is for setting the allowable range of the deadline miss.

데드라인 미스(디코딩 제한 시간 초과)의 범위, 즉, 디코딩 지연 시간 허용의 범위를 크게 설정할 경우에는 동작 주파수를 낮게 조절할 수 있어 전력 소모를 감소 시킬 수 있지만, 동영상 화질이 악화되게 된다. 또한, 이와 반대로 데드라인 미스의 범위를 좁게 설정할 경우에는 동작 주파수를 낮게 조절할 수 없게 되어 전력 소모가 증가하게 된다.If the range of the deadline miss (decoding timeout), that is, the range of allowable decoding delay time, is set high, the operating frequency can be adjusted to reduce power consumption, but the video quality is deteriorated. On the contrary, when the range of the deadline miss is set narrow, the operating frequency cannot be adjusted low, thereby increasing power consumption.

따라서, 단계 S206에서는 시청자가 화질의 저하를 느끼지 않는 한도 내에서, 동영상 콘텐츠의 종류(영화, 드라마 또는 스포츠 등), 디스플레이 장치의 해상도, 시청자의 수준 등을 고려하여 데스라인 미스의 범위를 다양하게 설정할 수 있다.Therefore, in step S206, the range of the death line miss is varied in consideration of the type of video content (movie, drama, sports, etc.), the resolution of the display device, the level of the viewer, and the like, as long as the viewer does not feel the deterioration of image quality. Can be set.

단계 S208은 예측된 디코딩 시간에 기초하여 중앙 처리 장치의 동작 주파수를 조절하는 단계이다.Step S208 is adjusting the operating frequency of the central processing unit based on the predicted decoding time.

단계 S208에서는 데드라인 미스의 허용 범위 값 및 상기 예측된 디코딩 시간에 기초하여 상기 동작 주파수를 조절할 수 있으며, 데드라인 미스의 허용 범위 내에서 재생 장치의 에너지 소모를 최소화 할 수 있는 동작 주파수를 선택할 수 있다. 또한, 원하는 수준의 화질을 결정하고, 결정된 수준의 화질을 보장할 수 있는 동작 주파수의 집합을 판단하고, 그 중 작은 낮은 속도의 동작 주파수로 동작 주파수를 조절할 수 있다. In operation S208, the operating frequency may be adjusted based on the allowable range value of the deadline miss and the predicted decoding time, and the operating frequency may be selected to minimize the energy consumption of the playback apparatus within the allowable range of the deadline miss. have. In addition, it is possible to determine a desired level of image quality, to determine a set of operating frequencies capable of guaranteeing the determined level of image quality, and to adjust the operating frequency to a smaller low operating frequency.

또한, Linux 커널에서 제공하는 CPU Frequency Governor를 이용하여 CPU의 동작 주파수를 변경할 수 있으며, 동작 주파수를 연속적으로 조절할 수 있다.In addition, by using the CPU Frequency Governor provided by the Linux kernel, the operating frequency of the CPU can be changed and the operating frequency can be continuously adjusted.

단계 S210은 조절된 동작 주파수에 기초하여, 상기 동영상 프레임을 디코딩하는 단계이다. 단계 S210에서는 조절된 동작 주파수에서 동영상 프레임을 디코딩하고, 디코딩 시간을 측정할 수 있으며, 측청된 디코딩 시간 값은 샘플링 값으로 제공되어 이후 재생될 프레임의 디코딩 시간의 예측에 이용될 수 있다.Step S210 is a step of decoding the video frame based on the adjusted operating frequency. In operation S210, the video frame may be decoded at the adjusted operating frequency and the decoding time may be measured. The measured decoding time value may be provided as a sampling value and used to predict the decoding time of a frame to be reproduced later.

이하, 도 3을 참조하여 본 발명의 일 실시예에 따른 샘플링 단계에서의 샘플 개수의 변화에 따른 디코딩 시간의 예측 값의 정확도에 대하여 설명하기로 한다.Hereinafter, the accuracy of the prediction value of the decoding time according to the change in the number of samples in the sampling step according to an embodiment of the present invention will be described with reference to FIG. 3.

도 3은 본 발명의 일 실시예에 따른 샘플링 단계에서의 샘플 개수의 변화에 따른 디코딩 시간의 예측 값과 실제 디코딩 시간과의 평균오차를 도시한 그래프의 일례이다.3 is an example of a graph illustrating an average error between a predicted value of a decoding time and an actual decoding time according to a change in the number of samples in a sampling step according to an embodiment of the present invention.

도 3에 도시된 바와 같이, 샘플링 개수가 50 이하일 경우에는 디코딩 시간의 예측 값과 실제 디코딩 시간과의 오차 값이 크며, 샘플링 개수가 50 이상일 경우에 정확한 디코딩 시간의 예측이 가능함을 알 수 있다. 따라서, 50개 이상의 샘플링 개수를 확보한 이후에 디코딩 시간의 예측을 수행하는 것이 바람직하다.As shown in FIG. 3, when the number of samplings is 50 or less, an error value between the prediction value of the decoding time and the actual decoding time is large, and when the number of samplings is 50 or more, it can be seen that the accurate decoding time can be predicted. Therefore, it is preferable to perform decoding time prediction after securing 50 or more sampling numbers.

나아가, 본 발명의 일 실시예에서는 예측된 디코딩 시간에 기초하여 조절된 동작 주파수에서의 디코딩 시간이 상기 샘플링 값에 추가될 수 있으므로, 동영상이 재생됨에 따라 샘플링 개수가 증가하여 보다 정확하게 디코딩 시간을 예측할 수 있게 된다.Furthermore, in an embodiment of the present invention, since the decoding time at the operating frequency adjusted based on the predicted decoding time may be added to the sampling value, as the video is played, the number of sampling increases to predict the decoding time more accurately. It becomes possible.

이하, 도 4를 참조하여 본 발명의 일 실시예에 따른, 다양한 동작 주파수에서의 프레임 크기 별 디코딩 시간을 나타내는 그래프의 일례를 설명하기로 한다.Hereinafter, an example of a graph illustrating decoding time for each frame size at various operating frequencies according to an embodiment of the present invention will be described with reference to FIG. 4.

도 4는 본 발명의 일 실시예에 따른, 다양한 동작 주파수에서의 프레임 크기 별 디코딩 시간을 나타내는 그래프의 일례이다.4 is an example of a graph illustrating decoding time for each frame size at various operating frequencies according to an embodiment of the present invention.

도 4에서 알 수 있는 바와 같이, 디코딩 시간과 프레임 크기와의 관계는 로그 함수로 나타나며, 디코딩 시간은 프레임의 크기에 따라 로그 함수의 형태로 증가하는 것을 알 수 있다(이것을 확인하기 위해 도 2에서는 선형 회귀 곡선과 로그회귀곡선을 함께 표시하였다.). 즉, 디코딩 시간은 CPU의 동작 속도에 따라 선형적으로 증감하지 않으며, CPU 속도가 높아질수록 디코딩 시간은 줄어들지만 정확한 반비례 관계는 발견되지 않는다. 따라서, 본 발명의 일 실시예에서와 같이, 로그 선형 회귀 분석 방법을 사용할 경우에, 보다 정확하게 디코딩 시간을 예측할 수 있게 된다.As can be seen in Figure 4, the relationship between the decoding time and the frame size is represented by a log function, it can be seen that the decoding time increases in the form of a log function according to the size of the frame (to confirm this in Figure 2 Linear and logarithmic regression curves are displayed together.). That is, the decoding time does not increase or decrease linearly with the operation speed of the CPU. As the CPU speed increases, the decoding time decreases, but no exact inverse relationship is found. Therefore, when using a log linear regression analysis method as in an embodiment of the present invention, it is possible to predict the decoding time more accurately.

이하, 도 5 및 도 6을 참조하여, 본 발명의 일 실시예에 따른 로그 회귀 분석을 이용한 디코딩 시간 예측의 정확도에 대하여 설명하기로 한다.Hereinafter, the accuracy of decoding time prediction using log regression analysis according to an embodiment of the present invention will be described with reference to FIGS. 5 and 6.

도 5는 본 발명의 일 실시예에 따른 디코딩 시간 예측 방법과 종래의 방법을 이용하였을 경우의 예측된 디코딩 시간과 실제 디코딩 시간의 평균 오차 값을 비교한 도표이다.FIG. 5 is a chart comparing average error values of the predicted decoding time and the actual decoding time when the decoding time prediction method and the conventional method according to an embodiment of the present invention are used.

또한, 도 6은 본 발명의 일 실시예에 따른 디코딩 시간 예측 방법과 종래의 방법을 이용하였을 경우의 예측된 디코딩 시간과 실제 디코딩 시간의 정확도를 비교한 누적 분포도이다.6 is a cumulative distribution chart comparing the accuracy of the predicted decoding time and the actual decoding time using the decoding time prediction method and the conventional method according to an embodiment of the present invention.

또한, 도 5 및 도 6에서, LSE는 최대 CPU 속도(동작 주파수)에서 선형 회기 분석을 이용하여 디코딩 시간 예측하는 방법을 말하며, LSE 방법에서는 최대 CPU속도인 에서 디코딩 시간의 측정값을 선형 변환하게 되며, 최고 CPU 속도에서의 프 레임 크기와 디코딩 시간의 선형 관계를 도출한다. 그리고 최대 CPU 속도의 예측 값을 선형 변환 함으로써 각 CPU 속도 단계의 디코딩 시간을 예측한다.In addition, in FIG. 5 and FIG. 6, LSE refers to a method of predicting decoding time using linear regression analysis at a maximum CPU speed (operating frequency), and in the LSE method, linearly converts a measurement value of a decoding time at a maximum CPU speed. We derive a linear relationship between frame size and decoding time at the highest CPU speed. In addition, the decoding time of each CPU speed step is estimated by linearly converting the predicted value of the maximum CPU speed.

또한, LBF는 다양한 CPU 속도에서 서로 다른 선형 회귀 곡선을 이용하여 디코딩 시간 예측하는 방법을 말한다. LBF에서는 각 CPU 속도 단계를 위해 로그 회귀 관계를 이용하는 본 발명과는 달리, 각 CPU 속도에서 서로 다른 선형 회귀 곡선을 이용한다.Also, LBF refers to a method of predicting decoding time using different linear regression curves at various CPU speeds. Unlike the present invention, where the log regression relationship is used for each CPU speed step, the LBF uses a different linear regression curve at each CPU speed.

도 5 및 도 6에 도시된 바와 같이, 18000개 프레임의 디코딩 시간을 각각의 방법에 의해 측정한 결과, 본 발명의 일 실시예에 따른 방법에 의할 경우에 가장 정확하게 디코딩 시간을 예측할 수 있음을 알 수 있다.As shown in FIGS. 5 and 6, the decoding time of 18000 frames is measured by each method. As a result, the decoding time can be most accurately predicted by the method according to an embodiment of the present invention. Able to know.

또한, 본 발명의 일 실시예에 의할 경우에, 전체 프레임의 82%가 3ms 이내의 오차범위를 가지는 반면, LSE에서 전체 프레임의 49%, LBF는 전체 프레임의 72%만이 3ms 이내의 오차 범위를 가짐을 알 수 있다.In addition, according to an embodiment of the present invention, while 82% of the entire frame has an error range of less than 3ms, 49% of the total frame in the LSE, only 72% of the LBF of the LBF is within 3ms of the error range It can be seen that it has.

나아가, 본 발명의 일 실시예에 의할 경우에, 스포츠 동영상에서의 정확도가 두드러진 차이를 보인다. 즉, 본 발명의 일 실시예에 따를 경우, 동영상 재생에 있어서 영상 및 프레임의 급격한 변화에 효율적으로 대처할 수 있다는 것을 알 수 있다.Furthermore, according to an embodiment of the present invention, the accuracy in the sports video shows a significant difference. That is, according to an embodiment of the present invention, it can be seen that the video and frame can be effectively coped with sudden changes in the video playback.

이하, 도 7을 참조하여, 본 발명의 일 실시예에 따른 데드라인 미스의 허용 범위와 전력 소모량과의 관계에 대하여 설명하기로 한다.Hereinafter, the relationship between the allowable range of the deadline miss and the power consumption will be described with reference to FIG. 7.

도 7은 디코딩 지연 시간(DB)에 따른 동영상 장치의 전력 소모량의 변화를 도시한 그래프이다.7 is a graph illustrating a change in power consumption of a video device according to a decoding delay time DB.

도 7에 도시된 바와 같이, 데드라인 미스의 허용 범위를 6ms로 설정하였을 경우(디코딩 지연 시간 DB = 6ms)에는, 데드라인 미스의 허용 범위가 0ms일 경우((디코딩 지연 시간 DB = 0ms)에 비해 8% ~ 12%의 전력 감소가 나타난다..As shown in FIG. 7, when the allowable range of the deadline miss is set to 6 ms (decoding delay time DB = 6 ms), when the allowable range of the deadline miss is 0 ms ((decoding delay time DB = 0 ms)) Compared to 8% to 12% power reduction.

따라서, 사용자가 동영상 화질의 저하를 감내할 수 있는 범위 내에서, 데드라인 미스의 허용 범위를 설정할 경우에 동영상 재생 장치의 전력 소모량을 효율적으로 감소시킬 수가 있게 된다.Therefore, the power consumption of the video reproducing apparatus can be efficiently reduced when the allowable range of the deadline miss is set within the range in which the user can tolerate the deterioration of the video quality.

본 발명의 일 실시예는 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. 통신 매체는 전형적으로 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 반송파와 같은 변조된 데이터 신호의 기타 데이터, 또는 기타 전송 메커니즘을 포함하며, 임의의 정보 전달 매체를 포함한다. One embodiment of the present invention can also be implemented in the form of a recording medium containing instructions executable by a computer, such as a program module executed by the computer. Computer readable media can be any available media that can be accessed by a computer and includes both volatile and nonvolatile media, removable and non-removable media. In addition, computer readable media may include both computer storage media and communication media. Computer storage media includes both volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Communication media typically includes computer readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave, or other transmission mechanism, and includes any information delivery media.

전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.The foregoing description of the present invention is intended for illustration, and it will be understood by those skilled in the art that the present invention may be easily modified in other specific forms without changing the technical spirit or essential features of the present invention. will be. It is therefore to be understood that the above-described embodiments are illustrative in all aspects and not restrictive. For example, each component described as a single type may be implemented in a distributed manner, and similarly, components described as distributed may be implemented in a combined form.

본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.The scope of the present invention is shown by the following claims rather than the above description, and all changes or modifications derived from the meaning and scope of the claims and their equivalents should be construed as being included in the scope of the present invention. do.

도 1은 본 발명의 일 실시예에 따른 디코딩 시간 예측을 통한 저전력 동영상 재생 장치의 세부 구성도.1 is a detailed configuration diagram of a low power video playback apparatus through prediction of decoding time according to an embodiment of the present invention.

도 2는 본 발명의 일 실시예에 따른 디코딩 시간 예측을 통한 저전력 동영상 재생 방법의 세부 흐름도.2 is a detailed flowchart of a low power video reproduction method through decoding time prediction according to an embodiment of the present invention.

도 3은 본 발명의 일 실시예에 따른 샘플링 단계에서의 샘플 개수의 변화에 따른 디코딩 시간의 예측 값과 실제 디코딩 시간과의 평균오차를 도시한 그래프의 일례.3 is an example of a graph illustrating an average error between a predicted value of a decoding time and an actual decoding time according to a change in the number of samples in a sampling step according to an embodiment of the present invention.

도 4는 본 발명의 일 실시예에 따른 다양한 동작 주파수에서의 프레임 크기 별 디코딩 시간을 나타내는 그래프의 일례.4 is an example of a graph illustrating decoding time for each frame size at various operating frequencies according to an embodiment of the present invention.

도 5는 본 발명의 일 실시예에 따른 디코딩 시간 예측 방법과 종래의 방법을 이용하였을 경우의 예측된 디코딩 시간과 실제 디코딩 시간의 평균 오차 값을 비교한 도표.5 is a table comparing the average error value of the predicted decoding time and the actual decoding time when using the decoding time prediction method and the conventional method according to an embodiment of the present invention.

도 6은 본 발명의 일 실시예에 따른 디코딩 시간 예측 방법과 종래의 방법을 이용하였을 경우의 예측된 디코딩 시간과 실제 디코딩 시간의 정확도를 비교한 누적 분포도.6 is a cumulative distribution chart comparing the accuracy of the predicted decoding time and the actual decoding time when using the decoding time prediction method and the conventional method according to an embodiment of the present invention.

도 7은 디코딩 지연 시간(DB)에 따른 동영상 장치의 전력 소모량의 변화를 도시한 그래프.FIG. 7 is a graph illustrating a change in power consumption of a video device according to a decoding delay time DB. FIG.

Claims (5)

디코딩 시간 예측을 통한 저전력 동영상 재생 방법에 있어서,In the low power video playback method by decoding time prediction, 동영상에 포함된 프레임의 크기 정보를 획득하는 단계,Obtaining size information of a frame included in the video, 상기 프레임 별로 디코딩 시간을 샘플링하는 단계,Sampling a decoding time for each frame; 상기 샘플링된 값을 이용하여, 로그 회귀 분석을 통하며 상기 프레임과 상기 디코딩 시간과의 관계를 도출하고, 상기 도출된 관계에 기초하여, 재생될 프레임의 디코딩 시간을 예측하는 단계,Using the sampled value, deriving a relationship between the frame and the decoding time through log regression analysis, and predicting a decoding time of a frame to be reproduced based on the derived relationship; 상기 예측된 디코딩 시간에 기초하여 중앙 처리 장치의 동작 주파수를 조절하는 단계 및Adjusting an operating frequency of the central processing unit based on the predicted decoding time; and 상기 조절된 동작 주파수에 기초하여, 상기 동영상 프레임을 디코딩하는 단계Decoding the video frame based on the adjusted operating frequency 를 포함하는 저전력 동영상 재생 방법.Low power video playback method comprising a. 제 1 항에 있어서,The method of claim 1, 상기 중앙 처리 장치의 동작 주파수를 조절하는 단계는, 기 설정된 범위 내에서 데드라인 미스를 발생시켜 상기 동작 주파수를 조절하는 것인 저전력 동영상 재생 방법.The adjusting of the operating frequency of the central processing unit includes generating a deadline miss within a preset range to adjust the operating frequency. 제 1 항에 있어서,The method of claim 1, 상기 동영상 프레임을 디코딩하는 단계는, 상기 동영상 프레임의 디코딩 시간을 측정하고, 상기 측정된 값을 상기 샘플링된 값으로 제공하여, 상기 재생될 프레임의 디코딩 시간을 예측하는데 이용될 수 있도록 하는 것인 저전력 동영상 재생 방법.The decoding of the video frame comprises: measuring a decoding time of the video frame and providing the measured value as the sampled value so that it can be used to predict the decoding time of the frame to be played back. How to play the video. 제 1 항에 있어서,The method of claim 1, 상기 디코딩 시간을 샘플링하는 단계는, 상기 프레임의 디코딩 시간을 상기 중앙 처리 장치의 동작 주파수 별로 각각 샘플링하는 것인 저전력 동영상 재생 방법.The sampling of the decoding time may include sampling the decoding time of the frame for each operating frequency of the CPU. 제 4 항에 있어서,The method of claim 4, wherein 상기 디코딩 시간을 샘플링하는 단계는 상기 중앙 처리 장치에서 선택 가능한 동작 주파수 중에서, 가장 낮은 동작 주파수, 가장 높은 동작 주파수, 두번째로 낮은 동작 주파수, 두번째로 높은 동작 주파수의 순서로 동작 주파수를 선택하고, 상기 선택된 동작 주파수에서의 상기 프레임의 디코딩 시간을 샘플링하는 것인 저전력 동영상 재생 방법.The sampling of the decoding time may include selecting an operating frequency in order of a lowest operating frequency, the highest operating frequency, the second lowest operating frequency, and the second highest operating frequency among the selectable operating frequencies in the CPU. Sampling the decoding time of the frame at a selected operating frequency.
KR1020090061295A 2009-07-06 2009-07-06 Low-power video playback method based on decoding time estimation KR101042614B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090061295A KR101042614B1 (en) 2009-07-06 2009-07-06 Low-power video playback method based on decoding time estimation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090061295A KR101042614B1 (en) 2009-07-06 2009-07-06 Low-power video playback method based on decoding time estimation

Publications (2)

Publication Number Publication Date
KR20110003835A KR20110003835A (en) 2011-01-13
KR101042614B1 true KR101042614B1 (en) 2011-06-20

Family

ID=43611539

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090061295A KR101042614B1 (en) 2009-07-06 2009-07-06 Low-power video playback method based on decoding time estimation

Country Status (1)

Country Link
KR (1) KR101042614B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101106720B1 (en) * 2011-06-02 2012-01-18 인하대학교 산학협력단 Method for controlling cpu voltage dynamically while playing h.264/svc video file
KR101574433B1 (en) 2014-08-29 2015-12-04 인하대학교 산학협력단 Method and Apparatus for Optimal Dynamic Voltage Scaling in Buffered Video Playback

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112380387B (en) * 2020-10-23 2024-04-30 岭东核电有限公司 Method and device for determining multiple disc test video, electronic equipment and storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06141177A (en) * 1992-10-27 1994-05-20 Matsushita Graphic Commun Syst Inc Image receiver
KR20030054296A (en) * 2001-12-24 2003-07-02 한국전자통신연구원 Method and apparatus for mpeg decoding using of dynamic voltage and frequency scaling
JP2004153553A (en) 2002-10-30 2004-05-27 Matsushita Electric Ind Co Ltd Motion picture decoder and method therefor
KR20060071293A (en) * 2004-12-21 2006-06-26 한국전자통신연구원 Apparatus for mpeg playback using dynamic working frequency and voltage scaling with decoding time prediction and method thereof

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06141177A (en) * 1992-10-27 1994-05-20 Matsushita Graphic Commun Syst Inc Image receiver
KR20030054296A (en) * 2001-12-24 2003-07-02 한국전자통신연구원 Method and apparatus for mpeg decoding using of dynamic voltage and frequency scaling
JP2004153553A (en) 2002-10-30 2004-05-27 Matsushita Electric Ind Co Ltd Motion picture decoder and method therefor
KR20060071293A (en) * 2004-12-21 2006-06-26 한국전자통신연구원 Apparatus for mpeg playback using dynamic working frequency and voltage scaling with decoding time prediction and method thereof

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101106720B1 (en) * 2011-06-02 2012-01-18 인하대학교 산학협력단 Method for controlling cpu voltage dynamically while playing h.264/svc video file
KR101574433B1 (en) 2014-08-29 2015-12-04 인하대학교 산학협력단 Method and Apparatus for Optimal Dynamic Voltage Scaling in Buffered Video Playback

Also Published As

Publication number Publication date
KR20110003835A (en) 2011-01-13

Similar Documents

Publication Publication Date Title
CN110268717B (en) Bit rate optimization for encoding multiple representations using playback statistics
US8396983B1 (en) Predictive adaptive media streaming
Burger et al. A generic approach to video buffer modeling using discrete-time analysis
CN112672186B (en) Video preloading method and device
US11405625B2 (en) Method for allocating and scheduling task for maximizing video quality of transcoding server using heterogeneous processors
KR101042614B1 (en) Low-power video playback method based on decoding time estimation
US10645406B2 (en) Transcoding method and apparatus
Chang et al. Dynamic adjustable multimedia streaming service architecture over cloud computing
US20170010946A1 (en) Dynamic Voltage/Frequency Scaling For Multi-Processors Using End User Experience Metrics
Nowicki et al. QoS/QoE in the heterogeneous Internet of things (IoT)
Jiang et al. QuRate: Power-efficient mobile immersive video streaming
US20210029190A1 (en) Dynamic behavior modification for content download and playback
US8650289B2 (en) Estimating bandwidth based on server IP address
US20170155932A1 (en) Dynamic Seeking in Video Delivery Systems
KR101106720B1 (en) Method for controlling cpu voltage dynamically while playing h.264/svc video file
US20230048428A1 (en) A method for estimating bandwidth between a video server and a video client
EP4068779A1 (en) Cross-validation of video encoding
Chen et al. CPU microarchitectural performance characterization of cloud video transcoding
KR20140101745A (en) Video quality measurement considering multiple artifacts
Mirtar et al. Adaptation of video encoding to address dynamic thermal management effects
Hemalatha et al. Adaptive bitrate transcoding for power efficient video streaming in mobile devices
KR101574433B1 (en) Method and Apparatus for Optimal Dynamic Voltage Scaling in Buffered Video Playback
KR101708266B1 (en) Apparatus and Method of Adaptive Streaming
US20230111188A1 (en) Concurrent downloading of video
Im et al. Energy optimization for latency-and quality-constrained video applications

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
FPAY Annual fee payment

Payment date: 20140320

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150216

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160404

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee