KR100928324B1 - 압축된 동영상을 복원하기 위한 프레임 버퍼 메모리 운영방법 및 이에 적합한 디코딩 장치 - Google Patents

압축된 동영상을 복원하기 위한 프레임 버퍼 메모리 운영방법 및 이에 적합한 디코딩 장치 Download PDF

Info

Publication number
KR100928324B1
KR100928324B1 KR1020070099245A KR20070099245A KR100928324B1 KR 100928324 B1 KR100928324 B1 KR 100928324B1 KR 1020070099245 A KR1020070099245 A KR 1020070099245A KR 20070099245 A KR20070099245 A KR 20070099245A KR 100928324 B1 KR100928324 B1 KR 100928324B1
Authority
KR
South Korea
Prior art keywords
frame
buffer
stored
current
waiting
Prior art date
Application number
KR1020070099245A
Other languages
English (en)
Other versions
KR20090034083A (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 KR1020070099245A priority Critical patent/KR100928324B1/ko
Priority to US12/242,942 priority patent/US20090086818A1/en
Priority to US12/248,886 priority patent/US8060446B2/en
Publication of KR20090034083A publication Critical patent/KR20090034083A/ko
Application granted granted Critical
Publication of KR100928324B1 publication Critical patent/KR100928324B1/ko

Links

Images

Classifications

    • 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/43Hardware specially adapted for motion estimation or compensation
    • H04N19/433Hardware specially adapted for motion estimation or compensation characterised by techniques for memory access
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/085Payment architectures involving remote charge determination or related payment systems
    • G06Q20/0855Payment architectures involving remote charge determination or related payment systems involving a third party
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • G06Q20/367Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
    • G06Q20/3674Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes involving authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • G06Q20/4012Verifying personal identification numbers [PIN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • 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
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

본 발명은 압축된 동영상을 복원하는 방법에 관한 것으로서, 특히 압축된 동영상을 복원함에 있어서 사용되는 버퍼 메모리를 효율적으로 운영함으로써, 실제 사용되는 버퍼 메모리 용량을 효율적으로 감소시킬 수 있는 압축된 동영상을 복원하기 위한 버퍼 메모리 운영 방법 및 이에 적합한 디코딩 장치에 관한 것이다.
본 발명의 일 실시 예에 따른 버퍼 메모리 운영 방법은, (A)입력된 현재 I 프레임을 디코딩한 후, 상기 디코딩된 현재 I 프레임을 어느 하나의 대기 버퍼에 저장하고, 상기 현재 I 프레임이 저장된 대기 버퍼를 저장 버퍼로 전환함과 동시에 이전 I 프레임이 저장된 저장 버퍼를 다른 하나의 대기 버퍼로 전환하는 단계; 및 (B)입력된 현재 P 프레임을 상기 저장 버퍼에 저장된 I 프레임을 참조하여 디코딩한 후, 상기 디코딩된 현재 P 프레임을 어느 하나의 대기 버퍼에 저장하고, 상기 현재 P 프레임이 저장된 대기 버퍼를 다른 하나의 대기 버퍼로 전환하는 단계를 포함한다.
프레임 버퍼 메모리, 키 프레임, 디코더, 컨트롤러

Description

압축된 동영상을 복원하기 위한 프레임 버퍼 메모리 운영 방법 및 이에 적합한 디코딩 장치{Frame buffer memory operation method for decompressing compressed moving pictures and decoding device adapted to the same}
본 발명은 압축된 동영상을 복원하는 방법에 관한 것으로서, 특히 압축된 동영상을 복원함에 있어서 사용되는 버퍼 메모리를 효율적으로 운영함으로써, 실제 사용되는 버퍼 메모리 용량을 효율적으로 감소시킬 수 있는 압축된 동영상을 복원하기 위한 버퍼 메모리 운영 방법 및 이에 적합한 디코딩 장치에 관한 것이다.
일반적으로, 동영상 데이터는 매우 큰 데이터 용량을 갖는다. 하지만, 동영상을 구성하는 각 비디오 프레임 사이의 상관관계를 이용하면, 동영상의 화질 저하를 막으면서도 동영상을 효율적으로 압축시킬 수 있다. 일반적인 동영상 압축 방법은, 입력된 비디오 신호를 GOP(Group Of Picture)라 불리는 압축 부호화된 비디오 프레임들의 집합으로 인코딩하는 과정을 포함한다.
상기 GOP는 I 프레임을 하나 포함하고, 그 이전 I 또는 P 프레임을 참조하여 예측 부호화되는 P 프레임을 포함한다. 또한, 그 이전 또는 다음 I 또는 P 프레임을 참조하여 예측 부호화되는 B 프레임을 포함할 수 있다. 여기서, I 프레임은 프 레임간의 상관관계를 이용하지 않고 부호화되기 때문에, 자신의 데이터만을 이용하여 원래의 영상으로 복원될 수 있다.
그러나 P 또는 B 프레임은 그 이전(또는 이후) 프레임을 참조하여 부호화되기 때문에, 그 이전(또는 이후)의 I 또는 P 프레임을 이용하지 않으면 복원될 수 없다. 따라서, 모든 프레임이 순서대로 정렬되어 있어야 원래의 영상으로 복원할 수 있고, 일부 데이터가 유실된 경우 그 이후 데이터부터는 복원이 불가능하다는 문제점이 있다. 이러한 현상을 오류 전파라고 한다. 이를 해결하기 위해서 키 프레임(Key Frame)을 이용하는 방식이 사용되고 있다.
키 프레임 방식은 현재 프레임과 키 프레임과의 상관관계만을 이용하여 압축하고 복원하는 방식이다. 일반적으로, 키 프레임으로 I 프레임이 사용된다. 상기 키 프레임 방식을 이용하면, 키 프레임을 참조하는 일부 P 프레임이 유실되어도 이를 제외하고 그 이후부터는 동영상의 복원이 가능하다. 특히, 연산량을 감소시키기 위해 B 프레임을 제외하고 I 프레임과 P 프레임으로만 구성되도록 하는 방식을 사용하는 것이 바람직하다.
키 프레임 방식으로 압축된 영상을 복원하기 위한 일련의 프로세스에는, 키 프레임(I 프레임)을 복원하여 저장하기 위한 저장 버퍼 메모리와, 상기 저장 버퍼 메모리에 저장된 키 프레임을 참조하여 다른 프레임들(P 프레임)을 복원하여 저장하기 위한 복원 버퍼 메모리가 필요하다. 다만, 복원 버퍼 메모리는 참조 프레임을 저장하기 위한 용도로 쓰이는 것이 아니라, 프레임이 디스플레이되기 전에 임시 저장되는 장소로 사용된다.
한편, 실제 시스템 운영에 필요한 버퍼 메모리의 수는 이론적인 버퍼 메모리 소요량과 다르다. 그 이유는, 동일 공간을 사용할 경우 발생할 수 있는 영상의 오버라이트(Overwrite) 즉, 프레임 디스플레이 프로세스와 프레임이 저장 프로세스의 충돌을 방지해야 하기 때문이다. 따라서, 복원하여 저장하기 위한 버퍼 공간과 디스플레이를 수행하기 위한 버퍼 공간이 서로 분리되어야 한다. 또한, 소정시간 프레임이 저장되는 버퍼 메모리와 임시 저장되는 버퍼 메모리를 분리해야 한다.
다만, 디스플레이를 위한 별도의 메모리 영역을 설정하여 매 필드마다 디스플레이를 위한 프레임을 복사하여 사용하는 경우, 시스템 클록 주파수와의 관계상 이러한 복사 작업에 필요한 시간을 별도로 할당이 불가능한 경우가 발생한다. 이와 같은 문제점으로 인해, 종래에는 프레임 복사에 소요되는 시간을 회피하기 위해 복수 개의 I 및 P 프레임 전용 버퍼 영역을 확보하고, 전용 버퍼 영역 사이에서 그들의 용도를 바꿔가면서 복원 작업과 디스플레이 작업을 병행하고 있었다.
그러나, 이러한 종래의 시스템의 구성은 하나의 카메라로 촬영한 단일 영상에 대한 복원에서는 필요한 버퍼 메모리 용량에 대한 부담이 없지만, 복수 개의 카메라로 촬영한 멀티 영상에서는 매우 큰 용량의 버퍼 메모리가 필요하다는 문제점이 있다. 즉, 카메라의 개수가 증가함에 따라 필요한 버퍼 메모리의 수도 선형적으로 증가하여 하드웨어적으로 부담이 따른다는 문제점이 있다.
본 발명이 해결하고자 하는 기술적 과제는, 압축된 동영상 데이터를 복원할 때 사용되는 버퍼 메모리의 저장 공간을 각 프레임별로 고정하지 않고 유동적으로 사용함으로써, 필요한 버퍼 메모리 용량을 효율적으로 감소시킬 수 있는 버퍼 메모리 운영 방법을 제공하는 데 있다.
본 발명이 해결하고자 하는 다른 기술적 과제는, 압축된 동영상에 포함된 프레임의 순서 및 종류에 상응하게 그 내부에 포함된 버퍼 메모리를 효율적으로 운영함으로써, 적은 용량의 버퍼 메모리만으로도 디코딩 프로세스를 효율적으로 수행할 수 있는 디코딩 장치를 제공하는 데 있다.
상기 기술적 과제를 해결하기 위한 본 발명의 일 실시 예에 따른 버퍼 메모리 운영 방법은,
I 프레임 및 P 프레임을 포함하는 압축 영상 데이터를 복원하기 위한 프레임 버퍼 메모리의 운영 방법에 있어서, (A)입력된 현재 I 프레임을 디코딩한 후, 상기 디코딩된 현재 I 프레임을 어느 하나의 대기 버퍼에 저장하고, 상기 현재 I 프레임이 저장된 대기 버퍼를 저장 버퍼로 전환함과 동시에 이전 I 프레임이 저장된 저장 버퍼를 다른 하나의 대기 버퍼로 전환하는 단계; 및 (B)입력된 현재 P 프레임을 상기 저장 버퍼에 저장된 I 프레임을 참조하여 디코딩한 후, 상기 디코딩된 현재 P 프레임을 어느 하나의 대기 버퍼에 저장하고, 상기 현재 P 프레임이 저장된 대기 버퍼를 다른 하나의 대기 버퍼로 전환하는 단계를 구비한 것을 특징으로 한다.
바람직하게는, 상기 저장 버퍼 및 대기 버퍼는, 각각 하나의 프레임에 상응하는 메모리 용량을 갖으며, 상기 저장 버퍼의 수는 카메라 수에 상응하며, 상기 대기 버퍼의 수는 동시에 디스플레이되어야 할 카메라 수에 상응한 것을 특징으로 한다.
바람직하게는, 상기 (A) 단계는, 상기 디코딩된 현재 I 프레임을 제1 대기 버퍼에 저장하고, 상기 현재 I 프레임이 저장된 제1 대기 버퍼를 저장 버퍼로 전환함과 동시에 이전 I 프레임이 저장된 저장 버퍼를 제2 대기 버퍼로 전환하는 단계이고, 상기 (B) 단계는, 상기 디코딩된 현재 P 프레임을 제1 대기 버퍼에 저장하고, 상기 현재 P 프레임이 저장된 제1 순위 대기 버퍼를 제2 대기 버퍼로 전환하는 단계인 것을 특징으로 한다.
바람직하게는, 상기 제1 대기 버퍼 및 제2 대기 버퍼는, 상기 현재 I 프레임 또는 상기 현재 P 프레임이 입력되는 시점을 기준으로 상대적으로 정해지며, 유효 디코딩 데이터가 입력되는 매 프레임마다 상기 제1 대기 버퍼 및 제2 대기 버퍼는 변경되는 것을 특징으로 한다.
바람직하게는, 상기 프레임 버퍼 메모리 운영 방법은, 디코딩되어 저장 버퍼 또는 대기 버퍼에 저장된 영상을 역방향으로 재생함에 있어서, 상기 제2 대기 버퍼에 저장된 I 프레임 및 P 프레임을 출력하여 화면에 디스플레이하는 것을 특징으로 한다.
상기 기술적 과제를 해결하기 위한 본 발명의 일 실시 예에 따른 디코딩 장 치는,
인코딩된 영상 데이터를 디코딩하는 디코더, 디코딩된 프레임이 저장되는 프레임 버퍼 메모리, 디코딩된 프레임을 디스플레이하는 디스플레이 유닛, 및 상기 프레임 버퍼 메모리에 포함된 각각의 버퍼 메모리를 I 프레임을 저장하기 위한 저장 버퍼 또는 P 프레임을 저장하기 위한 대기 버퍼 중 어느 하나로 지정하고, 매 I 프레임 주기마다 상기 저장 버퍼가 변경되도록 제어하고, 매 P 프레임 주기마다 상기 대기 버퍼가 변경되도록 제어하는 컨트롤러를 포함하는 것을 특징으로 한다.
본 발명에 따른 프레임 버퍼 메모리 운영 방법은 종래와 같이 특정 프레임 전용 버퍼들을 사용하는 것이 아니라, 각 프레임 단위로 버퍼들의 역할을 재정의하고, 이들 버퍼의 역할을 로테이션함으로써 디코딩함에 있어서 필요한 버퍼 메모리의 수를 줄일 수 있다. 특히, 멀티 카메라로 촬영한 동영상을 복원할 때 필요한 버퍼 메모리의 수를 줄일 수 있는데, 예를 들면, 종래에는 4개의 카메라로 촬영한 영상을 복원할 때에는 16개의 버퍼 메모리가 필요하였지만, 본원 발명에 따르면 6개의 버퍼 메모리만을 이용하여 복원 절차를 수행할 수 있다.
본 발명과 본 발명의 동작상의 이점 및 본 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는, 본 발명의 바람직한 실시 예를 나타내는 첨부 도면 및 도면에 기재된 내용을 참조하여야 한다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시 예를 상세히 설명한 다. 본 발명을 설명함에 있어, 관련된 공지의 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다.
도 1은 종래의 프레임 버퍼 메모리 운영 방법을 나타내는 상세 흐름도이다.
압축 부호화된 영상 데이터를 프레임 단위로 입력받는다(110). 상기 입력되는 영상 데이터에는 B 프레임도 포함될 수 있지만, 인코딩에 소요되는 시간 및 연산량을 감소시키기 위해 I 프레임 및 P 프레임만이 포함될 수 있다. 또한, 상기 입력되는 영상 데이터의 압축 방식은 노말 압축 방식 또는 키 프레임 압축 방식일 수 있다. 그 후, 프레임 단위로 입력되는 프레임이 I 프레임인지를 판단한다(115).
판단 결과, 다른 프레임을 참조하지 않고 인코딩된 I 프레임인 경우, 독립적으로 디코딩한다(120). 그 후, 기수 번째 I 프레임인지를 판단하고(125), 기수 번째 I 프레임인 경우 디코딩된 I 프레임을 제1 I 프레임 전용 버퍼에 저장하고(130), 우수 번째 I 프레임인 경우 디코딩된 I 프레임을 제2 I 프레임 전용 버퍼에 저장한다(130). 그 후, 저장된 I 프레임을 소정 시간 경과 후 디스플레이한다(140).
판단 결과, 다른 프레임을 참조하여 인코딩된 P 프레임인 경우, 디코딩된 참조 프레임과의 상관관계를 이용하여 디코딩한다(145). 다만, 참조 프레임은 그 이전에 디코딩되어 있어야 한다. 그 후, 기수 번째 P 프레임인지를 판단하고(150), 기수 번째 P 프레임인 경우 디코딩된 P 프레임을 제1 P 프레임 전용 버퍼에 저장하고(155), 우수 번째 P 프레임인 경우 디코딩된 P 프레임을 제2 P 프레임 전용 버퍼 에 저장한다(160). 그 후, 저장된 P 프레임을 바로 디스플레이한다(160).
상술한 바와 같이, 종래의 버퍼 메모리 운영 방법은, 데이터 충돌을 방지하기 위해, 각 프레임 유형별로 두 개의 버퍼 메모리를 구비하고, 입력되는 프레임의 순서에 따라 프레임을 다른 공간에 저장하였다. 다만, 키 프레임 방식에서 P 프레임은 참조 프레임이 아니므로, P 프레임 전용 버퍼는 프레임을 저장하는 공간으로 사용되지 않고 디스플레이를 준비하기 위한 공간으로 사용된다.
도 2는 종래의 일 실시 예에 따른 프레임 버퍼 메모리 운영 방법을 설명하기 위한 도면이다.
도 2를 참조하면, 하나의 카메라를 통해 입력된 영상을 I 프레임과 P 프레임 타입으로 구성된 연속적인 프레임으로 인코딩하고, 인코딩된 압축 데이터를 디코딩하여 순 방향으로 재생할 때, 디코딩 버퍼를 운영하는 방법이 도시되어 있다. 상술한 바와 같이, 키 프레임 방식에서 P 프레임은 I 프레임을 참조하여 인코딩되기 때문에, 디코딩하는 과정에서 I 프레임이 필요하다.
종래의 버퍼 메모리 운영 방법은, 하나의 카메라로부터 입력되는 단일 영상일 경우, I 프레임이 입력되는 순서에 따라 두 개의 I 프레임 전용 버퍼(C1A,C1B)를 번갈아가면서 사용하고, P 프레임이 입력되는 순서에 따라 두 개의 P 프레임 전용 버퍼(B1A,B1B)를 번갈아가면서 사용한다. 이로 인해, 2I 프레임 주기 단위로 각각의 I 프레임 전용 버퍼에 저장된 프레임이 달라지고, 2P 또는 3P 프레임 주기 단위로 각각의 P 프레임 전용 버퍼의 저장된 프레임이 달라진다.
도 3은 종래의 다른 실시 예에 따른 프레임 버퍼 메모리 운영 방법을 설명하 기 위한 도면이다.
도 3을 참조하면, 두 개의 카메라를 통해 입력된 영상을 I 프레임과 P 프레임 타입으로 구성된 연속적인 프레임으로 인코딩하고, 인코딩된 압축 데이터를 디코딩하여 순 방향으로 재생할 때, 디코딩 버퍼를 운영하는 방법이 도시되어 있다. 복수 개의 카메라로 촬영된 영상을 동시에 인코딩할 때에는, 두 개의 영상이 서로 뒤섞여 입력되며 각각의 영상별로 GOP가 구성된다.
종래의 버퍼 메모리 운영 방법은, 두 개의 카메라로부터 입력되는 멀티 영상일 경우, I 프레임이 입력되는 순서에 따라 제1 카메라를 위한 두 개의 I 프레임 전용 버퍼(C1A,C1B)와 제2 카메라를 위한 두 개의 I 프레임 전용 버퍼(B1A,B2B)를 번갈아가면서 사용하고, P 프레임이 입력되는 순서에 따라 제1 카메라를 위한 두 개의 P 프레임 전용 버퍼 메모리(B1A,B1B)와 제2 카메라를 위한 두 개의 P 프레임 전용 버퍼(B2A,B2B)를 번갈아가면서 사용한다.
한편, 도 2와 도 3을 다시 참조하면, 카메라의 수가 두 배로 증가함에 따라 필요한 버퍼 메모리 용량도 두 배(4개->8개)로 증가함을 알 수 있다. 즉, 영상의 수와 버퍼 메모리 용량은 선형 관계에 있다. 이로 인해, 복수 개의 영상을 동시에 복원 처리하는 경우, 매우 큰 버퍼 메모리 용량이 필요하다. 본 발명은 이와 같은 문제점을 해결하기 위해 I 프레임을 저장하기 위한 공간과 P 프레임을 저장하기 위한 공간을 구별하지 않고 그 역할을 로테이션하는 것을 특징으로 하고 있다.
도 4는 본 발명의 일 실시 예에 따른 프레임 버퍼 메모리 운영 방법을 나타내는 상세 흐름도이다.
본 발명은, 종래와 같이 I 프레임을 저장하기 위한 버퍼 메모리와 P 프레임을 저장하기 위한 버퍼 메모리를 서로 구별하는 방식이 아니라, 입력되는 프레임의 종류 및 순서, 그리고 카메라의 종류에 따라 각각의 버퍼 메모리의 역할을 교대하는 것을 특징으로 한다. 이하, 저장 버퍼는 I 프레임이 소정시간 저장되는 공간으로 정의하고, 대기 버퍼는 P 프레임이 임시 저장되는 공간으로 정의한다. 특히, 도 4는 순 방향 재생을 할 때 버퍼 메모리 운영 방법을 나타낸다.
압축 부호화된 영상 데이터(I 및 P 프레임으로 구성)를 프레임 단위로 입력받는다(410). 압축된 영상 데이터를 입력받아 디코딩하는 순서는 인코딩 방향과 동일한 순 방향이다. 또한, 압축된 영상 데이터는 하나 또는 그 이상의 카메라로부터 촬영된 영상이 압축된 것일 수 있다. 인코딩 방식은 현재 프레임과 키 프레임(I 프레임)과의 상관 관계만을 이용하여 인코딩하는 키 프레임 방식일 수 있다. 그 후, 프레임 단위로 입력되는 프레임이 I 프레임인지를 판단한다(415).
판단 결과, 다른 프레임을 참조하지 않고 인코딩된 I 프레임인 경우, 독립적으로 디코딩한다(420). 그 후, 디코딩된 I 프레임이 영상을 구성하는 첫 번째 I 프레임인지를 판단한다(425). 판단 결과, 첫 번째 I 프레임인 경우, 초기 저장 버퍼에 저장한다(430). 초기 저장 버퍼의 수는 카메라의 수에 상응한다. 예를 들어, N개의 카메라로부터 촬영된 영상이 인코딩된 경우, 디코딩을 위해 N개의 초기 저장 버퍼가 존재해야 한다.
그러나 첫 번째 I 프레임이 아닌 경우, 제1 대기 버퍼에 입력된 I 프레임을 저장한다(435). 그 후, 제1 대기 버퍼를 저장 버퍼로 전환하고(440), 기존 저장 버 퍼를 제2 대기 버퍼로 전환한다(445). 제1 대기 버퍼는 특정 버퍼를 지칭하는 것이 아니며, 매 프레임 단위로 변경된다. 예를 들어, 2개의 대기 버퍼가 존재하는 경우, 새로운 P 프레임이 입력될 때마다 대기 버퍼들의 순위가 변경된다. 그 후, 저장된 I 프레임을 디스플레이한다(450). 다만, I 프레임은 참조 프레임이므로 소정시간 저장된다.
판단 결과, 다른 프레임을 참조하여 인코딩된 P 프레임인 경우, 참조한 프레임과의 상관관계를 이용하여 디코딩한다(145). 키 프레임 방식에서는, 참조한 프레임이 I 프레임이다. 그 후, 제1 대기 버퍼에 디코딩된 P 프레임을 임시 저장하고(460), 저장된 P 프레임을 디스플레이한다(465). 다만, P 프레임은 참조 프레임이 아니므로 소정시간 저장되지 않고 바로 폐기된다. 그 후, 대기 버퍼들의 대기 순위를 변경한다(470). 다만, 대기 버퍼들이 3개 이상 존재하는 경우에는, 상기 제1 대기 버퍼는 최선 순위 대기 버퍼를 나타내며, 상기 제2 대기 버퍼는 최후 순위 대기 버퍼를 나타내는 것으로 이해하여야 한다. 이하, 첨부하는 도면을 통해 구체적으로 설명한다.
도 5는 하나의 카메라로부터 입력된 영상을 순 방향 재생할 때 본 발명에 따른 프레임 버퍼 메모리 운영 방법을 설명하기 위한 도면이다.
도 5를 참조하면, 하나의 카메라로부터 촬영된 영상 신호는 I 프레임과 P 프레임으로 압축되며, 압축된 각각의 프레임은 그 입력 순서를 갖는다. 디코딩 버퍼는 현재 디코딩된 프레임이 저장된 장소를 나타내며, 대기 버퍼는 이후 디코딩될 프레임이 저장될 장소를 나타내고, 저장 버퍼는 디코딩된 I 프레임이 저장된 장소 를 나타낸다. 본 발명에 따른 버퍼 메모리는 1개의 저장 버퍼(R0)와 2개의 대기 버퍼들(B0,B1)로 이루어질 수 있다. 다만 버퍼 메모리의 수는 이에 한정되지 않고, 가변적일 수 있다.
새로운 I 프레임이 입력되면 그 시점을 기준으로 최선 순위 대기 버퍼에 저장되며, 이전의 I 프레임을 저장한 저장 버퍼는 최후 순위 대기 버퍼로 전환된다. 다만, 제1 I 프레임이 입력되면 초기 저장 버퍼에 저장된다. 한편, 대기 버퍼들(B0,B1)의 순위는 고정된 것이 아니라, 매 프레임 단위로 변경된다. 즉, 제1 대기 버퍼는 제1 버퍼(B0)와 제2 버퍼(B1)가 번갈아가면서 그 기능을 수행한다. 다만, 대기 버퍼들이 N개가 존재하는 경우에는, 제1 순위 대기 버퍼 내지 제N 순위 대기 버퍼가 존재하는 것으로 이해하여야 한다.
구체적으로 설명하면, 제1 I 프레임(1)이 입력되면 초기 저장 버퍼(R0)에 저장되고, 제1 P 프레임(2)이 입력되면 최선 순위 대기 버퍼(B0)에 저장되고, 제2 P 프레임(3)이 입력되면 제2 대기 버퍼(B1)에 저장된다. 다만, 제2 대기 버퍼(B1)는, 제2 P 프레임(3)이 입력되기 이전에 제1 대기 버퍼(B1)로 그 순위가 변경된다. 즉, 대기 버퍼의 순위는 매 프레임 단위로 계속 변경된다. 또한, 제2 I 프레임(5)이 입력되면 제1 대기 버퍼(B1)에 저장되고, 기존의 저장 버퍼(R0)는 제2 대기 버퍼로 전환된다.
도 6은 두 개의 카메라로부터 입력된 영상을 순 방향 재생할 때 본 발명에 따른 프레임 버퍼 메모리 운영 방법을 설명하기 위한 도면이다.
도 6을 참조하면, 두 개의 카메라로부터 촬영된 영상 신호는 각각 I 프레임 과 P 프레임으로 압축되며, 압축된 각각의 프레임은 일정한 순서를 갖고 입력된다. 다만, 상술한 바와 같이, 서로 다른 복수 개의 카메라로부터 촬영된 영상이 인코딩될 때, 프레임 단위로 영상이 뒤섞여 입력된다. 본 발명에 따른 버퍼 메모리는 2개의 저장 버퍼(RO,R1)와 2개의 대기 버퍼(BO,B1)로 이루어질 수 있다.
구체적으로 설명하면, 제1-1 I 프레임(1)과 제1-2 I 프레임(2)이 입력되면 각각 저장 버퍼들(R0,R1)에 순차적으로 저장된다. 그 후, 제1-1 P 프레임(3)이 입력되면 최선 순위 대기 버퍼(B0)에 저장되고, 제1-2 P 프레임(4)이 입력되면 최후 순위 대기 버퍼(B1)에 저장된다. 다만, 최후 대기 버퍼(B1)는 제1-2 P 프레임(4)이 입력되기 이전에 최선 순위 대기 버퍼(B1)로 그 순위가 변경된다. 또한, 제2-1 I 프레임(9)과 제2-2 I 프레임(10)이 입력되면 각각 최선 순위 대기 버퍼(B0,B1)에 순차적으로 저장되고, 기존의 저장 버퍼(R0,R1)들은 대기 버퍼들로 전환된다.
도 7은 본 발명의 다른 실시 예에 따른 프레임 버퍼 운영 방법을 나타내는 상세 흐름도이다. 특히, 도 7은, 역방향 재생을 할 때 버퍼 메모리 운영 방법을 나타낸다.
압축 부호화된 영상 데이터(I 및 P 프레임으로 구성)를 프레임 단위로 입력받는다(710). 다만, 마지막 프레임이 I 프레임이 아닌 P 프레임인 경우, 디코딩을 위해 I 프레임을 참조해야 하므로, 마지막 프레임부터 디코딩을 수행할 수는 없다. 따라서, 모든 영상 프레임을 디코딩하고 이를 디스플레이하기 위해서는 I 프레임을 디코딩하는 것이 선행되어야 하며, 이를 위해 I 프레임이 먼저 입력되어 디코딩되도록 그 순서를 정렬한다(715). 이는 I 프레임을 추출하는 과정이 선행되어야 한 다. 그 후, 프레임 단위로 입력되는 프레임이 I 프레임인지를 판단한다(715).
판단 결과, 다른 프레임을 참조하지 않고 인코딩된 I 프레임인 경우, 독립적으로 디코딩한다(725). 그 후, 디코딩된 I 프레임이 영상을 구성하는 첫 번째 I 프레임인지를 판단한다(730). 판단 결과, 첫 번째 I 프레임인 경우, 초기 저장 버퍼에 저장한다(735). 그러나, 첫 번째 I 프레임이 아닌 경우, 제1 대기 버퍼에 입력된 I 프레임을 저장한다(740). 그 후 제1 대기 버퍼를 저장 버퍼로 전환하고(745), 기존 저장 버퍼를 제2 대기 버퍼로 전환한다(745). 그 후, 제2 대기 버퍼에 저장된 I 프레임을 디스플레이한다(755).
판단 결과, 다른 프레임을 참조하여 인코딩된 P 프레임인 경우, 참조한 프레임과의 상관관계를 이용하여 디코딩한다(760). 키 프레임 방식에서는, 참조한 프레임이 I 프레임이므로, 저장 버퍼에 저장된 I 프레임을 참조하여 디코딩한다. 그 후, 제1 대기 버퍼에 디코딩된 P 프레임을 임시 저장하고(765), 제2 대기 버퍼에 저장된 P 프레임을 디스플레이한다. 다만, P 프레임은 참조 프레임이 아니므로 소정 시간 저장되지 않고 바로 폐기된다. 그 후 대기 버퍼의 대기 순위를 변경한다(775).
이와 같이 디코딩 버퍼에 저장된 I 및 P 프레임을 디스플레이하지 않고, 제2 대기 버퍼에 저장된 I 및 P 프레임을 디스플레이하는 이유는, 디코딩을 수행하기 이전에 영상 데이터의 순위가 변경되었고, 원래의 압축된 데이터의 순위가 제2 대기 버퍼에 저장된 I 및 P 프레임의 순위와 동일하기 때문이다. 즉, 디코딩할 때는 I 프레임을 기준으로 해야하기 때문에, I 프레임이 먼저 디코딩되었지만, 디스플레 이할 때는 원래의 프레임 순서대로 정렬시켜 출력해야 하기 때문이다. 다만, 대기 버퍼들이 3개 이상 존재하는 경우에는, 상기 제1 대기 버퍼는 최선 순위 대기 버퍼를 나타내며, 상기 제2 대기 버퍼는 최후 순위 대기 버퍼를 나타내는 것으로 이해하여야 한다. 이하, 첨부하는 도면을 통해 구체적으로 설명한다.
도 8은 하나의 카메라로부터 입력된 영상을 역방향 재생할 때 본 발명에 따른 프레임 버퍼 메모리 운영 방법을 설명하기 위한 도면이다.
도 8을 참조하면, 하나의 카메라로부터 촬영된 영상 신호는 I 프레임과 P 프레임으로 압축되며, 압축된 각각의 프레임은 그 입력 순서를 갖는다. 다만, 역방향 재생을 위해서는 인코딩된 순서와 반대 방향으로 디코딩을 수행해야 한다. 따라서, 영상 데이터를 구성하는 마지막 프레임부터 입력받는다. 그러나, P 프레임은 I 프레임을 참조하여 디코딩하여야 하기 때문에, 마지막 프레임이 P 프레임인 경우, 상기 마지막 P 프레임이 참조하는 I 프레임을 먼저 디코딩한다. 본 발명에 따른 버퍼 메모리는 1개의 저장 버퍼(R0)와 복수 개의 대기 버퍼(BO,B1)로 이루어질 수 있다.
구체적으로 설명하면, 마지막 P 프레임(12)을 디코딩하기 위해서는, 그 이전 I 프레임(9)의 디코딩이 선행되어야 하므로, I 프레임(9)을 먼저 디코딩하여 저장 버퍼(RO)에 저장하고, 저장 버퍼에 저장된 I 프레임(9)을 참조하여 P 프레임들(10~12)을 디코딩하여 대기 버퍼에 임시 저장한다. 도 8에는 디코딩 순서, 디코딩 버퍼, 최선 순위 대기 버퍼, 최후 순위 대기 버퍼, 저장 버퍼가 순차적으로 도시되어 있으며, 이들 버퍼들의 역할 및 기능은 도 4 내지 6에서 상술하였다.
즉, 본 발명에 따른 버퍼 메모리 운영 방법은, 특정 프레임을 위한 전용 버 퍼를 설정하지 않고, 새로운 프레임이 입력될 때마다 버퍼들의 역할이 달라질 수 있도록 버퍼를 로테이션하는 것을 특징으로 한다. 다만, 디스플레이할 때에는 원래의 영상과 동일한 순서로 출력해야하기 때문에, 디코딩 버퍼에 저장된 프레임을 출력하지 않고, 제2 대기 버퍼에 저장된 프레임을 출력한다. 즉, 제2 대기 버퍼에 저장된 프레임들은 압축 데이터의 역방향 순서와 동일한 순서를 갖는다.
도 9는 두 개의 카메라로부터 입력된 영상을 순 방향 재생할 때 본 발명에 따른 프레임 버퍼 메모리 운영 방법을 설명하기 위한 도면이다.
도 9를 참조하면, 두 개의 카메라로부터 촬영된 영상 신호는 각각 I 프레임과 P 프레임으로 압축되며, 압축된 각각의 프레임은 일정한 순서를 갖고 입력된다. 다만, 상술한 바와 같이 서로 다른 복수 개의 카메라로부터 촬영된 영상이 인코딩될 때, 프레임 단위로 영상이 겹치도록 인코딩된다. 또한, 본 발명에 따른 버퍼 메모리는 2개의 저장 버퍼들(R0,R1)과 두 개의 대기 버퍼들(BO,B1)로 이루어질 수 있다. 다만, 저장 버퍼 및 대기 버퍼의 수는 각각 2개에 한정되는 것은 아니다.
구체적으로 설명하면, 제2 카메라로 촬영한 제2 영상 데이터의 마지막 P 프레임(16)을 디코딩하기 위해서는, 그 이전 I 프레임(10)의 디코딩이 선행되어야 하므로, I 프레임(10)을 먼저 디코딩하여 저장 버퍼(R0)에 저장하고, 저장 버퍼에 저장된 I 프레임(10)을 참조하여 P 프레임(12)을 디코딩하여 대기 버퍼에 임시 저장한다. 또한, 제1 카메라로 촬영한 제1 영상 데이터의 마지막 P 프레임(15)을 디코딩하기 위해서는, 그 이전 I 프레임(9)의 디코딩이 선행되어야 한다. 이와 같은 방식으로 모든 디코딩 프로세스를 진행한다.
도 8에 설명된 것과 마찬가지로, 디코딩된 영상을 디스플레이할 때에는 원래의 영상과 동일한 순서로 출력해야하기 때문에, 디코딩 버퍼에 저장된 프레임을 출력하지 않고, 최후 순위 대기 버퍼에 저장된 프레임을 출력한다. 즉, 최후 순위 버퍼에 저장된 프레임들은 압축 데이터의 역방향 순서와 동일한 순서를 갖는다. 저장 버퍼에 저장된 I 프레임들은 각각의 I 프레임과 관련된 P 프레임의 디코딩 과정이 모두 종료된 경우 디스플레이될 수 있다.
도 10은 본 발명에 따른 디코딩 장치를 나타내는 블록 다이어그램이다.
도 10을 참조하면, 본 발명에 따른 디코딩 장치는, 인코딩된 영상 데이터를 디코딩하는 디코더(1010), 디코딩된 영상 데이터를 저장하는 프레임 버퍼 메모리(1020), 전반적인 동작을 제어하는 컨트롤러(1030), 및 디코딩된 영상을 디스플레이하는 디스플레이 유닛(1040)을 포함한다. 한편, 프레임 버퍼 메모리는 복수 개의 버퍼 메모리로 구성되며, 각각의 버퍼 메모리는 1 프레임을 저장할 수 있는 용량을 갖는다.
디코더(1010)는 적어도 하나의 카메라로부터 촬영된 후, 인코더에 의해 인코딩된 압축 영상 데이터를 입력받아 디코딩한다. 상기 압축 영상 데이터에는 I 프레임, P 프레임, 및 B 프레임이 포함될 수 있다. 다만, 실시간으로 촬영 동영상을 디스플레이할 수 있는 DVR(Digital Video Recording) 시스템에서는, 연산 시간 및 연산량을 고려할 때 각 프레임이 I 또는 P 프레임만으로 구성되도록 인코딩하는 것이 바람직하다. 또한, 역방향 재생을 위해 키 프레임 방식으로 인코딩되는 것이 더욱 바람직하다.
프레임 버퍼 메모리(1020)는 디코더(1010)에 의해 디코딩된 I 또는 P 프레임을 저장하고, I 프레임을 저장하기 위한 저장 버퍼와 P 프레임을 저장하기 위한 대기 버퍼로 구성된다. 다만, 각각의 버퍼는 저장 버퍼 또는 대기 버퍼로 고정되는 것이 아니라, 컨트롤러(1030)에 의한 제어에 의해 그 역할이 달라질 수 있는 유동 버퍼이다. 즉, 각 버퍼의 유형은 컨트롤러(1030)에 의해 매 프레임마다 새롭게 정의된다.
프레임 버퍼 메모리(1020)는 카메라의 수에 상응하는 개수의 저장 버퍼(R0,…,Rn)와 화면 분할 영역의 수에 상응하는 개수의 대기 버퍼(B0,…,Bn)를 갖는다. 예를 들어, 카메라의 수가 3개인 경우 저장 버퍼의 개수는 3개일 수 있다. 이는, 각각의 영상 데이터에 포함된 I 프레임을 소정시간 동안 저장해야 하기 때문이다. 또한, 예를 들어, 동시에 디스플레이하여야 할 영상에 상응하는 카메라의 수가 4개일 경우에는 대기 버퍼의 수는 8개일 수 있다. 이는 4개의 카메라 영상에 대한 대기 버퍼에서의 임시저장 기능과 디스플레이 기능을 모두 구현하기 위해서다.
컨트롤러(1030)는 디코딩된 프레임이 프레임 버퍼 메모리(1020)에 저장되도록 디코더(1010)를 제어하며, 프레임 버퍼 메모리(1020)에 저장된 프레임이 디스플레이 유닛(1040)으로 출력되도록 제어한다. 또한, 컨트롤러(1030)는 디코더(1010), 프레임 버퍼 메모리(1020), 및 디스플레이 유닛(1040)의 동작 타이밍을 제어한다. 디스플레이 유닛(1040)은 프레임 버퍼 메모리(1020)로부터 출력되는 프레임을 화면에 디스플레이한다.
컨트롤러(1030)는 압축된 영상 데이터에 부가된 헤더 정보를 통해 프레임의 유형과 카메라의 순서를 분석하고, 이러한 분석된 정보를 통해 디코더(1010)로부터 출력되는 디코딩된 I 프레임 및 P 프레임의 저장 위치를 판단한다. 또한, 디코딩과 디스플레이를 위한 위치 정보를 디코더(1010) 및 디스플레이 유닛(1040)에 제공한다. 또한, 프레임 버퍼 메모리(1020)에 포함된 다수의 불특정 저장 버퍼와 대기 버퍼의 역할을 교대하는 기능을 수행한다.
이상 도면과 명세서에서 최적 실시 예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적으로 사용된 것이지 의미 한정이나 특허 청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다.
그러므로 본 기술 분야에서 통상의 지식을 가지는 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서 본 발명의 진정한 기술적 보호 범위는 첨부된 특허 청구범위의 기술적 사상에 의해 정해져야 할 것이다.
도 1은 종래의 프레임 버퍼 메모리 운영 방법을 나타내는 상세 흐름도이다.
도 2는 종래의 일 실시 예에 따른 프레임 버퍼 메모리 운영 방법을 나타내는 도면이다.
도 3은 종래의 다른 실시 예에 따른 프레임 버퍼 메모리 운영 방법을 설명하기 위한 도면이다.
도 4는 본 발명의 일 실시 예에 따른 프레임 버퍼 메모리 운영 방법을 설명하기 위한 상세 흐름도이다.
도 5는 하나의 카메라로부터 입력된 영상을 순 방향 재생할 때 본 발명에 따른 프레임 버퍼 메모리 운영 방법을 설명하기 위한 도면이다.
도 6은 두 개의 카메라로부터 입력된 영상을 순 방향 재생할 때 본 발명에 따른 프레임 버퍼 메모리 운영 방법을 설명하기 위한 도면이다.
도 7은 본 발명의 다른 실시 예에 따른 프레임 버퍼 메모리 운영 방법을 설명하기 위한 상세 흐름도이다.
도 8은 하나의 카메라로부터 입력된 영상을 역방향 재생할 때 본 발명에 따른 프레임 버퍼 메모리 운영 방법을 설명하기 위한 도면이다.
도 9는 두 개의 카메라로부터 입력된 영상을 순 방향 재생할 때 본 발명에 따른 프레임 버퍼 메모리 운영 방법을 설명하기 위한 도면이다.
도 10은 본 발명에 따른 디코딩 장치를 나타내는 블록 다이어그램이다.

Claims (7)

  1. I 프레임 및 P 프레임을 포함하는 압축 영상 데이터를 복원하기 위한 프레임 버퍼 메모리의 운영 방법에 있어서,
    (A)입력된 현재 I 프레임을 디코딩한 후, 상기 디코딩된 현재 I 프레임을 어느 하나의 대기 버퍼에 저장하고, 상기 현재 I 프레임이 저장된 대기 버퍼를 저장 버퍼로 전환함과 동시에 이전 I 프레임이 저장된 저장 버퍼를 다른 하나의 대기 버퍼로 전환하는 단계; 및
    (B)입력된 현재 P 프레임을 상기 저장 버퍼에 저장된 I 프레임을 참조하여 디코딩한 후, 상기 디코딩된 현재 P 프레임을 어느 하나의 대기 버퍼에 저장하고, 상기 현재 P 프레임이 저장된 대기 버퍼를 다른 하나의 대기 버퍼로 전환하는 단계를 포함한 것을 특징으로 하는 프레임 버퍼 메모리 운영 방법.
  2. 제1항에 있어서, 상기 저장 버퍼 및 대기 버퍼는,
    각각 하나의 프레임에 상응하는 메모리 용량을 갖으며, 상기 저장 버퍼의 수는 카메라 수에 상응하며, 상기 대기 버퍼의 수는 동시에 디스플레이되어야 할 영상을 제공하는 카메라 수에 상응한 것을 특징으로 하는 프레임 버퍼 메모리 운영 방법.
  3. 제1항에 있어서, 상기 (A) 단계는,
    상기 디코딩된 현재 I 프레임을 제1 대기 버퍼에 저장하고, 상기 현재 I 프 레임이 저장된 제1 대기 버퍼를 저장 버퍼로 전환함과 동시에 이전 I 프레임이 저장된 저장 버퍼를 제2 대기 버퍼로 전환하는 단계이고,
    상기 (B) 단계는, 상기 디코딩된 현재 P 프레임을 제1 대기 버퍼에 저장하고, 상기 현재 P 프레임이 저장된 제1 대기 버퍼를 제2 대기 버퍼로 전환하는 단계인 것을 특징으로 하는 프레임 버퍼 메모리 운영 방법.
  4. 제3항에 있어서, 상기 제1 대기 버퍼 및 제2 대기 버퍼는,
    상기 현재 I 프레임 또는 상기 현재 P 프레임이 입력되는 시점을 기준으로 상대적으로 정해지며, 유효 디코딩 데이터가 입력되는 매 프레임마다 상기 제1 대기 버퍼 및 제2 대기 버퍼는 변경되는 것을 특징으로 하는 프레임 버퍼 메모리 운영 방법.
  5. 제3항에 있어서, 상기 프레임 버퍼 메모리 운영 방법은,
    디코딩되어 저장 버퍼 또는 대기 버퍼에 저장된 영상을 역방향으로 재생함에 있어서, 상기 제2 대기 버퍼에 저장된 I 프레임 및 P 프레임을 출력하여 화면에 디스플레이하는 것을 특징으로 하는 프레임 버퍼 메모리 운영 방법.
  6. 인코딩된 영상 데이터를 디코딩하는 디코더;
    디코딩된 프레임이 저장되는 프레임 버퍼 메모리;
    디코딩된 프레임을 디스플레이하는 디스플레이 유닛; 및
    상기 프레임 버퍼 메모리에 포함된 각각의 버퍼 메모리를 I 프레임을 저장하기 위한 저장 버퍼 또는 P 프레임을 저장하기 위한 대기 버퍼 중 어느 하나로 지정하고, 매 I 프레임 주기마다 상기 저장 버퍼가 변경되도록 제어하고, 매 P 프레임 주기마다 상기 대기 버퍼가 변경되도록 제어하는 컨트롤러를 포함하는 것을 특징으로 하는 디코딩 장치.
  7. 제6항에 있어서, 상기 컨트롤러는,
    상기 디코더에 의해 디코딩된 현재 I 프레임을 최선 순위 대기 버퍼에 저장하고, 상기 현재 I 프레임이 저장된 최선 순위 대기 버퍼를 저장 버퍼로 전환함과 동시에 이전 I 프레임이 저장된 저장 버퍼를 최후 순위 대기 버퍼로 전환하고,
    상기 디코더에 의해 디코딩된 현재 P 프레임을 최선 순위 대기 버퍼에 저장하고, 상기 현재 P 프레임이 저장된 최선 순위 대기 버퍼를 최후 순위 대기 버퍼로 전환하는 것을 특징으로 하는 디코딩 장치.
KR1020070099245A 2007-10-02 2007-10-02 압축된 동영상을 복원하기 위한 프레임 버퍼 메모리 운영방법 및 이에 적합한 디코딩 장치 KR100928324B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020070099245A KR100928324B1 (ko) 2007-10-02 2007-10-02 압축된 동영상을 복원하기 위한 프레임 버퍼 메모리 운영방법 및 이에 적합한 디코딩 장치
US12/242,942 US20090086818A1 (en) 2007-10-02 2008-10-01 Frame buffer memory operating method used to decompress compressed moving pictures, and decoding apparatus adapted to frame buffer memory operating method
US12/248,886 US8060446B2 (en) 2007-10-02 2008-10-09 Method of providing services including essay providing and review services based on authentication of college students, and system therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070099245A KR100928324B1 (ko) 2007-10-02 2007-10-02 압축된 동영상을 복원하기 위한 프레임 버퍼 메모리 운영방법 및 이에 적합한 디코딩 장치

Publications (2)

Publication Number Publication Date
KR20090034083A KR20090034083A (ko) 2009-04-07
KR100928324B1 true KR100928324B1 (ko) 2009-11-25

Family

ID=40508276

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070099245A KR100928324B1 (ko) 2007-10-02 2007-10-02 압축된 동영상을 복원하기 위한 프레임 버퍼 메모리 운영방법 및 이에 적합한 디코딩 장치

Country Status (2)

Country Link
US (2) US20090086818A1 (ko)
KR (1) KR100928324B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9813718B2 (en) 2013-10-03 2017-11-07 Samsung Display Co., Ltd. Apparatus and method for compact bit-plane data compression

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090290855A1 (en) * 2008-05-20 2009-11-26 Francois-Xavier Kowalski Apparatus And Method For Recording Video Data
JP5152402B2 (ja) * 2009-02-27 2013-02-27 富士通株式会社 動画像符号化装置、動画像符号化方法及び動画像符号化用コンピュータプログラム
US20110004927A1 (en) * 2009-07-04 2011-01-06 Michal Pawel Zlowodzki System, method and program product for membership based information/functions access over a network
KR101735613B1 (ko) * 2010-07-05 2017-05-24 엘지전자 주식회사 휴대 단말기 및 그 동작 제어방법
US8676596B1 (en) 2012-03-05 2014-03-18 Reputation.Com, Inc. Stimulating reviews at a point of sale
US10636041B1 (en) 2012-03-05 2020-04-28 Reputation.Com, Inc. Enterprise reputation evaluation
CN103426418B (zh) * 2012-05-21 2016-03-30 联想(北京)有限公司 一种显示数据处理方法及电子设备
US8918312B1 (en) 2012-06-29 2014-12-23 Reputation.Com, Inc. Assigning sentiment to themes
US9432357B2 (en) * 2013-08-28 2016-08-30 Chung Jong Lee Computer network security management system and method
WO2015088265A1 (en) * 2013-12-13 2015-06-18 Samsung Electronics Co., Ltd. Storage medium, reproducing apparatus and method for recording and playing image data
CN103780877A (zh) * 2013-12-26 2014-05-07 深圳市华仁达技术有限公司 基于h264编码的海量视频数据的存储及检索方法
EP3214839B1 (en) * 2014-11-28 2020-01-01 Huawei Technologies Co. Ltd. Method and device for transmitting multiple video streams
US10419512B2 (en) 2015-07-27 2019-09-17 Samsung Display Co., Ltd. System and method of transmitting display data
CN106713940B (zh) * 2015-08-04 2019-12-20 杭州海康威视数字技术股份有限公司 视频流的存储方法、读取方法及装置
US10742659B1 (en) * 2018-05-15 2020-08-11 Cox Communications, Inc. Restricted content access provision based on third-party verification
WO2020087282A1 (zh) * 2018-10-30 2020-05-07 深圳市大疆创新科技有限公司 一种数据处理方法、设备及穿越机眼镜

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002051325A (ja) * 2000-08-02 2002-02-15 Nippon Telegr & Teleph Corp <Ntt> デジタル放送映像受信装置およびデジタル放送映像受信方法
JP2006087125A (ja) * 2004-09-17 2006-03-30 Mitsubishi Electric Information Technology Centre Europa Bv ビデオフレームシーケンスを符号化する方法、符号化ビットストリーム、画像又は画像シーケンスを復号する方法、データの送信又は受信を含む使用、データを送信する方法、符号化及び/又は復号装置、コンピュータプログラム、システム、並びにコンピュータ読み取り可能な記憶媒体

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6075918A (en) * 1995-10-26 2000-06-13 Advanced Micro Devices, Inc. Generation of an intermediate video bitstream from a compressed video bitstream to enhance playback performance
US6023296A (en) * 1997-07-10 2000-02-08 Sarnoff Corporation Apparatus and method for object based rate control in a coding system
US6088702A (en) * 1998-02-25 2000-07-11 Plantz; Scott H. Group publishing system
US6731684B1 (en) * 1998-09-29 2004-05-04 General Instrument Corporation Method and apparatus for detecting scene changes and adjusting picture coding type in a high definition television encoder
AU1916500A (en) * 1998-11-17 2000-06-05 Kara Technology Incorporated Internet purchase system
JP2001195412A (ja) * 2000-01-12 2001-07-19 Hitachi Ltd 電子書籍システム及びそのコンテンツ表示方法
US7127404B1 (en) * 2000-05-11 2006-10-24 Ebay, Incorporated Method and apparatus for a dual online registration contact information system
US6651071B1 (en) * 2000-08-04 2003-11-18 Alverno College User interface educational database system for monitoring proficiency, performance and evaluation of student
US6888893B2 (en) * 2001-01-05 2005-05-03 Microsoft Corporation System and process for broadcast and communication with very low bit-rate bi-level or sketch video
US6940903B2 (en) * 2001-03-05 2005-09-06 Intervideo, Inc. Systems and methods for performing bit rate allocation for a video data stream
GB2377573B (en) * 2001-07-11 2004-03-31 Motorola Inc Video transmission system, video tranmission unit and methods of encoding/decoding video data
US20030031996A1 (en) * 2001-08-08 2003-02-13 Adam Robinson Method and system for evaluating documents
US7487104B2 (en) * 2001-10-08 2009-02-03 David Sciuk Automated system and method for managing a process for the shopping and selection of human entities
US7321858B2 (en) * 2001-11-30 2008-01-22 United Negro College Fund, Inc. Selection of individuals from a pool of candidates in a competition system
FI114527B (fi) * 2002-01-23 2004-10-29 Nokia Corp Kuvakehysten ryhmittely videokoodauksessa
US7209931B2 (en) * 2002-05-10 2007-04-24 Studentuniverse.Com User matriculation status determination via a computer network
US20040143469A1 (en) * 2002-11-27 2004-07-22 Greg Lutz Recruiting system accessible by university staff, employers and students
US20040225551A1 (en) * 2003-03-14 2004-11-11 Stephen Hole System and methodology for organizational collaboration and administration
US7472827B2 (en) * 2004-05-17 2009-01-06 American Express Travel Related Services Company, Inc. Limited use PIN system and method
US7865451B2 (en) * 2006-12-11 2011-01-04 Yahoo! Inc. Systems and methods for verifying jobseeker data

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002051325A (ja) * 2000-08-02 2002-02-15 Nippon Telegr & Teleph Corp <Ntt> デジタル放送映像受信装置およびデジタル放送映像受信方法
JP2006087125A (ja) * 2004-09-17 2006-03-30 Mitsubishi Electric Information Technology Centre Europa Bv ビデオフレームシーケンスを符号化する方法、符号化ビットストリーム、画像又は画像シーケンスを復号する方法、データの送信又は受信を含む使用、データを送信する方法、符号化及び/又は復号装置、コンピュータプログラム、システム、並びにコンピュータ読み取り可能な記憶媒体

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9813718B2 (en) 2013-10-03 2017-11-07 Samsung Display Co., Ltd. Apparatus and method for compact bit-plane data compression

Also Published As

Publication number Publication date
KR20090034083A (ko) 2009-04-07
US8060446B2 (en) 2011-11-15
US20090089180A1 (en) 2009-04-02
US20090086818A1 (en) 2009-04-02

Similar Documents

Publication Publication Date Title
KR100928324B1 (ko) 압축된 동영상을 복원하기 위한 프레임 버퍼 메모리 운영방법 및 이에 적합한 디코딩 장치
US8290346B2 (en) Large format video archival, storage, and retrieval system and method
US20090103630A1 (en) Image processing device
US5504823A (en) Image data partitioning circuit for parallel image decoding system
CN101094367A (zh) 流式编码器及流式解码器
JP2878661B2 (ja) Mpeg規格を有する映像ビット・ストリームをデコーディングする方法
US7218676B2 (en) Method and a decoder for decoding MPEG video
US6567556B1 (en) Method and device for decoding images, allowing a reduced number of openings of memory pages in the prediction processing
US6275535B1 (en) Method and device for decoding an image compressed in particular according to the MPEG standards, especially a bidirectional image
CN1998242B (zh) 图像编码装置和图像解码装置
JP2010278481A (ja) データ処理装置
EP1992162B1 (en) Memory organizational scheme and controller architecture for image and video processing
JP4513487B2 (ja) 映像データ圧縮装置
KR100223207B1 (ko) 다중 영상 출력 디지털 비디오 디스크 플레이어
JPH08275170A (ja) 画像処理装置
US20100046625A1 (en) Apparatus and method for video encoding and decoding
KR100328199B1 (ko) 다채널 영상 인코딩 시스템 및 다채널 인코딩용 메모리운영방법
EP0727761B1 (en) Image processing system
KR101570907B1 (ko) 동화상 처리 장치 및 동화상 처리 방법
JP2001177829A (ja) 動画像データの再生方法および動画画像データ再生装置
JP4661652B2 (ja) デコード方法及びデコード装置
JP4322178B2 (ja) マルチキャストmpegデータ受信処理装置
JP4272388B2 (ja) 画像処理装置と画像処理方法
KR100485946B1 (ko) 프레임 레이트 변환을 이용한 동영상 정보 압축 처리 장치및 그 방법
JPH05191801A (ja) 動画像復号化装置のフレームメモリ制御方式

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

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee