KR20140010337A - 전자기기 및 그 제어방법 - Google Patents

전자기기 및 그 제어방법 Download PDF

Info

Publication number
KR20140010337A
KR20140010337A KR1020130058380A KR20130058380A KR20140010337A KR 20140010337 A KR20140010337 A KR 20140010337A KR 1020130058380 A KR1020130058380 A KR 1020130058380A KR 20130058380 A KR20130058380 A KR 20130058380A KR 20140010337 A KR20140010337 A KR 20140010337A
Authority
KR
South Korea
Prior art keywords
frame
video frame
touch
mode
video
Prior art date
Application number
KR1020130058380A
Other languages
English (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 EP13003523.1A priority Critical patent/EP2687969A3/en
Priority to US13/943,434 priority patent/US20140016910A1/en
Publication of KR20140010337A publication Critical patent/KR20140010337A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0354Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 2D relative movements between the device, or an operating part thereof, and a plane or surface, e.g. 2D mice, trackballs, pens or pucks
    • G06F3/03547Touch pads, in which fingers can move on a surface
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/005Reproducing at a different information rate from the information rate of recording

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Television Signal Processing For Recording (AREA)

Abstract

본 발명은 터치제어를 기반으로 전자기기 및 그 제어방법에 대한 것이다. 상기 전자기기는 사용자로부터 터치입력을 수신하고 터치신호를 생성하는 터치감지 모듈; 비디오 데이터의 비디오 프레임에 대한 시간 정보 및 오프셋 정보의 인덱스 목록을 저장하는 인덱서; 상기 터치입력의 터치속도, 터치길이 및 터치방향에 따라 비디오 프레임 로컬라이제이션 모드를 결정하고, 표시할 비디오 프레임의 시간 정보 및 프레임 레이트를 산출하고, 푸셔, 디코더, 프레임 버퍼 제어부의 제어신호를 출력하는 제어부; 상기 인덱스 목록을 기반으로 상기 비디오 프레임의 오프셋 정보를 획득하고, 상기 오프셋 정보에 따라 비디오 프레임 데이터를 독취하며, 상기 독취한 비디오 프레임 데이터를 상기 디코더로 푸시하는 푸셔; 디코딩할 상기 비디오 프레임 데이터의 버퍼열을 유지하고, 상기 버퍼열 내의 비디오 프레임 데이터를 디코딩하며, 디코딩한 비디오 프레임 데이터를 상기 프레임 버퍼 제어부로 푸시하는 디코더; 및 상기 디코딩한 비디오 프레임 데이터를 저장하고, 현재 비디오 프레임의 시간 정보 및 프레임 레이트에 따라 상기 현재 비디오 프레임을 표시할 시점을 결정하는 프레임 버퍼 제어부를 포함하는 것을 특징으로 한다.

Description

전자기기 및 그 제어방법 {ELECTRONIC APPARATUS AND CONTROL METHOD OF THE SAME}
본 발명은 전자기기 및 그 제어방법에 관한 것으로서, 보다 상세하게는 터치제어를 기반으로 하는 전자기기 및 그 제어방법에 관한 것이다.
최근 비디오 재생 기술에서, 비디오 재생의 제어는 일반적으로 버튼이 구비된 리모콘을 통해 이루어지고 있다. 종래의 DVD 플레이어나 TV용 리모콘은 일반적으로 재생, 멈춤, 일시 정지, 고속 앞으로 감기, 고속 되감기, 저속 앞으로 감기, 저속 되감기 등과 같은 다양한 버튼을 포함하여 사용자의 요구를 충족시킨다. 터치 스크린을 포함하는 리모콘 및 전자장치가 많이 이용되면서, 터치제어를 기반으로 신속하게 비디오 프레임의 위치를 찾아낼 수 있는 기술의 발전이 필요한 실정이다. 터치 스크린을 포함하는 일반 소형 멀티미디어 장치에 있어서, 비디오 프레임을 로컬라이제이션하는 방법으로 다음과 같은 두 가지 방법이 있다. 첫째는, 비디오 재생을 위한 인터페이스 내의 슬라이더를 특정한 시점으로 드래그한 후 특정한 시점에 비디오 프레임의 위치를 찾는 방식이다. 두 번째는 전체 시간 축에서 시간 간격을 갖는 썸네일을 생성하고, 생성된 썸네일 중 특정 썸네일을 터치하고, 특정 썸네일에 집중돼 있는 보다 미세한 조각을 포함하는 비디오 프레임의 썸네일 시퀀스를 생성하여, 썸네일 시퀀스 중 비디오 프레임의 하나의 썸네일 위치를 찾는 것이다.
그러나, 종래 기술에 따르면, 터치제어를 기반으로 한 비디오 로컬라이제이션의 기술적 해결방안은 터치 스크린이 터치 스크린 상 터치 동작의 속도 및 길이를 감지할 수 있다는 점과 관련하여 터치 스크린을 충분히 이용하지 못했다. 이에 따라, 터치 신호를 제어신호로 변환하는 것은 사용자 인터페이스 및 비디오 제어기술을 향상시키는데 있어 매우 중요하다. 종래 기술의 일반적인 해결 방안으로 다양한 제어 키 및 프로그래스바를 그래픽 사용자 인터페이스로 표시하면, 사용자가 비디오를 제어하기 위해 제어 키를 클릭하거나 드래그하는 방법이 있다. 이러한 방법은 터치 동작의 속도신호를 사용하지 않을 뿐 아니라, 터치포인트가 고정되어 사용자 인터페이스 친화성을 감소시킨다.
본 발명의 실시예에 따르면 상기한 문제점 및 그 밖의 문제점을 해결할 수 있다. 본 발명은 비디오의 관심부분을 신속하게 파악하기 위해 터치스크린 상의 터치동작 길이, 속도 및 방향을 획득하고, 비디오의 현재 재생 상태를 고려하여 비디오 재생모드를 동적으로 변경할 수 있다. 이러한 목적을 구현하기 위해, 본 발명은 터치신호를 수신하고, 비디오 프레임 인덱스 목록에 대한 정보를 확인하여 관련 프레임의 파일 오프셋을 획득한 후, 표시될 비디오 프레임 데이터 시퀀스를 산출하고, 상기 비디오 프레임 데이터를 디코더에 이송한 후 상기 디코더에 의해 디코딩된 비디오 프레임 데이터를 소정 프레임 레이트로 표시될 프레임 버퍼 제어부로 이송한다.
본 발명의 일 측면에 따르면, 터치제어를 기반으로 하는 전자기기에 있어서,
사용자로부터 터치입력을 수신하고 터치신호를 생성하는 터치감지 모듈; 비디오 데이터의 비디오 프레임에 대한 시간 정보 및 오프셋 정보의 인덱스 목록을 저장하는 저장부; 및 상기 터치입력의 터치속도, 터치길이 및 터치방향에 따라 비디오 프레임 로컬라이제이션 모드를 판단하고, 표시할 비디오 프레임의 시간 정보 및 프레임 레이트를 산출하여, 상기 산출된 비디오 프레임의 시간 정보 및 상기 인덱스 목록에 기초하여 표시할 비디오 프레임의 오프셋 정보를 획득하고, 상기 획득된 오프셋 정보에 따라 비디오 프레임 데이터를 디코딩하여, 상기 산출된 시간 정보 및 프레임 레이트에 따라 상기 디코딩된 비디오 프레임을 표시하도록 제어하는 제어부를 포함하는 것을 특징으로 하는 전자기기가 제공된다.
또한, 상기 전자기기는, 상기 제어부가 산출한 시간 정보 및 상기 인덱스 목록에 기초하여 상기 표시할 비디오 프레임의 오프셋 정보를 획득하고, 상기 오프셋 정보에 따라 상기 비디오 프레임 데이터를 독취하며, 상기 독취한 비디오 프레임 데이터를 상기 디코더로 푸시하는 푸셔; 디코딩할 상기 비디오 프레임 데이터의 버퍼큐를 유지하고, 상기 버퍼큐 내의 비디오 프레임 데이터를 디코딩하며, 디코딩한 비디오 프레임 데이터를 상기 프레임 버퍼 제어부로 푸시하는 상기 디코더; 및 상기 디코딩한 비디오 프레임 데이터를 저장하고, 현재 비디오 프레임의 시간 정보 및 프레임 레이트에 따라 상기 현재 비디오 프레임을 표시할 시점을 결정하는 프레임 버퍼 제어부를 더 포함할 수 있다.
또한, 상기 비디오 프레임 로컬라이제이션 모드는 감쇠효과가 있는 고속 앞으로 감기 모드, 감쇠효과가 있는 고속 되감기 모드 및 프레임 별 검색 모드를 포함할 수 있다.
또한, 상기 푸셔는 각 터치동작에 대한 비디오 프레임 데이터의 푸시 스레드를 생성하여 상기 디코더로 비디오 프레임 데이터를 선택적으로 푸시할 수 있다.
또한, 상기 디코더는 상기 푸셔에 의해 푸시된 상기 비디오 프레임 데이터를 선택적으로 디코딩할 수 있다.
또한, 상기 프레임 버퍼 제어부는 적절한 시간 내에 원활하게 이행되지 못하는 비디오 프레임 데이터를 필터링할 수 있다.
또한, 상기 제어부는 고속 앞으로 감기 모드에서 전자기기의 동작모드를 화상 집합(GOP)의 키프레임만 디코딩되는 키프레임 전용 모드로 설정하고, 상기 키프레임 전용 모드에서 상기 제어부는 프레임 레이트를 고정값으로 설정하며, 다음과 같은 식에 따라 화면에서 표시할 키 프레임의 시점을 산출할 수 있다.
N=nTouchLength/nTouchVelocity,
Xn =1...N=Xn -1+(N-n)*nTouchVelocity*nTouchWeight
여기서, nTouchVelocity는 터치속도, nTouchLength는 터치시간, nTouchWeight는 터치제어를 조절하기 위한 가중치, Xn =1...N은 상기 시점, 그리고 X0는 고속 앞으로 감기가 시작되는 시점을 의미한다.
또한, 상기 제어부는 고속 앞으로 감기 모드에서 비디오 프레임 로컬라이제이션 장치의 동작모드를 화상 집합(GOP) 내의 모든 프레임이 디코딩되는 풀 디코딩 모드로 설정하고, 상기 프레임 레이트를 다음과 같은 식에 따라 설정할 수 있다.
StartRateFulln=FR*(1+n/N),
EndRateFulln=FR*(2-n/N))
여기서, StartRateFulln은 상기 터치동작 시작시의 프레임 레이트, EndRateFulln은 상기 터치동작 종료시의 프레임 레이트, FR은 정상적인 재생시의 프레임 레이트, N은 풀 디코딩 모드에서 감쇠효과가 있StartRateFulln는 프레임 개수를 의미한다.
또한, 상기 제어부는, 상기 비디오 프레임 로컬라이제이션 모드를 프레임 별 앞으로 감기로 판단하면, 상기 프레임 버퍼 제어부 내에서 증가시킬 프레임의 개수를 고정값으로 설정하며, 상기 모드를 프레임 별 되감기로 판단하면, 상기 프레임 버퍼 제어부 내에서 증가시킬 프레임 개수가 GOP 내의 모든 프레임에 의해 증가되도록 제어할 수 있다.
또한, 상기 제어부는, 상기 고속 되감기 모드에서, (Icount+Pcount+1)*Iresolution<FrameBufferSize의 조건이 충족되지 못하는 것으로 판단하면, 상기 디코더가 가능한 많은 GOP 내 비디오 프레임을 디코딩하도록 제어하며, 여기서 Icount는 GOP 내 I 프레임 개수, Pcount는 GOP 내 P 프레임 개수, '1'은 B프레임, Iresolution는 I 프레임이 해상도, FrameBufferSize는 상기 프레임 버퍼 제어부의 메모리 크기를 의미한다.
본 발명의 일 측면에 따르면, 터치제어를 기반으로 하는 전자기기의 제어방법에 있어서, (a) 사용자로부터 터치입력을 수신하고 터치신호를 생성하는 단계; (b) 상기 터치입력의 터치속도, 터치길이 및 터치방향에 따라 비디오 프레임 로컬라이제이션 모드를 판단하고, 표시할 비디오 프레임의 시간 정보 및 프레임 레이트를 산출하는 단계; (c) 인덱스 목록을 기반으로 상기 비디오 프레임의 오프셋 정보를 획득하고, 상기 오프셋 정보에 따라 비디오 프레임 데이터를 독취하며, 상기 독취한 비디오 프레임 데이터를 디코딩하기 위해 푸시하는 단계; (d) 디코딩할 상기 비디오 프레임 데이터의 버퍼 큐를 유지하고, 상기 버퍼 큐 내의 비디오 프레임 데이터를 디코딩하는 단계; 및 (e) 상기 디코딩한 비디오 프레임 데이터를 저장하고, 현재 비디오 프레임의 시간 정보 및 프레임 레이트에 따라 상기 현재 비디오 프레임을 표시할 시점을 결정하는 단계를 포함하는 것을 특징으로 하는 전자기기의 제어방법이 제공된다.
또한, 상기 비디오 프레임 로컬라이제이션 모드는 감쇠효과가 있는 고속 앞으로 감기 모드, 감쇠효과가 있는 고속 되감기 모드 및 프레임 별 검색 모드 중 하나를 포함할 수 있다.
또한, 상기 단계 (c)에서, 비디오 프레임 데이터의 푸시 스레드는 각 터치동작에 대해 생성되고, 비디오 프레임 데이터는 선택적으로 디코더로 푸시될 수 있다.
또한, 상기 단계 (d)에서, 단계(c)에서 푸시된 상기 비디오 프레임 데이터를 선택적으로 디코딩할 수 있다.
또한, 상기 단계 (e)에서, 적절한 시간 내에 원활하게 이행되지 못하는 비디오 프레임 데이터를 필터링할 수 있다.
또한, 상기 단계 (b)에서 고속 앞으로 감기 모드로 판단되면, 상기 프레임 레이트는 고정 값으로 설정되고, 단계 (d)에서는 화상 집합(GOP)의 키프레임만 디코딩하고, 화면에서 표시할 키 프레임의 시점은 다음과 같은 식에 따라 산출될 수 있다.
N=nTouchLength/nTouchVelocity,
Xn =1...N=Xn -1+(N-n)*nTouchVelocity*nTouchWeight
여기서, nTouchVelocity는 터치속도, nTouchLength는 터치시간, nTouchWeight는 터치제어를 조절하기 위한 가중치, Xn =1...N은 상기 시점, 그리고 X0는 고속 앞으로 감기가 시작되는 시점을 의미한다.
또한, 고속 앞으로 감기 모드에서 상기 프레임 레이트는 단계 (b)에서 변동 값으로 설정되고, 단계 (d)에서 화상 집합(GOP) 내의 모든 프레임이 디코딩되고, 상기 프레임 레이트는 다음과 같은 식에 따라 설정될 수 있다.
StartRateFulln=FR*(1+n/N),
EndRateFulln=FR*(2-n/N))
여기서, StartRateFulln은 상기 터치동작 시작시의 프레임 레이트, EndRateFulln은 상기 터치동작 종료시의 프레임 레이트, FR은 정상적인 재생시의 프레임 레이트, N은 풀 디코딩 모드에서 감쇠효과가 있는 프레임 개수를 의미한다.
또한 상기 단계 (b)에서 상기 모드가 프레임 별 앞으로 감기로 판단되면, 버퍼링된 프레임 개수가 기설정된 개수만큼 증가하도록 제어되며, 상기 모드가 프레임 별 되감기로 판단되면, 상기 버퍼링된 프레임 개수가 GOP 내 모든 프레임에 의해 증가하도록 제어할 수 있다.
또한, 상기 단계 (b)에서 고속 되감기 모드로 판단한 경우, 상기 (Icount+Pcount+1)*Iresolution<FrameBufferSize의 조건이 충족되지 않으면, 단계(d)에서 가능한 많은 GOP 내 비디오 프레임을 디코딩하도록 제어하며, 여기서 Icount는 GOP 내 I 프레임 개수, Pcount는 GOP 내 P 프레임 개수, '1'은 B프레임, Iresolution는 I 프레임이 해상도, FrameBufferSize는 상기 프레임 버퍼 제어부의 메모리 크기를 의미한다.
상기한 바와 같이 본 발명에 따르면, 비디오의 관심부분을 신속하게 파악하기 위해 터치스크린 상의 터치동작 길이, 속도 및 방향을 획득하고, 비디오의 현재 재생 상태를 고려하여 비디오 재생모드를 동적으로 변경할 수 있으며, 이를 위하여, 터치신호를 수신하고, 비디오 프레임 인덱스 목록에 대한 정보를 확인하여 관련 프레임의 파일 오프셋을 획득한 후, 표시될 비디오 프레임 데이터 시퀀스를 산출하고, 상기 비디오 프레임 데이터를 디코더에 이송한 후 상기 디코더에 의해 디코딩된 비디오 프레임 데이터를 소정 프레임 레이트로 표시될 프레임 버퍼 제어부로 이송한다.
도 1은 본 발명의 실시예에 따른 터치제어 기반의 전자기기의 블록도,
도 2는 본 발명의 실시예에 따른 전자기기의 감쇠효과가 있는 고속 앞으로 감기 모드를 도시하는 흐름도,
도 3은 본 발명의 실시예에 따른 전자기기의 감쇠효과가 있는 고속 앞으로 감기 모드에서의 비디오 프레임 시퀀스를 도시하며,
도 4는 본 발명의 실시예에 따른 전자기기의 감쇠효과가 있는 고속 되감기 모드에서의 비디오 프레임 시퀀스를 도시하며,
도 5는 본 발명의 실시예에 따른 전자기기의 역방향 풀 디코딩 모드에서의 화상 집합의 프레임 시퀀스를 도시하며,
도 6은 본 발명의 실시예에 따른 전자기기의 프레임 별 모드에서의 비디오 프레임 시퀀스를 도시하며,
도 7은 본 발명의 실시예에 따른 전자기기의 프레임 별 모드에서의 비디오 프레임 치환을 위한 법칙을 도시하며,
도 8은 본 발명의 실시예에 따른 전자기기의 프레임 별 모드의 흐름도를 도시한다.
이하, 첨부도면을 참조하여 본 발명의 실시예에 대해 보다 상세히 설명한다. 하기의 실시예는 본 발명의 바람직한 예시로 제시된 것이며, 본 발명의 사상에 따라 다양하게 변형경될 수 있다.
도 1에 도시된 바와 같이, 본 발명의 일 실시예에 따르면, 전자기기(100)는 터치감지 모듈(110), 제1저장부(120), 푸셔(130), 디코더(140), 프레임 버퍼 제어부(150), 제2저장부(160), 렌더부(170) 및 제어부(180)를 포함한다.
터치감지 모듈(110)은, 디스플레이 기능과 터치스크린 기능이 통합된 전자기기의 터치스크린으로서, 예를 들면, 휴대폰, 뮤직 플레이어 TV 등의 터치스크린과, 터치센서만 포함하는 것으로서 예를 들면 PC용 터치패드, TV용 터치기반 리모콘 등에 포함된다.
터치감지 모듈(110)은 사용자의 터치동작을 감지할 수 있고, 터치신호를 생성하여 제어부(180)로 전송한다. 이 때, 터치신호는 터치동작의 터치속도, 터치길이(touch length) 및 터치방향에 대한 정보를 포함한다. 제어부(180)는 사용자가 터치동작의 터치속도, 터치길이 및 터치방향에 따라 비디오의 위치를 찾아내고자 하는 모드를 판단하고, 표시하고자 하는 비디오 프레임의 시간 정보 및 프레임 레이트를 산출한다. 여기서, 본 발명에 따르면, 감쇠효과(damping effect)가 있는 고속 앞으로 감기 모드, 감쇠효과가 있는 고속 되감기 모드 및 프레임 별 모드(frame-by-frame mode) 가 구현될 수 있다. 상기 시간 정보는 비디오 프레임의 타임 스탬프일 수 있다.
제1저장부(120)는 비디오 데이터의 비디오 프레임에 대한 시간 정보 및 오프셋 정보의 인덱스 목록을 저장한다. 고속 비디오 로컬라이제이션에 있어서 고성능 요구로 인해, 상기 전자기기에 의해 위치가 파악되는 비디오 데이터의 해당 키 프레임의 인덱스 목록이 존재해야 한다. 이처럼, 상기 시간 정보에 대응하는 키 프레임의 오프셋 정보는 제1저장부(120)의 인덱스 목록을 통해 신속하게 획득될 수 있다.
제어부(180)는 표시할 비디오 프레임의 시간 정보 및 프레임 레이트를 산출하여, 시간 정보를 푸셔(130)에 전송한다. 푸셔(130)는 상기 저장된 인덱스 목록으로부터 타임 스탬프에 대응하는 비디오 프레임의 오프셋을 검색하고, 상기 오프셋에 따라 제2저장부(160)에서 해당 비디오 프레임 데이터를 독취한 후, 독취한 비디오 프레임 데이터를 디코더(140)에 푸시(push)한다. 터치스크린을 미는 사용자의 터치동작과 관련하여, 푸셔(130)는 푸시 스레드(push thread)를 생성하여 각각의 터치동작에 의해 구분되는 데이터 흐름을 디코더(140)에 선택적으로 푸시하도록 할 수 있다. 상기 비디오 프레임 데이터가 디코더(140)에 푸시되기 전, 푸셔(130)는 원활한 이행 원칙에 따라 상기 비디오 프레임 데이터 중 디코더(140)에 푸시하지 않아도 되는 일부를 폐기할 수 있다. 비디오 로컬라이제이션을 위한 검색과정이 종료되면, 푸셔(130)는 정상적인 재생을 위해 푸시 모드로 돌아간다.
디코더(140)는 디코딩할 비디오 프레임 데이터의 버퍼큐(buffer queue)를 유지하고, 상기 버퍼큐 내의 비디오 프레임 데이터를 디코딩하여, 디코딩한 비디오 프레임 데이터를 프레임 버퍼 제어부(150)로 전송한다. 상기 버퍼큐 내의 비디오프레임 데이터의 기본 단위는 화상집합 (GOP: group of pictures)이다. 상기 GOP는 하나의 키 프레임 데이터만 포함하거나, 전체 GOP 데이터를 포함할 수 있다. 상기 버퍼큐는 디코딩할 각 푸시 스레드로 보낼 비디오 데이터일 수 있다. 디코더(140)는 디코딩 속도를 조절하여 상기 비디오 프레임 데이터가 디코딩 성능이 최대가 되는 디코딩 속도 이하로 디코딩되지 않도록 하는 한편, 상기 디코딩된 비디오 프레임 데이터가 비디오 로컬라이제이션 요건을 충족하여 표시될 수 있도록 디코딩한다. 디코더(140)는 상기 디코딩된 비디오 프레임 데이터가 프레임 버퍼 제어부(150)에 의해 폐기되지 않도록 해야 한다. 반면, 디코딩된 비디오 프레임 데이터가 너무 많으면, 메모리 자원이 대량으로 소비되고 디코더(140)의 반응 속도도 감소할 것이다. 즉, 디코더(140)는 원활한 이행 원칙에 따라 푸셔(130)에 의해 푸시된 비디오 프레임 데이터를 선택적으로 디코딩한다.
프레임 버퍼 제어부(150)는 시스템 시간과 비교하고, 상기 원활한 이행 원칙에 기반하여 제어부(180)가 산출한 현재 비디오 프레임의 시간 정보 및 프레임 레이트에 따라 현재 비디오 프레임이 표시될 시점을 결정한다. 프레임 버퍼 제어부(150)는 디코딩되었으나 원활한 이행 원칙을 따르지 않는 비디오 프레임 데이터를 폐기한다.
또한, 제어부(180)는 표시할 비디오 프레임에 대한 시간 정보 및 프레임 레이트 산출을 제외한 푸셔(130), 디코더(140) 및 프레임 버퍼 제어부(150)의 동작을 제어하기 위해 제어정보를 출력할 수 있다. 예를 들면, 푸셔(130)로 출력되는 제어정보는 키 프레임에 대한 정보 및 터치동작이 신규인지를 나타내는 정보를 포함하고, 상기 디코더(140)로 출력되는 제어정보는 디코딩 모드 및 디코딩 시작/끝을 나타내는 정보를 포함하고, 프레임 버퍼 제어부(150)로 출력되는 제어정보는 비디오 프레임을 표시하는 속도, 디스플레이 모드, 프레임 별 풀 디코딩 모드(fame-by-frame full decoding mode)에서 앞으로 감기 단계 길이 등에 대한 정보를 포함할 수 있다.
제2저장부(160)는 상기 비디오 데이터를 저장하기 위해 사용된다. 렌더부(170)는 비디오 데이터를 렌더링하기 위해 사용된다. 본 발명의 제2저장부(160) 및 렌더부(170)는 종래의 저장부 및 렌더부로 구현될 수 있다. 또한 저장부 및 렌더부가 본 실시예에 따른 전자기기의 다른 구성요소와 함께 동일한 장치 내에 구현될 수도 있지만, 상기 전자기기와 별도로 구현될 수도 있다.
이하, 도 2 내지 6을 참조하여 본 실시예에 따른 전자기기의 동작 방법에 대해 상세히 설명한다. 하기 설명에서는 비디오 로컬라이제이션의 세 가지 모드인 감쇠효과가 있는 고속 앞으로 감기, 감쇠효과가 있는 고속 되감기 및 프레임 별 검색에 대해 기술한다. 그러나 본 발명이 이러한 세 가지 방식에 제한되는 것은 아니다.
도 2는 본 발명의 실시예에 따른 전자기기에서, 감쇠효과가 있는 고속 앞으로 감기 모드를 도시하는 흐름도이고, 도 3은 본 발명의 실시예에 따른 전자기기에서 감쇠효과가 있는 고속 앞으로 감기 모드에서의 비디오 프레임 시퀀스를 도시한다.
사용자가 계속해서 터치스크린 또는 터치패드에 접촉하면, 터치감지 모듈(110)은 계속해서 대응하는 터치신호를 생성하는데, 각각의 터치신호는 터치속도, 터치길이(touch length) 및 터치방향이라는 세 개의 값을 포함한다. 본 실시예에서, 사용자가 터치스크린 상에서 계속 오른쪽으로 밀면, 제어부(180)는 상기 터치감지 모듈(110)에서 전달된 터치신호를 통해 사용자가 고속 앞으로 감기 동작을 수행하고자 한다고 판단할 수 있다(S210). 그러면, 단계 S220에서는 제어부(180)는 화면에 표시될 비디오 프레임의 시점(time point)을 산출한다. 고속 앞으로 감기 시작 단계에서는 키 프레임만이 표시될 수 있다. 키 프레임의 시점은 하기의 식 (1) 및 (2)에 따라 산출될 수 있다.
[식 1]
N=nTouchLength/nTouchVelocity,
[식 2]
Xn =1...N=Xn -1+(N-n)*nTouchVelocity*nTouchWeight
여기서, nTouchvelocity는 터치속도, nTouchLength는 터치길이, 그리고 nTouchWeight는 터치동작의 단계 길이(step length)를조절하기 위한 가중치를 의미한다. 본 발명의 일 실시예에 따르면, 고속 앞으로 감기가 시작되기 전, 사용자는 터치제어를 위한 가중치를 조절하기 위해 터치스크린을 누르고 위 아래로 움직일 수 있고, 가중치 값은 고속 앞으로 감기 속도에 영향을 미칠 수 있다. 즉, 동일한 터치길이에 대해 가중치가 높을수록 고속으로 앞으로 감기가 수행된다. 이처럼, 장시간의 비디오를 고속으로 앞으로 감게 되는 경우, nTouchWeight가 다양하게 설정됨으로써 글로벌 검색 및 로컬 검색 사이의 전환이 이루어질 수 있다. 식 (1)에서, N은 화면에 표시할 프레임의 개수를 의미한다. 식 (2)에서, Xn =1...N은 시점을 의미하며, X0는 고속 앞으로 감기가 시작되는 시점을 의미한다. 도 3에 도시된 바와 같이, 제1 내지 제4 키 프레임의 시점은 각각 1:00, 01:30, 01:45 및 01:50이고, 1:51 시점 이후의 16개의 프레임(음영으로 표시)이 정상 속도의 2배속(2x 속도)으로 완전히 디코딩된다. 이후, 프레임은 정상 속도로 디코딩된다. 상기한 바와 같은 방식으로 감쇠효과가 있는 고속 앞으로 감기가 구현될 수 있다. 즉, 감쇠효과는 비디오 프레임에서 특정 비디오 프레임을 추출하여 수행될 수 있다.
또한, 제어부(180)가 고속 앞으로 감기 동작이 연속적으로 높은 빈도로 수행됨을 나타내는 신호를 수신하면, 이는 사용자가 비디오의 한 부분을 생략하기 원한다는 의미이다. 그러면, 제어부(180)는 각각의 터치동작에 의해 생략될 수 있는 기간을 늘리기 위해 Xn의 단계 길이(step length)를 증가시킬 수 있다. 이러한 목표는nTouchWeight를 조절함으로써 구현될 수 있다.
다음, 제어부(180)가 표시할 비디오 프레임의 시점을 산출한 후, 단계 S230에서는 비디오 프레임에 대한 시간 정보가 푸셔(130)로 전송되어, 푸셔(130)가 상기 저장된 인덱스 목록을 기반으로 상기 비디오 프레임의 오프셋 정보를 획득하고, 오프셋 정보에 따라 비디오 프레임 데이터를 독취하여, 상기 디코더(140)로 독취한 비디오 프레임 데이터를 푸쉬한다. 여기서, 상기 푸셔(130)는 정상적인 재생을 위해 우선 풀 디코딩 버퍼(도시 안됨) 내의 데이터를 비우고, 디코더(140)가 디코딩할 데이터를 획득하는 신규 스레드를 생성한다. 신규 스레드는 프레임에 대한 시간 정보를 제1저장부(120)로 이송하며, 제1저장부(120)는 프레임의 오프셋 및 크기를 반납한다. 상기에서 설명한 단계는 다음과 같은 식 (3)과 (4)에 의해 표현될 수 있다.
[식 3]
FrameOffset = Foffset(Xn)
[식 4]
FrameSize = Fsize(Xn)
FrameOffset은 파일 내의 비디오 프레임의 오프셋을 의미하고, FrameSize는 비디오 프레임의 크기를 의미한다. 구체적인 알고리즘은 제1저장부(120) 내 키 프레임 저장 방식에 따라 다르다. 푸셔(130)가 비디오 프레임 데이터를 획득하면, 상기 데이터를 신규 스레드에 의해 유지되는 프레임 데이터 목록에 넣는다. 디코더(140)가 데이터를 요구하면, 상기 신규 스레드에서 프레임을 추출한다.
그 후, 단계 S240에서는, 디코더(140)가 상기 비디오 프레임 데이터를 디코딩하여 디코딩한 비디오 프레임 데이터를 프레임 버퍼 제어부(150)에 넣는다. 각각의 슬라이딩 동작은 신규 스레드에 해당하며, 각각의 신규 스레드는 버퍼링된 프레임 데이터 목록을 유지한다. 상기 디코딩된 프레임 데이터는 이러한 목록에서 삭제되어, 디코더(140)가 디코딩할 다음 데이터가 각 목록의 최상부에 위치한다. 디코더(140)가 두 개 이상의 목록이 존재한다는 것을 파악하면, 각 목록의 최상부에 위치한 프레임의 시점을 서로 비교한다. 일반적으로 이전 목록에 해당하는 슬라이딩 동작의 시점은 이후 목록에 해당하는 슬라이딩 동작의 시점 보다 앞선다. 디코더(140)가 이후 목록의 최상부에 위치한 비디오 프레임의 시점이 이전 목록의 비디오 프레임 시점보다 앞선다는 것을 발견하면, 디코더(140)는 이후 목록의 데이터를 독취하여 푸셔(130)에게 상기 이전 목록의 데이터를 삭제할 것을 통지하는데, 이는 이후 시점의 비디오 프레임이 이전 시점의 비디오 프레임보다 먼저 표시되지 않도록 하기 위함이다. 고속 앞으로 감기 모드의 모든 키 프레임이 디코딩 되면, 푸셔(130)는 정상적인 재생을 하는 푸시 모드로 복귀한다.
마지막으로, 단계 S250에서는, 프레임 버퍼 제어부(150)가 디코딩한 비디오 프레임 데이터를 저장하고, 현재 비디오 프레임에 대한 시간 정보 및 프레임 레이트에 따라 현재 비디오 프레임을 표시할 시점을 결정한다. 상기 프레임 버퍼 제어부(150)는 이미 디코딩되었으나 원활한 이행 원칙을 따르지 않는 비디오 프레임을 폐기할 수 있다.
특히, 디코더(140)는 상기 디코딩한 비디오 프레임 데이터를 프레임 버퍼 제어부(150)로 푸시한다. 프레임 버퍼 제어부(150)는 프로그램 타임 스템프(Program Time Stamp: PTS)로 표시된 디코딩된 비디오 프레임 큐를 유지한다. 상기 큐의 프레임 간 간격이 커지고 프레임 간 최소 간격이 최대 프레임 간격보다 작으면, 프레임 버퍼 제어부(150)는 간격이 최소인 프레임 중 최후 프레임을 삭제한다. 삭제 후에도 간격이 과도하게 작은 비디오 프레임이 존재하면, 이러한 프레임도 추가적으로 삭제된다. 이렇게 함으로써, 프레임 간의 간격이 수월해진다. 삭제단계는 다음과 같은 식 (5)로 표현될 수 있다.
[식 5]
Interx=Fx-Fx -1 < maxn =1...N(Fn-Fn -1)/2
여기서, Fx는 시퀀스 번호가 x인 프레임의 PTS를 의미하고, Interx는 시퀀스 번호가 x인 프레임과 이 프레임 이전의 프레임 사이의 간격을 의미한다. 본 발명에 따른 비디오 로컬라이제이션 장치는 두 가지 모드, 즉 오직 I 프레임만 디코딩하는 모드 (I 프레임 디코딩 모드)와 모든 프레임을 디코딩하는 모드 (풀 디코딩 모드)로 동작할 수 있다. 제어부(180)는 두 가지 모드 중 하나로 동작모드를 설정한다. I 프레임 디코딩 모드에서는, 프레임 레이트가 고정된 값으로 설정될 수 있고, 상기 감쇠효과는 프레임 간 간격을 변경함으로써 달성할 수 있으며, 이는 하기의 식 (6)으로 표현된다.
[식 6]
RateI = 6
여기서, RateI는 키 프레임의 프레임 레이트를 의미하며, '6'이란 값은 일 예에 불과한 것으로 다양한 값이 사용될 수 있다.
다음으로, 동작이 I 프레임 디코딩 모드에서 풀 디코딩 모드로 전환되면, 제1 GOP 또는 그 이상의 프레임이 2배속으로 완전히 디코딩된다. 감쇠효과는 상기 프레임 버퍼 제어부(150)의 프레임 레이트를 설정함으로써 달성될 수 있다. 즉, 풀 디코딩 모드에서는, 하기의 식 (7)과 (8)로 표현된 바와 같이 원활한 이행을 구현하기 위해 프레임 레이트가 다양하게 설정될 수 있다.
[식 7]
StatRateFulln=FR*(1+n/N),
[식 8]
EndRateFulln=FR*(2-n/N))
여기서, StatRateFulln 및 EndRateFulln은 각각 터치동작 시작시의 프레임 레이트 및 터치동작 종료시의 프레임 레이트를 의미하고, FR은 정상 프레임 레이트를 의미한다. 식 (7)과 (8)에 도시된 바와 같이, 정상 프레임 레이트가 29.97이고, N이 풀 디코딩 모드에서 디코딩된 프레임 개수라 하면, 상기 프레임 레이트는 점점 감소하여 정상 프레임 레이트에 가까워짐을 알 수 있다. 정상 재생 모드에서 고속 앞으로 감기 모드로 전환되는 방법에서는, 대량의 표시되지 않은 프레임이 프레임 버퍼 제어부(150)에 저장된다. 원활한 이행 및 프레임 별 모드와의 호환성을 위해, 식 (7)과 (8)에 도시된 바와 같이, 정상 프레임 레이트가 29.97이고, N이 풀 디코딩 모드에서 디코딩된 프레임 개수라 하면, 상기 프레임 레이트는 점점 증가하여 2배속의 프레임 레이트에 가까워짐을 알 수 있다. 프레임 별 모드와 호환 가능한 이유는 터치동작 시작과 터치동작 종료 사이에 일정한 시간이 있고, 고속 앞으로 감기 모드나 프레임별 모드가 이 시간 동안에 사용되는지에 대해 예측할 수 없기 때문이다. 프레임 레이트를 점점 증가시키는 방식은 이러한 예측을 하지 못하면 프레임별 모드로 신속하게 복귀할 수 있다. 하드웨어가 원활한 이행을 지원하지 않는 경우, 2배속 고속 앞으로 감기 모드 및 정상 재생 모드만 제공된다.
상기에서는 감쇠효과를 달성하기 위한 실시예만 기술되었지만, 당해 기술 분야의 전문가는 다른 알고리즘을 도입하여 감쇠효과가 있는 고속 앞으로 감기를 구현할 수 있다.
도 4는 본 발명의 실시예에 따른 전자기기에서 감쇠효과가 있는 고속 되감기 모드에서의 비디오 프레임 시퀀스를 도시한다.
본 발명에 따른 감쇠효과가 있는 고속 되감기 수행단계는 상기에서 설명한 감쇠효과가 있는 고속 앞으로 감기 모드와 유사하다.
본 발명에 따른 감쇠효과가 있는 고속 되감기 수행단계는 GOP을 역으로 풀 디코딩하는 단계를 수행한다. 도 4에 도시된 바와 같이, 제1 내지 제4 키 프레임의 제1 시점은 각각 01:00, 00:30, 00:15 및 00:10이고, 00:09 시점 이후의 16개의 프레임(음영으로 표시)이 정상 속도의 2배속(2x 속도)으로 완전히 디코딩된다. 이후, 프레임은 정상 속도로 디코딩된다. 상기한 바와 같은 방식으로 감쇠효과가 있는 고속 되감기가 구현될 수 있다.
디코더(140)가 GOP 구조의 한계로 인해 고속 되감기 시 풀 디코딩을 수행할 수 없는 경우나 프레임 버퍼 제어부(150)가 디코딩된 GOP의 모든 데이터를 저장할 수 없는 경우, 프레임 별 되감기가 수행될 때마다 현재 GOP의 크기를 확인할 필요가 있다. 이러한 크기는 하기 식 (9)를 이용하여 확인할 수 있다.
[식 9]
(Icount+Pcount+1)*Iresolution < FrameBufferSize
식 9는 프레임 버퍼 제어부(150)의 최소 메모리 크기를 규정한다. Icount는 GOP 내 I 프레임 개수를 의미하고, Pcount는 GOP 내 P 프레임 개수를 의미하며, '1'은 B 프레임 개수를 의미한다. Iresolution는 I 프레임의 해상도를 의미하고, FrameBufferSize는 프레임 버퍼 제어부(150)의 메모리 크기를 의미한다. 고화질(HD) 비디오에 있어서, 각 프레임의 크기는 1952*1088*1.5=3.04MB이다. 상기 고화질 비디오를 H.264 포맷으로 인코딩하면, P 프레임 개수는 일반적으로 20개 미만이다. 이에 따라, 프레임 버퍼의 메모리 크기는 적어도 22*3.04=66.88MB이다.
한편, GOP의 프레임 별 되감기가 원활하게 이루어지도록 하기 위해, GOP의 풀 디코딩 모드로 진입하기 전 프레임 버퍼 제어부(150) 내에 버퍼링된 I 프레임이 충분해야 한다. 디코딩 시퀀스는 GOP의 마지막 프레임이 최소 비용으로 디코딩되는 것을 전제로 하여 처리된다.
도 5는 본 발명의 실시예에 따른 역방향 풀 디코딩 모드에서의 화상 집합의 플레임 시퀀스를 도시한다. 도 5에 도시된 바와 같이, I 프레임이 우선 디코딩된 후, 모든 P프레임이 순차적으로 디코딩되고, 모든 B프레임이 역방향으로 디코딩된다. 프레임 버퍼 제어부(150)의 메모리 크기가 식 (9)와 같은 요건을 충족하지 못하면, 비디오 프레임은 가능한 많이 디코딩된다. 도 5의 경우를 예로 들면, 하나의 해결방법은 도 5의 프레임 (1), (2) 그리고 (3)를 디코딩하고, 프레임 (3)부터 역방향으로 디코딩하는 것이다.
이하, 본 발명의 실시예에 따른 비디오 로컬라이제이션 장치의 프레임 별 검색 모드로 수행되는 비디오 로컬라이제이션 과정을 도 6 내지 8을 참조하여 설명한다.
도 6은 프레임 별 검색 모드에서의 비디오 프레임 시퀀스를 도시한다. 프레임 별 검색모드에서의 00:59, 01:00 및 01:01 시점의 비디오 프레임이 도시되어 있다. 상기 프레임 별 모드는 높은 시스템 성능을 요구하고, 비디오 로컬라이제이션 장치는 프리 모드로 동작하는데, 이러한 프리 모드에서는 비디오 프레임을 디코딩하고 표시하는 것이 PTS과 시스템 타임 클럭(STC)의 비교에 따라 결정되지 않는다. 검색 방향을 예상할 수 없다는 문제점을 해결하기 위해, 본 발명은 다음과 같은 규칙을 마련한다. 프레임이 특정 방향으로 하나씩 움직이는 경우, 5개의 연속 프레임이 프레임 버퍼 제어부(150)에 미리 저장되어 있어야 한다. 5개 미만의 프레임이 저장되는 경우, 푸셔(130) 및 디코더(140)는 프레임 데이터를 생성하기 시작한다. 프레임 데이터의 생성은 고속 앞으로 감기의 풀 디코딩 모드로 프레임 데이터를 생성하는 방식을 참조할 수 있다.
프레임 버퍼 제어부(150) 내의 프레임 치환 원칙은 도 7을 참조한다. 프레임 버퍼 제어부(150)가 두 개의 GOP 데이터를 저장할 수 있고, 현재 프레임의 PTS가 모든 프레임의 중앙에 위치한다고(즉, 푸셔(130) 및 디코더(140)를 작동시키기 위한 조건이 충족되지 않다고) 가정하면, 프레임 버퍼 제어부(150)는 이미 버퍼 내에 있는 하나의 비디오 프레임의 데이터를 렌더부로 푸시한다. 만약 상기 조건이 충족되면, 두 가지 모드가 고려된다. 첫 번째로, 앞으로 감기 모드에서는 프레임 버퍼 제어부(150) 내에서 증가시킬 프레임의 개수를 고정값, 예를 들면 4개의 프레임(IBBP), 7개의 프레임(IBBPBBP) 등으로 설정한다. 이러한 값은 GOP 구조를 고려하여 경험상 얻어진 값이며, 증가 프레임이 최소 PTS를 갖는 프레임을 덮어쓴다. 되감기 모드에서는, 증가시킬 프레임의 개수가 GOP 내의 모든 프레임의 개수이며, 증가 프레임이 최대 PTS를 갖는 프레임을 덮어쓴다. 다시 말해, 앞으로 감기 모드에서는 고정된 단계 길이(step length)가 사용되고, 되감기 모드에서는 GOP가 단위로 사용된다.
도 8은 본 발명의 실시예에 따른 터치제어 기반의 비디오 로컬라이제이션 방법의 프레임 별 모드의 흐름도를 도시한다. 터치 동작이 하나의 프레임에 대한 되감기를 수행할 경우, 단계 S810에서 제어부(180)는 프레임 버퍼 제어부(150)에 5개의 이전 프레임이 저장되어 있는지를 판단한다. 만약 5개의 이전 프레임이 존재하면, 프레임 버퍼 제어부(150)가 하나의 프레임 데이터를 렌더부(170)에 제공하는 단계 S870를 수행한다. 단계 S810에서 프레임 버퍼 제어부(150)에 5개의 이전 프레임이 존재하지 않는 경우, 제어부(180)는 디코더(140)가 프레임 별 되감기의 풀 디코딩 모드를 지원하는지 여부를 판단한다. 만약 지원하면, 디코더(140)는 GOP에 대해 전적으로 디코딩을 수행한 후, 렌더부로 디코딩된 프레임을 제공하기 위해 단계 S870를 수행한다. 디코더(140)가 풀 디코딩을 지원하지 않으면, 단계 S840에서 I 프레임만 디코딩하거나, I 프레임과 P프레임만 디코딩한 후, 렌더부로 디코딩된 프레임을 제공하기 위해 단계 S870를 수행한다.
터치동작이 하나의 프레임에 대한 앞으로 감기를 수행할 경우, 단계 S850에서 제어부(180)는 프레임 버퍼 제어부(150)에 5개의 이후 프레임이 저장되어 있는지를 판단하고, 저장된 경우, 디코더(140)는 고정된 개수의 비디오 프레임을 디코딩한다. 이후, 렌더부로 디코딩된 프레임을 제공하기 위해 단계 S870를 수행한다. 마지막으로, 단계 S880에서 상기 비디오 프레임은 렌더부에 의해 렌더링된다.
본 발명에 따르면, 비디오 프레임의 로컬라이제이션 모드는 유동적으로 제어될 수 있고, 로컬라이제이션에서 프레임 간 단계(step)는 동적으로 조절될 수 있으며, 프레임 별 검색이 구현될 수 있다.
상기한 실시예 및 그 이점은 예시적인 것에 불과한 것으로 본 발명의 사상을 한정하지는 않는다. 이러한 실시예는 다양한 종류의 장치에도 용이하게 적용될 수 있다. 또한, 본 실시예에 대한 기술은 예시적인 것으로 본 발명의 청구항의 범위를 제한하기 위함이 아니며, 당해 기술 분야의 통상의 지식을 가진 자라면 다양한 변형 및 균등한 타 실시예가 가능하다.
110: 터치감지모듈
120: 제1저장부
130: 푸셔
140: 디코더
150: 프레임버퍼제어부
160: 제2저장부
170:: 렌더부
180: 제어부

Claims (19)

  1. 터치제어를 기반으로 하는 전자기기에 있어서,
    사용자로부터 터치입력을 수신하고 터치신호를 생성하는 터치감지 모듈;
    비디오 데이터의 비디오 프레임에 대한 시간 정보 및 오프셋 정보의 인덱스 목록을 저장하는 저장부; 및
    상기 터치입력의 터치속도, 터치길이 및 터치방향에 따라 비디오 프레임 로컬라이제이션 모드를 판단하고, 표시할 비디오 프레임의 시간 정보 및 프레임 레이트를 산출하여, 상기 산출된 비디오 프레임의 시간 정보 및 상기 인덱스 목록에 기초하여 표시할 비디오 프레임의 오프셋 정보를 획득하고, 상기 획득된 오프셋 정보에 따라 비디오 프레임 데이터를 디코딩하여, 상기 산출된 시간 정보 및 프레임 레이트에 따라 상기 디코딩된 비디오 프레임을 표시하도록 제어하는 제어부를 포함하는 것을 특징으로 하는 전자기기.
  2. 제1항에 있어서,
    상기 제어부가 산출한 시간 정보 및 상기 인덱스 목록에 기초하여 상기 표시할 비디오 프레임의 오프셋 정보를 획득하고, 상기 오프셋 정보에 따라 상기 비디오 프레임 데이터를 독취하며, 상기 독취한 비디오 프레임 데이터를 상기 디코더로 푸시하는 푸셔;
    디코딩할 상기 비디오 프레임 데이터의 버퍼큐를 유지하고, 상기 버퍼큐 내의 비디오 프레임 데이터를 디코딩하며, 디코딩한 비디오 프레임 데이터를 상기 프레임 버퍼 제어부로 푸시하는 상기 디코더; 및
    상기 디코딩한 비디오 프레임 데이터를 저장하고, 현재 비디오 프레임의 시간 정보 및 프레임 레이트에 따라 상기 현재 비디오 프레임을 표시할 시점을 결정하는 프레임 버퍼 제어부를 더 포함하는 것을 특징으로 하는 전자기기.
  3. 제1항에 있어서,
    상기 비디오 프레임 로컬라이제이션 모드는 감쇠효과가 있는 고속 앞으로 감기 모드, 감쇠효과가 있는 고속 되감기 모드 및 프레임 별 검색 모드를 포함하는 것을 특징으로 하는 전자기기.
  4. 제2항에 있어서,
    상기 푸셔는 각 터치동작에 대한 비디오 프레임 데이터의 푸시 스레드를 생성하여 상기 디코더로 비디오 프레임 데이터를 선택적으로 푸시하는 것을 특징으로 하는 전자기기.
  5. 제2항에 있어서,
    상기 디코더는 상기 푸셔에 의해 푸시된 상기 비디오 프레임 데이터를 선택적으로 디코딩하는 것을 특징으로 하는 전자기기.
  6. 제2항에 있어서,
    상기 프레임 버퍼 제어부는 적절한 시간 내에 원활하게 이행되지 못하는 비디오 프레임 데이터를 필터링하는 것을 특징으로 하는 전자기기.
  7. 제1항에 있어서,
    고속 앞으로 감기 모드에서 상기 제어부는 전자기기의 동작모드를 화상 집합(GOP: Group of Pictures)의 키프레임만 디코딩되는 키프레임 전용 모드로 설정하고, 상기 키프레임 전용 모드에서 상기 제어부는 프레임 레이트를 고정값으로 설정하며, 식 1 및 식 2에 따라 화면에서 표시할 키 프레임의 시점을 산출하는 것을 특징으로 하는 전자기기:
    <식 1>
    N=nTouchLength/nTouchVelocity,
    <식 2>
    Xn =1...N=Xn -1+(N-n)*nTouchVelocity*nTouchWeight.
    여기서, nTouchvelocity는 터치속도, nTouchLength는 터치길이, nTouchWeight는 터치제어를 조절하기 위한 가중치, Xn =1...N은 상기 시점을 의미한다.
  8. 제1항에 있어서,
    고속 앞으로 감기 모드에서 상기 제어부는 디스플레이장치의 동작모드를 화상 집합(GOP: Group of Pictures) 내의 모든 프레임이 디코딩되는 풀 디코딩 모드로 설정하고, 상기 프레임 레이트를 식 3 및 식 4에 따라 설정하는 것을 특징으로 하는 전자기기:
    <식 3>
    StatRateFulln=FR*(1+n/N),
    <식 4>
    EndRateFulln=FR*(2-n/N))
    여기서, StartRateFull n 은 상기 터치동작 시작시의 프레임 레이트, EndRateFulln은 상기 터치동작 종료시의 프레임 레이트, FR은 정상적인 재생 시의 프레임 레이트, N은 풀 디코딩 모드에서 감쇠효과가 있는 프레임 개수를 의미한다.
  9. 제2항에 있어서,
    상기 제어부는, 상기 비디오 프레임 로컬라이제이션 모드를프레임 별 앞으로 감기로 판단하면, 상기 프레임 버퍼 제어부 내에서 증가시킬 프레임의 개수를 고정값으로 설정하며, 상기 모드를 프레임 별 되감기로 판단하면, 상기 프레임 버퍼 제어부 내에서 증가시킬 프레임 개수가 GOP 내의 모든 프레임에 의해 증가되도록 제어하는 것을 특징으로 하는 전자기기.
  10. 제2항에 있어서,
    고속 되감기 모드에서, 상기 제어부는, 식5의 조건이 충족되지 못하는 것으로 판단하면, 상기 디코더가 가능한 많은 GOP 내 비디오 프레임을 디코딩하도록 제어하는 것을 특징으로 하는 전자기기:
    <식 5>
    (Icount+Pcount+1)*Iresolution < FrameBufferSize
    여기서 Icount는 GOP 내 I 프레임 개수, Pcount는 GOP 내 P 프레임 개수, '1'은 B 프레임, Iresolution는 I 프레임의 해상도, FrameBufferSize는 상기 프레임 버퍼 제어부의 메모리 크기를 의미한다.
  11. 터치제어를 기반으로 하는 전자기기의 제어방법에 있어서,
    (a) 사용자로부터 터치입력을 수신하고 터치신호를 생성하는 단계;
    (b) 상기 터치입력의 터치속도, 터치길이 및 터치방향에 따라 비디오 프레임 로컬라이제이션 모드를 판단하고, 표시할 비디오 프레임의 시간 정보 및 프레임 레이트를 산출하는 단계;
    (c) 인덱스 목록을 기반으로 상기 비디오 프레임의 오프셋 정보를 획득하고, 상기 오프셋 정보에 따라 비디오 프레임 데이터를 독취하며, 상기 독취한 비디오 프레임 데이터를 디코딩하기 위해 푸시하는 단계;
    (d) 디코딩할 상기 비디오 프레임 데이터의 버퍼큐를 유지하고, 상기 버퍼큐 내의 비디오 프레임 데이터를 디코딩하는 단계; 및
    (e) 상기 디코딩한 비디오 프레임 데이터를 저장하고, 현재 비디오 프레임의 시간 정보 및 프레임 레이트에 따라 상기 현재 비디오 프레임을 표시할 시점을 결정하는 단계를 포함하는 것을 특징으로 하는 전자기기의 제어방법.
  12. 제11항에 있어서,
    비디오 프레임 로컬라이제이션 모드는 감쇠효과가 있는 고속 앞으로 감기 모드, 감쇠효과가 있는 고속 되감기 모드 및 프레임 별 검색 모드 중 하나를 포함하는 것을 특징으로 하는 전자기기의 제어방법.
  13. 제11항에 있어서,
    단계 (c)에서, 비디오 프레임 데이터의 푸시 스레드는 각 터치동작에 대해 생성되고, 비디오 프레임 데이터는 선택적으로 디코더로 푸시되는 것을 특징으로 하는 전자기기의 제어방법.
  14. 제11항에 있어서,
    단계 (d)에서, 단계(c)에서 푸시된 상기 비디오 프레임 데이터를 선택적으로 디코딩하는 것을 특징으로 하는 전자기기의 제어방법.
  15. 제11항에 있어서,
    단계 (e)에서, 적절한 시간 내에 원활하게 이행되지 못하는 비디오 프레임 데이터를 필터링하는 것을 특징으로 하는 전자기기의 제어 방법.
  16. 제11항에 있어서,
    단계 (b)에서 고속 앞으로 감기 모드로 판단되면, 상기 프레임 레이트는 고정 값으로 설정되고, 단계 (d)에서는 화상 집합(GOP)의 키프레임만 디코딩하고, 화면에서 표시할 키 프레임의 시점은 식 1 및 식 2에 따라 산출되는 것을 특징으로 하는 전자기기의 제어방법:
    <식 1>
    N=nTouchLength/nTouchVelocity,
    <식 2>
    Xn =1...N=Xn -1+(N-n)*nTouchVelocity*nTouchWeight.
    여기서, nTouchvelocity는 터치속도, nTouchLength는 터치길이, nTouchWeight는 터치제어를 조절하기 위한 가중치, Xn =1...N은 상기 시점을 의미한다.
  17. 제11항에 있어서,
    고속 앞으로 감기 모드에서 상기 프레임 레이트는 단계 (b)에서 변동 값으로 설정되고, 단계 (d)에서 화상 집합(GOP) 내의 모든 프레임이 디코딩되고, 상기 프레임 레이트는 식 3 및 식 4에 따라 설정하는 것을 특징으로 하는 전자기기의 제어방법:
    <식 3>
    StatRateFulln=FR*(1+n/N),
    <식 4>
    EndRateFulln=FR*(2-n/N))
    여기서, StartRateFull n 은 상기 터치동작 시작시의 프레임 레이트, EndRateFulln은 상기 터치동작 종료시의 프레임 레이트, FR은 정상적인 재생 시의 프레임 레이트, N은 풀 디코딩 모드에서 감쇠효과가 있는 프레임 개수를 의미한다.
  18. 제11항에 있어서,
    단계 (b)에서 상기 모드가 프레임 별 앞으로 감기로 판단되면, 버퍼링된 프레임 개수가 기설정된 개수만큼 증가하도록 제어하며, 상기 모드가 프레임 별 되감기로 판단되면, 상기 버퍼링된 프레임 개수가 GOP 내 모든 프레임에 의해 증가하도록 제어하는 것을 특징으로 하는 전자기기의 제어방법..
  19. 제11항에 있어서,
    단계 (b)에서 고속 되감기 모드로 판단한 경우, 식5의 조건이 충족되지 않으면, 단계 (d)에서 가능한 많은 GOP 내 비디오 프레임을 디코딩하도록 제어하는 것을 특징으로 하는 전자기기의 제어 제어방법
    <식 5>
    (Icount+Pcount+1)*Iresolution < FrameBufferSize
    여기서 Icount는 GOP 내 I 프레임 개수, Pcount는 GOP 내 P 프레임 개수, '1'은 B 프레임, Iresolution는 I 프레임의 해상도, FrameBufferSize는 상기 프레임 버퍼 제어부의 메모리 크기를 의미한다.
KR1020130058380A 2012-07-16 2013-05-23 전자기기 및 그 제어방법 KR20140010337A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP13003523.1A EP2687969A3 (en) 2012-07-16 2013-07-12 Electronic apparatus and control method of the same
US13/943,434 US20140016910A1 (en) 2012-07-16 2013-07-16 Electronic apparatus and control method of the same

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201210246563.XA CN103544977B (zh) 2012-07-16 2012-07-16 基于触摸控制的视频定位装置和方法
CN201210246563.X 2012-07-16

Publications (1)

Publication Number Publication Date
KR20140010337A true KR20140010337A (ko) 2014-01-24

Family

ID=49968365

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130058380A KR20140010337A (ko) 2012-07-16 2013-05-23 전자기기 및 그 제어방법

Country Status (2)

Country Link
KR (1) KR20140010337A (ko)
CN (1) CN103544977B (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103970272B (zh) * 2014-04-10 2018-04-27 北京智谷睿拓技术服务有限公司 交互方法、装置及用户设备
CN105049955B (zh) * 2015-07-02 2019-02-05 浙江工商大学 一种实时传屏的方法和系统
CN106027942A (zh) * 2016-05-20 2016-10-12 广东欧珀移动通信有限公司 一种帧率控制方法及装置
CN108345415B (zh) * 2017-01-25 2023-06-30 豪威Tddi安大略有限合伙公司 利用对象速度信息的对象追踪
CN110460790A (zh) * 2018-05-02 2019-11-15 北京视联动力国际信息技术有限公司 一种视频帧的抽取方法和装置
CN108650547A (zh) * 2018-05-09 2018-10-12 北京奇艺世纪科技有限公司 一种视频分享方法、装置及设备
CN112218174B (zh) * 2020-09-21 2022-11-08 烽火通信科技股份有限公司 一种多视点视频的切换方法与服务器
CN112822522B (zh) * 2020-12-31 2023-03-21 北京梧桐车联科技有限责任公司 视频播放方法、装置、设备及存储介质
CN114390343B (zh) * 2021-12-31 2024-06-14 深圳市闪剪智能科技有限公司 一种多视频的播放方法及相关设备
CN114306936A (zh) * 2022-01-25 2022-04-12 苏州景昱医疗器械有限公司 程控设备和植入式神经刺激系统
CN115171241B (zh) * 2022-06-30 2024-02-06 南京领行科技股份有限公司 一种视频帧定位方法、装置、电子设备及存储介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5108747B2 (ja) * 2008-12-26 2012-12-26 富士フイルム株式会社 情報表示装置、方法およびプログラム
CN101770795B (zh) * 2009-01-05 2013-09-04 联想(北京)有限公司 一种计算设备及视频播放控制方法
CN102065320B (zh) * 2009-11-12 2012-12-19 三星电子(中国)研发中心 用于处理关于ts码流的特技播放命令的方法和设备
JP5293587B2 (ja) * 2009-12-16 2013-09-18 ソニー株式会社 表示制御装置、表示制御方法、プログラム
CN101980533A (zh) * 2010-11-12 2011-02-23 中国华录集团有限公司 一种基于索引文件实现传输流文件特技模式功能的方法

Also Published As

Publication number Publication date
CN103544977B (zh) 2016-07-20
CN103544977A (zh) 2014-01-29

Similar Documents

Publication Publication Date Title
KR20140010337A (ko) 전자기기 및 그 제어방법
KR100806467B1 (ko) 사용자 특정 정보를 이용한 미디어 콘텐츠 애노테이팅
US20140016910A1 (en) Electronic apparatus and control method of the same
US8437408B2 (en) Decoding with reference image stored in image memory for random playback
US20120141088A1 (en) Information processing apparatus, information processing method, and program
JP4476261B2 (ja) 復号装置および復号方法
JP2007511855A (ja) トリック再生の性能を向上するためのキャッシュ管理
KR101681176B1 (ko) 비디오 시스템에서 의미 기반 트릭 모드 플레이를 위한 방법
US20100247066A1 (en) Method and apparatus for reverse playback of encoded multimedia content
KR20120079442A (ko) 사용자 인터페이스 제공 장치 및 방법
JP5751942B2 (ja) 再生装置及び再生方法
US8189115B2 (en) Image device to reverse play with minimal time delay and a method thereof
EP2472519B1 (en) Multi-video rendering for enhancing user interface usability and user experience
US7693008B2 (en) Video reproduction apparatus, video reproduction method, and video reproduction process program
JP2004364211A (ja) 動画像復号化装置
JP2011259320A (ja) 再生装置
TW201424377A (zh) 視訊編修方法與視訊編修裝置
US20100061697A1 (en) Motion picture decoding method, motion picture decoding device, and electronic apparatus
US20140369422A1 (en) Remultiplexing Bitstreams of Encoded Video for Video Playback
JP3072971B2 (ja) ビデオ・オン・デマンドシステムとそれを構成するビデオサーバ装置及び端末装置
JP2012044451A (ja) 画像再生装置、その制御方法、及び画像再生プログラム、並びに記録媒体
JP2010166386A (ja) 動画再生装置及びプログラム
JP2007288608A (ja) サムネイル作成方法および動画データ再生装置
JP2003324690A (ja) 映像記録再生装置
EP3731080A1 (en) Electronic device and control method therefor

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid