KR101426773B1 - 비디오 콘텐츠의 역방향 재생 방법 및 장치 - Google Patents

비디오 콘텐츠의 역방향 재생 방법 및 장치 Download PDF

Info

Publication number
KR101426773B1
KR101426773B1 KR1020130037475A KR20130037475A KR101426773B1 KR 101426773 B1 KR101426773 B1 KR 101426773B1 KR 1020130037475 A KR1020130037475 A KR 1020130037475A KR 20130037475 A KR20130037475 A KR 20130037475A KR 101426773 B1 KR101426773 B1 KR 101426773B1
Authority
KR
South Korea
Prior art keywords
frame
stack
reverse playback
video
decoding
Prior art date
Application number
KR1020130037475A
Other languages
English (en)
Inventor
표성백
최용훈
Original Assignee
주식회사 씨트링
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 씨트링 filed Critical 주식회사 씨트링
Priority to KR1020130037475A priority Critical patent/KR101426773B1/ko
Application granted granted Critical
Publication of KR101426773B1 publication Critical patent/KR101426773B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/005Reproducing at a different information rate from the information rate of recording
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Television Signal Processing For Recording (AREA)

Abstract

본 발명은 B 프레임 없이 I 프레임 및 P프레임 만으로 구성된 비디오로부터 디코딩한 프레임으로 역방향 재생 영상을 재생하는 방법 및 장치에 관한 것으로, 적어도 하나 이상의 I 프레임 및 P프레임을 포함하는 동영상에 대한 역방향 재생 명령을 수신하는 단계; 역방향 재생 시작 지점으로부터 역방향 순서로 I 프레임을 검색하는 단계; 최초로 검색된 제 1 I 프레임 및 상기 제 1 I 프레임을 참고하는 제 1 P 프레임을 순방향 순서대로 디코딩하여 제 1 스택(Stack) 객체를 형성하는 단계; 상기 제 1 I 프레임 다음으로 검색되는 제 2 I 프레임 및 상기 제 2 I 프레임을 참고하는 제 2 P프레임을 순방향 순서대로 디코딩하여 제 2 스택 (Stack) 객체를 형성하는 단계; 및 상기 제 1 스택 객체 다음으로 상기 제 2 스택 객체를 삽입하여 큐(Queue) 객체를 형성하는 단계를 포함하는 것을 특징으로 한다.
본 발명에 따르면, 스택 객체와 큐 객체를 형성하는 데이터 구조를 이용하여 끊김 없는 자연스러운 역방향 재생 영상을 제공할 수 있는 효과가 있다.

Description

비디오 콘텐츠의 역방향 재생 방법 및 장치 {METHOD AND APPARATUS FOR REVERSE PLAYBACK OF VIDEO CONTENTS}
본 발명은 비디오 콘텐츠를 역방향으로 재생하는 방법 및 장치에 관한 것이다.
보다 구체적으로 본 발명은, B 프레임 없이 I 프레임 및 P프레임 만으로 구성된 비디오로부터 디코딩한 프레임으로 스택(STACK)과 큐(QUEUE) 객체를 생성하여 역방향 재생 영상을 제공하는 방법 및 장치에 관한 것이다.
최근 디지털 비디오 레코더 (DVR, Digital Video Recorder)가 상용화 되고 있다. DVR은 기존에 쓰이던 비디오 카세트 레코더(VCR)가 녹화를 여러번 반복하는 방식이라 화질이 떨어지고, 비디오테이프를 교체하는 등 사용이 번거로워 이를 해결하기 위해 개발되었다.
DVR은 비디오테이프 대신 하드디스크나 디지털비디오디스크 등을 사용하므로 저장된 화면을 재생하거나 검색하기가 쉬운 장점이 있다. 뿐만 아니라 디지털 신호로 저장되기 때문에 편집과 화상을 전송하기에도 편리하다.
이러한 DVR은 감시용 카메라가 생성한 아날로그 영상 데이터를 디지털 신호로 전환하고, 동화상 국제 압축 표준인 H.264 로 영상을 압축·복원하여 장시간 녹화 및 재생하여 볼 수 있는 고해상도의 녹화 시스템 방식을 따른다.
H.264 표준을 따르는 경우에도 DVR은 인코딩 효율의 문제를 고려하여 B 프레임을 사용하지 않는 경우가 많다. 즉, I프레임과 P프레임만으로 비디오 프레임을 구성한다. 그러나 B 프레임 없이 인코딩한 비디오를 역방향 재생하는 경우, I프레임 만을 디코딩 하기 때문에 연속적인 움직임을 재생할 수 없게 되는 문제가 발생한다.
본 발명은 상기와 같은 문제점을 해결하기 위한 것이다. 특히 본 발명은 B 프레임 없이 I 프레임 및 P프레임 만으로 구성된 비디오를 역방향 재생 하는 경우 끊김 없는 자연스러운 영상을 재생할 수 있는 방법 및 장치를 제공하는 것을 목적으로 한다.
나아가 본 발명은 I 프레임 및 P프레임 만으로 스택 객체와 큐 객체를 형성하는 데이터 구조를 이용하여 효율적으로 역방향 재생 디코딩을 할 수 있는 방법 및 장치를 제공하는 것을 목적으로 한다.
상기와 같은 문제점을 해결하기 위한 비디오 역방향 재생 방법은, 적어도 하나 이상의 I 프레임 및 P프레임을 포함하는 비디오에 대한 역방향 재생 명령을 수신하는 단계; 역방향 재생 시작 지점으로부터 역방향 순서로 I 프레임을 검색하는 단계; 최초로 검색된 제 1 I 프레임 및 상기 제 1 I 프레임을 참고하는 P 프레임을 순방향 순서대로 디코딩하여 제 1 스택(Stack) 객체를 형성하는 단계; 제 2 I 프레임 및 상기 제 2 I 프레임을 참고하는 P프레임을 순방향 순서대로 디코딩하여 제 2 스택 (Stack) 객체를 형성하는 단계; 및 상기 제 1 스택 객체 다음으로 상기 제 2 스택 객체를 쌓아 큐(Queue) 객체를 형성하는 단계를 포함하는 것을 특징으로 한다.
나아가, 상기 역방향 재생 명령을 수신하는 단계는, 역방향 재생 배속 명령을 함께 수신하는 단계이며, 상기 제 1 스택 객체를 형성하는 단계는, 상기 제 1 I 프레임을 참고하는 상기 P 프레임을 상기 배속 명령에 따라 미리 정해진 간격으로 추출하여 디코딩하는 단계이며, 상기 제 2스택 객체를 형성하는 단계는, 상기 제 2 I 프레임을 참고하는 상기 P 프레임을 상기 배속 명령에 따라 미리 정해진 간격으로 추출하여 디코딩하는 단계인 것을 특징으로 한다.
한편, 본 발명의 실시예를 따르는 비디오 역방향 재생을 실행하는 장치는, 적어도 하나 이상의 I 프레임 및 P프레임을 포함하는 비디오에 대한 역방향 재생 명령을 수신하는 입력부; 및 역방향 재생 시작 지점으로부터 역방향 순서로 I 프레임을 검색하고, 최초로 검색된 제 1 I 프레임 및 상기 제 1 I 프레임을 참고하는 P 프레임을 순방향 순서대로 디코딩하여 제 1 스택(Stack) 객체를 형성하며, 제 2 I 프레임 및 상기 제 2 I 프레임을 참고하는 P프레임을 순방향 순서대로 디코딩하여 제 2 스택 (Stack) 객체를 형성하고, 상기 제 1 스택 객체 다음으로 상기 제 2 스택 객체를 쌓아 큐(Queue) 객체를 형성하도록 제어하는 제어부를 포함하는 것을 특징으로 한다.
나아가, 상기 입력부는, 역방향 재생 배속 명령을 수신하고, 상기 제어부는, 상기 제 1 I 프레임을 참고하는 상기 P 프레임을 상기 배속 명령에 따라 미리 정해진 간격으로 추출하여 디코딩하며, 그리고 상기 제 2 I 프레임을 참고하는 상기 P 프레임을 상기 배속 명령에 따라 미리 정해진 간격으로 추출하여 디코딩하는 것을 특징으로 한다.
비디오 역방향 재생을 실행하는 프로그램이 기록된 기록매체는, 적어도 하나 이상의 I 프레임 및 P프레임을 포함하는 비디오에 대한 역방향 재생 명령을 수신하면, 역방향 재생 시작 지점으로부터 역방향 순서로 I 프레임을 검색하는 명령; 최초로 검색된 제 1 I 프레임 및 상기 제 1 I 프레임을 참고하는 제 1 P 프레임을 순방향 순서대로 디코딩하여 제 1 스택(Stack) 객체를 형성하는 명령; 상기 제 1 I 프레임 다음으로 검색되는 제 2 I 프레임 및 상기 제 2 I 프레임을 참고하는 제 2 P프레임을 순방향 순서대로 디코딩하여 제 2 스택 (Stack) 객체를 형성하는 명령; 및 하고, 상기 제 1 스택 객체 다음으로 상기 제 2 스택 객체를 삽입하여 큐(Queue) 객체를 형성하는 명령을 포함하는 프로그램이 기록된 것을 특징으로 한다.
나아가 상기 프로그램은, 역방향 재생 배속 명령을 수신하는 경우, 상기 제 1 I 프레임을 참고하는 상기 제 1 P 프레임을 상기 배속 명령에 따라 미리 정해진 간격으로 추출하여 디코딩하는 명령; 및 상기 제 2 I 프레임을 참고하는 상기 제 2 P 프레임을 상기 배속 명령에 따라 미리 정해진 간격으로 추출하여 디코딩하는 명령을 포함하는 것을 특징으로 한다.
본 발명에 따르면, B 프레임 없이 I 프레임 및 P프레임 만으로 구성된 비디오를 역방향 재생 하는 경우, 스택 객체와 큐 객체를 형성하는 데이터 구조를 이용하여 끊김 없는 자연스러운 역방향 재생 영상을 제공할 수 있는 효과가 있다.
나아가 본 발명에 따르면, 역방향 재생 배속을 지정할 수 있으며, 배속에 따라 P프레임을 임의의 간격을 두어 추출할 수 있어, 효율적으로 역방향 재생 디코딩을 할 수 있는 효과가 있다.
도 1은 H.264 표준을 따르는 I, B, P 프레임의 기능 및 특징을 설명하기 위한 도면.
도 2은 본 발명의 실시예에 따라 I 프레임과 P프레임을 추출하여 형성하는 스택 객체와 큐 객체를 예시하는 도면.
도 3은 본 발명의 실시예에 따르는 비디오를 되감는 장치의 내부 구조를 도시하는 블록도.
도 4는 본 발명의 실시예에 따라 비디오를 되감는 과정을 도시하는 순서도.
본 발명은 이하에 기재되는 실시예들의 설명 내용에 한정되는 것은 아니며, 본 발명의 기술적 요지를 벗어나지 않는 범위 내에서 다양한 변형이 가해질 수 있음은 자명하다. 그리고 실시예를 설명함에 있어서 본 발명이 속하는 기술 분야에 널리 알려져 있고 본 발명의 기술적 요지와 직접적으로 관련이 없는 기술 내용에 대해서는 설명을 생략한다.
한편, 첨부된 도면에서 동일한 구성요소는 동일한 부호로 표현된다. 그리고 첨부 도면에 있어서 일부 구성요소는 과장되거나 생략되거나 개략적으로 도시될 수도 있다. 이는 본 발명의 요지와 관련이 없는 불필요한 설명을 생략함으로써 본 발명의 요지를 명확히 설명하기 위함이다. 이하 첨부된 도면을 참조하여 본 발명의 바람직한 실시 예들을 상세히 설명한다.
도 1은 H.264 표준을 따르는 I, B, P 프레임의 기능 및 특징을 설명하기 위한 도면이다.
H.264 표준을 따르면 인코더는 I 프레임, P 프레임, B 프레임 등 상이한 종류를 사용하여 영상을 인코딩할 수 있다. 인트라 프레임(Intra Frame)은 다른 이미지를 참조하지 않고 독립적으로 해독이 가능한 독립형 프레임을 말한다.
H.264 표준을 따르면 비디오 순서열에서 첫번째 프레임은 항상 I 프레임으로 시작된다. I 프레임은 새로운 뷰어 또는 전송된 비트 스트림이 손상된 경우 재동기화 지점의 시작점으로 사용된다. 그리고 I 프레임은 빨리 감기, 되감기 또는 기타 무작위 재생 기능을 구현하는데 사용될 수 있다.
인코더는 새로운 클라이언트가 스트림 시청에 참여할 것으로 예상되는 경우 또는 자동으로 정규적인 간격에 I 프레임을 비디오에 삽입한다. I 프레임은 상당히 많은 비트를 소모하는 단점이 있다.
한편, P프레임은 프레임 사이의 예측 (Predictive)을 위한 것으로 이전의 I 프레임 및 P 프레임을 참조하여 프레임을 부호화하는데 사용될 수 있다. P 프레임은 보통 I 프레임 보다 적은 비트를 소모하지만, 이전의 P 프레임과 I 프레임에 대한 복잡한 의존성으로 인하여 전송 오류에 아주 민감하다는 단점이 있다.
나아가 B 프레임, 즉 양측 예측 인터프레임 (Bi-predictive Inter Frame)은 이전 및 이후의 I 프레임과 P 프레임 모두를 참조할 수 있다.
도 1에 도시된 도면은 I 프레임, B 프레임 및 P프레임의 일반적인 순서를 예시한다.
도 1에서 도면부호 110인 I 프레임은 새로운 뷰어를 위한 시작점으로 기능한다. 도면부호 120인 B프레임은 이전의 I 프레임(110)과 이후의 P프레임 (130) 모두를 참조할 수 있다. 그리고 도면부호 130인 B프레임 역시 이전의 이전의 I 프레임(110)과 이후의 P프레임 (130) 모두를 참조할 수 있다. 그러나 도면부호 130인 P프레임은 이전의 I 프레임(110)만 참조할 수 있다.
도 1에 도시된 바와 같이 비디오 디코더가 프레임 별로 비트 스트림을 해독하여 비디오를 복원하는 경우, 해독은 항상 I 프레임(110)으로 시작된다. 그리고 P 프레임(130)과 B프레임(120, 130)이 사용되는 경우에는 참조 프레임과 함께 해독된다.
한편 H/264 프로파일을 따르는 DVR에서는 최근 I 프레임과 P프레임만을 사용한다. B 프레임을 사용하지 않으면 지연이 적어지기 때문에 네트워크 카메라와 비디오 인코더의 효율성을 높일 수 있기 때문이다.
즉, 인코딩 시간의 지연, 인코딩된 데이터 용량의 증가, 디코딩 시 소요되는 시간 지연 등을 고려하여, 최근 DVR에서는 I 프레임과 P프레임 만을 사용하는 H.264 프로파일을 지원하는 경우가 많아지고 있다.
그러나 B 프레임을 제외하고 인코딩한 비디오 파일을 역방향 재생(backward)을 위하여 디코딩하는 경우, 영상이 부드럽게 제공되지 않는 문제가 발생한다. 역방향 재생을 위한 디코딩의 경우에서는 I 프레임 만을 디코딩하기 때문에 실제 연속적인 움직임을 제공할 수 없는 결과가 발생한다.
예를 들어 I-P-P-P-P … P 프레임 순서로 총 30개의 프레임을 하나의 GOP(Graphic Of Picture)로 설정한 경우, I 프레임을 이용하여 역방향 재생 디코딩을 하게 되면, 역방향 재생 간격이 30초 씩 건너뛰게 되는 최악의 상황이 발생하게 되는 것이다.
폐쇄회로 시장이 디지털화 되면서 사용자들은 아날로그 비디오 테이프를 뒤로 감는 것처럼, 역방향 재생 영상이 부드럽게 제공되기를 요구하고 있다. 그러나 종래 기술을 따르면, 높은 저장율, 빠른 재생 속도, 빠른 네트워크 전송 속도 등의 효율성을 선택하여 B 프레임을 포기하면서 소비자의 니즈를 충족시키지 못하는 문제가 있다.
따라서 본 발명은 B 프레임 없이도 매끄러운 역방향 재생을 할 수 있는 방법 및 장치를 제공하고자 한다.
도 2은 본 발명의 실시예에 따라 I 프레임과 P프레임을 추출하여 형성하는 스택 객체와 큐 객체를 예시하는 도면이다. 본 발명에 따르면, B 프레임 없이도 매끄러운 역방향 재생 기능을 제공하기 위해서 복수개의 스택 객체와 하나의 큐 객체를 이용하여 디코딩 할 수 있다.
앞서 설명한 바와 같이 P 프레임은 이전의 I 프레임 및 P 프레임을 참조하기 때문에, P 프레임의 디코딩을 위해서는 반드시 I 프레임의 디코딩이 선행되어야 한다.
본 발명의 실시예를 따르면, 역방향 재생 디코딩의 경우라도 뒤에서 앞으로 디코딩을 하는 것이 아니라, 구간 별로 앞에서 뒤로 디코딩하면서 복수의 스택 객체에 데이터를 입력(push)하는 방법을 이용할 수 있다. 그리고 이렇게 형성한 스택 객체를 큐 객체에 인큐(enqueue)할 수 있다. 플레이어는 큐에 데이터가 존재한다면, 복수의 스택 객체로 디큐(dequeue)하고, 다시 스택 객체의 데이터를 출력 (pop)하면 부드러운 역방향 재생 영상을 제공할 수 있다.
도 2를 참고하여 보다 구체적으로 설명한다.
도 2의 도면부호 201은 B 프레임 없이 I 프레임 및 P 프레임 만으로 인코딩된 비디오를 예시하고 있다. 왼쪽에서 오른쪽 방향이 프레임 인코딩 순방향인 경우, 사용자는 임의의 순간에 대한 되감기 재생, 즉 역방향 재생을 요청할 수 있다. 도 2는 프레임 230에 대한 역방향 재생 명령을 수신한 경우를 예시한다.
사용자의 역방향 재생 명령을 수신한 경우, 제어부는 역방향 재생 시작 지점(230)부터 역방향으로 I 프레임들을 검색할 수 있다. 도 2의 201에서 제어부는 230, 220 및 210 순서로 I 프레임을 검색할 것이다.
이후 제어부는 최초로 검색된 I 프레임 (230) 및 상기 I 프레임(230)을 참고하는 복수의 P프레임(231, 232, 233, 234, 235, 236, 237, 238)을 순방향 순서로 디코딩하여 제 1 스택 객체 (204)을 형성할 수 있다.
그리고 제어부는 두번째로 검색된 I 프레임 (220) 및 상기 I 프레임(220)을 참고하는 복수의 P프레임(221, 222, 223, 224, 225, 226, 227, 228) 을 순방향 순서로 디코딩하여 제 2 스택 객체 (203)을 형성할 수 있다.
나아가 제어부는 세번째로 검색된 I 프레임 (210) 및 상기 I 프레임(210)을 참고하는 복수의 P프레임(211, 212, 213, 214, 215, 216, 217, 218) 을 순방향 순서로 디코딩하여 제 3 스택 객체 (202)을 형성할 수 있다.
위와 같이 복수의 스택 객체를 생성한 후, 제어부는 제 1 스택(204), 제 2 스택 (203), 제 3 스택(202) 순서로 인큐(enqueue)하여 큐(queue) 객체(205)를 생성할 수 있다.
이후 제어부는 큐 객체(205)를 선입선출(first in first out) 하여 복수의 스택 객체(204, 203, 202)로 디큐(dequeue)하고, 다시 스택 객체(204, 203, 202)의 데이터를 후입선출(last in first out)으로 출력 (pop)하여, 플레이어에 제공하면 부드러운 역방향 재생 영상을 제공할 수 있다.
도 3은 본 발명의 실시예에 따르는 비디오를 되감는 장치의 내부 구조를 도시하는 블록도이다. 도 3에서 도시되는 바와 같이 본 발명의 실시예에 따른 비디오를 되감는 DVR(300)은 통신부(310), 저장부(320), 입력부(330), 표시부(340) 및 제어부(350)를 포함할 수 있다.
통신부(310)는 DVR(300)의 유선 또는 무선 통신을 통한 데이터의 송수신 기능을 수행한다. 또한, 통신부(310)는 유선 또는 무선 채널을 통해 데이터를 수신하여 제어부(350)로 출력하고, 제어부(350)로부터 출력된 데이터를 유무선 채널을 통해 전송할 수 있다.
한편, 도 3에 별도로 도시된 것은 아니지만, 본 발명의 실시예에 따른 DVR(300)은 오디오 처리부와 비디오 처리부를 더 포함할 수도 있다. 이들은 코덱(CODEC)으로 구성될 수 있으며, 특히 본 발명의 실시예에 따르는 비디오 처리부는 제어부(350)의 신호를 받아, 제어부가 지정한 포맷을 적용하여 프레임을 인코딩 및 디코딩하는 역할을 수행한다.
저장부(320)는 DVR(300)의 동작에 필요한 프로그램 및 데이터를 저장하는 역할을 수행하며, 프로그램 영역과 데이터 영역으로 구분될 수 있다.
프로그램 영역은 DVR(300)의 전반적인 동작을 제어하는 프로그램 및 운영체제(OS, Operating System), 멀티미디어 컨텐츠 재생 등에 필요한 응용 프로그램을 저장하고, 나아가 DVR(300)의 기타 옵션 기능, 예컨대, 움직임 탐지 기능, 센서와 연결 녹화 기능, 자동 Pan/Tilt/Zoom/Control 기능 및 화상 확대·편집 기능에 필요한 응용 프로그램 등을 저장할 수 있다.
데이터 영역은 제어부(350)의 신호를 받아 인코딩한 비디오 프레임을 저장하고, 비디오 프레임을 디코딩한 스택 객체와 큐 객체를 저장할 수 있다.
입력부(330)는 DVR(300)을 제어하기 위한 사용자의 키 조작을 입력받고 입력 신호를 생성하여 제어부(350)에 전달한다. 본 발명의 선호되는 실시예에서 입력부(130)는 사용자의 역방향 재생 명령 등을 수신할 수 있다.
표시부(340)는 액정표시장치(LCD, Liquid Crystal Display), 유기 발광 다이오드(OLED, Organic Light Emitting Diodes), 능동형 유기 발광 다이오드(AMOLED, Active Matrix Organic Light Emitting Diodes) 등으로 형성될 수 있으며, DVR(300)의 메뉴, 입력된 데이터, 기능 설정 정보 및 기타 다양한 정보를 사용자에게 시각적으로 제공한다. 특히 본 발명의 실시예에 따르는 표시부(340)는 제어부(350)의 신호를 받아 비디오 역방향 재생을 출력하는 기능을 수행한다.
제어부(350)는 DVR(300)의 각 구성 요소에 대한 전반적인 동작을 제어한다. 특히, 제어부(350)는 다수의 스택 객체에 디코딩 프레임을 입력하고, 이러한 복수의 스택으로 큐 객체를 형성하여, 데이터를 출력하는 일련의 과정을 제어할 수 있다.
제어부(350)는 입력부(330)가 사용자로부터 역방향 재생 명령을 수신하면, 역방향 재생 명령이 수신된 시점의 프레임으로부터 역방향으로 I 프레임들을 검색할 수 있다.
이후 제어부(350)는 최초로 검색된 I 프레임 및 상기 I 프레임을 참고하는 복수의 P프레임을 순방향 순서로 디코딩하여 제 1 스택 객체를 형성할 수 있다. 그리고 제어부(350)는 두번째로 검색된 I 프레임 및 상기 I 프레임을 참고하는 복수의 P프레임을 순방향 순서로 디코딩하여 제 2 스택 객체를 형성할 수 있다.
이러한 과정을 되풀이하여 제어부(350)는 n번째로 검색된 I 프레임 및 상기 I 프레임을 참고하는 복수의 p 프레임을 순방향 순서로 디코딩하여 제 n 스택 객체를 형성할 수 있다.
이후 제어부(350)는 제 1 스택부터 제 n 스텍 순서로 인큐(enqueue)하여 큐(queue) 객체(205)를 생성할 수 있다.
이후 제어부는 큐 객체를 선입선출(first in first out) 하여 복수의 스택 객체로 디큐(dequeue)하고, 다시 스택 객체의 데이터를 후입선출(last in first out)으로 출력(pop)하여, 표시부(340)에 표시하도록 제어할 수 있다.
한편, 본 발명의 또 다른 실시예에 따르면 역방향 재생의 배속을 다양하게 제공할 수 있다. 예를 들어 사용자가 역방향 재생을 2배속으로 제공할 것을 원하는 경우, 제어부(350)는 P 프레임을 하나씩 건너 뛰면서 디코딩하여 스택 객체를 형성하는 방법으로 배속에 따른 자연스러운 역방향 재생 영상을 제공할 수 있다.
또 다른 예로, 사용자가 역방향 재생을 3배속으로 제공할 것을 원하는 경우, 제어부(350) P 프레임을 세개당 하나씩 추출하여 디코딩하여 스택 객체를 형성하는 방법으로 배속에 따른 자연스러운 역방향 재생 영상을 제공할 수 있다.
즉, 역방향 재생 배속에 따라 P 프레임의 추출 간격을 조절하여 디코딩하여 스택 객체를 형성하고 다시 큐 객체를 형성하는 위와 같은 방법을 따르면 효율적으로 역방향 재생 배속 기능을 제공할 수 있다.
도 4는 본 발명의 실시예에 따라 비디오를 되감는 과정을 도시하는 순서도이다.
단계 410에서 제어부(350)는 입력부(330)가 사용자로부터 역방향 재생 명령을 수신하면, 단계 430에서 역방향 재생 명령이 수신된 시점의 프레임으로부터 역방향으로 I 프레임들을 검색할 수 있다.
단계 440에서 제어부(350)는 최초로 검색된 I 프레임 및 상기 I 프레임을 참고하는 복수의 P프레임을 순방향 순서로 디코딩하여 제 1 스택 객체를 형성할 수 있다.
단계 450에서 제어부(350)는 단계 440과 같은 방법으로 n번째로 검색된 I 프레임 및 상기 I 프레임을 참고하는 복수의 p 프레임을 순방향 순서로 디코딩하여 제 n 스택 객체를 형성할 수 있다.
단계 460에서 제어부(350)는 제 1 스택부터 제 n 스텍 순서로 인큐(enqueue)하여 큐(queue) 객체(205)를 생성할 수 있다.
단계 470에서 제어부(350)는 큐 객체를 선입선출(first in first out) 하여 복수의 스택 객체로 디큐(dequeue)하고, 다시 스택 객체의 데이터를 후입선출(last in first out)으로 출력(pop)하여, 표시부(340)에 표시하도록 제어할 수 있다.
한편, 본 발명의 또 다른 실시예에 따르면 역방향 재생의 배속을 다양하게 제공할 수 있다.
예를 들어 단계 420에서 사용자가 역방향 재생을 2배속으로 제공할 것을 원하는 경우, 제어부(350)는 단계 440 및 단계 450에서 P 프레임을 하나씩 건너 뛰면서 디코딩하여 스택 객체를 형성하는 방법으로 배속에 따른 자연스러운 역방향 재생 영상을 제공할 수 있다.
다시 말하면, 단계 420에서 사용자로부터 m배속 역방향 재생 명령을 수신하는 경우, 단계 440 및 단계 450에서 제어부는 m 간격마다 하나씩 추출한 P 프레임을 디코딩하여 스택 객체를 형성할 수 있다. 이후 단계 460 내지 단계 470을 거쳐 m배속 역방향 재생 영상을 제공할 수 있다.
본 명세서와 도면에 개시된 본 발명의 실시 예들은 본 발명의 기술 내용을 쉽게 설명하고 본 발명의 이해를 돕기 위해 특정 예를 제시한 것뿐이며, 본 발명의 범위를 한정하고자 하는 것은 아니다. 여기에 개시된 실시 예들 이외에도 본 발명의 기술적 사상에 바탕을 둔 다른 변형 예들이 실시 가능하다는 것은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 자명한 것이다.
300: DVR (Digital Video Recorder)
310 : 통신부
320 : 저장부
330 : 입력부
340 : 표시부

Claims (9)

  1. 비디오 역방향 재생 방법에 있어서,
    적어도 하나 이상의 I 프레임 및 P프레임을 포함하는 동영상에 대한 역방향 재생 명령을 수신하는 단계;
    역방향 재생 시작 지점으로부터 역방향 순서로 I 프레임을 검색하는 단계;
    최초로 검색된 제 1 I 프레임 및 상기 제 1 I 프레임을 참고하는 제 1 P 프레임을 순방향 순서대로 디코딩하여 제 1 스택(Stack) 객체를 형성하는 단계;
    상기 제 1 I 프레임 다음으로 검색되는 제 2 I 프레임 및 상기 제 2 I 프레임을 참고하는 제 2 P프레임을 순방향 순서대로 디코딩하여 제 2 스택 (Stack) 객체를 형성하는 단계; 및
    상기 제 1 스택 객체 다음으로 상기 제 2 스택 객체를 삽입하여 큐(Queue) 객체를 형성하는 단계를 포함하는 것을 특징으로 하는 방법.
  2. 제 1항에 있어서,
    상기 큐 객체를 스택 객체들로 해제하는 단계;
    상기 스택 객체의 프레임을 출력하는 단계; 및
    상기 프레임을 재생하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  3. 제 2항에 있어서,
    상기 역방향 재생 명령을 수신하는 단계는, 역방향 재생 배속 명령을 함께 수신하는 단계이며,
    상기 제 1 스택 객체를 형성하는 단계는, 상기 제 1 P 프레임을 상기 배속 명령에 따라 미리 정해진 간격으로 추출하여 디코딩하는 단계이며, 그리고
    상기 제 2 스택 객체를 형성하는 단계는, 상기 제 2 P 프레임을 상기 배속 명령에 따라 미리 정해진 간격으로 추출하여 디코딩하는 단계인 것을 특징으로 하는 방법.
  4. 비디오 역방향 재생을 실행하는 장치에 있어서,
    적어도 하나 이상의 I 프레임 및 P프레임을 포함하는 비디오에 대한 역방향 재생 명령을 수신하는 입력부; 및
    역방향 재생 시작 지점으로부터 역방향 순서로 I 프레임을 검색하고, 최초로 검색된 제 1 I 프레임 및 상기 제 1 I 프레임을 참고하는 제 1 P 프레임을 순방향 순서대로 디코딩하여 제 1 스택(Stack) 객체를 형성하며, 상기 제 1 I 프레임 다음으로 검색되는 제 2 I 프레임 및 상기 제 2 I 프레임을 참고하는 제 2 P프레임을 순방향 순서대로 디코딩하여 제 2 스택 (Stack) 객체를 형성하고, 상기 제 1 스택 객체 다음으로 상기 제 2 스택 객체를 삽입하여 큐(Queue) 객체를 형성하도록 제어하는 제어부를 포함하는 것을 특징으로 하는 장치.
  5. 제 4 항에 있어서, 상기 제어부는,
    상기 큐 객체를 스택 객체들로 해제하고, 상기 스택 객체의 프레임을 출력하며, 상기 프레임을 재생하도록 제어하는 것을 특징으로 하는 장치.
  6. 제 5 항에 있어서,
    상기 입력부는, 역방향 재생 배속 명령을 수신하고,
    상기 제어부는, 상기 제 1 P 프레임을 상기 배속 명령에 따라 미리 정해진 간격으로 추출하여 디코딩하며, 그리고 상기 제 2 P 프레임을 상기 배속 명령에 따라 미리 정해진 간격으로 추출하여 디코딩하는 것을 특징으로 하는 장치.
  7. 비디오 역방향 재생을 실행하는 프로그램이 기록된 기록매체로,
    적어도 하나 이상의 I 프레임 및 P프레임을 포함하는 비디오에 대한 역방향 재생 명령을 수신하면, 역방향 재생 시작 지점으로부터 역방향 순서로 I 프레임을 검색하는 명령;
    최초로 검색된 제 1 I 프레임 및 상기 제 1 I 프레임을 참고하는 제 1 P 프레임을 순방향 순서대로 디코딩하여 제 1 스택(Stack) 객체를 형성하는 명령;
    상기 제 1 I 프레임 다음으로 검색되는 제 2 I 프레임 및 상기 제 2 I 프레임을 참고하는 제 2 P프레임을 순방향 순서대로 디코딩하여 제 2 스택 (Stack) 객체를 형성하는 명령; 및
    상기 제 1 스택 객체 다음으로 상기 제 2 스택 객체를 삽입하여 큐(Queue) 객체를 형성하는 명령을 포함하는 프로그램이 기록된 기록매체.
  8. 제 7 항에 있어서, 상기 프로그램은,
    상기 큐 객체를 스택 객체들로 해제하는 명령;
    상기 스택 객체의 프레임을 출력하는 명령; 및
    상기 프레임을 재생하는 명령을 포함하는 것을 특징으로 하는 기록매체.
  9. 삭제
KR1020130037475A 2013-04-05 2013-04-05 비디오 콘텐츠의 역방향 재생 방법 및 장치 KR101426773B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130037475A KR101426773B1 (ko) 2013-04-05 2013-04-05 비디오 콘텐츠의 역방향 재생 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130037475A KR101426773B1 (ko) 2013-04-05 2013-04-05 비디오 콘텐츠의 역방향 재생 방법 및 장치

Publications (1)

Publication Number Publication Date
KR101426773B1 true KR101426773B1 (ko) 2014-08-07

Family

ID=51749594

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130037475A KR101426773B1 (ko) 2013-04-05 2013-04-05 비디오 콘텐츠의 역방향 재생 방법 및 장치

Country Status (1)

Country Link
KR (1) KR101426773B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024128628A1 (ko) * 2022-12-13 2024-06-20 삼성전자 주식회사 전자 장치 및 상기 전자 장치에서 동영상을 역방향으로 재생하는 방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990010657A (ko) * 1997-07-18 1999-02-18 윤종용 엠펙 비디오 데이타 디코딩방법
KR19990054484A (ko) * 1997-12-26 1999-07-15 전주범 엠펙-2 프로그램 스트림의 고속 역방향 재생 방법
JP2003264815A (ja) 2002-03-07 2003-09-19 Sanyo Electric Co Ltd 映像情報送受信映像処理方法
KR20070049504A (ko) * 2005-11-08 2007-05-11 엘지전자 주식회사 디지털 콘텐츠 재생 장치 및 그의 역방향 콘텐츠 저장 및재생방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990010657A (ko) * 1997-07-18 1999-02-18 윤종용 엠펙 비디오 데이타 디코딩방법
KR19990054484A (ko) * 1997-12-26 1999-07-15 전주범 엠펙-2 프로그램 스트림의 고속 역방향 재생 방법
JP2003264815A (ja) 2002-03-07 2003-09-19 Sanyo Electric Co Ltd 映像情報送受信映像処理方法
KR20070049504A (ko) * 2005-11-08 2007-05-11 엘지전자 주식회사 디지털 콘텐츠 재생 장치 및 그의 역방향 콘텐츠 저장 및재생방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024128628A1 (ko) * 2022-12-13 2024-06-20 삼성전자 주식회사 전자 장치 및 상기 전자 장치에서 동영상을 역방향으로 재생하는 방법

Similar Documents

Publication Publication Date Title
EP1239674B1 (en) Recording broadcast data
JP5059500B2 (ja) フォーマット化されたデジタルデータの連続ストリームにおけるランダムアクセス及び時間基準の機能を実施する方法及び装置
US20030077071A1 (en) Fast forward trick mode and reverse trick mode using an information file
JP4515465B2 (ja) 動画撮影装置および動画撮影方法、記録媒体に記録された映像信号を再生する動画再生装置および動画再生方法
US20180114545A1 (en) Entertainment device with improved reverse play
JP2006520986A (ja) ストリームバッファチャネル用のcpiデータ
US20060182425A1 (en) Converting a still image to a plurality of video frame images
KR101142379B1 (ko) 디지털 방송 재생 방법 및 장치, 디지털 방송 녹화 방법
JP2006311325A (ja) 映像再生装置
US20090136204A1 (en) System and method for remote live pause
EP1895773B1 (en) Method and apparatus to reverse play with minimal delay
KR101426773B1 (ko) 비디오 콘텐츠의 역방향 재생 방법 및 장치
JP2002077820A (ja) 蓄積再生装置およびデジタル放送送信装置
JP2007158432A (ja) 映像記録装置
US20130287361A1 (en) Methods for storage and access of video data while recording
JP4532426B2 (ja) 映像情報処理装置
US20120189283A1 (en) Moving image data recording apparatus
US9025931B2 (en) Recording apparatus, recording method, and program
KR101124168B1 (ko) 다채널 영상 녹화장치
JP2007067808A (ja) 動画ストリームの画像再生装置及び方法
EP2015305A1 (en) A device and method for smooth reverse playback of media
JP5803814B2 (ja) 記録装置および記録制御方法
JP2005197839A (ja) トランスポートストリームの特殊再生方法及びトランスポートストリームの記録再生装置
JP2008153955A (ja) 映像記録再生装置、その特殊再生方法
JP2008277930A (ja) 動画記録再生装置

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20170728

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180709

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190701

Year of fee payment: 6