KR100862630B1 - 비디오 프레임들 및 오디오 프레임들을 동기화하기 위한시스템 및 방법 - Google Patents

비디오 프레임들 및 오디오 프레임들을 동기화하기 위한시스템 및 방법 Download PDF

Info

Publication number
KR100862630B1
KR100862630B1 KR1020070031674A KR20070031674A KR100862630B1 KR 100862630 B1 KR100862630 B1 KR 100862630B1 KR 1020070031674 A KR1020070031674 A KR 1020070031674A KR 20070031674 A KR20070031674 A KR 20070031674A KR 100862630 B1 KR100862630 B1 KR 100862630B1
Authority
KR
South Korea
Prior art keywords
video
audio
frames
play time
time
Prior art date
Application number
KR1020070031674A
Other languages
English (en)
Other versions
KR20080006444A (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 KR20080006444A publication Critical patent/KR20080006444A/ko
Application granted granted Critical
Publication of KR100862630B1 publication Critical patent/KR100862630B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/04Synchronising
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Television Signal Processing For Recording (AREA)
  • Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)

Abstract

본 발명은 오디오/비디오 플레이어 시스템에서 비디오 프레임들과 오디오 프레임들을 동기화하기 위한 방법을 개시한다. 상기 방법은, (a) 오디오 프레임의 기 설정된 오디오 플레이 시간을 판독하고, 오디오 프레임의 실제 오디오 플레이 시간을 검색하는 단계; (b) 오디오 프레임의 실제 오디오 플레이 시간과 기 설정된 오디오 플레이 시간에 따라 동기화 오프셋 시간을 계산하는 단계; (c) 동기화 오프셋 시간, 비디오 프레임의 기 설정된 비디오 플레이 시간 및 미리 정의된 비디오 렌더링 오프셋 시간에 따라 비디오 프레임에 대한 조정된 비디오 플레이 시간을 계산하는 단계; 및 (d) 조정된 비디오 플레이 시간과 현재 시간에 따라 비디오 프레임들을 선택적으로 플레이하는 단계를 포함한다. 따라서, 비디오 프레임들과 오디오 프레임들 둘 모두는 동시에 동기화될 수 있다.
멀티태스크, 멀티스레드, 동기화 오프셋, 시스템 온 칩.

Description

비디오 프레임들 및 오디오 프레임들을 동기화하기 위한 시스템 및 방법{System and method for synchronizing video frames and audio frames}
도 1은 모니터가 비디오 프레임들을 플레이할 때 디스플레이 지연 시간의 원인을 나타낸다.
도 2a는 이상적인 상태 하에서 오디오 프레임들을 플레이하는 것을 도시하는 도면이다.
도 2b는 실제 상태 하에서 오디오 프레임들을 플레이하는 것을 도시하는 도면이다.
도 3은 본 발명에 따른 바람직한 제 1 실시예의 오디오/비디오 플레이어 시스템의 기능 블록도를 도시한다.
도 4는 본 발명에 따른 바람직한 제 1 실시예의 비디오 프레임들을 플레이하는 것을 도시하는 도면이다.
도 5는 본 발명에 따른 바람직한 제 1 실시예의 오디오/비디오 플레이어 방법의 흐름도이다.
본 발명은 오디오/비디오 플레이어 시스템에 관한 것으로, 특히 비디오 프레임들과 오디오 프레임들을 동기화하기 위한 오디오/비디오 플레이어 시스템 및 방법에 관한 것이다.
오디오/비디오 플레이어 시스템은 저장 장치에 저장된 오디오/비디오 파일을 플레이할 수 있어야 한다. 오디오/비디오 파일의 오디오/비디오 데이터가 인코딩되면, 오디오/비디오 플레이어 시스템은 적절한 오디오/비디오 디코더들을 사용하여 오디오/비디오 데이터를 디코딩하고, 디코딩된 오디오/비디오 데이터를 플레이할 수 있어야 한다. 비디오 데이터와 오디오 데이터를 동기화하는 것은 오디오/비디오 플레이어 시스템에 있어 커다란 도전이다.
통상적으로, 비디오 데이터 및 오디오 데이터는 오디오 프레임과 비디오 프레임의 기설정된 플레이 시간들과 현재의 시간을 비교하고, 상기 비교에 따라 계산하고, 비디오 프레임과 오디오 프레임을 적절한 시간에 플레이함으로써 동기화된다. 일반적으로, 오디오 프레임의 플레이 시간이 비디오 프레임의 플레이 시간보다 15밀리초 빨라지거나 45밀리초 늦어지게 되는 것을 허용하지 않는다. 이러한 조건이 만족되지 않으면, 시청자는 오디오 및 비디오 프레임들이 비동기(asynchronous)임을 명백히 느끼게 될 것이다.
종래의 오디오/비디오 플레이어 시스템은 저장 장치로부터 비디오 프레임들과 오디오 프레임들을 판독하고, 단일의 통합된 프로세스를 사용하여 비디오 프레 임들과 오디오 프레임들을 플레이하며, 이 프로세스는 비디오 프레임들과 오디오 프레임들간의 동기화를 유지할 수 있다. 하지만, 멀티태스크(multitask) 및 멀티스레드(multithread) 컴퓨팅의 프로세스로, 대부분의 컴퓨터 사용자들은 디지털 비디오를 시청하고, 동시에 다른 프로그램들 또는 기능들을 수행하고자 한다. 따라서, 상술한 단일의 프로세스 플레이 기술은 사라지고, 멀티태스크 요구사항을 맞추도록 오디오 데이터로부터 비디오 데이터를 분리하여, 비디오 데이터와 오디오 데이터를 각각 디코딩하며, 처리하여 플레이하는 기술로 대체되고 있다.
그럼에도 불구하고, 이러한 기능은 부가적인 멀티미디어 동기화 문제를 일으킨다. 특히, 상기 기술이 오디오 데이터로부터 비디오 데이터를 분리하여, 비디오 데이터와 오디오 데이터를 각각 디코딩하고 처리하여 플레이할 때, 비디오 데이터와 오디오 데이터는 쉽게 비동기식으로 플레이된다.
미국특허 제6,510,279호(이하,‘279 특허), 미국특허 제6,262,776호(이하, ’776) 및 미국특허 제6,016,166호(이하,‘166특허)와 같은, 오디오 프레임들 및 비디오 프레임들을 동기화하는 종래기술에 따른 방법들이 존재하지만, 이들 종래기술들은 아래와 같은 문제점들을 해소할 수 없다.
일반적으로, 비디오 데이터와 오디오 데이터의 비동기 플레이를 일으키는 두 가지 이유들이 존재한다: (1) 모니터가 비디오 프레임을 플레이할 때 발생되는 디스플레이 지연 시간; (2) 오디오 출력 장치의 출력 샘플 레이트의 부정확성. 상세한 설명들은 아래와 같다.
도 1을 참조하면, 도 1은 모니터가 비디오 프레임들을 플레이할 때 디스플레 이 지연 시간이 원인을 도시한다. 도 1에 도시된 바와 같이, 모니터가 시간 TV(TV0,TV1,TV2)에서 비디오 프레임 V(V0,V1,V2)를 플레이할 때, 비디오 프레임 V(V0,V1,V2)가 모니터의 스크린 상에 실제 디스플레이되는 실제 시간은 TV'(TV0',TV1',TV2')이다. 달리 말해서, 모니터는 비디오 프레임을 처리하고 스크린 상에 비디오 프레임을 디스플레이하기 위한 시간 기간을 필요로 하고, 여기서 시간 차이는 도 1에 도시된 바와 같이 디스플레이 지연 시간(DLCD)이다.
도 2a 및 도 2b를 참조하면, 도 2a는 이상적인 상태들 하에서의 오디오 프레임의 플레이를 도시하고, 도 2b는 실제 상태들 하에서의 오디오 프레임들의 플레이를 도시한다. 도 2a 및 도 2b에 도시된 바와 같이, tAn(n=1,2,...)은 파일에 기록된 오디오 프레임(An)의 기 설정된 플레이 시간이고, TAn은 오디오 프레임(An)이 오디오 출력 장치에 의해 플레이되는 실제 플레이 시간이다. 이상적인 상태들 하에서, 오디오 프레임(An)이 플레이될 때, 파일에 기록된 기 설정된 플레이 시간(tAn)은 도 2a에 도시된 바와 같이, 실제 플레이 시간(TAn)과 같다. 하지만, 출력 샘플 레이트의 부정확성으로 인해, 오디오 출력 장치가 한동안 플레이한 후에, 파일에 기록된 기 설정된 플레이 시간(ts)은 도 2b에 도시된 바와 같이, 실제 플레이 시간(TAn)과는 다르다.
AMR를 예로 들면, 각각의 AMR 오디오 프레임은 160개의 오디오 샘플들을 포 함하고, 출력 샘플 레이트는 8000Hz이다. 하지만, 오디오 출력 장치에 의해 사용되는 클록은 정확하지 않으므로, 실제 출력 샘플 레이트는 7999Hz일 수 있으며, 정상적으로 초당 플레이되는 오디오 샘플들은 8000에서 7999로 감소한다. 그러므로, 1000초 동안 플레이된 후, 실제 플레이되는 오디오 샘플들의 수는 이론적으로 플레이되는 오디오 샘플들의 수보다 1000*(8000-7999)=1000이 적다. 따라서, 1000초 후에, 오디오 프레임(An)의 기 설정된 플레이 시간(tAn)과 실제 플레이 시간(TAn)의 차이는 1000*(1/8000*100) = 125 마이크로초일 것이다. 비디오 데이터와 오디오 데이터의 앞에서 언급한 비동기 상태에 따라서, 시청자는 비디오 데이터와 오디오 데이터가 비동기라는 것을 인식할 것이다.
종래 기술에서, '279 특허와 '166 특허 둘 모두는 디스플레이 지연 시간 및 오디오 출력 샘플 레이트의 부정확성을 개선하지 못하였다. '766특허는 디스플레이 지연 시간을 개선하였지만, 오디오 출력 샘플 레이트의 부정확성을 고려하지는 않았다.
결론적으로, 본 발명의 범위는 상기한 문제점들을 해소하기 위한 오디오/비디오 플레이어 시스템 및 방법을 제공하는 것이다.
본 발명의 범위는 오디오/비디오 플레이 품질을 향상시키기 위해, 비디오 프레임들 및 오디오 프레임들을 동기화하기 위한 오디오/비디오 플레이어 시스템 및 방법을 제공하는 것이다.
본 발명의 바람직한 실시예는 메모리, 프로세서, 오디오 디코더, 비디오 디코더, 버스, 저장 인터페이스, 저장 장치, 오디오 출력 인터페이스, 오디오 출력 장치, 비디오 출력 인터페이스, 및 비디오 출력 장치를 포함하는 오디오/비디오 플레이어 시스템이다.
상기 실시예에서, 메모리는 소프트웨어 프로그램 코드를 저장하고, 오디오 프레임들과 비디오 프레임들을 일시적으로 저장하는데 사용된다. 버스는 각각의 인터페이스, 메모리, 프로세서, 오디오 디코더, 및 비디오 디코더 사이에서의 통신을 위해 사용된다. 저장 장치는 오디오 프레임들의 압축된 데이터, 기 설정된 오디오 플레이 시간 정보, 비디오 프레임들의 압축된 데이터, 및 기 설정된 비디오 플레이 시간 정보를 포함하는 압축된 오디오/비디오 파일을 저장하는데 사용되며; 저장 장치는 또한 버스 상의 다른 구성요소들과 통신하기 위해 저장 인터페이스를 사용한다. 오디오 디코더와 비디오 디코더는 인코딩된 오디오 프레임들과 비디오 프레임들을 디코딩하는데 사용된다. 오디오 출력 인터페이스와 비디오 출력 인터페이스는 디코딩된 오디오 프레임들과 비디오 프레임들을 플레이하기 위해 오디오 출력 장치 및 비디오 출력 장치로 전송하는데 사용된다. 프로세서는 메모리에 저장된 소프트웨어 프로그램을 수행하고 적절한 시간에 오디오 데이터와 비디오 데이터를 플레이하기 위해 모든 구성요소들을 제어하는데 사용된다.
프로세서는 저장 인터페이스를 통해 저장 장치로부터의 인코딩된 오디오 프레임 및 인코딩된 비디오 프레임에 접근하고 그것들을 메모리에 일시적으로 저장하며; 프로세서는 또한 오디오 프레임과 비디오 프레임으로부터 기 설정된 오디오 플레이 시간과 기 설정된 비디오 플레이 시간을 동시에 검색하고, 메모리에 일시적으로 저장된 오디오 프레임과 비디오 프레임을 디코딩하기 위해 오디오 디코더와 비디오 디코더를 제어한다. 그 후에, 프로세서는 디코딩된 오디오 프레임과 비디오 프레임을 오디오 출력 인터페이스와 비디오 출력 인터페이스를 통해 디스플레이 하기 위해 오디오 출력 장치와 비디오 출력 장치에 각각 전송하고, 이어서, 실제 오디오 플레이 시간을 검색한다. 이어서, 프로세서는 오디오 프레임의 기 설정된 오디오 플레이 시간과 실제 플레이 시간에 따라 동기화 오프셋 시간을 계산한다. 결국, 프로세서는 동기화 오프셋 시간, 기 설정된 비디오 플레이 시간, 및 디스플레이 지연 시간에 따라서 비디오 프레임의 조정된 비디오 플레이 시간을 계산한다. 또한, 조정된 비디오 플레이 시간 및 현재 시간에 따라, 프로세서는 비디오 프레임을 플레이를 위해 비디오 출력 장치에 선택적으로 전송한다. 그에 의해, 비디오 프레임들 및 오디오 프레임들은 동기화된다.
따라서, 본 발명의 오디오/비디오 플레이어 시스템 및 방법은 비디오 프레임들과 오디오 프레임들을 동기화하고, 오디오/비디오 플레이 품질을 향상시키기 위해, 모니터로 인한 디스플레이 지연 시간뿐만 아니라 오디오 출력 샘플 레이트의 부정확성을 고려한다.
본 발명의 이점들 및 사상은 첨부된 도면들과 함께 이하의 설명으로부터 이 해될 수 있다.
도 3을 참조하면, 도 3은 본 발명에 따른 바람직한 제 1 실시예의 오디오/비디오 플레이어 시스템(10)의 기능 블록도를 도시한다. 오디오/비디오 플레이어 시스템(10)은 모든 비디오 프레임들 및 오디오 프레임들을 동기화하는데 사용된다. 도 3에 도시된 바와 같이, 오디오/비디오 플레이어 시스템(10)은 메모리(12), 프로세서(14), 오디오 디코더(16), 비디오 디코더(18), 버스(20), 저장 인터페이스(22), 저장 장치(28), 오디오 출력 인터페이스(24), 오디오 출력 장치(30), 비디오 출력 인터페이스(26), 및 비디오 출력 장치(32)를 포함한다. 오디오 출력 장치(30)는 스피커 등일 수 있으며, 비디오 출력 장치(32)는 LCD(liquid crystal display) 등일 수 있다. 프로세서(14), 메모리(12), 오디오 디코더(16), 비디오 디코더(18), 저장 인터페이스(22), 오디오 출력 인터페이스(24), 비디오 출력 인터페이스(26) 및 버스(20)는 시스템 온 칩(SoC: system on a chip)에 집적될 수 있음을 알아야 한다. 프로세서(14)의 성능이 좋으면, 프로세서(14)는 오디오 디코더(12)를 사용하는 대신에 압축된 오디오 프레임들을 디코딩할 수 있다. 프로세서(14)의 성능이 충분히 좋으면, 프로세서(14)는 비디오 디코더(18)를 사용하는 대신에 압축된 비디오 프레임들을 디코딩할 수 있다.
도 2b 및 도 4를 참조하면, 도 4는 본 발명에 따른 바람직한 제 1 실시예의 비디오 프레임들의 플레이를 도시한다. 본 실시예에서, 프로세서(14)는 저장 장치(28)로부터, 압축된 오디오 프레임 및 그것의 기 설정된 플레이 시간을 판독하거나, 또는 비디오 프레임 및 그것의 기 설정된 플레이 시간을 판독하는데 사용된다. 프로세서(14)가 압축된 오디오 프레임(An) 및 그것의 기 설정된 플레이 시간(tAn)을 우선 판독하면, 프로세서(14)는 오디오 프레임(An)을 디코딩하기 위해 오디오 디코더(16)를 사용하고, 오디오 인터페이스(24)를 통해 오디오 프레임(An)을 플레이를 위해 오디오 출력 장치(30)에 전송한다; 또한, 동시에 오디오 프레임(An)의 실제 오디오 플레이 시간(TAn)을 검색한다(retrieve). 도 2b에 도시된 바와 같이, 프로세서(14)는 오디오 프레임(An)의 실제 플레이 시간(TAn) 및 기 설정된 플레이 시간(tAn)에 따라 동기화 오프셋 시간(Dsync(tAn-TAn))을 계산한다. 프로세서(14)가 우선, 압축된 비디오 프레임(Vi(i=1,2,...)) 및 그것의 기 설정된 플레이 시간(tVi)을 판독하면, 프로세서(14)는 도 4에 도시된 바와 같은, 동기화 오프셋 시간(Dsync), 기 설정된 비디오 플레이 시간(tVi), 및 디스플레이 지연 시간(DLCD)에 따라 비디오 프레임(Vi)의 조정된 비디오 플레이 시간(tadj(tVi - DLCD + Dsync))을 계산한다. 조정된 비디오 플레이 시간(tadj) 및 현재 시간(T)에 따라, 프로세서(14)는 비디오 출력 인터페이스(26)를 통해 비디오 프레임(Vi)을 플레이를 위해 비디오 출력 장치(32)에 선택적으로 전송한다. 그에 의해, 비디오 프레임들 및 오디오 프레임들은 동기화된다. 본 실시예에서, 디스플레이 지연 시간(DLCD)은 비디오 출력 장치가 비디오 프레임을 플레이할 때의 처리 시간이다. 현재 시간(T)은 시스템의 현재 디스플레이 시 간이다.
앞의 실시예에서, 프로세서(14)는 진보한 지연 및 드롭 방책(advanced delay and drop policy)에 따라 비디오 프레임들을 선택적으로 플레이한다. 조정된 비디오 플레이 시간(tadj)이 현재 시간(T) 이후이면, 즉 현재 시스템 디스플레이 시간이 조정된 비디오 플레이 시간(tadj)에 아직 도달하지 못하였다면, 프로세서(14)는 현재 시간(T)이 조정된 비디오 플레이 시간(tadj)에 도달할 때까지 비디오 프레임(Vi)의 플레이를 지연시킨다. 조정된 비디오 플레이 시간(tadj)이 현재 시간(T) 이전이면, 즉 현재 시스템 디스플레이 시간이 조정된 비디오 플레이 시간(tadj)을 이미 초과했다면, 프로세서(14)는 또한 조정된 비디오 플레이 시간(tadj)과 현재 시간(T)의 차가 임계치보다 큰지의 여부를 판단한다. 조정된 비디오 플레이 시간과 현재 시간 사이의 차가 임계치보다 크면, 프로세서(14)는 비디오 프레임(Vi)을 드롭(drop)시키고, 즉 비디오 프레임(Vi)이 플레이되지 않으며; 그렇지 않은 경우, 프로세서(14)는 현재 시간(T)에서 비디오 프레임(Vi)을 플레이한다. 따라서, 비디오 및 오디오 프레임들이 동기하여 플레이될 수 있을 뿐만 아니라, 디코딩된 비디오 프레임들은 동기화가 영향을 받지 않는 한, 최대로 플레이될 수 있다. 본 실시예에서, 임계치는 서로 다른 요구사항들에 따라 설정될 수 있다. 예로서, 임계치는 tVi-2DLCD로 설정될 수 있다.
도 5를 참조하면, 도 5는 본 발명에 따른 바람직한 제 1 실시예의 오디오/비디오 플레이어 방법의 흐름도를 도시한다. 이 실시예에 따라, 본 발명의 방법은 비디오 프레임들과 오디오 프레임들을 동기화하는데 사용된다. 이 방법은 다음 단계를 포함한다.
단계 S100 : 시작
단계 S102 : 저장 장치에 저장된 오디오/비디오 데이터를 판독하고, 오디오 프레임 및 그것의 기 설정된 오디오 플레이 시간 또는 비디오 프레임 및 그것의 기 설정된 비디오 플레이 시간을 검색.
단계 S104 : 오디오 프레임이 단계 S102에서 판독되면, 단계 S106을 수행하거나, 단계 S112를 수행.
단계 S106 : 압축된 오디오 프레임을 디코딩.
단계 S108 : 오디오 출력 인터페이스를 통해 디코딩된 오디오 프레임을 플레이를 위해 오디오 출력 장치에 전송.
단계 S110 : 실제 오디오 플레이 시간 및 기 설정된 오디오 플레이 시간에 따라 동기화 오프셋 시간을 계산.
단계 S112 : 비디오 프레임을 디코딩.
단계 S114 : 동기화 오프셋 시간, 비디오 프레임의 기 설정된 비디오 플레이 시간, 및 디스플레이 지연 시간에 따라 조정된 비디오 플레이 시간을 계산.
단계 S116 : 조정된 비디오 플레이 시간이 현재 시간에 앞서는지를 판단하고, NO이면 단계 S120을 수행하고, YES이면 단계 S118을 수행.
단계 S118 : 조정된 비디오 플레이 시간과 현재 시간의 차이가 임계치보다 큰지를 판단하고, YES이면 단계 S122를 수행하고, NO이면 단계 S124를 수행.
단계 S120 : 조정된 비디오 플레이 시간에서 비디오 프레임을 지연하여 플레이.
단계 S122 : 비디오 프레임을 무시.
단계 S124 : 현재 시간에서 비디오 프레임을 플레이.
단계 S126 : 모든 오디오 프레임들과 비디오 프레임들이 처리되는지를 검사하고, YES이면 단계 S128을 수행하고, NO이면 단계 S102를 수행.
단계 S128 : 종료.
종래기술에 비하여, 본 발명의 오디오/비디오 플레이어 시스템 및 방법은 비디오 프레임들과 오디오 프레임들을 동기화하고 오디오/비디오 플레이 품질을 향상시키기 위해, 모니터로 인한 디스플레이 지연 시간뿐만 아니라 오디오 출력 샘플 레이트의 부정확성을 고려한다. 또한, 진보한 지연 및 드롭 방식을 사용함으로써, 비디오 및 오디오 프레임들이 동기하여 플레이될 수 있을 뿐만 아니라, 디코딩된 비디오 프레임들은 비디오 플레이 품질을 향상시키도록, 동기화가 영향을 받지 않는 한 최대로 플레이될 수 있다.
위의 예 및 설명으로, 본 발명의 특징 및 사상들이 잘 설명될 것이다. 당해 기술분야의 숙련자들은 본 발명의 개시로부터 이 장치의 많은 변형 및 변경들이 이루어질 수 있음을 쉽게 알 수 있을 것이다. 따라서, 본 설명은 첨부된 청구범위에 의해서만 제한되는 것으로 이해되어야 한다.
본 발명은 오디오/비디오 플레이 품질을 향상시키기 위해, 비디오 프레임들 및 오디오 프레임들을 동기화하기 위한 오디오/비디오 플레이어 시스템 및 방법을 제공한다.

