KR20080024137A - 대형 재생 리스트를 위한 재생 리스트 구조 - Google Patents

대형 재생 리스트를 위한 재생 리스트 구조 Download PDF

Info

Publication number
KR20080024137A
KR20080024137A KR1020077029753A KR20077029753A KR20080024137A KR 20080024137 A KR20080024137 A KR 20080024137A KR 1020077029753 A KR1020077029753 A KR 1020077029753A KR 20077029753 A KR20077029753 A KR 20077029753A KR 20080024137 A KR20080024137 A KR 20080024137A
Authority
KR
South Korea
Prior art keywords
playlist
media file
media
metadata
unit
Prior art date
Application number
KR1020077029753A
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 KR20080024137A publication Critical patent/KR20080024137A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/40Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
    • G06F16/43Querying
    • G06F16/438Presentation of query results
    • G06F16/4387Presentation of query results by the use of playlists
    • G06F16/4393Multimedia presentations, e.g. slide shows, multimedia albums
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/60Information retrieval; Database structures therefor; File system structures therefor of audio data
    • G06F16/63Querying
    • G06F16/638Presentation of query results
    • G06F16/639Presentation of query results using playlists
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B19/00Driving, starting, stopping record carriers not specifically of filamentary or web form, or of supports therefor; Control thereof; Control of operating function ; Driving both disc and head
    • G11B19/02Control of operating function, e.g. switching from recording to reproducing
    • G11B19/022Control panels
    • G11B19/025'Virtual' control panels, e.g. Graphical User Interface [GUI]
    • 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
    • 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/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]
    • 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/34Indicating arrangements 
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/21Disc-shaped record carriers characterised in that the disc is of read-only, rewritable, or recordable type
    • G11B2220/215Recordable discs
    • G11B2220/218Write-once discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2545CDs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2562DVDs [digital versatile discs]; Digital video discs; MMCDs; HDCDs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/60Solid state media
    • G11B2220/61Solid state media wherein solid state memory is used for storing A/V content
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/90Tape-like record carriers
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/912Applications of a database
    • Y10S707/913Multimedia
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/912Applications of a database
    • Y10S707/913Multimedia
    • Y10S707/916Audio
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/953Organization of data
    • Y10S707/954Relational

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Human Computer Interaction (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Management Or Editing Of Information On Record Carriers (AREA)
  • Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Television Signal Processing For Recording (AREA)

Abstract

컴퓨터 판독가능 매체 상에 저장된 미디어 파일들의 재생 리스트의 효율적인 네비게이션을 가능하게 하는 컴퓨터 구현 방법이 개시된다. 본 발명의 양태들은 하나 이상의 재생 리스트 유닛을 구비하도록 재생 리스트 구조를 정의한다. 각각의 재생 리스트 유닛은 재생 리스트 내의 하나 이상의 미디어 파일을 식별하며, 미디어 파일들에 대한 메타데이터를 포함한다. 소비자 전자 장치는 재생 리스트 유닛들을 검색하고, 그 안에 포함된 메타데이터를 사용자에게 표시하여 재생 리스트의 네비게이션을 가능하게 한다. 본 발명의 양태들은 소비자 전자 장치의 메모리 요구를 줄이며, 재생 리스트 네비게이션에 필요한 디스크 검색 동작들의 수를 줄인다.
재생 리스트 구조, 재생 리스트 유닛, 미디어 파일, 메타데이터, 검색 동작

Description

대형 재생 리스트를 위한 재생 리스트 구조{PLAYLIST STRUCTURE FOR LARGE PLAYLISTS}
<관련 출원의 상호 참조>
본 출원은, 현재 포기된 "압축 미디어 포맷 사양"(COMPRESSED MEDIA FORMAT SPECIFICATION)이라는 제목으로 2002년 10월 16일자로 출원된 미국 특허 가출원 번호 60/418,973의 이익을 주장하는, 본 명세서 참조로 포함된 "재생 리스트 내의 그룹들을 통한 미디어 콘텐츠의 네비게이팅"(Navigating Media Content via Groups within a Playlist)이라는 제목으로 2002년 10월 17일자로 출원되어 현재 계류중인 미국 특허 출원 번호 10/273,415의 부분 계속 출원이다.
최근의 기술 진보로 인하여, 컴퓨터 사용자들은 이제 그들의 퍼스널 또는 랩톱 컴퓨터 상에서 다양한 미디어 및 멀티미디어 콘텐츠를 재생하는 것과 같은 향상된 사용자 경험을 제공하는 많은 기능을 즐길 수 있다. 예를 들어, 오늘날 대부분의 컴퓨터는 컴팩트 디스크(CD)를 재생할 수 있으며, 따라서 사용자들은 그들의 컴퓨터에서 작업을 하면서 그들의 애호 음악 아티스트의 음악을 들을 수 있다. 또한, 많은 컴퓨터는 사용자들이 음악을 시청할 수 있게 하는 디지털 다기능 디스크(DVD) 드라이브를 구비한다.
몇몇 멀티미디어 환경에서, 컴퓨터는 동화상 전문가 그룹 오디오 계층- 3(MP3) 파일 및 윈도우 미디어 기술 오디오(WMA) 파일과 같은 압축 미디어 파일을 저장하는 컴퓨터 판독가능 매체에 대한 액세스를 갖는다. 미디어 파일이 컴퓨터 상에서 렌더링될 때, 일반적으로 컴퓨터는 미디어 파일에 대한 앨범, 아티스트, 장르, 연도 등을 설명하는 메타데이터를 저장하는 데이터베이스에 액세스한다. 일반적으로, 컴퓨터는 압축 미디어 파일들이 컴퓨터 상에서 재생될 때 메타데이터에 기초하여 미디어 파일들을 재생 리스트로 체계화한다. 예를 들어, 오디오 미디어 파일들의 경우, 파일들은 앨범, 아티스트, 장르, 연도, 또는 소정의 사용자 지정 선택 및 배열에 의해 체계화될 수 있다. 이것은 사용자들이 재생 리스트를 수동으로 생성하였는지의 여부에 관계없이 그들의 콘텐츠 모두에 액세스하는 것을 가능하게 한다.
그러나, 압축 미디어 파일들이 저전력 프로세서, 제한된 메모리 및 종종 제한된 표시 및 사용자 입력 능력을 갖는 휴대형 CD 재생기, 자동차 수신기, DVD 재생기 또는 소비자 전자 장치 상에서의 재생을 위해 컴퓨터에서 CD 또는 DVD와 같은 광학 포맷으로 전달될 때, 통상적으로 미디어 파일들은 보다 큰 컴퓨팅 전력을 사용하는 장치들 상에 호스트된 메타데이터 데이터베이스에 의해 제공되는 기능의 대부분을 잃는다. 재생 리스트는 재생할 파일들의 순차 리스트에 불과한 것으로 돌아간다.
또한, 많은 수의 파일을 갖는 재생 리스트는 저전력 장치가 네비게이트하기 어렵다. 예를 들어, 몇몇 기존 시스템은 컴퓨터 판독가능 매체 상에 미디어 파일들과 분리하여 메타데이터를 저장한다. 미디어 파일들을 렌더링하고 미디어 파일 들과 연관된 메타데이터를 표시하기 위하여, 기존 시스템들은 컴퓨터 판독가능 매체의 적어도 2개의 분리된 영역을 검색하여야 한다. 렌더링 장치가 디스크 검색 및 발견 동작을 위한 제한된 버퍼를 갖는 경우, 이러한 렌더링 장치는 대형 재생 리스트를 네비게이트할 수 없다. 예를 들어, 로우 엔드 휴대형 CD 재생기와 같은 렌더링 장치는 5초의 검색 시간을 가진 100 킬로바이트의 작업 메모리를 구비한 8비트 1MHz 프로세서만을 포함한다.
다른 시스템들은 미디어 파일 내에 메타데이터를 저장한다. 미디어 파일에 대한 메타데이터를 얻기 위해, 기존 시스템들은 재생 리스트 내의 각각의 미디어 파일을 열어 메타데이터를 얻고 표시해야 한다. 재생 리스트 내의 모든 파일의 개방은 느리고 복잡성을 증가시킨다. 기존 시스템들은 제한되지 않은 수의 미디어 파일을 지원하고 심지어 최저 전력 장치들 상에서도 재생할 수 있는 재생 리스트 구조를 제공하지 못한다.
따라서, 이들 및 다른 단점들 중 하나 이상을 해결하기 위하여, 대형 재생 리스트의 효율적인 네비게이션을 가능하게 하기 위한 시스템이 요망된다.
<발명의 요약>
본 발명의 실시예들은 재생 리스트 내의 콘텐츠에 대한 참조가 독립형이고, 분석하기 쉬우며, 크기가 고정된 재생 리스트 블록, 청크, 유닛 또는 다른 개별 요소들 내에 콘텐츠와 연관된 메타데이터와 함께 저장되는 재생 리스트 구조를 포함한다. 메타데이터는 저전력 프로세서, 제한된 메모리 및 제한된 표시 및 사용자 입력 능력을 갖는 소비자 전자 장치에 의한 액세스를 위해 컴퓨터 판독가능 매체 상에 재생 리스트를 저장할 때 유지된다. 재생 리스트 유닛은 소비자 전자 장치에 의한 효율적인 로딩을 가능하게 하기 위해 컴퓨터 판독가능 매체(예를 들어, CD 또는 DVD)의 섹터 크기에 맞춰진 크기를 갖는다. 로우 엔드 렌더링 장치 또는 소프트웨어는 하나 이상의 재생 리스트 유닛을 메모리에 로딩하여 완전한 메타데이터 및 재생 리스트를 취득하고 처리하면 된다. 일 실시예에서, 재생 리스트 유닛에 저장된 메타데이터는 미디어 파일에 대한 파일 및 디렉토리 정보, 미디어 파일 각각에 대한 메타데이터, 및 파일을 렌더링하기 위한 특정 재생 리스트 데이터를 포함한다.
로딩하기 쉬운 재생 리스트 유닛에 메타데이터 및 미디어 파일 참조를 저장함으로써, 본 발명의 양태들은 디스크 검색 및 발견 동작들의 수를 줄인다. 이러한 본 발명의 양태들은 또한 저전력 또는 제한된 메모리를 가진 렌더링 장치가 대형 재생 리스트를 처리하고 네비게이트하는 것을 가능하게 한다.
대안으로, 본 발명의 양태들은 다양한 다른 방법 및 장치를 포함할 수 있다.
다른 특징들은 일부는 자명하고, 일부는 이하에서 지시된다.
도 1은 본 발명이 구현될 수 있는 예시적인 미디어 환경을 나타내는 블록도이다.
도 2는 재생 리스트 구조를 나타내는 예시적인 블록도이다.
도 3은 재생 리스트 생성 소프트웨어의 동작을 나타내는 예시적인 흐름도이다.
도 4는 재생 리스트 유닛의 생성을 나타내는 예시적인 흐름도이다.
도 5는 재생 리스트 유닛을 이용한 재생 리스트 재생을 나타내는 예시적인 흐름도이다.
도 6은 본 발명의 양태들이 구현될 수 있는 적절한 컴퓨팅 시스템 환경의 일례를 나타내는 블록도이다.
부록 A는 본 발명의 양태들의 재생 리스트 구조에 대한 예시적인 그룹 데이터를 포함한다.
도면들 전반에서 대응하는 참조 문자들은 대응하는 부분들을 지시한다.
먼저, 도 1을 참조하면, 블록도는 본 발명이 구현될 수 있는 예시적인 미디어 환경을 나타낸다. 시스템(100)은 오디오 데이터, 비디오 데이터, 및/또는 정지 화상 데이터를 포함하는 미디어 콘텐츠를 제공하는 하나 이상의 소비자 전자 장치(112)에 결합된 하나 이상의 컴퓨터(102)를 구비한다. 예를 들어, 장치(112)는 CD 재생기(104), 캠코더(106) 또는 카메라(108)를 포함할 수 있다. 또한, 장치(112)는 다른 퍼스널 컴퓨터, 이동식 하드 드라이브, 네트워크 공유기, MP3 재생기, 자동차의 오디오 시스템, PDA, 셀룰러 전화 등을 포함할 수 있다. 소비자 전자 장치(112)는 사용자가 소비자 전자 장치(112) 상에 구현되는 콘텐츠를 경험할 수 있도록 디지털 미디어를 렌더링하도록 구성된 임의의 적절한 렌더링 필터 또는 미디어 재생기 또는 장치(예를 들어, 휴대형 미디어 장치)를 포함할 수 있다. 예를 들어, 적절한 미디어 재생기 애플리케이션은 CD 미디어 재생기 및 디지털 다기능 디스크 또는 디지털 비디오 디스크(DVD) 미디어 재생기를 포함한다. 컴퓨터(102)는 또한 프로세서 및 렌더링 소프트웨어(예를 들어, 미디어 재생기)를 포함하는 렌더링 능력을 갖는다.
본 발명의 양태들은 사용자에게 능력을 제공하거나, 구체적으로 컴퓨팅 장치(112) 상에서 실행되는 미디어 재생기 프로그램이 소위 메타데이터에 액세스하고 검색하여 사용자에게 표시하는 것을 가능하게 한다. 이 분야의 전문가들은 메타데이터에 친숙한데, 이는 단순히 데이터에 대한 정보이다. 도시된 환경과 관련하여, 메타데이터는 미디어 재생기 상에서 재생되고 있는 디지털 미디어 파일의 특정 콘텐츠와 관련된 정보를 포함한다. 기본 메타데이터는 제목, 연주자, 장르, 트랙 번호 등을 포함하지만 이에 제한되는 것은 아니다. 확장 메타데이터는 커버 아트, 작곡자, 콘텐츠의 설명, 연주자 일대기, 논평, 순위, 관련 연주자, 유사한 품목을 살 수 있는 장소, 다가오는 콘서트, 티켓 판매, 구매 기회를 포함하는 다른 관련 경험에 대한 URL, 스튜디오, 감독 등을 포함하지만 이에 제한되는 것은 아니다. 일 실시예에서, 확장 메타데이터는 2개의 주요 카테고리, 즉 검색 또는 다운로드된 메타데이터 및 미디어 파일로부터 계산된 메타데이터(파일 스트림의 디지털 신호 처리)로 체계화될 수 있다. 메타데이터는 미디어 파일 내에 저장되거나, 미디어 파일이 검색할 수 있고 미디어 파일에게 알려진 다른 파일에 저장될 수 있다.
일례에서, 데이터 통신 네트워크(113)를 통해 메타데이터 제공자(111)로부터 추가 메타데이터가 이용될 수 있다. 컴퓨터(102) 및 메타데이터 제공자(111)는 데이터 통신 네트워크(113)에 결합된다. 네트워크(113)는 일례에서 인터넷을 포함하지만, 본 발명의 가르침은 임의의 데이터 통신 네트워크에 적용될 수 있다. 데이터 통신 네트워크는 예를 들어 클라이언트/서버 통신 또는 피어 투 피어 접속을 지원할 수 있다.
소비자 전자 장치(112) 또는 컴퓨터(102)는 하나 이상의 컴퓨터 판독가능 매체(예를 들어, 메모리 영역(122))에 액세스할 수 있다. 메모리 영역(122)은 도 1의 임의의 소비자 전자 장치(112)의 일부인 것으로 도시되지만, 메모리 영역(122)은 소비자 전자 장치들(112)로부터 분리될 수 있으며, 예를 들어 네트워크를 통해 소비자 전자 장치들(112)이 여전히 액세스할 수 있다. 일 실시예에서, 메모리 영역(122)은 재생 리스트(114)를 저장하기 위한 하나 이상의 컴퓨터 판독가능 매체를 포함한다. 도 1에서, 재생 리스트(114)는 재생 리스트 유닛 #1 내지 재생 리스트 유닛 #N과 같은 재생 리스트 유닛들(116)을 갖는다. 재생 리스트 유닛들(116) 각각은 재생 리스트 유닛(116)과 연관된 미디어 파일들 각각에 대한 도 2의 '콘텐츠 엔트리' 필드와 같은 콘텐츠 엔트리 필드(도시되지 않음) 및 각각의 콘텐츠 엔트리 필드에 대한 도 2의 '텍스트 1에 대한 오프셋' 필드와 같은 메타데이터 필드(도시되지 않음)를 포함한다. 콘텐츠 엔트리 필드는 미디어 파일의 위치를 식별하는 미디어 파일 참조를 저장한다. 메타데이터 필드는 콘텐츠 엔트리 필드와 연관된 미디어 파일과 연관된 메타데이터를 저장한다. 재생 리스트 구조는 아래에서 도 2를 참조하여 후술된다.
일 실시예에서, 소비자 전자 장치(112)(예를 들어, 휴대형 미디어 장치)는 관련된 복수의 미디어 파일을 갖는 재생 리스트(114)를 네비게이트하기 위한 컴퓨터 실행가능 명령들을 실행하도록 구성된다. 컴퓨터 실행가능 명령들은 하나 이상의 컴포넌트로 체계화될 수 있다. 예를 들어, 소비자 전자 장치(112)는 재생 리스트 컴포넌트(118), 분석기 컴포넌트(120), 사용자 인터페이스 컴포넌트(122) 및 재생 컴포넌트(124)를 저장할 수 있다. 재생 리스트 컴포넌트(118)는 메모리 영역(122)에 저장된 복수의 재생 리스트 유닛(116) 중 하나를 검색, 취득, 아니면 수신한다. 재생 리스트 유닛들(116)은 집합적으로 재생 리스트(114)를 나타낸다. 분석기 컴포넌트(120)는 인터페이스 컴포넌트에 의해 검색된 재생 리스트(116) 내에 저장된 메타데이터를 취득한다. 메타데이터는 재생 리스트(114)와 연관된 미디어 파일을 설명한다. 사용자 인터페이스 컴포넌트(122)는 사용자에게 취득된 메타데이터 또는 그 일부를 표시하여, 표시 메타데이터와 연관된 미디어 파일의 사용자 선택을 가능하게 한다. 사용자 인터페이스 컴포넌트(122)는 사용자로부터 미디어 파일 선택을 수신한다. 재생 컴포넌트(124)는 미디어 파일 선택과 연관된 미디어 파일 참조를 통해 사용자에게 선택된 미디어 파일을 렌더링한다. 일 실시예에서, 재생 리스트 유닛들(116) 각각은 메모리 영역과 연관된 섹터 크기로부터 도출된 크기를 갖는다.
컴퓨터(102) 또는 다른 장치 또는 소프트웨어는 또한 본 발명의 양태들을 구현하기 위한 하나 이상의 예시적인 모듈을 갖는다. 예를 들어, 컴퓨터(102)는 재생 리스트(114)의 효율적인 네비게이션을 가능하게 하기 위해 본 명세서에서 설명되는 효율적인 구조를 갖는 재생 리스트(114)를 생성하기 위한 컴퓨터 실행가능 명령들을 가질 수 있다. 이러한 컴퓨터 실행가능 명령들은 도 3에서 설명된다.
이 분야의 전문가들은 본 발명의 소프트웨어가 임의 수 및 체계의 컴포넌트들 또는 모듈들로 구현될 수 있다는 것을 알 것이다. 즉, 본 발명은 재생 리스트 컴포넌트(118), 분석기 컴포넌트(120), 사용자 인터페이스 컴포넌트(122), 재생 컴포넌트(124) 및 컴퓨터(102)에서 실행되는 컴퓨터 실행가능 명령들의 특정 구성으로 제한되는 것이 아니라, 본 명세서에서 설명되는 것보다 많거나 적은 개별 기능을 갖는 많거나 적은 컴포넌트들을 포함할 수 있다. 또한, 본 발명은 미디어 재생기, 운영 체제, DVD 레코더, CD 레코더, 비디오 카메라, 하드 드라이브, 플래시 드라이브, PDA, 무선 장치(예를 들어, 셀룰러 전화) 등에서 하드웨어, 소프트웨어, 또는 이들의 조합으로 구현될 수 있다.
이어서, 도 2를 참조하면, 예시적인 블록도는 재생 리스트 구조를 도시한다. 일 실시예에서, 각각의 재생 리스트는 nnnnnnnn.HMT 파일과 같은 특이한 <playlist>.HMT 파일로서 표현되는데, 여기서 nnnnnnnn은 재생 리스트 식별자를 표현하는 선두 제로가 없는 16진수의 대문자 스트링 표현이다. 재생 리스트는 다음의 미디어 파일들, 즉 오디오 파일, 비디오 파일, 이미지 파일(이미지가 표시되어야 하는 최소 지속 기간은 물론, 각 이미지 사이에 이용할 전이와 함께), 및 병렬 이미지(예를 들어, 배경 오디오를 가진 이미지 슬라이드쇼) 중 하나 이상을 포함할 수 있다. 또한, 일 실시예에서, 각 재생 리스트는 그룹들로 체계화될 수 있다. 4개의 상이한 유형의 재생 리스트 그룹, 즉 오디오 재생 리스트 그룹, 비디오 재생 리스트 그룹, 타이밍된 이미지 재생 리스트 그룹, 및 병렬 이미지 오디오 재생 리스트 그룹이 존재한다. 오디오 재생 리스트 그룹은 하나 이상의 오디오 파일을 갖는다. 비디오 재생 리스트 그룹은 하나 이상의 비디오 파일을 가지며, 비디오 파일을 재생할 때 사용할 시작점 및 종료점을 지정하는 능력을 지원한다. 타이밍된 이미지 재생 리스트 그룹은 하나 이상의 이미지 파일을 가지며, 이미지가 표시되어야 하는 최소 지속 기간은 물론 각 이미지 사이에 이용할 전이를 지정하는 능력을 지원한다. 병렬 이미지 재생 리스트 그룹은 배경 오디오를 갖는 이미지 슬라이드쇼를 가능하게 한다.
도 2의 재생 리스트 구조는 일반적으로 파일 헤더, 오프셋 그룹 테이블, 그룹명 테이블, 및 재생 리스트 유닛 데이터를 포함한다. 재기입 가능 매체 상에 생성된 재생 리스트는 또한 미래의 편집을 허용하는 패딩을 포함한다. 예를 들어, 패딩은 오프셋 그룹 테이블 이후는 물론 그룹명 테이블 이후일 것이다. 일 실시예에서, 패딩의 크기는 각 패딩 섹션에 대하여 최소 2,048 바이트이다. 본 발명의 재생 리스트 저작 소프트웨어가 재생 리스트에 대해 많은 수의 편집이 이루어질 것을 예상하는 경우, 증가된 패딩 크기가 보증될 수 있다.
예시적인 파일 헤더가 아래에 보여진다.
테이블 1. 파일 헤더
오프셋 길이 필드명
0 8 식별자
8 2 버전
10 4 재생 리스트 파일의 크기
14 1 재생 리스트 요약 유형
15 1 예약
16 4 재생 리스트 그룹들의 수
20 4 재생 리스트 유닛들의 수
24 2 재생 리스트 유닛의 크기
26 4 이용 가능한 다음 그룹 ID
30 4 그룹명 테이블에 대한 오프셋
34 4 재생 리스트 유닛 데이터에 대한 오프셋
38 4 그룹명 테이블 이후의 패딩에 대한 오프셋
42 64 저작 애플리케이션의 명칭
식별자 필드는 텍스트 스트링 "PLISTHMT"와 같은 8 바이트 엔트리이다. 버전 필드는 이 재생 리스트 파일이 따르는 사양의 종속 버전을 표현하는 2 바이트 엔트리이다. '재생 리스트 파일의 크기' 필드는 이 <Playlist>.HMT 파일의 바이트 크기를 포함하는 4 바이트 엔트리이다. '재생 리스트 요약 유형' 필드는 재생 리스트의 유형(예를 들어, 오디오, 비디오, 타이밍된 이미지, 또는 병렬 이미지)을 지정하는 1 바이트 엔트리이다. '재생 리스트 그룹들의 수' 필드는 재생 리스트 그룹들의 수량을 표현하는 4 바이트 엔트리이다. '재생 리스트 유닛들의 수' 필드는 이 재생 리스트 파일 내의 재생 리스트 유닛들의 수량을 표현하는 4 바이트 엔트리이다. '재생 리스트 유닛의 크기' 필드는 이 재생 리스트 파일 내의 재생 리스트 유닛들의 바이트 크기를 표현하는 1 바이트 엔트리이다. '다음 이용 가능 그룹 ID' 필드는 이 재생 리스트 파일 내의 다음 이용 가능 그룹 식별자를 표현하는 4 바이트 엔트리이다. '그룹명 테이블에 대한 오프셋' 필드는 파일의 시작에서 그룹명 테이블의 시작까지의 바이트 오프셋을 표현하는 4 바이트 엔트리이다. '재생 리스트 유닛 데이터에 대한 오프셋' 필드는 파일의 시작에서 재생 리스트 유닛 데이터의 시작까지의 바이트 오프셋을 표현하는 4 바이트 엔트리이다. 그룹명 테이블 이후의 패딩에 대한 오프셋' 필드는 파일의 시작에서 그룹명 테이블 이후의 패딩의 시작까지의 바이트 오프셋을 표현하는 4 바이트 엔트리이다. '저작 애플리케이션의 명칭' 필드는 저작 애플리케이션의 명칭을 표현하는 64 바이트 엔트리이다.
오프셋 그룹 테이블은 하나 이상의 오프셋 그룹 엔트리의 리스트를 포함한다. 오프셋 그룹 테이블 내의 오프셋 그룹 엔트리들은 재생 리스트 파일 내의 그룹들의 재생 순서로 리스트된다. 예시적인 오프셋 그룹 엔트리가 아래의 테이블에 도시되어 있다.
테이블 2. 오프셋 그룹 엔트리
오프셋 길이 필드명
0 4 그룹 ID
4 2 그룹 내 파일 인덱스 수
6 2 그룹 내 재생 리스트 유닛 수
8 1 재생 리스트 그룹 유형
9 1 예약
10 4 개시 재생 리스트 유닛 인덱스
14 4 그룹명에 대한 오프셋
'그룹 ID' 필드는 이 오프셋 그룹 엔트리 내의 그룹의 식별자를 표현하는 4 바이트 엔트리이다. '그룹 내 파일 인덱스 수' 필드는 이 그룹 내에서 참조되는 미디어 파일들의 수를 표현하는 2 바이트 엔트리이다. 예를 들어, A, B, C, B의 순서로 파일들 A, B 및 C를 참조하는 재생 리스트 그룹은 3이 아니라 4의 값을 가질 것이다. '그룹 내 재생 리스트 유닛 수' 필드는 이 그룹을 포함하는 재생 리스트 유닛들의 수를 표현하는 2 바이트 엔트리이다. '재생 리스트 그룹 유형' 필드는 아래의 테이블에서 정의되는 바와 같이 재생 리스트 그룹의 유형을 표현하는 1 바이트 엔트리이다.
테이블 3. 재생 리스트 그룹 유형
재생 리스트 그룹 유형
0 오디오 재생 리스트 그룹
1 비디오 재생 리스트 그룹
2 타이밍된 이미지 재생 리스트 그룹
3 병렬 이미지 오디오 재생 리스트 그룹
4-255 예약
'개시 재생 리스트 유닛 인덱스' 필드는 이 그룹을 포함하는 첫 번째 재생 리스트 유닛의 인덱스를 표현하는 4 바이트 엔트리이다. '그룹명에 대한 오프셋' 필드는 재생 리스트 파일의 시작에서 그룹명 길이 필드까지의 바이트 오프셋을 표현하는 4 바이트 엔트리이다.
그룹명 테이블은 하나 이상의 그룹명 엔트리의 리스트를 포함한다. 각 그룹명 엔트리는 아래의 예시적인 포맷을 이용하는 그룹명을 포함한다.
테이블 4. 그룹명 엔트리
오프셋 길이 필드명
0 2 그룹명 길이
2 가변 그룹명
'그룹명 길이' 필드는 그룹명의 바이트 길이를 표현하는 2 바이트 엔트리이다. '그룹명' 필드는 텍스트 스트링 그룹명이다.
재생 리스트 유닛은 하나 이상의 미디어 파일을 참조하는 고정 크기 블록이다. 일 실시예에서, 10-15개의 미디어 파일이 단일 재생 리스트 유닛에서 참조된다. 재생 리스트가 재생 리스트 그룹들로 더 체계화되는 실시예에서, 재생 리스트 유닛은 하나 이상의 그룹을 포함할 수 있다. 또한, 하나의 재생 리스트 그룹은 다수의 재생 리스트 유닛에 걸칠 수 있다. 재생 리스트 유닛들 각각은 재생 리스트 그룹의 모두 또는 일부를 렌더링하기 위한 데이터를 포함한다. 이 데이터는 재생기가 매우 큰 재생 리스트를 렌더링하는 데 필요한 메모리를 낮춘다. 재생기는 적어도 하나의 재생 리스트를 임의의 주어진 시간에 메모리에 유지하는 데 충분한 메모리를 갖기만 하면 된다.
예시적인 재생 리스트 유닛은 재생 리스트 유닛 헤더, 디렉토리 테이블, 콘텐츠 테이블, 그룹 데이터, 및 아래에 나타나는 바와 같은 콘텐츠의 파일명을 포함한다. 비어 있는 재생 리스트 유닛들이 재생 리스트 파일 내에 있을 수 있다. 비어 있는 재생 리스트 유닛은 이전 및 '다음 재생 리스트 유닛 인덱스' 필드들 외에는 모든 필드가 제로인 재생 리스트 유닛 헤더만을 포함한다. 재생 리스트 유닛 내부의 오프셋들은 재생 리스트 유닛의 시작에 상대적이다. 이것은 각 재생 리스트 유닛이 어떠한 다른 정보 없이도 해석될 수 있는 독립형 유닛인 것을 가능하게 한다. DVD 미디어에 대해, 재생 리스트 유닛 크기는 DVD 미디어의 섹터 크기에 대응하는 2,048 바이트이다. 또한, 재생 리스트 유닛들은 재생 순서로 존재한다. 일 실시예에서, 재생 리스트 유닛들은 동일한 크기를 갖지만, 본 발명은 상이한 크기(배수)의 재생 리스트들과 함께 동작할 수 있다.
테이블 5. 재생 리스트 유닛 구조
재생 리스트 유닛 헤더
디렉토리 테이블
콘텐츠 테이블
그룹 데이터
패딩
파일명/텍스트 스트링
각 재생 리스트 유닛의 '파일명/텍스트 스트링' 필드는 재생 리스트 유닛 내의 파일들에 대한 텍스트 데이터(예를 들어, 메타데이터)를 포함하는 바이트들의 연속 섹션이다. 이 테스트 데이터는 예를 들어 파일명, 디렉토리명, 및 재생 리스트 유닛 내의 파일들에 대한 텍스트 메타데이터 및 관련 그룹명을 포함한다. 스트링들 각각은 텍스트 데이터 구조로서 포맷된다. 일 실시예에서, 본 발명의 저작 애플리케이션은 '파일명/텍스트 스트링' 필드에 중복 스트링들을 추가하지 않음으로써 공간을 보존하며, 대신에 저작 애플리케이션은 '파일명/텍스트 스트링 영역'에서 하나의 인스턴스를 참조한다.
예시적인 재생 리스트 유닛 헤더가 아래에 보여진다.
테이블 6. 재생 리스트 유닛 헤더
오프셋 길이 필드명
0 4 이전 재생 리스트 유닛 인덱스
4 4 다음 재생 리스트 유닛 인덱스
8 2 재생 리스트 유닛 내의 디렉토리 수
10 2 재생 리스트 유닛 내의 콘텐츠 수
12 2 재생 리스트 유닛 내의 그룹 수
14 2 콘텐츠 테이블에 대한 오프셋
16 2 그룹 데이터에 대한 오프셋
18 2 패딩에 대한 오프셋
20 2 파일명/텍스트 스트링에 대한 오프셋
'이전 재생 리스트 유닛 인덱스' 필드는 현재의 재생 리스트 유닛에 선행하는 재생 리스트 유닛의 인덱스를 표현하는 4 바이트 엔트리이다. 제로 값은 현재 재생 리스트 유닛이 최초 재생 리스트 유닛임을 지시한다. '다음 재생 리스트 유닛 인덱스' 필드는 다음 재생 리스트 유닛의 인덱스를 표현하는 4 바이트 엔트리이다. 제로 값은 현재의 재생 리스트가 최종 재생 리스트 유닛임을 지시한다. '재생 리스트 유닛 내의 디렉토리 수' 필드는 현재의 재생 리스트 유닛 내의 디렉토리 테이블 엔트리들의 수를 표현하는 2 바이트 엔트리이다. '재생 리스트 유닛 내의 콘텐츠 수' 필드는 현재의 재생 리스트 유닛에 포함된 콘텐츠 엔트리들의 수를 표현하는 2 바이트 엔트리이다. '재생 리스트 유닛 내의 그룹 수' 필드는 부분 그룹들을 포함하는 이 재생 리스트 유닛에 포함된 그룹들의 수를 표현하는 2 바이트 엔트리이다. '콘텐츠 테이블에 대한 오프셋' 필드는 재생 리스트 유닛의 시작에서 콘텐츠 테이블까지의 바이트 오프셋을 표현하는 2 바이트 엔트리이다. '그룹 데이터에 대한 오프셋' 필드는 재생 리스트 유닛의 시작에서 그룹 데이터까지의 바이트 오프셋을 표현하는 2 바이트 엔트리이다. '패딩에 대한 오프셋' 필드는 재생 리스트 유닛의 시작에서 패딩까지의 바이트 오프셋을 표현하는 2 바이트 엔트리이다. '파일명/텍스트 스트링에 대한 오프셋' 필드는 재생 리스트 유닛의 시작에서 파일명/텍스트 데이터까지의 바이트 오프셋을 표현하는 2 바이트 엔트리이다.
아래에 도시된 바와 같이 재생 리스트 유닛 내의 디렉토리 테이블은 메모리 저장 최적화를 위해 동일 재생 리스트 유닛의 콘텐츠 테이블에서 참조되는 디렉토리들만을 포함한다. 아래의 예시적인 디렉토리 테이블은 재생 리스트 유닛 내의 미디어 파일들과 연관된 하나 이상의 디렉토리 경로를 저장한다.
테이블 7. 디렉토리 테이블
길이 필드명
2 부모 디렉토리 번호 #1
2 디렉토리명 #1에 대한 오프셋
4 디렉토리 ID #1
...
2 부모 디렉토리 번호 #n
2 디렉토리명 #n에 대한 오프셋
4 디렉토리 ID #n
'부모 디렉토리 번호' 필드는 부모 디렉토리에 대한 디렉토리 테이블 내의 인덱스를 표현하는 2 바이트 엔트리이다. '디렉토리명에 대한 오프셋' 필드는 현재의 재생 리스트 유닛의 시작에서 디렉토리명에 대한 텍스트 데이터까지의 오프셋을 표현하는 2 바이트 엔트리이다. '디렉토리 ID' 필드는 이 디렉토리에 대한 디렉토리 식별자를 표현하는 4 바이트 엔트리이다.
콘텐츠 테이블은 콘텐츠 엔트리들의 리스트를 포함한다. 재생 리스트 유닛에서 참조되는 각각의 고유 파일에 대하여 하나의 콘텐츠 엔트리가 존재한다. 예시적인 콘텐츠 엔트리가 아래의 테이블에 정의되는 바와 같이 포맷된다.
테이블 8. 콘텐츠 엔트리
오프셋 길이 필드명
0 2 파일 유형
2 2 특수 플래그
4 4 미디어 파일 ID
8 2 디렉토리 수
10 2 트랙 번호
12 4 지속 기간
16 2 수직 크기
18 2 수평 크기
20 2 텍스트 1에 대한 오프셋
22 2 텍스트 2에 대한 오프셋
24 2 텍스트 3에 대한 오프셋
26 2 텍스트 4에 대한 오프셋
28 2 텍스트 5에 대한 오프셋
30 2 파일명에 대한 오프셋
'파일 유형' 필드는 파일 유형(예를 들어, 데이터 인코딩 포맷 및 파일 포맷)을 표현하는 2 바이트 엔트리이다. '특수 플래그' 필드는 이 파일의 특수 속성들을 요약하는 2 바이트 엔트리이다. '미디어 파일 ID' 필드는 현재의 미디어 파일 엔트리에 대응하는 식별자를 표현하는 4 바이트 엔트리이다. '디렉토리 수' 필드는 현재의 미디어 파일을 포함하는 디렉토리에 대한 디렉토리 테이블 내의 인덱스를 표현하는 2 바이트 엔트리이다. 1의 값은 디렉토리 테이블에 리스트된 첫 번째 디렉토리를 지시한다. '트랙 번호' 필드는 오디오 파일의 트랙 번호를 포함하는 2 바이트 엔트리이다. 제로 값은 트랙 번호가 없음을 지시한다. 이미지 파일 및 비디오 파일은 이 필드가 제로로 설정된다. 지속 기간 필드는 현재의 미디어 파일의 밀리초 단위의 지속 기간을 포함하는 4 바이트 엔트리이다. 이미지 파일은 제로 값을 갖는다. '수직 크기' 필드는 이미지 또는 오디오 파일의 픽셀 단위의 수직 크기를 표현하는 2 바이트 엔트리이다. 오디오 파일은 제로 값을 갖는다. '수평 크기' 필드는 이미지 또는 비디오 파일의 픽셀 단위의 수평 크기를 표현하는 2 바이트 엔트리이다. 오디오 파일은 제로 값을 갖는다.
일 실시예에서, 각 미디어 파일과 연관된 메타데이터는 텍스트 1, 텍스트 2, 텍스트 3, 텍스트 4 및 텍스트 5와 같은 필드들로 체계화된다. 텍스트 필드들 각각 내의 메타데이터는 메타데이터와 연관된 미디어 파일의 유형에 따라 앨범, 아티스트, 및 영화 제목과 같은 특정 메타데이터를 표현할 수 있다. '텍스트 1에 대한 오프셋' 필드는 현재 재생 리스트 유닛의 시작에서 텍스트 1 데이터에 대한 텍스트 데이터까지의 오프셋을 표현하는 2 바이트 엔트리이다. '텍스트 2에 대한 오프셋' 필드는 현재 재생 리스트 유닛의 시작에서 텍스트 2 데이터에 대한 텍스트 데이터까지의 오프셋을 표현하는 2 바이트 엔트리이다. '텍스트 3에 대한 오프셋' 필드는 현재 재생 리스트 유닛의 시작에서 텍스트 3 데이터에 대한 텍스트 데이터까지의 오프셋을 표현하는 2 바이트 엔트리이다. '텍스트 4에 대한 오프셋' 필드는 현재 재생 리스트 유닛의 시작에서 텍스트 4 데이터에 대한 텍스트 데이터까지의 오프셋을 표현하는 2 바이트 엔트리이다. '텍스트 5에 대한 오프셋' 필드는 현재 재생 리스트 유닛의 시작에서 텍스트 5 데이터에 대한 텍스트 데이터까지의 오프셋을 표현하는 2 바이트 엔트리이다. '파일명에 대한 오프셋' 필드는 현재 재생 리스트 유닛의 시작에서 현재의 미디어 파일의 파일명을 포함하는 텍스트 데이터 구조까지의 오프셋을 표현하는 2 바이트 엔트리이다.
메타데이터의 콘텐츠 엔트리 내의 텍스트 필드들로의 예시적인 맵핑이 아래 테이블에 요약되어 있다.
테이블 9. 텍스트 맵핑
오디오 파일 이미지 파일 비디오 파일
텍스트 1 오디오 제목 이미지 제목 비디오 제목
텍스트 2 아티스트명 생성 장치명 아티스트명
텍스트 3 작곡자명 취해진 데이터 이미지 날짜
텍스트 4 앨범명 이벤트명 이벤트명
텍스트 5 장르명 주제 장르명
'그룹 데이터' 필드는 부록 A에서 설명된다.
이어서, 도 3을 참조하면, 예시적인 흐름도가 재생 리스트 생성 소프트웨어의 동작을 나타낸다. 본 발명은 도 2에 도시된 바와 같은 재생 리스트 구조를 채우기 위한 재생 리스트 생성 소프트웨어, 재생 리스트 저작 소프트웨어 등을 포함한다. 본 발명의 재생 리스트 저작 방법은 메타데이터와 콘텐츠(예를 들어, 미디어 파일들) 사이에 재생 리스트 유닛 공간을 할당한다. 예를 들어, 재생 리스트 유닛은 하나의 미디어 파일 참조 및 모든 메타데이터를 포함할 수 있다. 일 실시예에서, 재생 리스트 유닛들 모두는 재생 리스트 유닛들을 저장하는 컴퓨터 판독가능 매체의 섹터 크기로부터 도출되는 동일한 크기를 갖는다. 예를 들어, 재생 리스트 유닛의 크기는 DVD 미디어에 대해 2,048 바이트일 수 있다.
본 발명은 도 3에 도시된 바와 같이 미디어 파일들의 재생 리스트의 효율적인 네비게이션을 가능하게 하는 컴퓨터 구현 방법을 포함한다. 컴퓨터 구현 방법은 미디어 파일들을 렌더링하기 전에 미디어 파일들의 사용자 선택을 돕는다. 컴퓨터 구현 방법은 단계(302)에서 재생 리스트와 연관된 하나 이상의 미디어 파일을 식별하는 단계 및 단계(304)에서 식별된 미디어 파일에 대한 미디어 파일 참조를 정의하는 단계를 포함한다. 일 실시예에서, 미디어 파일 참조를 정의하는 단계는 식별된 미디어 파일 각각에 대한 포인트를 정의하는 단계를 포함한다. 컴퓨터 구현 방법은 또한 단계(306)에서 식별된 미디어 파일 각각에 대응하는 메타데이터를 검색하는(예를 들어, 정의된 미디어 파일 참조를 통해) 단계를 포함한다. 컴퓨터 구현 방법은 또한 단계(308)에서 정의된 미디어 파일 참조 및 검색된 메타데이터를 하나 이상의 재생 리스트 유닛에 저장하는 단계를 포함한다. 예를 들어, 컴퓨터 구현 방법은 정의된 미디어 파일 참조 및 검색된 메타데이터로 도 2의 재생 리스트 데이터 구조를 채운다. 재생 리스트 유닛들은 집합적으로 재생 리스트를 구성한다.
본 발명은 특정 재생 리스트 저작 방법으로 제한되지 않는다. 다양한 재생 리스트 저작 방법이 본 발명의 범위 내에 있다. 특정 예에서, 본 발명의 재생 리스트 저작 방법은 2개의 재생 리스트 유닛 데이터 구조를 동시에 채운다. 재생 리스트 유닛 데이터 구조들 중 하나의 크기가 재생 리스트 크기를 초과하는 경우, 방법은 나머지 재생 리스트 유닛을 "풀" 재생 리스트 유닛으로 간주한다.
본 발명의 재생 리스트 저작 방법의 다른 예는 미디어 파일 참조들 및 검색된 메타데이터를 저장할 재생 리스트 유닛들의 수를 각각의 재생 리스트 유닛의 크기의 함수로서 결정하는 단계를 포함한다. 방법은 미디어 파일 참조들 및 검색된 메타데이터를 결정된 수의 재생 리스트 유닛에 저장한다. 미디어 파일 참조들 및 검색된 메타데이터를 저장하기 위한 다른 예시적인 방법은 미디어 파일 참조들의 적어도 일부 및 그에 대응하는 검색된 메타데이터를 재생 리스트 유닛 크기에 도달할 때까지 제1 재생 리스트 유닛에 연속 저장하는 단계를 포함한다. 방법은 제1 재생 리스트 유닛을 닫고, 제2 재생 리스트 유닛을 열어, 미디어 파일 참조들의 적어도 나머지 부분 및 그에 대응하는 검색된 메타데이터를 열린 제2 재생 리스트 유닛에 연속 저장한다.
일 실시예에서, 하나 이상의 컴퓨터 판독가능 매체가 도 3에 설명된 컴퓨터 구현 방법을 수행하기 위한 컴퓨터 실행가능 명령들을 갖는다.
이어서, 도 4를 참조하면, 예시적인 흐름도가 일 실시예에서의 재생 리스트 유닛의 생성을 나타낸다. 단계(402)에서, 미디어 파일 번호 및 재생 리스트 유닛("유닛") 번호가 1로 설정된다. 일 실시예의 방법은 단계(404)에서 현재의 미디어 파일 번호에 대응하는 미디어 파일에 대한 메타데이터 스트링을 취득한다. 각각의 메타데이터 스트링에 대하여, 방법은 단계(406)에서 메타데이터 스트링이 현재의 재생 리스트 유닛에 이미 저장되어 있는지를 판정한다. 그러한 경우, 현재의 재생 리스트 유닛에 저장된 메타데이터 스트링의 위치가 지시된다(그리고 이어서 단계(414)에서 저장된다). 단계(406)에서 취득된 메타데이터 스트링이 현재 재생 리스트 유닛에 아직 저장되지 않은 경우, 메타데이터 스트링은 (예를 들어, 단계(414)에서) 현재 재생 리스트 유닛에 추가될 메타데이터에 추가된다. 단계(408)에서 재생 리스트 엔트리 데이터 및 현재의 재생 리스트 유닛에 추가될 메타데이터가 현재의 재생 리스트에 맞는 경우, 방법은 단계(414)에서 재생 리스트 엔트리 데이터 및 메타데이터를 현재의 유닛에 기입한다. 단계(416)에서 미디어 파일 번호가 증가되고, 단계(418)에서 보다 많은 파일이 처리되어야 하는지에 대한 판정이 이루어진다. 보다 많은 파일이 처리될 필요가 없는 경우, 방법은 단계(420)에서 최종 유닛을 기입한다. 보다 많은 파일이 처리되어야 하는 경우, 단계(404)에서 처리될 다음 미디어 파일에 대한 메타데이터가 취득된다. 단계(408)에서 재생 리스트 엔트리 데이터 및 현재의 재생 리스트 유닛에 추가될 메타데이터가 현재의 재생 리스트 유닛에 맞지 않는 경우, 이 실시예의 방법은 단계(410)에서 유닛을 기입하고(예를 들어, 컴퓨터 판독가능 매체에), 단계(412)에서 유닛 번호를 증가시킨 후, 단계(406)에서 진행한다.
이어서, 도 5를 참조하면, 예시적인 흐름도가 일 실시예의 재생 리스트 유닛을 이용한 재생 리스트의 재생을 나타낸다. 단계(502)에서 재생 리스트 유닛 번호가 1로 설정된다. 단계(504)에서 현재 유닛에서 미디어 파일 번호가 1로 설정된다. 현재 미디어 파일 번호에 대응하는 미디어 파일이 단계(506)에서 렌더링된다(예를 들어, 재생된다). 단계(508)에서 현재 재생 리스트 유닛에 재생할 미디어 파일이 더 있는 경우, 단계(510)에서 미디어 파일 번호는 증가되며, 단계(506)에서 다음 미디어 파일이 재생된다. 단계(508)에서 현재의 재생 리스트 유닛에 재생할 파일이 더 존재하지 않고, 단계(512)에서 재생 리스트 내에 더 이상의 유닛이 없는 경우, 일 실시예의 방법은 단계(514)에서 재생 리스트 메뉴로 복귀한다. 단계(512)에서 재생 리스트 내에 유닛이 더 있는 경우, 단계(516)에서 유닛 번호가 증가되며, 방법은 단계(504)에서 현재 유닛에 대해 미디어 파일 번호를 1로 재설정하도록 진행한다.
예시적인 운영 환경
도 6은 컴퓨터(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)가 즉시 액세스할 수 있고 및/또는 현재 동작시키고 있는 데이터 및/또는 프로그램 모듈을 포함한다. 예로서, 도 6은 운영 체제(144), 애플리케이션 프로그램(146), 기타 프로그램 모듈(148) 및 프로그램 데이터(150)를 도시하고 있지만 이에 제한되는 것은 아니다.
컴퓨터(130)는 또한 기타 이동식/비이동식, 휘발성/비휘발성 컴퓨터 저장 매체를 포함한다. 예로서, 도 6은 비이동식·비휘발성 자기 매체에 기록을 하거나 그로부터 판독을 하는 하드 디스크 드라이브(154)를 나타낸다. 도 6은 또한, 이동식·비휘발성 자기 디스크(158)에 기록을 하거나 그로부터 판독을 하는 자기 디스크 드라이브(156), 및 CD-ROM 또는 기타 광 매체 등의 이동식·비휘발성 광 디스크(162)에 기록을 하거나 그로부터 판독을 하는 광 디스크 드라이브(160)를 포함한다. 예시적인 운영 환경에서 사용될 수 있는 기타 이동식/비이동식, 휘발성/비휘발성 컴퓨터 기억 매체로는 자기 테이프 카세트, 플래시 메모리 카드, DVD, 디지털 비디오 테이프, 고상(solid state) RAM, 고상 ROM 등이 있지만 이에 제한되는 것은 아니다. 하드 디스크 드라이브(154), 자기 디스크 드라이브(156) 및 광 디스크 드라이브(160)는 통상적으로 인터페이스(166)와 같은 비휘발성 메모리 인터페이스를 통해 시스템 버스(136)에 접속된다.
위에서 설명되고 도 6에 도시된 드라이브들 및 이들과 관련된 컴퓨터 저장 매체는, 컴퓨터(130)에 대한 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 및 기타 데이터를 저장한다. 도 6에서, 예를 들어, 하드 디스크 드라이브(154)는 운영 체제(170), 애플리케이션 프로그램(172), 기타 프로그램 모듈(174), 및 프로그램 데이터(176)를 저장하는 것으로 도시되어 있다. 여기서 주의할 점은 이들 컴포넌트가 운영 체제(144), 애플리케이션 프로그램(146), 기타 프로그램 모듈(148), 및 프로그램 데이터(150)와 동일하거나 그와 다를 수 있다는 것이다. 운영 체제(170), 애플리케이션 프로그램(172), 기타 프로그램 모듈(174) 및 프로그램 데이터(176)에 다른 번호가 부여되어 있다는 것은 적어도 이들이 다른 사본(copy)이라는 것을 나타내기 위한 것이다.
사용자는 키보드(180) 및 포인팅 장치(182)(예를 들어, 마우스, 트랙볼, 펜, 또는 터치 패드) 등의 입력 장치 또는 사용자 인터페이스 선택 장치를 통해 명령 및 정보를 컴퓨터(130)에 입력할 수 있다. 다른 입력 장치(도시 생략)로는 마이크, 조이스틱, 게임 패드, 위성 안테나, 스캐너 등을 포함할 수 있다. 이들 및 기타 입력 장치는 시스템 버스(136)에 결합된 사용자 입력 인터페이스(184)를 통해 처리 장치(132)에 접속되지만, 병렬 포트, 게임 포트 또는 USB(universal serial bus) 등의 다른 인터페이스 및 버스 구조에 의해 접속될 수도 있다. 모니터(188) 또는 다른 유형의 디스플레이 장치도 비디오 인터페이스(190) 등의 인터페이스를 통해 시스템 버스(136)에 접속된다. 모니터(188) 외에, 컴퓨터는 종종 및 프린터 및 스피커 등의 기타 주변 출력 장치(도시되지 않음)를 포함하고, 이들은 출력 주변장치 인터페이스(도시되지 않음)를 통해 접속될 수 있다.
컴퓨터(130)는 원격 컴퓨터(194)와 같은 하나 이상의 원격 컴퓨터로의 논리적 접속을 사용하여 네트워크화된 환경에서 동작할 수 있다. 원격 컴퓨터(194)는 퍼스널 컴퓨터, 서버, 라우터, 네트워크 PC, 피어 장치 또는 기타 통상의 네트워크 노드일 수 있고, 통상적으로 컴퓨터(130)와 관련하여 상술된 구성요소들의 대부분 또는 그 전부를 포함한다. 도 6에 도시된 논리적 접속은 LAN(196) 및 WAN(198)을 포함하지만, 기타 네트워크를 포함할 수도 있다. LAN(196) 및/또는 WAN(198)은 유선 네트워크, 무선 네트워크, 이들의 조합 등일 수 있다. 이러한 네트워킹 환경은 사무실, 전사적 컴퓨터 네트워크(enterprise-wide computer network), 인트라넷, 및 글로벌 컴퓨터 네트워크(예를 들어, 인터넷)에서 일반적인 것이다.
LAN 네트워킹 환경에서 사용될 때, 컴퓨터(130)는 네트워크 인터페이스 또는 어댑터(186)를 통해 LAN(196)에 접속된다. WAN 네트워킹 환경에서 사용될 때, 컴퓨터(130)는 통상적으로 인터넷과 같은 WAN(198)을 통해 통신을 설정하기 위한 모뎀(178) 또는 기타 수단을 포함한다. 내장형 또는 외장형일 수 있는 모뎀(178)은 사용자 입력 인터페이스(184) 또는 기타 적절한 메커니즘을 통해 시스템 버스(136)에 접속된다. 네트워크화된 환경에서, 컴퓨터(130)와 관련하여 기술된 프로그램 모듈 또는 그의 일부는 원격 메모리 저장 장치(도시되지 않음)에 저장될 수 있다. 예로서, 도 6은 원격 애플리케이션 프로그램(192)이 메모리 장치 상에 위치하는 것으로 도시하고 있지만 이에 제한되는 것은 아니다. 도시된 네트워크 접속은 예시적인 것이며 이 컴퓨터들 사이에 통신 링크를 설정하는 기타 수단이 사용될 수 있다.
일반적으로, 컴퓨터(130)의 데이터 프로세서는 컴퓨터의 다양한 컴퓨터 판독가능 저장 매체에 상이한 시간에 저장된 명령들에 의해 프로그래밍된다. 프로그램 및 운영 체제는 일반적으로 예를 들어 플로피 디스크 또는 CD-ROM 상에 분산된다. 그곳으로부터 이들은 컴퓨터의 보조 메모리에 설치 또는 로딩된다. 실행시, 이들은 적어도 부분적으로 컴퓨터의 주 전자 메모리에 로딩된다. 본 명세서에 설명되는 발명은 이들 및 다른 다양한 유형의 컴퓨터 판독가능 매체가 마이크로프로세서 또는 기타 데이터 프로세서와 관련하여 후술하는 단계들을 구현하기 위한 명령 또는 프로그램을 포함할 때 이러한 매체를 포함한다. 본 발명은 또한 여기서 설명되는 방법 및 기술에 따라 프로그래밍될 때 컴퓨터 자체를 포함한다.
예시를 위해, 본 명세서에서는 운영 체제와 같은 프로그램 및 기타 실행가능 프로그램 컴포넌트들이 개별 블록들로서 예시된다. 그러나, 이러한 프로그램 및 컴포넌트는 컴퓨터의 상이한 저장 컴포넌트들에 다양한 시간에 위치하며, 컴퓨터의 데이터 프로세서(들)에 의해 실행되는 것으로 이해된다.
본 발명은 컴퓨터(130)를 포함하는 예시적인 컴퓨팅 시스템 환경과 관련하여 설명되지만, 다양한 다른 범용 또는 특수 목적 컴퓨팅 시스템 환경 또는 구성과 함께 동작한다. 컴퓨팅 시스템 환경은 본 발명의 용도 또는 기능성의 범위에 관해 어떤 제한을 암시하고자 하는 것이 아니다. 더욱이, 컴퓨팅 시스템 환경은 예시적인 운영 환경에서 설명되는 컴포넌트들 중 하나 또는 그 컴포넌트들의 조합과 관련하여 어떤 의존성 또는 요구사항을 갖는 것으로 해석되어서는 안 된다. 본 발명과 함께 사용하는 데 적합할 수 있는 잘 알려진 컴퓨팅 시스템, 환경 및/또는 구성의 예로는 퍼스널 컴퓨터, 서버 컴퓨터, 핸드-헬드 또는 랩톱 장치, 마이크로프로세서 시스템, 마이크로프로세서 기반 시스템, 셋톱 박스, 프로그램가능한 가전제품, 이동 전화, 네트워크 PC, 미니컴퓨터, 메인프레임 컴퓨터, 상기 시스템들이나 장치들 중 임의의 것을 포함하는 분산 컴퓨팅 환경, 기타 등등이 있지만 이에 제한되는 것은 아니다.
본 발명은 일반적으로 하나 이상의 컴퓨터 또는 다른 장치에 의해 실행되는 프로그램 모듈과 같은 컴퓨터 실행가능 명령들과 관련하여 기술될 것이다. 일반적으로, 프로그램 모듈은 특정 태스크를 수행하거나 특정 추상 데이터 유형을 구현하는 루틴, 프로그램, 개체, 컴포넌트, 및 데이터 구조 등을 포함하지만 이에 제한되는 것은 아니다. 본 발명은 또한 통신 네트워크를 통해 연결되어 있는 원격 처리 장치들에 의해 태스크가 수행되는 분산 컴퓨팅 환경에서 실시될 수 있다. 분산 컴퓨팅 환경에서, 프로그램 모듈들은 메모리 저장 장치를 포함하는 로컬 및 원격 컴퓨터 저장 매체 둘다에 위치할 수 있다.
소프트웨어 아키텍처와 관련된 인터페이스는 소프트웨어 모듈, 컴포넌트, 코드 부분, 또는 기타 컴퓨터 실행가능 명령들의 시퀀스를 포함한다. 인터페이스는 예를 들어 제1 모듈 대신에 컴퓨팅 태스크를 수행하는 제2 모듈에 액세스하는 제1 모듈을 포함한다. 제1 및 제2 모듈들은 일례로 운영 체제에 의해 제공되는 것과 같은 애플리케이션 프로그래밍 인터페이스(API), 컴포넌트 개체 모델(COM) 인터페이스(예를 들어, 피어 투 피어 애플리케이션 통신을 위한 것임), 및 확장형 마크업 언어 메타데이터 교환 포맷(XMI) 인터페이스(예를 들어, 웹 서비스들 간의 통신을 위한 것임)를 포함한다.
인터페이스는 자바 2 플랫폼 기업판(J2EE), COM, 또는 분산형 COM(DCOM) 예들에서와 같이 단단히 결합된 동기식 구현일 수 있다. 대안으로, 또는 추가적으로, 인터페이스는 웹 서비스에서와 같이(예를 들어, 단순 개체 액세스 프로토콜을 이용함) 느슨하게 결합된 동기식 구현일 수 있다. 일반적으로, 인터페이스는 다음과 같은 특성, 즉 단단한 결합, 느슨한 결합, 동기식 및 비동기식 특성들의 임의 조합을 포함한다. 또한, 인터페이스는 표준 프로토콜, 독점 프로토콜, 또는 표준 및 독점 프로토콜들의 임의 조합을 따를 수 있다.
본 명세서에 설명되는 인터페이스들은 모두 단일 인터페이스의 일부이거나, 개별 인터페이스들 또는 그 안에서의 임의 조합으로서 구현될 수 있다. 인터페이스들은 기능을 제공하기 위해 국지적으로 또는 원격적으로 실행될 수 있다. 또한, 인터페이스들은 본 명세서에 도시되거나 설명된 것보다 많거나 적은 기능을 포함할 수 있다.
동작에서 있어서, 컴퓨터(130)는 본 발명을 구현하기 위해 도면들에 도시된 것들과 같은 컴퓨터 실행가능 명령들을 실행한다.
본 발명은 재생 리스트 유닛을 생성하기 위한 수단 및 데이터 구조를 채우기 위한 수단을 포함한다. 데이터 구조, 사용자 인터페이스, 애플리케이션 프로그램, 애플리케이션 프로그래밍 인터페이스(API), 컴퓨터 실행가능 명령들, 펌웨어 등(도면에 도시된 것과 같은)과 같은 하드웨어 및 소프트웨어는 재생 리스트를 생성하기 위한 수단 및 데이터 구조를 채우기 위한 수단을 구성한다.
본 명세서에 설명되는 예들에서, 디지털 미디어 파일의 미디어 콘텐츠는 CD 또는 DVD 상에 구현되는 콘텐츠와 관련하여 설명되어 있다. 미디어 콘텐츠는 임의의 적절한 매체 상에 구현될 수 있으며, 본 명세서에 설명되는 특정 예들은 본 발명의 원리의 보다 나은 이해를 위해 제공된다는 것을 이해해야 한다. 편의를 위해, 디지털 미디어 파일은 예를 들어 오디오 CD 상에서 발견되는 것과 같은 단일 노래 트랙 또는 트랙들의 집합을 나타내는 하나 이상의 파일을 지칭한다. 미디어 콘텐츠는 인코딩된 미디어 파일 형태의 특수 인코딩된 미디어 콘텐츠(예를 들어, 오디오, 비디오 또는 정지 화상)를 포함할 수 있지만 이에 제한되는 것은 아니다.
도면에 도시되고 본 명세서에서 설명되는 예시적인 미디어 파일 조작들은 단지 예시적이다. 이들 파일 조작들의 다른 변형들도 본 발명의 범위 내에 있다. 대안으로 또는 추가적으로, 본 명세서에 설명되지 않았으나 본 발명을 여전히 구현하는 다른 미디어 파일 조작들도 본 발명의 범위 내에 있다.
본 명세서에 도시되고 설명되는 방법들의 실행 또는 수행의 순서는 달리 지정되지 않는 한 불가결한 것은 아니다. 즉, 방법들의 요소들은 달리 지정되지 않는 한 임의 순서로 수행될 수 있으며, 방법들은 본 명세서에 설명된 것보다 많거나 적은 요소를 포함할 수 있다. 예를 들어, 특정 요소를 다른 요소 전에, 동시에 또는 후에 실행 또는 수행하는 것은 본 발명의 범위 내인 것으로 고려된다.
본 발명 또는 그 실시예의 요소들을 도입할 때, "하나" 및 "상기"는 하나 이상의 요소가 존재함을 의미하는 것으로 의도한다. "포함하는" 및 "구비하는"이라는 용어들은 포괄적이고, 리스트된 요소들과 다른 추가 요소들이 존재할 수 있음을 의미하는 것을 의도한다.
위에 비추어, 본 발명의 여러 목적이 달성되고 다른 이로운 결과들이 얻어지는 것을 알 것이다.
본 발명의 범위를 벗어나지 않고, 상기 구성, 제품, 및 방법에서의 다양한 변경이 이루어질 수 있으므로, 상기 설명에 포함되고 첨부 도면에 도시된 모든 내용은 제한적인 것이 아니라 예시적인 것으로 해석될 것을 의도한다.
부록 A
본 발명의 일 실시예에서 재생 리스트 구조 내의 예시적인 '그룹 데이터' 필드 및 그 안의 재생 리스트 그룹 개체들이 아래에 설명된다.
그룹 데이터
그룹 데이터는 아래에 정의되는 바와 같은 하나 이상의 재생 리스트 그룹 엔트리의 리스트를 포함한다. 그룹 데이터 내의 각각의 재생 리스트 그룹 엔트리는 상이한 그룹 ID를 가지며, 재생 리스트 그룹 엔트리들은 그룹 데이터 내에 재생 순서로 저장된다.
테이블 A1. 재생 리스트 그룹 엔트리
오프셋 길이 필드명
0 2 이전 그룹 오프셋
2 2 다음 그룹 오프셋
4 2 그룹 플래그
6 4 그룹 ID
10 2 그룹명에 대한 오프셋
12 1 재생 리스트 그룹의 유형
13 1 예약
14 가변 재생 리스트 그룹 개체
이전 그룹 오프셋
이 2 바이트 엔트리는 재생 리스트 유닛의 시작에서 이 그룹 데이터 내의 이전 재생 리스트 그룹 엔트리까지의 바이트 오프셋을 포함한다. 제로 값은 이 재생 리스트 그룹 엔트리가 이 그룹 데이터 내의 첫 번째 그룹 엔트리임을 지시한다.
다음 그룹 오프셋
이 2 바이트 엔트리는 재생 리스트 유닛의 시작에서 이 그룹 데이터 내의 다음 재생 리스트 그룹 엔트리까지의 바이트 오프셋을 포함한다. 제로 값은 이 재생 리스트 그룹 엔트리가 이 그룹 데이터 내의 최종 그룹 엔트리임을 지시한다.
그룹 플래그
이 2 바이트 엔트리는 이 재생 리스트 그룹 엔트리의 특수 속성들을 요약한다. 다음 테이블은 이 필드의 포맷을 나타낸다.
14 비트 2 비트
예약 계속
15 0
계속 플래그는 재생기들이 오프셋 그룹 테이블을 참조할 필요 없이 재생 리스트 그룹에 대한 시작 및 종료 재생 리스트 유닛들을 쉽게 발견할 수 있게 한다. 예시적인 계속 플래그들이 아래에 도시된다.
테이블 A2. 계속 플래그
계속 플래그
00b 그룹이 이 재생 리스트 유닛에 포함된다
01b 그룹이 다음 재생 리스트 유닛에서 계속된다
10b 그룹이 이전 재생 리스트 유닛으로부터 계속된다
11b 그룹에 이전 재생 리스트 유닛으로부터 계속되고, 다음 재생 리스트 유닛에서 계속된다
그룹 ID
이 4 바이트 엔트리는 재생 리스트 그룹의 ID를 포함한다.
그룹명에 대한 오프셋
이 2 바이트 엔트리는 재생 리스트 유닛의 시작에서 재생 리스트 그룹의 그룹명을 포함하는 텍스트 데이터까지의 바이트 오프셋을 포함한다. 각각의 재생 리스트 그룹 엔트리는 그룹명에 대한 유효 텍스트 엔트리를 갖는다.
재생 리스트 그룹의 유형
이 1 바이트 엔트리는 재생 리스트 그룹의 유형을 나타낸다.
예약
이 1 바이트 엔트리는 미래의 사용을 위해 예약된다.
재생 리스트 그룹 개체
이 가변 크기의 엔트리는 재생 리스트 그룹 데이터의 모두 또는 일부를 포함한다.
재생 리스트 그룹은 하나 이상의 재생 리스트 그룹 개체의 집합으로서 표현된다. 하나의 재생 리스트 그룹이 둘 이상의 재생 리스트 그룹 개체를 포함하는 경우, 재생 리스트 그룹 내의 재생 리스트 그룹 개체들을 연결하기 위한 정보는 그룹 플래그들에 의해 지시된다. 재생 리스트 그룹이 둘 이상의 재생 리스트 그룹 개체를 포함하는 경우, 재생 리스트 그룹은 재생 리스트 유닛들에 걸친다. 재생 리스트 그룹 개체들의 수는 이 재생 리스트 그룹에 대한 재생 리스트 그룹 개체들을 포함하는 재생 리스트 유닛들의 수와 동일하다. 따라서, 일 실시예에서, 주어진 재생 리스트 그룹에 대해 하나의 재생 리스트 그룹 개체만이 개별 재생 리스트 유닛 내에 허용된다.
오디오 재생 리스트 그룹 개체
오디오 파일 인덱스들의 순서는 이 재생 리스트 그룹 개체에 대한 재생 순서이다.
테이블 A3. 오디오 재생 리스트 그룹 개체
오프셋 길이 필드명
0 4 오디오 파일 인덱스들의 수
4 4 오디오 파일 인덱스 1
...
4+4*(n-1) 4 오디오 파일 인덱스 n
오디오 파일 인덱스들의 수
이 4 바이트 엔트리는 이 재생 리스트 그룹 개체에 리스트된 오디오 파일 인덱스들의 수이다.
오디오 파일 인덱스
이 재생 리스트 그룹 개체 내의 각 오디오 파일 인덱스에 대한 하나의 4 바이트 엔트리가 존재한다. 그 값은 콘텐츠 테이블에서 이 오디오 파일을 참조하는 콘텐츠 엔트리의 인덱스이다. 1의 값은 콘텐츠 테이블에 리스트된 첫 번째 콘텐츠 엔트리를 지시한다.
비디오 재생 리스트 그룹 개체
비디오 파일 인덱스들의 순서는 이 재생 리스트 그룹 개체에 대한 재생 순서일 것이다.
테이블 A4. 비디오 재생 리스트 그룹 개체
오프셋 길이 필드명
0 4 비디오 파일 인덱스들의 수
4 4 비디오 파일 인덱스 1
8 4 비디오 1의 시작점
12 4 비디오 1의 종료점
16 8 시작점 오프셋 1
24 8 종료점 오프셋 1
...
4+28*(n-1) 4 비디오 파일 인덱스 n
8+28*(n-1) 4 비디오 n의 시작점
12+28*(n-1) 4 비디오 n의 종료점
16+28*(n-1) 8 시작점 오프셋 n
24+28*(n-1) 8 종료점 오프셋 n
비디오 파일 인덱스들의 수
이 4 바이트 엔트리는 이 재생 리스트 유닛에 포함된 이 재생 리스트 그룹 개체에 리스트된 비디오 파일 인덱스들의 수이다.
비디오 파일 인덱스
이 재생 리스트 그룹 개체 내의 각 비디오 파일 인덱스에 대한 하나의 4 바이트 엔트리가 존재한다. 그 값은 콘텐츠 테이블에서 이 비디오 파일을 참조하는 콘텐츠 엔트리의 인덱스이다. 1의 값은 콘텐츠 테이블에 리스트된 첫 번째 콘텐츠 엔트리를 지시한다.
비디오의 시작점
이 재생 리스트 그룹 내의 각 비디오 파일에 대한 하나의 4 바이트 엔트리가 존재한다. 그 값은 시작 프레임의 시작 시간에 대한 밀리초 단위의 오프셋이다. 오프셋은 비디오 파일 내의 I 프레임에 대응할 것이다.
비디오의 종료점
이 재생 리스트 그룹 내의 각 비디오 파일에 대한 하나의 4 바이트 엔트리가 존재한다. 그 값은 종료 프레임의 다음 프레임의 시작 시간에 대한 밀리초 단위의 오프셋이다. 제로 값은 비디오 파일이 파일의 끝까지 재생되어야 함을 지시한다. 비디오 재생 리스트 그룹 내의 2개의 순차적인 비디오 파일 인덱스가 동일 비디오 파일을 지시하는 경우, 이것은 중단되지 않는 재생을 위해 의도된 특수한 경우이다. 이와 같은 엔트리들은 단일 비디오 파일 내에 '챕터들'이 생성되는 것을 가능하게 하여, 사용자가 챕터에 의해 스킵하는 것을 가능하게 한다. 정상 재생 동안, 각 챕터는 다음 챕터가 시작되는 경우에 종료되므로 비디오는 중단 없이 재생된다. 일 실시예에서, 중단 없는 재생은 단일 재생 리스트 유닛 내에 포함된 '챕터들'에 대해서만 강제적이다. 챕터가 재생 리스트 유닛 경계들에 걸칠 때에는 중단이 허용된다.
시작점 오프셋
이 재생 리스트 그룹 내의 각 비디오 파일에 대한 하나의 8 바이트 엔트리가 존재한다. 그 값은 비디오 파일의 시작에서, 재생기가 파일 판독을 개시하는 데 사용하는 위치까지의 오프셋이다. 이 오프셋은 비디오 필드의 시작점으로 사용된다. 비디오 필드의 시작점이 제로인 경우, 이 필드는 재생기가 파일 헤더를 검사함으로써 판독할 첫 번째 패킷을 찾는 경우에 제로이다. 비디오 필드의 시작점이 제로가 아닌 경우, 이 필드는 비디오 시작 시간에 도달하기 위하여 디코딩을 시작하기 위한 파일 내의 가장 가까운 위치를 포함한다.
종료점 오프셋
이 재생 리스트 그룹 내의 각 비디오 파일에 대한 하나의 8 바이트 엔트리가 존재한다. 그 값은 비디오 파일의 시작에서, 재생기가 파일 판독을 중지하는 데 사용하는 위치까지의 오프셋이다. 이 오프셋은 비디오 필드의 종료점으로 사용된다. 비디오 필드의 종료점이 제로인 경우, 이 필드는 재생기가 파일 판독을 어디서 중지할지를 혼자서 결정하는 것이 필요한 경우에 제로이다. 비디오 필드의 종료점이 제로가 아닌 경우, 이 필드는 모든 필요한 데이터가 판독되었음을 보증하기 위해 판독을 종료하기 위한 파일 내의 가장 가까운 위치를 포함한다.
타이밍된 이미지 재생 리스트 그룹 개체
이미지 파일 인덱스들의 순서는 이 재생 리스트 그룹 개체에 대한 재생 순서이다.
테이블 A5. 타이밍된 이미지 재생 리스트 그룹 개체
오프셋 길이 필드명
0 4 이미지 파일 인덱스들의 수
4 2 최초 전이
6 2 최종 전기
8 4 이미지 파일 인덱스 1
12 4 지속 기간 1
16 2 전이 1
...
8+10*(n-1) 4 이미지 파일 인덱스 n
12+10*(n-1) 4 지속 기간 n
16+10(n-1) 2 전이 n
이미지 파일 인덱스들의 수
이 4 바이트 엔트리는 이 재생 리스트 그룹 개체에 리스트된 이미지 파일 인덱스들의 수이다.
최초 전이
이 2 바이트 엔트리는 이 재생 리스트 그룹 개체 내의 최초 이미지를 표시하는 데 사용되는 최초 전이를 정의한다. 예시적인 값은 컷 및 페이드-인이다.
최종 전이
이 2 바이트 엔트리는 이 재생 리스트 그룹 개체 내의 최종 이미지의 표시를 종료하는 데 사용되는 최종 전이를 정의한다. 예시적인 값은 컷 및 페이드-아웃이다.
이미지 파일 인덱스
이 재생 리스트 그룹 개체 내의 각 이미지 파일 인덱스에 대한 하나의 4 바이트 엔트리가 존재한다. 그 값은 콘텐츠 테이블에서 이 이미지 파일을 참조하는 콘텐츠 엔트리의 인덱스이다. 1의 값은 콘텐츠 테이블에 리스트된 첫 번째 콘텐츠 엔트리를 지시한다.
지속 기간
이 4 바이트 엔트리는 이미지가 디코딩된 후 이미지를 표시하는 밀리초 단위의 지속 기간이며, 제로 값은 무한대를 나타낸다. 일 실시예에서, 타이밍된 이미지 재생 리스트 그룹의 최소 이미지 지속 기간은 3초(3000 밀리초)이고, 최대 값은 0x001FFFFF이다.
전이
이 2 바이트 엔트리는 재생기가 다음 이미지 파일로 변경할 때 사용하기 위한 전이의 유형을 정의한다. 제로 값은 컷으로 정의된다. 예시적인 전이의 리스트가 아래 테이블에 정의되어 있다.
테이블 A6. 전이 유형
엔트리 유형
0
1 페이드-인/페이드-아웃
2 디졸브
3 최상부로부터 와이프
4 최하부로부터 와이프
5 좌측으로부터 와이프
6 우측으로부터 와이프
7 대각선 좌측으로 와이프
8 대각선 우측으로 와이프
9-65,535 예약
전이의 지속 기간은 각 재생기에 의해 정의된다. 전이의 지속 기간은 이미지 파일 지속 기간에 영향을 미치지 않아야 한다. 예를 들어, 지속 기간이 20초 및 30초인 이미지들 간의 지속 기간 2초의 전이는 각각 19초의 제1 이미지에 이어 이미지들 간의 2초 전이 후에 29초의 제2 이미지가 이어지는 결과를 낳는다.
병렬 이미지 오디오 재생 리스트 그룹 개체
병렬 이미지 오디오 재생 리스트 그룹은 전이 및 지속 기간 정보를 갖는 이미지 파일들의 리스트가 이어지는 오디오 파일들의 리스트를 포함한다. 오디오 파일들의 리스트는 병렬 이미지 오디오 재생 리스트 그룹을 포함하는 제1 재생 리스트 유닛에 맞는다. 오디오 섹션(예를 들어, 오디오 파일들의 리스트 및 대응하는 콘텐츠 엔트리들 및 파일명/텍스트 스트링 데이터)은 재생 리스트 유닛들에 걸쳐 있지 않다. 이미지들은 대부분의 재생 양태들을 결정하는 이 조합 내의 주된 파일들로 간주되는 반면, 오디오는 이미지들과 동기화되지 않은 부수물로서 간주된다.
테이블 A7. 병렬 이미지 오디오 재생 리스트 그룹 개체
길이 필드명
4 이미지 파일 인덱스들의 수
2 이미지 인덱스들에 대한 오프셋
2 최초 전이
2 최종 전이
4 오디오 파일 인덱스들의 수
4 오디오 파일 인덱스 1
...
4 오디오 파일 인덱스 n
4 이미지 파일 인덱스 1
4 지속 기간 1
2 전이 1
...
4 이미지 파일 인덱스 n
4 지속 기간 m
2 전이 m
이미지 파일 인덱스들의 수
이 4 바이트 엔트리는 이 재생 리스트 그룹 개체에 리스트된 이미지 파일 인덱스들의 수이다.
이미지 인덱스들에 대한 오프셋
이 2 바이트 엔트리는 이 재생 리스트 유닛의 시작에서 첫 번째 이미지 파일 인덱스까지의 오프셋이다. 이 값은 첫 번째 이미지 파일 인덱스가 다음 재생 리스트 유닛의 선두에 저장된 경우에는 제로이다.
최초 전이
이 2 바이트 엔트리는 이 재생 리스트 그룹 개체 내의 제1 이미지를 표시하는 데 사용되는 최초 전이를 정의한다. 예시적인 값은 컷 및 페이드-인이다.
최종 전이
이 2 바이트 엔트리는 이 재생 리스트 그룹 개체 내의 최종 이미지의 표시를 종료하는 데 사용되는 최종 전이를 정의한다. 예시적인 값은 컷 및 페이드-아웃이다.
오디오 파일 인덱스들의 수
이 4 바이트 엔트리는 이 재생 리스트 그룹 개체에 리스트된 오디오 파일 인덱스들의 수이다. 이 필드는 이 병렬 이미지 오디오 재생 리스트 그룹을 포함하는 첫 번째 재생 리스트유닛 외의 모든 재생 리스트 유닛에서 제로이다.
오디오 파일 인덱스
이 재생 리스트 그룹 개체 내의 각 오디오 파일에 대한 하나의 4 바이트 엔트리가 존재한다. 그 값은 콘텐츠 테이블에서 이 오디오 파일을 참조하는 콘텐츠 엔트리의 인덱스이다. 1의 값은 콘텐츠 테이블 내의 제1 콘텐츠 엔트리를 지시한다.
이미지 파일 인덱스
이 재생 리스트 그룹 개체 내의 각 이미지 파일에 대한 하나의 4 바이트 엔트리가 존재한다. 그 값은 콘텐츠 테이블에서 이 이미지 파일을 참조하는 콘텐츠 엔트리의 인덱스이다. 1의 값은 콘텐츠 테이블에 리스트된 제1 콘텐츠 엔트리를 지시한다.
지속 기간
이 4 바이트 엔트리는 이미지가 디코딩된 후 이미지를 표시하기 위한 밀리초 단위의 지속 기간이며, 제로 값은 무한대를 나타낸다. 일 실시예에서, 타이밍된 이미지 재생 리스트 그룹의 최소 이미지 지속 기간은 3초(3000 밀리초)이고, 최대 값은 0x001FFFFF이다.
전이
이 2 바이트 엔트리는 재생기가 다음 이미지 파일로 변경할 때 사용하기 위한 전이의 유형이다. 제로 값은 컷으로 정의된다.

Claims (20)

  1. 컴퓨터 판독가능 매체 상에 저장된 미디어 파일들의 재생 리스트의 효율적인 네비게이션을 가능하게 하기 위한 컴퓨터 구현 방법으로서,
    재생 리스트와 연관된 하나 이상의 미디어 파일을 식별하는 단계;
    상기 식별된 미디어 파일들에 대한 미디어 파일 참조들을 정의하는 단계;
    상기 식별된 미디어 파일 각각에 대응하는 메타데이터를 검색하는 단계; 및
    상기 미디어 파일들을 렌더링하기 전에 상기 미디어 파일들의 사용자 선택을 돕기 위해 상기 재생 리스트를 나타내는 하나 이상의 재생 리스트 유닛에 상기 정의된 미디어 파일 참조들 및 상기 검색된 메타데이터를 저장하는 단계
    를 포함하는 컴퓨터 구현 방법.
  2. 제1항에 있어서, 상기 재생 리스트 유닛 각각은 관련된 크기 한도를 가지며, 상기 미디어 파일 참조 및 상기 검색된 메타데이터를 저장하는 단계는
    상기 크기 한도의 함수로서, 상기 미디어 파일 참조 및 상기 검색된 메타데이터를 저장하기 위한 재생 리스트 유닛들의 수량을 결정하는 단계; 및
    상기 결정된 수량의 재생 리스트 유닛에 상기 미디어 파일 참조 및 상기 검색된 메타데이터를 저장하는 단계
    를 포함하는 컴퓨터 구현 방법.
  3. 제1항에 있어서, 각각의 재생 리스트 유닛은 관련된 크기 한도를 가지며, 상기 미디어 파일 참조들 및 상기 검색된 메타데이터를 저장하는 단계는
    상기 크기 한도에 도달할 때까지 상기 미디어 파일 참조들의 적어도 일부 및 그에 대응하는 상기 검색된 메타데이터를 제1 재생 리스트 유닛에 연속 저장하는 단계;
    상기 제1 재생 리스트 유닛을 닫는 단계;
    제2 재생 리스트 유닛을 여는 단계; 및
    상기 미디어 파일 참조들의 적어도 나머지 부분 및 그에 대응하는 상기 검색된 메타데이터를 상기 열린 제2 재생 리스트 유닛에 연속 저장하는 단계
    를 포함하는 컴퓨터 구현 방법.
  4. 제1항에 있어서,
    상기 재생 리스트 유닛들 중 하나를 수신하는 단계; 및
    관련된 미디어 파일의 사용자 선택을 가능하게 하기 위하여 상기 수신된 재생 리스트 유닛에 저장된 상기 메타데이터의 일부를 사용자에게 표시하는 단계
    를 더 포함하는 컴퓨터 구현 방법.
  5. 제4항에 있어서,
    상기 사용자로부터 미디어 파일 선택을 수신하는 단계; 및
    상기 수신된 미디어 파일 선택과 연관된 미디어 파일을 상기 미디어 파일 선 택과 연관된 미디어 파일 참조를 통해 렌더링하는 단계
    를 더 포함하는 컴퓨터 구현 방법.
  6. 제1항에 있어서, 상기 메타데이터를 검색하는 단계는 상기 미디어 파일 참조들을 통해 상기 미디어 파일들로부터 상기 메타데이터를 검색하는 단계를 포함하는 컴퓨터 구현 방법.
  7. 제1항에 있어서, 상기 식별된 미디어 파일들에 대한 미디어 파일 참조들을 정의하는 단계는 상기 식별된 미디어 파일들 각각에 대한 포인터를 정의하는 단계를 포함하는 컴퓨터 구현 방법.
  8. 제1항에 있어서, 상기 미디어 파일 참조들 및 상기 검색된 메타데이터를 저장하는 단계는 컴퓨터 판독가능 매체 상에서, 상기 미디어 파일 참조들 및 상기 검색된 메타데이터를, 상기 컴퓨터 판독가능 매체와 연관된 섹터 크기로부터 도출되는 크기를 각각 갖는 하나 이상의 재생 리스트 유닛에 저장하는 단계를 포함하는 컴퓨터 구현 방법.
  9. 제1항에 있어서, 상기 재생 리스트 유닛들은 모두 동일한 크기를 갖는 컴퓨터 구현 방법.
  10. 제1항에 있어서, 상기 재생 유닛들 각각은 메모리의 2,048 바이트를 차지하는 컴퓨터 구현 방법.
  11. 제1항에 있어서, 하나 이상의 컴퓨터 판독가능 매체가 제1항의 컴퓨터 구현 방법을 수행하기 위한 컴퓨터 판독가능 명령들을 구비하는 컴퓨터 구현 방법.
  12. 관련된 복수의 미디어 파일을 구비하는 재생 리스트를 네비게이트하기 위한 컴퓨터 실행가능 컴포넌트들을 구비하는 하나 이상의 컴퓨터 판독가능 매체로서,
    상기 컴포넌트들은
    메모리 영역에 저장된 복수의 재생 리스트 유닛 중 하나를 검색하기 위한 재생 리스트 컴포넌트 - 상기 재생 리스트 유닛들은 집합적으로 재생 리스트를 표현함 - ;
    상기 재생 리스트 컴포넌트에 의해 검색된 재생 리스트 유닛에 저장된 메타데이터를 취득하기 위한 분석기 컴포넌트 - 상기 메타데이터는 상기 재생 리스트와 연관된 미디어 파일을 기술함 - ;
    상기 분석기 컴포넌트에 의해 취득된 메타데이터를 사용자에게 표시하고, 상기 사용자로부터 미디어 파일 선택을 수신하기 위한 사용자 인터페이스 컴포넌트; 및
    상기 선택된 미디어 파일을 사용자에게 렌더링하기 위한 재생 컴포넌트
    를 포함하는 컴퓨터 판독가능 매체.
  13. 제12항에 있어서, 상기 재생 리스트 유닛들 각각은 상기 메모리 영역과 연관된 섹터 크기로부터 도출되는 크기를 갖는 컴퓨터 판독가능 매체.
  14. 제12항에 있어서, 상기 재생 유닛들 모두는 동일한 크기를 갖는 컴퓨터 판독가능 매체.
  15. 컴퓨터 판독가능 매체 상에 저장된 복수의 미디어 파일의 효율적인 네비게이션을 가능하게 하기 위한 컴퓨터 구현 시스템으로서,
    재생 리스트를 표현하는 데이터 구조를 저장하는 메모리 영역 - 상기 데이터 구조는 하나 이상의 재생 리스트 유닛을 포함하고, 상기 재생 리스트 유닛들 각각은 상기 재생 리스트 유닛과 연관된 미디어 파일들 각각에 대한 콘텐츠 엔트리 필드로서 상기 미디어 파일의 위치를 식별하는 미디어 파일 참조를 저장하는 콘텐츠 엔트리 필드, 및 각각의 콘텐츠 엔트리 필드에 대한 메타데이터 필드로서 상기 콘텐츠 엔트리 필드와 연관된 미디어 파일과 연관된 메타데이터를 저장하는 메타데이터 필드를 포함함 - ; 및
    재생 리스트와 연관된 하나 이상의 미디어 파일을 식별하고, 상기 식별된 미디어 파일들에 대한 미디어 파일 참조들을 정의하고, 상기 식별된 미디어 파일들 각각에 대응하는 메타데이터를 검색하고, 상기 미디어 파일들을 렌더링하기 전에 상기 미디어 파일들의 사용자 선택을 돕기 위해 상기 정의된 미디어 파일 참조들 및 상기 검색된 메타데이터로 상기 메모리 영역에 저장된 데이터 구조를 채우기 위한 컴퓨터 실행가능 명령들을 실행하도록 구성된 프로세서
    를 포함하는 컴퓨터 구현 시스템.
  16. 제15항에 있어서, 상기 재생 리스트 유닛 각각은 상기 재생 리스트 유닛 내의 미디어 파일들과 연관된 하나 이상의 디렉토리 경로를 저장하기 위한 디렉토리 필드를 더 포함하는 컴퓨터 구현 시스템.
  17. 제15항에 있어서, 상기 재생 리스트 유닛들 각각은 다른 하나의 재생 리스트 유닛에 대한 오프셋을 저장하기 위한 헤더 필드를 더 포함하는 컴퓨터 구현 시스템.
  18. 제15항에 있어서, 상기 재생 리스트 유닛을 생성하기 위한 수단을 더 포함하는 컴퓨터 구현 시스템.
  19. 제15항에 있어서, 상기 데이터 구조를 채우기 위한 수단을 더 포함하는 컴퓨터 구현 시스템.
  20. 제15항에 있어서, 상기 재생 리스트 유닛들 중 하나를 수신하고, 상기 수신된 재생 리스트 유닛으로부터 상기 재생 리스트 내의 미디어 파일에 대응하는 메타 데이터를 검색하고, 상기 검색된 메타데이터를 사용자에게 표시하고, 상기 사용자로부터 미디어 파일 선택을 수신하고, 상기 선택된 미디어 파일을 상기 사용자에게 렌더링하기 위한 렌더링 장치를 더 포함하는 컴퓨터 구현 시스템.
KR1020077029753A 2005-06-28 2006-04-26 대형 재생 리스트를 위한 재생 리스트 구조 KR20080024137A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/168,060 2005-06-28
US11/168,060 US7668842B2 (en) 2002-10-16 2005-06-28 Playlist structure for large playlists

Publications (1)

Publication Number Publication Date
KR20080024137A true KR20080024137A (ko) 2008-03-17

Family

ID=37595637

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020077029753A KR20080024137A (ko) 2005-06-28 2006-04-26 대형 재생 리스트를 위한 재생 리스트 구조

Country Status (6)

Country Link
US (5) US7668842B2 (ko)
EP (1) EP1896933B1 (ko)
JP (1) JP4965565B2 (ko)
KR (1) KR20080024137A (ko)
CN (1) CN100576166C (ko)
WO (1) WO2007001613A2 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140079775A (ko) * 2011-09-15 2014-06-27 구글 인코포레이티드 비디오 관리 시스템

Families Citing this family (133)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7054888B2 (en) * 2002-10-16 2006-05-30 Microsoft Corporation Optimizing media player memory during rendering
JP3937223B2 (ja) 2003-01-21 2007-06-27 ソニー株式会社 記録装置、再生装置、記録方法及び再生方法
US7617242B2 (en) * 2004-03-30 2009-11-10 Panasonic Corporation Method and apparatus for reproducing play lists in record media
JP4481991B2 (ja) * 2004-08-17 2010-06-16 パナソニック株式会社 情報記録媒体、データ分別装置、データ再生装置及び記録方法
TWI377564B (en) * 2004-08-17 2012-11-21 Panasonic Corp Information storage medium and multiplexing device
US8745132B2 (en) 2004-09-10 2014-06-03 Silver State Intellectual Technologies, Inc. System and method for audio and video portable publishing system
US7752548B2 (en) * 2004-10-29 2010-07-06 Microsoft Corporation Features such as titles, transitions, and/or effects which vary according to positions
US7685510B2 (en) * 2004-12-23 2010-03-23 Sap Ag System and method for grouping data
US7536565B2 (en) 2005-01-07 2009-05-19 Apple Inc. Techniques for improved playlist processing on media devices
US7818350B2 (en) * 2005-02-28 2010-10-19 Yahoo! Inc. System and method for creating a collaborative playlist
US20110016394A1 (en) * 2005-04-18 2011-01-20 Nettune, Inc. Systems and methods of selection, characterization and automated sequencing of media content
US8255640B2 (en) * 2006-01-03 2012-08-28 Apple Inc. Media device with intelligent cache utilization
JP4910475B2 (ja) * 2006-05-18 2012-04-04 ソニー株式会社 記録装置、記録方法および記録プログラム、ならびに、撮像装置、撮像方法および撮像プログラム
US7934156B2 (en) * 2006-09-06 2011-04-26 Apple Inc. Deletion gestures on a portable multifunction device
US20080114794A1 (en) * 2006-11-10 2008-05-15 Guideworks Llc Systems and methods for using playlists
US8055684B2 (en) * 2006-11-24 2011-11-08 Victor Company Of Japan, Ltd. Contents-data editing apparatus, method of updating playlist of contents data, and recording medium
KR100773441B1 (ko) * 2006-12-19 2007-11-05 삼성전자주식회사 휴대단말의 콘텐츠파일 검색방법 및 장치
US7872652B2 (en) 2007-01-07 2011-01-18 Apple Inc. Application programming interfaces for synchronization
US8091045B2 (en) * 2007-01-07 2012-01-03 Apple Inc. System and method for managing lists
US8813100B1 (en) 2007-01-07 2014-08-19 Apple Inc. Memory management
US7903115B2 (en) 2007-01-07 2011-03-08 Apple Inc. Animations
US8656311B1 (en) * 2007-01-07 2014-02-18 Apple Inc. Method and apparatus for compositing various types of content
US9355101B2 (en) * 2007-03-16 2016-05-31 Bby Solutions, Inc. Boot in a media player with external memory
US20080250431A1 (en) * 2007-04-04 2008-10-09 Research In Motion Limited System and method for displaying media files in a media application for a portable media device
US20080256454A1 (en) * 2007-04-13 2008-10-16 Sap Ag Selection of list item using invariant focus location
US7985911B2 (en) 2007-04-18 2011-07-26 Oppenheimer Harold B Method and apparatus for generating and updating a pre-categorized song database from which consumers may select and then download desired playlists
TW200910330A (en) * 2007-08-20 2009-03-01 Intervideo Digital Technology Corp Method and computer readable recording medium for building a play interface
KR100900583B1 (ko) 2007-08-20 2009-06-02 주식회사 디지털존 멀티미디어 재생 장치
US9047235B1 (en) 2007-12-28 2015-06-02 Nokia Corporation Content management for packet-communicating devices
US8315950B2 (en) * 2007-12-31 2012-11-20 Sandisk Technologies Inc. Powerfully simple digital media player and methods for use therewith
US20090178084A1 (en) * 2008-01-04 2009-07-09 Visteon Global Technologies, Inc. System and method for affinity marketing to mobile devices
JP2009163496A (ja) * 2008-01-07 2009-07-23 Funai Electric Co Ltd コンテンツ再生装置
US8285810B2 (en) 2008-04-17 2012-10-09 Eloy Technology, Llc Aggregating media collections between participants of a sharing network utilizing bridging
US8224899B2 (en) 2008-04-17 2012-07-17 Eloy Technology, Llc Method and system for aggregating media collections between participants of a sharing network
US8484311B2 (en) 2008-04-17 2013-07-09 Eloy Technology, Llc Pruning an aggregate media collection
US8285811B2 (en) 2008-04-17 2012-10-09 Eloy Technology, Llc Aggregating media collections to provide a primary list and sorted sub-lists
US7919707B2 (en) * 2008-06-06 2011-04-05 Avid Technology, Inc. Musical sound identification
US20090307199A1 (en) * 2008-06-10 2009-12-10 Goodwin James P Method and apparatus for generating voice annotations for playlists of digital media
US20090313432A1 (en) * 2008-06-13 2009-12-17 Spence Richard C Memory device storing a plurality of digital media files and playlists
US8713026B2 (en) * 2008-06-13 2014-04-29 Sandisk Technologies Inc. Method for playing digital media files with a digital media player using a plurality of playlists
US8230442B2 (en) * 2008-09-05 2012-07-24 International Business Machines Corporation Executing an accelerator application program in a hybrid computing environment
US8457575B2 (en) * 2008-09-26 2013-06-04 Microsoft Corporation Obtaining and presenting metadata related to a radio broadcast
US7853712B2 (en) * 2008-09-29 2010-12-14 Eloy Technology, Llc Activity indicators in a media sharing system
JP2010097292A (ja) * 2008-10-14 2010-04-30 Canon Inc 情報処理装置及び情報処理方法
US8484227B2 (en) 2008-10-15 2013-07-09 Eloy Technology, Llc Caching and synching process for a media sharing system
US8880599B2 (en) 2008-10-15 2014-11-04 Eloy Technology, Llc Collection digest for a media sharing system
US20100094834A1 (en) * 2008-10-15 2010-04-15 Concert Technology Corporation Bridging in a media sharing system
US8219536B2 (en) 2008-11-25 2012-07-10 At&T Intellectual Property I, L.P. Systems and methods to select media content
US8156435B2 (en) * 2008-11-25 2012-04-10 At&T Intellectual Property I, L.P. Systems and methods to select media content
US8527877B2 (en) * 2008-11-25 2013-09-03 At&T Intellectual Property I, L.P. Systems and methods to select media content
US20100153846A1 (en) * 2008-12-17 2010-06-17 Qnx Software Systems Gmbh & Co. Kg Playlist management system
US20100162120A1 (en) * 2008-12-18 2010-06-24 Derek Niizawa Digital Media Player User Interface
US20100169303A1 (en) 2008-12-31 2010-07-01 David Biderman Playlists for real-time or near real-time streaming
US20100169326A1 (en) * 2008-12-31 2010-07-01 Nokia Corporation Method, apparatus and computer program product for providing analysis and visualization of content items association
US8578272B2 (en) 2008-12-31 2013-11-05 Apple Inc. Real-time or near real-time streaming
US8156089B2 (en) 2008-12-31 2012-04-10 Apple, Inc. Real-time or near real-time streaming with compressed playlists
US8260877B2 (en) 2008-12-31 2012-09-04 Apple Inc. Variant streams for real-time or near real-time streaming to provide failover protection
US8843880B2 (en) * 2009-01-27 2014-09-23 International Business Machines Corporation Software development for a hybrid computing environment
US8255909B2 (en) 2009-01-28 2012-08-28 International Business Machines Corporation Synchronizing access to resources in a hybrid computing environment
US9170864B2 (en) 2009-01-29 2015-10-27 International Business Machines Corporation Data processing in a hybrid computing environment
US9014832B2 (en) 2009-02-02 2015-04-21 Eloy Technology, Llc Augmenting media content in a media sharing group
US8250120B2 (en) * 2009-02-24 2012-08-21 GM Global Technology Operations LLC Methods and systems for merging media files from multiple media devices
DE102009019562A1 (de) * 2009-04-30 2010-11-04 Volkswagen Ag Verfahren zum Steuern der Informationsanzeige auf einer Anzeigefläche
JP5617207B2 (ja) * 2009-08-31 2014-11-05 ソニー株式会社 ユーザへのコンテンツ推薦方法、ユーザへのコンテンツ推薦システム及びコンピュータ読取可能な記録媒体
US9417905B2 (en) 2010-02-03 2016-08-16 International Business Machines Corporation Terminating an accelerator application program in a hybrid computing environment
GB201105502D0 (en) 2010-04-01 2011-05-18 Apple Inc Real time or near real time streaming
US8805963B2 (en) 2010-04-01 2014-08-12 Apple Inc. Real-time or near real-time streaming
US8560642B2 (en) 2010-04-01 2013-10-15 Apple Inc. Real-time or near real-time streaming
TWI451279B (zh) 2010-04-07 2014-09-01 Apple Inc 即時或接近即時串流傳輸之內容存取控制
US9015443B2 (en) 2010-04-30 2015-04-21 International Business Machines Corporation Reducing remote reads of memory in a hybrid computing environment
JP5325159B2 (ja) 2010-05-12 2013-10-23 インターナショナル・ビジネス・マシーンズ・コーポレーション ファイルリストを抽出してクライアントにて表示するファイルサーバ、クライアントにて表示する方法及びファイルサーバで実行することが可能なコンピュータプログラム
CN102385861B (zh) * 2010-08-31 2013-07-31 国际商业机器公司 一种用于从语音内容生成文本内容提要的系统和方法
US8826134B2 (en) * 2010-09-10 2014-09-02 Sony Computer Entertainment America Llc Pivot command for playlist
US20120117110A1 (en) 2010-09-29 2012-05-10 Eloy Technology, Llc Dynamic location-based media collection aggregation
US9117426B2 (en) 2010-11-01 2015-08-25 James W. Wieder Using sound-segments in a multi-dimensional ordering to find and act-upon a composition
US8716584B1 (en) * 2010-11-01 2014-05-06 James W. Wieder Using recognition-segments to find and play a composition containing sound
US9153217B2 (en) 2010-11-01 2015-10-06 James W. Wieder Simultaneously playing sound-segments to find and act-upon a composition
US20120210224A1 (en) * 2011-02-11 2012-08-16 Sony Network Entertainment International Llc System and method to add an asset as a favorite for convenient access or sharing on a second display
US10200756B2 (en) 2011-02-11 2019-02-05 Sony Interactive Entertainment LLC Synchronization of favorites and/or recently viewed lists between registered content playback devices
US9955202B2 (en) 2011-02-11 2018-04-24 Sony Network Entertainment International Llc Removal of unavailable services and/or content items from a list of favorite and/or recently viewed services and/or content items associated with a user account
US9239732B2 (en) * 2011-02-16 2016-01-19 Microsoft Technology Licensing Llc Unrolling aggregation operations in asynchronous programming code having multiple levels in hierarchy
JP5742378B2 (ja) * 2011-03-30 2015-07-01 ソニー株式会社 情報処理装置、プレイリスト生成方法及びプレイリスト生成プログラム
US8843586B2 (en) 2011-06-03 2014-09-23 Apple Inc. Playlists for real-time or near real-time streaming
US8856283B2 (en) 2011-06-03 2014-10-07 Apple Inc. Playlists for real-time or near real-time streaming
US9894261B2 (en) * 2011-06-24 2018-02-13 Honeywell International Inc. Systems and methods for presenting digital video management system information via a user-customizable hierarchical tree interface
US10362273B2 (en) 2011-08-05 2019-07-23 Honeywell International Inc. Systems and methods for managing video data
US20130067346A1 (en) * 2011-09-09 2013-03-14 Microsoft Corporation Content User Experience
US9386063B2 (en) 2011-09-19 2016-07-05 Comcast Cable Communications, Llc Content storage and identification
CN102360352A (zh) * 2011-09-29 2012-02-22 惠州市德赛西威汽车电子有限公司 车载娱乐系统的动态媒体库管理方法
US9392335B2 (en) * 2012-03-06 2016-07-12 Comcast Cable Communications, Llc Fragmented content
US9563607B2 (en) 2012-06-26 2017-02-07 Google Inc. System and method for creating slideshows
US20140115096A1 (en) * 2012-10-23 2014-04-24 Microsoft Corporation Recommending content based on content access tracking
US9300742B2 (en) 2012-10-23 2016-03-29 Microsoft Technology Licensing, Inc. Buffer ordering based on content access tracking
KR20140062886A (ko) * 2012-11-15 2014-05-26 엘지전자 주식회사 이동 단말기 및 그것의 제어 방법
US8798438B1 (en) * 2012-12-07 2014-08-05 Google Inc. Automatic video generation for music playlists
US9344472B2 (en) * 2012-12-28 2016-05-17 Microsoft Technology Licensing, Llc Seamlessly playing a composite media presentation
FR3005820B1 (fr) * 2013-05-17 2015-05-29 Envivio France Procede de gestion de listes de lecture personnalisees du type comprenant un gabarit d'uri et une liste d'identifiants de segments.
US20140368737A1 (en) 2013-06-17 2014-12-18 Spotify Ab System and method for playing media during navigation between media streams
US10110649B2 (en) 2013-08-01 2018-10-23 Spotify Ab System and method for transitioning from decompressing one compressed media stream to decompressing another media stream
JP6236973B2 (ja) * 2013-08-09 2017-11-29 株式会社リコー 表示システム、情報端末、表示装置、再生制御プログラム、再生プログラム及び再生制御方法
CN103442242B (zh) * 2013-08-20 2015-09-09 北京东方艾迪普科技发展有限公司 一种三维图文多区域播出方法及装置
US9917869B2 (en) 2013-09-23 2018-03-13 Spotify Ab System and method for identifying a segment of a file that includes target content
US9529888B2 (en) 2013-09-23 2016-12-27 Spotify Ab System and method for efficiently providing media and associated metadata
US9063640B2 (en) 2013-10-17 2015-06-23 Spotify Ab System and method for switching between media items in a plurality of sequences of media items
US9431002B2 (en) 2014-03-04 2016-08-30 Tribune Digital Ventures, Llc Real time popularity based audible content aquisition
US9798509B2 (en) 2014-03-04 2017-10-24 Gracenote Digital Ventures, Llc Use of an anticipated travel duration as a basis to generate a playlist
US20150255055A1 (en) * 2014-03-04 2015-09-10 Tribune Digital Ventures, Llc Personalized News Program
US9454342B2 (en) 2014-03-04 2016-09-27 Tribune Digital Ventures, Llc Generating a playlist based on a data generation attribute
CN104036773B (zh) * 2014-05-22 2017-12-29 立德高科(北京)数码科技有限责任公司 将录入的文本内容通过防伪辨别装置以播放的方法及系统
US10324733B2 (en) 2014-07-30 2019-06-18 Microsoft Technology Licensing, Llc Shutdown notifications
US10254942B2 (en) 2014-07-31 2019-04-09 Microsoft Technology Licensing, Llc Adaptive sizing and positioning of application windows
US9787576B2 (en) 2014-07-31 2017-10-10 Microsoft Technology Licensing, Llc Propagating routing awareness for autonomous networks
US10592080B2 (en) 2014-07-31 2020-03-17 Microsoft Technology Licensing, Llc Assisted presentation of application windows
US10678412B2 (en) 2014-07-31 2020-06-09 Microsoft Technology Licensing, Llc Dynamic joint dividers for application windows
US9836464B2 (en) 2014-07-31 2017-12-05 Microsoft Technology Licensing, Llc Curating media from social connections
US11132983B2 (en) 2014-08-20 2021-09-28 Steven Heckenlively Music yielder with conformance to requisites
US20160070789A1 (en) * 2014-09-05 2016-03-10 Next Audio Labs, Llc System, method and software product for sorting audio data and playlist cloning
JP6463967B2 (ja) * 2014-12-25 2019-02-06 キヤノン株式会社 撮像装置及びその制御方法
US10018844B2 (en) 2015-02-09 2018-07-10 Microsoft Technology Licensing, Llc Wearable image display system
US9827209B2 (en) 2015-02-09 2017-11-28 Microsoft Technology Licensing, Llc Display system
US11086216B2 (en) 2015-02-09 2021-08-10 Microsoft Technology Licensing, Llc Generating electronic components
US10719220B2 (en) * 2015-03-31 2020-07-21 Autodesk, Inc. Dynamic scrolling
US20160328396A1 (en) * 2015-05-06 2016-11-10 Blackfire Research Corporation Collaborative intelligent media playlists
EP3356961B1 (en) 2015-10-02 2020-05-27 Google LLC Peer-to-peer syncable storage system
US10261964B2 (en) 2016-01-04 2019-04-16 Gracenote, Inc. Generating and distributing playlists with music and stories having related moods
US10637986B2 (en) 2016-06-10 2020-04-28 Apple Inc. Displaying and updating a set of application views
US10019225B1 (en) 2016-12-21 2018-07-10 Gracenote Digital Ventures, Llc Audio streaming based on in-automobile detection
US10419508B1 (en) 2016-12-21 2019-09-17 Gracenote Digital Ventures, Llc Saving media for in-automobile playout
US10565980B1 (en) 2016-12-21 2020-02-18 Gracenote Digital Ventures, Llc Audio streaming of text-based articles from newsfeeds
UA121608U (uk) * 2017-06-19 2017-12-11 Михайло Геннадійович Ковшов Автоматизована система для створення, обробки та генерації відеофільмів
AU2018328202B2 (en) 2017-09-05 2023-04-06 Shaw Industries Group, Inc. Audible acoustic performance tool
US10880663B1 (en) 2018-06-20 2020-12-29 Columbia Insurance Company Methods and systems for sound file creation
US11131967B2 (en) 2019-05-06 2021-09-28 Apple Inc. Clock faces for an electronic device

Family Cites Families (126)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4039590B4 (de) * 1989-12-22 2004-07-08 Clariant Finance (Bvi) Ltd. Pigmentverbindung, Verfahren zu deren Herstellung und deren Verwendung zum Färben von Kunststoffen
JP3264979B2 (ja) 1992-05-19 2002-03-11 オリンパス光学工業株式会社 画像情報記録再生装置
JP2654324B2 (ja) 1991-12-31 1997-09-17 インターナショナル・ビジネス・マシーンズ・コーポレイション マルチメディア・データ処理システム及びマルチメディア・データ処理システムの動作方法
US5978811A (en) * 1992-07-29 1999-11-02 Texas Instruments Incorporated Information repository system and method for modeling data
EP0702493A1 (en) 1994-09-19 1996-03-20 International Business Machines Corporation Interactive playout of videos
US5616876A (en) 1995-04-19 1997-04-01 Microsoft Corporation System and methods for selecting music on the basis of subjective content
US6181867B1 (en) * 1995-06-07 2001-01-30 Intervu, Inc. Video storage and retrieval system
JP3493825B2 (ja) 1995-08-02 2004-02-03 ソニー株式会社 情報再生装置
US5828751A (en) * 1996-04-08 1998-10-27 Walker Asset Management Limited Partnership Method and apparatus for secure measurement certification
US6240555B1 (en) 1996-03-29 2001-05-29 Microsoft Corporation Interactive entertainment system for presenting supplemental interactive content together with continuous video programs
US5892535A (en) 1996-05-08 1999-04-06 Digital Video Systems, Inc. Flexible, configurable, hierarchical system for distributing programming
US5870553A (en) 1996-09-19 1999-02-09 International Business Machines Corporation System and method for on-demand video serving from magnetic tape using disk leader files
JP4120896B2 (ja) * 1996-11-28 2008-07-16 ソニー株式会社 ビデオ編集装置及びその方法
TR199902422T2 (xx) 1997-04-14 2000-03-21 Thomson Consumer Electronics,Inc. Gösterim için bir birleşik program kılavuzunun oluşturulması için bir çok kaynaktan gelen verilerin derlenmesi için sistem.
US6282548B1 (en) 1997-06-21 2001-08-28 Alexa Internet Automatically generate and displaying metadata as supplemental information concurrently with the web page, there being no link between web page and metadata
US6198479B1 (en) 1997-06-25 2001-03-06 Samsung Electronics Co., Ltd Home network, browser based, command and control
US5929857A (en) 1997-09-10 1999-07-27 Oak Technology, Inc. Method and apparatus for dynamically constructing a graphic user interface from a DVD data stream
US6006234A (en) 1997-10-31 1999-12-21 Oracle Corporation Logical groupings within a database
US5996015A (en) 1997-10-31 1999-11-30 International Business Machines Corporation Method of delivering seamless and continuous presentation of multimedia data files to a target device by assembling and concatenating multimedia segments in memory
US6201540B1 (en) 1998-01-07 2001-03-13 Microsoft Corporation Graphical interface components for in-dash automotive accessories
US6275935B1 (en) 1998-04-17 2001-08-14 Thingworld.Com, Llc Systems and methods for locking interactive objects
IL127790A (en) 1998-04-21 2003-02-12 Ibm System and method for selecting, accessing and viewing portions of an information stream(s) using a television companion device
US6199059B1 (en) * 1998-04-22 2001-03-06 International Computex, Inc. System and method for classifying and retrieving information with virtual object hierarchy
US6240407B1 (en) * 1998-04-29 2001-05-29 International Business Machines Corp. Method and apparatus for creating an index in a database system
US6212524B1 (en) * 1998-05-06 2001-04-03 E.Piphany, Inc. Method and apparatus for creating and populating a datamart
US6446080B1 (en) * 1998-05-08 2002-09-03 Sony Corporation Method for creating, modifying, and playing a custom playlist, saved as a virtual CD, to be played by a digital audio/visual actuator device
US6031797A (en) 1998-06-11 2000-02-29 Sony Corporation Media playback device capable of shuffled playback based on a user's preferences
US6356921B1 (en) 1998-06-20 2002-03-12 International Business Machines Corporation Framework for progressive hierarchial and adaptive delivery rich media presentations and associated meta data
US6256031B1 (en) * 1998-06-26 2001-07-03 Microsoft Corporation Integration of physical and virtual namespace
US6363377B1 (en) * 1998-07-30 2002-03-26 Sarnoff Corporation Search data processor
JP3382159B2 (ja) 1998-08-05 2003-03-04 株式会社東芝 情報記録媒体とその再生方法及び記録方法
US6449341B1 (en) * 1998-08-25 2002-09-10 Mci Communications Corporation Apparatus and method for managing a software system via analysis of call center trouble tickets
AU5926499A (en) 1998-09-15 2000-04-03 Microsoft Corporation Interactive playlist generation using annotations
EP2200032A3 (en) * 1998-09-18 2010-09-22 Kabushiki Kaisha Toshiba Information recording method, information recording device, and information recording medium
US8332478B2 (en) 1998-10-01 2012-12-11 Digimarc Corporation Context sensitive connected content
US6487663B1 (en) * 1998-10-19 2002-11-26 Realnetworks, Inc. System and method for regulating the transmission of media data
US6405215B1 (en) * 1998-11-06 2002-06-11 International Business Machines Corp. Workflow agent for a multimedia database system
US20030182184A1 (en) * 1999-01-08 2003-09-25 Steven L. Strasnick Advertising based on pre-computed distributed playlists
US6389426B1 (en) * 1999-02-09 2002-05-14 Worldcom, Inc. Central trouble ticket database and system and method for managing same to facilitate ticketing, trending, and tracking processes
JP4221803B2 (ja) * 1999-03-02 2009-02-12 ソニー株式会社 記憶再生装置及び記憶再生方法
US6557042B1 (en) 1999-03-19 2003-04-29 Microsoft Corporation Multimedia summary generation employing user feedback
US7062532B1 (en) * 1999-03-25 2006-06-13 Autodesk, Inc. Method and apparatus for drawing collaboration on a network
US7178106B2 (en) 1999-04-21 2007-02-13 Sonic Solutions, A California Corporation Presentation of media content from multiple media sources
US6430576B1 (en) * 1999-05-10 2002-08-06 Patrick Gates Distributing and synchronizing objects
CA2338634C (en) * 1999-05-28 2007-06-26 Matsushita Electric Industrial Co., Ltd. A semiconductor memory card, playback apparatus, recording apparatus, playback method, recording method, and computer-readable recording medium
CA2338695C (en) * 1999-05-28 2009-07-07 Matsushita Electric Industrial Co., Ltd. Semiconductor memory card, playback apparatus, recording apparatus, playback method, recording method, and computer-readable recording medium
US6574417B1 (en) 1999-08-20 2003-06-03 Thomson Licensing S.A. Digital video processing and interface system for video, audio and ancillary data
US6430575B1 (en) 1999-09-10 2002-08-06 Xerox Corporation Collaborative document management system with customizable filing structures that are mutually intelligible
WO2001028222A2 (en) 1999-10-12 2001-04-19 Perception Digital Technology (Bvi) Limited Digital multimedia jukebox
US6526411B1 (en) 1999-11-15 2003-02-25 Sean Ward System and method for creating dynamic playlists
US6389467B1 (en) * 2000-01-24 2002-05-14 Friskit, Inc. Streaming media search and continuous playback system of media resources located by multiple network addresses
SG96597A1 (en) * 2000-02-17 2003-06-16 Ibm Archiving and retrieval method and apparatus
WO2001086655A1 (ko) 2000-02-23 2001-11-15 Havin Co., Ltd. Apparatus and method for recording digital audio data file
US6721489B1 (en) 2000-03-08 2004-04-13 Phatnoise, Inc. Play list manager
US6311194B1 (en) * 2000-03-15 2001-10-30 Taalee, Inc. System and method for creating a semantic web and its applications in browsing, searching, profiling, personalization and advertising
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
JP4505699B2 (ja) 2000-05-25 2010-07-21 ソニー株式会社 情報再生装置
US6882793B1 (en) 2000-06-16 2005-04-19 Yesvideo, Inc. Video processing system
US6545209B1 (en) * 2000-07-05 2003-04-08 Microsoft Corporation Music content characteristic identification and matching
US6657117B2 (en) 2000-07-14 2003-12-02 Microsoft Corporation System and methods for providing automatic classification of media entities according to tempo properties
US20020026521A1 (en) 2000-08-31 2002-02-28 Sharfman Joshua Dov Joseph System and method for managing and distributing associated assets in various formats
US6839059B1 (en) 2000-08-31 2005-01-04 Interactive Video Technologies, Inc. System and method for manipulation and interaction of time-based mixed media formats
JP3683794B2 (ja) 2000-09-22 2005-08-17 株式会社ケンウッド オーディオプレーヤー
JP2002117649A (ja) 2000-10-05 2002-04-19 Sony Corp 光ディスク、情報記録装置および情報記録方法
US6898799B1 (en) * 2000-10-23 2005-05-24 Clearplay, Inc. Multimedia content navigation and playback
KR20020032803A (ko) 2000-10-27 2002-05-04 구자홍 스트리밍 서비스를 위한 파일 구조
US20020151363A1 (en) 2001-04-12 2002-10-17 Howard Letovsky Method and system for broadcast and control of a remotely located wagering device
US20020180803A1 (en) 2001-03-29 2002-12-05 Smartdisk Corporation Systems, methods and computer program products for managing multimedia content
US20020082730A1 (en) 2000-12-21 2002-06-27 Microsoft Corporation Universal media player
US6928433B2 (en) * 2001-01-05 2005-08-09 Creative Technology Ltd Automatic hierarchical categorization of music by metadata
US6771568B2 (en) 2001-01-12 2004-08-03 Sima Products Corporation Digital audio recorder
US7849207B2 (en) * 2001-01-18 2010-12-07 Yahoo! Inc. Method and system for managing digital content, including streaming media
US20040015401A1 (en) * 2001-02-08 2004-01-22 In Lee Systems and methods for distributing template-based multimedia presentations over a network
JP4462799B2 (ja) 2001-02-28 2010-05-12 ソニー株式会社 情報記録装置および方法、情報再生装置および方法、情報記録媒体、プログラム格納媒体、並びにプログラム
CN103000205A (zh) 2001-02-28 2013-03-27 索尼公司 信息记录、再现设备及方法、信息记录介质、程序存储介质、及程序
US20030023975A1 (en) 2001-03-02 2003-01-30 Microsoft Corporation Enhanced music services for television
GB2373130B (en) 2001-03-05 2004-09-22 Messagelabs Ltd Method of,and system for,processing email in particular to detect unsolicited bulk email
US20040019396A1 (en) * 2001-03-30 2004-01-29 Mcmahon Maureen Methods for recording music to optical media
US20020169926A1 (en) 2001-04-19 2002-11-14 Thomas Pinckney Systems and methods for efficient cache management in streaming applications
KR100395541B1 (ko) 2001-05-18 2003-08-25 삼성전자주식회사 콤비네이션 시스템 및 그에 적용되는 자동 복사 방법
US6993532B1 (en) * 2001-05-30 2006-01-31 Microsoft Corporation Auto playlist generator
US7076478B2 (en) 2001-06-26 2006-07-11 Microsoft Corporation Wrapper playlists on streaming media services
US6990497B2 (en) 2001-06-26 2006-01-24 Microsoft Corporation Dynamic streaming media management
GB0118436D0 (en) * 2001-07-27 2001-09-19 Hewlett Packard Co Synchronised cameras with auto-exchange
DE60202568T8 (de) 2001-08-08 2005-10-20 Matsushita Electric Industrial Co., Ltd., Kadoma Urheberrechtschutzsystem, Aufzeichungsvorrichtung, und Wiedergabevorrichtung
BR0212417A (pt) * 2001-09-10 2004-08-03 Thomson Licensing Sa Extensão de formato de arquivo m3u para suportar tarefas de interface e de navegação do usuário em um executor de áudio digital
WO2003025933A1 (en) * 2001-09-10 2003-03-27 Thomson Licensing S.A. Method and apparatus for creating an indexed playlist in a digital audio data player
US7068309B2 (en) * 2001-10-09 2006-06-27 Microsoft Corp. Image exchange with image annotation
US7432940B2 (en) 2001-10-12 2008-10-07 Canon Kabushiki Kaisha Interactive animation of sprites in a video production
US7102643B2 (en) * 2001-11-09 2006-09-05 Vibe Solutions Group, Inc. Method and apparatus for controlling the visual presentation of data
US7075550B2 (en) 2001-11-27 2006-07-11 Bonadio Allan R Method and system for graphical file management
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
US7159174B2 (en) 2002-01-16 2007-01-02 Microsoft Corporation Data preparation for media browsing
US7159000B2 (en) * 2002-03-21 2007-01-02 Microsoft Corporation Methods and systems for repairing playlists
US20030192044A1 (en) * 2002-04-04 2003-10-09 Huntsman Robert Ames Content filtering system and method
US7797446B2 (en) 2002-07-16 2010-09-14 Apple Inc. Method and system for updating playlists
US6987221B2 (en) * 2002-05-30 2006-01-17 Microsoft Corporation Auto playlist generation with multiple seed songs
US7243094B2 (en) 2002-05-31 2007-07-10 Softek Storage Solutions Corporation Method and system for intelligent storage management
US20030229672A1 (en) 2002-06-05 2003-12-11 Kohn Daniel Mark Enforceable spam identification and reduction system, and method thereof
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
US20030237091A1 (en) 2002-06-19 2003-12-25 Kentaro Toyama Computer user interface for viewing video compositions generated from a video composition authoring system using video cliplets
US20040001106A1 (en) 2002-06-26 2004-01-01 John Deutscher System and process for creating an interactive presentation employing multi-media components
AU2003267975A1 (en) 2002-06-27 2004-01-19 Piranha Media Distribution, Inc. Method and apparatus for the free licensing of digital media content
US20040024823A1 (en) 2002-08-01 2004-02-05 Del Monte Michael George Email authentication system
US20040044724A1 (en) * 2002-08-27 2004-03-04 Bell Cynthia S. Apparatus and methods to exchange menu information among processor-based devices
US20040064476A1 (en) 2002-09-30 2004-04-01 John Rounds Computer program, method, and media player
US7054888B2 (en) * 2002-10-16 2006-05-30 Microsoft Corporation Optimizing media player memory during rendering
US7136874B2 (en) 2002-10-16 2006-11-14 Microsoft Corporation Adaptive menu system for media players
US7043477B2 (en) * 2002-10-16 2006-05-09 Microsoft Corporation Navigating media content via groups within a playlist
US7085755B2 (en) * 2002-11-07 2006-08-01 Thomson Global Resources Ag Electronic document repository management and access system
US7366733B2 (en) * 2002-12-13 2008-04-29 Matsushita Electric Industrial Co., Ltd. Method and apparatus for reproducing play lists in record media
MXPA05006428A (es) 2002-12-17 2005-08-19 Thomson Licensing Sa Metodo y aparato para etiquetar y desplegar canciones en un reproductor de audio digital.
FR2852769B1 (fr) * 2003-03-20 2005-09-16 Eastman Kodak Co Procede de partage de donnees multimedia
JP4008840B2 (ja) * 2003-03-25 2007-11-14 クラリオン株式会社 再生装置
US6728729B1 (en) * 2003-04-25 2004-04-27 Apple Computer, Inc. Accessing media across networks
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
JP4164753B2 (ja) * 2003-09-24 2008-10-15 ソニー株式会社 ファイル管理装置、ファイル管理方法、ファイル管理方法のプログラム及びファイル管理方法のプログラムを記録した記録媒体
JP2005198165A (ja) 2004-01-09 2005-07-21 Canon Inc 画像再生装置、画像再生方法、コンピュータプログラム及びコンピュータ読み取り可能な記録媒体
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
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
US8516093B2 (en) * 2005-04-22 2013-08-20 Intel Corporation Playlist compilation system and method
US20070008321A1 (en) * 2005-07-11 2007-01-11 Eastman Kodak Company Identifying collection images with special events
US9230029B2 (en) * 2005-07-26 2016-01-05 Creative Technology Ltd System and method for modifying media content playback based on an intelligent random selection

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140079775A (ko) * 2011-09-15 2014-06-27 구글 인코포레이티드 비디오 관리 시스템

Also Published As

Publication number Publication date
WO2007001613A2 (en) 2007-01-04
WO2007001613A3 (en) 2007-12-06
US20100114986A1 (en) 2010-05-06
US20060020609A1 (en) 2006-01-26
EP1896933B1 (en) 2017-03-22
JP4965565B2 (ja) 2012-07-04
US20060265403A1 (en) 2006-11-23
CN101208653A (zh) 2008-06-25
US20120323917A1 (en) 2012-12-20
US8886685B2 (en) 2014-11-11
US7991803B2 (en) 2011-08-02
US8280920B2 (en) 2012-10-02
EP1896933A4 (en) 2010-10-27
US7668842B2 (en) 2010-02-23
CN100576166C (zh) 2009-12-30
JP2008547154A (ja) 2008-12-25
US20110218998A1 (en) 2011-09-08
US7680814B2 (en) 2010-03-16
EP1896933A2 (en) 2008-03-12

Similar Documents

Publication Publication Date Title
KR20080024137A (ko) 대형 재생 리스트를 위한 재생 리스트 구조
US7054888B2 (en) Optimizing media player memory during rendering
JP3174819U (ja) 標準化プレーリストの作成および統一の維持
US7650563B2 (en) Aggregating metadata for media content from multiple devices
JP4078276B2 (ja) 再生リスト内のグループを介した媒体コンテンツのナビゲート
US7293227B2 (en) Associating image files with media content
KR20080019013A (ko) 저속 검색 저장 장치로부터의 그래픽 검색
JP2011505648A (ja) マルチメディアファイルのための階層的で簡略なインデックス構造体
JP2004187272A (ja) メディアプレーヤーの適応型メニューシステム
US20150301995A1 (en) Method for editing and processing contents file and navigation information
US20060114763A1 (en) Content recording apparatus
US7609296B2 (en) Recording apparatus, recording method, and recording medium using an index file
US20040158862A1 (en) Apparatus for and method of searching multimedia contents on television
JP3833192B2 (ja) 情報作成装置および方法、並びにプログラム
JP2003272347A (ja) 音声関連情報が記録された情報記憶媒体及び音声関連情報の情報記録再生装置並びに情報記録再生方法
JP2007133898A (ja) 情報統合表示装置及び情報統合表示システム

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
SUBM Surrender of laid-open application requested