KR102528877B1 - 비디오 디코딩 제어 방법, 장치, 전자 기기 및 저장 매체 - Google Patents

비디오 디코딩 제어 방법, 장치, 전자 기기 및 저장 매체 Download PDF

Info

Publication number
KR102528877B1
KR102528877B1 KR1020217018435A KR20217018435A KR102528877B1 KR 102528877 B1 KR102528877 B1 KR 102528877B1 KR 1020217018435 A KR1020217018435 A KR 1020217018435A KR 20217018435 A KR20217018435 A KR 20217018435A KR 102528877 B1 KR102528877 B1 KR 102528877B1
Authority
KR
South Korea
Prior art keywords
application
video
decoding
cpu
video playback
Prior art date
Application number
KR1020217018435A
Other languages
English (en)
Other versions
KR20210090259A (ko
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 광동 오포 모바일 텔레커뮤니케이션즈 코포레이션 리미티드
Publication of KR20210090259A publication Critical patent/KR20210090259A/ko
Application granted granted Critical
Publication of KR102528877B1 publication Critical patent/KR102528877B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00007Time or data compression or expansion
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/48Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
    • G10L25/51Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination
    • G10L25/57Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination for processing of video signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • 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/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof
    • H04N21/42607Internal components of the client ; Characteristics thereof for processing the incoming bitstream
    • 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/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
    • H04N21/4316Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations for displaying supplemental content in a region of the screen, e.g. an advertisement in a separate window
    • 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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44008Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream
    • 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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • 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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440263Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by altering the spatial resolution, e.g. for displaying on a connected PDA
    • 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/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • 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/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/4424Monitoring of the internal components or processes of the client device, e.g. CPU or memory load, processing speed, timer, counter or percentage of the hard disk space used
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00007Time or data compression or expansion
    • G11B2020/00072Time or data compression or expansion the compressed signal including a video signal

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Stored Programmes (AREA)

Abstract

본 발명의 실시예는 비디오 디코딩 제어 방법, 장치, 전자 기기 및 저장 매체를 제공한다. 상기 방법은 복수의 응용 프로그램이 분할 화면 모드로 실행 중인 것이 검출된 후, 복수의 응용 프로그램 중 비디오 재생 상태에 있는 응용 프로그램을 검출하는 단계; 검출된 비디오 재생 상태에 있는 응용 프로그램을 설정 대기 응용 프로그램으로 획득하는 단계; 상기 설정 대기 응용 프로그램에서 재생되는 비디오를 하드 디코딩 방식으로 디코딩하도록 구성하는 단계를 포함한다. 상기 방법은 복수의 응용 프로그램이 분할 화면 표시 모드에 있고, 복수의 응용 프로그램들 중 복수의 응용 프로그램이 전부 비디오 재생 기능을 가지는 경우, 비디오 재생 상태에 있는 응용 프로그램에서 재생되는 비디오를 하드 디코딩 방식으로 디코딩 하도록 구성함으로써, CPU의 부하율을 감소시키고, CPU가 보다 많은 처리능력을 갖추어 다른 작업을 처리할 수 있도록 하고, 전자 기기가 버벅임 가능성이 줄어들어, 사용자 체험이 향상된다.

Description

비디오 디코딩 제어 방법, 장치, 전자 기기 및 저장 매체
본 발명은 이미지 처리 기술 분야에 관한 것으로, 보다 구체적으로는 비디오 디코딩 제어 방법, 장치, 전자 기기 및 저장 매체에 관한 것이다.
관련 출원의 상호 인용
본 발명은 2018년11월27일에 제출되고 출원번호가CN201811441950.2 인 중국 선출원의 우선권을 청구하는바, 모든 목적을 위해 상기 선출원의 내용은 인입의 방식으로 본 문서에 병합된다.
사회가 발전함에 따라 화면이 있는 전자 기기의 적용이 지속적으로 확대되고 있다. 예를 들면, 화면을 사용하여 사진 및 비디오와 같은 이미지를 표시한다. 그러나 대부분의 전자 기기의 표시 품질은 주변 광원의 변화나 혹은 재생중인 필름 소스의 품질 문제에 의해 심각한 영향을 받는다.
상기 문제들을 감안하여, 본 발명은 비디오 디코딩 제어방법, 장치, 전자 기기 및 저장 매체를 제공하여, 상술한 문제들을 개선할 수 있다.
본 발명의 제1방면으로, 전자 기기에 적용되는 비디오 디코딩 제어 방법으로서, 상기 방법은
복수의 응용 프로그램이 분할 화면 모드로 실행 중인 것이 검출된 후, 상기 복수의 응용 프로그램 중 비디오 재생 상태에 있는 응용 프로그램을 검출하는 단계;
검출된 비디오 재생 상태에 있는 응용 프로그램을 설정 대기 응용 프로그램으로 획득하는 단계;
상기 설정 대기 응용 프로그램에서 재생되는 비디오를 하드 디코딩 방식으로 디코딩하도록 구성하는 단계를 포함하는, 비디오 디코딩 제어 방법을 제공한다.
본 발명의 제2방면으로, 전자 기기에서 실행되는 비디오 디코딩 제어 장치로서, 상기 장치는,
복수의 응용 프로그램이 분할 화면 모드로 실행 중인 것이 검출된 후, 상기 복수의 응용 프로그램 중 비디오 재생 상태에 있는 응용 프로그램을 검출하는 응용 프로그램 검출 유닛;
검출된 비디오 재생 상태에 있는 응용 프로그램을 설정 대기 응용 프로그램으로 획득하는 설정 대기 프로그램 획득 유닛;
상기 설정 대기 응용 프로그램에서 재생되는 비디오를 하드 디코딩 방식으로 디코딩하도록 구성하는 디코딩 제어 유닛을 포함하는, 비디오 디코딩 제어 장치를 제공한다.
본 발명의 제3방면으로, 전자 기기로서,
하나 혹은 복수의 프로세서 및 메모리;
상기 메모리에 저장되고, 상기 하나 혹은 복수의 프로세서에 의해 수행되도록 구성되고, 상기 방법을 수행하도록 구성되는 하나 혹은 복수의 프로그램을 포함하는, 전자 기기를 제공한다.
본 발명의 제4방면으로, 프로그램 코드가 저장되어 있는 컴퓨터 판독가능 저장 매체로서,
상기 프로그램 코드가 실행될 때 상기 방법을 수행하는, 컴퓨터 판독가능 저장 매체를 제공한다.
본 발명의 실시예들의 기술 방안을 보다 명확하게 설명하기 위해, 이하에서는 실시예들의 설명에 필요한 도면들을 간략히 소개할 것이며, 아래 설명 중의 도면들은 본 발명의 일부 실시예에 불과하고. 당업자라면 창의적인 노동없이 이러한 도면에 기초하여 다른 도면들을 얻을 수 있다.
도 1은 본 발명의 실시예에서 제공된 비디오 처리 아키텍처의 개략도를 도시한다.
도 2는 본 발명의 실시예에서 제공된 비디오 디코딩 제어 방법의 흐름도이다.
도 3은 본 발명의 실시예에서 제공된 응용 프로그램의 스위치 콘트롤러의 개략도를 도시한다.
도 4는 본 발명의 실시예에서 제공된 비디오 재생 인터페이스의 개략도를 도시한다.
도 5는 본 발명의 다른 실시예에서 제공된 비디오 디코딩 제어 방법의 흐름도이다.
도 6은 본 발명의 또 다른 실시예에서 제공된 비디오 디코딩 제어 방법의 흐름도이다.
도 7은 본 발명의 실시예에서 제공된 비디오 디코딩 장치의 구조적 블록도를 도시한다.
도 8은 본 발명의 다른 실시예에서 제공된 비디오 디코딩 장치의 구조적 블록도를 도시한다.
도 9는 본 발명의 또 다른 실시예에서 제공된 비디오 디코딩 장치의 구조적 블록도를 도시한다.
도 10은 본 발명의 실시예에 따른 비디오 디코딩 제어 방법을 실행하기 위한 본 발명의 전자 기기의 구조적 블록도를 도시한다.
도 11은 본 발명의 실시예에 따른 비디오 디코딩 제어 방법을 실현하기 위한 프로그램 코드를 저장 또는 휴대하는 본 발명의 실시예에 따른 저장 유닛을 도시한다.
아래에서는 본 발명의 실시예의 도면을 참조하여 본 발명의 실시예의 기술 방안에 대해 명확하고 완전하게 설명할 것이다. 자명한 것은 아래에서 설명되는 실시예는 전부가 아니라 본 발명의 실시예의 일부일 뿐이다. 본 발명의 실시예에 기초하여, 창의적인 노동없이 통상의 기술자에 의해 얻은 모든 다른 실시예는 본 발명의 보호 범위내에 속한다.
전자 기기의 하드웨어 성능이 향상됨에 따라 보다 많은 전자 기기가 비디오 재생을 지원할 수 있다. 예를 들면, 전자 기기는 비디오 재생 클라이언트를 실행시킨 후, 비디오 재생 클라이언트를 통해 네트워크에서 요청한 비디오를 재생하거나, 웹 브라우저를 실행시킨 후, 웹 브라우저에서 비디오를 재생할 수 있거나, 혹은 전자 기기는 비디오 재생 소프트웨어를 통해 로컬에 저장된 비디오 파일을 재생할 수 있다.
비디오가 네트워크에서 전송 및 재생되는 것인지 아니면 로컬에 저장되어 있는 것인지에 관계없이, 비디오가 일단 생성되면, 저장 공간 점유를 줄이고 네트워크에서 전송을 용이하게 하기 위해, 생성된 비디오를 압축한다. 이와 대응하여 전자 기기가 비디오를 획득했을때 먼저 획득한것 역시 압축 및 인코딩된 비디오이고, 이 경우 전자 기기는 압축 및 인코딩된 비디오에 대해 먼저 비디오 디코딩을 수행한다.
일반적으로 도 1에서와 같이, 전자 기기는 하드 디코딩과 소프트 디코딩의 두 가지 방법으로 비디오 디코딩을 수행할 수 있다. 그중 하드 디코딩은 GPU (Graphics Processing Unit), 전용 DSP, FPGA, ASIC 칩 등과 같은 CPU가 아닌 것을 사용하여 디코딩하는 것을 의미한다. 소프트 디코딩은 CPU를 사용하여 디코딩하는 것을 의미한다.
구체적으로, 도 1에서와 같이, 멀티미디어 프레임 워크(Media Framework)는 클라이언트 또는 웹 브라우저의 API 인터페이스를 통해 재생할 비디오 파일을 획득하고, 비디오 디코더(Video Decode)에 제출하며, 여기서 멀티미디어 프레임 워크(Media Framework)는 운영 체제중의 멀티미디어 프레임 워크이다.
하드 디코딩이든 소프트 디코딩이든, 비디오 데이터가 디코딩된 후, 디코딩된 비디오 데이터는 서피스 플링거(Surface Flinger)로 전송되고, 디코딩된 비디오 데이터는 Surface Flinger에 의해 렌더링 및 합성된 후, 화면에 표시된다. 여기서 Surface Flinger는 독립적인 Service로서, 모든 서피스를 입력으로 받고, Z Order, 투명도, 크기, 위치 등의 파라미터에 따라 최종 합성 이미지에서 각 서피스의 위치를 계산하여, HW Composer 또는 Open GL에 제출하고, 최종 디스플레이 버퍼를 생성한 다음, 특정된 디스플레이 장치에 표시한다.
본 발명자는 하드 디코딩 또는 소프트 디코딩 프로세스에 시각적 증강 프로세스를 추가할 수 있고, 이를 통해 이후에 재생되는 비디오가 더 높은 시각적 효과를 가질 수 있음을 발견했다. 예를 들어, 할리우드 화질 비디오(HQV) 기술을 사용하여 비디오에 대해 가장자리 노이즈 제거를 진행하거나, 노출도를 조정하거나, 혹은 해상도를 높일 수 있다. 이외에 색상의 선명도를 높이는 등 다른 방법을 사용하여 재생중인 비디오의 시각적 체험을 개선할 수도 있다.
그러나 본 발명자는 재생되는 비디오의 디코딩 방법에 대한 제어가 여전히 개선되어야 함을 알아냈다. 예를 들어, 서로 다른 비디오의 비트율은 일반적으로 다르며, 전자 기기는 일반적으로 비디오 디코딩 프로세스 중에 비디오 비트율이 디코딩 품질 및 디코딩 소모에 미치는 영향을 고려하지 않으므로, 전자 기기의 비디오 디코딩 프로세스 중에, 비디오 비트율에 관계없이 고정된 디코딩 방식에 따라 디코딩이 진행된다. 다른 예로, 비디오 포맷이 증가함에 따라 더 많은 비디오 포맷의 적용을 용이하게 하기 위해, 보다 많은 응용 프로그램이 기본적으로 소프트 디코딩 방식으로 비디오 디코딩을 수행하고 있다. 소프트 디코딩은 소프트웨어에 의해 디코딩되기 때문에 모든 비디오 포맷에 적용할 수 있는 반면, 하드 디코딩은 회로 자체에 의해 제한되며 일부의 비디오 포맷에만 적용할 수 있다. 그러나 보다 많은 응용 프로그램에서 소프트 디코딩을 통해 비디오를 디코딩하도록 구성되면, CPU의 부담이 증가한다. 따라서 본 발명은 제어 편의성과 스마트화를 향상시킬 수 있는 비디오 디코딩 제어 방법, 장치, 전자 기기 및 저장 매체를 제공한다.
아래에서는 본 발명의 내용을 특정 실시예와 결합시켜 소개할 것이다.
도 2에서 나타내는 바와 같이, 본 발명에서 제공하는 비디오 디코딩 제어 방법은 전자 기기에 적용되며, 상기 방법은 다음 단계를 포함한다.
단계 S110: 복수의 응용 프로그램이 분할 화면 모드로 실행중인 것이 검출된 후, 상기 복수의 응용 프로그램 중 비디오 재생 상태에 있는 응용 프로그램을 검출한다.
본 발명에서 전자 기기는 다양한 방법으로 현재 상태가 비디오 재생 상태인지를 검출할 수 있다.
일 실시예로, 상기 전자 기기가 비디오 재생 상태인지 여부를 검출하는 단계는 다음과 같은 단계를 포함한다.
상기 전자 기기에서 설정된 비디오 재생 응용 프로그램이 실행 중인지 여부를 검출하고; 만약에 설정된 비디오 재생 응용 프로그램이 실행 중인 것으로 검출되면, 상기 전자 기기가 상기 비디오 재생 상태에 있는 것으로 판단한다. 여기서 전자 기기는 비디오 재생 응용 프로그램의 목록을 미리 설정하여, 상기 목록에 비디오 재생 응용 프로그램을 기록할 수 있다. 여기서 목록은 전자 기기의 사용자가 자유롭게 설정하거나 또는 특정 비디오 재생 응용 프로그램의 사용 상황에 따라 결정될 수 있다.
예를 들면, 도 3에 도시된 바와 같이, 도 3에 도시된 인터페이스에는 복수의 응용 프로그램과 각 응용 프로그램의 해당 상태가 표시된다. 만약에 응용 프로그램의 해당되는 상태가 '오프'이면, 해당 응용 프로그램이 제거되거나 상기 목록에 추가되지 않음을 의미하며, 응용 프로그램의 해당되는 상태가 도시된 바와 같이 '온'이면, 상기 목록에 응용 프로그램이 추가되었음을 의미한다. 예를 들어, 명칭이 'TX Video'라는 응용 프로그램의 경우, 해당 상태가 '온'이면, 이는 'TX Video' 응용 프로그램이 상술한 목록에 있음을 의미한다. 명칭이 'AQY Video'라는 응용 프로그램의 경우, 해당 상태가 '오프'이면, 이는 'AQY Video' 응용 프로그램이 상술한 목록에 없음을 의미한다.
또한, 전자 기기는 각 비디오 재생 응용 프로그램의 사용 빈도를 검출할 수 있으며, 특정 비디오 재생 응용 프로그램의 사용 빈도가 설정된 빈도를 초과하는 것이 검출되면, 상술한 목록에 상기 비디오 재생 응용 프로그램을 추가할 수 있고, 상기 비디오 재생 응용 프로그램의 명칭이 도 3에서 해당되는 상태를 '온'으로 설정한다.
이 경우, 전자 기기는 먼저 현재 포 그라운드에서 실행중인 응용 프로그램이 어느 응용 프로그램인지를 검출한 후, 현재 포 그라운드에서 실행중인 응용 프로그램이 상기 목록에 있는지를 진일보로 검출하며, 만약에 상기 목록에 있다면, 상기 응용 프로그램이 현재 비디오 재생 상태에 있는 것으로 판단한다. 여기서, 하나의 실시예로, 전자 기기가 안드로이드 운영체제인 경우, Activity Manager의 get Running Tasks 방법을 실행하여 현재 포 그라운드에서 실행중인 응용 프로그램의 명칭을 얻을 수 있다. 이외에, 전자 기기는 Usage Stats Manager를 통해 사용자가 사용하는 프로그램의 리스트를 얻을 수 있고, 리스트에 기록된 최근에 사용한 응용 프로그램을 현재 포 그라운드 응용 프로그램으로 식별할 수 있다. 또한 안드로이드 자체가 가지고 있는 배리어 프리 기능을 통해 윈도우 포커스의 변화를 모니터링 하고, 포커스된 윈도우에 해당하는 패키지 이름을 현재 포 그라운드에서 실행중인 응용 프로그램으로서 얻을 수 있다.
다른 하나의 방법으로서, 전자 기기는 Audio Manager 등의 반환값을 검출하여 재생중인 비디오가 있는지를 확인할 수도 있다. 이 경우, 전자 기기는 먼저 Audio Manager 등의 반환값을 검출하여 오디오 출력이 있는지를 확인하고, 오디오 출력이 검출되면, 실행중인 비디오 재생 응용 프로그램이 있는지를 검출하는 상술한 검출에 의해 전자 기기가 비디오 재생 상태에 있는지를 확인할 수 있다.
또한, 또 다른 하나의 방법으로서, 전자 기기는 비디오 재생 버튼의 터치 상태를 검출하여 비디오 재생 상태인지를 검출할 수도 있다. 예를 들어, 도 4에 도시된 바와 같이, 도 4에 도시된 비디오 재생 인터페이스(99)에 재생 버튼(98)이 표시되고, 도 4에 도시된 인터페이스는 비디오 재생이 일시 정지된 상태에 있다. 이 경우, 재생 버튼(98)이 터치된 것으로 검출되면, 전자 기기가 현재 비디오 재생 상태에 있는 것으로 판단할 수 있다.
단계S120: 검출된 비디오 재생 상태에 있는 응용 프로그램을 설정 대기 응용 프로그램으로 획득한다.
단계S130: 상기 설정 대기 응용 프로그램에서 재생되는 비디오를 하드 디코딩 방식으로 디코딩하도록 구성한다.
필요한 응용 프로그램이 하나의 기본 디코딩 방법을 설정한다는 것은 이해할 수 있다. 상기 응용 프로그램에서 비디오를 재생할때 재생되는 비디오를 먼저 기본 디코딩 방법에 의해 디코딩한다. 이 경우, 전자 기기는 설정 대기 응용 프로그램을 소프트 디코딩이 기본 수행되도록 구성된 응용 프로그램과 기본 디코딩 방법이 설정되지 않은 응용 프로그램으로 구분할 수 있다. 여기서 소프트 디코딩을 기본 수행하도록 구성된 응용 프로그램의 경우, 전자 기기는 소프트 디코딩 요청을 가로 채서 비디오 데이터에 대해 직접 하드 디코딩을 수행할 수 있다.
하나의 방법으로서, 소프트 디코딩 프로세스에서 모두 운영 체제가 CPU에서 수행하는 데이터 처리를 제어하므로, 일반적으로 소프트 디코딩 요청이 먼저 운영 체제(전자 기기로 이해해도 된다)로 전송되고, 운영 체제에서 응답을 진행하며, 일부 응용 프로그램의 경우 소프트 디코딩을 수행하도록 구성된 후, 응답 정보를 검출하는 메커니즘이 구성된다. 예를 들어, 응용 프로그램은 운영 체제에 소프트 디코딩 요청을 보낸 후 소프트 디코딩이 성공적으로 수행되었음을 나타내는 응답 메시지를 운영 체제가 반환하는지 여부를 검출하도록 구성될 수 있다. 소프트 디코딩이 성공적으로 수행되었음을 나타내는 응답 메시지가 반환되지 않았다고 판단되면, 소프트 디코딩 요청을 다시 보내려고 시도한다. 이 경우 전자 기기는 원래의 소프트 디코딩 요청을 가로 채서 하드 디코딩을 시작했지만, 응용 프로그램은 디코딩이 아직 시작되지 않은 것으로 잘못 인식하고, 계속해서 소프트 디코딩 요청을 운영 체제에 보내므로, 데이터 오류가 발생할뿐더러 리소스 낭비가 발생하며, 전자 기기의 성능에도 영향을 미칠 수 있다.
위의 문제를 피면하기 위해, 소프트 디코딩을 기본 수행하도록 구성된 응용 프로그램의 경우, 그가 보낸 소프트 디코딩 요청을 전자 기기가 직접 가로채는 것외에, 전자 기기는 소프트 디코딩이 성공적으로 수행되었음을 나타내는 응답 정보를 반환함으로써(하드 디코딩임에도 불구하고), 소프트 디코딩 요청을 다시 보내지 않도록 하여, 데이터 오류를 방지하고 전력 소비를 줄인다.
본 발명은 비디오 디코딩 제어 방법을 제공하며, 복수의 응용 프로그램이 분할 화면 모드로 실행 중인 것이 검출된 후, 상기 복수의 응용 프로그램 중 비디오 재생 상태에 있는 응용 프로그램을 검출하기 시작하고, 그 다음에, 검출된 비디오 재생 상태에 있는 응용 프로그램을 설정 대기 응용 프로그램으로 획득하고, 상기 설정 대기 응용 프로그램에서 재생되는 비디오를 하드 디코딩 방식으로 디코딩하도록 최종 구성한다. 따라서 상기 방법은 복수의 응용 프로그램이 분할 화면 표시 모드에 있고, 복수의 응용 프로그램들 중 복수의 응용 프로그램이 전부 비디오 재생 기능을 가지는 경우, 비디오 재생 상태에 있는 응용 프로그램에서 재생되는 비디오를 하드 디코딩 방식으로 디코딩 하도록 구성하므로써, CPU의 부하율을 감소시키고, CPU가 보다 많은 처리능력을 갖추어 다른 작업을 처리할 수 있도록 하고, 전자 기기가 버벅임 가능성이 줄어들어, 사용자 체험이 향상된다.
도 5를 참조하면, 본 발명에서 제공하는 비디오 디코딩 제어 방법은 전자 기기에 적용되며, 상기 방법은 다음과 같은 단계를 포함한다.
단계S210: 복수의 응용 프로그램이 분할 화면 모드로 실행중인 것이 검출된 후, 상기 복수의 응용 프로그램 중 비디오 재생 상태에 있는 응용 프로그램을 검출한다.
단계S220: 검출된 비디오 재생 상태에 있는 응용 프로그램을 설정 대기 응용 프로그램으로 획득한다.
단계S230: 상기 전자 기기의 CPU의 부하율을 획득한다.
여기서 반드시 설명해야 할 것은 CPU 부하율은 일반적으로 현재 처리 중이거나 혹은 처리 대기 중인 작업 수의 총량과 CPU가 동시에 처리할 수 있는 최대 작업 수 간의 비율을 말한다. 하나의 방법으로서, 전자 기기는 수집된 CPU의 실제 부하율을 단계 S230에서 획득할 CPU의 부하율로 직접 사용할 수 있다.
일반적으로 전자 기기에는 다양한 응용 프로그램이 설치되어 있고, 응용 프로그램마다 처리해야 할 작업이 다르기 때문에, 전자 기기의 응용 프로그램이 서로 다른 시각에 실행을 시작하므로, 전자 기기의 CPU의 부하율은 동적 변화 상황에 있을 것이다. 예를 들어, 전자 기기에 응용 프로그램 A, 응용 프로그램 B, 응용 프로그램 C가 설치된 경우, 현재 오직 응용 프로그램 A 만 실행중이면, 전자 기기는 CPU의 실제 부하율이 30%임을 검출할 수 있으며, 응용 프로그램 B가 실행을 시작한 후에는, CPU의 실제 부하율이 40%에 도달했음을 검출할 수 있으며, 나아가 응용 프로그램 C도 실행을 시작한 것으로 검출되면, CPU의 실제 부하율이 이미 50%에 도달한 것이 검출될 수 있다. 그렇다면 CPU 부하율의 급격한 상승으로 인한 버벅임을 방지하기 위한 실시예로, 현재 CPU의 실제 부하율을 얻고, 지정된 기간내에 새로 증가된 CPU의 부하율을 추정하고, 상기 새로 증가된 CPU의 부하율 및 상기 현재 CPU의 실제 부하율에 기초하여, CPU의 부하율을 얻는 방법을 예로 들수 있다.
하나의 방법으로서, 상기 지정된 기간내에 새로 증가된 CPU의 부하율을 추정하는 단계는 아래 조건들 중 적어도 하나의 조건에 기초하여 지정된 기간내에 새로 증가된 CPU의 로드를 추정하는 단계를 포함하고; 상기 조건은 현재 실행중인 응용 프로그램에 해당되는 과거 CPU로드; 상기 지정된 기간내에 과거 실행한 응용 프로그램에 해당되는 과거 CPU로드를 포함한다.
전자 기기의 각 응용 프로그램이 차지하는 CPU로드는 다르지만, 일부 응용 프로그램이 어느 시기에 시작될 것에 대해서 전자기기는 어느 정도 추정할 수 있음을 이해할 수 있다. 예를 들어, 전자 기기는 각 응용 프로그램의 실행 시간을 통계한 다음, 특정 응용 프로그램의 통상 실행 시간 단계를 통계해내고, 이어서 상기 응용 프로그램이 매일의 어느 시각에 실행될 것인가를 추정할수 있고, 이러한 방법에 기반하여, 하나의 시간 단계 내에 응용 프로그램이 실행될 것인지 여부를 미리 추정할 수 있다.
일부 응용 프로그램은 일반적으로 설정된 시각에 정보를 업데이트하거나 혹은 설정된 시각에 네트워크에서 데이터를 요청한다. 예를 들어, 브라우저와 같은 응용 프로그램의 경우 일부 웹 페이지 데이터는 브라우저의 유저 인터페이스가 시작되지 않은 경우에도 백그라운드에서 계속 실행될 수 있어, 사용자가 유저 인터페이스를 트리거하여 표시할 때 사용자에 대해 빠르게 표시될 수 있다. 브라우저와 같은 응용 프로그램이 백그라운드에서 업데이트되거나 네트워크 데이터를 요청하는 과정에, 필연적으로 CPU로드를 차지할 것이고 CPU의 부하율이 증가될 것이다.
또한 응용 프로그램 외에도 전자 기기의 시스템 프로그램도 데이터 처리를 위해 정기적으로 실행된다. 전자 기기의 시스템 프로그램에는 해당 유저 인터페이스가 없지만 여전히 전자 기기의 백그라운드 데이터를 처리하기 위해 설정된 시간 단계에서 실행된다. 이에 따라 전자 기기의 시스템 프로그램도 실행되는 동안 CPU의 로드를 차지하고 CPU의 부하율을 증가시킨다.
하나의 방법으로서, 전자 기기는 데이터 테이블을 구성하여 통계에 의해 얻은 응용 프로그램 또는 시스템 프로그램의 실행 주기를 저장할 수 있다. 이렇게 하므로써 전자 기기가 비디오 재생을 시작하고 비디오 재생 상태에 있으면, 지정된 기간내에 응용 프로그램 또는 시스템 프로그램이 실행되는지 여부를 검출할 수 있고, 지정된 기간내에 새로 증가된 CPU 부하율을 추정할 수 있다.
여기서, 선택적으로, 전술한 지정된 기간은 재생되는 비디오의 길이일 수 있다. 이 경우, 전자 기기가 비디오 재생 상태임을 검출한 후, 재생되는 비디오의 길이를 획득할 수 있고, 획득한 상기 길이를 지정된 기간으로 사용하고, 나아가 지정된 기간내에 응용 프로그램 또는 시스템 프로그램이 실행되고 있는지 여부를 판단하고, 지정된 기간내에 새로 증가된 CPU 부하율을 추정하고, 추정된 새로 증가된 CPU 부하율을 사용하여 비디오 재생 과정에서의 최고CPU 부하율을 확정하고, 얻어지는 최고CPU 부하율을 CPU의 부하율로 사용한다.
단계 S240: 상기 CPU의 부하율이 목표 임계값 보다 낮은지 낮지 않은지를 판단한다.
단계 S250: 만약에 CPU의 부하율이 목표 임계값 보다 낮지 않으면, 상기 하드 디코딩 방식으로 상기 설정 대기 응용 프로그램에서 재생되는 비디오를 디코딩하도록 구성한다.
단계 S251: CPU의 부하율이 목표 임계값 보다 낮다고 판단되면, 설정 대기 응용 프로그램에서 재생되는 비디오의 포맷이 하드 디코딩에 적합한지를 검측한다.
여기서 하나의 방법으로서, 전자 기기는 데이터 테이블을 미리 구성하여, 비디오 포맷과 디코딩 모드 간의 대응 관계를 저장함으로써, 각 비디오 포맷에 대응하는 디코딩 모드를 기록할 수 있다. 이 경우, 전자 기기는 테이블 룩업을 기반으로 설정 대기 응용 프로그램에서 재생되는 비디오의 포맷이 하드 디코딩에 적합한지 여부를 판단할 수 있다.
다른 방법으로서, 전자 기기는 재생된 비디오에 대해 각각 소프트 디코딩 및 하드 디코딩을 한 번 수행한 다음, 하드 디코딩을 통해 얻은 비디오 이미지의 품질과 소프트 디코딩을 통해 얻은 비디오 이미지의 품질을 비교하여 설정 대기 응용 프로그램에서 재생되는 비디오의 포맷이 하드 디코딩에 적합한지를 판단할 수 있다. 여기서 소프트 디코딩 및 하드 디코딩을 한 번 수행하는 것을 1프레임의 이미지를 디코딩해내는 것으로 이해할 수 있다. 여기서 해상도와 노이즈를 사용하여 품질의 높고 낮음을 확정할 수 있다.
선택적으로, 전자 기기는 파싱된 이미지의 해상도를 다양한 방식으로 얻을 수 있다.
하나의 이미지가 이미 흐려지면 다시 블러 처리를 한 번 하여도, 이미지의 고주파 성분은 크게 변화가 없다. 그러나 이미지 자체의 선명도가 높으면, 한 번 블러 처리를 하면, 고주파 성분이 크게 변화된다. 그렇다면 하나의 방법으로서, 전자 기기는 목표 이미지 (상술한 파싱된1프레임의 이미지)에 대해 한 번의 블러 처리 (예를 들어, 가우시안 블러 처리)를 수행하여, 상기 이미지의 열화 이미지를 획득한 다음, 블러 처리 전의 이미지와 블러 처리 후의 이미지의 인접한 픽셀값의 변화 상황을 대비하여, 변화된 크기에 따라 선명도 값의 높고 낮음을 결정한 다음, 결정된 선명도를 해상도로 사용한다. 이 경우 변화가 클수록, 목표 이미지의 선명도가 높아지고, 해상도 역시 높아진다.
또한, 위에서 언급한 목표 이미지에 대해 블러 처리하여 목표 이미지의 선명도를 결정하는 방법외에, 다른 방법을 사용하여 선명도를 계산할 수도 있다. 선택적으로, 하기 계산공식을 사용하여 선명도를 결정할 수 있다.
Figure 112021068936582-pct00001
여기서, f(x, y)는 이미지 f의 해당하는 픽셀(x, y)의 그레이 스케일 값을 나타내고, D(f)는 이미지 선명도 계산 결과이며, 이 결과를 해상도로 사용한다. 선택적으로, 본 발명에서 f(x, y)는 실시간 프리뷰 이미지에서의 고주파 성분 영역을 선택할 수 있다.
선택적으로, 현재 재생 중인 비디오가 사용자가 선택할 수 있는 여러 해상도를 제공하는 경우, 사용자가 선택한 비디오 재생을 하고 있는 해상도를 읽어, 현재 비디오의 해상도를 얻을 수 있다.
그렇다면 전자 기기는 하드 디코딩과 소프트 디코딩을 통해 얻은 이미지의 해상도를 비교할 수 있으며, 고해상도 이미지를 더 좋은 품질의 이미지로 간주한다.
또한 해상도 외에도 노이즈 포인트 수를 판단하여 판단할 수도 있다.
또한 영상에 노이즈 포인트가 있는 경우, 영상의 에지 영역(고주파 성분 영역)이나 에지 이외의 영역에 노이즈 포인트가 존재할 가능성이 있지만, 에지를 따른 노이즈 포인트는 시각적으로 선명하지 않기에, 하나의 방법으로서, 평가 시간을 단축하기 위해 이동 단말기는 가장자리 외부의 노이즈 포인트만 검출할 수 있다. 에지 검출은 노이즈 포인트의 영향을 받으므로, 이동 단말기는 에지 검출전에 노이즈 필터링 전처리를 수행할 수 있다. 선택적으로, 이동 단말기는 평균값 필터링을 사용하여 일부 노이즈 포인트를 제거할 수 있으며, 평균값 필터링 후 이미지g(x, y)는 다음과 같다.
Figure 112021068936582-pct00002
그런 다음 후보 노이즈 포인트는 다음과 같다.
Figure 112021068936582-pct00003
마찬가지로 해당 값은 수직 방향으로 계산할 수 있다. 그런 다음 얻어지는 후보 노이즈 포인트는 다음과 같다.
Figure 112021068936582-pct00004
그러면 Ncand(x, y)는 검출된 노이즈를 나타낸다. 통계 후 실시간 미리보기 이미지의 노이즈 포인트 수를 얻을 수 있다.
이 경우 전자 기기는 노이즈 포인트 수가 적은 이미지를 더 좋은 품질의 이미지로 간주한다.
단계 S260: 설정 대기 응용 프로그램 중에서 재생되는 비디오의 포맷이 하드 디코딩에 적합한 응용 프로그램인 제1 타겟 응용 프로그램을 획득한다.
단계 S270: 상기 제1 타겟 응용 프로그램에서 재생되는 비디오를 하드 디코딩 방식으로 디코딩하도록 구성한다.
단계 S280: 설정 대기 응용 프로그램 중에서 재생되는 비디오의 포맷이 하드 디코딩에 적합하지 않는 응용 프로그램인 제2 타겟 응용 프로그램을 획득한다.
단계 S290: 제2 타겟 응용 프로그램에서 재생되는 비디오를 소프트 디코딩 방식으로 디코딩하도록 구성한다.
본 발명은 비디오 디코딩 제어 방법을 제공하고, 복수의 응용 프로그램이 분할 화면 모드로 실행중인 것이 검출된 후, 상기 복수의 응용 프로그램 중 비디오 재생 상태에 있는 응용 프로그램을 검출하고; 검출된 비디오 재생 상태에 있는 응용 프로그램을 설정 대기 응용 프로그램으로 획득하고; 전자 기기의 CPU의 부하율에 따라 어느 응용 프로그램에서 재생되는 비디오를 하드 디코딩하고, 어느 응용 프로그램에서 재생되는 비디오를 소프트 디코딩 할 것지를 결정한다. 상기 방법은 복수의 응용 프로그램이 분할 화면 표시 모드에 있고, 복수의 응용 프로그램들 중 복수의 응용 프로그램이 전부 비디오 재생 기능을 가지는 경우, 비디오 재생 상태에 있는 응용 프로그램에서 재생되는 비디오를 하드 디코딩 방식으로 디코딩 하도록 구성함으로써, CPU의 부하율을 감소시키고, CPU가 보다 많은 처리능력을 갖추어 다른 작업을 처리할 수 있도록 하고, 전자 기기가 버벅임 가능성이 줄어들어, 사용자 체험이 향상되며, 디코딩 방법 제어의 융통성을 향상시킬 수 있다.
도 6을 참조하면, 본 발명에서 제공하는 비디오 디코딩 제어 방법은 전자 기기에 적용되며, 상기 방법은 다음과 같은 단계를 포함한다.
단계 S310: 복수의 응용 프로그램이 분할 화면 모드로 실행 중인 것이 검출된 후, 상기 복수의 응용 프로그램 중 비디오 재생 상태에 있는 응용 프로그램을 검출한다.
단계 S320: 검출된 비디오 재생 상태에 있는 응용 프로그램을 설정 대기 응용 프로그램으로 획득한다.
단계 S330: 이미 검출된 설정 대기 응용 프로그램의 각각에 해당되는 레벨을 획득한다.
하나의 방법으로, 상기 이미 검출된 설정 대기 응용 프로그램의 각각에 해당되는 레벨을 획득하는 단계는,
설정된 데이터 테이블에서, 이미 검출된 설정 대기 응용 프로그램의 각각에 해당되는 레벨을 찾아내는 단계;
설정 대기 응용 프로그램에 해당되는 레벨을 상기 데이터 테이블에서 찾아내지 못한 경우, 상기 레벨을 찾아내지 못한 응용 프로그램과 동일한 종류의 응용 프로그램을 상기 데이터 테이블에서 획득하는 단계;
상기 동일한 종류의 응용 프로그램의 레벨을, 찾아내지 못한 설정 대기 응용 프로그램에 해당되는 레벨로 간주하는 단계를 포함한다.
전자 기기는 응용 프로그램이 설치되었음을 검출한 후, 설치된 응용 프로그램에 레벨을 할당할 수 있음을 이해할 수 있다. 레벨의 높고 낮음은 상기 응용 프로그램의 주요 기능에 따라 결정될 수 있다. 본 발명의 실시예에서 하나의 방법으로, 비디오 재생 전용 응용 프로그램의 레벨을 가장 높게 설정한 다음, 비디오 재생 기능을 가진 응용 프로그램이지만 그 주요 기능은 비디오 재생이 아닌 응용 프로그램에 대해서는 레벨을 두 번째로 높게 구성한다.
단계 S340: 상기 비디오 재생 상태에 있고 임계값 레벨보다 높은 레벨의 응용 프로그램에서 재생되는 비디오를 하드 디코딩 방식으로 디코딩하도록 구성한다.
본 발명은 비디오 디코딩 제어 방법을 제공하고, 복수의 응용 프로그램이 분할 화면 모드로 실행 중인 것이 검출된 후, 상기 복수의 응용 프로그램 중 비디오 재생 상태에 있는 응용 프로그램을 검출하기 시작하고; 검출된 비디오 재생 상태에 있는 응용 프로그램을 설정 대기 응용 프로그램으로 획득하고; 각 설정 대기 응용 프로그램의 레벨을 검출하고; 임계값 보다 높은 레벨의 응용 프로그램을 획득하고; 상기 설정 대기 응용 프로그램중 임계값 보다 높은 레벨의 응용 프로그램에서 재생되는 비디오를 하드 디코딩 방식으로 디코딩하도록 구성한다. 이로써, 상기 방법은 복수의 응용 프로그램이 분할 화면 표시 모드에 있고, 복수의 응용 프로그램들 중 복수의 응용 프로그램이 전부 비디오 재생 기능을 가지는 경우, 비디오 재생 상태에 있는 응용 프로그램에서 재생되는 비디오를 하드 디코딩 방식으로 디코딩 하도록 구성함으로써, CPU의 부하율을 감소시키고, CPU가 보다 많은 처리능력을 갖추어 다른 작업을 처리할 수 있도록 하고, 전자 기기가 버벅임 가능성이 줄어들어, 사용자 체험이 향상된다.
도 7을 참조하면, 본 발명에서 제공되는 비디오 디코딩 제어 장치(400)는 전자 기기에서 실행되고, 상기 장치(400)는 응용 프로그램 검출 유닛(410), 설정 대기 프로그램 획득 유닛(420) 및 디코딩 제어 유닛(430)를 포함한다.
응용 프로그램 검출 유닛(410)는 복수의 응용 프로그램이 분할 화면 모드로 실행중인 것이 검출된 후, 상기 복수의 응용 프로그램 중 비디오 재생 상태에 있는 응용 프로그램을 검출하는데 사용된다.
설정 대기 프로그램 획득 유닛(420)은 검출된 비디오 재생 상태에 있는 응용 프로그램을 설정 대기 응용 프로그램으로 획득하는데 사용된다.
디코딩 제어 유닛(430)은 상기 설정 대기 응용 프로그램에서 재생되는 비디오를 하드 디코딩 방식으로 디코딩하도록 구성하는데 사용된다.
필요한 응용 프로그램이 하나의 기본 디코딩 방법을 설정한다는 것은 이해할 수 있다. 상기 응용 프로그램에서 비디오를 재생할때 재생되는 비디오를 먼저 기본 디코딩 방법에 의해 디코딩한다. 이 경우, 전자 기기는 설정 대기 응용 프로그램을 소프트 디코딩이 기본 수행되도록 구성된 응용 프로그램과 기본 디코딩 방법이 설정되지 않은 응용 프로그램으로 구분할 수 있다. 여기서, 디코딩 제어 유닛(430)은 구체적으로 소프트 디코딩을 기본으로 수행하도록 구성된 응용 프로그램의 경우, 전자 기기가 소프트 디코딩 요청을 가로 채서 비디오 데이터에 대해 직접 하드 디코딩을 수행하는데 사용된다.
도 8을 참조하면, 본 발명에서 제공되는 비디오 디코딩 제어 장치(500)는 전자 기기에서 실행되며, 상기 장치(500)는 응용 프로그램 검출 유닛(510), 설정 대기 프로그램 획득 유닛(520), 부하율 획득 유닛(530), 판단 유닛(540) 및 디코딩 제어 유닛(550)을 포함한다.
응용 프로그램 검출 유닛(510)은 복수의 응용 프로그램이 분할 화면 모드로 실행중인 것이 검출된 후, 상기 복수의 응용 프로그램 중 비디오 재생 상태에 있는 응용 프로그램을 검출하는데 사용된다.
설정 대기 프로그램 획득 유닛(520)은 검출된 비디오 재생 상태에 있는 응용 프로그램을 설정 대기 응용 프로그램으로 획득하는데 사용된다.
부하율 획득 유닛(530)은 상기 전자 기기의 CPU의 부하율을 획득하는데 사용된다.
판단 유닛(540)은 상기 CPU의 부하율이 목표 임계값 보다 낮은지 낮지 않은지를 판단한다.
디코딩 제어 유닛(550)은 만약에 CPU의 부하율이 목표 임계값 보다 낮지 않으면, 상기 하드 디코딩 방식으로 상기 설정 대기 응용 프로그램에서 재생되는 비디오를 디코딩하도록 구성하는데 사용된다.
포맷 판단 유닛은 CPU의 부하율이 목표 임계값 보다 낮다고 판단되면, 설정 대기 응용 프로그램에서 재생되는 비디오의 포맷이 하드 디코딩에 적합한지를 검측하는데 사용된다.
디코딩 제어 유닛(550)은 설정 대기 응용 프로그램 중에서 재생되는 비디오의 포맷이 하드 디코딩에 적합한 응용 프로그램인 제1 타겟 응용 프로그램을 획득하고, 상기 제1 타겟 응용 프로그램에서 재생되는 비디오를 하드 디코딩 방식으로 디코딩하도록 구성하는 것에도 사용된다.
디코딩 제어 유닛(550)은 설정 대기 응용 프로그램 중에서 재생되는 비디오의 포맷이 하드 디코딩에 적합하지 않는 응용 프로그램인 제2 타겟 응용 프로그램을 획득하고, 상기 제2 타겟 응용 프로그램에서 재생되는 비디오를 소프트 디코딩 방식으로 디코딩하도록 구성하는 것에도 사용된다.
도 9를 참조하면, 본 발명에서 제공되는 비디오 디코딩 제어 장치(600)는 전자 기기에서 실행되며, 상기 장치(600)는 응용 프로그램 검출 유닛(610), 설정 대기 프로그램 획득 유닛(620), 레벨 획득 유닛(630) 및 디코딩 제어 유닛(640)을 포함한다.
응용 프로그램 검출 유닛(610)은 복수의 응용 프로그램이 분할 화면 모드로 실행중인 것이 검출된 후, 상기 복수의 응용 프로그램 중 비디오 재생 상태에 있는 응용 프로그램을 검출하는데 사용된다.
설정 대기 프로그램 획득 유닛(620)은 검출된 비디오 재생 상태에 있는 응용 프로그램을 설정 대기 응용 프로그램으로 획득하는데 사용된다.
레벨 획득 유닛(630)은 이미 검출된 설정 대기 응용 프로그램의 각각에 해당되는 레벨을 획득하는데 사용된다.
하나의 방법으로, 상기 이미 검출된 설정 대기 응용 프로그램의 각각에 해당되는 레벨을 획득하는 단계는,
설정된 데이터 테이블에서, 이미 검출된 설정 대기 응용 프로그램의 각각에 해당되는 레벨을 찾아내는 단계;
설정 대기 응용 프로그램에 해당되는 레벨을 상기 데이터 테이블에서 찾아내지 못한 경우, 상기 레벨을 찾아내지 못한 응용 프로그램과 동일한 종류의 응용 프로그램을 상기 데이터 테이블에서 획득하는 단계;
상기 동일한 종류의 응용 프로그램의 레벨을, 찾아내지 못한 설정 대기 응용 프로그램에 해당되는 레벨로 간주하는 단계를 포함한다.
디코딩 제어 유닛(640)은 상기 비디오 재생 상태에 있고 임계값 레벨보다 높은 레벨의 응용 프로그램에서 재생되는 비디오를 하드 디코딩 방식으로 디코딩하도록 구성하는데 사용된다.
응당 밝혀둘 것은, 통상의 기술자라면 설명의 편의성과 간결성을 위해, 상술한 장치 및 유닛의 구체적인 작업 과정은 전술한 방법 실시예에서의 해당 과정을 참조할 수 있고, 이에 대해서 상세히 설명하지 않음을 이해할 수 있다. 본 발명에서 제공되는 여러 실시예에서, 모듈 간의 결합은 전기적, 기계적 또는 다른 형태의 결합일 수 있다. 또한, 본 발명의 다양한 실시 예에서의 각 기능 모듈은 하나의 처리 모듈로 통합될 수 있거나, 또는 각 모듈은 물리적으로 단독으로 존재할 수 있거나, 둘 혹은 둘 이상의 모듈이 하나의 모듈에 통합될 수 있다. 위에서 언급한 통합 모듈은 하드웨어 또는 소프트웨어 기능 모듈의 형태로 구현될 수 있다.
응당 밝혀둘 것은, 오디오 인코딩 유형에 따라 오디오 데이터를 인코딩하는 방법은 기존 기술을 채택할 수 있으며, 이에 대해서는 본 발명에서 상세히 설명하지 않을 것이다.
상술한 바와 같이, 본 발명은 비디오 디코딩 제어 방법, 장치, 전자 기기 및 저장 매체를 제공하며, 복수의 응용 프로그램이 분할 화면 모드로 실행중인 것이 검출된 후, 상기 복수의 응용 프로그램 중 비디오 재생 상태에 있는 응용 프로그램을 검출하기 시작하고, 그 다음에, 검출된 비디오 재생 상태에 있는 응용 프로그램을 설정 대기 응용 프로그램으로 획득하고, 상기 설정 대기 응용 프로그램에서 재생되는 비디오를 하드 디코딩 방식으로 디코딩하도록 최종 구성한다. 따라서 상기 방법은 복수의 응용 프로그램이 분할 화면 표시 모드에 있고, 복수의 응용 프로그램들 중 복수의 응용 프로그램이 전부 비디오 재생 기능을 가지는 경우, 비디오 재생 상태에 있는 응용 프로그램에서 재생되는 비디오를 하드 디코딩 방식으로 디코딩 하도록 구성함으로써, CPU의 부하율을 감소시키고, CPU가 보다 많은 처리능력을 갖추어 다른 작업을 처리할 수 있도록 하고, 전자 기기가 버벅임 가능성이 줄어들어, 사용자 체험이 향상된다.
이하, 도 10을 참조하여 본 발명에서 제공되는 전자 기기에 대해 설명한다.
도 10을 참조하면, 본 발명의 일 실시 예는 전술한 비디오 디코딩 제어 방법 및 장치에 기초하여, 전술한 비디오 디코딩 제어 방법을 실행할 수 있는 다른 전자 기기(100)도 제공한다. 전자 기기(100)는 서로 연결된 하나 혹은 복수의 (도면에는 하나만 도시됨) 프로세서(102), 메모리(104), 네트워크 모듈(106), 비디오 코덱(108) 및 스크린(112)을 포함한다. 여기서, 상기 메모리(104)에는 전술한 실시예에서의 콘텐츠를 실행할 수 있는 프로그램이 저장되고, 프로세서(102)는 상기 메모리(104)에 저장된 프로그램을 실행할 수 있다.
프로세서(102)는 하나 혹은 복수의 프로세싱 코어를 포함할 수 있다. 프로세서(102)는 다양한 인터페이스 및 라인을 사용하여 전체 전자 기기(100) 내의 각 부분을 연결하고, 메모리(104)에 저장된 명령, 프로그램, 코드 세트 또는 명령 세트를 실행 또는 수행하고, 메모리(104)에 저장된 데이터를 호출함으로써, 전자 기기(100)의 각종 기능 및 데이터 처리를 수행한다. 선택적으로, 프로세서(102)는 DSP(Digital Signal Processing), FPGA(Field-Programmable Gate Array) 및PLA(Programmable Logic Array) 중 적어도 하나의 하드웨어 형식을 사용하여 실현할 수 있다. 프로세서(102)는 중앙 처리 장치(Central Processing Unit, CPU), 그래픽 처리 장치(Graphics Processing Unit, GPU), 모뎀 중의 하나 또는 복수의 조합이 통합될 수 있다. 여기서, CPU는 주로 운영 체제, 사용자 인터페이스 및 응용 프로그램을 처리하고, GPU는 디스플레이 콘텐츠의 렌더링 및 제도에 사용되며, 모뎀은 무선 통신 처리에 사용된다. 전술한 모뎀은 프로세서(102)에 통합되지 않을 수도 있고, 하나의 통신 칩만으로 구현될 수 있음을 이해할 수 있다.
메모리(104)는 랜덤 액세스 메모리(Random Access Memory, RAM)를 포함하거나, 읽기 전용 메모리(Read-Only Memory)를 포함할 수 있다. 메모리(104)는 명령, 프로그램, 코드, 코드 세트 또는 명령 세트를 저장하는데 사용될 수 있다. 메모리(104)는 프로그램 저장 영역 및 데이터 저장 영역을 포함할 수 있으며, 예를 들어, 비디오 디코딩 제어 장치가 메모리(104)에 저장될 수 있다. 상기 비디오 디코딩 제어 장치는 전술한 장치(400), 장치(500) 또는 장치(600)일 수 있다. 여기서 프로그램 저장 영역은 운영체제 구현에 사용되는 명령, 적어도 하나의 기능(터치 기능, 음성 재생 기능, 이미지 재생 기능 등)을 구현하는데 사용되는 명령, 후술할 각 방법 실시예의 구현에 사용되는 명령 등을 저장할 수 있다. 데이터 저장 영역은 또한 사용 중에 단말기(100)에 의해 생성된 데이터 (전화 번호부, 오디오 및 비디오 데이터, 채팅 기록 데이터) 등을 저장할 수 있다.
상기 네트워크 모듈(106)은 전자기파를 수신 및 전송하고, 전자기파와 전기 신호간의 상호 변환을 실현하여 통신 네트워크 또는 무선 액세스 포인트와 같은 기타 장치와 통신하는데 사용된다. 상기 네트워크 모듈(106)은 상기 기능들을 수행하는데 사용되는 각종 기존의 회로 소자를 포함할 수 있고, 안테나, RF 트랜시버, 디지털 신호 프로세서, 인코딩/디코딩 칩, 가입자 식별 모듈(SIM) 카드, 메모리 등과 같은 것을 예로 들 수 있다. 상기 네트워크 모듈(106)은 인터넷, 인트라넷 및 무선 네트워크와 같은 다양한 네트워크와 통신하거나 또는 무선 네트워크를 통해 기타 장치와 통신할 수 있다. 전술한 무선 네트워크는 셀룰러 전화 네트워크, 무선 근거리 통신망 또는 도시형 통신망을 포함할 수있다.
비디오 코덱(108)은 네트워크 모듈 (106)에 의해 네트워크로부터 요청된 데이터를 디코딩하여 스크린(112)으로 전송되여 디스플레이 되도록 하는데 사용될 수 있다. 구체적으로, 비디오 코덱(108)은 GPU, 전용 DSP, FPGA, ASIC 칩 등일 수 있다.
본 발명의 일 실시예에 의해 제공되는 컴퓨터 판독가능 저장 매체의 구조적 블록도를 나타내는 도 11을 참조한다. 컴퓨터 판독가능 매체(800)에는 프로그램 코드가 저장되고, 이 프로그램 코드는 전술한 방법 실시예에서 설명된 방법을 실행하도록 프로세서에 의해 호출될 수 있다.
컴퓨터 판독가능 저장 매체(800)는 플래시 메모리, EEPROM (Electrically Erasable Programmable Read Only Memory), EPROM, 하드 디스크 또는 ROM과 같은 전자 메모리일 수 있다. 선택적으로, 컴퓨터 판독가능 저장 매체(800)는 비일시적 컴퓨터 판독가능 저장 매체(non-transitory computer-readable storage medium)를 포함한다. 컴퓨터 판독가능 저장 매체(800)는 전술한 방법 중의 임의의 방법 단계를 수행하기 위한 프로그램 코드(810)의 저장 공간을 갖는다. 이러한 프로그램 코드는 하나 혹은 복수의 컴퓨터 프로그램 제품에서 읽거나 또는 상기 하나 혹은 복수의 컴퓨터 프로그램 제품에 쓸 수 있다. 프로그램 코드(810)는 예를 들어 적절한 형태로 압축될 수 있다.
마지막으로 밝혀둘 것은, 상기 실시예는 본 발명의 기술 방안을 설명하기 위한 것이며, 이를 제한하지 않고, 상기 실시예를 참조하여 본 발명이 상세하게 설명되었지만, 통상의 기술자는 전술한 실시예에 기재된 기술 방안을 수정하거나 일부 기술적 특징을 동등하게 대체할 수 있으며, 이러한 수정 또는 대체는 해당 기술 방안의 실질을 본 발명의 각 실시예의 기술 방안의 사상과 범위에서 벗어나게 하지 않는다.

Claims (20)

  1. 전자 기기에 적용되는 비디오 디코딩 제어 방법으로서, 상기 방법은,
    복수의 응용 프로그램이 분할 화면 모드로 실행 중인 것이 검출된 후, 상기 복수의 응용 프로그램 중 비디오 재생 상태에 있는 응용 프로그램을 검출하는 단계;
    검출된 비디오 재생 상태에 있는 응용 프로그램을 설정 대기 응용 프로그램으로 획득하는 단계;
    상기 전자 기기의 CPU의 부하율을 얻는 단계;
    상기 CPU의 부하율이 목표 임계값 보다 낮은지 낮지 않은지를 판단하는 단계; 및
    만약에 상기 CPU의 부하율이 목표 임계값 보다 낮지 않으면, 상기 설정 대기 응용 프로그램에서 재생되는 비디오를 하드 디코딩 방식으로 디코딩하도록 구성하는 단계를 포함하는, 비디오 디코딩 제어 방법.
  2. 제1항에 있어서,
    상기 전자 기기의 CPU의 부하율을 얻는 단계는,
    상기 전자 기기의 CPU의 실제 부하율을 얻는 단계;
    상기 전자 기기의 현재 실행 중인 응용 프로그램을 기반으로, 지정된 기간 내에 새로 증가된 CPU의 부하율을 추정하는 단계; 및
    상기 CPU의 실제 부하율 및 상기 새로 증가된 CPU의 부하율에 기초하여, 상기 CPU의 부하율을 얻는 단계를 포함하는, 비디오 디코딩 제어 방법.
  3. 제2항에 있어서,
    상기 지정된 기간 내에 새로 증가된 CPU의 부하율을 추정하는 단계는 아래 조건들 중 적어도 하나의 조건에 기초하여 지정된 기간 내에 새로 증가된 CPU의 로드를 추정하는 단계를 포함하고;
    상기 조건은
    현재 실행 중인 응용 프로그램에 해당되는 과거 CPU로드; 및
    상기 지정된 기간내에 과거 실행한 응용 프로그램에 해당되는 과거 CPU로드인 것인, 비디오 디코딩 제어 방법.
  4. 제1항에 있어서,
    상기 방법은
    상기 CPU의 부하율이 목표 임계값 보다 낮다고 판단되면, 상기 설정 대기 응용 프로그램에서 재생되는 비디오의 포맷이 하드 디코딩에 적합한지를 검측하는 단계;
    상기 설정 대기 응용 프로그램 중에서 재생되는 비디오의 포맷이 하드 디코딩에 적합한 응용 프로그램인 제1 타겟 응용 프로그램을 획득하는 단계; 및
    상기 제1 타겟 응용 프로그램에서 재생되는 비디오를 하드 디코딩 방식으로 디코딩하도록 구성하는 단계를 더 포함하는, 비디오 디코딩 제어 방법.
  5. 제4항에 있어서,
    상기 설정 대기 응용 프로그램에서 재생되는 비디오의 포맷이 하드 디코딩에 적합한지를 검측하는 단계는,
    상기 설정 대기 응용 프로그램에서 재생되는 비디오 포맷을 획득하는 단계;
    비디오 포맷과 디코딩 모드간의 대응 관계가 저장되어 있는 미리 설정된 데이터 테이블에서 상기 재생되는 비디오의 포맷에 대응되는 디코딩 모드를 검색하는 단계; 및
    검색 결과에 따라 상기 재생되는 비디오의 포맷이 하드 디코딩에 적합한지를 결정하는 단계를 포함하는, 비디오 디코딩 제어 방법.
  6. 제4항에 있어서,
    상기 설정 대기 응용 프로그램에서 재생되는 비디오의 포맷이 하드 디코딩에 적합한지를 검측하는 단계는,
    상기 설정 대기 응용 프로그램에서 재생되는 비디오에 대해 소프트 디코딩 및 하드 디코딩을 각각 한번씩 수행하는 단계; 및
    소프트 디코딩과 하드 디코딩을 통해 얻은 비디오 이미지의 품질을 비교하여, 상기 설정 대기 응용 프로그램에서 재생되는 비디오의 포맷이 하드 디코딩에 적합한지를 판단하는 단계를 포함하고,
    상기 이미지의 품질은 해상도 및 노이즈에 의해 결정되는, 비디오 디코딩 제어 방법.
  7. 제4항에 있어서,
    상기 방법은,
    설정 대기 응용 프로그램 중에서 재생되는 비디오의 포맷이 하드 디코딩에 적합하지 않는 응용 프로그램인 제2 타겟 응용 프로그램을 획득하는 단계; 및
    상기 제2 타겟 응용 프로그램에서 재생되는 비디오를 소프트 디코딩 방식으로 디코딩하도록 구성하는 단계를 더 포함하는, 비디오 디코딩 제어 방법.
  8. 제1항 내지 제7항 중 어느 한 항에 있어서,
    상기 설정 대기 응용 프로그램은 자동으로 소프트 디코딩을 수행하도록 구성된 응용 프로그램을 포함하고,
    상기 설정 대기 응용 프로그램에서 재생되는 비디오를 하드 디코딩 방식으로 디코딩하도록 구성하는 단계는,
    소프트 디코딩 요청이 차단되고, 상기 설정 대기 응용 프로그램에서 재생되는 비디오 데이터를 하드 디코딩하는 단계를 포함하는, 비디오 디코딩 제어 방법.
  9. 제1항 내지 제7항 중 어느 한 항에 있어서,
    상기 복수의 응용 프로그램들 중 비디오 재생 상태에 있는 응용 프로그램을 검출하는 단계는:
    비디오 재생 상태에 있는지를 검출하는 단계; 및
    만약에 비디오 재생 상태라면, 상기 복수의 응용 프로그램 중 비디오 재생 상태에 있는 응용 프로그램을 검출하는 단계를 포함하는, 비디오 디코딩 제어 방법.
  10. 제9항에 있어서,
    상기 비디오 재생 상태에 있는지를 검출하는 단계는,
    설정된 비디오 재생 응용 프로그램이 실행 중인지를 검출하는 단계; 및
    상기 설정된 비디오 재생 응용 프로그램이 실행 중인 것이 검출되면, 비디오 재생 상태에 있는 것으로 판단하는 단계를 포함하는, 비디오 디코딩 제어 방법.
  11. 제9항에 있어서,
    상기 비디오 재생 상태에 있는지를 검출하는 단계는,
    현재 포 그라운드에서 실행 중인 응용 프로그램을 획득하는 단계;
    상기 응용 프로그램이 미리 설정된 비디오 재생 응용 프로그램의 목록에 있는지를 검출하는 단계; 및
    만약에 있다면, 비디오 재생 상태에 있는 것으로 판단하는 단계를 포함하는, 비디오 디코딩 제어 방법.
  12. 제11항에있어서,
    상기 현재 포 그라운드에서 실행 중인 응용 프로그램을 획득하는 단계는,
    사용자가 사용하는 응용 프로그램의 리스트를 획득하는 단계; 및
    상기 리스트에 기록된 최근에 사용한 응용 프로그램을 현재 포 그라운드에서 실행 중인 응용 프로그램으로 식별하는 단계를 포함하는, 비디오 디코딩 제어 방법.
  13. 제11항에 있어서,
    상기 응용 프로그램이 미리 설정된 비디오 재생 응용 프로그램의 목록에 있는지를 검출하는 단계는,
    상기 응용 프로그램의 사용 빈도를 검출하는 단계; 및
    상기 사용 빈도가 설정된 빈도를 초과하면, 미리 설정된 비디오 재생 응용 프로그램의 목록에 상기 응용 프로그램이 포함된 것으로 판단하는 단계를 포함하는, 비디오 디코딩 제어 방법.
  14. 제9항에 있어서,
    상기 비디오 재생 상태에 있는지를 검출하는 단계는,
    오디오 출력이 있는지를 검출하는 단계;
    출력이 있다면, 비디오 재생 응용 프로그램이 실행되고 있는지를 검출하는 단계; 및
    실행되고 있다면, 비디오 재생 상태로 판단하는 단계를 포함하는, 비디오 디코딩 제어 방법.
  15. 전자 기기에서 실행되는 비디오 디코딩 제어 장치로서, 상기 장치는,
    복수의 응용 프로그램이 분할 화면 모드로 실행 중인 것이 검출된 후, 상기 복수의 응용 프로그램 중 비디오 재생 상태에 있는 응용 프로그램을 검출하는 응용 프로그램 검출 유닛;
    검출된 비디오 재생 상태에 있는 응용 프로그램을 설정 대기 응용 프로그램으로 획득하는 설정 대기 프로그램 획득 유닛;
    상기 전자 기기의 CPU의 부하율을 얻는 부하율 획득 유닛;
    상기 CPU의 부하율이 목표 임계값 보다 낮은지 낮지 앉은지를 판단하는 판단 유닛; 및
    CPU의 부하율이 목표 임계값보다 낮지 않으면, 상기 설정 대기 응용 프로그램에서 재생되는 비디오를 하드 디코딩 방식으로 디코딩하도록 구성하는 디코딩 제어 유닛을 포함하는, 비디오 디코딩 제어 장치.
  16. 전자 기기로서,
    하나 혹은 복수의 프로세서, 비디오 코덱 및 메모리;
    상기 메모리에 저장되고, 상기 하나 혹은 복수의 프로세서에 의해 수행되도록 구성되고, 청구항 제1항 내지 제7항 중 어느 한 항에 따른 방법을 수행하도록 구성되는 하나 혹은 복수의 프로그램을 포함하는, 전자 기기.
  17. 프로그램 코드가 저장되어 있는 컴퓨터 판독가능 저장 매체로서,
    상기 프로그램 코드가 프로세서에 의해 실행될 때, 제1항 내지 제7항 중 어느 한 항에 따른 방법을 수행하는, 컴퓨터 판독가능 저장 매체.
  18. 삭제
  19. 삭제
  20. 삭제
KR1020217018435A 2018-11-27 2019-08-27 비디오 디코딩 제어 방법, 장치, 전자 기기 및 저장 매체 KR102528877B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201811441950.2 2018-11-27
CN201811441950.2A CN109640179B (zh) 2018-11-27 2018-11-27 视频解码控制方法、装置以及电子设备
PCT/CN2019/102906 WO2020107972A1 (zh) 2018-11-27 2019-08-27 视频解码控制方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
KR20210090259A KR20210090259A (ko) 2021-07-19
KR102528877B1 true KR102528877B1 (ko) 2023-05-04

Family

ID=66069648

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217018435A KR102528877B1 (ko) 2018-11-27 2019-08-27 비디오 디코딩 제어 방법, 장치, 전자 기기 및 저장 매체

Country Status (6)

Country Link
US (1) US11456013B2 (ko)
EP (1) EP3883255B1 (ko)
JP (1) JP7186877B2 (ko)
KR (1) KR102528877B1 (ko)
CN (1) CN109640179B (ko)
WO (1) WO2020107972A1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109640179B (zh) * 2018-11-27 2020-09-22 Oppo广东移动通信有限公司 视频解码控制方法、装置以及电子设备
CN110572622B (zh) * 2019-09-30 2021-07-16 威创集团股份有限公司 视频解码方法及装置
CN112287263B (zh) * 2020-10-30 2024-04-02 安徽鸿程光电有限公司 网页显示方法、装置、系统及终端、计算机可读存储介质
CN114143595A (zh) * 2021-12-08 2022-03-04 珠海豹趣科技有限公司 一种视频壁纸播放方法、装置、电子设备及可读存储介质
CN115543699B (zh) * 2022-11-30 2023-02-03 北京麟卓信息科技有限公司 一种基于对象快照的应用透明的自由缩放容错方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120183040A1 (en) * 2011-01-19 2012-07-19 Qualcomm Incorporated Dynamic Video Switching
US20170164041A1 (en) * 2015-12-07 2017-06-08 Le Holdings (Beijing) Co., Ltd. Method and electronic device for playing videos

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6204887B1 (en) 1998-12-11 2001-03-20 Hitachi America, Ltd. Methods and apparatus for decoding and displaying multiple images using a common processor
JP3750846B2 (ja) * 2000-12-22 2006-03-01 日本ビクター株式会社 映像信号記録方法、及び映像信号記録装置
WO2006003852A1 (en) 2004-07-02 2006-01-12 Matsushita Electric Industrial Co., Ltd. Av stream reproducing apparatus, decoder switching method, method program, program storage medium, and integrated circuit
US8614732B2 (en) * 2005-08-24 2013-12-24 Cisco Technology, Inc. System and method for performing distributed multipoint video conferencing
CN101252618B (zh) * 2008-04-09 2011-01-12 嘉兴闻泰通讯科技有限公司 一种实现画中画在手机流媒体中应用的方法
CN102118612B (zh) * 2009-12-31 2012-11-14 Tcl集团股份有限公司 一种音视频硬解码芯片内存资源的获取方法及系统
CN102479108B (zh) * 2010-11-26 2013-09-11 中国科学院声学研究所 一种多应用进程的嵌入式系统终端资源管理系统及方法
US8982942B2 (en) * 2011-06-17 2015-03-17 Microsoft Technology Licensing, Llc Adaptive codec selection
CN103096163B (zh) * 2011-11-01 2015-12-09 中国移动通信集团公司 媒体播放器和媒体文件的播放方法
JP5802953B2 (ja) 2012-03-31 2015-11-04 株式会社アクセル 動画再生処理方法及びその方法を採用した携帯情報端末
US9418397B2 (en) * 2013-10-25 2016-08-16 Harman International Industries, Incorporated Start-up processing task distribution among processing units
CN103716694A (zh) * 2013-12-09 2014-04-09 乐视致新电子科技(天津)有限公司 智能家电、智能家电cpu变频方法及装置
CN105740081A (zh) * 2014-12-12 2016-07-06 华为技术有限公司 客户端、usb设备及显示处理系统和方法
US9785442B2 (en) * 2014-12-24 2017-10-10 Intel Corporation Systems, apparatuses, and methods for data speculation execution
JP2016171383A (ja) 2015-03-11 2016-09-23 株式会社リコー 情報端末、画像表示システム及びプログラム
CN104796768A (zh) * 2015-04-17 2015-07-22 苏州健雄职业技术学院 一种基于omap硬解码加速的嵌入式高清媒体播放器及其操作方法
CN104837058A (zh) * 2015-05-06 2015-08-12 湖南昇云科技有限公司 提高云终端播放视频图像质量的方法与系统
CN105898496A (zh) * 2015-11-18 2016-08-24 乐视网信息技术(北京)股份有限公司 基于Android设备的HLS流硬解码方法及装置
CN105872755A (zh) * 2015-12-07 2016-08-17 乐视云计算有限公司 视频播放方法及装置
CN105898320A (zh) * 2015-12-09 2016-08-24 乐视网信息技术(北京)股份有限公司 基于安卓平台的全景视频的解码方法、装置及终端设备
CN105721921B (zh) * 2016-01-29 2019-07-12 四川长虹电器股份有限公司 一种多窗口视频解码器的自适应选择方法
CN105933724A (zh) 2016-05-23 2016-09-07 福建星网视易信息系统有限公司 视频制作方法、装置及系统
CN106231051B (zh) * 2016-08-01 2020-04-03 腾讯科技(深圳)有限公司 一种视频解码的测试方法及相关设备
CN106210726A (zh) * 2016-08-08 2016-12-07 成都佳发安泰科技股份有限公司 根据cpu与gpu的使用率对视频数据进行自适应解码的方法
CN106331822B (zh) * 2016-08-26 2020-02-07 北京金山安全软件有限公司 一种播放多视频的方法、装置及电子设备
CN106484537B (zh) * 2016-09-30 2019-07-19 网易(杭州)网络有限公司 一种cpu核资源的分配方法和设备
CN106658107A (zh) 2016-11-29 2017-05-10 北京航天爱威电子技术有限公司 多路多模式图像显示方法
CN106792066A (zh) * 2016-12-20 2017-05-31 暴风集团股份有限公司 优化的视频解码播放的方法及系统
CN107087231B (zh) * 2017-03-31 2021-03-05 北京潘达互娱科技有限公司 视频数据播放方法及装置
CN109640179B (zh) * 2018-11-27 2020-09-22 Oppo广东移动通信有限公司 视频解码控制方法、装置以及电子设备

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120183040A1 (en) * 2011-01-19 2012-07-19 Qualcomm Incorporated Dynamic Video Switching
US20170164041A1 (en) * 2015-12-07 2017-06-08 Le Holdings (Beijing) Co., Ltd. Method and electronic device for playing videos

Also Published As

Publication number Publication date
EP3883255A1 (en) 2021-09-22
JP2022509191A (ja) 2022-01-20
US20210287715A1 (en) 2021-09-16
CN109640179A (zh) 2019-04-16
KR20210090259A (ko) 2021-07-19
EP3883255A4 (en) 2022-03-16
JP7186877B2 (ja) 2022-12-09
EP3883255B1 (en) 2024-01-31
CN109640179B (zh) 2020-09-22
WO2020107972A1 (zh) 2020-06-04
US11456013B2 (en) 2022-09-27

Similar Documents

Publication Publication Date Title
KR102528877B1 (ko) 비디오 디코딩 제어 방법, 장치, 전자 기기 및 저장 매체
AU2020201023B2 (en) Adaptive transfer function for video encoding and decoding
US20210216199A1 (en) Video Enhancement Control Method, Electronic Apparatus and Storage Medium
US11627369B2 (en) Video enhancement control method, device, electronic device, and storage medium
US20210281718A1 (en) Video Processing Method, Electronic Device and Storage Medium
KR102558385B1 (ko) 비디오 증강 제어 방법, 장치, 전자 기기 및 저장 매체
CN109120988B (zh) 解码方法、装置、电子设备以及存储介质
WO2017202175A1 (zh) 一种视频压缩方法、装置及电子设备
CN109618228B (zh) 视频增强控制方法、装置以及电子设备
US11562772B2 (en) Video processing method, electronic device, and storage medium
CN109587561B (zh) 视频处理方法、装置、电子设备及存储介质
CN109587555B (zh) 视频处理方法、装置、电子设备及存储介质
WO2020107970A1 (zh) 视频解码方法、装置、电子设备及存储介质
CN109120979B (zh) 视频增强控制方法、装置以及电子设备
CN109819187B (zh) 视频录制的控制方法、装置、移动终端及存储介质
CN109218803B (zh) 视频增强控制方法、装置以及电子设备
CN109712100B (zh) 视频增强控制方法、装置以及电子设备
KR20140019218A (ko) 컨텐츠에 대한 영상 후처리를 위한 디스플레이 장치, 영상 후처리 장치 및 방법

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right