Claims (7)

  1. 오디오/비디오 플레이어 시스템에서 비디오 프레임들 및 오디오 프레임들을 동기화하는 방법으로서,
    (a) 상기 오디오 프레임들 중에서 하나의 오디오 프레임을 판독하고, 기 설정된 오디오 플레이 시간을 검색하고, 상기 오디오 프레임을 디코딩하고, 상기 오디오 프레임을 플레이하고, 실제 오디오 플레이 시간을 검색하는 단계;
    (b) 상기 오디오 프레임의 상기 실제 오디오 플레이 시간과 상기 기 설정된 오디오 플레이 시간에 따라 동기화 오프셋 시간을 계산하는 단계;
    (c) 상기 비디오 프레임들 중에서 하나의 비디오 프레임을 판독하고, 기 설정된 비디오 플레이 시간을 검색하는 단계;
    (d) 상기 동기화 오프셋 시간, 상기 기 설정된 비디오 플레이 시간 및 디스플레이 지연 시간에 따라 상기 비디오 프레임에 대응하는 조정된 비디오 플레이 시간을 계산하는 단계; 및
    (e) 상기 비디오 프레임을 디코딩하고, 상기 조정된 비디오 플레이 시간에 따라 상기 비디오 프레임을 플레이하는 단계;를 포함하고,
    상기 단계 (e)는,
    (e1) 상기 조정된 비디오 플레이 시간이 현재 시간에 앞서는지의 여부를 판단하여, NO이면 단계(e2)를 수행하고, YES이면 단계(e3)를 수행하는 단계;
    (e2) 상기 조정된 비디오 플레이 시간에서 상기 비디오 프레임을 지연하여 플레이하는 단계; 및
    (e3) 상기 조정된 비디오 플레이 시간과 상기 현재 시간 사이의 차가 임계치보다 큰지를 판단하여, YES이면 상기 비디오 프레임을 무시하고, NO이면 상기 현재 시간에서 상기 비디오 프레임을 플레이하는 단계를 포함하는 방법.
  2. 삭제
  3. 비디오 프레임들 및 오디오 프레임들을 동기화하기 위한 오디오/비디오 플레이어 시스템으로서,
    소프트웨어 프로그램 코드를 저장하고 상기 비디오 프레임들 및 상기 오디오 프레임들을 일시적으로 저장하기 위한 메모리;
    상기 오디오 프레임들을 디코딩하기 위한 오디오 디코더;
    상기 비디오 프레임들을 디코딩하기 위한 비디오 디코더;
    상기 오디오 프레임들, 기 설정된 오디오 플레이 시간 정보, 상기 비디오 프레임들 및 기 설정된 비디오 플레이 시간 정보를 저장하기 위한 저장 장치;
    상기 저장 장치에 저장된 데이터를 액세스하기 위한 저장 인터페이스;
    상기 오디오 프레임들을 플레이하기 위한 오디오 출력 장치;
    상기 오디오 출력 장치에 상기 오디오 프레임들을 출력하기 위한 오디오 출력 인터페이스;
    상기 비디오 프레임들을 플레이하기 위한 비디오 출력 장치;
    상기 비디오 출력 장치에 상기 비디오 프레임들을 출력하기 위한 비디오 출력 인터페이스;
    각각의 인터페이스, 상기 메모리, 프로세서, 상기 오디오 디코더 및 상기 비디오 디코더 사이의 통신을 제공하기 위한 버스; 및
    상기 메모리에 저장된 상기 소프트웨어 프로그램 코드를 수행하기 위한 상기 프로세서를 포함하고,
    상기 소프트웨어 프로그램 코드는:
    (a) 상기 오디오 프레임들 중에서 하나의 오디오 프레임을 판독하기 위해 상기 저장 인터페이스를 제어하고, 기 설정된 오디오 플레이 시간을 검색하고, 상기 오디오 프레임을 디코딩하기 위해 상기 오디오 디코더를 제어하고, 상기 오디오 프레임을 플레이하기 위해 상기 오디오 출력 인터페이스를 제어하고, 실제 오디오 플레이 시간을 검색하는 단계;
    (b) 상기 오디오 프레임의 실제 오디오 플레이 시간과 상기 기 설정된 오디오 플레이 시간에 따라 동기화 오프셋 시간을 계산하는 단계;
    (c) 상기 비디오 프레임들 중에서 비디오 프레임을 판독하기 위해 상기 저장 인터페이스를 제어하고, 기 설정된 비디오 플레이 시간을 검색하는 단계;
    (d) 상기 동기화 오프셋 시간, 상기 기 설정된 비디오 플레이 시간 및 디스플레이 지연 시간에 따라 상기 비디오 프레임에 대응하는 조정된 비디오 플레이 시간을 계산하는 단계; 및
    (e) 상기 비디오 프레임을 디코딩하기 위해 상기 비디오 디코더를 제어하고, 상기 조정된 비디오 플레이 시간에 따라 상기 비디오 프레임을 플레이하기 위해 상기 비디오 출력 인터페이스를 제어하는 단계;를 포함하고,
    상기 프로세서에 의해 수행되는 상기 단계 (e)는:
    (e1) 상기 조정된 비디오 플레이 시간이 현재 시간에 앞서는지의 여부를 판단하여, NO이면 단계(e2)를 수행하고, YES이면 단계(e3)를 수행하는 단계;
    (e2) 상기 조정된 비디오 플레이 시간에서 상기 비디오 프레임을 지연하여 플레이하는 단계; 및
    (e3) 상기 조정된 비디오 플레이 시간과 상기 현재 시간 사이의 차가 임계치보다 큰지를 판단하여, YES이면 상기 비디오 프레임을 무시하고, NO이면 상기 현재 시간에서 상기 비디오 프레임을 플레이하는 단계를 포함하는 오디오/비디오 플레이어 시스템.
  4. 삭제
  5. 제 3 항에 있어서, 상기 프로세서, 상기 메모리, 상기 오디오 디코더, 상기 비디오 디코더, 상기 저장 인터페이스, 상기 오디오 출력 인터페이스, 상기 비디오 출력 인터페이스 및 상기 버스는 시스템 온 칩(SoC: system on a chip)에 집적되는, 오디오/비디오 플레이어 시스템.
  6. 제 3 항에 있어서, 상기 프로세서는 상기 오디오 디코더 대신에 상기 오디오 프레임들을 디코딩할 수 있는, 오디오/비디오 플레이어 시스템.
  7. 제 3 항에 있어서, 상기 프로세서는 상기 비디오 디코더 대신에 상기 비디오 프레임들을 디코딩할 수 있는, 오디오/비디오 플레이어 시스템.
KR1020070031674A 2006-07-12 2007-03-30 비디오 프레임들 및 오디오 프레임들을 동기화하기 위한시스템 및 방법 KR100862630B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
TW095125389A TWI314017B (en) 2006-07-12 2006-07-12 System and method for synchronizing video frames and audio frames
TW095125389 2006-07-12

Publications (2)

Publication Number Publication Date
KR20080006444A KR20080006444A (ko) 2008-01-16
KR100862630B1 true KR100862630B1 (ko) 2008-10-09

Family

ID=38948871

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070031674A KR100862630B1 (ko) 2006-07-12 2007-03-30 비디오 프레임들 및 오디오 프레임들을 동기화하기 위한시스템 및 방법

Country Status (3)

Country Link
US (1) US20080012985A1 (ko)
KR (1) KR100862630B1 (ko)
TW (1) TWI314017B (ko)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101138396B1 (ko) 2007-09-11 2012-04-26 삼성전자주식회사 Iptv 단말기에서 컨텐츠 재생 방법 및 장치
KR101224165B1 (ko) * 2008-01-02 2013-01-18 삼성전자주식회사 데이터 처리 모듈 제어 방법 및 장치
US8754904B2 (en) * 2011-04-03 2014-06-17 Lucidlogix Software Solutions, Ltd. Virtualization method of vertical-synchronization in graphics systems
KR101166225B1 (ko) 2008-11-14 2012-07-17 한국전자통신연구원 멀티미디어 재생시스템 및 이를 이용한 멀티미디어의 재생방법
JP5350928B2 (ja) * 2009-07-30 2013-11-27 オリンパスイメージング株式会社 カメラ及びカメラの制御方法
US9319589B2 (en) * 2013-05-31 2016-04-19 Sony Corporation Device and method for capturing images and selecting a desired image by tilting the device
DE102015209196A1 (de) * 2014-09-08 2016-03-10 Robert Bosch Gmbh Verfahren zur seriellen Übertragung eines Rahmens über ein Bussystem von einem Sender zu mindestens einem Empfänger und Teilnehmern eines Bussystems
CN109474768A (zh) * 2017-09-08 2019-03-15 中兴通讯股份有限公司 一种提高图像流畅度的方法及装置
CN108111902A (zh) * 2017-12-21 2018-06-01 Tcl移动通信科技(宁波)有限公司 移动终端及视频播放适配处理方法、及存储介质
CN109600660B (zh) * 2018-08-01 2020-07-24 北京微播视界科技有限公司 用于录制视频的方法和装置
JP7008870B2 (ja) 2018-08-01 2022-01-25 北京微播視界科技有限公司 ビデオを録画する方法および装置
CN112272327B (zh) * 2020-10-26 2021-10-15 腾讯科技(深圳)有限公司 数据处理方法、装置、存储介质及设备
CN114827696B (zh) * 2021-01-29 2023-06-27 华为技术有限公司 一种跨设备的音视频数据同步播放的方法和电子设备
CN114979783B (zh) * 2021-02-26 2024-04-09 华为技术有限公司 一种音视频播放方法、装置和电子设备
CN115225943A (zh) * 2022-07-14 2022-10-21 深圳创维-Rgb电子有限公司 视频同步方法、装置、设备及计算机可读存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11164256A (ja) 1997-11-26 1999-06-18 Nec Corp オーディオ・ビデオ同期再生装置及び方法
KR20000055875A (ko) * 1999-02-10 2000-09-15 구자홍 디지털 방송 수신기의 오디오/비디오 신호 동기화 방법
JP2001103401A (ja) 1999-09-29 2001-04-13 Sony Corp 信号再生方法および信号再生装置
JP2003046901A (ja) 2001-07-30 2003-02-14 Nippon Hoso Kyokai <Nhk> リップシンク制御装置
KR20030082117A (ko) * 2002-04-16 2003-10-22 엘지전자 주식회사 디지털 방송 수신기에서의 오디오/비디오 립 싱크 제어 방법
KR20050023332A (ko) * 2002-06-27 2005-03-09 코닌클리즈케 필립스 일렉트로닉스 엔.브이. 오디오와 비디오의 동기화 방법 및 수신기

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5598352A (en) * 1994-09-30 1997-01-28 Cirrus Logic, Inc. Method and apparatus for audio and video synchronizing in MPEG playback systems
US6262776B1 (en) * 1996-12-13 2001-07-17 Microsoft Corporation System and method for maintaining synchronization between audio and video
US5959684A (en) * 1997-07-28 1999-09-28 Sony Corporation Method and apparatus for audio-video synchronizing
JP3063838B2 (ja) * 1997-10-02 2000-07-12 日本電気株式会社 オーディオ・ビデオ同期再生装置および方法
US6016166A (en) * 1998-08-31 2000-01-18 Lucent Technologies Inc. Method and apparatus for adaptive synchronization of digital video and audio playback in a multimedia playback system
US6906755B2 (en) * 2002-01-04 2005-06-14 Microsoft Corporation Method and apparatus for synchronizing audio and video data
FR2849328A1 (fr) * 2002-12-20 2004-06-25 St Microelectronics Sa Procede et dispositif de synchronisation de la presentation de trames audio et/ou de trames video
JP4305065B2 (ja) * 2003-06-12 2009-07-29 ソニー株式会社 Av同期処理装置および方法ならびにav記録装置
US7593061B2 (en) * 2004-06-22 2009-09-22 Sarnoff Corporation Method and apparatus for measuring and/or correcting audio/visual synchronization
KR100694060B1 (ko) * 2004-10-12 2007-03-12 삼성전자주식회사 오디오 비디오 동기화 장치 및 그 방법

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11164256A (ja) 1997-11-26 1999-06-18 Nec Corp オーディオ・ビデオ同期再生装置及び方法
KR20000055875A (ko) * 1999-02-10 2000-09-15 구자홍 디지털 방송 수신기의 오디오/비디오 신호 동기화 방법
JP2001103401A (ja) 1999-09-29 2001-04-13 Sony Corp 信号再生方法および信号再生装置
JP2003046901A (ja) 2001-07-30 2003-02-14 Nippon Hoso Kyokai <Nhk> リップシンク制御装置
KR20030082117A (ko) * 2002-04-16 2003-10-22 엘지전자 주식회사 디지털 방송 수신기에서의 오디오/비디오 립 싱크 제어 방법
KR20050023332A (ko) * 2002-06-27 2005-03-09 코닌클리즈케 필립스 일렉트로닉스 엔.브이. 오디오와 비디오의 동기화 방법 및 수신기

Also Published As

Publication number Publication date
TWI314017B (en) 2009-08-21
US20080012985A1 (en) 2008-01-17
TW200806042A (en) 2008-01-16
KR20080006444A (ko) 2008-01-16

Similar Documents

Publication Publication Date Title
KR100862630B1 (ko) 비디오 프레임들 및 오디오 프레임들을 동기화하기 위한시스템 및 방법
US9281013B2 (en) Systems and methods for transmission of media content
US10129587B2 (en) Fast switching of synchronized media using time-stamp management
US7130316B2 (en) System for frame based audio synchronization and method thereof
US20060274835A1 (en) Method and apparatus for coding information
US8446963B2 (en) Method and system for synchronizing audio and video data signals
TW201246916A (en) Techniques for synchronization of audio and video
CN109167890B (zh) 一种音画同步方法和装置及显示设备
EP3151577B1 (en) Information processing apparatus, information processing method, and program
CN101119461B (zh) 保持视频帧及音频帧同步播放的系统及方法
KR20140145584A (ko) 재생속도 변경이 가능한 실시간 온라인 비디오 재생 방법 및 시스템
US20070186250A1 (en) Video processing methods and systems for portable electronic devices lacking native video support
EP1071294A2 (en) System, method and recording medium for audio-video synchronous playback
KR100490403B1 (ko) 오디오 스트림의 버퍼링 제어 방법 및 그 장치
EP1801808A1 (en) Electronic device and scene skipping method
US20090193355A1 (en) Information processing apparatus and display control method
JP4511952B2 (ja) メディア再生装置
US6718119B1 (en) Video/audio decoding apparatus and method
JP2015156604A (ja) コンテンツ出力装置及びプログラム
KR100640885B1 (ko) 듀얼 비디오 디코딩을 위한 비디오 버퍼 제어 장치
KR20140117889A (ko) 클라이언트 장치, 서버 장치, 멀티미디어 리디렉션 시스템 및 그 방법
US7551227B2 (en) Signal processor
WO2018076899A1 (zh) 一种数据切换方法、装置、终端及计算机可读存储介质
KR102660576B1 (ko) 오디오 장치 및 그 제어방법
US8213778B2 (en) Recording device, reproducing device, recording medium, recording method, and LSI

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: 20110718

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20140723

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20170808

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee