KR20150093704A - 동일한 디지털 비디오 및/또는 오디오 스트림의 복수의 오버랩하는 레코딩들을 저장하는 디바이스 및 방법 - Google Patents

동일한 디지털 비디오 및/또는 오디오 스트림의 복수의 오버랩하는 레코딩들을 저장하는 디바이스 및 방법 Download PDF

Info

Publication number
KR20150093704A
KR20150093704A KR1020157015607A KR20157015607A KR20150093704A KR 20150093704 A KR20150093704 A KR 20150093704A KR 1020157015607 A KR1020157015607 A KR 1020157015607A KR 20157015607 A KR20157015607 A KR 20157015607A KR 20150093704 A KR20150093704 A KR 20150093704A
Authority
KR
South Korea
Prior art keywords
digital video
audio stream
segment
recording
request
Prior art date
Application number
KR1020157015607A
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 톰슨 라이센싱
Publication of KR20150093704A publication Critical patent/KR20150093704A/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/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4335Housekeeping operations, e.g. prioritizing content for deletion because of storage space restrictions
    • 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/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/102Programmed access in sequence to addressed parts of tracks of operating record carriers
    • G11B27/105Programmed access in sequence to addressed parts of tracks of operating record carriers of operating discs
    • 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/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
    • G11B27/30Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on the same track as the main recording
    • G11B27/3027Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on the same track as the main recording used signal is digitally coded
    • 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/41Structure of client; Structure of client peripherals
    • H04N21/414Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
    • H04N21/4147PVR [Personal Video Recorder]
    • 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/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4334Recording operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6106Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
    • H04N21/6125Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via Internet
    • 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/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Television Signal Processing For Recording (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

동일한 디지털 비디오 및/또는 오디오 스트림의 복수의 오버랩 레코딩들의 저장에 있어서, 동일한 디지털 비디오 및/또는 오디오 스트림 상에서 다수의 레코드 액션들이 동작될 때 할당된 리소스들의 재사용을 통하여 리소스 최적화가 얻어진다.

Description

동일한 디지털 비디오 및/또는 오디오 스트림의 복수의 오버랩하는 레코딩들을 저장하는 디바이스 및 방법{DEVICE AND METHOD FOR STORING A PLURALITY OF OVERLAPPING RECORDINGS OF A SAME DIGITAL VIDEO AND/OR AUDIO STREAM}
본 발명은 디지털 비디오 및/또는 오디오 스트림들을 저장하는 것에 관련된다.
소비자들이 후속의 프리젠테이션을 위한 비디오 및/또는 오디오 프로그램들을 레코드할 수 있도록 하는 여러 디바이스들이 개발되어 왔다. 이를 위하여, PVR (Personal Video Recorder) 기능들은 저장을 위한 외부 디바이스들, 이를 테면 메모리 스틱들 및 하드 디스크 드라이브들에 접속하는 것을 허용하는, 예를 들어, USB (Universal Serial Interface) 포트를 통하여 디지털 디바이스들에 의해 제공된다. PVR들이 사용자들에 대중적으로 되는 특징들 중 하나는, 소위, 생방송된 텔레비전 프로그램의 시간 시프트를 동작시키는, 즉 사용자가 프로그램을 중지 및 재개할 수 있는 가능성이다. 이 기능성은 보다 일반적인 레코딩 기능에 추가하여 온다. PVR 특징들이 다소의 희소한 리소스들, 이를 테면 튜너, 디멀티플렉서 (demux) 및 메모리를 요구하는 것은 단점이다. 이를 테면, 위성 또는 지상파 수신을 위한 프론트 엔드를 가진 수신기들에 대해, PVR 가능성이 수신기에 제공되면 디바이스에 제 2 튜너를 추가하여 사용자가 방송 프로그램을 동시에 시각화하게 하고 서로 레코드하도록 허용할 필요가 있다. 또한, 프론트 엔드가 있거나 또는 없는 수신기들에 대해서 (프론트 엔드가 없는 수신기의 일 예는 IPTV 수신기임), 디멀티플렉서는 다수의 디지털 비디오 및/또는 오디오 스트림들을 동시에 디멀티플렉싱할 수 있어야 한다. 메모리에 관련하여, 비디오 레코딩의 경우에 그리고 특히 HD (High Definition) 포맷으로 송신되는 방송 프로그램의 레코딩의 경우 상당한 메모리 공간이 요구된다. 메모리 요건들은 사용자가 다수의 PVR 기능들을 동시에 동작시킬 때 훨씬 더 중요해진다. 예를 들어, 사용자가 생방송 프로그램에서 시간 시프트를 활성화하는 경우, 시간 시프트 버퍼를 위하여 메모리 존이 요구된다. 동시에 사용자가 프로그램을 레코드할 때, 프로그램을 저장하기 위하여 제 2 메모리 존이 요구된다. 다른 예로서, 다수의 셋톱 박스들 (STB) 이 장치화된 댁내 (예를 들어, 거실, 침실들) 에서, 이들 STB들의 다수의 사용자들이 상이한 시간들에서 레코딩을 시작하는 방송 프로그램들을 레코드하거나 시간 시프트하면, 각각의 레코드 및 시간 시프트에 대해 메모리 존들이 요구된다. 따라서, 별도의 리소스들이 각각의 기능에 대해 할당되며, 리소스들의 분해 (factorization) 가 없다.
따라서, 종래 기술의 솔루션들의 추가적인 최적화가 요구된다.
본 발명은 종래 기술의 일부 불편함을 줄이는 것을 목적으로 한다.
이를 위하여, 본 발명은 동일한 디지털 비디오 및/또는 오디오 스트림의 복수의 오버랩하는 레코딩들을 저장하는 방법을 포함한다. 본 방법은 동일한 디지털 비디오 및/또는 오디오 스트림의 복수의 오버랩하는 레코딩들을 단일의 세그먼트된 레코딩으로서 저장한다. 단일의 세그먼트된 레코딩의 각각의 세그먼트는 디지털 비디오 및/또는 오디오 스트림의 비오버랩 부분을 포함한다. 본 방법은 디지털 비디오 및/또는 오디오 스트림의 레코딩을 위한 제 1 요청을 수신하는 것을 포함한다. 제 1 요청의 수신은 현재 세그먼트로 지칭되는 세그먼트의 오프닝, 및 현재 세그먼트에서의 디지털 비디오 및/또는 오디오 스트림의 레코딩을 초래한다. 본 방법은 또한 디지털 비디오 및/또는 오디오 스트림의 레코딩을 위한 제 2 요청을 수신하는 것을 포함한다. 제 2 요청의 수신은 현재 세그먼트의 클로징, 및 새로운 현재 세그먼트의 오프닝, 그리고 현재 세그먼트에서의 디지털 비디오 및/또는 오디오 스트림의 레코딩을 계속하는 것을 초래한다. 마지막으로, 본 방법은 디지털 비디오 및/또는 오디오 스트림의 레코딩을 정지하기 위한 제 3 요청을 수신하는 것을 포함한다. 제 3 요청의 수신은 현재 세그먼트의 클로징을 초래한다. 여전히 적어도 하나의 진행중인 레코딩이 존재하면, 새로운 현재 세그먼트는 오프닝되고, 현재 세그먼트에서의 디지털 비디오 및/또는 오디오 스트림의 레코딩이 계속된다.
본 발명의 다른 변형된 실시형태에 따르면, 세그먼트는 파일이며, 클로징은 파일 클로즈 동작이다.
본 발명의 변형된 실시형태에 따르면, 세그먼트는 메모리 세그먼트이고, 클로징은 인덱스의 배치이다.
본 발명의 변형된 실시형태에 따르면, 본 방법은 세그먼트당, 디지털 비디오 및/또는 오디오 스트림에 관련된 시간 스탬프의 저장을 포함한다.
본 발명의 변형된 실시형태에 따르면, 본 방법은 세그먼트당, 요청의 기점 (origin) 에서 사용자에 세그먼트를 관련시킨 정보의 저장을 포함한다.
본 발명의 변형된 실시형태에 따르면, 레코딩의 요청은 디지털 비디오 및/또는 오디오 스트림의 시각화를 시간 시프트하기 위한 요청이고, 레코딩의 정지를 위한 요청은 시각화를 재개하기 위한 요청이다.
본 발명은 또한 디지털 비디오 및/또는 오디오 스트림의 복수의 오버랩하는 레코딩들의 저장을 위한 디바이스에 관련된다. 본 디바이스는 동일한 디지털 비디오 및/또는 오디오 스트림의 복수의 오버랩하는 레코딩들을 단일의 세그먼트된 레코딩으로서 저장한다. 단일의 세그먼트된 레코딩의 각각의 세그먼트는 디지털 비디오 및/또는 오디오 스트림의 비오버랩 부분을 포함한다. 본 디바이스는 디지털 비디오 및/또는 오디오 스트림의 레코딩을 위한 제 1 요청을 수신하기 위한 인터페이스, 현재 세그먼트로 지칭되는 세그먼트를 오프닝하기 위한 중앙 프로세싱 유닛, 및 현재 세그먼트에서의 디지털 비디오 및/또는 오디오 스트림의 레코딩을 위한 메모리를 더 포함한다. 본 디바이스는 디지털 비디오 및/또는 오디오 스트림을 레코딩하기 위한 제 2 요청을 수신하기 위한 네트워크 인터페이스, 현재 세그먼트의 클로징을 위한 그리고 새로운 현재 세그먼트의 오프닝을 위한 중앙 프로세싱 유닛, 및 현재 세그먼트에서의 디지털 비디오 및/또는 오디오 스트림의 레코딩을 계속하기 위한 메모리를 더 포함한다. 마지막으로, 본 디바이스는 디지털 비디오 및/또는 오디오 스트림의 레코딩을 정지하기 위한 제 3 요청을 수신하기 위한 네트워크 인터페이스, 현재 세그먼트의 클로징을 위한 그리고 새로운 현재 세그먼트의 오프닝을 위한 중앙 프로세싱 유닛, 및 적어도 하나의 레코딩이 진행중이면 현재 세그먼트에서의 디지털 비디오 및/또는 오디오 스트림의 레코딩을 계속하기 위한 메모리를 포함한다.
본 발명의 추가의 이점들은 본 발명의 특정의 비제한적인 실시형태들의 설명을 통하여 명백해질 것이다. 실시형태들은 다음 도면들을 참조로 설명될 것이다.
도 1 은 메모리에서의 디지털 비디오 및/또는 오디오 스트림들의 저장을 위한 종래 기술의 방법을 예시한다.
도 2 는 본 발명의 특정의 비제한적인 실시형태에 따라 메모리에서의 디지털 비디오 및/또는 오디오 스트림들을 저장하기 위한 방법을 예시한다.
도 3 은 본 발명의 저장 방법의 비제한적인 예의 사용 시나리오를 예시한다.
도 4 는 도 3 에 예시된 것에 계속되는 사용 시나리오를 예시한다.
도 5 는 특정 비제한적인 실시형태에 따라 본 발명을 구현하는 디바이스의 블록도이다.
도 6 은 비제한적 예시의 실시형태에 따른 본 발명의 방법의 논리도이다.
이해를 용이하게 하기 위하여, 동일한 도면 부호들은 가능한 경우에, 도면들에 대해 공통인 동일한 엘리먼트들을 지정하도록 이용된다.
도 1 은 메모리 또는 디스크에서, 파일 형태이든 아니든 간에, 동일한 디지털 비디오 및/또는 오디오 스트림의 복수의 오버랩하는 레코딩들을 저장하는 종래 기술의 방법을 예시한다. 다이어그램은 3 개의 부분들을 포함한다. 아이템들 (103-105) 은 제 1 부분에서, 3 개의 연속적인 디지털 비디오 및/또는 오디오 프로그램들을 포함하는 생방송된 디지털 비디오 및/또는 오디오 스트림을 나타내며, 3개의 프로그램은, 디지털 비디오 및/또는 오디오 프로그램 "n-1" (103), 디지털 비디오 및/또는 오디오 프로그램 "n" (104), 및 디지털 비디오 및/또는 오디오 프로그램 "n+1" (105) 이다. 제 2 부분에서, 아이템들 (100-102) 은 메모리 버퍼들 또는 파일들 (이하, 표기 "메모리 버퍼/파일"이 사용되며, 기호 "/" 는 "또는" 을 의미한다), 제 1 메모리 버퍼/파일 (100), 제 2 메모리 버퍼/파일 (101) 및 제 3 메모리 버퍼/파일 (102) 을 나타낸다. 다이어그램의 제 3 부분은 총 요구 저장 공간 (102), 즉 총 메모리 버퍼들/파일들 (100-102) 이 시간 (130) 에 대하여 플롯되는 그래프를 나타낸다. 이벤트들 (110-116) 은 타임라인 상에 마킹된다. 그래프 (140) 는 시간에 따른 총 요구 저장 공간의 전개를 나타낸다.
다이어그램은 다음의 시나리오에 대응한다.
- 제 1 사용자는 T=111 에서 예를 들어, 사용자의 원격 제어의 PVR 기능 버튼들 상의 버튼 "rec" 를 누름으로써 디지털 비디오 및/또는 오디오 프로그램 ("n")(104) 을 레코드한다.
- 제 1 사용자는 동시에, 이 프로그램이 레코드될 때 디지털 비디오 및/또는 오디오 프로그램 ("n")(104) 을 시각화하면서, 예를 들어, "중지" 버튼을 눌러 동일한 디지털 비디오 및/또는 오디오 프로그램 "n" 의 T=112 에서의 시간 시프트를 시작한다.
- 제 1 사용자는 중지를 해제하고, 이에 따라 예를 들어, "플레이" 버튼을 누름으로써 T=113 에서의 시각화를 재개한다.
- 제 2 사용자는 동일한 디지털 비디오 및/또는 오디오 프로그램 ("n") 을 시각화하는 동안에 제 2 디바이스의 원격 제어 상의 "rec" 를 누름으로써 T=114 에서의 제 2 레코딩을 시작한다.
T=115 에서, 디지털 비디오 및/또는 오디오 프로그램 "n" 의 송신이 종료된다. 이 순간에, 방송을 직접 보았던 제 2 사용자에 대해서도 디지털 비디오 및/또는 오디오 프로그램의 시각화가 또한 종료된다.
T=116 에서, 디지털 비디오 및/또는 오디오 프로그램 "n" 의 시각화가 제 1 사용자에 대해 종료된다 (주의 : 시각화는 T=111 에서 시간 시프트로 인하여 지연되었다).
이 시나리오에서, 간략화의 이유로, 디지털 비디오 및/또는 오디오 프로그램 "n" 을 포함하는 비디오 및/또는 오디오 스트림이 5 Mbit/s 의 일정한 비트 레이트를 갖는다고 본다.
따라서, T=111 에서, 제 1 사용자는 디지털 비디오 및/또는 오디오 프로그램 "n" (104) 를 레코드하기 위하여 사용자의 원격 제어 상의 "rec" 버튼을 누를 때, 제 1 메모리 버퍼 또는 파일 (100) 이 생성된다. 그래프 (140) 는 프로그램이 수신될 때 디지털 비디오 및/또는 오디오 프로그램 "n" (104) 에 관련된, 디지털 비디오 및/또는 오디오 스트림으로부터의 데이터를 저장하기 위한 요구 저장 공간을 예시한다. 그래프는 T=111 와 T=112 사이에서, 디지털 비디오 및/또는 오디오 프로그램 "n" (104) 을 포함하는 디지털 비디오 및/또는 오디오 스트림의 비트 레이트에 대응하는 일정 저장 공간 필 레이트 (fill rate) 에서의 요구 저장 공간의 일정한 증가를 나타낸다. T=112 에서, 제 1 사용자는 "중지" 버튼을 누르며, 즉, 이는 시간 시프트 기능을 시작시킨다. 시간 시프트 기능 구현은 레코딩이 시작할 때의 순간에 달라지는 "자동" 및 "수동"과 같은 다수의 변형예들을 포함한다. 자동 시간 시프트 모드에서, 비디오 및/또는 오디오 프로그램에 대한 접속시 레코딩이 시작된다. 수동 시간 시프트 모드에서, 시간 시프트 버퍼가 플래시 메모리에 있는 것을 예로 들면, 키 누름 시 레코딩이 시작된다. 시간 시프트가 시작할 때, 제 2 메모리 버퍼/파일 (101) 은 시간 시프트 기능에 대해 생성된다. 데이터가 제 2 메모리 버퍼/파일 및 제 1 메모리 버퍼/파일에 동시에 기록될 때, 그래프 (140) 는 저장 공간 필 레이트가 T= 112 와 T=113 사이에서 두배로 되는 것을 보여주며 이는 디지털 비디오 및/또는 오디오 프로그램 "n" 의 두배의 레코딩, 즉, 10 Mbit/s 을 나타낸다. T=113 에서, 제 1 사용자는 사용자의 원격 제어 상의 "플레이" 버튼을 누른다. 이때 저장 공간 필 레이트는 5 Mbit/s 로 다시 떨어진다. 이는 시간 시프트 메모리 버퍼/파일의 기능화로 인한 것이다. 디지털 비디오 및/또는 오디오 데이터가 시간 시프트 메모리 버퍼/파일에 계속 기록되더라도, 디지털 비디오 및/또는 오디오 데이터는 또한 시간 시프트 메모리 버퍼/파일로부터 동시에 판독되어, 시간 시프트 메모리 버퍼/파일이 사이즈에 있어서 더이상 증가하지 않는 상황을 초래한다. 이는 총 요구 저장 공간이 T=113 과 T=114 사이에서 두 배로 천천히 증가하는 것을 초래한다 (즉, 이전에 언급된 바와 같이 5 Mbit/s). 그 후, T=114 에서, 동일한 디지털 비디오 및/또는 오디오 프로그램 "n" (104) 를 시청하는 제 2 사용자는 사용자의 원격 제어 상의 "rec" 키를 누른다. 제 3 메모리 버퍼/파일 (102) 이 그 순간에 생성되고, 총 저장 공간 필 레이트는 T=114 와 T=115 사이에서 다시 두배로 즉, 10 Mbit/s 로 된다. T=115 에서, 디지털 비디오 및/또는 오디오 프로그램 "n"의 종료에 도달하고, 제 1 및 제 2 레코딩들이 정지할 때 메모리 버퍼들/파일들 (100 및 102) 이 디지털 비디오 및/또는 오디오 데이터로 더 이상 채워지지 않는다. T=116 에서, 시간 시프트가 종료하고, 예를 들어, 사용자가 프로그램 "n"의 시간 시프트된 송신의 종료에 도달할 때 사용자가 "정지" 버튼을 누르고, 시간 시프트 메모리 버퍼/파일이 해제 (즉, 메모리가 '동결'되거나 또는 파일이 삭제) 되어 T=116 후에 요구되는 총 저장 공간의 감소가 발생한다.
이 종래 기술의 방법은 저장 공간 사용량의 관점에서 최적이 아니다. 동일한 디지털 비디오 및/또는 오디오 스트림으로부터의 컨텐츠는 오버랩하는 부분들에 관련된 것과 무관하게 다수회 저장되며, TS1 (101) 및 REC2 (102) 는 REC1 (100) 과 오버랩한다. 요구되는 리소스들이 메모리/파일 저장 공간의 관점에서만 설명되어 있지만, 다른 리소스들, 이를 테면, 프론트 엔드 및/또는 디멀티플렉서가 필요하게 될 수도 있다. 이용된 하드웨어에 의존하여, 종래 기술의 방법은 도 1 의 시나리오에 묘사된 바와 같이 다수의 동시 레코딩들을 허용하기 위해 다수의 프론트 엔드들 및/또는 디멀티플렉서들의 사용을 요구할 수도 있고/있거나, 다수의 동시 레코딩들을 인하여 도달된 최대 저장 공간 필 레이트 (스루풋 레이트) 를 지탱하게 하는 컴포넌트들, 이를 테면, 스루풋 레이트를 지원하도록 설계된 하드 디스크 및 메모리를 갖춘 디바이스를 설치하는 것을 필요로 할 수도 있다.
이전 섹션에서, 총 저장 공간 요건이 설명되어 있다. 총 저장 공간을 포함하는 개별적인 메모리/파일 저장 장치는 제 1 사용자에 대한 제 1 STB 및 제 2 사용자에 대한 제 2 STB 에서와 같이 상이한 디바이스들에 물리적으로 위치될 수도 있다. 저장 공간은 또한 마스터 및 슬레이브가 홈 네트워크에 상호접속되는 마스터 및 슬레이브 STB 구성에서와 같이 단일의 디바이스에 물리적으로 위치될 수도 있다. 이러한 구성에서, 마스터 STB 는 레코드 및 시간 시프트 기능을 제공하는 메모리/파일 저장 공간을 가지며, 슬레이브 STB 는 레코딩/시간 시프트를 위한 리소스는 갖고 있지 않지만 홈 네트워크를 통한 (예를 들어, http) 스트리밍을 통하여 마스터 STB 의 기능들을 이용하는 저비용의 디바이스이며, 마스터는 홈 네트워크를 통하여 슬레이브 STB(들)로 비디오 및/또는 오디오 컨텐츠를 스트리밍한다.
도 2 는 본 발명의 특정의 비제한적인 실시형태에 따라 디지털 비디오 및/또는 오디오 스트림들을 저장하기 위한 방법을 예시한다. 도 1 과 공통인 엘리먼트들은 그 도면에 대하여 이미 설명되어 있고 따라서 여기서는 이들의 설명을 반복하지 않는다. 도 1 에 비교하여, 도 2 는 그래프 (240), 및 "세그먼트들" S1 (200), S2 (201), S3 (202), 및 S4 (203) 와 같은 추가적인 엘리먼트들을 포함한다. 이들 세그먼트들은 저장 공간, 이를 테면, 디바이스 (500) 의 메모리 (516) 에 저장된 메모리 세그먼트들, 또는 파일 시스템에 저장되거나, 또는 설명된 메모리 (516) 에 저장되거나 또는 외부 디바이스 상에 저장된 파일들이다. 도 1 의 그래프 (140) 는 비교의 이유로 이 도면에 또한 플롯된다. 동일한 사용 시나리오가 도 1 에서와 같이 전개된다. 그러나, 그래프 (240) 에 따르면, 저장 공간 필 레벨 및 레이트는 종래 기술의 방법과는 상이하게 그리고 보다 유리하게 전개된다. 도 1 의 종래 기술의 방법에 대조적으로, 디지털 비디오 및/또는 오디오 스트림으로부터의 디지털 비디오 및/또는 오디오 데이터는 메모리 버퍼들/파일들 (100-102) 에 더 이상 저장되지 않고, 다만 디지털 비디오 및/또는 오디오 스트림의 비오버랩 부분들을 나타내는 세그먼트들 (200-203) 에 저장된다. 그래프 (240) 는 시간에 따라 모든 세그먼트들을 저장하기 위한 총 요구 저장 사이즈를 나타낸다.
동일한 디지털 비디오 및/또는 오디오 스트림의 복수의 오버랩 레코딩들을 저장하기 위한 방법은 이 비제한적인 예의 도움으로 이후 설명된다.
T=111 에서, 제 1 사용자가 디지털 비디오 및/또는 오디오 프로그램 "n" (104) 을 레코드하는 것을 시작할 때, 새로운 세그먼트 "S1" (200) 가 생성 또는 '오프닝'된다. 이해를 용이하게 하기 위하여, 디지털 비디오 및/또는 오디오 스트림으로부터의 데이터의 기록을 위해 오프닝되는 세그먼트는 이하 "현재" 세그먼트라 지칭되는데, 즉, 디지털 비디오 및/또는 오디오의 스트림으로부터의 데이터가 항상 하나의 세그먼트에, 즉, "현재" 세그먼트에 기록 (레코드) 된다. 사용자가 레코딩을 시작하는 것은 디지털 비디오 및/또는 오디오 스트림의 레코딩에 대한 요청인 트리거 이벤트의 일 예이다. 디지털 비디오 및/또는 오디오 프로그램 "n" 으로부터의 데이터가 현재 세그먼트 S1 에 기록 (레코드) 될 때, 저장 공간 필 레이트는 T=111 와 T=112 사이에서 일정하게, 즉, 본 예에 따르면 5 Mbit/s 로 된다. T=112 에서, 사용자는 "중지" 키를 누른다 (이는 시간 시프트 기능에 관련된 트리거 이벤트의 일 예이다). 이는 세그먼트 "S1" 가 스플릿되는 것을 초래하며, 즉, 새로운 세그먼트 "S2" (201) 가 생성되고 (오프닝되고), 이는 새로운 "현재" 세그먼트로서 지칭될 수 있다. 이전 "현재" 세그먼트는 클로징된다. 이때, 디지털 비디오 및/또는 오디오 프로그램 "n" 으로부터의 디지털 비디오 및/또는 오디오 데이터가 S2 에 기록 (레코드) 된다. 더이상의 데이터가 S1 에 기록 (레코드) 되지 않기 때문에, 총 저장 공간 필 레이트는 5 Mbit/s 에서 일정하게 유지된다. 사용자가 T=113 에서 "플레이" 키를 누를 때 (이는 시간 시프트 기능에 관련된 트리거 이벤트 또는 다시 말하면 시각화를 재개하라는 요청의 다른 예임), 새로운 세그먼트 "S3" (202) 가 생성되어 이것이 새로운 "현재" 세그먼트로 되고, 이전 세그먼트는 클로징된다. 저장 동안에, 디지털 비디오 및/또는 오디오 프로그램 "n" 으로부터의 디지털 비디오 및/또는 오디오 데이터는 현재 세그먼트 S3 에 기록 (레코드) 되고 총 저장 공간 필 레이트는 5 Mbit/s 로 유지된다. T=114 에서, 제 2 사용자는 동일한 디지털 비디오 및/또는 오디오 프로그램 "n"의 진행중인 방송을 레코드하기 위하여, 사용자의 원격 제어 상에서 "rec" 키를 누른다 (= 레코드에 대한 요청에 관련된 트리거 이벤트). 이는 현재 세그먼트 S3 의 스플릿을 초래하고, 이에 따라 새로운 현재 세그먼트 "S4" (203) 의 생성 및 이전 현재 세그먼트의 클로징을 초래한다. T=115 에서, 이때, 디지털 비디오 및/또는 오디오 프로그램 "n"의 송신이 종료하게 될 때까지, 디지털 비디오 및/또는 오디오 프로그램 "n" 으로부터의 디지털 비디오 및/또는 오디오 데이터는 현재 세그먼트 S4 에 기록 (레코드) 된다. 디지털 비디오 및/또는 오디오 스트림이 일련의 비디오 및/또는 오디오 프로그램들일 때, 프로그램 "n"의 송신의 종료는 디지털 비디오 및/또는 오디오 스트림에서의 프로그램 변화들을 나타내는 시그널화 이벤트로부터 생성되는 요청의 일 예이다. 이 트리거 이벤트의 수신은 세그먼트 (S4) 의 클로징을 초래한다. T=114 와 T=115 사이에서, 총 저장 공간 필 레이트는 5 Mbit/s 로 일정하게 유지된다. T=115 이후에, 저장 공간은 디지털 비디오 및/또는 오디오 스트림으로부터의 데이터로 더 이상 채워지지 않고 필 레벨이 일정하게 유지된다. T=116 에서, 시간 시프트는 종료하고, 예를 들어, 사용자가 프로그램 "n" 의 시간 시프트된 송신의 종료에 도달할 때 사용자는 "정지" 버튼을 누른다.
따라서, 위에 설명된 기능들 모두, 즉, 2 개의 레코드들 및 1 개의 시간 시프트가 본 발명에 제공될 수 있다. 제 1 레코드 및 제 2 레코드는 제 1 레코드에 대해 세그먼트들 S1 내지 S4, 및 제 2 레코드에 대해 세그먼트들 S3 및 S4 로부터 플레이될 수 있다. 시간 시프트는 세그먼트들 S2 로부터 S4 로 제공될 수 있다. 그래프들 (140 및 240) 의 비교로부터, 종래 기술 방법에서는 저장 공간 필 레이트가 변동이 있는 반면, 본 발명에 따른 방법에서의 저장 공간 필 레이트는 일정하다는 것을 알 수 있다. 본 발명에 기초하여 PVR (Personal Video Recorder) 기능성을 제공하는 게이트웨이 또는 셋톱 박스 디바이스와 같이 본 발명을 실시하는 디바이스의 하드웨어 컴포넌트들의 치수화를 위해서는, 설명된 스루풋 레이트가 디바이스가 지원할 수 있는 동시 레코딩들의 수에 의존하지 않기 때문에, 이것이 중요하게 된다. 또한, 총 저장 공간 필 레벨은 도 1 의 종래 기술의 솔루션에 따른 것보다 상당히 더 낮다는 것을 관찰할 수 있다. 상이한 모든 형태들에서의 메모리 (내장형 RAM, 메모리 카드/스틱, 하드 디스크 드라이브) 가 비교적 희소한 리소스이고, 현재의 경향은 레코딩들의 비디오 및 오디오 품질을 증가시킴으로서 고품질 비디오의 레코딩이 높은 양의 저장 공간을 요구하는 것으로 알려져 있다는 점에서 이것이 일정하게 유지된다는 것은 또한 중요하다.
상술한 비제한적인 예는 이해를 용이하게 하기 위해 의도적으로 간단하게 두었다. 이전 예에서, 디지털 비디오 및/또는 오디오 스트림은 CBR (Constant Bit Rate) 타입으로 되어 있는 것으로 하고 있지만, 본 발명은 CBR 타입 스트림들로 제한되지 않고 또한 VBR (Variable Bit Rate) 타입 스트림들에도 적용될 수 있다. 또한, 실제로, 시간 시프트 버퍼 관리는 예를 들어, 고속 되감기를 포함한, 풀 트릭 모드 지원과 같이 추가적인 특징들이 지원되는 경우에 언급되는 것보다 더욱 복잡할 수도 있다. 이러한 강화된 구현은 시간 시프트 버퍼의 영구적인 이용을 요구할 수도 있고, 이는 예를 들어, 사용자가 "중지" 버튼을 누르기 전에 수신하였던 컨텐츠로의 고속 되감기를 허용한다. 그 후, 세그먼트들에서의 스플릿은 이 예에서 묘사된 것보다 다소 복잡할 수도 있지만, 이는 본 발명의 원리들을 변경하지 않는다.
도 3 은 본 발명의 저장 방법의 비제한적인 예의 사용 시나리오를 예시한다. 여기에서, "레코드"는 동일한 디지털 비디오 및/또는 오디오 스트림 "A" 의 레코딩의 시작 날짜/종료 날짜에 대응하는 세그먼트들의 리스트이다. 레코드는 예를 들어, 시간 시프트 버퍼 또는 특정 디지털 비디오 및/또는 오디오 프로그램에 대응한다. 이 예에서, 3 개의 레코드들, "X", "Y" 및 "Z" (각각 300, 301 및 302 로 예시됨) 이 존재한다.
다음 시나리오에 따르면:
사용자 "x" 는 T0 에서, 디지털 비디오 및/또는 오디오 스트림 "A" 의 레코딩을 시작하고 T2 에서 레코딩을 정지한다. T0 에서의 “x” 의 시작 레코딩 액션은 화살표 303 으로 예시되며, "현재" 세그먼트 "a" (310) 의 생성을 초래한다. 디지털 비디오 및/또는 오디오 스트림 "A" 의 데이터는 세그먼트 "a" (310) 에 기록된다. T2 에서의 "x" 의 레코딩 정지 액션은 화살표 304 로 예시된다. T0 와 T2 사이에서, 사용자 "y" 는 T1 에서, 동일한 디지털 비디오 및/또는 오디오 스트림 "A" 의 레코딩을 시작한다 (화살표 305 로 예시됨). 이는 T1 에서, T0 에서 생성되었던 세그먼트의 스플릿, 즉, 세그먼트 "a" (310) 및 새로운 "현재" 세그먼트 "b" (311) 를 초래한다. 따라서, 이때 세그먼트 "a" (310) 는 2 개의 세그먼트들 "a" (310) 및 "b" (311) 로 스플릿된다. 이때, 디지털 비디오 및/또는 오디오 스트림 "A" 로부터의 데이터는 현재 세그먼트, 즉, 세그먼트 "b" (311) 로 기록되는 것을 계속한다. T2 에서, 사용자 "x" 는 레코딩을 정지한다 (화살표 304 로 예시됨). 이는 새로운 현재 세그먼트 "c" (312) 의 생성을 초래한다. 이때, 디지털 비디오 및/또는 오디오 스트림 "A" 로부터의 데이터는 세그먼트 "c" (312) 에 기록된다. T3에서, 사용자 "z" 는 레코딩 액션을 시작한다 (화살표 309). 이는 T3 에서 새로운 세그먼트 "d" (313) 의 생성을 초래한다. 이때, 디지털 비디오 및/또는 오디오 스트림 "A" 로부터의 데이터는 세그먼트 "d" (313) 에 기록된다. T4 에서, 사용자 "z" 는 레코딩을 정지한다 (화살표 309). 이는 T4 에서 새로운 현재 세그먼트 "e" (" (4) 의 생성을 초래한다. T5 에서, 사용자 "y" 는 레코딩을 정지한다 (화살표 308). 화살표들 306 및 307 은 세그먼트들 "c" 및 "d" 가 (세그먼트들 "b" 및 "e" 에 더하여) 레코드 Y (301) 에 속함을 표시한다.
이때, 3 개의 레코딩들: i) 세그먼트들 "a" (310) 및 "b" (311) 를 포함한 레코드 "X" (300); ii) 세그먼트들 "b" (311), "c" (312), "d" (313) 및 "e" (314) 를 포함한 레코드 "Y" (301); iii) 세그먼트 "d" (313) 를 포함한 레코드 "Z" (302) 가 존재한다. 이 레코딩 시퀀스 동안에, 오직 하나의 프론트 엔드 및 오직 하나의 디멀티플렉서, 튜너 및/또는 디스크램블러가 사용되었다. 임의의 순간에 디지털 비디오 및/또는 오디오 스트림 "A" 가 저장 공간에 오직 한번만 기록되기 때문에, 저장에 요구되는 저장 공간이 최적화된다.
본 발명의 특정 구현에 따르면, 예를 들어, 디바이스 또는 애플리케이션에서, 사용자는 레코드의, 세그먼트들로의 분할을 인지하지 못하게 유지되고 사용자들 간의 세그먼트들의 공유도 인지하지 못한다. 그 후, 관리 방법은 세그먼트들을 유지 또는 삭제하는 것을 담당한다. 사용자들 사이에서, 보호가 추가될 수도 있어, 사용자 "x" 가 자신의 레코드 "X" 를 플레이백하기를 원할 때, 이 사용자는 세그먼트들 "a" (310) 및 "b" (311) 에는 액세스할 것이지만, 다른 사용자들에 의한 레코딩 (c, d, e; 각각 312, 313, 314) 의 시작 날짜 전 및 시작 날짜 후에 레코드되었던 다른 어떠한 세그먼트들에도 액세스하지 않을 것이다. 실제로, 사용자들 사이에서 저장된 디지털 비디오 및/또는 오디오 데이터의 보호는 식별 정보, 이를 테면, 사용자 ID 에 기초한 세그먼트들에 대한 액세스만으로 세그먼트들에 액세스하는 프로세스들을 제공함으로써 구현될 수 있다. 레코딩이 동작되었던 셋톱 박스와 같이, 특정 하드웨어만이 판독할 수 있는 것을 보장하도록 세그먼트들의 암호화에 의해 추가적인 보안성이 추가될 수 있다. 세그먼트들의 관리를 쉽게 하기 위해, 세그먼트 리스트들이 생성될 수 있다. 예를 들어, 도 3 의 시나리오에 따르면, 제 1 사용자 "x" 는 시간 슬롯 T0 로부터 T2 로의 A 의 저장에 대응하여, 세그먼트들 a (310) 및 b (311) 를 포함하는 제 1 세그먼트 리스트를 갖는다. 제 2 사용자 "y" 는 시간 슬롯 T1 로부터 T5 로의 A 의 저장에 대응하여, 세그먼트들 b (311) 내지 e (314) 를 포함하는 세그먼트 리스트를 갖는다. 제 3 사용자 "z" 는 시간 슬롯 T4 로부터 T5 로의 A 의 저장에 대응하여, 세그먼트 e (314) 를 포함하는 세그먼트 리스트를 갖는다.
본 발명의 방법의 변형된 실시형태에 따르면, 본 방법은 세그먼트 당, 디지털 비디오 및/또는 오디오 스트림에 관련된 시간 스탬프들의 저장을 포함한다. 예를 들어, 세그먼트가 스플릿되는 것 (즉, 새로운 세그먼트가 생성되는 것) 을 초래하는 트리거 이벤트가 수신될 때마다, 디지털 비디오 및/또는 오디오 스트림에 관련된 시간 스탬프 정보가 새로운 세그먼트에 대해 저장된다. 이 특징은 저장 공간에서의 저장 세그먼트들의 관리에 유리하다.
다음 표 1 은 도 2 의 설명된 시나리오에 기초하며, 어느 세그먼트가 속하는지에 대한 레코드(들) 에 관련된 추가의 정보가 저장된 리스트 (표의 형태로 저장됨) 의 일 예를 나타낸다.
Figure pct00001
표 1 : 리스트 ("세그먼트 리스트") 에서의 시간 스탬프 정보의 저장
시간 스탬프들은 디바이스 (500) 에서의 클록 유닛 (511) 과 같은 클록 유닛으로부터 취출될 수 있거나 또는 외부 클록으로부터 획득될 수 있거나, 또는 레코드된 비디오 및/또는 오디오 스트림에 존재하는 시간 스탬프들, 이를 테면, RTP 스트림에 존재하는 NPT (Network Time Protocol) 시간 스탬프들, 또는 MPEG 2 전송 스트림에서의 PCR/PTS (Program Clock Reference / Presentation Time Stamp) 으로부터 획득될 수 있다. 대안으로서 그리고 시간 스탬프들을 이용하는 대신에, 저장된 디지털 비디오 및/또는 오디오 스트림의 상이한 부분들에 저장 세그먼트들을 관련시킨 리스트에, 포인터들 또는 인덱스들이 저장될 수도 있다. 그 후, 포인터들 또는 인덱스들은 세그먼트들의 한계들 (limits) 을 표시한다, 예를 들어, 포인터들은 메모리 어드레스 또는 파일을 지시한다.
추가의 강화예로서, 사용자들에 레코드들 및 세그먼트들을 관련시키기 위해, 본 방법은 수신된 트리거 이벤트 또는 요청의 기점에서 세그먼트 당, 사용자에 세그먼트를 관련시킨 정보의 저장을 포함하며, 이는 사용자별 기반으로 저장 공간을 관리하는데 유리하다.
대안으로서, 세그먼트들 자체는 세그먼트들이 시간 슬롯에 그리고 선택적으로 사용자들에 관련되도록 허용하는 모든 정보를 예를 들어, 헤더 또는 디스크립터의 형태로 포함한다.
도 4 는 도 3 의 것과 연속의 것으로서, 레코드가 삭제되는 사용 시나리오를 예시한다.
이때, 사용자 "y" 가 레코드 "Y"를 기록하면, 도 4 에 예시된 바와 같은 상황이 구해지며, 여기에서, 레코드 "Y" 가 삭제되어 세그먼트들 "c" (312) 및 "e" (314) 의 삭제를 초래한다.
도 5 는 특정의 비제한적인 실시형태에 따른 디지털 비디오 및/또는 오디오 스트림의 복수의 오버랩하는 레코딩들의 저장을 위한 디바이스의 블록도이다.
디바이스는 CPU 또는 중앙 처리 유닛 또는 프로세서 (510), 클록 유닛 (511), 네트워크 인터페이스 (512), I/O 인터페이스 (513), 비휘발성 메모리 (515), 및 휘발성 메모리 (516) 를 포함한다. 이들 모든 세그먼트들은 데이터 또는 통신 버스 (514) 에 의해 상호접속된다. 디바이스는 접속 (1000) 을 통하여 통신 네트워크에 그리고, 접속 (1001) 을 통하여 외부 입력/출력 디바이스들 (예를 들어, 키보드, 스크린, 외부 데이터 저장 장치, 위성 또는 케이블 RF 입력 (RF = 무선 주파수 (Radio Frequency))) 에 접속될 수 있다. CPU (510) 는 본 발명의 청구된 방법을 구현하는 명령들과 같은 컴퓨터 판독가능 명령들을 실행가능하다. 비휘발성 메모리 (515) 는 메모리 존 (5151) 에 컴퓨터 판독가능 명령들의 카피본을 저장한다. 비휘발성 메모리 (515) 는 또한 메모리 존 (5152) 에 영구 데이터, 이를 테면, 메모리가 전력의 정전으로부터 재시작할 때 디바이스를 기지된 상태로 두는데 이용되도록 영구적인 방식으로 저장하는데 필요한 변수들 및 파라미터들을 저장한다. 휘발성 메모리 (516) 는 디바이스의 기동시, 명령들이 메모리 존 (5161) 에 카피되는 비휘발성 메모리 (515) 의 메모리 존 (5151) 에 저장된 컴퓨터 판독가능 명령들의 카피본을 포함하는 메모리 존 (5161) 을 포함한다. 휘발성 메모리 (516) 는 예를 들어, 메모리 존 (5161) 에 저장된 컴퓨터 판독가능 명령들의 실행 동안에 이용되는 변수들에 대해 그리고 세그먼트들 또는 세그먼트들의 리스트들의 저장을 위하여 일시적, 비영구적 데이터 저장 장치에 이용되는 메모리 존 (5162) 을 더 포함한다. 대안으로서, 세그먼트들/세그먼트 리스트들은 I/O (513) 에 접속되는 외부 메모리 디바이스에 저장되거나 또는 네트워크 인터페이스 (512) 에 접속된 네트워크 디바이스 상에 저장된다. 네트워크 인터페이스 (512) 및 접속 (1000) 또는 대안으로서 I/O 인터페이스 (513) 및 접속 (1001) 은 디지털 비디오 및/또는 오디오 스트림을 수신하기 위하여 이용된다. 클록 유닛 (511) 은 동기화 및 타이밍을 위하여 상이한 엘리먼트들 (510 및 512 내지 516) 에 의해 이용되는 클록 신호를 제공한다.
디바이스 (500) 는 예를 들어, 네트워크 인터페이스 (512) 또는 I/O 인터페이스 (513) 를 통하여 수신되는 디지털 비디오 및/또는 오디오 스트림의 저장을 위한 디바이스의 비제한적인 예이며, 저장 공간에 디지털 비디오 및/또는 오디오 스트림의 비오버랩 부분들의 저장을 위한 VM RAM (516) 와 같은 저장 수단, 및 트리거 이벤트들의 수신에 따라 저장 공간을 저장 세그먼트들로 스플릿하기 위한 수단 (예를 들어, CPU (510)) 을 포함한다.
도 6 은 비제한적인 실시형태에 따른 디지털 비디오 및/또는 오디오 스트림의 복수의 오버랩하는 레코딩들의 저장을 위한 방법의 논리도이다.
제 1 단계 600 에서, 방법에 이용되는 변수들 및 파라미터들이 초기화된다. 단계 601 에서, 디지털 비디오 및/또는 오디오 스트림 (예를 들어, 104) 의 레코딩을 위한 제 1 요청 (예를 들어, 111) 이 수신된다. 이는 현재 세그먼트로 지칭되는 세그먼트 (200) 의 오프닝, 및 현재 세그먼트에서의 디지털 비디오 및/또는 오디오 스트림의 레코딩을 초래한다. 단계 602 에서, 디지털 비디오 및/또는 오디오 스트림의 레코딩을 위한 제 2 요청 (예를 들어, 112, 114) 이 수신된다. 제 2 요청의 수신은 현재 세그먼트 (200, 202) 의 클로징, 및 새로운 현재 세그먼트 (201; 203) 의 오프닝, 그리고 현재 세그먼트에서의 디지털 비디오 및/또는 오디오 스트림의 레코딩을 계속하는 것을 초래한다. 단계 603 에서, 디지털 비디오 및/또는 오디오 스트림의 레코딩을 위한 제 3 요청 (예를 들어, 115) 이 수신된다. 이는 현재 세그먼트의 클로징, 및 적어도 하나의 레코딩이 진행중이면 새로운 현재 세그먼트의 오프닝, 그리고 현재 세그먼트에서의 디지털 비디오 및/또는 오디오 스트림의 레코딩을 계속하는 것을 초래한다. 방법은 단계 604 에서 종료한다.
본 발명은 저장 공간, 프론트 엔드 디멀티플렉서, 튜너, 및 디스크램블러와 같은 리소스들의 효율적인 관리를 허용한다. 세그먼트들의 사용 및 이들의 트리거 이벤트 구동 스플릿을 통하여, 본 발명은 레코드 편집 및 레코드 삭제를 향상시킨다. 세그먼트들은 세그먼트가 더 이상 필요없다면 삭제 (또는 재사용) 될 수 있는 확률을 증가시키는 비교적 작은 유닛들로 저장 공간을 분할하는 한편, 세그먼트들의 트리거 이벤트 구동 스플릿은 세그먼트 한계들이 트리거 이벤트들에 의해 결정될 때 삭제 (또는 재사용) 될 수 있는 확률을 추가로 증가시킨다. 이는 사용자 생성 이벤트들 (예를 들어, 레코딩 시작, 정지 (사전 프로그래밍된 레코딩 시작/정지를 포함), 시간 시프트) 에 대하여 참이지만, 또한 시그널화 생성 이벤트들 (예를 들어, 비디오 및/또는 오디오 프로그램의 시작/종료) 및 시간 기준 트리거 이벤트들 (예를 들어, 저장이 진행중일 때의 주기적 생성 이벤트들)에 대해서도 참이다. 후자는 특히 이들이 시간 시프트를 위한 버퍼를 저장하는데 이용될 때 세그먼트들의 사이즈를 감소시키는데 특히 유용하다. 시간 시프트 버퍼들은 이들이 유지 기간 (예를 들어, 레코딩의 1 시간) 에 있어 제한을 받거나 또는 사이즈 (예를 들어, 2 Gbyte) 에 있어 제한을 받는다는 특성을 가지며, 이 한계에 도달할 때, 버퍼는 절삭되어야 한다 (즉, 더 이상의 데이터가 추가될 수 없기 때문에, 메모리를 프리 상태로 하여 시간 시프트를 위한 데이터를 저장하는 것을 계속하도록 버퍼의 일부분을 삭제해야 한다). 그후, 시간 시프트 버퍼의 관리에 관련된 용어, '시간 시프트 절삭 (time shift truncation)'이 이용된다. 본 발명에서, 데이터가 세그먼트들에 저장될 때, 세그먼트들은 최대 시간 시프트 버퍼 유지 기간 또는 사이즈에 비해 작게 유지되고, 전체 시간 시프트 버퍼를 프리 상태로 할 필요 없이 세그먼트들은 프리 상태로 될 수 있다. 세그먼트가 더 이상 이용되지 않는다면 세그먼트가 프리 상태로 될 수 있는 확률을 추가로 증가시킴으로써 추가적인 시간 기반 트리거 이벤트들이 보다 미세한 시간 시프트 절삭을 위해 유리할 수 있다.
앞에서, "트리거 이벤트들" 은 사용자 개시 액션들 (예를 들어, 원격 제어의 "rec", "중지", "플레이" 키를 누르는 것) 또는 방송 신호에서의 변경에 의해 개시되는 액션들 (예를 들어, 디지털 비디오 및/또는 오디오 프로그램 송신의 시작 및 종료) 인 것으로서 설명되었다. 그러나, 트리거 이벤트들은 또한, 시그널화 정보, 이를 테면 예를 들어, 일련의 비디오 및/또는 오디오 프로그램들이고, 예를 들어, DVB-SI (Digital Video Broadcasting-Service Information) 를 포함하거나 또는 예를 들어, ATSC-SI (Advanced Television Systems Committee-Service Information) 를 포함하는 디지털 비디오 및/또는 오디오 스트림에 이용가능한 것과 같은 EPG (Electronic Program Guide) "현재" 및 "후속" 시그널화 이벤트들에 기초할 수 있고, 이 서비스 정보는 디지털 비디오 및/또는 오디오 스트림에서의 비디오 및/또는 오디오 프로그램들의 유지 기간에 대한 정보를 포함하고, 시그널화는 상업적 광고 또는 일반 광고들의 시작 및 종료에 관련된다. 이는 예를 들어, 사용자가 (원격 제어의 레코드 버튼을 누름으로써 수동으로 또는 사전 프로그래밍된 레코딩을 통하여 자동으로) 디지털 비디오 및/또는 오디오 스트림을 저장하는 경우에 특히 유용하다. 시그널화 정보 또는 그 외의 것으로부터 유래하는 트리거 이벤트들은 세그먼트들에 있어서 요구 저장 공간을 스플릿하는 것을 초래하며, 이는 저장 공간을 얻기 위해 일부 세그먼트들 (예를 들어, 광고들을 포함하하는 세그먼트들) 을 삭제하도록 레코딩의 소유자에게 제안될 수 있다.
대안으로서, 그리고 비배타적으로 트리거 이벤트들은 또한 시간 기반일 수 있다. 세그먼트 스플릿을 야기하는 트리거 이벤트의 주기적 시간 기반 생성 및 수신은 예를 들어, 레코딩의 후속 "펴집"을 허용하여, 예를 들어 저장 리소스들의 최적화되고 미세 세분화된 사용을 위하여 삭제 및 삽입 세그먼트들을 용이하게 하는데 유용하다.
앞에서, 용어 "저장"이 이용된다. 본 발명의 문맥에서, 저장의 비제한적인 예들은 예를 들어, 스트림 아웃을 위한, 즉, 메모리 또는 디스크와 같은 내부 또는 외부 저장 리소스 상에 디지털 비디오 및/또는 오디오 스트림을 저장할 것을 요구하는 임의의 이유를 위한 레코딩, 타임 시프트이다 (예를 들어, 마스터 세트업 박스는 시간 시프트 버퍼 자체가 없는 슬레이브 셋톱박스에 대한 시간 시프트 기능을 구현한다).
앞에서, 용어 "세그먼트"가 이용되며, 이는 도 5 의 디바이스 (500) 의 휘발성 메모리 (516) 또는 (예를 들어, 메모리 또는 디스크에 저장된) 파일과 같은 메모리 내의 메모리의 부분을 의미한다. 세그먼트가 파일로서 구현될 때, 세그먼트들의 스플릿은 새로운 파일의 생성 (예를 들어, Linux "create-file"), 및 만약 있다면, 이전 (예를 들어, "fclose") 세그먼트의 클로징으로서 구현될 수 있고 오프닝 (예를 들어, "fopen") 및 클로징 (이전 파일의 파일 클로즈) 과 같은 추가적인 액션들을 포함할 수도 있다. 이와 유사하게, 그후, (예를 들어, 원격 제어의 "정지" 버튼을 누름으로써 야기되는 트리거 이벤트로 인한) 저장의 정지는 새로운 파일을 오프닝함이 없이, "현재" 파일의 클로징 ("fclose") 을 요구할 수도 있다. 세그먼트들이 메모리 세그먼트들로서 구현될 때, 세그먼트들의 클로징 및 오프닝은 예를 들어, 메모리 세그먼트들을 저장하는 메모리에서 직접, 또는 마스터 레코드에서 세그먼트 종료 및 시작을 표시하는 인덱스들의 배치에 의해 나타내어진다.
본 발명은 많은 종류의 디바이스들에서, 이를 테면, 홈 게이트웨이, 셋톱 박스, HDTV, 스마트폰, 그리고 많은 종류의 환경들, 이를 테면, 단일의 디바이스에서; 하나의 서버 ("마스터") 가 로컬 (예를 들어, 홈) 네트워크에서의 다수의 (N개의) 클라이언트들 (또는 "슬라이브") 디바이스들을 서브하는 구성에서 유리하게 적용될 수 있다. 이러한 구성에서, 마스터는 본 발명에 따른 저장 방법을 구현하고, 슬래이브 디바이스들은 단지 비디오 및/또는 오디오를 렌더링하고 트리거 이벤트들을 생성하거나 또는 클라우드 네트워크에서 하나의 서버와 N 개의 클라이언트들이 이를 구현한다.
앞에서, 용어 "디지털 비디오 및/또는 오디오"가 이용되며, 이는 디지털 비디오 스트림 단독, 오디오와 디지털 비디오 스트림, 또는 오디오 스트림 단독을 의미한다. 그러나 본 발명은 디지털 비디오 및 오디오만을 포함하는 스트림들로 제한되지 않고; 디지털 비디오 및/또는 오디오와 함께 저장될 수도 있는 추가적인 데이터는 예를 들어, 서브타이틀, 시그널화 테이블들 및 애플리케이션들이다.
디지털 비디오 및/또는 오디오 스트림의 소스는 방송 (지상파, 케이블, 위성), 브로드밴드 (IP/UDP, HTTP, HTTP 스무스 스트리밍, HLS (HTTP Live Streaming) 또는 디지털 및/또는 오디오 스트림들을 전달하는 임의의 다른 전송 수단일 수 있다.
본 발명의 구현은 도시된 실시형태들로 제한되지 않는다. 본 명세서를 읽는 사람은 도 5 가 본 발명의 비제한적인 예시의 실시형태임을 이해할 것이다. 특히, 본 발명을 구현하는 디바이스는 다수의 기능들을 구현하는 예를 들어 보다 적은 엘리먼트들, 또는 보다 많은 기능들을 구현하는 보다 많은 엘리먼트들과 같이 묘사된 것보다 더 많거나 적은 엘리먼트들을 포함할 수 있다.
이와 유사하게, 본 명세서를 읽는 사람은 본 발명 또는 방법의 구현이 도 6 에 묘사된 구현으로 제한되지 않고 방법들의 단계들이 예를 들어, 프로세싱 시간을 얻기 위하여 상이한 순서로, 또는 병행하여 실행될 수 있음을 이해할 것이다.
설명된 변경예들은 특히 본 발명의 유리한 변경된 실시형태를 제공하기 위해 이들 사이에서 분리되거나 또는 결합되어 이용될 수 있다.
설명된 실시형태들의 일부가 하드웨어 엘리먼트들의 이용을 설명하고 있지만, 하드웨어에 의해 구현되는 것으로서 설명된 일부 기능들은 그 대신에 소프트웨어로 구현되어 본 발명을 구현하는 디바이스의 제조 비용들을 감소시킬 수도 있다.
대안으로서, 본 발명은 하드웨어 및 소프트웨어 컴포넌트들의 믹스를 이용하여 구현되며, 여기에서 전용 하드웨어 컴포넌트들이 소프트웨어에서 대안으로 실행되는 기능들을 제공한다. 특정 실시형태에 따르면, 본 발명은 전체적으로, 하드웨어에서, 예를들어, 전용 컴포넌트로서 (예를 들어, ASIC, FPGA 또는 VLSI (각각 ≪Application Specific Integrated Circuit (ASIC)≫, ≪Field-Programmable Gate Array (FPGA)≫, 및 ≪Very Large Scale Integration (VLSI)≫) 로서), 또는 하드웨어와 소프트웨어의 믹스의 형태로 또는 하나의 디바이스에 집적화된 별개의 전자 컴포넌트들로서 구현된다.

Claims (7)

  1. 동일한 디지털 비디오 및/또는 오디오 스트림의 복수의 오버랩 레코딩들을 저장하는 방법으로서,
    상기 방법은 상기 동일한 디지털 비디오 및/또는 오디오 스트림의 상기 복수의 오버랩 레코딩들을 단일의 세그먼트된 레코딩으로서 저장하고, 상기 단일의 세그먼트된 레코딩의 각각의 세그먼트는 상기 디지털 비디오 및/또는 오디오 스트림의 비오버랩 부분을 포함하며,
    상기 방법은,
    상기 디지털 비디오 및/또는 오디오 스트림 (104) 의 레코딩을 위한 제 1 요청 (601, 111) 을 수신하고, 현재 세그먼트로 지칭되는 세그먼트 (200) 를 오프닝하고, 그리고 상기 현재 세그먼트에서의 상기 디지털 비디오 및/또는 오디오 스트림을 레코딩하는 단계;
    상기 디지털 비디오 및/또는 오디오 스트림을 레코딩하기 위한 제 2 요청 (602, 112, 114) 을 수신하고, 상기 현재 세그먼트 (200, 202) 를 클로징하고 새로운 현재 세그먼트 (201; 203) 를 오프닝하며, 그리고 상기 현재 세그먼트에서의 상기 디지털 비디오 및/또는 오디오 스트림의 레코딩을 계속하는 단계; 및
    상기 디지털 비디오 및/또는 오디오 스트림의 상기 레코딩을 정지하기 위한 제 3 요청 (603, 115) 을 수신하고, 상기 현재 세그먼트를 클로징하고, 적어도 하나의 레코딩이 진행중이라면 새로운 현재 세그먼트를 오프닝하며, 그리고 상기 현재 세그먼트에서의 상기 디지털 비디오 및/또는 오디오 스트림의 레코딩을 계속하는 단계를 포함하는 것을 특징으로 하는 복수의 오버랩 레코딩들을 저장하는 방법.
  2. 제 1 항에 있어서,
    세그먼트는 파일이며, 상기 클로징은 파일 클로즈 동작인, 복수의 오버랩 레코딩들을 저장하는 방법.
  3. 제 1 항에 있어서,
    세그먼트는 메모리 세그먼트이며, 상기 클로징은 인덱스의 배치인, 복수의 오버랩 레코딩들을 저장하는 방법.
  4. 제 1 항 내지 제 3 항 중 어느 한 항에 있어서,
    상기 방법은 세그먼트당, 상기 디지털 비디오 및/또는 오디오 스트림에 관련된 시간 스탬프의 저장을 포함하는, 복수의 오버랩 레코딩들을 저장하는 방법.
  5. 제 1 항 내지 제 4 항 중 어느 한 항에 있어서,
    상기 방법은 세그먼트당, 요청의 기점에서 사용자에 세그먼트를 관련시킨 정보의 저장을 포함하는, 복수의 오버랩 레코딩들을 저장하는 방법.
  6. 제 1 항 내지 제 5 항 중 어느 한 항에 있어서,
    레코딩의 상기 요청은 상기 디지털 비디오 및/또는 오디오 스트림의 시각화를 시간 시프트하기 위한 요청이고, 상기 레코딩의 정지를 위한 상기 요청은 상기 시각화를 재개하기 위한 요청인, 복수의 오버랩 레코딩들을 저장하는 방법.
  7. 동일한 디지털 비디오 및/또는 오디오 스트림의 복수의 오버랩 레코딩들을 저장하는 디바이스로서,
    상기 디바이스는 상기 동일한 디지털 비디오 및/또는 오디오 스트림의 상기 복수의 오버랩 레코딩들을 단일의 세그먼트된 레코딩으로서 저장하기 위한 저장 장치를 포함하고, 상기 단일의 세그먼트된 레코딩의 각각의 세그먼트는 상기 디지털 비디오 및/또는 오디오 스트림의 비오버랩 부분을 포함하며,
    상기 디바이스는,
    상기 디지털 비디오 및/또는 오디오 스트림의 레코딩을 위한 제 1 요청을 수신하기 위한 인터페이스 (512, 513), 현재 세그먼트로 지칭되는 세그먼트를 오프닝하기 위한 중앙 프로세싱 유닛 (510), 및 상기 현재 세그먼트에서의 상기 디지털 비디오 및/또는 오디오 스트림의 레코딩을 위한 메모리 (516);
    상기 디지털 비디오 및/또는 상기 오디오 스트림을 레코딩하기 위한 제 2 요청을 수신하기 위한 네트워크 인터페이스 (512, 513), 상기 현재 세그먼트의 클로징을 위한 그리고 새로운 현재 세그먼트의 오프닝을 위한 중앙 프로세싱 유닛 (510), 및 상기 현재 세그먼트에서의 디지털 비디오 및/또는 오디오 스트림의 레코딩을 계속하기 위한 메모리 (516); 및
    상기 디지털 비디오 및/또는 오디오 스트림의 상기 레코딩을 정지하기 위한 제 3 요청을 수신하기 위한 네트워크 인터페이스 (512, 513), 상기 현재 세그먼트의 클로징을 위한 그리고 새로운 현재 세그먼트의 오프닝을 위한 중앙 프로세싱 유닛 (516), 및 적어도 하나의 레코딩이 진행중이라면, 상기 현재 세그먼트에서의 상기 디지털 비디오 및/또는 오디오 스트림의 레코딩을 계속하기 위한 메모리 (516) 를 포함하는 것을 특징으로 하는 복수의 오버랩 레코딩들을 저장하는 디바이스.
KR1020157015607A 2012-12-12 2013-12-03 동일한 디지털 비디오 및/또는 오디오 스트림의 복수의 오버랩하는 레코딩들을 저장하는 디바이스 및 방법 KR20150093704A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP12306571.6A EP2743927A1 (en) 2012-12-12 2012-12-12 Device and method for storing a digital video and/or audio stream
EP12306571.6 2012-12-12
PCT/EP2013/075419 WO2014090639A1 (en) 2012-12-12 2013-12-03 Device and method for storing a plurality of overlapping recordings of a same digital video and/or audio stream

Publications (1)

Publication Number Publication Date
KR20150093704A true KR20150093704A (ko) 2015-08-18

Family

ID=47738963

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157015607A KR20150093704A (ko) 2012-12-12 2013-12-03 동일한 디지털 비디오 및/또는 오디오 스트림의 복수의 오버랩하는 레코딩들을 저장하는 디바이스 및 방법

Country Status (7)

Country Link
US (1) US9924219B2 (ko)
EP (2) EP2743927A1 (ko)
JP (1) JP2016504852A (ko)
KR (1) KR20150093704A (ko)
CN (1) CN104854659A (ko)
TW (1) TW201435864A (ko)
WO (1) WO2014090639A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102090308B1 (ko) 2019-10-16 2020-03-17 주식회사 스마트시티코리아 Gop 단위 기반의 영상 저장 시스템 및 방법

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3298797A4 (en) * 2015-05-22 2019-01-30 Playsight Interactive Ltd. EVENT-BASED VIDEO PRODUCTION
EP3343928A1 (en) * 2016-12-29 2018-07-04 Thomson Licensing Method for storing audio/video data and corresponding device

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7257308B2 (en) 2001-12-06 2007-08-14 Scientific-Atlanta, Inc. Converting time-shift buffering for personal video recording into permanent recordings
US20090222875A1 (en) * 2002-04-18 2009-09-03 Cheng David J Distributed tuner allocation and conflict resolution
JP2005167782A (ja) 2003-12-04 2005-06-23 Hitachi Ltd デジタル放送の記録方法及びデジタル放送受信装置
US8516014B2 (en) * 2004-07-08 2013-08-20 International Business Machines Corporation Segmented processing of data recordings
US20070081789A1 (en) * 2005-10-06 2007-04-12 Lockheed Martin Corporation Time shifting for video
US20070157281A1 (en) * 2005-12-23 2007-07-05 United Video Properties, Inc. Interactive media guidance system having multiple devices
US20070263980A1 (en) 2006-05-09 2007-11-15 Jaan-Huei Chen Method of transitioning from time shifted multimedia playback to live multimedia playback and multimedia playback device thereof
US9031381B2 (en) * 2006-07-20 2015-05-12 Panopto, Inc. Systems and methods for generation of composite video from multiple asynchronously recorded input streams
US8286069B2 (en) * 2007-01-26 2012-10-09 Myspace Llc System and method for editing web-based video
US7996875B2 (en) 2008-05-20 2011-08-09 Microsoft Corporation Adaptive timeshift service
US9154721B2 (en) 2009-03-26 2015-10-06 Dish Network L.L.C. Apparatus and methods for recording adjacent time slots of television programming on the same channel
US9282373B2 (en) 2009-06-19 2016-03-08 Broadcom Corporation System, method, and apparatus for managing timeshift and permanent recording in a storage device on a video broadcast receiver
US8588589B2 (en) 2010-06-21 2013-11-19 Verizon Patent And Licensing Inc. Systems and methods for automatically converting media content stream data accumulated during a pause of playback from a buffer to a permanent recording

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102090308B1 (ko) 2019-10-16 2020-03-17 주식회사 스마트시티코리아 Gop 단위 기반의 영상 저장 시스템 및 방법

Also Published As

Publication number Publication date
US9924219B2 (en) 2018-03-20
US20150312621A1 (en) 2015-10-29
CN104854659A (zh) 2015-08-19
WO2014090639A1 (en) 2014-06-19
JP2016504852A (ja) 2016-02-12
EP2932504A1 (en) 2015-10-21
EP2932504B1 (en) 2019-05-08
TW201435864A (zh) 2014-09-16
EP2743927A1 (en) 2014-06-18

Similar Documents

Publication Publication Date Title
US10097873B2 (en) Providing remote access to segments of a transmitted program
US9986198B2 (en) Receiving device, receiving method, transmitting device, and transmitting method
US9118950B2 (en) Broadcast receiving apparatus, playback apparatus, broadcast communication system, broadcast receiving method, playback method, and program
CN102047679B (zh) 记录和播放内容的设备、管理内容位置信息的服务器、信息记录介质、用于管理内容信息的方法
US8594481B2 (en) Managing synchronization of media programs to portable devices
US20080028074A1 (en) Supplemental Content Triggers having Temporal Conditions
TW200822736A (en) Method and apparatus for receiving, storing, and presenting multimedia programming without indexing prior to storage
US8677406B2 (en) Time-shift recording buffer as home network objects
US9756378B2 (en) Single file PVR per service ID
US20210377606A1 (en) Apparatus, system, and method for abr segment pull dvr
EP2932504B1 (en) Device and method for storing a plurality of overlapping recordings of a same digital video and/or audio stream
CN104170373A (zh) 创建和管理子记录
US20200280760A1 (en) Capturing border metadata while recording content
US20170180786A1 (en) Apparatus, systems and methods for deleting recording timers of a media device
US20170094370A1 (en) Digital video recorder and a method for dynamic management of advertising content on a digital video recorder
JP4914235B2 (ja) 映像記録再生装置及びその制御方法
WO2016068873A1 (en) Media content download time
KR20150008797A (ko) 방송 콘텐츠 제공 방법 및 장치
US9392209B1 (en) Systems and methods for recording television programs
JP2013021430A (ja) サムネイル画像提供装置、方法、およびシステム
US8290335B2 (en) Method and apparatus for recording transport stream
KR20140134097A (ko) 클라우드 환경에서 녹화 서비스 제공 방법 및 장치
KR20100105701A (ko) 비디오 데이터 패킷 수신 장치 및 방법
KR20070013778A (ko) 녹화 타이틀의 예약 삭제 방법

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination