KR20080011210A - 비디오 파일의 운영 체제 셸 관리 - Google Patents

비디오 파일의 운영 체제 셸 관리 Download PDF

Info

Publication number
KR20080011210A
KR20080011210A KR1020077027127A KR20077027127A KR20080011210A KR 20080011210 A KR20080011210 A KR 20080011210A KR 1020077027127 A KR1020077027127 A KR 1020077027127A KR 20077027127 A KR20077027127 A KR 20077027127A KR 20080011210 A KR20080011210 A KR 20080011210A
Authority
KR
South Korea
Prior art keywords
video
computer
entity
entry
file
Prior art date
Application number
KR1020077027127A
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 KR20080011210A publication Critical patent/KR20080011210A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/40Data acquisition and logging
    • 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/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • G11B27/034Electronic editing of digitised analogue information signals, e.g. audio or video signals on discs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/78Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/7867Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using information manually generated, e.g. tags, keywords, comments, title and artist information, manually generated time, location and usage information, user ratings
    • 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/32Indexing; 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 separate auxiliary tracks of the same or an auxiliary record carrier
    • G11B27/327Table of contents
    • G11B27/329Table of contents on a disc [VTOC]

Abstract

디지털 비디오 파일들을 컴퓨터 상에서 관리한다. 미디어 파일 시스템 개체는 관리될 비디오 파일로부터 규정된 비디오 클립을 나타내는 메타데이터를 저장한다. 컴퓨터의 운영 체제와 연관된 셸 인터페이스는 개체를 노출하여 운영 체제를 통해 비디오 클립의 관리를 직접 할 수 있게 한다.
디지털 비디오 파일, 셸, 비디오 클립, 메타데이터

Description

비디오 파일의 운영 체제 셸 관리{OPERATING SYSTEM SHELL MANAGEMENT OF VIDEO FILES}
비디오 카메라 및 퍼스널 컴퓨터의 인기가 증가함에 따라, 전문 촬영가들 및 아마츄어 촬영가들 모두는 자연스럽게 그들의 비디오 장면을 관리하기 위해 그들의 컴퓨터를 사용하는 것에 시선을 돌린다. 몇몇 비디오 편집 소프트웨어 프로그램을 현재 시장에서 입수할 수 있다. 일반적으로, 이러한 프로그램들은 모두 유사한 프로세스를 따른다. 즉, 디지털 또는 아날로그 형식으로 기록된 비디오 또는 라이브 비디오를 컴퓨터 디스크 드라이브에 전송한 후에, 사용되고 있는 특정 비디오 편집 프로그램 내에서 결과적인 디지털 비디오 파일에 대해 동작을 수행한다. 종래의 비디오 편집 프로그램들은 사용자들로 하여금 스토리보드(storyboard)를 구축하고, 비디오 파일을 세그먼트들(즉, 클립들)로 분할하고, 클립들을 배열 및 편집하고, 오디오를 추가하는 것 등을 할 수 있게 한다. 또한, 편집 후에, 종래의 비디오 편집 소프트웨어 프로그램들은 사용자들로 하여금 재생, 웹사이트 상에의 포스팅 및 이메일에 의한 다른 사람에게로의 전송과 같은 추가적인 동작을 위해 그들의 컴퓨터 또는 휴대용 저장 매체에 비디오 파일들을 저장 및 보관할 수 있게 한다.
이러한 종래의 소프트웨어 편집 툴들은 여전히 비교적 귀찮으며, 많은 사용자들이 그들의 퍼스널 컴퓨터에서 홈 비디오를 용이하고 효과적으로 관리하는 것을 곤란하게 한다. 예를 들어, 전술한 모든 동작들은 비디오 편집 소프트웨어 프로그램 내에서 수행되어야만 한다. 이는 특정 비디오 파일 컨텐츠를 검색하는 것, 비디오를 잘라내는(trimming) 것, 짧은 비디오 클립들을 이메일로 보내는 것 등과 같은 요구되는 작업들을 과도하게 복잡하게 만드는 경향이 있다. 이메일로 비디오를 전송하는 예에서, 종래의 소프트웨어 프로그램들은 사용자가 비디오를 첨부 및 전송할 수 있기 전에, 사용자들이 우선 많은 시간이 소비되는 편집 단계들을 수행할 것을 요구한다.
비디오 편집에 대하여, 종래의 방법들은 원본 비디오 파일의 완전성(integrity)을 유지할 수 없거나, 원본 파일의 복사본으로부터의 작업을 요구한다. 현재 이용가능한 비디오 소프트웨어 프로그램들은, 예를 들어 비디오 세그먼트들 또는 비디오 클립들을 디스플레이하고 편집하기 위하여 단일한 비디오 파일을 새로운 별개의 비디오 파일들로 분할하는 것을 필요로 한다. 각각의 클립에 대하여 비디오 파일을 별개의 파일로 쪼개는 것은 몇몇 제한점을 가지며, 비디오의 품질에 영향을 미칠 수 있다. 또한, 각각의 클립에 대한 파일 기반 동작을 수행하는 것은 매우 리소스 집약적이고 오래 걸릴 수 있다.
단일 시점(예를 들어, 사진이 촬영된 날짜 및 시간, 또는 노래가 최초로 발매된 날짜)에 연결될 수 있는 대부분의 미디어 개체와는 달리, 비디오 클립은 반드시 일정한 시간 범위에 걸쳐있다. 또한, 클립이 취해진 비디오 파일은 통상적으로 훨씬 긴 범위의 시간 범위에 걸쳐있다(때때로 1년 전체 또는 그 이상). 통상적인 비디오 편집 소프트웨어 프로그램이 비디오 클립들을 개별 엔티티로서 다룰 수 없 는 것은 컴퓨터 상에서의 비디오 파일들의 관리를 더욱 힘들게 한다.
<개요>
본 발명의 실시예들은 사용자들로 하여금 비디오 클립들을 개별 엔티티로서 다룰 수 있게 함으로써 종래 기술의 하나 이상의 결점을 극복한다. 이렇게 함으로써, 사용자의 비디오 컨텐트 접근성이 향상된다. 본 발명의 일 실시예는 컴퓨터 운영 체제 셸에서 비디오 클립들을 나타낸다. 사용자들은 비디오 컨텐트를 컴퓨터에 전송한 후, 컴퓨터를 이용하여 컨텐트를 관리, 렌더링(rendering), 검색 및 공유할 수 있다. 또한, 사용자는 비디오 클립들을 용이하게 규정 및 편집하여 컴퓨터 상에서 새로운 비디오 "메모리들"을 창설할 수 있다. 유리하게도, 본 발명의 양태들은 사용자들로 하여금 그들의 비디오 파일들을 수정하지 않고서, 그리고 별도의 비디오 편집 소프트웨어를 사용하지 않고서도 다른 미디어 개체들과 매우 동일한 방식으로, 그리고 그만큼 용이하게 비디오 클립들을 본질적으로 조작할 수 있게 한다.
비디오 클립들을 관리하는 방법을 수행하기 위한 컴퓨터 실행가능 명령어들을 갖는 컴퓨터 판독가능 매체는 본 발명의 추가적인 양태들을 구현한다.
대안적으로, 본 발명의 실시예들은 다양한 다른 방법들 및 장치들을 포함할 수 있다.
다른 특징들은 일부는 명백하며, 일부는 이하 이하에서 지적될 것이다.
도 1은 본 발명의 일 실시예에 따른 비디오 파일과 비디오 클립들 사이의 예 시적인 관계를 도시한다.
도 2는 본 발명의 일 실시예에 따른 컴퓨터에 의해 실행되는 프로세스를 도시하는 예시적인 흐름도이다.
도 3은 본 발명의 일 실시예에 따른 ASF 탑 레벨 개체의 예시적인 포맷을 도시한다.
도 4A는 본 발명의 일 실시예에 따른 ASF 파일의 예시적인 구조를 도시한다.
도 4B 및 도 4C는 본 발명의 실시예들에 따른 TOC 개체의 위치를 가리키는 도 4A의 ASF 파일의 예시적인 구조를 도시한다.
도 5는 본 발명의 일 실시예에 따른 TOC 개체의 예시적인 레이아웃을 도시한다.
도 6A는 본 발명의 일 실시예에 따른 TOC 개체의 예시적인 구조를 도시한다.
도 6B는 본 발명의 일 실시예에 따른 TOC 개체의 컨텐트 필드의 예시적인 테이블을 도시한다.
도 6C는 본 발명의 일 실시예에 따른 컨텐트 테이블의 예시적인 엔트리 리스트 필드를 도시한다.
도 6D는 본 발명의 일 실시예에 따른 엔트리 리스트의 예시적인 엔트리 필드를 도시한다.
도 7은 본 발명의 일 실시예가 구현될 수 있는 적절한 컴퓨팅 시스템 환경의 예시적인 실시예를 도시하는 블록도이다.
도면 전체를 통해, 대응하는 참조 부호는 대응하는 부분을 나타낸다.
도 1을 참조하자면, 비디오 파일(102)과 비디오 클립들(104) 사이의 예시적인 관계를 도시한다. 비디오 파일(102)은 하나 이상의 비디오 클립들(104)을 나타내는 단일 파일이다. 비디오 파일(102)은 기록된 비디오 또는 라이브 비디오를 디지털 포맷 또는 아날로그 포맷으로 컴퓨터 하드 드라이브와 같은 저장 매체로 전송하는 것에서 유래한다. 사용자가 디지털 디바이스(예를 들어, 디지털 캠코더)로부터 비디오 컨텐트를 캡쳐하는 경우에, 비디오는 단일 비디오 파일(102)에 캡쳐된다.
각각의 비디오 클립(104)은 비디오 파일(102)의 부분 또는 세그먼트를 나타낸다. 단일 비디오 테잎 상에서, 예를 들어 사용자는 기록된 복수의 이벤트들을 가질 수 있다. 각각의 기록된 이벤트 내에서, 하나 이상의 불연속 장면이 있을 수 있다. 비디오 클립(104)이 어떻게 규정되는가에 의존하여, 각각의 비디오 클립(104)은 통상적으로 불연속 장면으로 구성된다. 도 1의 예에서, 사용자는 생일, 웨딩 및 휴가로부터 비디오 컨텐트를 기록하였다. 하나 이상의 장면들은 이러한 3개의 키(key) 이벤트들 각각의 내에서 발견될 수 있다. 각각의 장면은 비디오 클립(104)으로서 나타내어진다. 본 발명의 양태들은 사용자로 하여금 3개의 이벤트들 및 그 특정 장면들 각각을 용이하게 관측하고 관리할 수 있게 한다.
이하 더욱 상세하게 설명할 바와 같이, 클립(104) 형태의 사용자의 비디오 "메모리들"은 컴퓨터의 파일 시스템 내의 소위 "메모리"와 물리적인 파일 사이의 일대일 대응 없이 컴퓨터의 운영 체제에 저장되고 나타내어질 수 있다. 본 발명에 따라 컴퓨터 운영 체제의 셸에 비디오 클립(104)을 나타내는 것은 사용자들로 하여금 비디오 컨텐트를 컴퓨터에 전송한 후에, 컴퓨터를 이용하여 컨텐트를 관리, 연출, 검색 및 공유할 수 있게 한다. 또한, 사용자는 용이하게 비디오 클립들(104)을 규정 및 편집하여 컴퓨터 상에 새로운 비디오 "메모리들"을 창설할 수 있다. 유리하게도, 본 발명의 양태들은 사용자들로 하여금 비디오 파일들(102)을 수정하지 않고, 그리고 별도의 비디오 편집 소프트웨어를 사용하지 않고도 다른 미디어 개체와 매우 동일한 방식으로, 그리고 그만큼 용이하게 본질적으로 비디오 클립들(104)을 조작할 수 있게 한다. 사용자들로 하여금 다수의 공통 시나리오들에 대해 편집 프로세스를 전체적으로 건너뛸 수 있게 하는 것은 그들의 컴퓨터 상에서 효과적으로 비디오 컨텐트를 관리할 수 있는 사용자들의 수를 확대시킨다.
예로서, 대부분의 비디오 컨텐트는 비디오 테잎 상에 기록된다. 본 기술분야에서 숙련된 자에게 알려진 캡쳐 프로세스가 컴퓨터 상에서의 사용을 위해 테잎으로부터 디지털 파일, 즉 비디오 파일(102)로 비디오 컨텐트를 캡쳐 및 전송하는 데 이용될 수 있다. 표준 비디오 테잎은 60분의 비디오를 기록한다. 평균적으로, 통상의 사용자는 테잎당 20분 내지 40분의 컨텐트를 캡쳐한다. 사용자가 테잎으로부터 캡쳐하기 때문에, 이것은 실시간 프로세스이며 시간이 소비될 수 있다. 이와 같이, 다수의 사용자들은 컴퓨터 상에서 디지털 비디오 파일로 비디오를 캡쳐하는 것을 회피하였었다. 유리하게도, 본 발명의 실시예들은, 사용자들이 컴퓨터로 그들의 비디오들을 캡쳐하는 이점을 보다 용이하게 실현할 수 있도록 비디오 컨텐트의 관리를 단순화한다.
테잎 디바이스에 있어서, 비디오 컨텐트는 단일 비디오 파일(102)로 캡쳐된다. 이러한 예에서, 비디오 촬영가가 비디오 기록을 시작할 때마다 비디오 클립들(104)이 규정될 수 있다. 장시간의 비디오 클립들(104)에 있어서, 비디오 컨텐트에 기초한 추가적인 장면 검출 기술이 비디오 클립들(104)을 추가적으로 규정하는 데 이용될 수 있다. 예를 들어, 사용자는 촬영 동안에 기록 중지 버튼을 전혀 누르지 않고 20분의 그녀의 딸의 생일 파티를 기록한다. 본 발명의 양태들은 이러한 연속적인 컨텐트에 기초하여 비디오를 분석할 수 있게 하여 이벤트의 보다 풍부한 보기(view)를 제공하기 위해 컨텐트를 장면으로 쪼갠다. 또한, 사용자는 예를 들어, 그녀의 딸이 선물들을 열어볼 때 또는 생일 촛불을 불어서 끌 때를 보다 용이하게 인식할 수 있다.
레거시(legacy) 아날로그 컨텐트가, 아마도 아날로그 대 디지털 비디오 변환기를 이용하여 컴퓨터로 캡쳐되는 경우에, 비디오 파일(102)은 하나의 긴 장면으로서 구축된다. 본 발명의 비디오 분석 양태들은 원래의 테잎 상에 있는 논리적인 시작 및 종료 시간들을 결정하여 클립들(104)을 식별할 수 있게 한다.
대안적으로, 사용자들은 디지털 카메라와 같은 고상 디바이스로부터 비디오 컨텐트를 캡쳐하기를 희망할 수도 있다. 이러한 예에서, 비디오 컨텐트를 캡쳐하는 것은 고상 디바이스로부터의 전송 또는 동기화를 포함한다. 공지된 고상 디지털 캠코더들 등은 비디오 촬영가가 기록 프로세스를 시작 및 종료할 때마다 단일한 파일을 기록한다. 테잎 캡쳐와 마찬가지로, 보다 많은 낱개의(granular) 클립들을 적절히 식별하기 위하여 컨텐트를 분석하는 데 장면 분석이 요구될 수 있다.
도 2에서, 예시적인 흐름도는 본 발명의 일 실시예에 따른 컴퓨터에 의해 실행되는 프로세스를 도시한다. 블록(202)의 시작에서, 사용자는 예를 들어 캡쳐 마법사(wizard)를 이용하여 새로운 비디오 파일(102)을 획득한다. 캡쳐 동안에, 비디오 파일(102)이 분석되고, 장면들이 검출된다.
특정 비디오 파일(102) 내의 클립들(104)의 개수는 사용자의 컨텐트에 기초하며 비디오별로 다르다. 비디오 테잎들로부터 캡쳐된 비디오 컨텐트 대 고상 디바이스들로부터 캡쳐된 비디오 컨텐트에 대한 모델은 약간 상이하다. 표 1은 상이한 소스들로부터 캡쳐된 비디오 컨텐트의 비교를 제공한다.
[표 1]
이벤트들의 개수 캡쳐 동안의 파일들 검출된 장면들 대략적인 전체 클립들
비디오 테잎 2-3 이벤트들. 사용자들은 평균적으로 대략 45분인 테잎을 캡쳐를 수행하기 전에 통상적으로 채움. 대부분의 사용자들은 테잎을 그들의 마스터 백업으로서 저장함. 테잎은 각각 $3-5임. 테잎당 1개 45-60개 60개
고체 상태 1-2 이벤트들. 사용자들은 그들의 디바이스 및 자유 저장 공간으로부터 보다 용이하게 이벤트들을 다운로드할 수 있음. 각각의 이벤트들은 통상적으로 10-20 분임. 이벤트당 5-15개 이벤트당 5-20개 이벤트당 40개(20개)
다시 도 2에서, 캡쳐에 후속하여, 미디어 파일(즉, 비디오 파일(102))이 기입된다(204). 일 실시예에서, 미디어 파일은 ASF(Advanced Streaming Format)에 따라 기입되고, TOC(Table of Contents)로 표기된 미디어 파일 시스템 개체를 포함 한다. 본 발명의 양태들은 비디오 파일(102)로 규정된 각각의 클립(104)에 대한 기록을 포함한다. TOC 개체의 특징들을 이하 더욱 상세하게 설명한다. 대안적인 실시예에서, TOC 정보는 AVI(Audio Video Interleave)와 같은 또 다른 오디오-비디오 표준에 따라 기입된 파일에 삽입될 수 있다.
도 2에 도시한 블록(206)에서, 컴퓨터는 비디오 포맷(예를 들어, Windows Media Video)으로 TOC 개체를 파싱하기 위해 파일 프로모터를 실행하고, 각각의 클립(104)에 대한 별도의 클립 기록뿐만 아니라 새로운 비디오 라이브러리 기록을 창설한다. 즉, 캡쳐를 행한 컴퓨터는 관리될 비디오 파일들(102) 각각으로부터 하나 이상의 비디오 클립들(104)을 규정한다. 일 실시예에서, 운영 체제는, 클립(104)을 나타내기 위해 할당된 메타데이터를 포함하는 TOC 개체를 저장하는 미디어 라이브러리를 사용자에게 노출한다.
블록(208)에서 계속하여, 운영 체제 셸은 TOC 개체를 통해, 메타데이터를 포함하여 각각의 클립(104)을 노출한다. 블록(210)에서 재생, 삭제, 잘라내기 및 결합과 같은 사용자 개시 작업이 클립들(104)에 대하여 등록된다. 이에 응답하여, 컴퓨터는 비디오 클립들(104)에 대한 변화를 데이터베이스에 기입한다. 특히, 셸이 그 변화를 검출하여 블록(212)에서 파일 헤더 내에 TOC 개체를 업데이트하는데, 이는 블록(214)에서 TOC를 갖는 새로운 ASF 파일로 귀결된다. 이는 기록 및 TOC 개체가 언제나 동기화됨을 보장한다.
예를 들어 TOC 개체의 사용으로 미디어 라이브러리 내의 셸을 통해 비디오 클립들(104)을 노출하는 것은 디스크, 이메일 또는 휴대용 미디어 센터 디바이스 상에 캡쳐, 조직화, 편집, 무비 만들기 및 공유를 포함하는 전체적인 비디오 작업 흐름을 개선시킨다. 사용자들로 하여금 비디오 편집 툴과 같은 별도의 애플리케이션을 반드시 열어보지 않고도 운영 체제에서 직접 비디오 클립들(104)을 관측하고 관리하게 할 수 있도록, 컴퓨터 운영 체제의 셸 인터페이스에서 클립들(104)을 노출하는 것에 동일한 원리들이 적용될 수 있다. 또한, 이는 비디오 파일(102)의 완전성을 유지하고, 편집할 때에도 비디오 클립(104)을 별도의 비디오 파일들(102)로 바람직하지 않게 분리하는 것을 억제한다.
전술한 바와 같이, 비디오 클립들(104)을 디스플레이하는 통상적인 접근법은 별도의 전용 비디오 애플리케이션 및/또는 각각의 규정된 비디오 클립(104)에 대하여 비디오 파일(102)을 별개의 비디오 파일들(102)로 쪼개는 것에 의존한다. 불행하게도, 복수의 클립들(104)에 대하여 비디오 파일(102)을 별개의 파일들(102)로 쪼개는 것은 몇몇 제한점을 가지고 비디오의 품질에 영향을 미친다. 비디오 클립들(104)을 셸 내의 메타데이터로서 나타냄으로써, 본 발명의 실시예들은 비디오 품질에 어떠한 영향도 주지 않고 거의 순간적으로 동작이 클립들(104)에 대하여 수행될 수 있게 한다.
공지의 방법들과는 반대로, 셸을 통한 비디오 클립들(104)에 대한 동작들은 비파괴적이다. 비디오 클립들(104)이 운영 체제가 파악하는 메타데이터로서 나타내어지기 때문에, 사용자는 새로운 마크-인(mark-in) 및 마크-아웃(mark-out) 위치를 설정함으로써 비디오 클립(104)을 잘라내는 것과 같은 동작들을 수행할 수 있다. 이러한 예에서, 잘라내기는 간단히 비디오 클립(104)에 대한 메타데이터를 업 데이트시킨다. 사용자는 비디오 파일(102) 내의 원래 비디오 소스에 영향을 주지 않고도 마크-인 및 마크-아웃 위치를 조정할 수 있다. 또한, 잘려진 비디오 클립들(104)은 단지 마크-인 및 마크-아웃 위치를 조정함으로써 용이하게 잘려지지 않은 상태로 될 수 있다.
일 실시예에서, TOC 또는 Table of Contents 개체는 개선된 인덱스 정보 및 관련 메타데이터를 저장하기 위한 ASF 개체를 포함한다. 도 3은 ASF 탑 레벨 개체의 포맷을 도시한다. 도시한 바와 같이, ASF 탑 레벨 개체 및 그에 따른 본 발명의 TOC 개체의 포맷은 16바이트의 개체 GUID 필드, 8바이트의 개체 사이즈 필드 및 N바이트의 개체 데이터 필드를 갖는다. 개체 사이즈 필드의 값은 예를 들어 24바이트와 바이트 단위인 개체 데이터의 사이즈를 더한 값이다. 개선된 인덱스 정보의 예들은 컨텐츠 테이블, 시맨틱(semantic) 인덱스 및 스토리보드를 포함한다. 관련된 메타데이터의 예들은 엔트리 기반 텍스트 설명, 커버 아트들(cover arts), 썸네일들(thumbnails), 시청각 DSP 특성 및 상호 참조를 포함한다.
유추하면, 대부분의 책들은 독자들에게 책 내용의 계층적인 개관을 제공하고 독자들이 페이지들을 넘겨 신속하게 찾는 것을 돕는 컨텐츠 테이블(목차)을 포함한다. 또한, 많은 책들은 미리 선택된 특정 키워드와 관련된 페이지 번호의 역탐색(reverse lookup)을 가능하게 하는 시맨틱 인덱스 테이블(색인표)을 갖는다. 반대로, WMV 파일과 같은 대부분의 기존 멀티미디어 파일들은 이러한 인덱스 정보를 갖지 않는다. 통상적인 비디오 파일(102) 내의 흥미있는 장면을 발견하기 위하여, 사용자는 수동으로 전체 파일을 찾아봐야 할 수도 있다. 이러한 작업은 특히 큰 파일의 경우에는 종종 지루하고 시간이 소모된다. 따라서, 멀티미디어 파일들, 즉 비디오 파일들(102)에 개선된 인덱싱 기능을 추가하는 것이 바람직하다.
도 4A는 ASF 파일의 예시적인 구조를 도시한다. 도시한 바와 같이, 통상적인 ASF 파일은 헤더 개체, 데이터 개체, 인덱스 개체 및 단순한 인덱스 개체를 포함한다. 또한, 모든 기타 탑 레벨 개체들은 ASF 파일의 데이터와 인덱스 개체 사이에 추가된다. ASF 사양에 따라, 구현체는 어떻게 다루어야 할지를 모르는 임의의 표준 또는 비표준 개체를 무시하여야 한다.
본 기술분야의 당업자는 ASF 파일에 컨텐트 기반 인덱싱 기능을 추가하기 위한 사용자 정의 인덱스(UDI) 개체를 잘 알고 있다. 그러나, UDI 개체는 몇몇 제한점을 갖는다. 예를 들어, ASF 사양은 데이터 개체와 인덱스 개체 사이에 삽입될 임의의 새로운 탑 레벨 개체들을 필요로 한다. UDI 개체가 ASF 파일의 말단에 첨부되므로, 인덱싱 기능은 모든 파서(parser)와 함께, 또는 모든 디바이스들 상에서 동작하지 않을 수도 있다. 또한, UDI 개체는 계층적인 인덱스를 지원하지 않으며, 모든 엔트리당(per-entry) 메타데이터는 동일한 고정된 사이즈를 갖는다. 이러한 제한으로 인해, UDI 개체는 운영 체제의 셸을 통해 클립들(104)을 노출하기에 부적절하다.
본 발명의 일 실시예에서, TOC 개체 및 CDD 설명자는 ASF 포매팅 가이드라인을 따른다. 즉, 모든 구조들은 1바이트의 패킹을 가지고, 유니코드 스트링에 대한 모든 참조는 널 종단 스트링(null-terminated string)을 내포하고, 개체 및 구조는 리틀 엔디언 순서(little-endian order)로 저장된다. 이러한 기초 데이터 타입(및 사이즈)은 바이트(8비트); WCHAR(16비트); 워드(WORD)(16비트); DWORD(32비트); QWORD(64비트) 및 GUID(128비트)를 포함한다. TOC 개체는 도 4B에 도시한 바와 같이 데이터 개체와 인덱스 개체 사이에 위치하거나, 도 4C에 도시한 바와 같이 ASF 파일 내의 헤더 확장 개체 내부에 위치한다. ASF 파일 내에 TOC 개체의 복수의 인스턴스들이 있을 수 있다(예를 들어, 통상적으로 책의 전단부에서 발견되는 목록과 흡사한 TOC 개체; 책의 말단부에서 통상적으로 발견되는 색인과 흡사한 TOC 개체; 미디어 스트림마다의 TOC 개체 등).
도 5는 본 발명의 양태들을 구현하는 TOC 개체의 예시적인 레이아웃을 도시한다.
도 6A에서, TOC 개체는 도시된 구조를 이용하여 나타내어질 수 있다. 이러한 예에서, 개체 ID 필드는 TOC 개체에 대한 GUID를 지정하고(예를 들어, 35003B7B-A104-4c33-A9EE-E2A240431F9B), 개체 사이즈 필드는 TOC 개체의 사이즈를 바이트로 지정한다. 개체 사이즈에 대한 유효값은 70바이트 이상이다. TOC 개체의 컨텐츠 테이블 필드는 도 6B의 구조로서 나타내어질 수도 있다.
도 6B에서, TOC 개체의 컨텐츠 테이블 필드는, 이러한 컨텐츠 테이블에 대한 고유의 식별자를 지정하는 ID; 이러한 컨텐츠 테이블과 관련된 미디어 스트림 #을 지정하는 스트림 # 필드 및 이러한 컨텐츠 테이블의 타입을 지정하는 타입 필드를 포함한다. 일 실시예에서, 타입 필드는 표 2에서 나타낸 이하의 미리 규정된 GUID들 중 하나 또는 임의의 다른 사용자 규정 GUID일 수 있다.
[표 2]
ASF_TOC_Type_Playlist ACC8DAA6-9D06-42d6-8704-2B2CA8E1FD9A
ASF_TOC_Type_Editlist 2F133F06-0701-49f9-AD38-602F00A7882D
ASF_TOC_Type_User_Bookmarks 7A0D993C-C1B0-473b-A048-2A0DE74E93A5
ASF_TOC_Type_DSP_Metadata 1AEDA271-281D-43ac-8735-8911D408FBCD
또한, 도 6B에 도시한 TOC의 컨텐츠 테이블 필드는 이하를 포함한다: 만일 존재한다면, 이러한 컨텐츠 테이블이 사용하거나 갖는 언어를 지정하는 언어 ID 인덱스 필드; 설명 필드의 사이즈를 바이트로 지정하는 설명 사이즈 필드; 이러한 컨텐츠 테이블의 텍스트 설명을 포함하는 설명 필드; 엔트리 계층의 레벨 개수를 지정하는 엔트리 레벨 필드의 #; 컨텍스트 필드의 사이즈를 바이트로 지정하는 컨텍스트 사이즈 필드; 이러한 테이블에 대한 임의의 추가적인 설명 데이터를 포함하는 컨텍스트 필드(그 사이즈는 컨텍스트 사이즈 필드에 의해 결정됨) 및 엔트리의 X 리스트(X=엔트리 레벨의 #)로 구성된 엔트리 리스트 필드.
각각의 엔트리 리스트 필드는 도 6C에 도시한 구조를 이용하여 나타내어질 수 있다. 도시한 바와 같이, 엔트리 리스트 필드의 일 실시예는 이러한 리스트에 존재하는 엔트리의 개수를 지정하는 엔트리의 # 필드 및 Y 엔트리(Y=엔트리의 #)로 구성된 엔트리 필드를 포함한다. 도 6D는 각각의 엔트리 필드에 대한 예시적인 구조를 제공한다. 이러한 예에서, 엔트리 필드는 이하를 포함한다: 엔트리 타이틀 필드의 사이즈를 바이트로 지정하는 엔트리 타이틀 필드; 이러한 엔트리에 대한 시작 상영 시간을 100 나노초 단위로 지정하는 시작 시간 필드; 이러한 엔트리에 대한 종료 상영 시간을 100 나노초 단위로 지정하는 종료 시간 필드(지정되지 않으면 0으로 설정됨); ASF 파일 내의 첫번째 데이터 패킷의 시작으로부터 이러한 엔트리의 첫번째 데이터 패킷의 시작까지의 바이트 오프셋을 지정하는 시작 패킷 오프셋 필드(키 프레임 및 논(non) 키 프레임 둘 다를 포함하는 비디오 스트림에 대하여, 이러한 필드는 시간 간격 전에 가장 근접한 키 프레임에 대응할 것임); ASF 파일 내의 첫번째 데이터 패킷의 시작으로부터 이러한 엔트리의 마지막 데이터 패킷의 시작까지의 바이트 오프셋을 지정하는 종료 패킷 오프셋 필드(지정되지 않으면 0으로 설정됨); 이러한 엔트리에 대한 대표 프레임의 상영 시간을 100나노초 단위로 지정하는 대표 프레임 시간 필드; 이러한 엔트리 하에서 서브-엔트리(즉, 자손)의 개수를 지정하는 서브-엔트리 필드(이러한 엔트리가 서브-엔트리를 갖지 않는다면 0으로 설정됨); Z=서브-엔트리의 #인 Z 서브-엔트리 인덱스로 구성되는 서브-엔트리 인덱스 필드(각각의 서브-엔트리 인덱스는 워드(WORD)이며, 다음 레벨 엔트리 리스트 내의 대응하는 자손 엔트리의 위치를 포함함); 설명 데이터의 사이즈를 바이트로 지정하는 설명 데이터 사이즈 필드(이러한 엔트리가 추가적인 설명 데이터를 갖지 않는다면 0으로 설정됨); 설명 데이터의 타입을 지정하는 설명 데이터 타입 필드(설명 데이터 사이즈가 0인 경우에 이러한 필드는 존재하지 않게 됨); 이러한 엔트리에 대한 임의의 추가적인 설명 데이터를 포함하는 설명 데이터 필드(그 사이즈는 설명 데이터 사이즈에 의해 결정됨). 일 실시예에서, 설명 데이터는 미리 규정된 설명 데이터 타입에 속해야만 한다. 설명 데이터 타입은, 오서링 애플리케이션(authoring application) 및 타겟으로 된 클라이언트 애플리케이션이 타입 정의를 공유하고 모두가 그 데이터를 어떻게 파싱하는가를 알고 있는 한 임의의 것에 의해 임의의 시간에 규정될 수 있다.
TOC 개체 및 그 수반하는 메타데이터를 통하여 셸 내의 클립들(104)을 노출 하는 것은 사용자들로 하여금 이전에는 불가능했던 작업들을 수행할 수 있게 한다. 일단 사용자가 셸에 의해 노출된 컴퓨터 상에 미디어 라이브러리 내에 비디오 메모리들을 저장하였다면, 사용자는 예를 들어 날짜로 순서화된 클립들의 보기(view)에 대하여 각 연도에서 그녀의 생일을 단지 찾아 봄으로써 2001-2004의 그 또는 그녀의 딸을 위한 모든 생일 파티를 포함하는 DVD를 용이하게 만들 수 있다. 또 다른 예에서, 사용자는 새해 인사와 함께 전송할 "이 해의 최고" 디스크를 만들기 위해 모든 5성(5-star) 등급의 가족 비디오 클립들 및 사진들 대해 용이하게 조회할 수 있다. 사용자는 비디오 편집 프로그램을 사용하지 않고도 이러한 작업들을 직접 수행할 수 있거나, 프로그램에 론칭시켜 특정 프로젝트에 필요물인 모든 항목에 이를 전달할 수 있다.
또 다른 예는 다른 사용자에게 비디오 클립을 이메일로 보내는 것이다. 현재 이용가능한 소프트웨어를 이용하여, 이메일로 비디오 클립을 전송하는 것은 편집 작업이다. 사용자들은 비디오를 잘라낼 수 있는 비디오 편집기를 필요로 한다. 이러한 프로그램은 복수의 시간 소모적인 단계들을 필요로 한다. 본 발명의 실시예들에 따라 셸 내의 클립들(104)을 노출함으로써, 일단 사용자가 비디오 테잎을 사용자의 라이브러리로 캡쳐하였다면, 그 라이브러리로부터 특정 비디오 클립(104)을 전송하는 것은 사진을 전송하는 것 만큼이나 쉽다.
도 7은 컴퓨터(130)의 형태인 범용 컴퓨팅 장치의 일 예를 도시한다. 본 발명의 일 실시예에서, 컴퓨터(130)와 같은 컴퓨터는 본 명세서에서 도시되고 설명된 다른 도면에서의 사용에 적절하다. 컴퓨터(130)는 하나 이상의 프로세서 또는 처 리 장치(132) 및 시스템 메모리(134)를 갖는다. 도시된 실시예에서, 시스템 버스(136)는 시스템 메모리(134)를 포함한 각종 시스템 컴포넌트들을 프로세서(132)에 연결한다. 버스(136)는 메모리 버스 또는 메모리 컨트롤러, 주변 장치 버스, 가속 그래픽 포트, 및 프로세서 또는 각종 버스 아키텍처 중 임의의 것을 이용하는 로컬 버스를 비롯한 몇몇 유형의 버스 구조 중 하나 이상을 나타낸다. 예로서, 이러한 아키텍처는 ISA(industry standard architecture) 버스, MCA(micro channel architecture) 버스, EISA(Enhanced ISA) 버스, VESA(video electronics standard association) 로컬 버스, 그리고 메자닌 버스(mezzanine bus)로도 알려진 PCI(peripheral component interconnect) 버스 등을 포함하지만 이에 제한되는 것은 아니다.
컴퓨터(130)는 통상적으로 적어도 몇몇 유형의 컴퓨터 판독가능 매체를 포함한다. 휘발성 및 비휘발성 매체, 이동식 및 비이동식 매체 모두를 포함하는 컴퓨터 판독가능 매체는 컴퓨터(130)에 의해 액세스될 수 있는 임의의 이용가능한 매체일 수 있다. 예로서, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 포함하지만 이에 제한되는 것은 아니다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보를 저장하는 임의의 방법 또는 기술로 구현되는 휘발성 및 비휘발성, 이동식 및 비이동식 매체를 포함한다. 예를 들어, 컴퓨터 저장 매체는 RAM, ROM, EEPROM, 플래시 메모리 또는 기타 메모리 기술, CD-ROM, DVD(digital versatile disk) 또는 기타 광 디스크 저장 장치, 자기 카세트, 자기 테이프, 자기 디스크 저장 장치 또는 기타 자기 저장 장치, 또는 컴퓨터(130)에 의해 액세스되고 원하는 정보를 저장하는 데 이용될 수 있는 임의의 기타 매체를 포함한다. 통신 매체는 통상적으로 반송파(carrier wave) 또는 기타 전송 메커니즘(transport mechanism)과 같은 피변조 데이터 신호(modulated data signal)에 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터를 구현하고 모든 정보 전달 매체를 포함한다. 본 기술 분야의 당업자라면 신호 내에 정보를 인코딩하는 방식으로 설정 또는 변경된 하나 이상의 그 특성들을 갖는 "피변조 데이터 신호"를 잘 알고 있다. 유선 네트워크 또는 직접 배선 접속(direct-wired connection)과 같은 유선 매체, 그리고 음향, RF, 적외선, 기타 무선 매체와 같은 무선 매체가 통신 매체의 예들이다. 상술된 매체들의 모든 조합이 또한 컴퓨터 판독가능 매체의 영역 안에 포함되는 것으로 한다.
시스템 메모리(134)는 이동식 및/또는 비이동식, 휘발성 및/또는 비휘발성 메모리 형태의 컴퓨터 저장 매체를 포함한다. 예시된 실시예에서, 시스템 메모리(134)는 판독 전용 메모리(ROM)(138) 및 랜덤 액세스 메모리(RAM)(140)를 포함한다. 시동 중과 같은 때에, 컴퓨터(130) 내의 구성요소들 사이의 정보 전송을 돕는 기본 루틴을 포함하는 기본 입/출력 시스템(BIOS)(142)은 통상적으로 ROM(138)에 저장되어 있다. RAM(140)은 통상적으로 처리 장치(132)가 즉시 액세스 할 수 있고 및/또는 현재 동작시키고 있는 데이터 및/또는 프로그램 모듈을 포함한다. 예로서, 도 7은 운영 체제(144), 애플리케이션 프로그램(146), 기타 프로그램 모듈(148) 및 프로그램 데이터(150)를 도시하고 있지만 이에 제한되는 것은 아니다.
컴퓨터(130)는 또한 기타 이동식/비이동식, 휘발성/비휘발성 컴퓨터 저장매 체를 포함한다. 예로서, 도 7은 비이동식·비휘발성 자기 매체에 기록을 하거나 그로부터 판독을 하는 하드 디스크 드라이브(154)를 도시한다. 또한, 도 7은 이동식·비휘발성 자기 디스크(158)에 기록을 하거나 그로부터 판독을 하는 자기 디스크 드라이브(156), CD-ROM 또는 기타 광 매체 등의 이동식·비휘발성 광 디스크(162)에 기록을 하거나 그로부터 판독을 하는 광 디스크 드라이브(160)를 도시한다. 예시적인 운영 환경에서 사용될 수 있는 기타 이동식/비이동식, 휘발성/비휘발성 컴퓨터 기억 매체로는 자기 테이프 카세트, 플래시 메모리 카드, DVD, 디지털 비디오 테이프, 고상(solid state) RAM, 고상 ROM 등이 있지만 이에 제한되는 것은 아니다. 하드 디스크 드라이브(154), 자기 디스크 드라이브(156) 및 광 디스크 드라이브(160)는 통상적으로 인터페이스(166)와 같은 비휘발성 메모리 인터페이스를 통해 시스템 버스(136)에 접속된다.
위에서 설명되고 도 7에 도시된 드라이브들 또는 기타 대용량 저장 장치 및 이들과 관련된 컴퓨터 저장 매체는, 컴퓨터(130)를 위해, 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 및 기타 데이터를 저장한다. 도 7에서, 예를 들어, 하드 디스크 드라이브(154)는 운영 체제(170), 애플리케이션 프로그램(172), 기타 프로그램 모듈(174), 및 프로그램 데이터(176)를 저장하는 것으로 도시되어 있다. 여기서 주의할 점은 이들 컴포넌트가 운영 체제(144), 애플리케이션 프로그램(146), 기타 프로그램 모듈(148), 및 프로그램 데이터(150)와 동일하거나 그와 다를 수 있다는 것이다. 운영 체제(170), 애플리케이션 프로그램(172), 기타 프로그램 모듈(174) 및 프로그램 데이터(176)에 다른 번호가 부여되어 있다는 것은 적 어도 이들이 다른 사본(copy)이라는 것을 나타내기 위한 것이다.
사용자는 키보드(180) 및 포인팅 장치(182)(예를 들어, 마우스, 트랙볼(trackball), 펜 또는 터치 패드)와 같은 입력 장치 또는 사용자 인터페이스 선택 장치를 통해 명령 및 정보를 컴퓨터(130)에 입력할 수 있다. 다른 입력 장치(도시 생략)로는 마이크, 조이스틱, 게임 패드, 위성 안테나, 스캐너 등을 포함할 수 있다. 이들 및 기타 입력 장치는 시스템 버스(136)에 결합된 사용자 입력 인터페이스(184)를 통해 처리 장치(132)에 접속되지만, 병렬 포트, 게임 포트 또는 USB(universal serial bus) 등의 다른 인터페이스에 의해 접속될 수도 있다. 모니터(188) 또는 다른 유형의 디스플레이 장치도 비디오 인터페이스(190)와 같은 인터페이스를 통해 시스템 버스(136)에 접속될 수 있다. 모니터(188) 외에, 컴퓨터는 스피커 및 프린터 등의 기타 주변 출력 장치(도시 생략)를 종종 포함할 수 있고, 이들은 출력 주변장치 인터페이스(도시 생략)를 통해 접속될 수 있다.
컴퓨터(130)는 원격 컴퓨터(194)와 같은 하나 이상의 원격 컴퓨터로의 논리적 접속을 사용하여 네트워크화된 환경에서 동작할 수 있다. 원격 컴퓨터(194)는 또 하나의 퍼스널 컴퓨터, 서버, 라우터, 네트워크 PC, 피어 장치 또는 기타 통상의 네트워크 노드일 수 있고, 통상적으로 컴퓨터(130)와 관련하여 상술된 구성요소들의 대부분 또는 그 전부를 포함한다. 도 7에 도시된 논리적 접속으로는 LAN(196) 및 WAN(198)이 있지만, 기타 네트워크를 포함할 수도 있다. LAN(136) 및/또는 WAN(138)은 유선 네트워크, 무선 네트워크, 그 조합 등일 수 있다. 이러한 네트워킹 환경은 사무실, 전사적 컴퓨터 네트워크(enterprise-wide computer network), 인트라넷, 및 글로벌 컴퓨터 네트워크(예를 들어, 인터넷)에서 일반적인 것이다.
LAN 네트워킹 환경에서 사용될 때, 컴퓨터(130)는 네트워크 인터페이스 또는 어댑터(186)를 통해 LAN(196)에 접속된다. WAN 네트워킹 환경에서 사용될 때, 컴퓨터(130)는 통상적으로 인터넷과 같은 WAN(198)을 통해 통신을 설정하기 위한 모뎀(178) 또는 기타 수단을 포함한다. 내장형 또는 외장형일 수 있는 모뎀(178)은 사용자 입력 인터페이스(184) 또는 기타 적절한 메커니즘을 통해 시스템 버스(136)에 접속된다. 네트워크화된 환경에서, 컴퓨터(130) 또는 그의 일부와 관련하여 기술된 프로그램 모듈은 원격 메모리 저장 장치(도시 생략)에 저장될 수 있다. 예로서, 도 7은 원격 애플리케이션 프로그램(192)이 메모리 장치에 있는 것으로 도시하고 있지만 이에 제한되는 것은 아니다. 도시된 네트워크 접속은 예시적인 것이며 이 컴퓨터들 사이에 통신 링크를 설정하는 기타 수단이 사용될 수 있다.
일반적으로, 컴퓨터(130)의 데이터 프로세서는 컴퓨터의 각종 컴퓨터 판독가능 저장 매체에서 상이한 시간에 저장된 명령어들에 의해 프로그래밍된다. 프로그램 및 운영 체제는 통상적으로 예를 들어 플로피 디스크 또는 CD-ROM 상에 분산된다. 거기에서, 이들이 설치되거나 컴퓨터의 2차 메모리로 로딩된다. 실행 시에, 이들은 컴퓨터의 1차 전자 메모리로 적어도 일부 로딩된다. 본 명세서에 기재된 본 발명의 실시예들은, 이러한 매체가 마이크로프로세서 또는 기타 데이터 프로세서와 결부하여 이하 설명될 단계를 구현하기 위한 명령어 및 프로그램을 포함하는 경우에, 이러한 컴퓨터 판독가능 저장 매체 및 기타 각종 유형의 컴퓨터 판독가능 저장 매체를 포함한다. 또한, 본 발명의 일 실시예는 본 명세서에서 설명된 방법 및 기술에 따라 프로그래밍된 경우에 컴퓨터 그 자체를 포함한다.
예시의 목적으로, 운영 체제와 같은 프로그램 및 기타 실행가능한 프로그램 컴포넌트를 별개의 블록으로서 본 명세서에서 설명한다. 그러나, 이러한 프로그램 및 컴포넌트는 컴퓨터의 상이한 저장 컴포넌트에서 상이한 시간에 존재하며, 컴퓨터의 데이터 프로세서(들)에 의해 실행된다는 것을 인식하여야 한다.
컴퓨터(130)를 포함하는 예시적인 컴퓨팅 시스템 환경과 결부하여 설명하였지만, 본 발명의 일 실시예는 다수의 기타 범용 또는 특수 목적의 컴퓨팅 환경들 또는 구성과 함께 동작한다. 컴퓨팅 시스템 환경은 본 발명의 실시예의 용법 또는 기능의 범위에 대하여 어떠한 제한을 가하려고 한 것이 아니다. 또한, 컴퓨팅 시스템 환경이 예시적인 운영 환경에서 도시된 컴포넌트들 중 임의의 하나 또는 조합과 관련한 어떠한 의존성 또는 요건을 갖는 것으로 해석되어서는 안 된다. 본 발명의 실시예들과의 사용에 적절할 수 있는 공지의 컴퓨팅 시스템, 환경 및/또는 구성의 예들은 퍼스널 컴퓨터, 서버 컴퓨터, 핸드-헬드 또는 랩탑 장치, 멀티프로세서 시스템, 마이크로프로세서 기반 시스템, 셋탑 박스, 프로그래머블 소비자 전자 기기, 이동식 전화기, 네트워크 PC, 미니컴퓨터, 메인프레임 컴퓨터 및 상술한 시스템 또는 장치 등 중 임의의 것을 포함하는 분산형 컴퓨팅 환경을 포함하지만 이에 제한되는 것은 아니다.
본 발명의 실시예들은 하나 이상의 컴퓨터 또는 다른 장치에 의해 실행되는 프로그램 모듈과 같은 컴퓨터 실행가능 명령어들의 일반적인 관점에서 설명될 수 있다. 일반적으로, 프로그램 모듈은 루틴, 프로그램, 개체, 컴포넌트 및 특정 작업을 수행하거나 특정한 추상적 데이터 타입을 구현하는 데이터 구조를 포함하지만 이에 제한되는 것은 아니다. 또한, 본 발명의 실시예들은 통신 네트워크를 통해 링크되는 원격 프로세싱 장치에 의해 작업들이 수행되는 분산형 컴퓨팅 환경에서 실행될 수 있다. 분산형 컴퓨팅 환경에서, 프로그램 모듈은 로컬 및 메모리 저장 장치를 포함하는 원격 컴퓨터 저장 매체 둘 다에 위치될 수 있다.
소프트웨어 아키텍쳐의 관점에서의 인터페이스는 소프트웨어 모듈, 컴포넌트, 코드 일부, 또는 컴퓨터 실행가능 명령어들의 기타 시퀀스를 포함한다. 인터페이스는 예를 들어 제1 모듈이 자신을 대신하여 컴퓨팅 작업을 수행할 제2 모듈에 액세스하는 것을 포함한다. 제1 및 제2 모듈은, 일 실시예에서, 운영 체제에 의해 제공되는 것과 같은 API(application programming interface), COM(component object model) 인터페이스(예를 들어, 피어-투-피어 애플리케이션 통신용) 및 XMI(extensible markup language metadata interchange format) 인터페이스(예를 들어, 웹 서비스들 간의 통신용)를 포함한다.
이러한 인터페이스는 J2EE(Java 2 Platform Enterprise Edition), 또는 DCOM(분산형 COM) 예들에서와 같은 동기식 구현으로서 단단히 결합될 수 있다. 대안적으로 또는 추가하여, 인터페이스는 웹 서비스(예를 들어, 단순한 개체 액세스 프로토콜을 이용함)와 같은 비동기식 구현으로서 느슨하게 결합될 수 있다. 일반적으로, 인터페이스는 이하의 특성의 임의의 조합을 포함한다: 단단하게 결합, 느슨하게 결합, 동기식 및 비동기식. 또한, 인터페이스는 표준 프로토콜, 독점적 프 로토콜 또는 표준 및 독점적 프로토콜의 임의의 조합에 따를 수 있다.
본 명세서에 설명된 인터페이스는 전체가 단일 인터페이스의 일부일 수 있거나, 별도의 인터페이스들 또는 그 임의의 조합으로서 구현될 수도 있다. 인터페이스는 국부적으로 또는 원격적으로 실행하여 기능을 제공할 수 있다. 또한, 인터페이스는 본 명세서에 예시되거나 도시된 것보다 추가적인 또는 더 적은 기능을 포함할 수 있다.
본 명세서에서, 디지털 집합체의 "디지털 데이터"는 컴퓨터 메모리 또는 저장 시스템 내에 통상적으로 저장된 임의의 유형의 독립적으로 다룰 수 있는 단위의 디지털 데이터이다. 이러한 "디지털 데이터"의 예들은 음악, 이미지, 비디오, 텍스트 문서, 하이퍼텍스트 문서, 임의의 포맷의 문서, 애플리케이션, 스프레드시트, 그래픽 및 데이터를 포함하지만 이에 제한되는 것은 아니다. 디지털 데이터는 다른 아이템들의 집합체를 포함할 수 있다.
본 명세서에서 설명되고 도시된 방법들의 실행 또는 수행의 순서는 달리 지정되지 않는다면 필수적인 것은 아니다. 즉, 달리 지정되지 않는다면, 방법들의 요소가 임의의 순서로 수행될 수 있으며, 또한 이러한 방법들은 본 명세서에서 개시된 것보다 많거나 적은 요소들을 포함할 수도 있음이 발명자들에 의해 고찰되었다. 예를 들어, 또 다른 요소 전에, 동시에, 또는 그 이후에 특정 요소를 실행 또는 수행하는 것이 본 발명의 범위 내에 드는 것으로 고찰되었다.
본 발명 또는 그 실시예들의 요소들을 도입하는 경우에, 관사 "어떤(a)", "어떤(an)", "그(the)", 및 "상기(said)"는 하나 이상의 요소들이 존재한다는 것을 의미하는 것으로 의도되었다. "구비하는(comprising)" "포함하는(including)" 및 "갖는(having)"이라는 용어는 포괄적이고, 나열된 요소들 외에 추가적인 요소들이 있을 수도 있음을 의미하는 것으로 의도되었다.
전술한 관점에서, 본 발명의 몇몇 목적이 달성되고 다른 유리한 결과들이 성취되었음을 알 수 있을 것이다.
본 발명의 실시예들의 범위를 벗어나지 않고 다양한 변화가 전술한 구성 및 방법들에 이루어질 수 있으므로, 전술한 설명 및 첨부된 도면에 도시된 모든 내용들은 예시적으로 해석되어야 하며, 제한적인 의미로 해석되어서는 안 되는 것으로 의도되었다.

Claims (20)

  1. 컴퓨터 상에서 하나 이상의 디지털 비디오 파일들을 관리하는 방법으로서,
    관리될 비디오 파일들 중 각각으로부터 적어도 하나의 비디오 클립을 규정하는 단계;
    상기 비디오 클립을 나타내는 메타데이터를 할당하는 단계;
    상기 메타데이터를 상기 컴퓨터 상의 미디어 라이브러리에 저장된 미디어 파일 시스템 개체에 저장하는 단계; 및
    상기 메타데이터를 갖는 개체를 상기 라이브러리를 통해 사용자에게 노출하는 단계
    를 포함하는 디지털 비디오 파일 관리 방법.
  2. 제1항에 있어서,
    상기 비디오 파일을 비디오 소스로부터 캡쳐하는 단계를 더 포함하는 디지털 비디오 파일 관리 방법.
  3. 제1항에 있어서,
    상기 컴퓨터는 운영 체제 및 그와 연관된 셸 인터페이스를 실행하고, 상기 셸 인터페이스는 상기 미디어 라이브러리를 포함하고, 상기 운영 체제를 통해 직접 상기 비디오 클립의 관리를 가능하게 하는 디지털 비디오 파일 관리 방법.
  4. 제3항에 있어서,
    상기 개체를 노출하는 단계는 사용자 조회에 응답하여 상기 셸을 통하여 상기 미디어 라이브러리로부터 상기 개체를 검색하는 단계를 포함하는 디지털 비디오 파일 관리 방법.
  5. 제1항에 있어서,
    상기 개체를 노출하는 단계는 상기 비디오 파일을 수정하지 않고, 상기 비디오 클립에 대한 적어도 하나의 동작을 허용하는 단계를 포함하는 디지털 비디오 파일 관리 방법.
  6. 제5항에 있어서,
    상기 비디오 클립에 대한 동작은 재생, 삭제, 잘라내기(trim) 및 결합 중 하나 이상을 포함하는 디지털 비디오 파일 관리 방법.
  7. 제1항에 있어서,
    상기 비디오 클립을 규정하는 단계는, 기록 시작 시간, 기록 종료 시간, 시간 코드 갭(gap)들, 프레임 컬러 속성, 이미지 안정도(steadiness) 및 기록 기간과 같은 특성들 중 하나 이상에 대하여 상기 비디오 파일을 분석하는 단계를 포함하는 디지털 비디오 파일 관리 방법.
  8. 제1항에 있어서,
    상기 클립을 상기 라이브러리를 통하여 사용자에게 직접 렌더링하는 단계를 더 포함하는 디지털 비디오 파일 관리 방법.
  9. 제1항에 있어서,
    상기 비디오 파일에 독립한 사용자 입력에 응답하여 상기 개체에 저장된 메타데이터를 수정하는 단계를 더 포함하는 디지털 비디오 파일 관리 방법.
  10. 제9항에 있어서,
    상기 사용자 입력은 상기 비디오 클립을 편집하기 위한 명령어를 포함하는 디지털 비디오 파일 관리 방법.
  11. 제10항에 있어서,
    상기 비디오 클립을 편집하기 위한 명령은 상기 비디오 클립을 잘라내기 위한, 상기 클립의 마크-인(mark-in) 위치 또는 상기 클립의 마크-아웃(mark-out) 위치에 대한 조정 또는 둘 다에 대한 조정을 포함하는 디지털 비디오 파일 관리 방법.
  12. 제1항에 있어서,
    상기 메타데이터는 엔트리 기반 텍스트 설명, 커버 아트(cover art), 썸네일(thumbnail), 시청각 DSP 특성 및 상호 참조 중 하나 이상을 포함하는 디지털 비디오 파일 관리 방법.
  13. 제1항에 있어서,
    상기 개체는 ID, 스트림 #, 타입, 언어 ID 인덱스, 설명 사이즈, 설명, 엔트리 레벨의 #, 컨텍스트 사이즈, 컨텍스트 및 엔트리 리스트들과 같은 필드들 중 하나 이상을 포함하는 디지털 비디오 파일 관리 방법.
  14. 제1항에 있어서,
    상기 개체는 적어도 하나의 엔트리 리스트 필드를 포함하고, 상기 엔트리 리스트 필드는, 엔트리들의 #, 엔트리들, 엔트리 타이틀 사이즈, 엔트리 타이틀, 시작 시간, 종료 시간, 시작 패킷 오프셋, 종료 패킷 오프셋, 대표 프레임 시간, 서브-엔트리들의 #, 서브 엔트리 인덱스들, 설명 데이터 사이즈, 설명 데이터 타입 및 설명 데이터와 같은 필드 중 하나 이상을 더 포함하는 디지털 비디오 파일 관리 방법.
  15. 제1항에 있어서,
    하나 이상의 컴퓨터 판독가능 매체가 제1항에 기재된 방법을 수행하기 위한 컴퓨터 실행가능 명령어들을 갖는 디지털 비디오 파일 관리 방법.
  16. 컴퓨터 상에서 하나 이상의 디지털 비디오 파일들을 관리하기 위한 컴퓨터 실행가능 명령어들을 갖는 컴퓨터 판독가능 매체로서,
    관리될 비디오 파일의 세그먼트를 포함하는 비디오 클립을 나타내는 메타데이터를 저장하기 위한 미디어 파일 시스템 개체; 및
    상기 컴퓨터의 운영 체제와 연관되고, 상기 개체를 노출하여 상기 운영 체제를 통해 직접 상기 비디오 클립의 관리를 가능하게 하는 셸 인터페이스
    를 포함하는 컴퓨터 판독가능 매체.
  17. 제16항에 있어서,
    상기 셸을 통해 상기 개체를 검색함으로써 상기 개체를 노출하기 위한 조회 컴포넌트를 더 포함하는 컴퓨터 판독가능 매체.
  18. 제16항에 있어서,
    상기 비디오 파일을 수정하지 않고 상기 비디오 클립에 대해 적어도 하나의 동작을 수행하기 위한 편집 컴포넌트를 더 포함하고, 상기 동작은 재생, 삭제, 잘라내기 및 결합 중 하나 이상을 포함하는 컴퓨터 판독가능 매체.
  19. 제16항에 있어서,
    상기 비디오 파일에 독립한 편집된 비디오 클립의 수정된 표 본(representative)을 저장하기 위한 업데이트된 미디어 파일 시스템 개체를 더 포함하는 컴퓨터 판독가능 매체.
  20. 제16항에 있어서,
    상기 메타데이터는 엔트리 기반 텍스트 설명, 커버 아트, 썸네일, 시청각 DSP 특성 및 상호 참조 중 하나 이상을 포함하는 컴퓨터 판독가능 매체.
KR1020077027127A 2005-05-27 2006-04-05 비디오 파일의 운영 체제 셸 관리 KR20080011210A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/139,119 2005-05-27
US11/139,119 US20060271855A1 (en) 2005-05-27 2005-05-27 Operating system shell management of video files

Publications (1)

Publication Number Publication Date
KR20080011210A true KR20080011210A (ko) 2008-01-31

Family

ID=37464880

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020077027127A KR20080011210A (ko) 2005-05-27 2006-04-05 비디오 파일의 운영 체제 셸 관리

Country Status (4)

Country Link
US (1) US20060271855A1 (ko)
KR (1) KR20080011210A (ko)
CN (1) CN101506890A (ko)
WO (1) WO2006130227A2 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120132465A (ko) * 2009-10-20 2012-12-05 퀴키, 인코퍼레이티드 키워드 및 스트링 입력에 기초한 애니메이트된 미디어를 어셈블링하는 방법 및 시스템
US9229421B2 (en) 2011-07-21 2016-01-05 Samsung Electronics Co., Ltd. Image forming apparatus having a developing cartridge and including a connection terminal to contact the developing cartridge
US10353942B2 (en) 2012-12-19 2019-07-16 Oath Inc. Method and system for storytelling on a computing device via user editing

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008204560A (ja) * 2007-02-21 2008-09-04 D & M Holdings Inc 再生装置、再生方法、プログラム及び記録媒体
US8898563B2 (en) * 2007-04-13 2014-11-25 Gvbb Holdings S.A.R.L. Editing apparatus and an editing method
US20090150580A1 (en) * 2007-12-06 2009-06-11 Aten International Co., Ltd. Method and system for computer management
US20090157921A1 (en) * 2007-12-12 2009-06-18 Aten International Co., Ltd. Kvm management system and method

Family Cites Families (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU4027393A (en) * 1992-04-10 1993-11-18 Avid Technology, Inc. Digital audio workstation providing digital storage and display of video information
US5604857A (en) * 1993-01-15 1997-02-18 Walmsley; Simon R. Render system for the rendering of storyboard structures on a real time animated system
US6181867B1 (en) * 1995-06-07 2001-01-30 Intervu, Inc. Video storage and retrieval system
US5825929A (en) * 1995-10-05 1998-10-20 Microsoft Corporation Transformation block optimization method
US8107015B1 (en) * 1996-06-07 2012-01-31 Virage, Incorporated Key frame selection
US6628303B1 (en) * 1996-07-29 2003-09-30 Avid Technology, Inc. Graphical user interface for a motion video planning and editing system for a computer
US20020120925A1 (en) * 2000-03-28 2002-08-29 Logan James D. Audio and video program recording, editing and playback systems using metadata
US6006234A (en) * 1997-10-31 1999-12-21 Oracle Corporation Logical groupings within a database
US6956593B1 (en) * 1998-09-15 2005-10-18 Microsoft Corporation User interface for creating, viewing and temporally positioning annotations for media content
US6356971B1 (en) * 1999-03-04 2002-03-12 Sony Corporation System for managing multimedia discs, tracks and files on a standalone computer
US7062532B1 (en) * 1999-03-25 2006-06-13 Autodesk, Inc. Method and apparatus for drawing collaboration on a network
US6807306B1 (en) * 1999-05-28 2004-10-19 Xerox Corporation Time-constrained keyframe selection method
US6424789B1 (en) * 1999-08-17 2002-07-23 Koninklijke Philips Electronics N.V. System and method for performing fast forward and slow motion speed changes in a video stream based on video content
US7016540B1 (en) * 1999-11-24 2006-03-21 Nec Corporation Method and system for segmentation, classification, and summarization of video images
US6597859B1 (en) * 1999-12-16 2003-07-22 Intel Corporation Method and apparatus for abstracting video data
US6678332B1 (en) * 2000-01-04 2004-01-13 Emc Corporation Seamless splicing of encoded MPEG video and audio
KR100698106B1 (ko) * 2000-03-07 2007-03-26 엘지전자 주식회사 엠펙(mpeg)압축 비디오 환경에서 계층적 혼합형장면 변화 검출 방법
WO2001072002A2 (en) * 2000-03-17 2001-09-27 America Online, Inc. Shared groups rostering system
US6760721B1 (en) * 2000-04-14 2004-07-06 Realnetworks, Inc. System and method of managing metadata data
US6882793B1 (en) * 2000-06-16 2005-04-19 Yesvideo, Inc. Video processing system
US6813313B2 (en) * 2000-07-06 2004-11-02 Mitsubishi Electric Research Laboratories, Inc. Method and system for high-level structure analysis and event detection in domain specific videos
WO2002008948A2 (en) * 2000-07-24 2002-01-31 Vivcom, Inc. System and method for indexing, searching, identifying, and editing portions of electronic multimedia files
US6724933B1 (en) * 2000-07-28 2004-04-20 Microsoft Corporation Media segmentation system and related methods
US20020038456A1 (en) * 2000-09-22 2002-03-28 Hansen Michael W. Method and system for the automatic production and distribution of media content using the internet
US7099946B2 (en) * 2000-11-13 2006-08-29 Canon Kabushiki Kaishsa Transferring a media browsing session from one device to a second device by transferring a session identifier and a session key to the second device
US20020180803A1 (en) * 2001-03-29 2002-12-05 Smartdisk Corporation Systems, methods and computer program products for managing multimedia content
US6721361B1 (en) * 2001-02-23 2004-04-13 Yesvideo.Com Video processing system including advanced scene break detection methods for fades, dissolves and flashes
US7089309B2 (en) * 2001-03-21 2006-08-08 Theplatform For Media, Inc. Method and system for managing and distributing digital media
US7072908B2 (en) * 2001-03-26 2006-07-04 Microsoft Corporation Methods and systems for synchronizing visualizations with audio streams
US6741996B1 (en) * 2001-04-18 2004-05-25 Microsoft Corporation Managing user clips
US20030052909A1 (en) * 2001-06-25 2003-03-20 Arcsoft, Inc. Real-time rendering of edited video stream
GB0118436D0 (en) * 2001-07-27 2001-09-19 Hewlett Packard Co Synchronised cameras with auto-exchange
JP3943880B2 (ja) * 2001-09-18 2007-07-11 キヤノン株式会社 動画データ処理装置及び方法
US7068309B2 (en) * 2001-10-09 2006-06-27 Microsoft Corp. Image exchange with image annotation
US6928613B1 (en) * 2001-11-30 2005-08-09 Victor Company Of Japan Organization, selection, and application of video effects according to zones
US7143362B2 (en) * 2001-12-28 2006-11-28 International Business Machines Corporation System and method for visualizing and navigating content in a graphical user interface
US20030131002A1 (en) * 2002-01-08 2003-07-10 Gennetten K. Douglas Method and apparatus for identifying a digital image and for accessing the digital image over a network
US7035435B2 (en) * 2002-05-07 2006-04-25 Hewlett-Packard Development Company, L.P. Scalable video summarization and navigation system and method
US7392296B2 (en) * 2002-06-19 2008-06-24 Eastman Kodak Company Method and computer software program for sharing images over a communication network among a plurality of users in accordance with a criteria
US7383508B2 (en) * 2002-06-19 2008-06-03 Microsoft Corporation Computer user interface for interacting with video cliplets generated from digital video
US7127120B2 (en) * 2002-11-01 2006-10-24 Microsoft Corporation Systems and methods for automatically editing a video
US7085755B2 (en) * 2002-11-07 2006-08-01 Thomson Global Resources Ag Electronic document repository management and access system
US7131059B2 (en) * 2002-12-31 2006-10-31 Hewlett-Packard Development Company, L.P. Scalably presenting a collection of media objects
FR2852769B1 (fr) * 2003-03-20 2005-09-16 Eastman Kodak Co Procede de partage de donnees multimedia
US7769794B2 (en) * 2003-03-24 2010-08-03 Microsoft Corporation User interface for a file system shell
US7823077B2 (en) * 2003-03-24 2010-10-26 Microsoft Corporation System and method for user modification of metadata in a shell browser
US7069308B2 (en) * 2003-06-16 2006-06-27 Friendster, Inc. System, method and apparatus for connecting users in an online computer system based on their relationships within social networks
US9615061B2 (en) * 2003-07-11 2017-04-04 Tvworks, Llc System and method for creating and presenting composite video-on-demand content
JP4314531B2 (ja) * 2003-08-22 2009-08-19 ソニー株式会社 再生装置および方法、並びにプログラム
US7869699B2 (en) * 2003-09-08 2011-01-11 Ati Technologies Ulc Method of intelligently applying real-time effects to video content that is being recorded
JP2005198165A (ja) * 2004-01-09 2005-07-21 Canon Inc 画像再生装置、画像再生方法、コンピュータプログラム及びコンピュータ読み取り可能な記録媒体
EP1557837A1 (en) * 2004-01-26 2005-07-27 Sony International (Europe) GmbH Redundancy elimination in a content-adaptive video preview system
US8788492B2 (en) * 2004-03-15 2014-07-22 Yahoo!, Inc. Search system and methods with integration of user annotations from a trust network
US20050249080A1 (en) * 2004-05-07 2005-11-10 Fuji Xerox Co., Ltd. Method and system for harvesting a media stream
US7975062B2 (en) * 2004-06-07 2011-07-05 Sling Media, Inc. Capturing and sharing media content
US20060053195A1 (en) * 2004-09-03 2006-03-09 Schneider Ronald E Systems and methods for collaboration
US20060104600A1 (en) * 2004-11-12 2006-05-18 Sfx Entertainment, Inc. Live concert/event video system and method
US8089563B2 (en) * 2005-06-17 2012-01-03 Fuji Xerox Co., Ltd. Method and system for analyzing fixed-camera video via the selection, visualization, and interaction with storyboard keyframes
US20070008321A1 (en) * 2005-07-11 2007-01-11 Eastman Kodak Company Identifying collection images with special events
US20070218448A1 (en) * 2006-02-08 2007-09-20 Tier One Performance Solutions Llc Methods and systems for efficient development of interactive multimedia electronic learning content

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120132465A (ko) * 2009-10-20 2012-12-05 퀴키, 인코퍼레이티드 키워드 및 스트링 입력에 기초한 애니메이트된 미디어를 어셈블링하는 방법 및 시스템
US10096145B2 (en) 2009-10-20 2018-10-09 Oath Inc. Method and system for assembling animated media based on keyword and string input
US9229421B2 (en) 2011-07-21 2016-01-05 Samsung Electronics Co., Ltd. Image forming apparatus having a developing cartridge and including a connection terminal to contact the developing cartridge
US10353942B2 (en) 2012-12-19 2019-07-16 Oath Inc. Method and system for storytelling on a computing device via user editing

Also Published As

Publication number Publication date
WO2006130227A2 (en) 2006-12-07
CN101506890A (zh) 2009-08-12
US20060271855A1 (en) 2006-11-30
WO2006130227A3 (en) 2009-04-23

Similar Documents

Publication Publication Date Title
US7676495B2 (en) Advanced streaming format table of contents object
US8180826B2 (en) Media sharing and authoring on the web
TWI223239B (en) Method and apparatus for simplifying the access of metadata
US20090100068A1 (en) Digital content Management system
KR100607969B1 (ko) 멀티미디어 플레이 리스트 재생 방법, 장치 및 그 방법을 수행하기 위한 프로그램 및 파일이 저장된 저장매체
US20050223037A1 (en) File management method and apparatus for controlling assets in multimedia appliances and information recording medium therefor
JP2004164823A (ja) 再生リスト内のグループを介した媒体コンテンツのナビゲート
CA2600207A1 (en) Method and system for providing distributed editing and storage of digital media over a network
JP2002351878A (ja) デジタルコンテンツ再生装置、データ取得システム、デジタルコンテンツ再生方法、メタデータ管理方法、電子透かし埋め込み方法、プログラム及び記録媒体
KR20080011210A (ko) 비디오 파일의 운영 체제 셸 관리
JP2002354423A (ja) コンテンツを格納するための方法
KR20060073921A (ko) Dv 메타데이터 추출
JP2005327257A (ja) マルチメディア応用機器における資産の制御のためのファイル管理方法、ファイル管理装置及び情報保存媒体
KR100453060B1 (ko) MPV(MultiPhotoVideo) 환경하에서자산이 위치하는 경로와 파일 이름을 나타내는 라스트유알엘 복구 방법
WO2007082169A2 (en) Automatic aggregation of content for use in an online video editing system
US7657538B2 (en) Server apparatus, data processing method, program, and communication method
US7675827B2 (en) Information processing apparatus, information processing method, and program
RU2324987C2 (ru) Устройство и способ отображения мультимедийных данных, объединенных с текстом, и носитель записи, содержащий программу для выполнения этого способа
US7610554B2 (en) Template-based multimedia capturing
US8023799B2 (en) Recording control device, recording control method, and program
US20070250533A1 (en) Method, Apparatus, System, and Computer Program Product for Generating or Updating a Metadata of a Multimedia File
US20050240626A1 (en) Method and apparatus for fixing up LastURL, and computer readable recording medium storing program for performing the method
US8046341B2 (en) Information processing apparatus for reproducing metadata and method, program, and recording medium
US7952638B2 (en) Information processing apparatus, information processing method, and computer readable storage medium for acquiring state information from a photographing apparatus
JP2004015436A (ja) 映像コンテンツ作成のためのプログラム,記録媒体,方法及び装置

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid