KR101086434B1 - 비디오 데이터 디스플레이 방법 및 장치 - Google Patents

비디오 데이터 디스플레이 방법 및 장치 Download PDF

Info

Publication number
KR101086434B1
KR101086434B1 KR1020070030380A KR20070030380A KR101086434B1 KR 101086434 B1 KR101086434 B1 KR 101086434B1 KR 1020070030380 A KR1020070030380 A KR 1020070030380A KR 20070030380 A KR20070030380 A KR 20070030380A KR 101086434 B1 KR101086434 B1 KR 101086434B1
Authority
KR
South Korea
Prior art keywords
address
picture
video data
block address
block
Prior art date
Application number
KR1020070030380A
Other languages
English (en)
Other versions
KR20080088045A (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 삼성전자주식회사
Priority to KR1020070030380A priority Critical patent/KR101086434B1/ko
Priority to US11/876,090 priority patent/US8681879B2/en
Publication of KR20080088045A publication Critical patent/KR20080088045A/ko
Application granted granted Critical
Publication of KR101086434B1 publication Critical patent/KR101086434B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2365Multiplexing of several video streams
    • 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
    • H04N19/423Methods 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 characterised by memory arrangements
    • 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/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
    • 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/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4307Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
    • H04N21/43072Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen of multiple content streams on the same device
    • 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
    • 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/4314Generation 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 fitting data in a restricted space on the screen, e.g. EPG data in a rectangular grid
    • 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/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4347Demultiplexing of several video streams
    • 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/44004Processing 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 video buffer management, e.g. video decoder buffer or video display buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8547Content authoring involving timestamps for synchronizing content

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Television Signal Processing For Recording (AREA)

Abstract

본 발명은 픽처의 마지막을 판단하지 못하는 비디오 디코더에서 비디오 데이터를 디스플레이 지연없이 디스플레이하기 위한 방법에 관한 것으로, 일정 크기의 블록으로 구성된 픽처를 포함하는 비디오 데이터를 수신하고, 수신된 비디오 데이터내의 현재 블록의 주소를 검출하여 검출된 현재 블록의 주소에 기초하여 선택적으로 픽처를 디스플레이 함으로써, 보다 정확한 시간에 픽처를 디스플레이 할 수 있다.
MPEG-2, SEC/EOS, 블루레이 디스크

Description

비디오 데이터 디스플레이 방법 및 장치{Method and apparatus for displaying video data}
도 1은 종래 기술에 따른 MPEG-2 TS 데이터 디스플레이 장치의 블록도를 도시한다.
도 2는 연속하는 픽처간의 PTS(Presentation Time Stamp)차이가 큰 경우의 MPEG-2 TS 스트림의 예를 도시한다.
도 3은 비디오 gap이 존재하는 MPEG-2 비디오 스트림의 일 예를 도시한다.
도 4는 본 발명에 따른 비디오 데이터 디스플레이 장치의 블록도를 도시한다.
도 5는 본 발명에 따른 블록 카운터를 구비한 비디오 데이터 디스플레이 장치의 블록도를 도시한다.
도 6는 본 발명에 적용되는 MPEG-2 데이터 형식의 계층 구조를 도시한다.
도 7은 본 발명에 따른 비디오 데이터의 마지막을 계산하는 비디오 데이터 디스플레이 방법을 구현한 흐름도이다.
도 8는 본 발명에 따른 블록 카운터를 구비한 비디오 데이터 디스플레이 방법을 구현한 흐름도이다.
본 발명은 비디오 데이터 디스플레이에 관한 것으로, 더욱 상세하게는 픽처의 마지막을 판단하지 못하는 비디오 디코더에서 비디오 데이터를 디스플레이 지연없이 디스플레이하기 위한 비디오 데이터 디스플레이 방법 및 장치에 관한 것이다.
MPEG-2 비디오 규격에 의하면, 픽처의 시작을 인식할 수 있는 시작 코드는 존재하지만, 픽처의 마지막을 인식하는 종료 코드는 존재하지 않는다. 이는 디코더가 비디오 ES(Elementary Stream)상에서 픽처의 마지막을 알아내기 힘든 것에 기인한다. 따라서 현재 대부분의 하드웨어 MPEG-2 디코더는 픽처의 마지막을 인식하는 것이 아니라 다음 픽처의 헤더나 SEC(Sequence End Code)/EOS(End Of Sequence)와 같은 스트림의 마지막을 나타내는 코드를 인식함으로써, 디코딩된 픽처를 화면에 디스플레이시키게 된다.
여기에서 SEC/EOS는 비디오 스트림의 마지막을 의미하는 것으로 MPEG1,2 비디오 데이터에서는 SEC라는 용어를 사용하며 VC1 및 H.264 비디오 데이터에서는 EOS라는 용어를 사용한다.
대부분의 어플리케이션에서의 비디오 데이터는 수십분 수시간의 스트림으로 구성되어 있으며 연속적으로 디스플레이된다. 이 경우에는 픽처 시작 코드에 의해서 비디오가 연속적으로 디스플레이 될 것이므로 문제될 바 아니나, 한 장의 픽처로 구성된 메뉴 화면이나 슬라이드 쇼 어플리케이션등과 같이 비디오 간격이 큰 스트림의 경우에는 디코딩 된 비디오 데이터가 버퍼에 저장되어 있으나 디스플레이되 지 못하게 된다.
따라서 화면에 실제로 디스플레이 되는 시간이 픽처의 PTS(Presentation Time Stamp) 값과 차이가 많이 생기게 되는 디스플레이 지연의 문제가 발생하게 된다.
특히 블루레이(Blue-ray, 차세대 광기기) 규격에는 각 비디오 브라우징(browing) 유닛(unit) 사이에 시간 간격이 존재하는 상태로, 듬성하게 부호화 되어 있는 경우가 있다. 이러한 경우에 있어서 종래의 MPEG-2 비디오 디코더를 블루레이 디스크 플레이어에 사용하면, 디코더 버퍼내의 디코딩된 픽처가 다음 픽처의 시작 코드나 SEC/EOS를 만날 때까지 디스플레이 되지 못한다.
도 1은 종래 기술에 따른 MPEG-2 TS 데이터 디스플레이 장치의 블록도를 도시한다.
종래 기술에 따른 MPEG-2 TS 데이터 디스플레이 장치는 역 다중화부(110), 비디오 ES(Elementary Stream)버퍼(120), 디코더(130), 디코딩 버퍼 선택기(140), 비디오 버퍼(150) 디스플레이 버퍼 선택기(160) 및 디스플레이부(170)를 포함한다.
도 1을 참조하면, 역 다중화부(110)는 입력된 MPEG-TS 스트림 혹은 MPEG-PS 스트림에서 MPEG ES만을 파싱하여 디코더에 전달한다.
비디오 ES 버퍼(120)는 역 다중화부(110)에서 파싱된 비디오 ES가 저장되는 공간이다. 저장된 비디오 ES는 디코더로 전달된다. 블루레이 MPEG-TS에서는 비디오 ES가 TS 패킷에 부가된 ATS(Arrival Time Stamp)에 따라 순차적으로 디코더(130)에 전달된다. ATS값에 따라서 비디오 ES버퍼가 오버나 언더가 일어나지 않도록 처리한 다.
디코더(130)는 비디오 ES 버퍼(120)로부터 전달받은 MPEG-2 비디오 ES를 조립해서 하나의 픽처를 완성해간다. 본 블록도에서 MPEG-2 디코더는 데이터의 저장 공간을 제외한 디코딩 연산을 수행하는 부분만을 의미한다. MPEG-2 디코딩 시스템은 데이터 저장 공간 및 디코더에 필요한 모든 모듈을 의미하는 것으로써 MPEG-2 디코더보다 상위 개념이다.
디코딩 버퍼 선택기(140)는 디코딩된 데이터를 저장할 비디오 버퍼(150)를 선택하고, 디스플레이 버퍼 선택기(160)는 디스플레이 할 데이터가 저장된 버퍼를 선택한다. 비디오 버퍼(150)에 디코딩 된 데이터가 조립되어 하나의 픽처를 완성하면, 디스플레이 버퍼 선택기(160)는 포인터를 증가시켜서 다음 픽쳐를 디스플레이 하여야 한다.
디코딩 버퍼 선택기(140)와 디스플레이 버퍼 선택기(160)는 도 1에 나타난 바와 같이 1장의 픽처만큼의 포인터 차이가 있어 디코딩이 완료된 완전한 그림만을 화면에 디스플레이 한다.
디스플레이부(170)는 디스플레이 버퍼 선택기(160)가 선택한 비디오 버퍼(150)에 저장된 비디오 데이터를 화면에 디스플레이 한다.
종래 기술에 따른 MPEG-2 TS 데이터 디스플레이 장치의 동작을 살펴보면, 역 다중화부(110)는 MPEG-TS/PS 스트림으로부터 비디오 ES만을 추출하여 비디오 ES 버퍼(120)에 저장한다. 디코더(130)는 비디오 ES 버퍼(120)로부터 디코딩하는데 있어 필요한 데이터를 읽는다. 이 때 픽처 시작 코드나 SEC/EOS를 만나면 디코딩 버퍼 선택기(140)와 디스플레이 버퍼 선택기(160)의 포인터를 하나씩 증가시킨다.
디코딩 된 데이터는 비디오 버퍼(150)에 저장된다. 저장된 데이터는 하나의 픽처로 완성되고 디스플레이 버퍼 선택기(160)의 포인터가 지시하기 시작하는 순간 화면에 출력된다. 디스플레이 버퍼 선택기(160)는 순차적으로 디코딩 버퍼 선택기(140)와 동기화되어 움직임으로써, 디코딩이 완료된 완전한 픽처만을 화면에 디스플레이 한다. 이를 위해서는 디코딩 버퍼 선택기(140)와 디스플레이 버퍼 선택기(160)의 포인터 차이는 1이 되어야 한다.
도 2는 연속하는 픽처간의 PTS(Presentation Time Stamp)차이가 큰 경우의 MPEG-2 TS 스트림의 예를 도시한다.
도 2의 스트림은 비디오 스트림1(210), 비디오 스트림2(220), 비디오 스트림3(230), 비디오 스트림4(240) 및 SEC/EOS(250)으로 구성된다. 도 2는 비디오 스트림1(210)과 비디오 스트림2(220)의 PTS 차이가 매우 큰 경우로써 메뉴에 이용되는 스트림이다. 즉 도 2의 각각의 픽처는 연속적으로 디스플레이 되는 것이 아니라 한 장 한 장이 별개의 메뉴로써 사용된다.
일 예로 PTS값이 0x8000(210)인 픽처를 메뉴로 쓰기 위해서는 어플리케이션이 PTS 0x8000(210)인 픽처 만을 읽는다. 이 때 SEC/EOS가 PTS값이 0x8000(210)인 픽처 뒤에 존재하지 않는다. 따라서 디코더(130)는 PTS값이 0x8000(210)인 픽처를 전달받아 디코딩해서 비디오 버퍼(150)에 저장하게 될 것이지만, SEC/EOS 코드나 다음 픽처의 시작을 만나지 못하여 화면에 디스플레이 되지 않는다. 따라서 종래 기술에 있어서 별도의 처리가 없이 비디오 디코더만을 이용할 경우 PTS값이 0x8000(210)인 픽처에 대응하는 메뉴를 디스플레이를 할 수 없게 된다.
도 3은 비디오 gap이 존재하는 MPEG-2 비디오 스트림의 일 예를 도시한다.
도 3의 비디오 gap이 존재하는 스트림은 비디오 데이터1(310), 비디오 데이터2(320), 비디오 갭(330), 비디오 데이터3(340) 및 SEC/EOS(350)코드로 구성된다.
도 3을 참조하면, 비디오 데이터1(310)의 PTS는 p1, 비디오 데이터2(320)의 PTS는 p2, 비디오 데이터 3(340)의 PTS는 p3이다.
현재 화면에 비디오 데이터1(310)이 디스플레이 되고 있으며, 비디오 데이터2(320)가 디코딩 되고 있다고 가정한다. 비디오 데이터2(320)의 디코딩이 완료되면 비디오 데이터2(320)를 디스플레이 하기 위하여 디스플레이 버퍼 선택기의 포인터(160)를 1 증가시켜야 한다. 그러나 비디오 갭(330)에 의하여 비디오 데이터3(340)은 delta g1 만큼 지연되어 디코더(130)에 도착한다. 도 3에서의 비디오 갭(330)은 사용자 부가 서비스 데이터 등이 해당할 수 있다.
비디오 데이터3(340)이 지연되어 디코더(130)에 도달하는 동안 계속적으로 비디오 데이터1(310)이 디스플레이 된다. 결국 비디오 데이터3(340)이 디코더(130)에 입력될 때까지 비디오 데이터2(320)는 디스플레이 되지 못하고 디코딩만 끝난 상태로 대기하게 된다.
또한 모든 디코더는 AV 동기화를 유지하도록 되어 있음으로 지연된 비디오 데이터2(320)는 디코더가 비디오 데이터3(340)의 픽처 해더를 만난다 하더라도 시간 간격 g1의 크기에 따라서 동기화 알고리즘에 의해 디스플레이가 거부될 수도 있다. 이러한 문제는 특히 ATS가 첨가된 MPEG-TS 스트림을 사용하는 블루레이 디스크 플레이어의 Timebased slideshow 나 Browsable slideshow를 재생할 때 특히 많이 발생한다.
도시된 바와 같이, 종래에는 디코더가 픽처의 마지막을 인식하지 못하고 픽처 헤더나 SEC/EOS만을 인식함으로써 한 장의 픽처로 구성된 메뉴 화면이나 비디오 간격이 큰 스트림의 경우 또는 입력된 스트림중 일부만을 디스플레이하는 경우에는 디코딩된 비디오 데이터가 버퍼에 저장되어 있으나 디스플레이되지 못하는 디스플레이 지연의 문제가 발생하여 매우 불편하였다.
본 발명은 상기와 같은 문제를 해결하여, 디스플레이 지연없이 비디오 데이터를 디스플레이 할 수 있도록 한 비디오 데이터 디스플레이 방법 및 장치를 제공하는 것을 목적으로 한다.
상기와 같은 과제를 해결하기 위한 본 발명의 하나의 특징은, 비디오 데이터를 디스플레이 하는 방법에 있어서, 일정 크기의 블록으로 구성된 픽처를 포함하는 비디오 데이터를 수신하는 단계, 상기 수신된 비디오 데이터내의 현재 블록의 주소를 검출하는 단계; 및 상기 검출된 현재 블록의 주소에 기초하여 선택적으로 픽처를 디스플레이 하는 단계를 포함하는 것이다.
바람직하게는, 상기 수신된 비디오 데이터를 디코딩하는 단계를 더 포함하는 것이다.
바람직하게는, 상기 입력된 데이터가 슬라이스 정보에 해당하는 경우에는 상 기 슬라이스 정보에 기초하여 제 1 이전 블록 주소를 계산하는 단계를 더 포함하는 것이다.
바람직하게는, 선택적으로 디스플레이 하는 단계는, 상기 검출된 현재 블록의 주소가 픽처의 마지막 블록 주소에 해당하는 경우에는 디코딩 된 픽처를 디스플레이 하는 것이다.
바람직하게는, 상기 픽처의 마지막 블록 주소는, 상기 검출된 현재 블록의 주소가 픽처의 마지막 블록 주소에 해당하지 않는 경우에는 상기 현재 블록 주소를 제 2 이전 블록 주소로써 저장하는 단계를 더 포함하는 것이다.
바람직하게는, 상기 픽처의 마지막 블록 주소는,
입력된 데이터로부터 픽처의 크기 정보를 검출하고, 상기 검출된 픽처의 크기에 기초하여 퍽처를 구성하는 블록의 개수를 계산하고, 각각의 블록에 주소를 할당함으로써 얻어지는 것이다.
바람직하게는, 현재 블록의 주소는, 상기 저장된 제 2 이전 블록 주소에 기 설정된 차분 값을 더함으로써 얻어지는 것이다.
바람직하게는, 상기 현재 블록의 주소 값에 에러가 존재하는지를 판단하는 단계를 더 포함하는 것이다.
바람직하게는, 상기 에러가 존재하는 경우는, 상기 슬라이스 정보에 기초하여 계산된 제 1 이전 블록 주소 값이 상기 저장된 제 2 이전 블록 주소 값과 다른 경우인 것이다.
바람직하게는, 상기 판단 결과에 기초하여 에러가 발생한 경우에는, 상기 슬 라이스 정보에 기초하여 계산된 제 1 이전 블록 주소 값을 제 2 이전 블록 주소 값으로 저장하는 단계를 더 포함하는 것이다.
본 발명의 다른 특징은, 비디오 데이터를 디스플레이 하는 장치에 있어서, 일정 크기의 블록으로 구성된 픽처를 포함하는 비디오 데이터를 수신하는 수신부, 상기 수신부로 수신된 비디오 데이터내의 현재 블록의 주소를 검출하는 블록 주소 검출부; 상기 블록 주소 검출부에서 검출된 현재 블록의 주소에 기초하여 선택적으로 픽처를 디스플레이 하도록 제어하는 제어부; 및 상기 제어부의 제어신호에 기초하여 픽처를 디스플레이 하는 디스플레이를 포함하는 것이다.
본 발명의 다른 특징은, 비디오 데이터를 디스플레이 하는 방법에 있어서, 일정 크기의 블록으로 구성된 픽처를 포함하는 비디오 데이터를 수신하는 단계, 상기 수신된 비디오 데이터내의 현재 블록의 주소를 검출하는 단계; 및 상기 검출된 현재 블록의 주소에 기초하여 선택적으로 픽처를 디스플레이 하는 단계를 포함하는 방법을 구현하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체이다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시 예를 설명한다.
도 4는 본 발명에 따른 비디오 데이터 디스플레이 장치의 블록도를 도시한다.
본 발명에 따른 비디오 데이터 디스플레이 장치는 수신부(410), 주소 검출부(420), 제어부(430), 및 디스플레이부(440)를 포함한다.
수신부(410)는 비디오 데이터를 수신한다. 입력되는 비디오 데이터는 MPEG-2 TS 형태 및 MPEG-2 PS 형태 등 형식에 제한을 받지 않는다. 또한 전송된 데이터가 디코딩되어 수신부(410)에 전달될 수도 있다. 수신된 비디오 데이터는 일정 크기의 블록으로 구성된 픽처를 포함하며, MPEG-2 데이터인 경우 블록은 메크로 블록에 해당할 수도 있다.
복호화부(도시되지 않음)는 수신된 비디오 데이터를 복호화한다. 복호화부는 본 실시예에서는 주소 검출부(420) 전단에 위치하지만, 선택적으로 주소 검출부(420) 후단에 위치할 수 있다. 복호화부가 주소 검출부(420) 후단에 위치하는 경우에도 주소 검출부(420)는 비디오 데이터의 해더로부터 블록 주소 정보를 검출함으로써 주소를 검출할 수 있다.
주소 검출부(420)는 수신부(410)로 입력된 비디오 데이터로부터 현재 블록의 주소를 검출한다. 입력된 비디오 데이터는 하나 이상의 블록으로 이루어져 있으며, 주소 검출부(420)에서는 현재 입력된 블록의 주소를 검출한다.
제어부(430)는 주소 검출부(420)로부터 검출된 주소에 기초하여 비디오 데이터를 선택적으로 디스플레이 하도록 제어 신호를 발생시킨다. 일 실시예로 현재 블록이 픽처의 마지막 블록에 해당하는 경우 입력된 비디오 데이터를 디스플레이 하는 제어 동작을 수행할 수 있다. 이 경우에는 검출된 현재 블록의 주소에 기초하여 현재 블록의 주소가 픽처의 마지막 블록에 해당하는 경우 입력된 비디오 데이터를 디스플레이 하도록 제어 신호를 발생시킬 수 있다.
디스플레이부(440)는 제어부(430)에서 발생한 신호에 기초하여 선택적으로 비디오 데이터를 디스플레이 한다.
도 5는 본 발명에 따른 블록 카운터를 구비한 비디오 데이터 디스플레이 장 치의 블록도를 도시한다.
본 발명에 따른 블록 카운터를 구비한 비디오 데이터 디스플레이 장치는 역 다중화부(510), 비디오 ES 버퍼(520), 블록 카운터(530), 디코더(550), 디코딩 버퍼 선택기(550), 비디오 버퍼(560), 디스플레이 버퍼 선택기(570) 및 디스플레이부(580)을 포함한다.
도 5에 따라, 역 다중화부(510)는 입력된 MPEG-TS 스트림 혹은 MPEG-TS 스트림에서 MPEG ES만을 파싱하여 비디오 ES 버퍼(520)에 저장한다. 본 발명의 일 실시예에서는 MPEG-TS 혹은 MPEG-PS 스트림을 사용하였으나, 다른 형식의 비디오 데이터가 사용될 수 있음은 자명하다.
비디오 ES 버퍼(520)는 역 다중화부(510)에서 파싱된 비디오 ES가 저장되는 공간이다. 저장된 비디오 ES는 디코더로 전달된다. 본 발명이 적용되는 대표적인 어플리케이션인 블루레이 디스크에서는 기존의 MPEG-2 TS(188byte)에 ATS(Arrival Time Stamp)(4byte)를 부가하여 192byte TS 스트림을 사용한다. ATS는 도착시간정보를 나타내는 것으로 비디오 ES 버퍼(520)는 ATS에 따라 순차적으로 비디오 ES를 블록 카운터(540) 또는 디코더(530)에 전달한다.
또한 ATS는 도착시간 정보를 나타내는 것으로 디코더(530)에 데이터를 전달하는 속도를 결정한다. 즉 비디오 데이터의 ATS가 등성하게 배열되어 있다면 데이터가 천천히 디코더(530)로 입력된다.
디코더(530)는 비디오 ES 버퍼(520)로부터 전달받은 MPEG-2 비디오 ES를 조립하여 하나의 픽처를 완성한다. 이 때 디코딩 된 데이터는 디코딩 버퍼 선택 기(550)에 의하여 선택된 비디오 버퍼(560)에 저장된다.
블록 카운터(540)는 알고리즘에 따라 디코더(530)에 존재할 수도 있고, 디코더(530)와 동시에 구현될 수도 있으며, 디코더(530) 뒤에 존재할 수도 있다. 본 발명의 일 실시예에서는 디코더(530) 뒤에 블록 카운터(540)가 존재하지만, 순서가 바뀔수 있음은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 자명하다.
블록 카운터(540)는 본 발명에 따라 픽처의 마지막을 인식할 수 있도록 계산하는 모듈로서, 픽처의 마지막을 인식한 경우, 디코딩 버퍼 선택기(550) 및 디스플레이 버퍼 선택기(570)의 포인터를 1씩 증가시켜서 단일 픽처로 된 이미지를 화면에 디스플레이 할 수 있도록 한다. 블록 카운터(540)에 대한 자세한 설명은 도 8에서 후술한다.
디코딩 버퍼 선택기(550)는 디코더(530)로부터 전달받은 디코딩된 비디오 데이터를 저장할 비디오 버퍼(560)를 선택하고, 디스플레이 버퍼 선택기(570)는 디스플레이 할 비디오 버퍼(560)를 선택한다. 바람직하게 디스플레이 되는 경우는 비디오 버퍼(560)에 디코딩 된 데이터가 조립되어 하나의 픽처로 완성되면, 디스플레이 버퍼 선택기(570)가 포인터를 1증가시켜 완성된 픽처가 디스플레이 되는 것이다.
디스플레이부(580)는 디스플레이 버퍼 선택기(570)가 선택한 비디오 버퍼(560)에 저장된 비디오 데이터를 디스플레이 한다.
도 5의 본 발명에 의하면, a)도 3과 같이 비디오 스트림 사이에 시간 차이가 존재함으로써, 적절한 시점에 비디오 데이터를 표현하기 힘든 경우, b)단일 프레임 으로 구성된 비디오 데이터 중에 뒤이어 SEC/EOS 코드가 없는 스트림 c)단일 프레임으로 구성되어 있고 이후에 사용자 부가 데이터가 송신됨으로써, MPEG-2 시스템 파서가 일정 시간이 지난후에야 SEC/EOS를 디코더에 전달하는 경우, d)이전 픽처와 현재 픽처의 PTS(Presentation time stamp)가 66ms(15hz)이상 벌어져 있거나 불규칙적으로 배열된 스트림의 경우에 있어서 비디오 스트림을 설정된 PTS에 따라 표현할 수 있게 된다.
도 6은 본 발명에 적용되는 MPEG-2 데이터 형식의 계층 구조를 도시한다.
MPEG-2 표준에 따른 비디오 시퀀스(620)는 시퀀스 해더(622), GOP(Group of picture)(640-1,640-2) 및 SEC/EOS(Sequence end code/end of sequence)(624)로 구성된다.
시퀀스 해더(622)는 시퀀스 시작 코드(32bit)를 가지고 있으며, 수평 해상도, 수직해상도 등의 시퀀스에 관한 정보를 포함한다. 시퀀스 해더(622)는 익스텐션부를 포함할 수도 있으며 익스텐션부에는 비디오 포맷이나 색차정보, 디스플레이 크기등과 같은 시퀀스에 대한 확장 정보가 담긴다.
SEC/EOS(624)는 픽처의 마지막에 해당하는 코드로서, MPEG1,2 비디오 데이터에서는 SEC를 사용하며, VC1 및 H.264에서는 EOS라는 용어를 사용한다.
GOP(640)는 GOP해더(642) 및 픽처(660)로 구성된다.
픽처(660)는 픽처의 해더(662) 및 슬라이스(680)로 구성된다.
픽처의 해더(662)는 픽처마다 존재하는 것으로써, 픽처의 디스플레이 시간 정보, 픽처의 크기등에 관한 정보를 담고 있다.
슬라이스(680)는 슬라이스 해더(682)와 매크로 블록(690)으로 구성된다. 임의이 개수의 매크로 블록을 포함하며, 하나의 슬라이스는 적어도 하나의 매크로 블록(690)을 포함한다. 같은 열에 있는 슬라이스 버티컬 위치(slice_vertical_position)는 동일하다.
슬라이스의 해더(682)는 시작 코드를 가지고 있어 해더로 인식될 수 있다. 슬라이스 해더(682)는 슬라이스(680)의 픽처내의 위치 정보를 포함하고 있으며, 이를 통하여 오류를 정정할 수 있다.
매크로 블록(690)은 슬라이스(680) 층을 더욱 분할한 화소 블록이다. 슬라이스는 16*16의 매크로 블록으로 분할되며, 각각의 매크로 블록 주소를 가지고 있다.
본 발명은 이러한 매크로 블록(690)의 주소를 이용하여 픽처의 마지막을 계산하는 것이지만 다른 크기의 블록이나 메크로 블록의 분할된 불록으로도 구현할 수 있음은 자명하다. 본 발명의 동작 흐름에 관한 자세한 사항은 도 6에서 후술한다.
도 7은 본 발명에 따른 비디오 데이터의 마지막을 계산하는 비디오 데이터 디스플레이 방법을 구현한 흐름도이다.
단계 710에 따라, 비디오 데이터를 수신한다. 입력되는 비디오 데이터는 MPEG-2 TS 형태 및 MPEG-2 PS 형태 등 형식에 제한을 받지 않는다. 또한 디코딩 된 비디오 데이터를 수신할 수도 있다. 수신된 비디오 데이터는 일정 크기의 블록으로 구성된 픽처를 포함하며, MPEG-2 데이터인 경우 블록은 메크로 블록에 해당할 수도 있다.
단계 720에 따라, 단계 710에서 수신된 비디오 데이터로부터 현재 블록의 주소를 검출한다. 입력된 비디오 데이터는 하나 이상의 블록으로 이루어져 있으며, 입력된 비디오 데이터의 정보로부터 현재 입력된 블록의 주소를 검출한다.
단계 730에 따라, 단계 720에서 검출된 주소에 기초하여 비디오 데이터를 선택적으로 디스플레이 한다. 일 실시예로 현재 블록이 픽처의 마지막 블록에 해당하는 경우 입력된 비디오 데이터를 디스플레이 할 수 있다. 이 경우에는 검출된 현재 블록의 주소에 기초하여 현재 블록의 주소가 픽처의 마지막 블록에 해당하는 경우 입력된 비디오 데이터를 디스플레이 한다.
도 8는 본 발명에 따른 블록 카운터를 구비한 비디오 데이터 디스플레이 방법을 구현한 흐름도이다.
단계 810에 따라, 입력된 데이터가 시퀀스 해더(622)에 해당하는지 여부를 판단한다. 만일 입력된 데이터가 시퀀스 해더(622)인 경우에는 시퀀스 해더(622) 정보로부터 한 장의 픽처(640)에 존재하는 매크로 블록(690)의 개수를 계산한다. 이는 시퀀스 해더(622)에 존재하는 픽처의 가로(width), 세로(height) 및 모드(progressive/interaced 또는 field/frame)에 따라서 계산할 수 있다.
예를 들어 시퀀스 해더(622)로부터 한 장의 픽처(640)가 1920*1080p 이며, 프래임 모드인 MPEG-2 데이터에 있다. 다음 식에 의하여 메크로 블록의 개수를 계산한다.
(mb_width)=(1920+15)/16
(mb_height)=(1080+15)/16
따라서, 가로는 120.93, 세로는 68.43개의 메크로 블록이 필요하다. 소수점 이하의 숫자를 버리게되면 가로는 120, 세로는 68개의 메크로 블록이 필요하므로, 하나의 픽처에는 120*68개의 메크로 블록이 존재한다. 위 식에서 각 화소에 15를 더한 이유는 메크로 블록은 정수개로 존재하기 때문에 15를 더함으로써 소수점 이하의 수를 올려주는 역할을 하게 된다.
단계 820에 따라, 입력된 데이터가 픽처의 해더(662)에 해당하는지 여부를 판단한다. 만일 입력된 데이터가 픽처의 해더(662)인 경우에는 현재 디코딩된 픽처를 디스플레이 하도록 할 수 있다. 즉 픽처 해더(662)를 만남과 동시에 디코딩 버퍼 포인터(550) 및 디스플레이 버퍼 포인터(570)를 각각 증가시킴으로써, 새로운 버퍼에서 디코딩을 시작하고 이전에 디코딩된 데이터를 디스플레이 할 수 있다. 이는 종래 기술에 따른 디코더에도 존재하는 것으로써, 본 발명에 따른 블록 카운터를 구비한 MPEG-2 TS 데이터 디스플레이 방법에 있어서는 없어도 무방하다.
단계 830에 따라, 입력된 데이터가 슬라이스 해더(682)에 해당하는지 여부를 판단한다. 만일 입력된 데이터가 슬라이스 해더(682)인 경우에는 슬라이스 해더(682)로부터 이전 메크로 블록(691)의 위치를 계산한다.
MPEG-2 표준에 따라,
macroblock_row=slice_vertical_position-1에 의해 메크로 블록의 행을 계산한다. slice_vertical_position는 0x01부터 0xAF 값을 가진다. 만일 slice_ vertical_ position_extention이 있는 경우에는 macroblock_row= (slice_ vertical_ position_ extention<<7)+slice_vertical_position-1이 된다.
macroblock_address=macroblock_row*mb_width-1 로서 이전 메크로 블록의 위치를 계산한다.예를 들어 8*6의 메크로 블록이 있는 경우 3번째 줄의 시작에서 슬라이스 해더를 만났을때 슬라이스 해더로부터 메크로 블록의 주소를 계산한다. 즉 메크로 블록의 주소=2*8-1이 된다. 메크로 블록의 주소는 0부터 시작하므로, 2번째 줄의 마지막 메크로 블록의 주소가 계산되는 것이다.
단계 840에 따라, 입력된 데이터가 메크로 블록(690)에 해당하는지 여부를 판단한다. 만일 입력된 데이터가 메크로 블록(690)인 경우에는 이하의 블록 카운터(540)를 동작시켜 현재 메크로 블록이 픽처의 마지막에 해당하는 메크로 블록(690)인지를 판단한다.
단계 850에 따라, 입력된 메크로 블록의 주소를 계산한다. 이하에서는 입력된 메크로 블록을 현재 메크로 블록으로 지칭한다.
현재 메크로 블록의 주소는 이전 메크로 블록(691)의 주소에 현재 메크로 블록(692)과 이전 메크로 블록(691)의 주소 차분을 더함으로써 얻어질 수 있다.
MPEG-2 표준에 따라,
MB_address_difference=33*macroblock_escape+macroblock_address_increment
current_macroblock_address=MB_address_difference+previous_macroblock_address 로서 현재 메크로 블록(690)의 위치를 계산한다.
즉 인접하는 두 메크로 블록(691,692)간의 주소 차를 미리 설정된 계산식에 의해서 구해낸다. 현재 메크로 블록(692)의 주소는 이전 메크로 블록(691)의 주소에 구해진 차분 값을 더함으로서 구해진다.
단계 860에 따라, 단계 650에서 구한 현재 메크로 블록의 주소가 단계 마지막 메크로 블록의 주소에 해당하는지 여부를 판단한다. 만일 현재 메크로 블록의 주소가 마지막 메크로 블록의 주소보다 크거나 같다면 마지막 메크로 블록에 해당한다고 판단하여 단계 670을 수행한다. MPEG-2 표준에서는 메크로 블록의 주소가 0부터 시작하므로 if(current_macroblock_address>=(mb_whdth*mb_height-1)를 판단한다.
단계 870에 따라, 단계 660에서 현재 메크로 블록이 픽처의 마지막 메크로 블록으로 판단된 경우에는 디코딩 버퍼 선택기(550) 및 디스플레이 버퍼 선택기(570)의 포인터를 각각 증가시켜 디코딩된 픽처를 디스플레이 한다.
단계 880에 따라, 단계 660에서 현재 메크로 블록이 픽처의 마지막 메크로 블록이 아니라고 판단된 경우에는 현재 메크로 블록의 주소값을 저장한다.
도 8에는 도시되어 있지 않으나, 본 발명에 따라 에러를 검출하는 단계를 추가할 수도 있다.
현재 메크로 블록의 주소를 판단하여 마지막 메크로 블록에 해당하는지를 판단하여야 한다. 그러나 이 과정은 메크로 블록의 해더에는 메크로 블록의 주소값에 대한 증분만을 저장하고 있어 다소 복잡하다. 만일 모든 비디오 ES가 이상없이 수신된 경우라면, 이전 메크로 블록의 주소가 정확할 것이므로,
current_macroblock_address=MB_address_difference+previous_macroblock_address 의 식에 따라 현재 메크로 블록의 주소도 정확히 계산될 것이다. 그러나 만일 메크로 블록의 일부 유실과 같은 과거 메크로 블록의 값에 오류가 있는 경우에 는 현재 메크로 블록의 주소도 정확하지 않을 것이다.
이를 방지하기 위하여 에러의 발생을 판단하는 단계를 추가할 수 있다. 일 예로, 단계 830에 따라, 슬라이스 해더(582)로부터 이전 메크로 블록의 주소를 계산한다. 이 계산 값에 따라 산출된 이전 메크로 블록의 주소 값과, 단계 880에 따라 저장된 이전 메크로 블록의 주소 값을 비교하여 일치하지 아니하는 경우에는 에러 케이스로 검출할 수 있다.
한편, 상술한 본 발명의 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다.
상기 컴퓨터로 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등) 및 캐리어 웨이브(예를 들면, 인터넷을 통한 전송)와 같은 저장매체를 포함한다.
이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
본 발명은 MPEG-2 디코더가 픽처의 시작이나 SEC/EOS만을 확인하는 것에 더하여 픽처의 마지막을 계산하는 기능을 첨가하여, 종래 기술상의 MPEG-2 디코더를 사용할 경우 블루레이 디스크에 존재하는 스트림 상에 비디오 갭이 SEC/EOS 코드 없이 존재하는 경우 지연되어 디스플레이 되는 문제점을 해결하여 보다 정확한 시간에 픽처를 디스플레이 하는 효과가 있다.

Claims (21)

  1. 비디오 데이터를 디스플레이 하는 방법에 있어서,
    일정 크기의 블록으로 구성된 픽처를 포함하는 비디오 데이터를 수신하는 단계,
    상기 수신된 비디오 데이터내의 현재 블록의 주소를 검출하는 단계; 및
    상기 검출된 현재 블록의 주소에 기초하여 선택적으로 픽처를 디스플레이 하는 단계를 포함하고,
    상기 선택적으로 디스플레이 하는 단계는,
    상기 검출된 현재 블록의 주소가 픽처의 마지막 블록 주소에 해당하는 경우에는 디코딩된 픽처를 디스플레이 하는 것을 특징으로 하는 비디오 데이터 디스플레이 방법.
  2. 제 1항에 있어서,
    상기 수신된 비디오 데이터를 디코딩하는 단계를 더 포함하는 것을 특징으로 하는 비디오 데이터 디스플레이 방법.
  3. 삭제
  4. 제 1항에 있어서,
    상기 검출된 현재 블록의 주소가 픽처의 마지막 블록 주소에 해당하지 않는 경우에는 상기 현재 블록 주소를 제 2 이전 블록 주소로써 저장하는 단계를 더 포함하는 것을 특징으로 하는 비디오 데이터 디스플레이 방법.
  5. 제 1항에 있어서, 상기 픽처의 마지막 블록 주소는,
    상기 수신된 비디오 데이터로부터 픽처의 크기 정보를 검출하고, 상기 검출된 픽처의 크기에 기초하여 퍽처를 구성하는 블록의 개수를 계산하고, 각각의 블록에 주소를 할당함으로써 얻어지는 것을 특징으로 하는 비디오 데이터 디스플레이 방법.
  6. 제 4항에 있어서, 현재 블록의 주소는,
    상기 저장된 제 1 이전 블록 주소에 기 설정된 차분 값을 더함으로써 얻어지는 것을 특징으로 하는 비디오 데이터 디스플레이 방법.
  7. 제 4항에 있어서,
    상기 수신된 비디오 데이터가 슬라이스 정보에 해당하는 경우에는 상기 슬라이스 정보에 기초하여 제 2 이전 블록 주소를 계산하는 단계를 더 포함하는 것을 특징으로 하는 비디오 데이터 디스플레이 방법.
  8. 제 7항에 있어서,
    상기 현재 블록의 주소 값에 에러가 존재하는지를 판단하는 단계를 더 포함 하는 것을 특징으로 하는 비디오 데이터 디스플레이 방법.
  9. 제 8항에 있어서, 상기 에러가 존재하는 경우는,
    상기 슬라이스 정보에 기초하여 계산된 제 2 이전 블록 주소 값이 상기 저장된 제 1 이전 블록 주소 값과 다른 경우인 것을 특징으로 하는 비디오 데이터 디스플레이 방법.
  10. 제 9항에 있어서,
    상기 판단 결과에 기초하여 에러가 발생한 경우에는, 상기 슬라이스 정보에 기초하여 계산된 제 2 이전 블록 주소 값을 제 1 이전 블록 주소 값으로 저장하는 단계를 더 포함하는 것을 특징으로 하는 비디오 데이터 디스플레이 방법.
  11. 비디오 데이터를 디스플레이 하는 장치에 있어서,
    일정 크기의 블록으로 구성된 픽처를 포함하는 비디오 데이터를 수신하는 수신부,
    상기 수신부로 수신된 비디오 데이터내의 현재 블록의 주소를 검출하는 블록 주소 검출부;
    상기 블록 주소 검출부에서 검출된 현재 블록의 주소에 기초하여 선택적으로 픽처를 디스플레이 하도록 하기위한 제어신호를 발생시키는 제어부; 및
    상기 제어부의 제어신호에 기초하여 픽처를 디스플레이 하는 디스플레이부를 포함하고,
    상기 제어부는, 상기 블록 주소 검출부에서 검출된 현재 블록의 주소가 픽처의 마지막 블록 주소에 해당하는 경우에는 디코딩된 픽처를 디스플레이 하기 위한 제 1제어신호를 생성하는 것을 특징으로 하는 비디오 데이터 디스플레이 장치.
  12. 제 11항에 있어서,
    상기 수신부로 수신된 비디오 데이터를 디코딩하는 디코더를 더 포함하는 것을 특징으로 하는 비디오 데이터 디스플레이 장치.
  13. 삭제
  14. 제 11항에 있어서,
    상기 검출된 현재 블록의 주소가 픽처의 마지막 블록 주소에 해당하지 않는 경우에는 상기 현재 블록 주소를 제 1 이전 블록 주소로써 저장하기 위한 데이터베이스를 더 포함하는 것을 특징으로 하는 비디오 데이터 디스플레이 장치.
  15. 제 11항에 있어서, 상기 픽처의 마지막 블록 주소는,
    상기 수신된 비디오 데이터로부터 픽처의 크기 정보를 검출하고, 상기 검출된 픽처의 크기에 기초하여 퍽처를 구성하는 블록의 개수를 계산하고, 각각의 블록에 주소를 할당함으로써 얻어지는 것을 특징으로 하는 비디오 데이터 디스플레이 장치.
  16. 제 14항에 있어서, 상기 현재 블록의 주소는,
    상기 데이터베이스에 저장된 제 1이전 블록 주소에 기 설정된 차분 값을 더함으로써 얻어지는 것을 특징으로 하는 비디오 데이터 디스플레이 장치.
  17. 제 14항에 있어서,
    상기 수신된 비디오 데이터가 슬라이스 정보에 해당하는 경우에는 상기 슬라이스 정보에 기초하여 제 2 이전 블록 주소를 계산하는 이전 블록 계산부를 더 포함하는 것을 특징으로 하는 비디오 데이터 디스플레이 장치.
  18. 제 17항에 있어서, 상기 제어부는,
    상기 현재 블록의 주소 값에 에러가 존재하는지를 판단하고 에러가 발생한 경우에는 제 2 제어신호를 생성하는 것을 특징으로 하는 비디오 데이터 디스플레이 장치.
  19. 제 18항에 있어서, 상기 에러가 존재하는 경우는,
    상기 이전 블록 주소 계산부에서 계산된 제 2 이전 블록 주소 값이 상기 데이터베이스에 저장된 제 1 이전 블록 주소 값과 다른 경우인 것을 특징으로 하는 비디오 데이터 디스플레이 장치.
  20. 제 19항에 있어서, 상기 데이터베이스는,
    상기 제어부가 제 2 제어신호를 생성한 경우에는, 상기 제어신호에 기초하여 상기 슬라이스 정보에 기초하여 계산된 제 2 이전 블록 주소 값이 제 1 이전 블록 주소 값으로써 저장되는 것을 특징으로 하는 비디오 데이터 디스플레이 장치.
  21. 제 1항, 제 2항, 제 4항 내지 제 10항 중 어느 한 항에 기재된 방법을 구현하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020070030380A 2007-03-28 2007-03-28 비디오 데이터 디스플레이 방법 및 장치 KR101086434B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020070030380A KR101086434B1 (ko) 2007-03-28 2007-03-28 비디오 데이터 디스플레이 방법 및 장치
US11/876,090 US8681879B2 (en) 2007-03-28 2007-10-22 Method and apparatus for displaying video data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070030380A KR101086434B1 (ko) 2007-03-28 2007-03-28 비디오 데이터 디스플레이 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20080088045A KR20080088045A (ko) 2008-10-02
KR101086434B1 true KR101086434B1 (ko) 2011-11-25

Family

ID=39794273

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070030380A KR101086434B1 (ko) 2007-03-28 2007-03-28 비디오 데이터 디스플레이 방법 및 장치

Country Status (2)

Country Link
US (1) US8681879B2 (ko)
KR (1) KR101086434B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9860580B1 (en) * 2012-09-21 2018-01-02 Amazon Technologies, Inc. Presentation of streaming content
KR102135958B1 (ko) * 2013-08-06 2020-07-20 삼성전자주식회사 복수 개의 메모리 컨트롤러를 이용한 영상 데이터 저장 방법 및 장치

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7095783B1 (en) * 1992-06-30 2006-08-22 Discovision Associates Multistandard video decoder and decompression system for processing encoded bit streams including start codes and methods relating thereto
US6435737B1 (en) * 1992-06-30 2002-08-20 Discovision Associates Data pipeline system and data encoding method
US7035336B2 (en) * 1992-12-22 2006-04-25 Canon Kabushiki Kaisha Coding/decoding apparatus in accordance with an order opposite to the inputting order
JP3076201B2 (ja) * 1994-07-28 2000-08-14 日本電気株式会社 画像データ伸張方式
US5907660A (en) * 1994-09-21 1999-05-25 Mitsubishi Denki Kabushiki Kaisha Digital video signal playback device with special playback data being in the form of a still image slice data
JP3474005B2 (ja) * 1994-10-13 2003-12-08 沖電気工業株式会社 動画像符号化方法及び動画像復号方法
KR0148553B1 (ko) 1994-12-30 1998-11-16 정장호 디지탈 시스템의 매크로블럭 연산기
US5883678A (en) * 1995-09-29 1999-03-16 Kabushiki Kaisha Toshiba Video coding and video decoding apparatus for reducing an alpha-map signal at a controlled reduction ratio
US6895048B2 (en) * 1998-03-20 2005-05-17 International Business Machines Corporation Adaptive encoding of a sequence of still frames or partially still frames within motion video
JP2002204450A (ja) * 2000-12-28 2002-07-19 Sony Corp データ処理装置および方法
JP2000032393A (ja) * 1998-07-09 2000-01-28 Sony Corp 画像情報処理装置および方法、並びに提供媒体
CN1140125C (zh) * 1999-04-13 2004-02-25 索尼公司 视频处理装置和方法
US6539059B1 (en) * 2000-03-02 2003-03-25 Sun Microsystems, Inc. Apparatus and method for efficiently scalable digital video decoding
US6671320B1 (en) * 2000-06-16 2003-12-30 Lucent Technologies Inc. CIF to QCIF video bitstream down conversion
US7079582B2 (en) * 2000-07-07 2006-07-18 Matsushita Electric Industrial Co., Ltd. Image coding apparatus and image coding method
KR100771596B1 (ko) 2001-01-05 2007-10-31 엘지전자 주식회사 디지털 캠코더 포맷 영상의 복호화 방법 및 장치
JP2002223443A (ja) * 2001-01-24 2002-08-09 Yamaha Corp トランスコーディング方法およびトランスコーディング装置
WO2003009577A2 (en) * 2001-07-18 2003-01-30 Polycom Israel Ltd. A system and method for improving the quality of video communication over a packet-based network
CN102025991B (zh) * 2001-09-14 2017-12-29 株式会社Ntt都科摩 编码方法、译码方法、编码装置、译码装置和图像处理系统
EP2373035B1 (en) * 2001-11-30 2015-11-25 NTT DoCoMo, Inc. Moving picture encoding device, moving picture decoding device, moving picture encoding method, moving picture decoding method, program, and computer readable recording medium storing program
US7813431B2 (en) * 2002-05-20 2010-10-12 Broadcom Corporation System, method, and apparatus for decoding flexibility ordered macroblocks
US6961376B2 (en) * 2002-06-25 2005-11-01 General Instrument Corporation Methods and apparatus for rate control during dual pass encoding
US7251275B2 (en) * 2002-06-25 2007-07-31 General Instrument Corporation Methods and apparatus for statistical multiplexing during dual pass encoding
WO2005027495A2 (en) * 2003-09-07 2005-03-24 Microsoft Corporation Slice layer in video codec
US20070171979A1 (en) * 2004-02-20 2007-07-26 Onno Eerenberg Method of video decoding
EP1592254A1 (en) * 2004-04-30 2005-11-02 Matsushita Electric Industrial Co., Ltd. Film mode extrapolation
KR100668302B1 (ko) 2004-07-28 2007-01-12 삼성전자주식회사 비디오 디코더/엔코더에서의 메모리 맵핑 장치 및 그 방법
US20060045190A1 (en) * 2004-09-02 2006-03-02 Sharp Laboratories Of America, Inc. Low-complexity error concealment for real-time video decoder
KR20060099026A (ko) 2005-03-10 2006-09-19 엘지전자 주식회사 영상의 확대 처리 방법
TWI304303B (en) * 2006-01-04 2008-12-11 Sunplus Technology Co Ltd Apparatus for image encoding and the method thereof
US7949054B2 (en) * 2006-06-01 2011-05-24 Microsoft Corporation Flexible data organization for images

Also Published As

Publication number Publication date
US8681879B2 (en) 2014-03-25
US20080240232A1 (en) 2008-10-02
KR20080088045A (ko) 2008-10-02

Similar Documents

Publication Publication Date Title
JP3894940B2 (ja) 映像音声記録装置
US7787753B2 (en) Recording medium having a data structure for managing reproduction of text subtitle data and methods and apparatuses of recording and reproducing
US8848037B2 (en) Data structure, recording medium, playing device and playing method, and program
US20040168203A1 (en) Method and apparatus for presenting video data in synchronization with text-based data
US8130844B2 (en) Apparatus and method for synchronized playback
US20110116722A1 (en) Coded stream reproduction device and coded stream reproduction method
EP2860732A1 (en) Synchronized stream packing
US6041067A (en) Device for synchronizing data processing
US8144791B2 (en) Apparatus, method, and medium for video synchronization
US20080301538A1 (en) Method and Apparatus for Detecting Video Data Errors
JP2005516493A (ja) ストリームデータの誤り訂正
KR20060099687A (ko) 타임스탬프를 이용한 비디오 동기화 장치 및 방법
KR101086434B1 (ko) 비디오 데이터 디스플레이 방법 및 장치
US20070086729A1 (en) Method for reproducing data of optical disc
CN110675895B (zh) 再现方法、再现装置以及记录介质
JP4744345B2 (ja) サムネイル作成方法および動画データ再生装置
JP2007049504A (ja) 記録媒体、再生装置および再生方法
JP2008236180A (ja) 記録装置、映像再生装置、および、その特殊再生方法
US7039849B2 (en) Data decoder and method of decoding data
JP6742515B2 (ja) 符号化映像再生装置および符号化映像再生方法
JP3917346B2 (ja) 画像復号装置及び画像復号方法
US7881588B2 (en) Image reproducing apparatus
JP2006352587A (ja) 情報処理装置
KR101226178B1 (ko) 비디오 데이터 디스플레이 방법 및 장치
US20060182416A1 (en) Subtitle scrolling detecting device and method

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

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20151029

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20161028

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee