KR100959596B1 - 기록장치 및 방법 - Google Patents

기록장치 및 방법 Download PDF

Info

Publication number
KR100959596B1
KR100959596B1 KR1020037003618A KR20037003618A KR100959596B1 KR 100959596 B1 KR100959596 B1 KR 100959596B1 KR 1020037003618 A KR1020037003618 A KR 1020037003618A KR 20037003618 A KR20037003618 A KR 20037003618A KR 100959596 B1 KR100959596 B1 KR 100959596B1
Authority
KR
South Korea
Prior art keywords
data
storage medium
information storage
recording
file
Prior art date
Application number
KR1020037003618A
Other languages
English (en)
Other versions
KR20040028605A (ko
Inventor
히라사와쓰토무
Original Assignee
소니 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 소니 주식회사 filed Critical 소니 주식회사
Publication of KR20040028605A publication Critical patent/KR20040028605A/ko
Application granted granted Critical
Publication of KR100959596B1 publication Critical patent/KR100959596B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • 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
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/002Programmed access in sequence to a plurality of record carriers or indexed parts, e.g. tracks, thereof, e.g. for editing
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management Or Editing Of Information On Record Carriers (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Television Signal Processing For Recording (AREA)

Abstract

본 발명은, 예를 들면, 착탈가능한 기억매체에 기록되어 있는 데이터를 일시적으로 보관하는 경우에 사용하기 적합한 기록장치 및 방법에 관한 것이다. 스텝 501에서, MS에 기록되어 있는 스토어의 대상이 되는 디렉토리를 검색하고, 용량을 산출하여 디스플레이에 표시하게 한다. 스텝 S502에서, 스토어의 대상으로 하는 디렉토리를 선택하는 사용자의 조작을 접수한다. 스텝 503에서, 스토어의 대상으로 선택된 디렉토리에 속하는 모든 파일을 판독하고, 1개의 아카이브 파일로서 HDD에 기록한다. 스텝 S504에서, 기록한 아카이브 파일에, 원래의 대상 디렉토리 및 아카이브 파일의 파일명을 대응시켜 기록한다. 스텝 505에서, HDD에 스토어한 디렉토리를 MS로부터 소거한다. 본 발명은, 예를 들면, 오디오 데이터 서버에 적용할 수 있다.
기록장치, 기억매체, 일시 보관, 데이터 포맷, 복호

Description

기록장치 및 방법{RECORDING APPARATUS AND METHOD}
본 발명은, 기록장치 및 방법에 관한 것으로, 예를 들면, 착탈가능한 기억매체에 기록되어 있는 데이터를 일시적으로 보관하는 경우에 적합한 기록장치 및 방법에 관한 것이다.
예를 들면, 네트워크 워크맨(상표) 등의 포터블 디바이스(이하, PD라고 기술한다), 디지털스틸카메라, 디지털비디오카메라, IC 레코더, 퍼스널컴퓨터 등의 전자기기에서는, 메모리스틱(상표, 이하, MS라고 기술한다) 등의 착탈가능한 반도체메모리를 이용할 수 있는 것이 있다.
1개의 MS는, 그 기록용량이 허용하는 범위에서, 전술한 것 같은 다른 종류의 전자기기에서 공용할 수 있다. 예를 들면, 1개의 MS를 디지털스틸카메라에 장착하여 화상 데이터를 기록한 후, IC 레코더에 장착하여 음성데이터를 기록하거나, 다시, 퍼스널컴퓨터에 장착하여 임의의 데이터를 기록할 수 있다.
그런데, 전술한 것과 같이 복수의 전자기기에서 MS를 공용하고 있으면, 이미 MS에 기록되어 있는 데이터가 존재하기 때문에, 기록하고 싶은 데이터에 대해 MS의 기록용량이 부족한 사태가 발생할 수 있다. 그와 같은 경우, 이미 MS에 기록되어 있는 데이터를 다른 기록미디어에 일시적으로 바꿔 옮기면 된다(예를 들면, MS를 퍼스널컴퓨터에 장착하고, 퍼스널컴퓨터에 내장된 하드 디스크 드라이브로 바꿔 옮기면 된다).
그러나, 퍼스널컴퓨터 등을 사용하여, 이미 MS에 기록되어 있는 데이터를 다른 기록미디어에 일시적으로 바꿔 옮기는 일련의 처리에서는, 사용자가 바꿔 옮기는 데이터를 선택하는 수고 등이 있어 대단히 번거롭다. 또한, 다른 기록미디어에 일시적으로 바꿔 옮긴 데이터를 MS로 되돌리는 처리도 사용자에게 있어서 번거롭다.
(발명의 개시)
본 발명은 이러한 상황을 감안하여 이루어진 것으로, MS에 기록되어 있는 소정의 포맷의 데이터를 일시적으로 바꿔 옮기는 처리와, 바꿔 옮긴 소정의 포맷의 데이터를 MS로 되돌리는 처리를 자동적으로 실행할 수 있도록 하는 것을 목적으로 한다.
본 발명의 제 1 기록장치는, 사용자의 조작을 접수하는 접수수단과, 제 1 정보기억매체로부터, 콘텐츠데이터와는 다른 포맷의 데이터 파일을 검색하는 검색수단과, 검색수단에 의해 검색된 데이터 파일을 제 1 정보기억매체로부터 판독하는 판독수단과, 판독수단에 의해 판독된 데이터 파일을, 아카이브(archive) 파일로서 내장하는 제 2 정보기억매체에 보관하는 보관수단과, 제 1 정보기억매체에 기록되 어 있는 데이터 파일을 소거하는 소거수단과, 접수수단에 의해 접수된 사용자의 조작에 대응하여 검색수단, 판독수단, 보관수단 및 소거수단을 제어하는 제어수단을 포함하는 것을 특징으로 한다.
상기 검색수단은, 콘텐츠데이터와는 다른 포맷의 데이터 파일로서, 제 1 정보기억매체의 소정의 디렉토리에 속하는 데이터 파일을 검색하도록 할 수 있다.
본 발명의 제 1 기록장치는, 콘텐츠데이터를 디코드하는 디코드수단을 더 포함할 수 있고, 상기 검색수단은, 디코드수단이 디코드불가능한 데이터 파일을 검색하도록 할 수 있다.
상기 검색수단은, 콘텐츠데이터와는 다른 포맷의 데이터 파일로서, 저작권정보가 부가되어 있지 않은 데이터 파일을 검색하도록 할 수 있다.
상기 보관수단은, 판독수단에 의해 판독된 동일한 포맷의 복수의 데이터 파일을, 1개의 아카이브 파일로서, 내장하는 제 2 정보기억매체에 보관하도록 할 수 있다.
본 발명의 제 1 기록방법은, 사용자의 조작을 접수하는 접수스텝과, 제 1 정보기억매체로부터 콘텐츠데이터와는 다른 포맷의 데이터 파일을 검색하는 검색스텝과, 검색스텝의 처리에서 검색된 데이터 파일을 제 1 정보기억매체로부터 판독하는 판독스텝과, 판독스텝의 처리에서 판독된 데이터 파일을, 아카이브 파일로서 내장하는 제 2 정보기억매체에 보관하는 보관스텝과, 제 1 정보기억매체에 기록되어 있는 데이터파일을 소거하는 소거스텝과, 접수스텝의 처리에서 접수된 사용자의 조작에 대응하여 검색스텝의 처리, 판독스텝의 처리, 보관스텝의 처리 및 소거스텝의 처리를 제어하는 제어스텝을 포함하는 것을 특징으로 한다.
본 발명의 제 1 기억매체의 프로그램은, 사용자의 조작을 접수하는 접수스텝과, 제 1 정보기억매체로부터 콘텐츠데이터와는 다른 포맷의 데이터 파일을 검색하는 검색스텝과, 검색스텝의 처리에서 검색된 데이터 파일을 제 1 정보기억매체로부터 판독하는 판독스텝과, 판독스텝의 처리에서 판독된 데이터 파일을, 아카이브 파일로서, 내장하는 제 2 정보기억매체에 보관하는 보관스텝과, 제 1 정보기억매체에 기록되어 있는 데이터 파일을 소거하는 소거스텝과, 접수스텝의 처리에서 접수된 사용자의 조작에 대응하여 검색스텝의 처리, 판독스텝의 처리, 보관스텝의 처리 및 소거스텝의 처리를 제어하는 제어스텝을 포함하는 것을 특징으로 한다.
본 발명의 제 1 프로그램은, 사용자의 조작을 접수하는 접수스텝과, 제 1 정보기억매체로부터 콘텐츠데이터와는 다른 포맷의 데이터파일을 검색하는 검색스텝과, 검색스텝의 처리에서 검색된 데이터 파일을 제 1 정보기억매체로부터 판독하는 판독스텝과, 판독스텝의 처리에서 판독된 데이터 파일을, 아카이브 파일로서, 내장하는 제 2 정보기억매체에 보관하는 보관스텝과, 제 1 정보기억매체에 기록되어 있는 데이터 파일을 소거하는 소거스텝과, 접수스텝의 처리에서 접수된 사용자의 조작에 대응하여 검색스텝의 처리, 판독스텝의 처리, 보관스텝의 처리 및 소거스텝의 처리를 제어하는 제어스텝을 컴퓨터에서 실행시키는 것을 특징으로 한다.
본 발명의 제 2 기록장치는, 사용자의 조작을 접수하는 접수수단과, 제 1 정보기억매체로부터 콘텐츠데이터와는 다른 포맷의 데이터 파일을 검색하는 검색수단과, 검색수단에 의해 검색된 데이터 파일을 제 1 정보기억매체로부터 판독하는 판 독수단과, 판독수단에 의해 판독된 데이터 파일을, 아카이브 파일로서, 내장하는 제 2 정보기억매체에 보관하는 보관수단과, 제 1 정보기억매체에 기록되어 있는 데이터 파일을 소거하는 소거수단과, 접수수단에 의해 접수된 사용자의 조작에 대응하여 검색수단, 판독수단, 보관수단 및 소거수단을 제어하는 제어수단을 포함하는 것을 특징으로 한다.
상기 검색수단은, 콘텐츠데이터와는 다른 포맷의 데이터 파일로서, 제 1 정보기억매체의 소정의 디렉토리에 속하는 데이터 파일을 검색하도록 할 수 있다.
본 발명의 제 2 기록장치는, 콘텐츠데이터를 디코드하는 디코드수단을 더 포함할 수 있고, 상기 검색수단은, 디코드수단이 디코드불가능한 데이터파일을 검색하도록 할 수 있다.
상기검색수단은, 콘텐츠데이터와는 다른 포맷의 데이터 파일로서, 저작권정보가 부가되어 있지 않은 데이터 파일을 검색하도록 할 수 있다.
상기 보관수단은, 판독수단에 의해 판독된 동일한 포맷의 복수의 데이터 파일을, 1개의 아카이브 파일로서, 내장하는 제 2 정보기억매체에 보관하도록 할 수 있다.
본 발명의 제 3 기록장치는, 사용자의 조작을 접수하는 접수수단과, 내장하는 제 2 정보기억매체에 보관되어 있는 아카이브 파일을 검색하는 검색수단과, 검색수단에 의해 검색된 아카이브 파일을 제 2 정보기억매체로부터 판독하는 판독수단과, 판독수단에 의해 판독된 아카이브 파일에 근거하여, 제 1 정보기억매체에 데이터 파일을 복원하는 복원수단과, 제 2 정보기억매체에 보관되어 있는 아카이브 파일을 소거하는 소거수단과, 접수수단에 의해 접수된 사용자의 조작에 대응하여 검색수단, 판독수단, 복원수단 및 소거수단을 제어하는 제어수단을 포함하는 것을 특징으로 한다.
상기 검색수단은, 제 2 정보기억매체의 소정의 디렉토리에 속하는 아카이브 파일을 검색하도록 할 수 있다.
본 발명의 제 3 기록장치는, 콘텐츠데이터를 디코드하는 디코드수단을 더 포함할 수 있으며, 상기검색수단은, 디코드수단이 디코드불가능한 아카이브 파일을 검색하도록 할 수 있다.
상기 검색수단은, 저작권정보가 부가되어 있지 않은 아카이브 파일을 검색하도록 할 수 있다.
본 발명의 제 3 기록방법은, 사용자의 조작을 접수하는 접수스텝과, 내장하는 제 2 정보기억매체에 보관되어 있는 아카이브 파일을 검색하는 검색스텝과, 검색스텝의 처리에서 검색된 아카이브 파일을 제 2 정보기억매체로부터 판독하는 판독스텝과, 판독스텝의 처리에서 판독된 아카이브 파일에 근거하여, 제 1 정보기억매체에 데이터 파일을 복원하는 복원스텝과, 제 2 정보기억매체에 보관되어 있는 아카이브 파일을 소거하는 소거스텝과, 접수스텝의 처리에서 접수된 사용자의 조작에 대응하여 검색스텝의 처리, 판독스텝의 처리, 복원스텝의 처리 및 소거스텝의 처리를 제어하는 제어스텝을 포함하는 것을 특징으로 한다.
본 발명의 제 3 기억매체의 프로그램은, 사용자의 조작을 접수하는 접수스텝과, 내장하는 제 2 정보기억매체에 보관되어 있는 아카이브 파일을 검색하는 검색 스텝과, 검색스텝의 처리에서 검색된 아카이브 파일을 제 2 정보기억매체로부터 판독하는 판독스텝과, 판독스텝의 처리에서 판독된 아카이브 파일에 근거하여, 제 1 정보기억매체에 데이터 파일을 복원하는 복원스텝과, 제 2 정보기억매체에 보관되어 있는 아카이브 파일을 소거하는 소거스텝과, 접수스텝의 처리에서 접수된 사용자의 조작에 대응하여 검색스텝의 처리, 판독스텝의 처리, 복원스텝의 처리 및 소거스텝의 처리를 제어하는 제어스텝을 포함하는 것을 특징으로 한다.
본 발명의 제 3 프로그램은, 사용자의 조작을 접수하는 접수스텝과, 내장하는 제 2 정보기억매체에 보관되어 있는 아카이브 파일을 검색하는 검색스텝과, 검색스텝의 처리에서 검색된 아카이브 파일을 제 2 정보기억매체로부터 판독하는 판독스텝과, 판독스텝의 처리에서 판독된 아카이브 파일에 근거하여, 제 1 정보기억매체에 데이터 파일을 복원하는 복원스텝과, 제 2 정보기억매체에 보관되어 있는 아카이브 파일을 소거하는 소거스텝과, 접수스텝의 처리에서 접수된 사용자의 조작에 대응하여 검색스텝의 처리, 판독스텝의 처리, 복원스텝의 처리 및 소거스텝의 처리를 제어하는 제어스텝을 컴퓨터에서 실행시키는 것을 특징으로 한다.
본 발명의 제 4 기록장치는, 사용자의 조작을 접수하는 접수수단과, 내장하는 제 2 정보기억매체에 보관되어 있는 아카이브 파일을 검색하는 검색수단과, 검색수단에 의해 검색된 아카이브 파일을 제 2 정보기억매체로부터 판독하는 판독수단과, 판독수단에 의해 판독된 아카이브 파일에 근거하여, 제 1 정보기억매체에 데이터 파일을 복원하는 복원수단과, 제 2 정보기억매체에 보관되어 있는 아카이브 파일을 소거하는 소거수단과, 접수수단에 의해 접수된 사용자의 조작에 대응하여 검색수단, 판독수단, 복원수단 및 소거수단을 제어하는 제어수단을 포함하는 것을 특징으로 한다.
상기 검색수단은, 제 2 정보기억매체의 소정의 디렉토리에 속하는 아카이브 파일을 검색하도록 할 수 있다.
본 발명의 제 4 기록장치는, 콘텐츠데이터를 디코드하는 디코드수단을 더 포함할 수 있고, 상기 검색수단은, 디코드수단이 디코드불가능한 아카이브 파일을 검색하도록 할 수 있다.
상기 검색수단은, 저작권정보가 부가되어 있지 않은 아카이브 파일을 검색하도록 할 수 있다.
본 발명의 제 5 기록장치는, 외부 정보기억매체로부터 특정한 속성인 특정데이터를 검색하는 검색부와, 검색부에 의해 검색된 특정데이터를 판독하는 판독부와, 판독부에 의해 판독된 특정데이터를 내부 정보기억매체에 기억하는 기억 콘트롤러와, 외부 정보기억매체에 기억되는 특정 데이터를 소거하는 소거 콘트롤러와, 사용자 지시에 따라서 자동적으로 검색부가 외부 정보기억매체로부터 특정데이터를 검색함과 동시에 판독부가 검색된 특정데이터를 판독하고, 다시, 기억 콘트롤러가 특정데이터를 내부 정보기억매체에 기록함과 동시에 소거 콘트롤러가 특정데이터를 외부기억매체로부터 소거하도록 제어하는 콘트롤러를 구비하는 것을 특징으로 한다.
상기 검색부는, 외부 정보기억매체로부터 특정디렉토리로 관리되는 특정데이터를 검색하도록 할 수 있다.
상기 검색부는, 다시, 외부 정보기억매체로부터 저작권 관리되고 있지 않는 특정데이터를 검색하도록 할 수 있다.
본 발명의 제 5 기록장치는, 소정데이터를 복호하는 디코더를 더 구비할 수 있으며, 상기 검색부는, 디코더에 의해 복호불가능한 특정데이터를 검색하도록 할 수 있다.
본 발명의 제 6 기록장치는, 내부 정보기억매체로부터 특정한 속성인 특정데이터를 검색하는 검색부와, 검색부에 의해 검색된 특정데이터를 판독하는 판독부와, 판독부에 의해 판독된 특정데이터를 외부 정보기억매체에 기억하는 기억 콘트롤러와, 내부 정보기억매체에 기억되는 특정데이터를 소거하는 소거 콘트롤러와, 사용자 지시에 따라서 자동적으로 검색부가 내부 정보기억매체로부터 특정데이터를 검색함과 동시에 판독부가 검색된 특정데이터를 판독하고, 다시, 기억 콘트롤러가 특정데이터를 외부 정보기억매체에 기록함과 동시에 소거 콘트롤러가 특정데이터를 내부 정보기억매체로부터 소거하도록 제어하는 콘트롤러를 구비하는 것을 특징으로 한다.
상기 검색부는, 외부 정보기억매체로부터 특정디렉토리에서 관리되는 특정데이터를 검색하도록 할 수 있다.
상기 검색부는, 다시, 내부 정보기억매체로부터 저작권 관리되고 있지 않는 특정데이터를 검색하도록 할 수 있다.
본 발명의 제 6 기록장치는, 소정데이터를 복호하는 디코더를 더 구비할 수 있으며, 상기 검색부는, 디코더에 의해 복호불가능한 특정데이터를 검색하도록 할 수 있다.
본 발명의 제 1 기록장치 및 방법 및 프로그램에 있어서는, 사용자의 조작에 대응하여, 제 1 정보기억매체로부터 콘텐츠데이터와는 다른 포맷의 데이터 파일이 검색되고, 검색된 데이터 파일이 제 1 정보기억매체로부터 판독되며, 판독된 데이터 파일이, 아카이브 파일로서, 내장하는 제 2 정보기억매체에 보관되고, 제 1 정보기억매체에 기록되어 있는 데이터 파일이 소거된다.
본 발명의 제 2 기록장치에 있어서는, 사용자의 조작에 대응하여, 제 1 정보기억매체로부터 콘텐츠데이터와는 다른 포맷의 데이터 파일이 검색되고, 검색된 데이터 파일이 제 1 정보기억매체로부터 판독되며, 판독된 데이터 파일이, 아카이브 파일로서, 내장하는 제 2 정보기억매체에 보관되고, 제 1 정보기억매체에 기록되어 있는 데이터 파일이 소거된다.
본 발명의 제 3 기록장치 및 방법 및 프로그램에 있어서는, 사용자의 조작에 대응하여, 내장하는 제 2 정보기억매체에 보관되어 있는 아카이브 파일이 검색되고, 검색된 아카이브 파일이 제 2 정보기억매체로부터 판독되며, 판독된 아카이브 파일에 근거하여, 제 1 정보기억매체에 데이터 파일이 복원되고, 제 2 정보기억매체에 보관되어 있는 아카이브 파일이 소거된다.
본 발명의 제 4 기록장치에 있어서는, 사용자의 조작에 대응하여, 내장하는 제 2 정보기억매체에 보관되어 있는 아카이브 파일이 검색되고, 검색된 아카이브 파일이 제 2 정보기억매체로부터 판독되며, 판독된 아카이브 파일에 근거하여, 제 1 정보기억매체에 데이터 파일이 복원되고, 제 2 정보기억매체에 보관되어 있는 아 카이브 파일이 소거된다.
본 발명의 제 5 기록장치에 있어서는, 사용자 지시에 따라서, 자동적으로, 외부 정보기억매체로부터 특정데이터가 검색됨과 동시에 검색된 특정데이터가 판독되며, 다시, 특정데이터가 내부 정보기억매체에 기록됨과 동시에 특정데이터가 외부기억매체로부터 소거되도록 제어된다.
본 발명의 제 6 기록장치에 있어서는, 사용자 지시에 따라서, 자동적으로, 내부 정보기억매체로부터 특정데이터가 검색됨과 동시에 검색된 특정데이터가 판독되고, 특정데이터가 외부 정보기억매체에 기록됨과 동시에 특정데이터가 내부 정보기억매체로부터 소거되도록 제어된다.
도 1은 본 발명의 실시예인 오디오 서버(1)의 개요를 설명하기 위한 도면이다.
도 2는 오디오 서버(1)의 외관도이다.
도 3은 오디오 서버(1)의 평면도이다.
도 4는 오디오 서버(1)의 배면도이다.
도 5는 오디오 서버(1)의 정면도이다.
도 6은 오디오 서버(1)의 하드웨어적인 구성예를 나타낸 블록도이다.
도 7은 오디오 서버(1)가 실행하는 펌웨어를 나타낸 도면이다.
도 8은 HDD(58)에 적용되는 FAT형 파일 시스템(데이터 포맷)을 설명하기 위 한 도면이다.
도 9는 파일기록영역(121)의 논리구조를 나타낸 도면이다.
도 10은 FAT(141)의 구성을 도시한 도면이다.
도 11은 FAT(141)의 일례를 나타낸 도면이다.
도 12는 파일기록영역(121)의 기록의 일례를 도시한 도면이다.
도 13은 사이즈기록영역(151)의 구성을 나타낸 도면이다.
도 14는 파일작성처리를 설명하는 흐름도이다.
도 15는 빈 클러스터 취득처리를 설명하는 흐름도이다.
도 16은 FAT엔트리 판독처리를 설명하는 흐름도이다.
도 17은 연결처리를 설명하는 흐름도이다.
도 18은 파일X의 판독처리를 설명하는 흐름도이다.
도 19는 파일X의 검색처리를 설명하는 흐름도이다.
도 20은 파일X의 역판독처리를 설명하는 흐름도이다.
도 21은 오브젝트기록영역(122)의 논리구조를 나타낸 도면이다.
도 22는 오브젝트형 기록영역(163)의 구성을 나타낸 도면이다.
도 23은 영역정보기록영역(164)을 설명하기 위한 도면이다.
도 24는 오브젝트관리부(124)의 구성을 나타낸 도면이다.
도 25는 세션관리정보(181)의 구성을 나타낸 도면이다.
도 26a는 기본오브젝트 제1형을 나타낸 도면이다.
도 26b는 기본오브젝트 제2형을 나타낸 도면이다.
도 27은 오브젝트 식별자의 구성을 나타낸 도면이다.
도 28은 오브젝트 작성처리를 설명하는 흐름도이다.
도 29는 세션개설처리를 설명하는 흐름도이다.
도 30은 빈 엔트리 확보처리를 설명하는 흐름도이다.
도 31은 기록세션확정처리를 설명하는 흐름도이다.
도 32는 세션파기처리를 설명하는 흐름도이다.
도 33은 오브젝트 검색처리를 설명하는 흐름도이다.
도 34는 엔트리 취득처리를 설명하는 흐름도이다.
도 35는 오브젝트 갱신처리를 설명하는 흐름도이다.
도 36은 스트림오브젝트 작성처리를 설명하는 흐름도이다.
도 37은 스트림오브젝트 검색처리를 설명하는 흐름도이다.
도 38은 오브젝트의 디렉토리구조를 나타낸 도면이다.
도 39는 폴더리스트 오브젝트의 포맷을 나타낸 도면이다.
도 40은 폴더 오브젝트의 포맷을 나타낸 도면이다.
도 41은 앨범 오브젝트의 포맷을 나타낸 도면이다.
도 42는 트랙 오브젝트의 포맷을 나타낸 도면이다.
도 43은 트랙 오브젝트의 AC의 상세 구성을 나타낸 도면이다.
도 44는 콘텐츠 데이터의 포맷을 나타낸 도면이다.
도 45는 CC 오브젝트의 포맷을 나타낸 도면이다.
도 46은 CC 데이터의 포맷을 나타낸 도면이다.
도 47은 CD 리핑이 실행될 때의 데이터의 흐름을 나타낸 도면이다.
도 48은 CD 레코딩이 실행될 때의 데이터의 흐름을 나타낸 도면이다.
도 49는 디지털입력에 대한 HD 레코딩이 실행될 때의 데이터의 흐름을 나타낸 도면이다.
도 50은 아날로그입력에 대한 HD 레코딩이 실행될 때의 데이터의 흐름을 나타낸 도면이다.
도 51은 HD 플레이가 실행될 때의 데이터의 흐름을 나타낸 도면이다.
도 52는 CD 플레이가 실행될 때의 데이터의 흐름을 나타낸 도면이다.
도 53a는 MS 플레이가 실행될 때의 데이터의 흐름을 나타낸 도면이다.
도 53b는 MS 플레이가 실행될 때의 데이터의 흐름을 나타낸 도면이다.
도 54는 MS 체크아웃/무브아웃이 실행될 때의 데이터의 흐름을 나타낸 도면이다.
도 55는 MS 임포트/무브인이 실행될 때의 데이터의 흐름을 나타낸 도면이다.
도 56은 PD 체크아웃이 실행될 때의 데이터의 흐름을 나타낸 도면이다.
도 57은 CD 리핑을 설명하기 위한 도면이다.
도 58은 CD 레코딩을 설명하기 위한 도면이다.
도 59는 CD 리핑 또는 CD 레코딩에서의 버퍼(56)의 구분을 설명하기 위한 도면이다.
도 60은 각 버퍼의 상태천이를 나타낸 도면이다.
도 61은 HDD(58)에 설치되는 링 버퍼(241)를 나타낸 도면이다.
도 62는 CD 리핑시의 각 버퍼사이의 데이터의 흐름을 설명하기 위한 도면이다.
도 63은 녹음속도설정처리를 설명하는 흐름도이다.
도 64는 CD 녹음처리를 설명하는 흐름도이다.
도 65는 링 버퍼 정보 초기화처리를 설명하는 흐름도이다.
도 66은 1곡 분량의 녹음처리를 설명하는 흐름도이다.
도 67은 모니터음성출력처리를 설명하는 흐름도이다.
도 68은 링 버퍼에 대한 기록 처리를 설명하는 흐름도이다.
도 69는 링 버퍼에 대한 판독처리를 설명하는 흐름도이다.
도 70a는 녹음하는 곡을 설정할 때의 디스플레이(15)의 표시예를 나타낸 도면이다.
도 70b는 녹음중의 디스플레이(15)의 표시예를 나타낸 도면이다.
도 71은 재생범위의 설정을 설명하기 위한 도면이다.
도 72는 플레이 리스트의 일례를 나타낸 도면이다.
도 73은 플레이 리스트의 일례를 나타낸 도면이다.
도 74는 플레이 리스트의 일례를 나타낸 도면이다.
도 75는 플레이 리스트의 일례를 나타낸 도면이다.
도 76은 플레이 리스트 작성처리를 설명하는 흐름도이다.
도 77은 전곡 반복 재생처리를 설명하는 흐름도이다.
도 78은 무브아웃처리를 설명하는 흐름도이다.
도 79는 무브아웃처리의 상태천이를 나타낸 도면이다.
도 80은 무브아웃처리에서의 디스플레이(15)의 표시예를 나타낸 도면이다.
도 81은 무브아웃처리에서의 디스플레이(15)의 표시예를 나타낸 도면이다.
도 82는 무브인처리를 설명하는 흐름도이다.
도 83은 무브인처리의 상태천이를 나타낸 도면이다.
도 84는 무브인처리에서의 디스플레이(15)의 표시예를 나타낸 도면이다.
도 85는 무브인처리에서의 디스플레이(15)의 표시예를 나타낸 도면이다.
도 86은 복귀처리를 설명하는 흐름도이다.
도 87은 무브아웃 복원처리를 설명하는 흐름도이다.
도 88은 무브인 복원처리를 설명하는 흐름도이다.
도 89는 체크아웃처리를 설명하는 흐름도이다.
도 90은 체크아웃처리에서의 디스플레이(15)의 표시예를 나타낸 도면이다.
도 91은 체크아웃처리에서의 디스플레이(15)의 표시예를 나타낸 도면이다.
도 92는 체크인처리를 설명하는 흐름도이다.
도 93은 교환(exchange)처리에서의 디스플레이(15)의 표시예를 나타낸 도면이다.
도 94는 교환처리를 설명하는 흐름도이다.
도 95는 교환처리에서의 디스플레이(15)의 표시예를 나타낸 도면이다.
도 96은 교환처리에서의 디스플레이(15)의 표시예를 나타낸 도면이다.
도 97은 교환처리에서의 디스플레이(15)의 표시예를 나타낸 도면이다.
도 98은 PD(5)의 하드웨어적인 구성예를 나타낸 블록도이다.
도 99는 MS(4)에 기록되어 있는 디렉토리 및 파일의 종류를 나타낸 도면이다.
도 100은 아카이브 파일이 기록되는 위치를 설명하는 도면이다.
도 101은 스토어처리를 설명하는 흐름도이다.
도 102는 스토어처리에서의 디스플레이(15)의 표시예를 나타낸 도면이다.
도 103은 스토어처리에서의 디스플레이(15)의 표시예를 나타낸 도면이다.
도 104는 스토어처리에서의 디스플레이(15)의 표시예를 나타낸 도면이다.
도 105는 리스토어처리를 설명하는 흐름도이다.
도 106은 리스토어처리에서의 디스플레이(15)의 표시예를 나타낸 도면이다.
도 107은 리스토어처리에서의 디스플레이(15)의 표시예를 나타낸 도면이다.
도 108은 도 6의 플래시 R0M의 영역구성을 나타낸 도면이다.
도 109는 프로그램 재기록처리를 설명하는 흐름도이다.
도 110은 기동용 프로그램의 처리를 설명하는 흐름도이다.
본 발명의 실시예인 오디오 서버의 개요에 대해서, 도 1을 참조하여 설명한다. 이 오디오 서버(1)는, 음악 CD(3)에 기록되어 있는 PCM(Pulse Code Modulation)데이터를 판독하고, ATRAC(Adaptive Transform Acoustic Coding) 3방식에 의해서 인코드하여 얻어진 부호화데이터를 하드디스크 드라이브(58)(도 6)에 기 록하고, 기록한 부호화데이터를, 상층측으로부터 폴더리스트, 폴더, 앨범 및 트랙 등의 계층구조를 이루는 오브젝트에 대응시켜 관리한다.
폴더리스트에는, 1단 밑의 계층에 위치하는 복수의 폴더를 포함시킬 수 있다. 폴더에는, 1단 밑의 계층에 위치하는 복수의 앨범을 포함시킬 수 있다. 앨범에는, 1단 밑의 계층에 위치하는 복수의 트랙을 포함시킬 수 있다. 계층구조의 최하층에 위치하는 트랙은, 1곡 분량의 부호화데이터와 1 대 1로 대응한다.
이하, 부호화데이터를 콘텐츠 데이터라고도 기술한다. 폴더리스트, 폴더, 앨범 및 트랙을 오브젝트라고도 기술한다. 사용자는, 오브젝트를 지정하여 각종 명령을 지령한다. 또, 오브젝트의 계층구조의 상세내용에 대해서는, 도 38을 참조하여 후술한다.
또한, 오디오 서버(1)는, 음악 CD(3)을 재생하거나, 하드디스크 드라이브(이하, HDD라고 기술한다)(58)에 기록되어 있는 부호화데이터를 디코드하거나 해서, 얻어진 음성신호를 스피커(2)로부터 출력한다.
또한, 오디오 서버(1)는, MS 슬롯(45)(도 5)에 삽입된 매직게이트(상표)에 대응하는 메모리 스틱(상표)(이하, MS라고 기술한다)(4)이나, 커넥터(43)(도 5)에 접속되는 네트워크 워크맨(상표) 등의 포터블디바이스(이하, PD라고 기술한다)(5)에 대하여, HDD(58)에 기록되어 있는 부호화데이터를, 체크아웃(check out)처리 또는 무브아웃(move out)처리에 의해 기록함과 동시에, MS(4)나 PD(5)에 기록되어 있는 부호화데이터를, 체크인(check in)처리, 무브인처리, 또는 임포트(import)처리에 의해서 HDD(58)에 기록한다.
여기서, 매직게이트란, 매직게이트 대응의 MS(4)에 기록하는 데이터의 암호화와, MS(4)를 삽입하여 사용하는 오디오 서버(1)의 상호인증의 2개의 기술에 의해 데이터의 저작권을 보호하기 위한 기술이고, 디지털 오디오데이터가 부정한 복사, 재생, 개찬을 방지하는 것이 가능하다. 매직게이트는, SDMI(Secure Digital Music Initiative)규격에 준거하고 있다.
이때, 오디오 서버(1)와, MS(4) 또는 PD(5)와의 사이의 체크아웃처리, 체크인처리, 무브아웃처리, 무브인처리 및 임포트처리에 대해서는 후술한다.
부호화데이터가 기록된 MS(4)는, 오디오 서버(1)로부터 추출되고, 예를 들면, 퍼스널 컴퓨터(6)에 장착되어, 기록되어 있는 부호화데이터가 판독되어 디코드된다.
부호화데이터가 기록된 PD(5)는, 부호화데이터를 디코드하여 얻어진 음성신호를 헤드폰으로부터 출력한다.
리모트콘트롤러(7)는, 사용자로부터의 조작을 접수하여 대응하는 제어신호를 오디오 서버(1)에 송신한다.
다음으로, 오디오 서버(1)의 외관에 대해서, 도 2 내지 도 5를 참조하여 설명한다. 도 2는, 오디오 서버(1)의 정면 위쪽에서 본 외관도이다. 도 3은, 오디오 서버(1)의 평면도이다. 도 4는, 오디오 서버(1)의 배면도이다. 도 5는, 정면도이다.
오디오 서버(1)의 상면에는, CD를 장착하는 CD 트레이(도시되지 않음)의 덮개(40)가 설치되어 있고, 덮개(40)에는, 도 3에 나타낸 바와 같이, 파워버튼(11) 등의 버튼류 외, 각종 정보를 표시하는 디스플레이(15)가 배치되어 있다. 파워(POWER)버튼(11)은, 오디오 서버(1)의 전원을 온/오프시켰을 때에 조작된다. 펑션(FUNCTION)버튼(12)은, 음원으로서, 음악 CD(3), HDD(58), AUX 인(IN)단자(31), MS(4) 및 PD(5) 중 하나를 선택할 때에 조작된다.
플레이모드(PLAY MODE)버튼(13)은, 재생모드를, 재생영역에 포함되는 모든 트랙을 순차적으로 1회씩 재생하는 노멀재생, 재생영역에 포함되는 모든 트랙을 순차적으로 재생하는 것을 반복하는 전곡 반복, 한 트랙만을 반복하여 재생하는 1곡 반복, 재생영역에 포함되는 모든 트랙의 중에서 랜덤하게 선택하여 재생하는 것을 반복하는 랜덤반복, 또는, HDD 전체에 포함되는 모든 트랙 중에서 랜덤하게 선택하는 모양의 애니메이션을 표시함과 동시에 선택한 트랙을 재생하는 것을 반복하는 슬롯머신재생으로 바꿀 때에 조작된다. 또한, 재생영역에 대해서는, 도 71을 참조하여 후술한다.
디스플레이(DISPLAY)버튼(14)은, 디스플레이(15)의 표시내용을 전환할 때 조작된다. LCD(Liquid Crystal Display)등으로 이루어지는 디스플레이(15)는, 동작상황이나 오디오데이터에 관한 정보를 표시한다.
음량(VOLUME)버튼(16)은, 출력하는 음량을 증감시킬 때 조작된다. 커서버튼(17)은, 디스플레이(15)에 표시되는 커서를 이동시킬 때에 조작된다. 선택(SELECT)버튼(18)은, 디스플레이(15)의 커서로 표시되어 있는 오브젝트 등을 선택할 때나, 검색시 오름차순, 내림차순을 바꿀 때에 조작된다. 소거(ERASE)버튼(19)은, 트랙 등의 오브젝트를 소거할 때에 조작된다.
엔터(ENTER)버튼(20)은, 표시되어 있는 메뉴나 선택되어 있는 트랙 등의 오브젝트를 결정할 때 조작된다. 메뉴/취소(MENU/CANCEL)버튼(21)은, 계층적으로 설치되어 있는 각종 조작메뉴를 표시시킬 때 또는 취소할 때에 조작된다. 교환(EXCHANGE)버튼(22)은, MS(4) 또는 PD(5)에 대하여, 자동적으로 체크인처리 및 체크아웃처리를 시행할 때에 조작된다.
레코드(RECORD)버튼(23)은, 음악 CD(3)의 오디오데이터를 재생하면서 HDD(58)에 녹음할 때 조작된다. 하이 스피드 레코드(Hi SPEED RECORD)버튼(24)은, 음악 CD(3)의 오디오데이터를 HDD(58)에 고속 녹음할 때에 조작된다. 또, 이 때에도 녹음되는 오디오데이터의 음성이 스피커(2) 등으로부터 출력된다.
정지버튼(25)은, 실행중의 재생이나 녹음을 중지할 때에 조작된다. 재생/일시정지버튼(26)은, 재생의 개시, 재생 포즈, 재생 포즈의 해제를 지시할 때에 조작된다. 두출(頭出)버튼(27)은, 현재 트랙 또는 전 트랙의 두출 또는, 되감기 재생을 지시할 때에 조작된다. 두출버튼(28)은, 다음 트랙의 두출 또는 빨리 감기 재생을 지시할 때에 조작된다.
이때, 도시는 생략하지만, 리모트콘트롤러(7)에는, 덮개(40)에 배치되어 있는 파워버튼(11) 등의 버튼류와 동등한 기능을 가지는 버튼이 배치되어 있다.
오디오 서버(1)의 배면에는, 도 4에 나타낸 바와 같이, AUX 인 단자(31), 라인아웃단자(32), 서브우퍼단자(33), 스피커(L, R)단자(34), 리셋트버튼(35) 및 DC 인 단자(36)가 배치되어 있다.
AUX 인 단자(31)는, 오디오출력기기(도시되지 않음)를 접속할 수 있고, 접속 한 오디오출력기기로부터의 디지털오디오데이터 또는 아날로그의 음성신호를 입력할 수 있다. 라인아웃단자(32)는, 증폭기기(도시되지 않음) 등을 접속할 수 있고, 접속한 증폭기기에 아날로그음성신호를 출력할 수 있다. 서브우퍼단자(33)는, 서브우퍼(도시되지 않음)를 접속할 수 있고, 서브우퍼로 재생한 음성신호의 저주파성분을 출력할 수 있다. 스피커(L, R)단자(34)는, 스피커(2)를 접속하고, 접속한 스피커(2)에 재생한 음성신호를 출력할 수 있다. 리셋버튼(35)은, 오디오 서버(1)를 리셋할 때에 조작된다. DC 인 단자(36)에는, AC 파워어댑터(도시되지 않음)로부터의 DC 전력이 공급된다.
오디오 서버(1)의 정면에는, 도 5에 나타낸 바와 같이, 오픈레버(41), 수광부(42), 커넥터(43), 액세스램프(44), MS 슬롯(45), 추출레버(46) 및 헤드폰단자(47)가 배치되어 있다. 오픈레버(41)는, 덮개(40)를 열 때에 슬라이드된다. 수광부(42)는, 리모트콘트롤러(7)로부터 송신되는 제어신호를 수신한다. 커넥터(43)에는, USB(Universal Serial Bus)단자가 설치되어 있고, USB 케이블을 통해, PD(5), 외장 HDD, 키보드 등을 접속할 수 있다.
이때, 커넥터(43)에, IEEE1394단자를 설치하도록 하고, IEEE1394케이블을 통해 PD(5) 등을 접속하도록 하여도 된다. 또는, 소위 블루투쓰(Bluetooth)(상표) 또는, IEEE802.11b(소위 무선 LAN)용의 단자를 설치하여, 무선통신에 의해서 PD(5) 등을 접속하도록 하여도 된다.
액세스램프(44)는, MS 슬롯(45)에 삽입되어 있는 MS(4) 또는 커넥터(43)에 접속되어 있는 PD(5) 등에 대하여 데이터의 읽고 쓰기가 실행되어 있을 때에 점멸 한다. MS 슬롯(45)에는, MS(4)가 삽입된다. 추출레버(46)는, MS 슬롯(45)에 삽입되어 있는 MS(4)를 추출할 때에 조작된다. 헤드폰단자(47)는, 헤드폰을 접속할 수 있고, 접속한 헤드폰에 재생한 음성신호를 출력할 수 있다.
다음으로, 오디오 서버(1)의 하드웨어적인 구성예에 대해서, 도 6을 참조하여 설명한다. 오디오 서버(1)는, 오디오 서버(1) 전체를 제어하는 메인CPU(Central Processing Unit)(51)를 내장하고 있다. 메인CPU(51)에는, 버스(66)를 통해, 플래시 ROM(52), SDRAM(53), USB 호스트콘트롤러(54), DMA콘트롤러(55), 신호처리부(60), 이더넷(등록상표)콘트롤러/커넥터(67) 및 PCMCIA 콘트롤러(68)가 접속되어 있다.
플래시 ROM(52)에는, 전원이 온이 되면, 즉시 메인 CPU(51)에 의해서 기동이 완료되는 RTOS(Real Time Operating System)(71)(도 7), 각종 기능을 실현하기 위해서 RTOS(71) 상에서 실행되는 펌웨어(Firmware, 도 7을 참조하여 후술한다) 외, 기기 ID, 암호키 등이 기억되어 있다.
SDRAM(Synchronous Dynamic Random Access Memory)(53)는, 메인CPU(51)가 각종 처리를 실행할 때, 소정 데이터나 프로그램을 일시적으로 기억한다. USB 호스트콘트롤러(54)는, 커넥터(43)를 통해 접속되는 PD(5) 등 소정 데이터통신을 제어한다.
DMA(Direct Memory Access)콘트롤러(55)는, 버퍼(56), CD-ROM 드라이브(57), HDD(58) 및 인코더/디코더(59) 사이의 데이터전송을 제어한다. SDRAM 등으로 이루어지는 버퍼(56)는, DMA 콘트롤러(55)가 전송을 제어하는 데이터를 일시적으로 버 퍼링한다. CD-ROM 드라이브(57)는, CAV 8배속으로 음악 CD(3)에 기록되어 있는 오디오데이터를 판독한다. HDD(58)는, 인코더/디코더(59)가 생성한 부호화데이터 등을 기억한다.
인코더/디코더(59)는, CD-ROM 드라이브(57)가 판독한 PCM데이터나, AUX 인 단자(31)에서 입력된 오디오데이터를, 132Kbps모드, 105Kbps모드 또는 66Kbps모드의 ATRAC3방식을 사용하고, 최대 8배속, 평균 5배속으로 인코드하여 부호화데이터를 생성한다. 또한, 인코더/디코더(59)는, HDD(58)가 기억하는 부호화데이터를 디코드한다. 인코더/디코더(59)는, DES(Data Encryption Standard)엔진을 가지고 있고, 부호화데이터를, 오디오 서버(1)를 구성하는 소정의 부품 기기 ID와 시간에 따라서 생성하는 암호키를 사용하여 암호화한다.
예를 들면, HDD(58)가 9GB의 용량을 가지고, 인코더/디코더(59)가 105Kbps모드의 ATRAC3방식으로 인코드하는 경우, HDD(58)에는, 약 100장분의 음악 CD(3)(60분/장)를 녹음할 수 있다.
신호처리부(60)는, 매직게이트 메모리 스틱 인터페이스(이하, MGMS I/F라고 기술한다)(60-1), 워터마크스크린(이하, WM 스크린이라고 기술한다)(60-2), 오디오 I/F(60-3) 및 샘플링 레이트 컨버터(이하, SRC이라고 기술한다)(60-4)로 이루어진다.
MGMS I/F(60-1)는, MS 커넥터(61)를 통하여, MS 슬롯(45)에 삽입되는 MS(4)에 대하여 상호인증을 행하고, 그 결과에 따라서 데이터의 암호화 및 암호화된 데이터의 복호를 실행한다. WM 스크린(60-2)은, 신호처리부(60)를 통과하는 오디오데 이터에 매립되어 있는 SDMI 규격의 워터마크(전자비침, 복사 여부 등을 나타낸 정보 등)를 검출한다.
오디오 I/F(60-3)는, AUX 인 단자(31)를 통해 디지털오디오데이터를 취득하고, SRC(60-4)에 공급한다. 또한, 오디오인터페이스(60-3)는, 버퍼(56) 등으로부터 전송된 디지털오디오데이터를, 내장하는 버퍼(251)(도 62)에 적절히 버퍼링한 후, AD/DA(62)에 출력한다.
SRC(60-4)는, 오디오 I/F(60-3)로부터의 디지털오디오데이터의 샘플링 레이트를, 44.1KHz로 변환하여 인코더/디코더(59)로 출력한다.
이때, 도시는 생략하지만, 신호처리부(60)는, 1배속으로 동작하는 ATRAC3방식의 인코더/디코더를 내장하고 있다.
MS커넥터(61)는, 삽입되는 MS(4)와 MGMS I/F(60-1)와의 데이터통신을 중계한다. AD/DA(62)는, 신호처리부(60)의 오디오 I/F(60-3)로부터 입력되는 디지털오디오데이터를 아날로그의 음성신호로 변환하여, 라인아웃단자(32), 스피커단자(34) 또는 헤드폰단자(47)에 출력한다. 또한, AD/DA(62)은, AUX 인 단자(31)로부터 입력되는 아날로그의 음성신호를 디지털화하여 인코더/디코더(59)에 출력한다.
이더넷 콘트롤러/커넥터(67)는, 이더넷(상표)을 통한 다른 전자기기와의 데이터통신을 제어한다. PCMCIA(Personal Computer Memory Card International Association) 콘트롤러(68)는, PCMCIA 규격의 IC 카드인터페이스를 장비하고 있다.
메인 CPU(51)에는, 디스플레이드라이버(63) 및 서브 CPU(64)가 접속되어 있다. 디스플레이드라이버(63)는, 디스플레이(15)의 표시를 제어한다. 서브 CPU(64) 는, 특히, 전원이 오프일 때에, 전원부(65)의 제어, 본체의 리셋제어, 내장시계의 카운트, 파워버튼(11) 등에 대한 조작의 검지, 수광부(42)의 제어, AD/DA(62)의 제어 등을 실행한다. 전원부(65)는, DC 인 단자(36)로부터 공급되는 DC 전압을 소정의 전압으로 변환하여, 오디오 서버(1) 전체에 공급한다.
다음으로, 이하에 예를 든 오디오 서버(1)의 기능을 실제로 행하기 위해서 메인 CPU(51)이 플래시 ROM(52)으로부터 판독하여 실행하는 펌웨어에 대해서, 도 7을 참조하여 설명한다. 이때, 오디오 서버(1)의 기능은, CD리핑, CD레코딩, HD레코딩(디지털입력), HD레코딩(아날로그 입력), HD플레이, CD플레이, MS플레이, 체크아웃/체크인, 임포트, 무브아웃/무브인 등이지만, 그 상세와 펌웨어와의 대응에 대해서는, 도 47내지 도 56을 참조하여 후술한다.
펌웨어는, 4개의 층 즉, 애플리케이션층(APP)(72), 상부 미들웨어층(UMW)(73), 하부 미들웨어층(LMW)(74) 및 디바이스 드라이버층(DD)(75)을 이루고 있다.
애플리케이션층(72)에는, 메인 애플리케이션(이하, 메인 APP라고 기술한다)(76), 하드디스크 애플리케이션(이하, HD APP라고 기술한다)(77), CD 애플리케이션(이하, CD APP라고 기술한다)(78), 메모리 스틱 애플리케이션(이하, MS APP라고 기술한다)(79), 포터블디바이스 애플리케이션(이하, PD APP라고 기술한다)(80) 및 가명한자변환 애플리케이션(이하, FEP(Front End Processor)라고 기술한다)(81)의 각 모듈이 포함된다.
애플리케이션층(72)의 각 모듈은, 오디오 서버(1)가 실행 가능한 기능에 관 한 사용자의 조작에 대응하여, 상부 미들웨어층(73)이 대응하는 모듈에 처리를 요구하고, 처리 상황의 표시를 제어함으로써 사용자 인터페이스를 제공한다.
메인 APP(76)은, 애플리케이션층(72)의 각 모듈을 통제한다. 예를 들면, 기동시에, 기동화면을 작성하여 각 모듈을 기동한다. 인풋미들웨어(97)로부터 통지되는 사용자의 조작을 접수하여, 대응하는 모듈에 통지한다. 각 모듈로부터의 표시데이터를 디스플레이 디바이스 드라이버(105)에 공급한다. 각 모듈의 전환을 실행한다. 사용자로부터의 음량변경 조작에 대응하여, 오디오IO미들웨어(AIO)(94)에 통지한다. 사용자로부터의 셋업조작에 대응하여, 각 모듈에 설정값을 통지한다. 각 모듈에서 공통의 설정정보(플레이모드 등)를 유지한다. 파워 오프 조작에 대응하여 각 모듈을 종료시키고, 시스템 콘트롤 미들웨어(SYSTEM)(98)에 파워오프를 요구한다.
HD APP(77)는, HDD(58)을 구동시키는 조작을 접수하여, 하드디스크 미들웨어(82)에 통지하고, 하드디스크 미들웨어(82)의 동작상태를 취득하여 표시데이터를 생성한다.
CD APP(78)는, CD-ROM 드라이브(57)를 구동시키는 조작을 접수하여, CD미들웨어(88)에 통지하고, CD미들웨어(88)의 동작상태를 취득하여 표시데이터를 생성한다.
MS APP(79)는, MS 슬롯(45)에 삽입된 MS(4)에 관한 조작을 접수하여, MS미들웨어(89)에 통지하고, MS 미들웨어(89)의 동작상태를 취득하여 표시데이터를 생성한다.
PD APP(80)는, 커넥터(43)에 접속된 PD(5)에 관한 조작을 접수하여, PD미들웨어(90)에 통지하여, PD미들웨어(90)의 동작상태를 취득하여 표시데이터를 생성한다.
FEP(81)는, 녹음하는 음악 CD(3)의 타이틀 등을 입력할 때의 가명 한자변환을 실행한다.
상부 미들웨어층(73)에는, 오디오 서버(1)의 각 기능을 모델화하여 실장한 이하의 모듈로부터 구성된다. 즉, 하드디스크 미들웨어(이하, HD MW라고 기술한다)(82), CD미들웨어(이하, CD MW라고 기술한다)(88), MS미들웨어(이하, MS MW라고 기술한다)(89) 및 PD미들웨어(이하, PD MW라고 기술한다)(90)의 각 모듈이 포함된다.
HD MW(82)은, HDD(58)에 기억되어 있는 부호화데이터를 관리하는 HDCC(83), CD MW(88)와 연휴하여 음악 CD(3)의 오디오데이터를 압축하고, 암호화하여 HDD(58)에 기록하는 CD 리핑(ripping)(84), 오디오IO미들웨어(94)와 연휴하여 HDD(58)에 기록되어 있는 부호화데이터를 복호하고, 신장하는 HD 플레이(85), 오디오IO미들웨어(94)와 연휴하여 AUX 인 단자(31)로부터 입력되는 오디오데이터를 압축하고, 암호화하여 HDD(58)에 기록하는 HD REC(86), MS MW(89) 또는 PD MW(90)과 연휴하여, MS(4) 또는 PD(5)와의 체크인, 체크아웃을 제어하는 C IN/C OUT(87)으로 구성된다.
CD MW(88)는, CD 디바이스 드라이버(102)에 CD-ROM 드라이브(57)를 제어시킴으로써 CD 플레이어로서의 기능을 실현한다. MD MW(89)는, 오디오IO미들웨어(94) 및 MS 파일시스템 미들웨어(95)와 연휴하여 MS 플레이어로서의 기능을 실현한다. PD MW(90)는, USB 호스트 미들웨어(96) 및 USB 호스트 디바이스 드라이브(104)와 연휴함으로써 PD(5)를 제어한다.
하부 미들웨어층(74)에는, 상부 미들층(73)의 각 모듈이 공용할 수 있는 기능을 모델화하여 실장한 이하의 모듈, 즉, 하드디스크 오브젝트 데이터 베이스미들웨어(이하, HD DB라고 기술한다)(91), 하드디스크 파일 시스템 미들웨어(이하, HD FS라고 기술한다)(92), MGR 미들웨어(MGR)(93), 오디오IO 미들웨어(AIO)(94), 메모리스틱 파일시스템 미들웨어(MS FS)(95), USB 호스트 미들웨어(USB)(96), 인풋핸들 미들웨어(INPUT)(97) 및 시스템 콘트롤 미들웨어(SYSTEM)(98)가 포함된다. 하부 미들웨어층(74)에 포함되는 각 모듈은, 상부 미들층(73)을 구성하는 각 모듈로부터 호출된다.
디바이스 드라이버층(DD)(75)에는, 각 하드웨어디바이스를 모델화한 이하의 모듈, 즉, 하드디스크 디바이스 드라이버(99), 디코더/인코더 디바이스 드라이버(100), DMA 디바이스 드라이버(101), CD 디바이스 드라이버(102), 신호처리부 디바이스 드라이버(103), USB 호스트 디바이스 드라이버(104), 디스플레이 디바이스 드라이버(105), 오디오 디바이스 드라이버(106), 키 디바이스 드라이버(107), 파워 디바이스 드라이버(108) 및 클록 디바이스 드라이버(109)가 포함된다. 이때, 도 7에 있어서, 점선으로 둘러싸인 오디오 디바이스 드라이버(106) 내지 클록 디바이스 드라이버(109)는, 서브 CPU(64)에 의해서 실행된다. 각 모듈은, 주로, 라이브러리로 구성되어 있고, 상부 미들웨어층(73) 또는 하부 미들웨어(74)에 포함되는 모듈로부터, 그 API(Application Program Interface)가 호출된다.
다음으로, HDD(58)에 적용되는 FAT(File Allocation Table)형 파일 시스템(데이터 포맷)에 대해서, 도 8 내지 도 20을 참조하여 설명한다. 도 8에 나타낸 바와 같이, HDD(58)에는, 부호화데이터(콘텐츠 데이터)를 파일로서 기록하기 위한 파일기록영역(121)과 파일기록영역(121)에 기록된 콘텐츠 데이터가 기록된 위치를 특정하기 위한 정보를 포함하는 오브젝트가 기록되는 오브젝트기록영역(122)이 설치된다.
파일관리부(123)는, 파일의 작성, 신규 작성 파일에 대한 ID의 발행, 파일기록영역(121)에 대한 기록, 판독, 삭제 등의 파일에 관계하는 일체의 처리를 실행한다. 파일관리부(123)는, 하부 미들웨어층(74)에 포함되는 HD FS(92)에 해당한다.
오브젝트관리부(124)는, 오브젝트기록영역(122)에서의 오브젝트의 물리위치를 인식하여, 오브젝트의 기록, 판독, 삭제 등을 실행한다. 오브젝트관리부(124)는, 하부 미들웨어층(74)에 포함되는 HD DB(91)에 상당한다. 이때, 오브젝트의 데이터베이스에 의한 관리에 대해서는, 도 21 내지 도 37을 참조하여 후술한다.
도 9는, 파일기록영역(121)의 논리구조를 나타내고 있다. 파일기록영역(121)은, 파일기록영역(121)에 있어서 기록, 판독의 최소단위인 소정 용량의 섹터로 구획되어 있다. 모든 섹터에는, 연속인 섹터번호가 부여되어 있다. 파일기록영역(121)은, 소정 수의 섹터에 의해서 구성되는 FAT영역, 시스템영역, 복수의 클러스터에 의해서 구성된다. 각 클러스터에는, 고정길이의 클러스터번호가 부여되어 있다. 파일기록영역(121)에 기록되는 파일은, 복수의 클러스터가 결합되 어 구성된다.
복수의 클러스터 결합상태는, FAT(141)(도 10)이라고 칭하는 테이블에 기록되어 있다. FAT(141)는, 파일기록영역(121)의 FAT영역에 기록되어 있지만, 파일관리부(123)가 동작할 때는 SDRAM(53)에도 전송된다.
도 10은, FAT(141)의 구조를 나타내고 있다. FAT(141)은, FAT헤더(142)와 각 클러스터에 각각 대응하는 복수의 FAT 엔트리(144)로 구성된다. 헤더(142)에는, 빈 클러스터 리스트 개시번호기록영역(143)이 포함되어 있다. 빈 클러스터 개시번호기록영역(143)에는, 데이터가 기록되어 있지 않은 일련의 빈 클러스터의 앞부분에 클러스터번호가 기록된다. 빈 클러스터가 존재하지 않는 경우, 빈 클러스터 개시번호기록영역(143)에는, -1=0xFFFFFFFF가 기록된다.
FAT 엔트리(144)에는, 대응하는 클러스터에 부여되어 있는 클러스터번호와 동일한 엔트리번호가 부여되어 있다. 예를 들면, 클러스터번호 1에 대응하는 FAT 엔트리에는, 엔트리 번호 1이 부여되어 있다. 이하, 엔트리번호 1의 FAT 엔트리를, FAT 엔트리 E(1)이라고도 기술한다. FAT 엔트리(144)는, P란(145)과 N란(146)으로 구분되어 있다.
FAT 엔트리(144)의 P란(145)에는, 대응하는 클러스터의 전방에 연결되는 클러스터에 부여되어 있는 클러스터번호가 기록된다. 전방에 연결되는 클러스터가 존재하지 않는 경우, 즉, 대응하는 클러스터가 파일의 선두인 경우, P란(146)에는, 0xFFFFFFFF가 기록된다.
FAT 엔트리(144)의 N란(146)에는, 대응하는 클러스터의 후방에 연결되는 클 러스터에 부여되어 있는 클러스터번호가 기록된다. 후방에 연결되는 클러스터가 존재하지 않는 경우, 즉, 대응하는 클러스터가 파일의 말미인 경우, N란(146)에는, 0xFFFFFFFF가 기록된다.
예를 들면, 파일기록영역(121)에 1개의 파일만이, 클러스터번호 1, 5, 6, 8, 12가 부여되어 있는 5개의 클러스터에 기록되어 있는 경우, 도 11에 나타낸 바와 같이, 엔트리번호1(0x00000001)의 FAT 엔트리 E(1)의 P란에는, 전방에 연결되는 클러스터가 존재하지 않는 것을 나타내는 0xFFFFFFFF가 기록되고, N란에는 후방에 연결되는 클러스터에 부여되어 있는 클러스터번호 5(0xFFFFFFFF)가 기록된다.
엔트리번호5(0x00000005)의 FAT 엔트리 E(5)의 P란에는, 전방에 연결되는 클러스터에 부여되어 있는 클러스터번호1(0x00000001)이 기록되고, N란에는 후방에 연결되는 클러스터에 부여되어 있는 클러스터번호6(0x00000006)이 기록된다.
엔트리번호 6, 8의 FAT 엔트리 E(6), E(8)에도, 마찬가지로 기록이 된다.
엔트리번호12(0x0000000C)의 FAT 엔트리 E(12)의 P란에는, 전방에 연결되는 클러스터에 부여되어 있는 클러스터번호8(0x00000008)이 기록되고, N란에는, 후방에 연결되는 클러스터가 존재하지 않는 것을 나타내는 0xFFFFFFFF가 기록된다.
빈 클러스터 개시번호기록영역(143)에는, 지금의 경우, 클러스터번호(0x00000002)의 클러스터로부터, 클러스터번호(0x00000014)까지의 일련의 클러스터가 빈 클러스터이기 때문에, 그 선두를 나타내는 클러스터번호(0x00000002)가 기록된다.
도 12는, 클러스터번호1, 5, 6, 8, 12가 부여되어 있는 5개의 클러스터에 1 개의 파일이 기록되는 모습을 나타내고 있다. 파일의 선두인 클러스터(지금의 경우, 클러스터1)에는, 파일의 사이즈에 관한 정보를 기록하는 사이즈기록영역(151)이 설치된다. 파일의 데이터는, 2번째의 클러스터(지금의 경우, 클러스터5)이후에 기록된다. 이때, 사이즈기록영역(151)을 파일의 최후미의 클러스터(지금의 경우, 클러스터12)에 설치하도록 하여도 된다.
도 13은, 사이즈기록영역(151)의 구성예를 나타내고 있다. 사이즈기록영역(151)에는, 유효사이즈기록영역(152), 최종 클러스터 번호기록영역(153) 및 점유 클러스터수 기록영역(154)이 설치되어 있다. 유효사이즈 기록영역(152)에는, 최후미의 클러스터(지금의 경우, 클러스터12)의 유효바이트수가 기록된다. 통상, 그 값은, 1이상이며, 클러스터사이즈이하의 값이 기록된다. 최종 클러스터 번호기록영역(153)에는, 최후미의 클러스터(지금의 경우, 클러스터12)의 클러스터번호(지금의 경우, 0x0000000C)가 기록된다. 점유 클러스터수 기록영역(154)에는, 파일의 데이터기록부분을 구성하는 클러스터의 수(지금의 경우, 4)가 기록된다.
다음으로, FAT를 이용하는 파일의 작성처리(즉, 콘텐츠 데이터의 기록처리), 파일의 판독처리 및 파일의 역판독(즉, 콘텐츠 데이터의 역방향으로부터의 판독처리)에 대해서, 도 14 내지 도 20의 흐름도를 참조하여 설명한다. 이때, 이들 처리는, 파일관리부(123) 즉, 펌웨어의 하부 미들웨어층(74)에 속하는 HD FS(92)에 의해서 제어된다.
처음에, 파일의 작성처리에 대해서, 도 14의 흐름도를 참조하여 설명한다. 스텝 S1에 있어서, HD FS(92)는, HDD(58)에 기록하는 콘텐츠 데이터를, 클러스터사이즈마다 CM-ROM 드라이브(57) 등에서 버퍼(56)로 전송시키는 (전송된 데이터량을 S 바이트로 한다). 스텝 S2에 있어서, HD FS(92)는, 파일기록영역(121)의 빈 클러스터를 검색하여 취득(확보)한다.
이 빈 클러스터취득처리에 대해서, 도 15의 흐름도를 참조하여 설명한다. 스텝 S21에 있어서, HD FS(92)는, FAT 헤더(141)에 기록되어 있는 빈 클러스터 개시번호기록영역(143)에 기록되어 있는 값Q를 판독한다. 스텝 S22에 있어서, HD FS(92)는, 값Q가 -1일까, 즉, 빈 클러스터가 존재할까 안 할까를 판정한다. 값Q가 -1이 아닌, 즉, 빈 클러스터가 존재한다고 판정된 경우, 처리는 스텝 S23으로 진행한다. 스텝 S23에 있어서, HD FS(92)는, 값Q(빈 클러스터의 클러스터번호)에 대응하는 FAT 엔트리 E(Q)를 판독한다.
FAT 엔트리 E(Q)를 판독하는 처리에 관련하여, 임의의 클러스터번호X에 대응하는 FAT 엔트리 E(X)를 읽어내는 처리에 대해서, 도 16의 흐름도를 참조하여 설명한다. 스텝 S41에 있어서, HD FS(92)는, 기지의 FAT 엔트리개시어드레스에 기지의 FAT 헤더사이즈를 가산하고, 그 합에 값X로부터 1을 감산한 값(X-1)에, 기지의 엔트리사이즈를 승산한 곱을 가산하여, 어드레스A를 산출한다. 스텝 S42에 있어서, HD FS(92)는, 어드레스A를 선두로 하여, 엔트리사이즈분만큼 데이터를 판독한다. 이상, 임의의 클러스터번호X에 대응하는 FAT 엔트리 E(X)를 판독하는 처리의 설명을 종료한다.
도 15로 돌아가, 스텝 S24에 있어서, HD FS(92)는, FAT 엔트리 E(Q)의 N란의 값이 -1(0xFFFFFFFF)인지 아닌지를 판정한다. FAT 엔트리 E(Q)의 N란의 값이 -1이 아니라고 판정된 경우, 처리는 스텝 S25로 진행한다.
스텝 S25에 있어서, HD FS(92)는, 변수M에 FAT 엔트리 E(Q)의 N란의 값을 대입한다. 스텝 S26에 있어서, HD FS(92)는, 클러스터번호M에 대응하는 FAT 엔트리 E(M)를 판독한다. 스텝 S27에서, HD FS(92)는, FAT 엔트리 E(M)의 P란에 -1(0xFFFFFFFF)을 기록한다.
스텝 S28에 있어서, HD FS(92)는, FAT 엔트리 E(Q)의 N란에 -1(0xFFFFFFFF)을 기록하고, FAT 엔트리 E(Q)의 P란에 -1(0xFFFFFFFF)을 기록한다. 스텝 S29에서, HD FS(92)는, 클러스터번호Q의 빈 클러스터가 존재한다고 하여, 도 14로 리턴한다. 이상, 빈 클러스터 취득처리의 설명을 종료한다.
이때, 스텝 S24에 있어서, FAT 엔트리 E(Q)의 N란의 값이 -1이라고 판정된 경우, 스텝 S25 내지 스텝 S27의 처리는 건너뛴다.
또한, 스텝 S22에 있어서, 빈 클러스트 개시번호기록영역(143)에 기록되어 있는 값Q가 -1이라고 판정된 경우, 처리는 스텝 S30으로 진행한다. 스텝 S30에 있어서, HD FS(92)는, 빈 클러스터가 존재하지 않는다고 하여 도 14로 리턴한다. 단지, 빈 클러스터가 존재하지 않는 경우, HDD(58)가 가득한 것으로 하여, 도 14의 파일작성처리는 종료된다.
이하, 취득한 클러스터번호Q의 빈 클러스터를, 클러스터번호V의 빈 클러스터로 고쳐 읽어 설명을 계속한다. 스텝 S3에 있어서, HD FS(92)는, 변수X와 변수A로 빈 클러스터의 클러스터번호V를 대입한다. 스텝 S4에 있어서, HD FS(92)는, 점유 클러스터수T에 0을 대입한다. 스텝 S5에 있어서, HD FS(92)는, 상술한 스텝 S2의 처리와 마찬가지로, 새롭게 빈 클러스터를 취득한다. 취득한 빈 클러스터의 클러스터번호를 V로 한다. 여기서, 새롭게 빈 클러스터가 취득할 수 없는 경우, 이 파일작성처리는 종료된다.
스텝 S6에 있어서, HD FS(92)는, 변수B에 값V를 대입한다. 스텝 S7에 있어서, HD FS(92)는, 점유 클러스터수T를 1만큼 증가한다. 스텝 S8에 있어서, HD FS(92)는, 클러스터번호B를 섹터번호에 변환한다. (예를 들면, 도 9에 나타낸 바와 같이 섹터와 클러스터가 대응하여 설치되는 경우, 클러스터번호2는 섹터번호28 내지 35로 변환된다). 클러스터번호B에 대응하는 섹터번호를 판별한다). 스텝 S9에 있어서, HD FS(92)는, 스텝 S1로 버퍼링한 콘텐츠 데이터를, 파일기록영역(121)이 변환한 섹터번호에 기록시킨다.
버퍼링한 콘텐츠 데이터의 기록이 종료된 후, 스텝 S10에 있어서, HD FS(92)는, 클러스터번호A의 클러스터(이 시점에서는 빈 클러스터임)에, 클러스터번호B의 클러스터를 연결한다. 이 연결처리에 대해서, 도 17의 흐름도를 참조하여 설명한다.
도 16을 참조하여 상술한 처리와 마찬가지로 HD FS(92)는, 스텝 S51에서, 클러스터번호A에 대응하는 FAT 엔트리 E(A)를 판독하고, 스텝 S52에 있어서, 클러스터번호B에 대응하는 FAT 엔트리 E(B)를 판독한다. 스텝 S53에 있어서, HD FS(92)는, FAT 엔트리 E(A)의 N란에 클러스터번호B를 기록하고, FAT 엔트리 E(B)의 P란에 클러스터번호A를 기록한다. 이때, 스텝 S53의 처리는, SDRAM(53)에 전개하고 있는 FAT(141)에 대하여 실행한다. 이상, 클러스터번호A의 클러스터와, 클러스터번호B의 클러스터의 연결처리의 설명을 종료한다.
도 14로 되돌아가, 스텝 S11에 있어서, HD FS(92)는, 스텝 S9로 기록한 콘텐츠의 데이터량이 클러스터사이즈와 같은지 아닌지를 판정한다. 스텝 S9로 기록한 콘텐츠의 데이터량이 클러스터사이즈와 같다고 판정된 경우, 기록해야 할 콘텐츠 데이터의 기록이 완료되지 않고 있기 때문에, 처리는 스텝 S12로 진행한다.
스텝 S12에 있어서, 아까 기록한 콘텐츠 데이터의 연속을, 클러스터사이즈분만큼 버퍼(56)에 전송시킨다. 스텝 S13에 있어서, 변수A에 클러스터번호B를 대입한다. 스텝 S14에 있어서, HD FS(92)는, 상술한 스텝 S2의 처리와 마찬가지로, 새롭게 빈 클러스터를 취득한다. 취득한 빈 클러스터의 클러스터번호를 V로 한다. 이때, 스텝 S14로, 새롭게 빈 클러스터를 취득할 수 없었던 경우에는, 처리는 스텝 S17에 진행한다. 스텝 S15에 있어서, HD FS(92)는, 변수B에 값V를 대입한다. 스텝 S16에 있어서, HD FS(92)는, 점유 클러스터수T를 1만큼 증가한다.
그 후, 처리는 스텝 S8로 되돌아가, 이후의 처리가 반복된다. 그리고, 스텝 S11에 있어서, 스텝 S9로 기록한 콘텐츠의 데이터량S가 클러스터 사이즈와 같지 않다고 판정된 경우, 기록해야 할 콘텐츠 데이터의 기록이 완료하였기 때문에, 처리는 스텝 S17로 진행한다.
스텝 S17에 있어서, HD FS(92)는, 스텝 S2로 취득한 클러스터번호X의 빈 클러스터에 사이즈기록영역(151)을 설치하고, 그 유효사이즈기록영역(152)에 최후미의 클러스터에 기록한 데이터량S를 기록하고, 최종 클러스터번호영역(153)에 변수B 의 값을 기록하며, 점유 클러스터수 기록영역(154)에 변수T의 값을 기록한다.
스텝 S18에 있어서, 스텝 S10의 처리에서 재기록한 FAT(141)에서, 파일기록영역(121)의 FAT영역에 기록되어 있는 FAT(141)를 갱신한다. 이상 설명한 바와 같이 하여, 새롭게 파일이 작성된다. 이때, 작성된 파일에는, 콘텐츠 데이터가 기록된 일련의 클러스터의 선두의 클러스터번호와 같은 값의 파일식별자가 발행된다.
다음으로, 파일식별자가 X인 파일(이하, 파일X라고 기술한다)의 판독처리에 대해서, 도 18의 흐름도를 참조하여 설명한다. 스텝 S61에서, HD FS(92)는, 파일X가 존재하는지 아닌지를 판별하기 위한 검색처리를 실행한다.
파일X의 검색처리에 대해서, 도 19의 흐름도를 참조하여 설명한다. 스텝 S81에서, HD FS(92)는, 엔트리번호X에 대응하는 FAT 엔트리 E(X)를 취득한다. 스텝 S82에 있어서, HD FS(92)는, FAT 엔트리 E(X)의 P란의 값이 -1(0xFFFFFFFF)인지 아닌지를 판정한다. FAT 엔트리 E(X)의 P란의 값이 -1이라고 판정된 경우, 처리는 스텝 S83에 진행한다. 스텝 S83에 있어서, HD FS(92)는, 엔트리번호X(=클러스터번호X)의 클러스터는, 파일이 기록되어 있는 일련의 클러스터중의 선두의 클러스터이기 때문에, 파일X는 존재한다고 판단하여, 도 18의 파일 판독처리로 되돌아간다.
반대로, 스텝 S82에 있어서, FAT 엔트리 E(X)의 P란의 값이 -1이 아니라고 판정된 경우, 처리는 스텝 S84로 진행한다. 스텝 S 84에서, HD FS(92)는, 엔트리번 X(=클러스터번호X)의 클러스터는, 파일이 기록되어 있는 일련의 클러스터 중 선두의 클러스터가 아니기 때문에, 파일X는 존재하지 않는다고 판단하여, 도 18의 파일 판독처리로 되돌아간다. 이상, 파일X의 검색처리의 설명을 종료한다.
이하, 파일검색처리에 있어서, 파일X가 존재한다고 판단되었다고 하면, 설명을 계속한다. 스텝 S62에 있어서, HD FS(92)는, FAT 엔트리 E(X)의 N란의 값이 -1(0xFFFFFFFF)인지 아닌지를 판정한다. FAT 엔트리 E(X)의 N란의 값이 -1이라고 판정된 경우, 파일X에는 데이터가 존재하지 않기 때문에, 판독처리를 종료한다.
스텝 S62에 있어서, FAT 엔트리 E(X)의 N란의 값이 -1이 아닌 처리는 스텝 S63으로 진행한다. 스텝 S63에 있어서, HD FS(92)는, 클러스터번호X(선두의 클러스터)를 섹터번호로 변환한다. 스텝 S64에 있어서, HD FS(92)는, DMA 콘트롤러(55)를 제어하여, 변환한 섹터번호에 기록되어 있는 사이즈기록영역(151)을 판독하여 버퍼(56)에 버퍼링시킨다. 스텝 S64에 있어서, HD FS(92)는, 스텝 S63으로 버퍼링한 사이즈기록영역(151)의 유효사이즈기록영역(152)에 기록되어 있는 유효사이즈S(파일 X가 기록되어 있는 일련의 클러스터 중 최후미의 클러스터에 기록되어 있는 데이터량)를 판독한다.
스텝 S66에 있어서, HD FS(92)는, 변수C에 FAT 엔트리 E(X)의 N란의 값을 대입한다. 스텝 S67에 있어서, HD FS(92)는, 도 16을 참조하여 상술한 처리와 마찬가지로, 클러스터번호C에 대응한다, 즉, 2번째 클러스터에 대응하는 FAT 엔트리 E(C)를 판독한다. 스텝 S68에 있어서, HD FS(92)는, 클러스터번호C를 섹터번호로 변환한다. 스텝 S69에 있어서, HD FS(92)는, DMA 콘트롤러(55)를 제어하고, 변환한 섹터번호의 섹터에 기록되어 있는 1클러스터분의 콘텐츠 데이터를 판독하여, 버퍼(56)에 버퍼링시킨다.
스텝 S70에서, HD FS(92)는, FAT 엔트리 E(C)의 N란의 값이 -1(0xFFFFFFFF)인지 아닌지를 판정한다. FAT 엔트리 E(C)의 N란의 값이 -1이 아니라고 판정된 경우, 처리는 스텝 S71로 진행한다. 스텝 S71에 있어서, HD FS(92)는, DMA 콘트롤러(55)를 제어하여, 버퍼(56)가 버퍼링하고 있는 데이터의 모두를, 인코더/디코더(59) 등에 출력시킨다. 파일X의 콘텐츠 데이터 모두는 아직 판독되어 있지 않기 때문에, 처리는 스텝 S72로 진행한다. 스텝 S72에 있어서, HD FS(92)는, 변수C에 FAT 엔트리 E(C)의 N란의 값을 대입한다. 처리는 스텝 S67로 돌아가, 이후의 처리가 반복된다.
그 후, 스텝 S70에 있어서, FAT 엔트리 E(C)의 N란의 값이 -1이라고 판정된 경우, 파일X의 콘텐츠 데이터가 기록되어 있는 최후미의 클러스터로부터의 판독이 완료되었기 때문에, 처리는 스텝 S73로 진행한다. 스텝 S73에 있어서, HD FS(92)는, DMA 콘트롤러(55)를 제어하여, 버퍼(56)가 버퍼링하고 있는, 콘텐츠 데이터의 최후미인 유효데이터사이즈S분의 데이터를, 인코더/디코더(59) 등에 출력시킨다.
이때, 스텝 S61의 파일검색처리에 있어서, 파일X가 존재하지 않는다고 판단된 경우, 처리는 스텝 S74로 진행하고, 에러판정이 이뤄져, 파일X의 파일판독처리는 종료가 된다. 이상, 파일X의 판독처리설명을 종료한다.
다음으로, 파일X의 역판독처리에 대해서, 도 20의 흐름도를 참조하여 설명한다. 여기서, 역판독처리란, 예를 들면, 재생시간이 100초간인 콘텐츠 데이터를, 90초번째부터 100밀리초 정도만큼 재생한 후, 80초번째부터 100밀리초 정도만큼 재생하고, 계속해서, 70초번째부터 100밀리초 정도만큼 재생하도록, 수초간마다 거꾸로 재생시키는 경우에 사용할 수 있는 처리이다.
스텝 S91에 있어서, HD FS(92)는, 파일X의 파일식별자(=X, 이하, ID(X)라고 기술한다)를 섹터번호로 변환한다. 단지, ID(X)는, 파일X가 기록되어 있는 일련의 클러스터 중 선두 클러스터의 클러스터번호와 동일하다.
스텝 S92에 있어서, 클러스터X에 대응하는 FAT 엔트리 E(X)를 판독한다. 스텝 S93에 있어서, HD FS(92)는, DMA 콘트롤러(55)를 제어하여, 스텝 S91에서 변환한 섹터번호의 섹터에 기록되어 있는 사이즈기록영역(151)을 판독하여 버퍼(56)에 버퍼링시킨다. 스텝 S94에 있어, HD FS(92)는, 스텝 S93으로 버퍼링한 사이즈기록영역(151)의 유효사이즈기록영역(152)으로부터 유효사이즈S를, 최종 클러스터번호기록영역(153)으로부터 최종 클러스터번호Z를 판독한다.
스텝 S95에 있어서, HD FS(92)는, 최종 클러스터번호Z와 ID(X)가 동일한지 아닌지를 판정한다. 최종 클러스터번호Z와 ID(X)가 동일하다고 판정된 경우, 파일X에 콘텐츠 데이터는 존재하지 않기 때문에, 역판독처리를 종료한다.
최종 클러스터번호Z와 ID(X)가 동일하다고 판정된 경우, 처리는 스텝 S96로 진행한다. 스텝 S96에 있어서, HD FS(92)는, 최종 클러스터번호Z를 섹터번호로 변환한다. 스텝 S97에 있어서, HD FS(92)는, DMA 콘트롤러(55)를 제어하여, 스텝 S96으로 변환한 섹터번호에 기록되어 있는 콘텐츠 데이터의 최후미 부분을 포함하는 데이터를 판독, 버퍼(56)에 버퍼링시킨다. 스텝 S98에 있어서, HD FS(92)는, DMA 콘트롤러(55)를 제어하여, 버퍼(56)로 버퍼링되어 있는 데이터 중 S바이트분, 즉, 콘텐츠 데이터의 최후미의 부분만큼을, 인코더/디코더(59) 등에 출력시킨다.
스텝 S99에 있어서, HD FS(92)는, 최종 클러스터번호Z에 대응하는 FAT 엔트리 E(Z)를 판독한다. 스텝 S100에 있어서, HD FS(92)는, FAT 엔트리 E(Z)의 P란의 값이 ID(X)와 동일한지 아닌지를 판정한다. FAT 엔트리 E(Z)의 P란의 값이 ID(X)와 동일하다고 판정된 경우, 파일X의 콘텐츠 데이터는 최후미의 1클러스터만큼 기록되어 있었던 것으로 되기 때문에, 역판독처리를 종료한다.
FAT 엔트리 E(Z)의 P란의 값이 ID(X)와 동일하지 않다고 판정된 경우, 최후미측으로부터 1클러스터분만큼 거꾸로 판독하기 위해서, 처리는 스텝 S101로 진행한다. 스텝 S101에서, HD FS(92)는, 변수C에 FAT 엔트리 E(Z)의 P란의 값을 대입한다.
스텝 S102에 있어서, HD FS(92)는, 클러스터번호C에 대응하는 FAT 엔트리 E(C)를 판독한다. 스텝 S103에 있어서, HD FS(92)는, 클러스터번호C를 섹터번호로 변환한다. 스텝 S104에 있어서, HD FS(92)는, DMA 콘트롤러(55)를 제어하여, 스텝 S103으로 변환한 섹터번호에 기록되어 있는 콘텐츠 데이터를 판독하여, 버퍼(56)에 버퍼링시킨다. 스텝 S105에 있어서, HD FS(92)는, DMA 콘트롤러(55)를 제어하여, 버퍼(56)로 버퍼링되어 있는 1클러스터분의 콘텐츠 데이터를, 인코더/디코더(59) 등에 출력시킨다.
스텝 S106에 있어서, HD FS(92)는, 클러스터번호C에 대응하는 FAT 엔트리 E(C)의 P란의 값이 ID(X)와 동일한지 아닌지를 판정한다. FAT 엔트리 E(C)의 P란의 값이 ID(X)와 동일하지 않다고 판정된 경우, 파일X의 모두를 판독하고 있지 않은 것으로 되기 때문에, 1클러스터분만큼 거꾸로 판독하기 위해서, 처리는 스텝 S107 로 진행한다. 스텝 S107에 있어서, HD FS(92)는, 변수C에 FAT 엔트리 E(C)의 P란의 값을 대입한다. 처리는 스텝 S102로 돌아가, 그 이후의 처리가 반복된다.
그 후, 스텝 S106에 있어서, FAT 엔트리 E(C)의 P란의 값이 ID(X)와 동일하다고 판정된 경우, 파일X를 선두까지 모두 판독한 것으로 되기 때문에, 역판독처리를 종료한다. 이상, 파일X의 역판독처리의 설명을 종료한다.
이상 설명한 바와 같이, 오디오 서버(1)의 HD FS(92)에 의하면, 파일을 특정하기 위한 파일식별자로서, 고정길이의 값인, 그 파일이 기록되는 영역의 선두클러스터의 클러스터번호를 부여하도록 하였기 때문에, 파일의 기록위치를 간단하게 특정할 수 있다. 따라서, 파일이름이 고정길이가 아닌 경우에 비해, 파일의 검색시간을 대폭 줄일 수 있다.
또한, 파일식별자가 고정길이인 것에 의해, 파일 검색에 필요한 시간을 균일화할 수 있다.
또한, 오디오 서버(1)의 HD FS(92)에 의하면, 기록하는 파일의 사이즈에 제한이 없기 때문에, 오디오데이터 뿐만 아니라, 비디오데이터와 같은 보다 큰 사이즈의 데이터를 파일로 기록할 수 있다.
또한, 오디오 서버(1)의 HD FS(92)에 의하면, 1개의 파일을 구부수의 클러스터에 걸쳐서 기록하는 경우, 순방향으로 클러스터를 이용하기 때문에, 기록시나 재생시에는, 탐색(seek)이 일정방향으로 된다. 따라서, 기록시의 기록누락이나 재생시의 소리끊김의 발생이 억제된다.
다음으로, 폴더, 앨범 또는 트랙에 대응하는 오브젝트에 대해서, 도 21 내지 도 27을 참조하여 설명한다. 도 21은, 오브젝트가 기록되는 오브젝트기록영역(122)의 논리구조를 나타내고 있다. 오브젝트기록영역(122)은, 시스템영역(161)과, 소정의 용량에 구획된 복수의 청크(chunk)로 구성된다. 오브젝트는, 청크에 기록된다.
시스템영역(161)에는, 헤더(162), 오브젝트형 기록영역(163) 및 영역정보기록영역(164)이 설치되어 있다. 복수의 청크에는, 그 선두부터 순서대로 1이후의 시리얼 번호가 부여되어 있는, 이하, 예를 들면, 번호1이 부여되어 있는 청크를 청크1, 번호2가 부여되어 있는 청크를 청크2 등으로 기술한다.
청크는, 소정 용량의 페이지로 더 구획되어 있다. 청크를 구성하는 페이지에는, 그 선두부터 순서대로 0이후의 연속한 번호가 부여되어 있는, 이하, 예를 들면, 번호0이 부여되어 있는 페이지를 페이지0, 번호1이 부여되어 있는 페이지를 페이지0 등으로 기술한다.
도 22는, 시스템영역(161)의 오브젝트형 기록영역(163)의 구조를 나타내고 있다. 헤더(165)와 T개의 엔트리로 구성된다. T는 미리 설정되어 있는 정수이다. 헤더(165)에는, 엔트리수 기록영역(166)이 설치되어 있다. 엔트리수 기록영역(166)에는, 현재 등록되어 있는 엔트리의 수(최대치는 T이다)가 기록된다.
오브젝트형 기록영역(163)의 각 엔트리에는, 사이즈기록영역(167), 기본 오브젝트형 번호기록영역(168) 및 파라미터기록영역(169)이 설치되어있다. 예를 들면, 엔트리t에는, 오브젝트 형 번호t에 관한 정보가 기록된다. 즉, 엔트리t의 사이즈기록영역(167)에는, 오브젝트 형 번호t의 오브젝트 사이즈가 기록된다. 엔트리t의 기본 오브젝트 형 번호 기록영역(168)에는, 오브젝트 형 번호t의 오브젝트가 속 하는 기본 오브젝트형을 나타내는 기본 오브젝트 형 번호가 기록된다. 엔트리t의 파라미터기록영역(169)에는, 오브젝트 형 번호t의 오브젝트 사이즈가 가변길이인 경우의 사이즈에 관한 정보가 기록된다.
도 23은, 시스템영역(161)의 영역정보기록영역(164)을 나타내고 있다. 영역정보기록영역(164)은, 오브젝트기록영역(122) 페이지총수(청크의 총수에 1청크를 구성하는 페이지수를 승산한 값)의 비트열로 구성된다. 단지, 도 23은, 설명의 편의상, 영역정보기록영역(164)을, (청크의 총수)열×(1청크를 구성하는 페이지수)행의 매트릭스를 사용하여 나타내고 있다. 예를 들면, 도 23에 있어서, q열 p행의 "○"로 나타내는 비트는, 청크q의 페이지p에 대응하고 있고, 청크q의 페이지p가 사용중인 경우, "○"로 나타내는 비트에는 1이 기록된다. 반대로, 청크q의 페이지p가 사용중이지 않는 경우, "○"로 나타내는 비트에는 0이 기록된다.
도 24는, 하부 미들웨어층(74)에 포함되는 HD DB(91)에 해당하는 오브젝트관리부(124)의 구성예를 나타내고 있다. 오브젝트관리부(124)는, 오브젝트형 등록부(171), 기억영역관리부(172), 세션관리부(173) 및 캐시관리부(174)로 구성된다.
오브젝트형 등록부(171)는, 오브젝트형의 등록(오브젝트형 기록영역(163)에의 기록)을 행한다. 또한, 오브젝트형 등록부(171)는, 오브젝트형의 문의에 대한 응답(오브젝트형 기록영역(163)으로부터의 판독)을 행한다.
기억영역관리부(172)는, 영역정보기록영역(164)의 소정의 비트를 반전시킨다. 또한, 기억영역관리부(172)는, 영역정보기록영역(164)의 비트를 판독함으로써, 소정의 페이지수의 연속 미사용영역을 검색한다. 또한, 기억영역관리부(172)는, 각 오브젝트에 대하여 식별자를 발행한다.
세션관리부(173)는, 현재 실행중인 세션에 대하여 세션번호를 발행함과 동시에, 세션관리정보(181)(도 25)를 관리한다. 여기서, 세션이란, 데이터의 기록, 판독 등을 제어하는 처리를 나타내는 용어이다.
도 25는, 세션관리정보(181)의 구성예를 나타내고 있다. 세션관리정보(181)는, 현재 열려 있는 세션의 수(이하, 현재 세션수라고 기술한다)가 저장되는 현재 세션수 저장영역(182)과, 각 오브젝트에 대응하여, 그 액세스권을 보유하고 있는 세션의 정보가 기록되어 있는 S개의 엔트리로 구성된다. 현재 세션수의 최대치와 값S는, 미리 설정되어 있다.
세션관리정보(181)의 엔트리에는, 오브젝트 식별자저장영역(183), 판독 기록 세션번호 저장영역(184), 판독전용 세션번호 저장영역(185 내지 188), 오브젝트상태저장영역(189), 판독캐시 어드레스 저장영역(190), 기록캐시 어드레스 저장영역(191) 및 액세스시각저장영역(192)이 설치되어 있다.
오브젝트 식별자저장영역(183)에는, 대응하는 오브젝트의 오브젝트 식별자(도 27)가 저장된다. 판독 기록 세션번호 저장영역(184)에는, 대응하는 오브젝트에 대하여 기록권을 가지는 세션의 세션번호가 저장된다. 판독전용 세션번호 저장영역(185 내지 188)에는, 대응하는 오브젝트에 대하여 판독권을 가지는 세션의 세션번호가 저장된다. 또한, 오브젝트에 대하여 판독권을 가지는 복수의 세션이 동시에 존재하여도 된다. 도 25는, 4개까지 판독권을 가지면, 하나만 기록 및 판독권 을 가지는 경우를 나타내고 있다.
오브젝트상태저장영역(189)에는, 대응하는 오브젝트의 상태를 나타내는 정보(작성을 나타내는 "CREATE", 갱신을 나타내는 "UPDATE" 또는 삭제를 나타내는 "REMOVE")가 저장된다. 판독캐시 어드레스 저장영역(190)에는, 판독하는 오브젝트를 일시적으로 기억시키는 판독캐시의 어드레스가 저장된다. 기록캐시 어드레스 저장영역(191)에는, 기록하는 오브젝트를 일시적으로 기억시키는 기록캐시의 어드레스가 저장된다. 액세스 시각 저장영역(192)에는, 대응하는 오브젝트에 대한 최종액세스시간이 저장된다.
이때, 오브젝트 식별자저장영역(183) 내지 액세스 시각 저장영역(192)에 저장해야 할 정보가 존재하지 않는 경우, 0을 저장한다.
도 26a 및 도 26b는, 각각, 청크에 기록되는 오브젝트의 두 가지 기본 오브젝트형인 기본 오브젝트 제1형과 기본 오브젝트 제2형의 구성예를 나타내고 있다.
기본 오브젝트 제1형은, 도 26a에 나타낸 바와 같이, 자기의 오브젝트 식별자가 기록되는 오브젝트 식별자기록영역(201) 및 임의의 데이터(예를 들면 사용자가 설정하는 오브젝트의 이름 등의 데이터)가 기록되는 임의 데이터 기록영역(202)으로 구성된다. 기본 오브젝트 제1형에는, 폴더리스트, 폴더 및 앨범의 오브젝트가 포함된다.
기본 오브젝트 제2형은, 도 26b에 나타낸 바와 같이, 자기의 오브젝트 식별자가 기록되는 오브젝트 식별자기록영역(201), 임의의 데이터가 기록되는 임의 데이터 기록영역(202) 및 자기(오브젝트)에 대응하는 파일의 파일식별자가 기록되는 파일식별자기록영역(203)으로 구성된다. 기본 오브젝트 제2형에는, 트랙의 오브젝트가 포함된다.
오브젝트 식별자기록영역(201)에 기록되는 오브젝트 식별자는, 도 27에 나타낸 바와 같이, 대응하는 오브젝트가 저장되어 있는 일련의 페이지의 선두를 나타내는, 청크번호와 그 페이지번호, 형 번호로 구성된다. 형 번호는, 대응하는 오브젝트가 속하는 기본 오브젝트 형 번호(기본 오브젝트 제1형, 또는 기본 오브젝트 제2형의 한쪽)와 대응하는 오브젝트의 형이 등록되어 있는 오브젝트형 기록영역(163)의 엔트리번호로 구성된다.
다음으로, 오브젝트의 작성처리, 오브젝트의 검색처리, 오브젝트의 갱신처리, 스트림오브젝트의 작성처리 및 스트림오브젝트의 검색처리에 대해서, 도 28 내지 도 37의 흐름도를 참조하여 설명한다. 여기에서, 스트림오브젝트란, 특히, 파일기록영역(121)에 기록된 콘텐츠 데이터와 1대1로 대응하는 오브젝트, 즉, 트랙을 가리키는 용어이다. 스트림오브젝트는, 기본 오브젝트 제2형(도 26B)에 속한다. 따라서, 스트림오브젝트가 아닌 오브젝트는, 폴더 또는 앨범의 오브젝트이며, 기본 오브젝트 제1형에 속한다.
이때, 이들 처리는, 오브젝트관리부(124) 즉, 펌웨어의 하부 미들웨어층(74)에 속하는 HD DB(91)에 의해서 제어된다.
처음으로, 스트림오브젝트가 아닌 오브젝트의 작성처리에 대해서, 오브젝트 형 번호t의 오브젝트를 작성하는 경우를 예에, 도 28의 흐름도를 참조하여 설명한다. 이때, 오브젝트 형 번호t에는, 도 27에 나타낸 바와 같이, 기본형 번호(지금의 경우, 기본 오브젝트 제1형)와 엔트리번호가 포함된다.
스텝 S121에 있어서, HD DB(91)는, 기록세션을 개설한다. 기록세션을 개설하는 처리에 대해서, 도 29의 흐름도를 참조하여 설명한다. 스텝 S141에서, HD DB(91)는, 세션관리정보(181)의 현재 세션수 저장영역(182)에 저장되어 있는 현재 세션수를 판독하고, 판독한 현재 세션수가 미리 설정되어 있는 최대치보다도 작은지 그렇지 않은지를 판정한다. 현재 세션수가 미리 설정되어 있는 최대치보다도 작다고 판정된 경우, 처리는 스텝 S142로 진행한다.
스텝 S142에 있어서, HD DB(91)은, 세션관리정보(181)의 현재 세션수 저장영역(182)에 저장되어 있는 현재 세션수를 1만큼 증가한다. 스텝 S143에 있어서, HD DB(91)는, 기록세션을 개설하여, 예를 들면, 난수 등에 의해서 세션번호Z를 발행한다. 처리는 도 28로 되돌아간다.
이때, 스텝 S141에서, 현재 세션수가 미리 설정되어 있는 최대치보다도 작지 않다고 판정된 경우, 더욱 세션을 개설할 수 없기 때문에, 처리는 스텝 S144로 진행하고, 스텝 S144에 있어서, HD DB(91)는, 에러라고 판단한다. 세션개설처리는 종료되고, 도 28의 오브젝트작성처리는 중단된다.
도 28의 스텝 S122에 있어서, HD DB(91)는, 오브젝트 형 번호t의 오브젝트를 기록하는 청크의 페이지를 확보하기 위해서, 오브젝트형 기록영역(163)의 엔트리t의 사이즈기록영역(167)으로부터, 오브젝트 형 번호t의 오브젝트 사이즈를 판독하고, 그 사이즈에 해당하는 청크의 페이지수를 산출한다. 산출한 페이지수를 g로 한다.
스텝 S123에 있어서, HD DB(91)은, 세션관리정보(181)를 구성하는 복수의 엔트리중 빈 엔트리를 확보한다. 빈 엔트리를 확보하는 처리에 대해서, 도 30의 흐름도를 참조하여 설명한다.
스텝 S151에서, HD DB(91)는, 변수M을 1로 초기화한다. 스텝 S152에 있어서, HD DB(91)는, 변수M이 세션관리정보(181)를 구성하는 엔트리의 수S 이하인지 아닌지를 판정한다. 변수M이 엔트리의 수S 이하라고 판정된 경우, 처리는 스텝 S153로 진행한다. 스텝 S153에 있어서, HD DB(91)는, 세션관리정보(181)를 구성하는 엔트리M의 오브젝트 식별자저장영역(183)의 값을 판독한다. 스텝 S154에 있어서, HD DB(91)는, 판독한 엔트리M의 오브젝트 식별자저장영역(183)의 값이 0인지 아닌지를 판정한다. 엔트리M의 오브젝트 식별자저장영역(183)의 값이 0이라고 판정된 경우, 엔트리M은 빈 엔트리라고 판단할 수 있기 때문에, 엔트리M을 확보하여 도 28로 되돌아간다.
스텝 S154에 있어서, 엔트리M의 오브젝트 식별자저장영역(183)의 값이 0이 아니라고 판정된 경우 처리는 스텝 S155로 진행한다. 스텝 S155에 있어서, HD DB(91)는, 변수M을 1만큼 증가한다. 처리는 스텝 S152로 되돌아가고, 이후의 처리가 반복된다. 그 후, 스텝 S154에 있어서, 엔트리M의 오브젝트 식별자저장영역(183)의 값이 0이라고 판정되지 않고, 스텝 S152에 있어서, 변수M이 엔트리의 수S 이하가 아니라고 판정된 경우, 현 상태에서는 빈 엔트리가 존재하지 않으므로, 빈 엔트리를 만들어 내기 위해서, 처리는 스텝 S156로 진행한다.
스텝 S156에 있어서, HD DB(91)는, 세션관리정보(181)를 구성하는 엔트리 중, 판독 기록 세션번호 저장부(184) 및 판독전용 세션번호 저장부(185 내지 188)값의 값이 모두 0인 엔트리가 존재하는지 아닌지를 판정한다. 그런 엔트리가 존재한다고 판정된 경우, 처리는 스텝 S157로 진행한다. 스텝 S157에 있어서, HD DB(91)는, 판독 기록 세션번호 저장부(184) 및 판독전용 세션번호 저장부(185 내지 188)값의 값이 모두 0 인 엔트리 중, 액세스 시각 저장영역(192)의 값이 가장 작은 엔트리(즉, 가장 오래된 액세스시각의 엔트리)를 추출한다.
스텝 S158에 있어서, HD DB(91)는, 추출한 엔트리의 오브젝트 식별자저장영역(182) 내지 액세스 시각 저장영역(192)의 값을 0으로 클리어하여, 그 엔트리를 빈 엔트리M으로서 확보한다. 처리는 도 28로 되돌아간다.
이때, 스텝 S156에 있어서, 세션관리정보(181)를 구성하는 엔트리 중, 판독 기록 세션번호 저장부(184) 및 판독전용 세션번호 저장부(185 내지 188)값의 값이 모두 0인 엔트리가 존재하지 않는다고 판정된 경우, 빈 엔트리는 확보할 수 없기 때문에, 스텝 S159로 진행한다. 스텝 S159에 있어서, HD DB(91)는, 에러라고 판단한다. 빈 엔트리확보처리는 종료되고, 도 28의 오브젝트작성처리는 중단된다.
도 28로 되돌아가, 스텝 S124에 있어서, HD DB(91)는, 영역정보기록영역(164)의 비트열 중 g비트 연속하여 0이 기록되어 있는 비트열을 검색한다. 검색한 g비트 연속하여 0이 기록되어 있는 비트열의 선두 위치를 q열 p행으로 한다. 스텝 S125에 있어서, HD DB(91)는, 확보한 엔트리M의 오브젝트 식별자저장영역(183)에, 도 27에 나타내는 바와 같이, 청크번호q, 페이지번호p, 오브젝트 형 번호t로 이루어지는 오브젝트 식별자 OID(q, p, t)를 저장한다. 또한, HD DB(91)은, 세션관리정보(181)의 엔트리M의 판독 기록 세션번호 저장영역(184)에 세션번호Z를 저장하고, 더욱, 오브젝트상태저장영역(189)에 작성을 나타내는 "CREATE"를 기록한다.
스텝 S126에 있어서, HD DB(91)는, 오브젝트의 사이즈인 페이지수g와 같은 기록캐시영역d를 버퍼(56)에 확보한다. 스텝 S127에 있어서, HD DB(91)는, 세션관리정보(181)의 엔트리M의 기록캐시 어드레스 저장영역(191)에, 확보한 버퍼(56)에서의 기록캐시영역d의 어드레스를 저장한다.
스텝 S128에 있어서, HD DB(91)는, 버퍼(56)에 확보한 기록캐시영역d에, 도 26A에 나타낸 오브젝트 기본 제1형의 오브젝트X의 기록을 개시하지만, 그것을 비롯하여, 기록캐시영역d의 오브젝트 식별자기록영역(201)에, 오브젝트 식별자 OID(q, p, t)를 기록한다. 스텝 S129에 있어서, HD DB(91)는, 작성하는 오브젝트의 임의의 데이터(예를 들면, 작성하는 오브젝트의 명칭 등)를, 기록캐시영역d의 임의 데이터 기록영역(202)에 기록한다.
스텝 S130에 있어서, HD DB(91)는, 사용자의 조작에 대응하는 신호I의 입력을 기다린다. 스텝 S131에서, HD DB(91)는, 신호I가 commit, 즉, 세션작성을 확정하는 것인지 아닌지를 판정한다. 신호I가 commit라고 판정된 경우, 처리는 스텝 S132로 진행하고, 기록세션Z이 확정된다. 반대로, 신호I가 commit가 아니라고 판정된 경우, 처리는 스텝 S133로 진행하고, 기록세션Z이 파기된다.
스텝 S132의 기록세션을 확정하는 처리에 대해서, 도 31의 흐름도를 참조하여 설명한다. 이때, 세션을 확정한다라는 것은, 해당 세션이 개설된 후에 행해진 오브젝트의 작성, 갱신, 이동 등에, 오브젝트기록영역(122)의 기록을 반영하여 확정하는 것이다.
스텝 S171에 있어서, HD DB(91)는, 변수M을 1로 초기화한다. 스텝 S172에 있어서, HD DB(91)는, 변수M이 세션관리정보(181)를 구성하는 엔트리의 수S 이하인지 아닌지를 판정한다. 변수M이 엔트리의 수S 이하라고 판정된 경우, 처리는 스텝S173로 진행한다. 스텝 S173에서 HD DB(91)는, 세션관리정보(181)를 구성하는 엔트리 M의 판독 기록 세션번호 저장영역(184)의 값을 판독하고, 세션번호Z와 일치하는지 여부를 판정한다. 엔트리M의 판독 기록 세션번호 저장영역(184)의 값과 세션번호Z가 일치하지 않는다고 판정된 경우, 엔트리M의 판독 기록 세션번호 저장영역(184)의 값과 세션번호Z가 일치하는 엔트리를 검색하기 위해서, 처리는 스텝 S174로 진행한다.
스텝 S174에 있어서, HD DB(91)는, 변수M을 1만 증가한다. 처리는 스텝 S172로 되돌아가, 이후의 처리가 반복된다. 스텝 S173에 있어서, 엔트리M의 판독 기록 세션번호 저장영역(184)의 값과 세션번호Z가 일치한다고 판정된 경우, 처리는 스텝 S175로 진행한다. 즉, 판독 기록 세션번호 저장영역(184)에 세션번호Z가 저장되어 있는 엔트리만이 추출되고, 스텝 S175이후의 처리가 시행된다.
스텝 S175에 있어서, HD DB(91)는, 판독 기록 세션번호 저장영역(184)에 세션번호Z가 저장되어 있는 엔트리M의 오브젝트 식별자저장영역(183)으로부터 오브젝트 식별자를 판독한다. 스텝 S176에 있어서, HD DB(91)는, 판독 기록 세션번호 저장영역(184)에 세션번호Z가 저장되어 있는 엔트리M의 오브젝트상태 저장영역(189) 으로부터 오브젝트상태를 나타내는 정보J를 판독한다. 스텝 S176에 있어서, HD DB(91)는, 오브젝트상태를 나타내는 정보J가 "CREATE", "UPDATE" 또는 "REMOVE" 중 어느 것인가를 판정한다.
스텝 S177에 있어서, 오브젝트상태를 나타내는 정보 J가 "CREATE"이라고 판정된 경우, 처리는 스텝 S178로 진행한다. 스텝 S178에서, HD DB(91)는, 버퍼(56)에 확보한 기록캐시영역d에 기록되어 있는 오브젝트를, 오브젝트기록영역(122)의 청크p의 페이지q 이후에 기록한다. 스텝 S179에 있어서, HD DB(91)는, 영역정보기록영역(164)의 q열 p행 이후의 g비트에 1을 기록한다.
스텝 S180에 있어서, HD DB(91)는, 엔트리 M의 기록캐시 어드레스 저장영역(191)의 값을, 판독캐시 어드레스 저장영역(190)에 복사한다. 이때, 판독캐시 어드레스 저장영역(190)에 0 이외의 값이 저장되어 있었다면, 그 값이 나타내는 버퍼(56)가 설치되는 판독캐시영역을 해방한다.
스텝 S181에 있어서, HD DB(91)는, 엔트리M의 판독 기록 세션번호 저장영역(184) 및 기록캐시 어드레스 저장영역(191)에 0을 저장한다. 스텝 S182에 있어서, HD DB(91)는, 엔트리M의 액세스 시각 저장영역(192)의 값을 현재의 시각으로 갱신한다.
스텝 S177에 있어서, 오브젝트상태를 나타내는 정보 J가 "UPDATE"이라고 판정된 경우, 처리는 스텝 S183로 진행한다. 스텝 S183에서, HD DB(91)는, 버퍼(56)에 확보한 기록캐시영역d에 기록되어 있는 오브젝트를, 오브젝트기록영역(122)의 청크p의 페이지q 이후에 기록한다. 처리는 스텝 S180으로 진행한다.
스텝 S177에 있어서, 오브젝트상태를 나타내는 정보 J가 "REMOVE"이라고 판정된 경우, 처리는 스텝 S184로 진행한다. 스텝 S184에 있어서, HD DB(91)는, 영역정보기록영역(164)의 q열 p행 이후의 g비트에 0을 기록한다. 스텝 S185에 있어서, HD DB(91)는, 엔트리M이 버퍼(56)에 확보하고 있는 기록캐시와 판독캐시를 석방한다. 스텝 S186에 있어서, HD DB(91)는, 엔트리M의 오브젝트 식별자저장영역(183) 내지 액세스 시각 저장영역(192)에 0을 저장한다. 처리는 스텝 S174로 진행한다.
그 후, 스텝 S172에 있어서, 변수M이 엔트리의 수S 이하가 아니라고 판정될 때까지, 이후의 처리가 반복된다. 변수M이 엔트리의 수S 이하가 아니라고 판정된 경우, 기록세션을 확정하는 처리가 완료된다.
도 28의 스텝 S133의 처리, 즉, 기록세션을 파기하는 처리에 대해서, 도 32의 흐름도를 참조하여 설명한다. 스텝 S191에서, HD DB(91)는, 변수M을 1로 초기화한다. 스텝 S192에 있어서, HD DB(91)는, 변수M이 세션관리정보(181)를 구성하는 엔트리의 수S 이하인지의 여부를 판정한다. 변수M이 엔트리의 수S 이하라고 판정된 경우, 처리는 스텝 S193로 진행한다.
스텝 S193에 있어서, HD DB(91)는, 세션관리정보(181)를 구성하는 엔트리M의 판독 기록 세션번호 저장영역(184)의 값을 판독하고, 세션번호Z와 일치하는가 아닌가를 판정한다. 엔트리M의 판독 기록 세션번호 저장영역(184)의 값과 세션번호Z가 일치하지 않는다고 판정된 경우, 엔트리M의 판독 기록 세션번호 저장영역(184)의 값과 세션번호Z가 일치하는 엔트리를 검색하기 위해서, 처리는 스텝 S194로 진행한다. 스텝 S194에 있어서, HD DB(91)는, 변수M을 1만큼 증가한다. 처리는 스텝 S192 로 돌아가, 이후의 처리가 반복된다.
스텝 S193에 있어서, 엔트리M의 판독 기록 세션번호 저장영역(184)의 값과 세션번호Z가 일치한다고 판정된 경우, 처리는 스텝 S195로 진행한다. 즉, 판독 기록 세션번호 저장영역(184)에 세션번호Z가 저장되어 있는 엔트리만이 추출되어, 스텝 S195이후의 처리가 시행된다.
스텝 S195에 있어서, HD DB(91)는, 엔트리M이 버퍼(56)에 확보하고 있는 기록캐시영역을 해방한다. 스텝 S196에 있어서, HD DB(91)는, 엔트리M의 오브젝트상태저장영역(189)에 저장되어 있는 오브젝트상태가 "CREATE"인가 아닌가를 판정하고, 오브젝트상태가 "CREATE"가 아니라고 판정한 경우, 스텝 S197로 진행한다.
스텝 S197에 있어서, HD DB(91)는, 엔트리M의 판독 기록 세션번호 저장영역(184) 및 기록캐시 어드레스 저장영역(191)에 0을 저장한다. 스텝 S198에 있어서, HD DB(91)는, 엔트리M의 액세스 시각 저장영역(192)의 값을 현재의 시각으로 갱신한다. 처리는 스텝 S194로 진행한다.
이때, 스텝 S196에 있어서, 엔트리M의 오브젝트상태저장영역(189)에 저장되어 있는 오브젝트상태가 "CREATE"라고 판정된 경우, 처리는 스텝 S199로 진행한다. 스텝 S199에 있어서, HD DB(91)는, 엔트리M의 판독 기록 세션번호 저장영역(184) 및 기록캐시 어드레스 저장영역(191) 이외, 즉, 오브젝트 식별자저장영역(183), 판독전용 세션번호 저장영역(185 내지 188), 오브젝트상태저장영역(189), 판독캐시 어드레스 저장영역(190) 및 액세스 시각 저장영역(192)에 0을 저장한다. 처리는 스텝 S194로 진행한다.
그 후, 스텝 S192에 있어서, 변수M이 엔트리의 수S 이하가 아니라고 판정될 때까지, 이후의 처리가 반복된다. 변수M이 엔트리의 수S 이하가 아니라고 판정된 경우, 기록세션을 파기하는 처리가 완료된다.
다음으로, 오브젝트의 검색처리에 대해서, 오브젝트 식별자 OID=X인 오브젝트(이하, 오브젝트X라고 기술한다)을 검색하는 경우를 예로 해서, 도 33의 흐름도를 참조하여 설명한다. 이때, 세션은 이미 개설되어 있는 것으로 한다.
스텝 S201에 있어서, HD DB(91)은, 오브젝트X에 대응하는 엔트리M을 취득한다. 오브젝트X에 대응하는 엔트리를 취득하는 처리에 대해서, 도 34의 흐름도를 참조하여 설명한다.
스텝 S211에 있어서, HD DB(91)는, 변수M을 1로 초기화한다. 스텝 S212에 있어서, HD DB(91)는, 변수M이 세션관리정보(181)를 구성하는 엔트리의 수S 이하인가 아닌가를 판정한다. 변수M이 엔트리의 수S 이하라고 판정된 경우, 처리는 스텝 S213로 진행한다.
스텝 S213에 있어서, HD DB(91)는, 세션관리정보(181)를 구성하는 엔트리M의 오브젝트 식별자저장영역(183)의 값을 판독하고, 오브젝트X의 오브젝트 식별자 OID=X와 일치하는가 아닌가를 판정한다. 엔트리 M의 오브젝트 식별자저장영역(183)의 값과, 오브젝트X의 오브젝트 식별자 OID=X가 일치하지 않는다고 판정된 경우, 오브젝트 식별자저장영역(183)의 값과, 오브젝트X의 오브젝트 식별자 OID=X가 일치하는 엔트리를 검색하기 위해서, 처리는 스텝 S214로 진행한다.
스텝 S214에 있어서, HD DB(91)는, 변수M을 1만큼 증가한다. 처리는 스텝 S2l2로 되돌아가, 이후의 처리가 반복된다. 스텝 S2l3에 있어서, 엔트리M의 오브젝트 식별자저장영역(183)의 값과, 오브젝트X의 오브젝트 식별자 OID=X가 일치한다고 판정된 경우, 오브젝트X에 대응하는 엔트리M을 취득할 수 있었기 때문에, 이 처리가 종료되고, 처리는 도 33으로 되돌아간다.
이때, 스텝 S213에 있어서, 엔트리M의 오브젝트 식별자저장영역(183)의 값과, 오브젝트X의 오브젝트 식별자 OID=X가 일치하지 않는다고 판정되는 경우가 이어지고, 스텝 S212에 있어서, 변수M이 엔트리의 수S 이하가 아니라고 판정된 경우, 처리는 스텝 S215로 진행한다. 스텝 S215에 있어서, HD DB(91)는, 에러인, 즉, 오브젝트X에 대응하는 엔트리M을 취득할 수 있었다고 판단하여, 이 처리를 종료한다. 처리는 도 33으로 되돌아간다.
도 33으로 돌아가서, 스텝 S201의 처리에서 오브젝트X에 대응하는 엔트리M을 취득할 수 있었던 경우, 처리는 스텝 S202로 진행한다. 스텝 S202에 있어서, HD DB(91)는, 오브젝트X에 대응하는 엔트리M을 취득할 수 있었기 때문에, 오브젝트X는 버퍼(56)에 존재한다고 판단하여, 처리를 종료한다.
반대로, 스텝 S201의 처리로 오브젝트X에 대응하는 엔트리M을 취득할 수 없었던 경우, 처리는 스텝 S203로 진행한다. 스텝 S203에 있어서, HD DB(91)는, 오브젝트 X의 오브젝트 식별자 OID=X를 분해하여, 오브젝트가 기록되어 있는 오브젝트기록영역(122)의 청크번호, 페이지번호, 오브젝트X의 형 번호t를 취득한다.
스텝 S204에 있어서, HD DB(91)는, 오브젝트형 기록영역(163)으로부터, 형 번호t에 대응하는 엔트리의 사이즈기록영역(167)의 값을 판독하고, 그 값에 따라서 오브젝트X를 기록하기 위해서 필요한 페이지수g를 산출한다.
스텝 S205에 있어서, HD DB(91)는, 영역정보기억영역(164)을 참조하여, q행 p열 이후의 g비트가 1인지 아닌지를 판정한다. 영역정보기억영역(164)의 q행 p열 이후의 g비트가 1이라고 판정된 경우, 처리는 스텝 S206로 진행한다. 스텝 S206에 있어서, HD DB(91)는, 페이지수g에 해당하는 판독캐시영역c을 버퍼(56)에 설정한다. 스텝 S207에 있어서, HD DB(91)는, 오브젝트기록영역(122)의 청크q의 페이지p 이후 페이지수g에 기록되어 있는 데이터를, 버퍼(56)의 판독캐시영역c에 복사한다.
스텝 S208에 있어서, HD DB(91)는, 판독캐시영역c에 복사한 데이터의 오브젝트 식별자기록영역(201)에 해당하는 부분에 기록되어 있는 오브젝트 식별자와 오브젝트 식별자 X가 일치하는지 아닌지를 판정한다. 일치한다고 판정된 경우, 판독캐시영역c에 캐시되어 있는 데이터가 오브젝트X이기 때문에, 처리는 스텝 S202로 진행한다.
스텝 S208에 있어서, 판독캐시영역c에 복사한 데이터의 오브젝트 식별자기록영역(201)에 해당하는 부분에 기록되어 있는 오브젝트 식별자와 오브젝트 식별자X가 일치하지 않는다고 판정된 경우, 처리는 스텝 S209로 진행한다. 스텝 S209에 있어서, HD DB(91)는, 오브젝트기록영역(122)에도 오브젝트X는 존재하지 않는다고 단정하여 처리를 종료한다.
계속해서, 오브젝트X의 갱신처리에 대해서, 도 35의 흐름도를 참조하여 설명한다. 여기서, 오브젝트X의 갱신처리란, 오브젝트X의 임의 데이터를 재기록하는 처리이다.
스텝 S221에 있어서, HD DB(91)는, 도 29를 참조하여 상술한 스텝 S121의 처리와 같이, 기록세션Z를 개설한다. 스텝 S222에 있어서, HD DB(91)는, 도 34를 참조하여 상술한 스텝 S201의 처리와 같이, 오브젝트X에 대한 엔트리M을 취득한다.
스텝 S222의 처리에서 오브젝트X에 대응하는 엔트리M을 취득할 수 있었던 경우, 오브젝트X는 버퍼(56)로 설정되어 있는 판독캐시영역c에 캐시되어 있다고 판단하여, 처리는 스텝 S223로 진행한다. 스텝 S223에 있어서, HD DB(91)는, 엔트리M의 판독 기록 세션번호 저장영역(184)의 값이 0인지 아닌지를 판정한다. 엔트리M의 판독 기록 세션번호 저장영역(184)의 값이 0이라고 판정된 경우, 처리는 스텝 S224로 진행한다.
스텝 S224에 있어서, HD DB(91)는, 엔트리M의 판독 기록 세션번호 저장영역(184)에, 스텝 S221에서 개설한 기록세션의 세션번호Z를 저장한다. 스텝 S225에 있어서, HD DB(91)는, 오브젝트X의 오브젝트 식별자 OID=X를 분해하여, 오브젝트가 기록되어 있는 오브젝트기록영역(122)의 청크번호, 페이지번호, 오브젝트X의 형 번호t를 취득한다.
스텝 S226에 있어서, HD DB(91)는, 오브젝트형 기록영역(163)으로부터, 형 번호t에 대응하는 엔트리의 사이즈기록영역(167)의 값을 판독하고, 그 값에 따라서 오브젝트X를 기록하기 위해서 필요한 페이지수g를 산출한다. 스텝 S227에 있어서, HD DB(91)는, 페이지수g에 해당하는 기록캐시영역d를 버퍼(56)에 설정한다. 스텝 S228에 있어서, HD DB(91)는, 엔트리M의 기록캐시 어드레스 저장영역(191)에, 기록캐시영역d의 어드레스를 저장한다.
스텝 S229에 있어서, HD DB(91)는, 버퍼(56)의 판독캐시영역c의 데이터를, 기록캐시영역d에 복사한다. 스텝 S230에서 HD DB(91)는, 오브젝트X의 갱신하는 임의데이터를, 기록캐시영역d에 복사된 오브젝트X의 임의 데이터 기록영역(202)에 기록한다. 스텝 S231에 있어서, HD DB(91)는, 엔트리M의 오브젝트상태저장영역(189)에 갱신을 나타내는 정보 "UPDATE"를 저장한다.
스텝 S232에 있어서, HD DB(91)는, 사용자의 조작에 대응하는 신호I의 입력을 기다린다. 스텝 S233에 있어서, HD DB(91)는, 신호I가 commit 즉, 세션갱신을 확정하는 것인지 아닌지를 판정한다. 신호I가 commit라고 판정된 경우, 처리는 스텝 S234로 진행한다. 스텝 S234에 있어서, HD DB(91)는, 도 31을 참조하여 상술한 스텝 S132의 처리와 마찬가지로, 기록세션Z를 확정한다. 반대로, 신호I가 commit가 아니라고 판정된 경우, 처리는 스텝 S235로 진행한다. 스텝 S235에 있어서, HD DB(91)는, 도 32를 참조하여 상술한 스텝 S133의 처리와 마찬가지로, 기록세션Z를 파기한다.
이때, 스텝 S223에 있어서, 엔트리M의 판독 기록 세션번호 저장영역(184)의 값이 0이 아니라고 판정된 경우, 오브젝트X는 세션Z 이외의 다른 세션에 의해서 갱신중이라고 판단할 수 있으므로, 처리는 스텝 S235로 진행한다.
또한, 스텝 S222의 처리에 있어서, 오브젝트X에 대응하는 엔트리M을 취득할 수 없었던 경우, 처리는 스텝 S236로 진행한다. 스텝 S236에 있어서, HD DB(91)는, 도 30을 참조하여 상술한 스텝 S123의 처리와 마찬가지로, 빈 엔트리M을 확보한다.
스텝 S237에 있어서, HD DB(91)는, 오브젝트X의 오브젝트 식별자 OID=X를 분해하여, 오브젝트가 기록되어 있는 오브젝트기록영역(122)의 청크번호, 페이지번호, 오브젝트X의 형 번호t를 취득한다. 스텝 S238에 있어서, HD DB(91)는, 오브젝트형 기록영역(163)으로부터 형 번호t에 대응하는 엔트리의 사이즈기록영역(167)의 값을 판독하고, 그 값에 따라서 오브젝트X를 기록하기 위해서 필요한 페이지수g를 산출한다. 스텝 S239에 있어서, HD DB(91)는, 페이지수g에 해당하는 판독캐시영역c와 기록캐시영역d를 버퍼(56)에 설정한다.
스텝 S240에 있어서, HD DB(91)는, 엔트리M의 판독캐시 어드레스 저장영역(190)에 판독캐시영역c의 어드레스를 저장하고, 엔트리M의 기록캐시 어드레스 저장영역(191)에 기록캐시영역d의 어드레스를 저장하며, 엔트리M의 오브젝트 식별자저장영역(183)에 오브젝트X의 오브젝트 식별자 OID=X를 저장한다.
스텝 S241에서, HD DB(91)는, 오브젝트기록영역(122)의 청크q의 페이지p 이후의 페이지수g까지 기록되어 있는 오브젝트X의 데이터를, 버퍼(56)의 판독캐시영역c에 복사한다. 처리는 스텝 S229로 진행한다.
이상 설명한 바와 같이, 파일X의 갱신처리에서는, 판독캐시영역c로부터 기록캐시영역d에 파일X의 데이터가 복사되고, 기록캐시영역d에 캐시되어 있는 파일X의 데이터가 재기록되며, 재기록된 결과가 세션을 확정하는 처리에 의해, 오브젝트기록영역(122)에 기록된다.
계속해서, 파일기록영역(121)에 기록되는 콘텐츠 데이터와 1 대 1로 대응하는 트랙의 오브젝트, 즉, 오브젝트 형 번호t'의 스트림오브젝트를 작성하는 처리에 대해서, 도 36의 흐름도를 참조하여 설명한다. 이때, 오브젝트 형 번호t'에는, 도 27에 나타낸 바와 같이, 기본 형 번호(지금의 경우, 기본 오브젝트 제2형)와 엔트리번호가 포함되어 있다.
스텝 S251에서, HD DB(91)는, 도 29의 흐름도를 참조하여 상술한 스텝S121의 처리와 마찬가지로, 기록세션을 개설한다. 스텝 S252에 있어서, HD DB(91)는, 오브젝트 형 번호t'의 스트림오브젝트를 기록하는 청크의 페이지를 확보하기 위해서, 오브젝트형 기록영역(163)의 엔트리t'의 사이즈기록영역(167)으로부터 오브젝트 형 번호t'의 오브젝트의 사이즈를 판독하고, 그 사이즈에 해당하는 청크의 페이지수를 산출한다. 산출한 페이지수를 g로 한다.
스텝 S253에 있어서, HD DB(91)는, 도 30의 흐름도를 참조하여 상술한 스텝 S123의 처리와 마찬가지로, 세션관리정보(181)를 구성하는 복수의 엔트리 중 빈 엔트리M을 확보한다. 스텝 S254에 있어서, HD DB(91)는, 영역정보기록영역(164)의 비트열 중 g비트 연속해서 0이 기록되어 있는 비트열을 검색한다. 검색한 g비트연속 0이 기록되어 있는 비트열의 선두의 위치를 q열 p행으로 한다. 스텝 S255에 있어서, HD DB(91)는, 확보한 엔트리M의 오브젝트 식별자저장영역(183)에, 도 27에 나타내는 바와 같이, 청크번호q, 페이지번호p, 오브젝트 형 번호t'로 이루어지는 오브젝트 식별자 OID(q, p, t')를 저장한다. 또한, HD DB(91)는, 세션관리정보(181)의 엔트리M의 판독 기록 세션번호 저장영역(184)에 세션번호Z를 저장하여, 더욱, 오브젝트상태저장영역(189)에 작성을 나타내는 "CREATE"를 기록한다.
스텝 S256에 있어서, HD DB(91)는, 스트림오브젝트의 사이즈인 페이지수g와 같은 기록캐시영역d를 버퍼(56)에 확보한다. 스텝 S257에 있어서, HD DB(91)는, 세션관리정보(181)의 엔트리M의 기록캐시 어드레스 저장영역(191)에, 확보한 버퍼(56)에서의 기록캐시영역d의 어드레스를 저장한다.
스텝 S258에 있어서, HD DB(91)는, 버퍼(56)에 확보한 기록캐시영역d에, 도 26B에 나타낸 오브젝트 기본 제2형의 스트림오브젝트X의 기록을 개시하지만, 그것을 비롯하여, 기록캐시영역d의 오브젝트 식별자기록영역(201)에, 오브젝트 식별자 OID(q, p, t')를 기록한다. 스텝 S259에 있어서, HD DB(91)는, 스트림오브젝트에 대응하는 HD FS(92)에 의해서 작성되는 콘텐츠 데이터의 파일식별자F(이 콘텐츠 데이터가 기록된 일련의 클러스터의 선두의 클러스터번호와 같은 값)를 취득한다. 스텝 S260에 있어서, HD DB(91)는, 기록캐시영역d의 파일식별자기록영역(103)에 파일식별자F를 기록한다.
스텝 S261에 있어서, HD DB(91)는, 작성하는 스트림오브젝트의 임의 데이터(예를 들면, 작성하는 스트림오브젝트의 명칭 등)의 취득을 시작한다. 스텝 S262에 있어서, HD DB(91)는, 임의데이터의 취득이 완료될 때까지 대기한다. 이때, 스텝 S261 및 S262의 처리의 사이에, HD FS(92)에 의해 해당 스트림오브젝트에 대응하는 파일식별자F의 콘텐츠 데이터의 파일이 작성되어 파일기록영역(121)에 기록된다.
스텝 S263에 있어서, HD DB(91)는, 기록캐시영역d의 임의 데이터 기록영역(202)에, 취득한 임의데이터를 기록한다.
스텝 S264에 있어서, HD DB(91)는, 사용자의 조작에 대응하는 신호I의 입력을 기다린다. 스텝 S265에 있어서, HD DB(91)는, 신호I가 commit, 즉, 세션작성을 확정하는 것인지 아닌지를 판정한다. 신호I가 commit라고 판정된 경우, 처리는 스텝 S266로 진행한다. 스텝 S266에 있어서, HD DB(91)는, 도 31을 참조하여 상술한 스텝 S132 처리와 마찬가지로, 기록세션Z를 확정한다.
반대로, 스텝 S265에 있어서, 신호I가 commit이 아니라고 판정된 경우, 처리는 스텝 S267로 진행한다. 스텝 S267에 있어서, HD DB(91)는, 도 32를 참조하여 상술한 스텝 S133에 처리와 마찬가지로, 기록세션Z를 파기한다. 스텝 S268에 있어서, HD DB(91)는, HD FS(92)에 파일F의 삭제를 의뢰한다. 이상, 스트림오브젝트의 작성처리의 설명을 종료한다.
다음으로, 오브젝트 식별자 OID=X인 스트림오브젝트(이하, 스트림오브젝트X라고 기술한다)를 검색하는 처리에 대해서, 도 37의 흐름도를 참조하여 설명한다. 이때, 세션은 이미 개설되어 있는 것으로 한다.
스텝 S271에 있어서, HD DB(91)는, 도 33을 참조하여 상술한 오브젝트X의 검색처리와 같은 처리를 실행한다. 스텝 S272에 있어서, 스텝 S271의 처리로 검색된 오브젝트X의 오브젝트 식별자 OID=X에 포함되는 오브젝트 형 번호를 취득한다. 취득한 오브젝트 형 번호를 t로 한다. 더욱, HD DB(91)은, 오브젝트 형 번호t에 포함되는 오브젝트기본형 번호를 취득한다.
스텝 S273에 있어서, HD DB(91)는, 검색된 오브젝트X의 기본 오브젝트 형 번호가 기본 오브젝트 제2형인지 아닌지를 판정한다. 검색된 오브젝트X의 기본 오브젝트 형 번호가 기본 오브젝트 제2형이라고 판정된 경우, 검색된 오브젝트X가 스트림오브젝트이기 때문에, 처리는 스텝 S274로 진행한다. 스텝 S274에 있어서, HD DB(91)는, 검색된 스트림오브젝트X의 파일식별자기록영역(203)으로부터 파일식별자를 판독하여 HD FS(92)에 공급한다.
이때, 스텝 S271에 있어서, 오브젝트 식별자 OID=X의 오브젝트를 검색할 수 없었던 경우, 처리는 스텝 S275로 진행한다. 또한, 스텝 S273에 있어서, 검색된 오브젝트X의 기본 오브젝트 형 번호가 기본 오브젝트 제2형이 아니라고 판정된 경우도, 처리는 스텝 S275로 진행한다. 스텝 S275에 있어서, HD DB(91)는, 에러, 즉, 스트림오브젝트X는 존재하지 않는다고 판단하여 스트림오브젝트 검색처리를 종료한다.
계속해서, 도 38은, 오브젝트기록영역(122)에 기록되는 오브젝트의 디렉토리구조를 나타내고 있다. 오브젝트기록영역(122)에는, 루트(211) 아래, 폴더리스트 오브젝트(212), 폴더 오브젝트(213), 앨범 오브젝트(214) 및 트랙 오브젝트(215)가 계층구조를 이루고 있다.
HD DB(91)는, 폴더리스트 오브젝트(212) 밑에, 복수의 폴더 오브젝트(213)를 생성할 수 있다. 폴더 오브젝트(213)밑에는, 복수의 앨범 오브젝트(214)를 생성할 수 있다. 앨범 오브젝트(214)의 밑에는, 복수의 트랙 오브젝트(215)를 생성할 수 있다. 트랙 오브젝트(215)는, 1곡분량의 콘텐츠 데이터에 대응하고 있다.
폴더 오브젝트(213), 앨범 오브젝트(214) 및 트랙 오브젝트(215)는, 재생할 악곡을 선택할 때 등에 사용자에게 제시되는 오브젝트이다. HD DB(91)는, 사용자에게 제시되는 오브젝트가 아닌 다른 정보의 오브젝트(CC(Content Control)오브젝트(216) 등)를, 루트(211), 폴더리스트 오브젝트(212) 또는 폴더 오 브젝트(213) 밑에 생성할 수 있다.
게다가, HD DB(91)은, 폴더리스트 오브젝트(212) 밑에 폴더 오브젝트(213)를 생성한 경우, 같은 폴더리스트 오브젝트(212) 밑에 폴더 오브젝트(213) 이외의 다른 오브젝트를 금지한다. 또한, 폴더 오브젝트(213) 밑에 앨범 오브젝트(214)를 생성한 경우, 같은 폴더 오브젝트(213)의 밑에 앨범 오브젝트(214) 이외의 오브젝트를 생성하는 것을 금지한다. 또한, 앨범 오브젝트(214)밑에는, 트랙 오브젝트(215) 이외의 오브젝트를 생성하는 것을 금지한다.
각 오브젝트는, 상술한 규칙에 따라서 기록되기 때문에, 오브젝트기록영역(122)에는, 폴더군(217), 앨범군(218) 및 트랙군(219)이 구축된다.
다음으로 각 오브젝트의 데이터 포맷에 대해서 설명한다.
도 39는, 폴더리스트 오브젝트(212)의 데이터 포맷을 나타내고 있다. 폴더리스트 오브젝트(212)는, 도 26a에 나타낸 기본 오브젝트 제1형에 속하기 때문에, 오브젝트 식별자기록영역(201) 및 임의 데이터기록영역(202)으로 구성된다. 폴더리스트 오브젝트(212)의 오브젝트 식별자 기록영역(201)에는, 4바이트의 오브젝트 식별자 OID가 기록된다.
폴더리스트 오브젝트(212)의 임의 데이터기록영역(202)에는, 해당 폴더리스트 오브젝트(212) 밑에 작성 가능한 폴더 오브젝트(213)의 최대치 MAX(4바이트), 해당 폴더리스트 오브젝트(212) 밑에 작성되어 있는 폴더 오브젝트(213)의 수N(4바이트) 및 해당 폴더리스트 오브젝트(212) 아래에 작성되어 있는 폴더 오브젝트(213)의 ID 줄을 나타내는 4×100바이트의 폴더가 기록된다. 폴더리스트 오브젝트(212)의 임의 데이터기록영역(202)에는, 612바이트의 보류가 설치되어 있다.
도 40은, 폴더 오브젝트(213)의 데이터 포맷을 나타내고 있다. 폴더 오브젝트(213)는, 도 26A에 나타낸 기본 오브젝트 제1형에 속하기 때문에, 오브젝트 식별자 기록영역(201) 및 임의 데이터기록영역(202)으로 구성된다. 폴더 오브젝트(213)의 오브젝트 식별자 기록영역(201)에는, 4바이트의 오브젝트 식별자 OID가 기록된다.
폴더 오브젝트(213)의 임의 데이터기록영역(202)에는, 해당 폴더 오브젝트(213) 밑에 작성 가능한 앨범 오브젝트(214)의 최대치MAX(4바이트), 해당 폴더 오브젝트(213)아래에 작성되어 있는 앨범 오브젝트(214)의 수N(4바이트), 해당 폴더 오브젝트(213) 아래에 작성되어 있는 앨범 오브젝트(214)의 ID 줄을 나타내는 4×200바이트의 앨범 및 해당 폴더 오브젝트(213)의 폴더명을 나타내는 36바이트의 타이틀이 기록된다. 폴더 오브젝트(213)의 임의 데이터기록영역(202)에는, 176바이트의 보류가 설치되어 있다.
도 41은, 앨범 오브젝트(214)의 데이터 포맷을 나타내고 있다. 앨범 오브젝트(214)는, 도 26a에 나타낸 기본 오브젝트 제1형에 속하기 때문에, 오브젝트 식별자 기록영역(201) 및 임의 데이터기록영역(202)으로 구성된다. 앨범 오브젝트(214)의 오브젝트 식별자 기록영역(201)에는, 4바이트의 오브젝트 식별자 OID가 기록된다.
앨범 오브젝트(214)의 임의 데이터기록영역(202)에는, 해당 앨범 오브젝트(214) 밑에 작성 가능한 트랙 오브젝트(215)의 최대치 MAX(4바이트), 해당 앨범 오브젝트(214) 아래에 작성되어 있는 트랙 오브젝트(215)의 수N(4바이트), 해당 앨범 오브젝트(214) 아래에 작성되어 있는 트랙 오브젝트(215)의 ID의 줄을 나타내는 4×400바이트의 Track, 해당 앨범 오브젝트(214)의 타이틀명을 나타내는 516바이트의 Title, 해당 앨범 오브젝트(214)의 아티스트명을 나타내는 260바이트의 Artist, 해당 앨범 오브젝트(214)의 생성일시를 나타내는 8바이트의 Creation Date 및 해당 앨범 오브젝트(214)의 근본인 음악 CD(3)의 미디어 키를 나타내는 32바이트의 미디어 키가 기록된다. 앨범 오브젝트(214)의 임의 데이터기록영역(202)에는, 1660바이트의 보류가 설치되어 있다.
도 42는, 트랙 오브젝트(215)의 데이터 포맷을 나타내고 있다. 트랙 오브젝트(215)는, 도 26b에 나타낸 기본 오브젝트 제2형에 속하기 때문에, 오브젝트 식별자 기록영역(201), 임의 데이터기록영역(202) 및 파일식별자기록영역(203)으로 구성된다. 트랙 오브젝트(215)의 오브젝트 식별자 기록영역(201)에는, 4바이트의 오브젝트 식별자 OID가 기록된다. 트랙 오브젝트(215)의 파일식별자기록영역(203)에는, 1 대 1로 대응하는 콘텐츠 데이터(파일기록영역(121)에 기록되어 있다)의 파일식별자를 나타내는 4바이트의 SOID가 기록된다.
트랙 오브젝트(215)의 임의 데이터기록영역(202)에는, 해당 트랙 오브젝트(215)의 곡명을 나타내는 516바이트의 Title, 해당 트랙 오브젝트(215)의 artist명을 나타내는 260바이트의 Artist, 해당 앨범 오브젝트(214)의 재생시간을 나타내는 8바이트의 Time, 해당 트랙 오브젝트(215)에 대하여 최후에 액세스한 일시를 나타내는 8바이트의 Last Access Date 및 해당 트랙 오브젝트(215)의 재생회수를 나타내는 4바이트의 플레이카운터(PC), 해당 트랙 오브젝트(215)의 제작일시를 나타내는 8바이트의 Creation Date 및 해당 트랙 오브젝트(215)에 대응하는 콘텐츠 데이터의 곡 속성과 재생제어정보(저작권보호를 위한 정보)를 나타내는 12544바이트의 AC가 기록된다. 트랙 오브젝트(215)의 임의 데이터기록영역(202)에는, 980바이트의 보류가 설치되어 있다.
도 43은, 트랙 오브젝트(215)의 임의 데이터기록영역(202)에 기록되는 1255바이트의 AC의 상세내용을 나타내고 있다. AC에는, 콘텐츠 키를 나타내는 8바이트의 Ckey, 코덱식별값을 나타내는 1바이트의 Codec, 코덱속성을 나타내는 1바이트의 Codec Attr, 재생제한정보를 나타내는 1바이트의 LT, 정당성 체크용 플래그를 나타내는 1바이트의 VLD, 체크아웃처의 개수를 나타내는 1바이트의 LCMLOGNUM, 코덱의존정보를 나타내는 16바이트의 CDI, 콘텐츠연속번호를 나타내는 20바이트의 CID, 재생허가개시일시를 나타내는 8바이트의 PBS, 재생허가종료일시를 나타내는 8바이트의 PBE, 확장 CC을 나타내는 1바이트의 XCC, 재생회수의 나머지를 나타내는 1바이트의 CT, 콘텐츠제어정보를 나타내는 1바이트의 CC, 체크아웃 남은 회수를 나타내는 1바이트의 CN, 소스정보를 나타내는 40바이트의 SRC 및 체크아웃처의 기기 ID와 플래그를 포함하는 정보를 나타내는 48×256바이트의 LCMLOG가 기록된다.
특히, 콘텐츠제어정보를 나타내는 1바이트의 CC는, MSB(Most Significant Bit)측으로부터 1비트째는, 저작권의 유무를 나타내고 (0:유, 1:무). MSB측으로부 터 2비트째는, 세대를 나타내며 (0:오리지널, 1:오리지널 이외) MSB측으로부터 3, 4비트번째는 사용하지 않는다.
CC의 MSB측으로부터 5 내지 7비트째가 나타내는 정보는, 이하와 같다. 즉, CC의 MSB측으로부터 5 내지 7비트째에 010이 기록되어 있는 경우, 체크아웃허가(편집은 허가)를 나타낸다. CC의 MSB측으로부터 5내지 7비트째에 011이 기록되어 있는 경우, 무브 허가(PD5에서의 편집은 금지)를 나타낸다. CC의 MSB측으로부터 5 내지 7비트째에 100이 기록되어 있는 경우, 임포트 허가(PD5에서의 편집은 허가)를 나타낸다. CC의 MSB측으로부터 5 내지 7비트째에 110이 기록되어 있는 경우, 임포트 허가(PD5에서의 편집은 금지)를 나타낸다.
도 44는, 트랙 오브젝트(215)와 1대1로 대응하는 콘텐츠 데이터의 데이터 포맷을 나타내고 있다. 콘텐츠 데이터는, ATRAC3헤더를 나타내는 16KB의 AT3H, ATRAC3파츠(parts)를 나타내는 16KB의 PRT 및 사운드유니트열을 나타내는 각 16KB의 AT3SU-1 내지 AT3SU-N으로 구성된다.
도 45는, CC오브젝트(216)의 데이터 포맷을 보이고 있다. CC5오브젝트(216)는, 도 26B에 나타낸 기본 오브젝트 제2형에 속한다. 따라서, CC오브젝트(216)는, 오브젝트 식별자 기록영역(201) 및 임의 데이터기록영역(202)으로 구성된다. CC오브젝트(216)의 오브젝트 식별자 기록영역(201)에는, 4바이트의 오브젝트 식별자 OID가 기록된다.
CC오브젝트(216)의 임의 데이터기록영역(202)에는, 16바이트의 보류가 설치되어 있다. CC오브젝트(216)의 파일식별자기록영역(203)에는, 대응하는 CC데이터( 파일기록영역(121)에 기록된다)의 파일식별자를 나타내는 4바이트의 SOID가 기록된다.
도 46은, 파일기록영역(121)에 기록되는 CC데이터의 포맷을 나타내고 있다. CC 데이터에는, 10KB의 Cat Folder, 200KB의 Cat Album 및 600KB의 Cat Track이 포함된다. Cat Folder는, 사용자 선택하는 폴더에 대응하는 폴더 오브젝트(213)의 오브젝트 식별자 OID를 나타내는 정보가 기록되어 있다. Cat Album에는, 사용자가 선택하는 앨범에 대응하는 앨범 오브젝트(214)의 오브젝트 식별자 OID를 나타내는 정보가 기록되어 있다. Cat Track에는, 사용자가 선택하는 트랙에 대응하는 트랙 오브젝트(215)의 오브젝트 식별자 OID를 나타내는 정보가 기록되어 있다.
따라서, 예를 들면, 재생시에, 사용자가 재생시키는 트랙을 선택하면, CC데이터의 Cat Track에 따라서, 선택된 트랙에 대응하는 트랙 오브젝트(215)의 오브젝트 식별자 OID가 판명되고, 판명된 트랙 오브젝트(215)로부터 대응하는 파일식별자가 취득되어, 콘텐츠 데이터가 판독되어 재생된다.
다음에, 오디오 서버(1)의 각 기능이 실행될 때의 데이터의 흐름과, 펌웨어와의 대응에 관해서, 도 47 내지 도 56을 참조하여 설명한다.
도 47은, CD리핑이 실행될 때의 데이터의 흐름을 나타내고 있다. 음악 CD(3)를 고속으로 녹음하는 CD리핑에서는 CD MW(88)의 제어에 의해, 음악 CD(3)의 디지털오디오데이터는, CD-ROM 드라이브(57)에 의해서 CAV 8배속으로 판독되고, 버퍼(56)에 버퍼링된다. 또한, HD MW(82)의 제어에 의해, 버퍼(56)에 버퍼링된 디지털오디오데이터는, WM스크린(60-2)에 입력되어 워터마크가 검출된다. 계속해서, HD MW(82)의 제어에 의해, 버퍼(56)에 버퍼링되어 있던 디지털오디오데이터는, 인코더(59)에 의해서 평균 5배속으로 ATRAC3방식에 의해 인코드되어 암호화되고, 얻어진 부호화데이터는, 버퍼(56)로 버퍼링된 후, HDD(58)에 전송되어 기록된다. 이때, 도시는 생략했지만, CD리핑이 한창일 때에는, 녹음되어 있는 디지털오디오데이터에 대응하는 음성이 스피커(2)로부터 출력된다.
도 48은, CD레코딩이 실행될 때의 데이터의 흐름을 나타내고 있다. 음악 CD(3)를 재생하면서 녹음하는 CD레코딩에서는, CD MW(88)의 제어에 의해, 음악 CD(3)의 디지털오디오데이터는, CD-ROM 드라이브(57)에 의해서 CAV8배속으로 판독되고 버퍼(56)에 버퍼링된다. 다음으로, HD MW(82)의 제어에 의해, 버퍼(56)에 버퍼링되어 있던 디지털오디오데이터는, 인코더(59)에 의해서 평균5배속으로 ATRAC3방식에 의해 인코드되어 암호화되고, 얻은 부호화데이터는, 버퍼(56)로 버퍼링된 후, HDD(58)에 전송되어 기록된다. 또한, HD MW(82)의 제어에 의해, 버퍼(56)에 버퍼링된 오디오데이터는, WM스크린(60-2)에 공급되어 워터마크가 검출된다.
한편, 모니터 음성을 위해, 버퍼링되어 있던 디지털오디오데이터는, HD MW(82)의 제어에 의해, HDD(58)에 설치되어 있는 링 버퍼(241)(도 61)에 일시적으로 기록된 후, 판독되어 오디오 I/F(60-3)에 입력된다. 계속해서, AIO MW(94)의 제어에 의해, 디지털오디오데이터는, D/A(62)에 전송되어 아날로그화되고, 스피커(2)로부터 대응한 음성이 출력된다.
이때, CD리핑 및 CD레코딩의 상세내용에 대해서는, 도 57 내지 도 70b를 참조하여 후술한다.
도 49는, 디지털입력에 대한 HD 레코딩이 실행될 때의 데이터의 흐름을 나타내고 있다. 디지털입력을 부호화하여 HDD(58)에 기록하는 HD레코딩에서는, AIO MW(94)의 제어에 의해, AUX 인 단자(31)로부터 입력되는 디지털오디오데이터는, 신호처리부(60)를 통해 인코더(59)에 공급된다. 계속해서, HD MW(82)의 제어에 의해, 디지털오디오데이터는, 인코더(59)에 의해서 ATRAC3방식에 따라서 인코드되어 암호화되고, 얻은 부호화데이터는, 버퍼(56)에 전송된 후, HDD(58)에 전송되어 기록된다. 또한, HD MW(82)의 제어에 의해, 신호처리부(60)의 WM 스크린(60-2)으로 워터마크가 검출된다. 더욱, AIO MW(94)의 제어에 의해, 신호처리부(60)의 오디오 I/F (60-3)에 의해서 디지털오디오데이터는, D/A(62)에 전송되어 아날로그화되어, 스피커(2)로부터 출력된다.
도 50은, 아날로그입력에 대한 HD 레코딩이 실행될 때의 데이터의 흐름을 나타내고 있다. 아날로그입력을 부호화하여 HDD(58)에 기록하는 HD 레코딩으로서는, AIO MW(94)의 제어에 의해, AUX 인 단자(31)로부터 입력되는 아날로그오디오데이터는, A/D(62)로 디지털화되어 인코더(59)에 공급된다. 다음에, HD MW(82)의 제어에 의해, 디지털오디오데이터는, 인코더(59)에 의해서 ATRAC3방식에 의해 인코드되어 암호화되고, 얻어진 부호화데이터가 버퍼(56)에 전송된 후, HDD(58)에 전송되어 기록된다. 또한, HD MW(82)의 제어에 의해, WM스크린(60-2)에 의해서, A/D(62)의 디지털출력으로부터 워터마크가 검출된다. 또한, AIO MW(94)의 제어에 의해, AUX인 단자(31)로부터 입력되는 아날로그오디오데이터는, 스피커(2)로부터 출력된다.
도 51은, HD플레이가 실행될 때의 데이터의 흐름을 나타내고 있다. HDD(58) 의 부호화데이터를 재생하는 HD 플레이에서는, HD MW(82)의 제어에 의해, HDD(58)로부터 판독된 부호화데이터는, 버퍼(56)에 버퍼링된 후, 디코더(59)에 의해서 복호, 디코드된다. 얻어진 디지털오디오데이터는, 버퍼(56)에 버퍼링된 후, 오디오 I/F(60-3)에 전송된다. 다음에, AIO MW(94)의 제어에 의해, 디지털오디오데이터는, 오디오 I/F(60-3)에 의해서 D/A(62)에 전송되어 아날로그화되고, 스피커(2)로부터 출력된다.
도 52는, CD 플레이가 실행될 때의 데이터의 흐름을 나타내고 있다. 음악 CD(3)을 재생하는 CD플레이에서는, CD MW(88)의 제어에 의해, 음악 CD(3)의 디지털오디오데이터는, CD­ROM 드라이브(57)에 의해서 판독되고, 버퍼(56)에 버퍼링된 후, 오디오 I/F(60-3)에 전송된다. 다음에, AIO MW(94)의 제어에 의해, 디지털오디오데이터는, 오디오 I/F(60-3)에 의해서 D/A(62)에 전송되고, 아날로그화되어 스피커(2)로부터 출력된다.
도 53a 및 도 53b는, 각각 MS 플레이가 실행될 때의 데이터의 흐름을 나타내고 있다. MS4의 부호화데이터를 재생하는 MS 플레이로서는, 도 53A에 나타낸 바와 같이, MS MW(89)의 제어에 의해, MS(4)의 부호화데이터는, MGMS I/F(60-1)에 공급되어, MGMS I/F(60-1)에 의해서 상호인증 후에 복호되고, 신호처리부(60)가 내장하는 디코더에 의해서 디코드된다. 다음으로, AIO MW(94)의 제어에 의해, 오디오 I/F(60-3)에 의해서 디코드의 결과로 얻어진 디지털오디오데이터는, D/A(62)에 전송되고, 아날로그화되어 스피커(2)로부터 출력된다.
또는, 도 53b에 나타낸 바와 같이, MS MW(89)의 제어에 의해, MS(4)로부터 부호화데이터가 판독되고 MGMS I/F(60-1)에 공급되어, MGMS I/F(60-1)가 상호인증 후에 복호한다. 복합된 부호화데이터는, 버퍼(56)에 버퍼링되고, 디코더(59)에 의해서 디코드되어, 얻어진 디지털오디오데이터는, 버퍼(56)를 통해 D/A(62)에 출력된다. 계속해서, AIO MW(94)의 제어에 의해, D/A(62)로 아날로그화된 오디오데이터가 스피커(2)로부터 출력된다.
도 54는, MS 체크아웃/무브아웃이 실행될 때의 데이터의 흐름을 나타내고 있다. HDD(58)의 부호화데이터를 MS(4)에 복사하는 MS 체크아웃 및 HDD(58)의 부호화데이터를 MS(4)로 이동하는 무브아웃에서는 HD MW(82)의 제어에 의해, HDD(58)로부터 판독된 부호화데이터는, 버퍼(56)에 버퍼링된다. 다음에, MS MW(89)의 제어에 의해, 버퍼링되어 있는 부호화데이터가 MGMS I/F(60-1)에 전송되어 MS(4)에 기록된다. 이때, 체크아웃 및 무브아웃에 대해서는, 나중에 상술한다.
도 55는, MS임포트/무브인이 실행될 때의 데이터의 흐름을 나타내고 있다. MS(4)의 부호화데이터를 HDD(58)에 이동하는 MS임포트/무브인에서는 MS MW(89)의 제어에 의해, MS(4)의 부호화데이터가 MGMS l/F(60-1)를 통해 버퍼(56)에 전송된다. 다음에, HD MW(82)의 제어에 의해, 버퍼링되어 있는 부호화데이터가 HDD(58)에 전송되어 기록된다. 이때, 임포트/무브인에 대해서는, 후에 상술한다.
도 56은, PD 체크아웃이 실행될 때의 데이터의 흐름을 나타내고 있다. HDD(58)의 부호화데이터를 PD(5)에 복사하는 PD 체크아웃에서는, HD MW(82)의 제어에 의해, HDD(58)로부터 판독된 부호화데이터는, 버퍼(56)에 버퍼링된 후, 인코더/디코더(59)에 의해서 복호되고, 다시, PD(5)용에 암호화되어, 버퍼(56)에 버퍼링된 다. 계속해서, PD MW(90)의 제어에 의해, 버퍼링되어 있는 부호화데이터가 USB 호스트 콘트롤러(54) 및 USB 커넥터(43)를 통해 PD(5)에 기록된다.
다음에, CD리핑 및 CD 레코딩의 상세내용에 대해서, 도 57 내지 도 70b를 참조하여 설명한다. CD 리핑 처리는, 사용자에 의해서 하이 스피드 레코딩버튼(24)이 눌러진 경우에 실행되는 처리이다. CD 레코딩 처리는, 사용자에 의해서 레코딩버튼(23)이 눌러진 경우에 실행되는 처리이다.
CD 리핑과 CD 레코딩의 차이에 대해서, 도 57 및 도 58을 참조하여 설명한다. 도 57의 상단은, CD 리핑에서의 모니터음성출력의 기간을 나타내고 있다. 도 57의 하단은, CD 리핑에서의 녹음 처리(부호화하여 기록하는 처리)의 기간을 나타내고 있다. 도 58의 상단은, CD 레코딩에서의 모니터음성출력의 기간을 나타내고 있다. 도 58의 하단은, CD 레코딩에서의 녹음의 처리(부호화하여 기록하는 처리)의 기간을 나타내고 있다.
도 57과 도 58을 비교하여 알 수 있는 것처럼, CD 리핑과 CD 레코딩에서는, 그 녹음 처리에 필요한 합계시간은 동일하다. 즉, 음악 CD(3)의 오디오데이터(PCM 데이터)를 ATRAC3방식에 의해서 부호화하여, HDD(58)에 기록하는 처리는, 오디오데이터의 재생속도에 대하여 평균 5배속으로 이뤄진다.
예를 들면, 재생시간이 10분간인 곡이 6곡 기록된 총재생시간이 60분간인 음악 CD(3)을, CD 리핑 또는 CD 레코딩에 의해서 녹음하는 경우, 1곡당 약 2분간을 필요로 하여 순차적으로 녹음된다.
CD 리핑과 CD 레코딩과의 차이점은, 모니터음성출력기간이다.
CD 리핑의 경우 모니터음성출력은, 대응하는 오디오데이터의 녹음처리가 이뤄지고 있는 기간만큼, 모니터음성이 출력된다. 상술한 음악 CD(3)의 예에서는, 제1곡목의 선두로부터 약 2분간의 음성이 통상의 재생속도로 출력되고, 계속해서, 제2곡목의 선두로부터 약 2분간의 음성이 통상의 속도로 출력되며, 이후, 각 곡의 선두로부터 약 2분간의 음성이 통상의 속도로 출력된다. 따라서, 녹음처리의 종료와 동시에 모니터음성출력도 종료된다.
CD 레코딩의 경우 모니터음성출력은, 대응하는 오디오데이터의 녹음처리의 진척상황에 관계없이 모니터음성이 출력된다. 상술한 음악 CD(3)의 예에서는, 제1곡목의 모든 음성이 통상의 재생속도로 출력되고, 다음, 제2곡목의 모든 음성이 통상의 속도로 출력되며, 이후 각 곡의 모든 음성이 통상의 속도로 출력된다. 따라서, 녹음처리가 종료되더라도, 대응하는 오디오데이터의 모니터음성출력은 최후의 제6곡목의 마지막까지 계속된다.
이때, CD 리핑과 CD 레코딩은, 그 처리 도중에 적절히 바꾸는 것이 가능하다.
다음으로, 도 59는, CD 리핑 또는 CD 레코딩이 실행될 때의 버퍼(56)의 상태를 나타내고 있다. 버퍼(56)에는, 음악 CD(3)로부터 판독된 부호화되기 전의 오디오데이터(PCM 데이터)를 버퍼링하기 위한 PCM 데이터판독버퍼(231)와, 인코더/디코더(59)에 의해서 부호화되어 암호화된 부호화데이터를 버퍼링하기 위한 부호화데이터 버퍼(232)가 설정된다.
도 60은, 버퍼(56)에 설정되는 PCM 데이터판독버퍼(231) 및 부호화데이터 버 퍼(232) 및 오디오 I/F(60-3)에 내장되는 PCM 데이터 재생용 버퍼(251)의 상태천이를 나타내고 있다. PCM 데이터판독버퍼(231), 부호화데이터버퍼(232) 및 PCM 데이터 재생용 버퍼(251)는, 각각 초기의 기록가능상태, 데이터의 기록이 시작되면 천이하는 기록중 상태, 데이터의 기록이 종료하면 천이하는 판독가능상태, 데이터의 판독이 시작되면 천이하는 판독중 상태 중 어느 1개의 상태에 있다. 이때, 판독중 상태로부터 데이터의 판독이 종료되면 기록 가능상태로 되돌아간다.
다음에, 도 61은, CD 리핑 또는 CD 레코딩이 실행될 때, 모니터음성출력용의 PCM 데이터를 버퍼링하기 위해서 HDD(58)에 설정되는 링 버퍼(241)의 구조를 나타내고 있다.
소정의 용량(설명의 편의상, 어드레스0 내지 어드레스max로 한다)을 가지는 링 버퍼(241)에는, 판독개시어드레스를 나타내는 판독포인터(242)와, 기록개시어드레스를 나타내는 기록포인터(243)가 설정된다. 링 버퍼(24)는, 판독포인터(242)가 나타내는 어드레스로부터 순방향으로 기록포인터(243)가 나타내는 어드레스까지의 판독 가능영역(244)과, 기록포인터(243)가 나타내는 어드레스로부터 순방향으로 판독포인터(242)가 나타내는 어드레스까지의 기록 가능영역(245)으로 구분된다. 판독 가능영역(244)의 용량을 판독마진이라고 칭한다. 기록 가능영역(245)의 용량을, 기록마진이라고 칭한다.
도 62는, CD 리핑 및 CD 레코딩에서의 각 버퍼사이의 데이터의 흐름을 나타내고 있다. 음악 CD(3)의 PCM 데이터는, CD-ROM드라이브(57)에 따라서 판독되고 버퍼(56)에 설정된 PCM 데이터판독버퍼(231)에 버퍼링된다. PCM 데이터판독버퍼(231) 에 버퍼링된 PCM 데이터는, 인코더/디코더(59)에 전송되고, 부호화되어 암호화된다. 얻어진 부호화데이터는, 버퍼(56)에 설정된 부호화데이터버퍼(232)에 버퍼링된다. 부호화데이터버퍼(232)에 버퍼링된 부호화데이터는, HDD(58)에 전송되어, 파일기록영역(121)에 기록된다.
한편, PCM 데이터판독버퍼(231)에 버퍼링된 PCM 데이터는, HDD(58)에 전송되고, HDD(58)에 설치된 링 버퍼(241)에 버퍼링된다. 링 버퍼(241)에 버퍼링된 PCM 데이터는, 오디오 I/F(60-3)에 내장된 PCM 데이터 재생용 버퍼(251)에 전송되어 버퍼링된 후, AD/DA(62)에 의해서 아날로그화되어 스피커(2)로부터 출력된다.
다음에, CD 리핑 및 CD 레코딩에 관한, 녹음속도설정처리에 대해서, 도 63의 흐름도를 참조하여 설명한다. 이 녹음속도설정처리는, 음원으로서 음악 CD(3)가 선택되어 있는 사이, 즉, CD-ROM드라이브(57)에 음악 CD(3)가 장착되어, 펑션 버튼(12)에 의해서 CD가 선택되어 있는 동안 반복하여 실행된다.
스텝 S281에 있어서, 인풋핸들미들웨어(97)는, 각종 버튼에 대한 사용자로부터의 조작의 감시를 시작한다. 스텝 S282에 있어서, 인풋핸들미들웨어(97)는, 각종 버튼에 대한 사용자로부터의 조작이 있을 때까지 대기하며, 각종의 버튼에 대한 사용자로부터의 조작이 있었다고 판정된 경우, 그 정보를 메인 APP(76)에 통지한다. 메인 APP(76)은, 레코드버튼(23)에 대한 조작인지 아닌지를 판정한다. 레코드버튼(23)에 대한 조작이라고 판정된 경우, 처리는 스텝 S283로 진행한다.
스텝 S283에 있어서, 메인 APP(76)은, 레코드버튼(23)이 조작된 것을 HD APP(77)에 통지한다. HD APP(77)는, 레코드버튼(23)이 조작된 것을, HD MW(82)의 CD RIPPING(84)에 전달한다. CD RIPPING(84)은, 자기가 SDRAM(53) 등에 설치하는 하이 스피드 녹음 플래그를 오프로 설정한다. 처리는 스텝 S281로 되돌아간다.
스텝 S282에 있어서, 각종 버튼에 대한 사용자로부터의 조작이 있었다고 판정되고, 그것이 레코드버튼(23)에 대한 조작이 아니라고 판정된 경우, 처리는 스텝 S284로 진행한다. 스텝 S284에 있어서, 메인 APP(76)은, 하이 스피드 레코드버튼(24)에 대한 조작인지 아닌지를 판정한다. 하이 스피드 레코드버튼(24)에 대한 조작이라고 판정된 경우, 처리는 스텝 S285로 진행한다.
스텝 S285에 있어서, 메인 APP(76)은, 하이 스피드 레코드버튼(24)이 조작된 것을 HD APP(77)에 통지한다. HD APP(77)는, 하이 스피드 레코드버튼(24)이 조작된 것을, HD MW(82)의 CD RIPPlNG(84)에 전달한다. CD RIPPING(84)은, 하이 스피드 녹음플래그를 온으로 설정한다. 처리는 스텝 S281로 되돌아간다.
스텝 S284에 있어서, 하이 스피드 레코드버튼(24)에 대한 조작이 아니라고 판정된 경우, 처리는 스텝 S281로 되돌아간다.
이상 설명한 녹음속도설정처리에 의해, 하이 스피드 레코드버튼(24)이 조작되고 하이 스피드녹음플래그가 온이 된 경우에는, 도 57에 나타냈었던 것 같은 CD 리핑이 실행된다. 반대로, 레코드버튼(23)이 조작되고, 하이 스피드 녹음 플래그가 오프가 된 경우에는, 도 58에 나타냈었던 것 같은 CD 레코딩이 실행된다. 이때, CD 리핑으로부터 CD 레코딩으로의 전환이나, 반대로 CD 레코딩으로부터 CD 리핑으로의 전환은, 사용자의 버튼조작에 대응하여 임의의 타이밍에서 행할 수 있다.
다음으로, CD 녹음처리에 대해서, 도 64에 흐름도를 참조하여 설명한다. 이 CD 녹음처리는, HD MW(82)에 포함되는 CD RIPPING(84)에 의해서 제어되는 처리이며, 음악 CD(3)가 장착되어, 펑션버튼(12)이 조작되어, 음원이 CD로 설정된 후, 레코드버튼(23) 또는 하이 스피드버튼(24)이 조작되었을 때에 시작된다.
스텝 S291에서, 사용자는, 레코드버튼(23) 또는 하이 스피드버튼(24)이 조작된 것에 의해 녹음일시정지상태에 있는 동안, 음악 CD(3) 중에서 녹음할 곡을 선곡한다. 구체적으로는, 커서버튼(17)을 조작하여 음악 CD(3)에 기록되어 있는 곡 중에서 선곡하여, 엔터버튼(20)을 조작하여 선곡을 확정한다. 이 일련의 조작을 반복하는 것에 의해, 녹음하는 곡을 모두 선곡한다. 이때, 특히 선곡의 조작이 이뤄지지 않은 경우, 음악 CD(3)에 기록되어 있는 모든 곡이 선곡되게 된다.
사용자는, 선곡이 완료된 단계에서, 재생/일시정지버튼(26)을 조작한다. 처리는 스텝 S292로 진행한다.
스텝 S292에 있어서, CD RIPPING(84)는, 링 버퍼(241)에 설정하는 판독포인터(242)가 나타내는 판독개시어드레스 등의 정보로 이루어지는 링 버퍼정보를 초기화한다. 이 링 버퍼 정보 초기화처리에 대해서, 도 65의 흐름도를 참조하여 설명한다. 스텝 S301에 있어서, CD RIPPING(84)는, 판독포인터(242)가 나타내는 판독개시어드레스 및 기록포인터(243)가 나타내는 기록개시어드레스를 링 버퍼(241)의 어드레스0으로 설정한다. 또한, 링 버퍼(241)의 판독마진을 0으로 설정하고, 기록마진을 그 최대치max로 설정한다. 이상, 링 버퍼 정보 초기화처리의 설명을 종료한다.
도 64로 되돌아간다. 스텝 S293에 있어서, CD RIPPING(84)은, 스텝 S291에서 선곡된 곡중 1곡을 순차 선택하여, 1곡분량의 녹음처리를 실행한다. 1곡분량의 녹 음처리에 대해서, 도 66의 흐름도를 참조하여 설명한다. 스텝 S311에 있어서, CD RIPPING(84)은, CD MW(88)에 의뢰함으로써, 음악 CD(3)의 녹음하는 곡의 PCM 데이터를 소정의 데이터량(예를 들면, 2초간 분)씩, 기록 가능상태에 있는 PCM 데이터판독버퍼(231)에 버퍼링시킨다. 소정의 데이터량의 PCM 데이터의 기록(버퍼링)이 종료된 경우, PCM 데이터판독버퍼(231)의 상태는 판독 가능상태로 천이한다.
스텝 S312에 있어서, CD RIPPlNG(84)은, 인코더/디코더(59)에 대하여, PCM 데이터판독버퍼(231)에 버퍼링되어 있는 소정의 데이터량의 PCM 데이터를 인코드시킨다. (부호화하여 암호화시킨다). PCM 데이터판독버퍼(231)로부터의 소정의 데이터량의 PCM 데이터의 판독이 종료된 경우, PCM 데이터판독버퍼(231)의 상태는 기록 가능상태로 천이한다.
또한, CD RIPPING(84)은, 모니터음성출력처리를 시작한다. 모니터음성출력처리에 대해서는, 도 67을 참조하여 후술한다.
스텝 S313에 있어서, CD RIPPING(84)은, 인코드에 의해 얻어진 소정의 데이터량의 부호화데이터를, 버퍼(56)의 기록가능상태에 있는 부호화데이터버퍼(232)에 버퍼링시킨다. 소정의 데이터량(예를 들면, 2초간 분)의 부호화데이터의 기록(버퍼링)이 종료된 경우, 부호화데이터버퍼(232)의 상태는 판독가능상태로 천이한다.
스텝 S314에 있어서, CD RIPPING(84)은, 부호화데이터버퍼(232)에 버퍼링되어 있는 소정의 데이터량의 부호화데이터를, HDD(58)의 파일기록영역(121)에 기록시킨다. 이때, 소정의 데이터량씩 부호화데이터를 파일기록영역(121)에 기록시키는 처리는, 도 14를 참조하여 상술한 파일작성처리에 해당한다. 또한, 도 28을 참조하 여 상술한 오브젝트작성처리도 행해진다.
스텝 S315에 있어서, CD RIPPING(84)은, 1곡분량의 부호화데이터가 기록되었는지 아닌지를 판정한다. 1곡분량의 부호화데이터가 기록되어 있지 않다고 판정된 경우, 처리는 스텝 S311로 되돌아가, 이후의 처리가 반복된다. 그 후, 스텝 S315에 있어서, 1곡분량의 부호화데이터가 기록되었다고 판정된 경우, 해당 1곡분량의 녹음처리는 종료된다.
이상 설명한 바와 같이 하여 1곡분량의 녹음처리가 실행된 후, 처리는 도 64의 스텝 S294로 되돌아간다. 스텝 S294에 있어서, CD RIPPING(84)은, 스텝 S291로 선곡된 모든 곡이 녹음되었는지 아닌지를 판정한다. 선곡된 전곡이 녹음되어 있지 않다고 판정된 경우, 처리는 293에 되돌아가, 다음 곡에 대한 1곡분량의 녹음처리가 행해진다.
그 후, 스텝 S294에 있어서, 선곡된 모든 곡이 녹음되었다고 판정된 경우, 이 CD 녹음처리는 종료된다.
여기서, 스텝 S312에 있어서 시작된 모니터음성출력처리에 대해서, 도 67의 흐름도를 참조하여 설명한다. 스텝 S321에서, CD RIPPING(84)은, 하이 스피드 녹음플래그가 온인지 아닌지를 판정한다. 하이 스피드 녹음플래그가 온이라고 판정된 경우, 처리는 322로 진행한다.
스텝 S322에 있어서, CD RIPPING(84)은, 대응하는 PCM 데이터에 대한 1곡분량의 녹음처리가 종료되고 있는지 아닌지를 판정한다. 대응하는 PCM 데이터에 대한 1곡분량의 녹음처리가 종료되지 않고 있다고 판정된 경우, 1곡분량의 녹음처리가 실행중인 PCM 데이터의 모니터음성을 출력하기 위해서, 처리는 스텝 S323로 진행한다.
스텝 S323에 있어서, CD RIPPING(84)은, 링크버퍼(241)에 대한 PCM 데이터판독버퍼(231)에 버퍼링되어 있는 PCM 데이터의 기록처리를 시작한다. 스텝 S323의 처리의 종료를 기다리지 않고, 스텝 S324에 있어서, CD RIPPING(84)은, 링크버퍼(241)에 기록된 PCM 데이터의 판독처리를 시작한다.
스텝 S323에서의 링 버퍼(241)에 대한 기록 처리에 대해서, 도 68의 흐름도를 참조하여 설명한다.
스텝 S331에 있어서, CD RIPPING(84)은, 하이 스피드 녹음플래그가 온인지 아닌지를 판정한다. 하이 스피드 녹음플래그가 온이라고 판정된 경우, 처리는 332로 진행한다. 스텝 S332에 있어서, CD RIPPING(84)은, 도 65를 참조하여 상술한 링 버퍼 정보 초기화처리를 실행한다. 스텝 S333에 있어서, CD RIPPING(84)은, 링크버퍼정보의 기록포인터(243)가 나타내는 기록 개시어드레스이후의 기록가능영역(245)에, PCM 데이터판독버퍼(231)에 기록되어 있는 PCM 데이터의 기록을 시작한다. 스텝 S334에 있어서, CD RIPPING(84)은, 스텝 S333로 기록한 PCM 데이터분만큼, 링크버퍼정보에 포함되는 기록포인터(243)가 나타내는 기록개시어드레스의 값을 순방향으로 진행시키고, 또한 그것에 대응하여, 기록마진 및 판독마진의 값을 갱신한다.
이때, 스텝 S331에 있어서, 하이 스피드 녹음플래그가 온이 아니라고 판정된 경우, 처리는 335로 진행한다. 스텝 S335에 있어서, CD RIPPING(84)은, 링 버퍼 정 보를 참조함으로써, PCM 데이터판독버퍼(231)에 기록되어 있는 PCM 데이터의 사이즈는, 링 버퍼(241)의 기록마진이하인지의 여부를 판정한다. PCM 데이터판독버퍼(231)에 기록되어 있는 PCM 데이터의 사이즈가 링 버퍼(241)의 기록마진 이하이라고 판정된 경우, 처리는 스텝 S333로 진행한다.
이때, 스텝 S335에 있어서, PCM 데이터판독버퍼(231)에 기록되어 있는 PCM 데이터의 사이즈가 링 버퍼(241)의 기록마진이하가 아니라고 판정된 경우, 처리는 스텝 S331로 되돌아가, 그 후, 녹음속도의 설정이 사용자에 의해서 변경됨으로써, 스텝 S331에 있어서, 하이 스피드 녹음플래그가 온이라고 판정되거나 또는, 링 버퍼(241)의 기록마진이 증가함으로써, 스텝 S335에 있어서, PCM 데이터판독버퍼(231)에 기록되어 있는 PCM 데이터의 사이즈가 링 버퍼(241)의 기록마진이하가 아니라고 판정될 때까지, 스텝 S331 및 스텝 S335의 처리가 반복된다. 이상, 링 버퍼(241)에 대한 기록 처리의 설명을 종료한다.
스텝 S324에서의 링 버퍼(241)로부터의 판독처리에 대해서, 도 69의 흐름도를 참조하여 설명한다. 스텝 S341에서, CD RIPPING(84)은, 오디오 I/F(60-3)에 내장되는 PCM 데이터 재생용 버퍼(251)가 기록가능상태인지 아닌지를 판정하고, PCM 데이터 재생용 버퍼가 기록가능상태라고 판정할 때까지 대기한다. PCM 데이터 재생용 버퍼가 기록가능상태라고 판정된 경우, 처리는 스텝 S342로 진행한다.
스텝 S342에 있어서, CD RIPPING(84)은, 링 버퍼(241)의 판독포인터(242)가 나타내는 판독개시어드레스에 따라서, 링 버퍼(241)의 판독가능영역(244)에 기록되어 있는 PCM 데이터를 판독하여, PCM 데이터 재생용 버퍼(251)에 기록시킨다.
스텝 S343에 있어서, CD RIPPING(84)은, 스텝 S342로 판독된 PCM 데이터분만큼, 링크버퍼정보에 포함되는 판독포인터(242)가 나타내는 판독 개시어드레스의 값을 순방향으로 진행시키고, 또한 그것에 대응하여, 기록마진 및 판독마진의 값을 갱신한다.
스텝 S344에 있어서, CD RIPPING(84)은, PCM 데이터 재생용 버퍼(251)를 판독 가능상태로 천이시킨다. 이상, 링 버퍼(241)로부터의 판독처리의 설명을 종료한다.
도 67로 되돌아간다. 스텝 S325에 있어서, AIO MW(94)는, PCM 데이터 재생용 버퍼(251)에 버퍼링되어 있는 PCM 데이터를, AD/DA(62)에 출력시킨다. AD/DA(62)는, 입력된 PCM 데이터의 재생을 시작하여 대응하는 음성을 스피커(2)로부터 출력시킨다.
스텝 S326에 있어서, CD RIPPING(84)은, 1곡분량의 PCM 데이터의 재생이 종료되었는지의 여부를 판정한다. 1곡분량의 PCM 데이터의 재생이 종료되지 않고 있다고 판정된 경우, 처리는 스텝 S321로 되돌아가, 이후의 처리가 반복되고, 스텝 S326에 있어서, 1곡분량의 PCM 데이터의 재생이 종료하지 않고 있다고 판정된 경우, 모니터음성출력처리는 종료된다.
이때, 스텝 S322에 있어서, 대응하는 PCM 데이터에 대한 1곡분량의 녹음처리가 종료되고 있다고 판정된 경우, 이 모니터음성출력처리는 즉시 중지된다. 이상, CD 녹음처리의 설명을 종료한다.
이때, CD 녹음처리의 과정에서는, 사용자의 레코딩버튼(23) 또는 하이 스피 드 레코딩버튼(24)에 대한 조작에 대응하여, 임의의 타이밍으로, CD 리핑에서 CD 레코딩으로, 또는 반대로 CD 레코딩으로부터 CD 리핑으로 바꿀 수 있다.
여기서, CD 리핑이 실행될 때의 디스플레이(15)의 표시예를 도 70A와 도 70B에 나타낸다. 도 70a는, 녹음이 시작되는 직전에 표시되는, 녹음설정에 관한 정보의 표시예이다. 이때, 디스플레이(15)에는, 표시에어리어 261 내지 267이 설정된다. 이 표시예에 있어서, 표시에어리어261에는, 녹음원과 녹음처를 나타내는 정보가 표시된다. 표시에어리어262에는, 녹음설정에 관한 정보가 표시되어 있는 요지가 표시된다. 표시에어리어263에는, 보존장소를 나타내는 폴더명이 표시된다. 표시에어리어264에는, 녹음하는 앨범의 앨범명과 아티스트명이 표시된다. 표시에어리어265에는, 녹음시의 비트 전송속도가 표시된다. 표시에어리어266에는, 녹음시의 녹음레벨이 표시된다. 표시에어리어267에는, 재생/일시정지버튼(26)의 누름에 대응하여 녹음이 개시되는 요지가 표시된다. 녹음시의 녹음레벨이 표시된다.
도 70b는, 녹음이 실행되는 중의 표시예이다. 이때, 디스플레이(15)에는, 표시에어리어 271내지 278이 설정된다. 이 표시예에 있어서, 표시에어리어 271에는, 녹음원과 녹음처를 나타내는 정보가 표시된다. 표시에어리어 272에는, CD 리핑중임을 나타내는 문자「고속녹음중」이 점멸표시된다. 표시에어리어 273에는, 녹음중인 곡의 앨범명 및 아티스트명이 표시된다. 표시에어리어 274에는, 녹음중인 곡의 음악 CD(3)에서의 곡번호가 표시된다. 표시에어리어 275에는, 녹음중인 곡의 재생경과시간이 표시된다. 표시에어리어 276에는, 음악 CD(3)의 남은 재생 시간이 표시된다. 표시에어리어 277에는, 녹음하는 총곡수에 대한 녹음의 진척상황에 비례하여 길이가 변화하는 프로그래스 바(279)가 표시된다. 표시에어리어 278에는, 녹음하는 곡의 총수와 녹음종료 또는 녹음중인 곡의 수를 나타내고 있다.
예를 들면, 재생시간이 60분간인 앨범의 전곡을 CD 리핑하고 있는 경우, 녹음은 약 5배속으로 행해지기 때문에, 표시에어리어 277에 표시되는 프로그래스바(279)의 길이는, 녹음의 개시시로부터 서서히 길게 되고, 약 12분간으로 표시에어리어 277의 전체를 차지하는 길이가 된다.
이때, 표시에어리어 277의 프로그래스 바(279)의 길이를, 녹음의 진척상황에 맞추지 않고, 곡의 재생경과시간에 비례시켜 늘리도록 하여도 된다.
계속해서, HDD(58)에 기록한 콘텐츠 데이터를 재생하는 방법에 대해서, 도 71 내지 도 77을 참조하여 설명한다. 상술하였듯이, 오디오 서버(1)에서는, 음악 CD(3)에 기록되어 있는 곡을 인코드하고, 콘텐츠 데이터를 파일로서 HDD(58)에 기록하고 있지만, 재생하는 곡을 지정시키는 경우에는, 파일이 아니라, 계층구조를 이루는 폴더, 앨범, 및 트랙의 오브젝트를 사용자에 지정시킨다.
HDD전체, 임의의 폴더 또는 임의의 앨범을 재생에어리어로서 지정함으로써, 복수의 곡을 일괄하여 재생하는 곡으로 지정할 수 있다. 곡의 재생은, 지정된 재생에어리어에 따라서 작성되는 플레이 리스트에 포함되는 트랙에 대응하는 콘텐츠 데이터가 디코드됨으로써 실현된다.
도 71은, 재생에어리어의 일례를 나타내고 있다. 점선(281)으로 둘러싸인 HDD 전체가 재생에어리어로 지정된 경우, 도 72에 나타낸 바와 같이, 플레이 리스트에는, HDD(58)중 모든 트랙번호가 등록된다.
점선(282)으로 둘러싸인 마이셀렉트 폴더(F1)가 재생에어리어에 지정된 경우, 도 73에 나타낸 바와 같이, 플레이 리스트에는, 마이셀렉트 폴더(F1)에 속하는 모든 앨범의 앨범번호가 등록된다.
점선(283)으로 둘러싸인 마이셀렉트 폴더(F1)의 앨범A1이 재생에어리어에 지정된 경우, 도 74에 나타낸 바와 같이, 플레이 리스트에는, 마이셀렉트 폴더(F1)의 앨범A1에 속하는 모든 트랙의 트랙번호가 등록된다.
임시 폴더(F2)에 속하는 앨범A1의 트랙T1이 재생하는 곡에 지정된 경우, 도 75에 나타낸 바와 같이, 플레이 리스트에는, 임시 폴더(F2)에 속하는 앨범 A1의 트랙 T1이 등록된다.
다음에, 지정된 재생에어리어에 대응하는 플레이 리스트를 작성하는 처리에 대해서, 도 76의 흐름도를 참조하여 설명한다.
이 플레이 리스트작성처리는, HD MW(82)에 포함되는 HD PLAY(85)에 의해서 제어되는 처리이며, 펑션버튼(12)이 조작되어, 음원이 HDD로 설정되었을 때에 시작된다.
스텝 S351에 있어서, HD PLAY(85)는, 사용자에 의해서 선택되어 있는 재생에어리어를 나타내는 오브젝트의 계층이, HDD 전체인가 아닌가를 판정한다. 선택되어 있는 오브젝트의 계층이 HDD 전체가 아니라고 판정된 경우, 처리는 스텝 S352로 진행한다. 이때, 사용자가 재생에어리어를 선택하는 방법은, 리모트콘트롤러(7)에 설정된 재생에어리어전환버튼(도시되지 않음)을 조작하거나 또는, 덮개(40)에 설정된 커서버튼(17), 엔터버튼(20) 및 메뉴/취소버튼(21) 등을 소정의 순서로 누르는 것 에 의해서 행해진다.
스텝 S352에 있어서, HD PLAY(85)는, 사용자에 의해서 선택되어 있는 오브젝트의 계층이 폴더인가 아닌가를 판정한다. 선택되어 있는 오브젝트의 계층이 폴더가 아니라고 판정된 경우, 처리는 스텝 S353로 진행한다.
스텝 S353에 있어서, HD PLAY(85)는, 사용자에 의해서 선택되어 있는 오브젝트의 계층이 앨범이라고 판정되어, 스텝 S354로 진행한다.
스텝 S354에 있어서, HD PLAY(85)는, 재생/일시정지버튼(26) 조작되었는지 안되었는지를 판정한다. 재생/일시정지버튼(26)이 조작되었다고 판정된 경우, 처리는 스텝 S355로 진행한다. 스텝 S355에 있어서, HD PLAY(85)는, 선택되어 있는 오브젝트의 계층에 대응하는 플레이 리스트가 이미 완성되었는지 안되었는지를 판정하여, 이미 완성되어 있지 않다고 판정한 경우, 스텝 S356로 진행한다. 이때, 이미 완성되어 있다고 판정된 경우에는, 스텝 S356은 건너뛴다.
스텝 S356에 있어서, HD PLAY(85)는, 선택되어 있는 오브젝트의 계층에 대응하여 플레이 리스트를 작성한다.
이때, 스텝 S354에 있어서, 재생/일시정지버튼(26)이 조작되어 있지 않다고 판정된 경우, 처리는 스텝 S351로 되돌아가, 이후의 처리가 반복된다.
이때, 스텝 S351에 있어서, 선택되어 있는 오브젝트의 계층이 HDD전체라고 판정된 경우, 또는, 스텝 S352에 있어서, 선택되어 있는 오브젝트의 계층이 폴더라고 판정된 경우, 처리는 스텝 S354로 진행한다. 이상, 플레이 리스트작성처리의 설명을 종료한다.
이때, 상정되는 여러 가지 재생에어리어에 대응하는 복수의 플레이 리스트를 미리 작성하여, 소정의 장소에 기록하도록 하고, 사용자에 의해서 재생에어리어가 지정된 단계에서, 미리 작성되어 기록되어 있는 플레이 리스트 중, 대응하는 것을 판독하도록 하여도 된다.
다음에, 상술한 플레이 리스트작성처리의 종료에 계속하여 실행되는 재생처리에 대해서, 플레이모드가 전곡 반복으로 설정되어 있는 경우를 예로, 도 77의 흐름도를 참조하여 설명한다.
스텝 S361에 있어서, HD PLAY(85)는, 정지버튼(25)이 조작되는 것에 의해, 재생의 종료가 지시되었는지 아닌지를 판정한다. 재생의 종료가 지시되어 있지 않다고 판정된 경우, 처리는 스텝 S362로 진행한다. 스텝 S362에 있어서, HD PLAY(85)는, 플레이 리스트에 포함되는 모든 트랙 중, 순차적으로 1트랙씩 재생트랙에 지정한다.
스텝 S363에 있어서, HD PLAY(85)는 재생트랙에 대응하는 콘텐츠 데이터를 재생한다. 구체적으로는, 재생트랙에 대응하는 트랙 오브젝트가 CC 데이터에 근거하며 특정되고, 특정된 트랙 오브젝트의 파일식별자기록영역(203)의 값에 따라서 대응하는 콘텐츠 데이터의 파일식별자가 특정되며, 특정된 파일식별자(= 파일기록영역(121)의 클러스터번호)에 따라서 콘텐츠 데이터가 판독된다. 다음에, 판독된 콘텐츠 데이터가 디코드되어 출력된다.
재생트랙에 대응하는 콘텐츠 데이터의 재생이 종료한 후, 처리는 스텝 S361로 되돌아가서, 이후의 처리가 반복된다. 그 후, 스텝 S361에 있어서, 정지버튼(25)이 조작되는 것에 의해, 재생의 종료가 지시되었다고 판정된 경우, 재생모드가 전곡반복인 경우의 재생처리가 종료된다.
이때, 전곡반복 이외의 재생모드에서는, 재생에어리어와 재생트랙의 지정 방법이 다를 뿐이며, 그 처리의 순서는 마찬가지이다.
다음에, 오디오 서버(1)의 HDD(58)에 기록되어 있는 콘텐츠 데이터를, MS(4)에 무브아웃하는 처리에 대해서, 도 78 내지 도 81을 참조하여 설명한다.
여기서, HDD(58)에 기록되어 있는 콘텐츠 데이터를 MS(4)에 무브아웃하는 처리란, HDD(58)에 기록되어 있는 콘텐츠 데이터를 MS(4)에 복사한 후, HDD(58)에 기록되어 있던 콘텐츠 데이터를 삭제하는 일련의 처리이다.
무브아웃처리에 대해서, 도 78의 흐름도를 참조하여 설명한다. 이때, 무브아웃처리는, MS MW(89)에 의해서 제어된다.
이 무브아웃처리는, MS 슬롯(45)에 MS(4)가 삽입되어 있는 상태로, 사용자가 메뉴/취소버튼(21)을 조작하여 메뉴를 표시시키고, 커서버튼(17)을 조작하여 「편집」을 선택한 뒤, 엔터버튼(20)을 조작하여 편집메뉴를 표시시키며, 커서버튼(17)을 조작하여 「무브아웃」을 선택한 후, 엔터버튼(20)을 조작하여, 커서버튼(17)과 선택버튼(18)을 조작하여, 무브아웃하는 트랙을 선택한 후, 엔터키(20)를 조작하여 무브아웃하는 트랙의 리스트를 표시시키며, 또한 엔터키(20)를 조작하였을 때에 시작된다.
스텝 S371에 있어서, MS MW(89)는, C IN/C OUT(87)에 의뢰하여, HDD(58)에 기록되어 있는 무브아웃하는 콘텐츠 데이터를, 권리무효데이터(재생불가능한 데이 터)로서 MS(4)에 복사한다. 이때, 권리무효데이터로 하는 것에는, 콘텐츠 데이터의 속성정보에 포함되는, 권리의 유무를 나타내는 플래그를 오프로 한다. 즉, 권리무효를 나타내는 속성정보와 콘텐츠 데이터를 MS(4)에 복사한다.
스텝 S 372에 있어서, C IN/C OUT(87)는, 무브아웃처리를 시작한 것을 나타내는 무브아웃 이력정보를 생성하여 HDD(58)에 기록한다. 무브아웃 이력정보에는, 무브아웃되는 트랙을 특정하는 정보가 포함된다. 스텝 S373에 있어서, C IN/C OUT(87)는, HDD(58)에 기록되어 있는 콘텐츠 데이터의 권리 유무를 나타내는 플래그를 오프로서, HDD(58)의 콘텐츠 데이터를 권리무효데이터로 한다.
스텝 S374에 있어서, MS MW(89)는, MS(4)에 복사된 콘텐츠 데이터의 권리 유무를 나타내는 플래그를 온으로서, MS(4)의 콘텐츠 데이터를 권리유효데이터로 한다.
스텝 S375에 있어서, C IN/C OUT(87)는, HDD(58)에 기록되어 있는 콘텐츠 데이터를 삭제한다. 스텝 S376에 있어서, C IN/C OUT(87)는, 스텝 S372의 처리로 작성한 무브아웃 이력정보를 삭제한다.
이상 설명한 스텝 S371 내지 S376의 처리가 1트랙에 대응하는 1콘텐츠 데이터의 무브아웃처리이며, 선택된 모든 트랙에 대하여 스텝 S371 내지 S376의 처리가 시행된다.
이때, 무브아웃처리의 도중에서 전원이 차단하는 등으로 하여 무브아웃처리가 중단된 경우, 그것을 보상하기 위해서 전원복귀후에 복귀처리가 실행된다. 이때, 복귀처리에 대해서는, 도 86 내지 도 88을 참조하여 후술한다.
도 79는, 무브아웃처리의 상태천이를 나타내고 있다. 상태1은, 무브아웃처리가 시작되기 전의 상태이다.즉, 오디오 서버(1)의 HDD(58)에 콘텐츠 데이터가 기록되어 있고, HDD(58)의 콘텐츠 데이터가 권리유효한 상태를 나타내고 있다.
상태2는, 스텝 S371의 처리가 행하여진 후의 상태이다. 즉, 오디오 서버(1)의 HDD(58)에 기록되어 있는 콘텐츠 데이터가 MS(4)에 복사됨으로써, HDD(58)와 MS(4)의 쌍방에 콘텐츠 데이터가 기록되어 있는 상태이고, 또한, HDD(58)의 콘텐츠 데이터가 권리유효하여서, MS(4)의 콘텐츠 데이터가 권리무효인 상태를 나타내고 있다.
상태3은, 스텝 S373의 처리가 행해진 후의 상태이다. 즉, HDD(58)과 MS(4)의 쌍방에 콘텐츠 데이터가 기록되어 있는 상태이고, 또한, HDD(58)의 콘텐츠 데이터와 MS(4)의 콘텐츠 데이터가 권리무효인 상태를 나타내고 있다.
상태4는, 스텝 S374의 처리가 행해진 후의 상태이다. 즉, HDD(58)과 MS(4)의 쌍방에 콘텐츠 데이터가 기록되어 있는 상태이고, 또한, HDD(58)의 콘텐츠 데이터가 권리무효에 있어서, MS(4)의 콘텐츠 데이터가 권리유효인 상태를 나타내고 있다.
상태5는, 스텝 S375의 처리가 행해진 후의 상태이다. 즉, HDD(58)의 콘텐츠 데이터가 소거됨으로써, MS(4)만큼 콘텐츠 데이터가 기록되어 있는 상태이고, MS(4)의 콘텐츠 데이터가 권리유효인 상태를 나타내고 있다.
도 80은, 무브아웃하는 트랙을 선택할 때의 디스플레이(15)의 표시예를 나타내고 있다. 디스플레이(15)에는 무브아웃 가능한 곡만이 표시되어 있다.
도 81은, 무브아웃처리가 행해지고 있는 중인 디스플레이(15)의 표시예를 나타내고 있다. 디스플레이(15)의 표시에어리어 291에는, 무브아웃처리가 실행중임을 나타내는 문자 "Move OUT"이 점멸표시된다. 무브아웃이 완료된 트랙의 횡으로는, 체크마크(292)가 표시된다. 표시에어리어293에는, 무브아웃처리의 진척상황을 나타내는 정보(무브아웃 중 또는 무브아웃이 완료된 트랙의 수/무브아웃하는 트랙의 총수)가 표시된다.
계속해서, MS(4)에 기록되어 있는 콘텐츠 데이터를, 오디오 서버(1)의 HDD(58)에 무브인하는 처리에 대해서, 도 82 내지 도 81을 참조하여 설명한다.
여기서, MS(4)에 기록되어 있는 콘텐츠 데이터를 HDD(58)에 무브인하는 처리란, MS(4)에 기록되어 있는 콘텐츠 데이터를 HDD(58)에 복사한 후, MS(4)에 기록되어 있던 콘텐츠 데이터를 삭제하는 일련의 처리이다.
무브인처리에 대해서, 도 82의 흐름도를 참조하여 설명한다. 이때, 무브인 처리는, MS MW(89)에 의해서 제어된다.
이 무브인처리는, MS 슬롯(45)에 MS(4)가 삽입되어 있는 상태에서, 사용자가 메뉴/취소버튼(21)을 조작하여 메뉴를 표시시키고, 커서버튼(17)을 조작하여 「편집」을 선택한 후, 엔터버튼(20)을 조작하여 편집메뉴를 표시시키고, 커서버튼(17)을 조작하여 「무브인」을 선택한 후, 엔터버튼(20)을 조작하고, 또한, 커서버튼(17)과 셀렉트버튼(18)을 조작하여, MS(4)에 기록되어 있는 콘텐츠 데이터 안으로부터 무브인하는 콘텐츠 데이터를 선택한 후, 엔터키(20)를 조작하여 무브인하는 콘텐츠 데이터의 리스트를 표시시키고, 또한 엔터키(20)를 조작한 후에 재생/ 일시정지버튼(26)을 조작하였을 때에 시작된다.
스텝 S381에 있어서, MS MW(89)는, C IN/C OUT(87)에 의뢰하여, 무브인처리를 시작한 것을 나타내는 무브인 이력정보를 생성하여 HDD(58)에 기록한다. 무브인 이력정보에는, 무브인되는 콘텐츠 데이터를 특정하는 정보가 포함된다.
스텝 S382에 있어서, C IN/C OUT(87)는, MS(4)에 기록되어 있는 무브인하는 콘텐츠 데이터를, 권리무효데이터로서 HDD(58)에 복사한다. 스텝 S383에 있어서, MS MW(89)는, MS(4)에 기록되어 있는 콘텐츠 데이터의 권리 유무를 나타내는 플래그를 오프로 하여, MS(4)의 콘텐츠 데이터를 권리무효데이터로 한다.
스텝 S384에 있어서, C IN/C OUT(87)는, HDD(58)에 복사된 콘텐츠 데이터의 권리 유무를 나타내는 플래그를 온으로 하여, HDD(58)의 콘텐츠 데이터를 권리유효데이터로 한다.
스텝 S385에 있어서, C IN/C OUT(87)는, MS MW(89)에 의뢰하여, MS(4)에 기록되어 있는 콘텐츠 데이터를 삭제한다. 스텝 S386에 있어서, C IN/C OUT(87)는, 스텝 S382의 처리로 작성한 무브인 이력정보를 삭제한다.
이상 설명한 스텝 S381 내지 S386의 처리가 1트랙에 대응하는 1콘텐츠 데이터의 무브인처리이며, 선택된 모든 트랙에 대하여, 스텝 S381 내지 S386의 처리가 시행된다.
이때, 무브인처리의 도중에 전원이 차단되는 등으로서 무브인처리가 중단된 경우, 그것을 보상하기 위해서, 전원복귀 후에 복귀처리가 실행된다.
도 83은, 무브인처리의 상태천이를 나타내고 있다. 상태11은, 무브인처리가 시작되기 전의 상태이다. 즉, MS(4)에 콘텐츠 데이터가 기록되어 있고, MS(4)의 콘텐츠 데이터가 권리유효하는 상태를 나타내고 있다.
상태12는, 스텝 S382의 처리가 행하여진 후의 상태이다. 즉, MS(4)에 기록되어 있는 콘텐츠 데이터가 HDD(58)에 복사됨으로써, MS(4)와 HDD(58)의 쌍방에 콘텐츠 데이터가 기록되어 있는 상태이고, 또한, MS(4)의 콘텐츠 데이터가 권리유효하여, HDD(58)의 콘텐츠 데이터가 권리무효인 상태를 나타내고 있다.
상태13은, 스텝 S383의 처리가 행해진 후의 상태이다. 즉, MS(4)과 HDD(58)의 쌍방에 콘텐츠 데이터가 기록되어 있는 상태이고, 또한, MS(4)의 콘텐츠 데이터와 HDD(58)의 콘텐츠 데이터가 권리무효인 상태를 나타내고 있다.
상태14는, 스텝 S384의 처리가 행하여진 후의 상태이다. 즉, MS(4)과 HDD(58)의 쌍방에 콘텐츠 데이터가 기록되어 있는 상태이고, 또한, MS(4)의 콘텐츠 데이터가 권리무효하고, HDD(58)의 콘텐츠 데이터가 권리유효인 상태를 나타내고 있다.
상태15는, 스텝 S385의 처리가 행하여진 후의 상태이다. 즉, MS(4)의 콘텐츠 데이터가 소거됨으로써, HDD(58)만큼 콘텐츠 데이터가 기록되어 있는 상태이고, HDD(58)의 콘텐츠 데이터가 권리유효인 상태를 나타내고 있다.
도 84는, 무브인하는 콘텐츠 데이터를 선택할 때의 디스플레이(15)의 표시예를 나타내고 있다. 디스플레이(15)에는 MS(4)에 기록되어 있는 콘텐츠 데이터 중, 무브인 가능한 콘텐츠 데이터만이 표시된다.
도 85는, 무브인처리가 행해지고 있는 중인 디스플레이(15)의 표시예를 나타 내고 있다. 디스플레이(15)의 표시에어리어301에는, 무브인처리가 실행중임을 나타내는 문자 "Move in"이 점멸표시된다. 무브인이 완료된 콘텐츠 데이터의 가로에는, 체크표시(302)가 표시된다. 표시에어리어303에는, 무브인처리의 진척상황을 나타내는 정보(무브인 중 또는 무브인이 완료된 콘텐츠 데이터의 수/무브인하는 콘텐츠 데이터의 총수)가 표시된다.
이상, 무브인처리에 대해서 설명하였지만, MS(4)로부터 HDD(58)에 콘텐츠 데이터를 임포트하는 처리도 마찬가지로 처리된다. 무브인처리와 임포트처리의 차이는, 무브인처리 또는 임포트처리에 의해서 HDD(58)에 기록된 콘텐츠 데이터의 취급에 있다.
오디오 서버(1)는, 무브인처리에 의해서 HDD(58)에 기록된 콘텐츠 데이터를, 다른 MS(4)이나 PD(5) 등에, 무브아웃하는 것이 가능하며, 또한 체크아웃하는 것이 가능하다. 그러나, 오디오 서버(1)는, 임포트처리에 의해서 HDD(58)에 기록된 콘텐츠 데이터를, 다른 MS(4)이나 PD(5) 등에 체크아웃하는 것은 가능하지만, 무브아웃하는 것이 금지되어 있다.
다음으로, 무브아웃처리나 무브인처리의 도중에서 전원모기 차단하는 등으로 해서 그 처리가 중단된 것을 보상하기 위한 복귀처리에 대해서, 도 86을 참조하여 설명한다. 이 복귀처리는, 전원복구 후, MS MW(89)에 의해서 즉시 시작된다.
스텝 S391에 있어서, MS MW(89)는, HDD(58)에 무브아웃 이력정보가 존재하는 지 아닌지를 판정한다. HDD(58)에 무브아웃 이력정보가 존재한다고 판정된 경우, 무브아웃처리가 중단된 것을 보상하기 위해서, 처리는 스텝 S392로 진행한다.
스텝 S392에 있어서, MS MW(89)는, 무브아웃복원처리에 대해서 실행한다. 도 87의 흐름도를 참조하여 설명한다.
스텝 S401에 있어서, MS MW(89)는, HDD(58)의 콘텐츠 데이터는 권리무효인지 아닌지를 판정한다. HDD(58)의 콘텐츠 데이터가 권리무효라고 판정된 경우, 처리는 스텝 S402로 진행한다. HDD(58)의 콘텐츠 데이터가 권리무효라고 하는 것은, 도 79에 있어서 상태3, 상태4인 것을 나타내고 있다.
스텝 S402에 있어서, MS MW(89)는, HDD(58)에 존재하는 콘텐츠 데이터를 삭제한다. 여기서, 상태4일 때는, HDD(58)에 존재하는 콘텐츠 데이터가 삭제되는 것에 의해, 상태5인 무브아웃처리가 완료된 상태로 복원된다. 또한, 상태3일 때는, HDD(58)에 존재하는 콘텐츠 데이터가 삭제됨으로써, MS(4)에 권리무효데이터를 가지는 콘텐츠 데이터가 남겨진 상태가 된다.
이때, 사용자는 콘텐츠 데이터를 잃어버리게 되는 것이 콘텐츠 데이터의 저작권자의 저작권을 보호하게 된다. 또한, MS(4)의 권리무효데이터를 가지는 콘텐츠 데이터는, 사용자에 의해서 범용의 파일편집 애플리케이션에 의해 삭제가능하기 때문에 MS(4)에 권리무효데이터를 가지는 콘텐츠 데이터라는 쓸데없는 데이터가 남겨지는 일이 없다.
그러나, 반대로, MS(4)의 권리무효데이터를 가지는 콘텐츠 데이터를 삭제하고, HDD(58)내의 권리무효데이터를 가지는 콘텐츠 데이터를 남기도록 복원처리해 버리면, HDD(58)내에 권리무효데이터를 가지는 콘텐츠 데이터라는 쓸데없는 데이터가 HDD(58)에 기록된 채가 되어 버린다. 권리무효데이터를 가지는 콘텐츠 데이터는 통상조작에서는 발생하지 않기 때문에, 본 실시예의 전용기인 오디오 서버(1)는, 권리무효데이터를 가지는 콘텐츠 데이터를 사용자지시에 의해 소거하는 것 같은 기능을 가지지 않는다.
따라서, 콘텐츠 데이터의 저작권을 보호하고, 또 오디오 서버(1)에 무효한 데이터를 기록시키지 않은 위해서도 S402와 같이 HDD(58)에 존재하는 콘텐츠 데이터가 삭제되는 것이 바람직하다.
이때, 스텝 S401에서, HDD(58)의 콘텐츠 데이터가 권리무효이지 않다고 판정된 경우, 스텝 S402는 건너뛴다. 즉, HDD(58)의 콘텐츠 데이터가 권리무효이지 않다는 것은, 도 79의 상태2인 것을 나타낸다. 이때, MS(4)에 권리무효데이터를 가지는 콘텐츠 데이터가 남겨진 상태가 되지만, 상술하였듯이, MS(4)의 권리무효데이터를 가지는 콘텐츠 데이터는, 사용자에 의해서 범용 파일편집애플리케이션에 의해 삭제가능하기 때문에 MS(4)에 권리무효데이터를 가지는 콘텐츠 데이터라는 쓸데없는 데이터가 남겨지는 일이 없다.
스텝 S403에 있어서, MS MW(89)는, HDD(58)의 무브아웃 이력정보를 삭제한다.
처리는, 도 86으로 되돌아간다. 스텝 S393에 있어서, MS MW(89)는, HDD(58)에 무브인 이력정보가 존재하는지 아닌지를 판정한다. HDD(58)에 무브인 이력정보가 존재한다고 판정된 경우, 무브인처리가 중단된 것을 보상하기 위해서, 처리는 스텝 S394로 진행한다.
스텝 S394에 있어서, MS MW(89)는, 무브인 복원처리를 실행한다. 무브인 복 원처리에 대해서, 도 88의 흐름도를 참조하여 설명한다.
스텝 S421에 있어서, MS MW(89)는, HDD(58)의 콘텐츠 데이터는 권리무효인지 아닌지를 판정한다. HDD(58)의 콘텐츠 데이터가 권리무효라고 판정된 경우, 처리는 스텝 S422로 진행한다. HDD(58)의 콘텐츠 데이터가 권리무효라고 말하는 것은, 도 83에 있어서 상태12, 상태13인 것을 나타내고 있다.
스텝 S422에 있어서, MS MW(89)는, HDD(58)에 존재하는 콘텐츠 데이터를 삭제한다.
여기서, 상태12일 때는, HDD(58)에 존재하는 콘텐츠 데이터가 삭제됨으로써, 상태11인 무브인처리의 전의 상태로 복원된다. 또한, 상태13일 때는, HDD(58)에 존재하는 콘텐츠 데이터가 삭제되는 것에 의해, MS(4)에 권리무효데이터를 가지는 콘텐츠 데이터가 남겨진 상태가 된다.
이때, 사용자는 콘텐츠 데이터를 잃어버리게 되지만 콘텐츠 데이터의 저작권자의 저작권을 보호하게 된다. 또한, MS(4)의 권리무효데이터를 가지는 콘텐츠 데이터는, 사용자에 의해서 범용의 파일편집애플리케이션에 의해 삭제가능하기 때문에 MS(4)에 권리무효데이터를 가지는 콘텐츠 데이터라는 쓸데없는 데이터가 남겨지는 일이 없다.
그러나, 반대로 MS(4)의 권리무효데이터를 가지는 콘텐츠 데이터를 삭제하고, HDD(58)내의 권리무효데이터를 가지는 콘텐츠 데이터를 남기도록 복원처리하여 버리면, HDD(58)내에 권리무효데이터를 가지는 콘텐츠 데이터라는 쓸데없는 데이터가 HDD(58)에 기록된 채로 되어 버린다. 권리무효데이터를 가지는 콘텐츠 데이터는 통상조작에서는 발생하지 않기 때문에, 본 실시예의 전용기인 오디오 서버(1)는, 권리무효데이터를 가지는 콘텐츠 데이터를 사용자지시에 의해 소거하는 것 같은 기능을 가지지 않는다.
따라서, 콘텐츠 데이터의 저작권을 보호하고, 또한 오디오 서버(1)에 무효인 데이터를 기록시키지 않기 위해서도 S422와 같이 HDD(58)에 존재하는 콘텐츠 데이터가 삭제되는 것이 바람직하다.
이때, 스텝 S421에서, HDD(58)의 콘텐츠 데이터가 권리무효이지 않다고 판정된 경우, 스텝 S422는 건너뛴다. 즉, HDD(58)의 콘텐츠 데이터가 권리무효이지 않다는 것은, 도 83의 상태14, 상태15인 것을 나타낸다. 상태15는 무브인처리가 완료되어 있는 상태이기 때문에 문제는 없다. 그러나, 상태14에 있어서는 MS(4)에 권리무효데이터를 가지는 콘텐츠 데이터가 남겨진 상태가 되지만, 상술하였듯이, MS(4)의 권리무효데이터를 가지는 콘텐츠 데이터는, 사용자에 의해서 범용의 파일편집애플리케이션에 의해 삭제가능하기 때문에 MS(4)에 권리무효데이터를 가지는 콘텐츠 데이터라는 쓸데없는 데이터가 남겨지는 일이 없다.
스텝 S423에 있어서, MS MW(89)는, HDD(58)의 무브인 이력정보를 삭제한다. 이상, 무브인 복원처리의 설명을 종료한다. 처리는, 도 86로 되돌아가고, 복귀처리는 종료된다.
이때, 도 86의 스텝 S391에 있어서, HDD(58)에 무브아웃 이력정보가 존재하지 않는다고 판정된 경우, 무브아웃처리가 정상으로 종료되어 있을지, 도 79의 상태1이나 상태2일 가능성이 있다. 무브아웃처리가 정상적으로 종료되어 있는 경우와 무브아웃처리 전 상태인 상태1에 있어서는, 무브아웃 복원처리를 건너뛰어도 상관없다.
또한, 상태2에서도, MS(4)의 권리무효데이터를 가지는 콘텐츠 데이터가 남겨져 버리지만, 권리무효데이터를 가지는 콘텐츠 데이터는, 사용자에 의해서 범용 파일편집애플리케이션에 의해 삭제가능하기 때문에 MS(4)에 권리무효데이터를 가지는 콘텐츠 데이터라는 쓸데없는 데이터가 남겨지는 일이 없다. 따라서, 스텝 S392의 처리는 건너뛰게 된다.
또한, 스텝 S393에 있어서, HDD(58)에 무브인 이력정보가 존재하지 않는다고 판정된 경우, 무브인처리가 정상적으로 종료되어 있을지, 도 83의 상태11일 가능성이 있다. 무브인처리가 정상적으로 종료되어 있는 경우와, 무브처리 전 상태인 상태11에 있어서는, 무브인 복원처리를 건너뛰어도 상관없기 때문에, 스텝 S394의 처리는 건너뛴다.
또한, 복귀처리가 전원차단 후에 의해서 중단되었다고 해도, 전원복구 후에 다시 스텝 S391로부터 실행되기 때문에, 그 보상은 이뤄지게 된다. 이상, 복귀처리의 설명을 종료한다.
다음에, 오디오 서버(1)의 HDD(58)에 기록되어 있는 콘텐츠 데이터를, MS(4)에 체크아웃하는 처리에 대해서, 도 89 내지 도 91을 참조하여 설명한다.
여기서, HDD(58)에 기록되어 있는 콘텐츠 데이터를 체크아웃하는 처리란, HDD(58)에 기록되어 있는 콘텐츠 데이터의 복사를 MS(4) 등에 일시적으로 작성하여 이용하기 위한 처리이다. 콘텐츠 데이터의 체크아웃가능회수는 미리 설정되어 있 고, 체크아웃처리의 따라서 체크아웃가능회수는 하나씩 감소하지만, 후술하는 체크인처리를 실행함으로써, 감소한 체크아웃가능회수는 하나씩 복원된다.
체크아웃처리에 대해서, 도 89의 흐름도를 참조하여 설명한다. 이때, 체크아웃처리는, HD MW(82)의 C IN/C OUT(87)에 의해서 제어된다.
이 체크아웃처리는, MS슬롯(45)에 MS(4)가 삽입되어 있는 상태에서, 사용자가 메뉴/취소버튼(21)을 조작하여 메뉴를 표시시키고 커서버튼(17)을 조작하여 「편집」을 선택한 후, 엔터버튼(20)을 조작하여 편집메뉴를 표시시키며, 커서버튼(17)을 조작하여 「체크아웃」을 선택한 후, 엔터버튼(20)을 조작하였을 때에 시작된다. 스텝 S441에서, C IN/C OUT(87)는, HS DB(91)을 제어하여, 현재 선택되어 있는 앨범에 속하는 모든 트랙에 대응하는 콘텐츠 데이터의 체크아웃가능횟수(체크아웃잔여횟수)를 취득한다. 콘텐츠 데이터의 체크아웃가능횟수는, 대응하는 트랙 오브젝트의 AC(도 42)에 포함되는 CN에 기록되어 있다(도 43).
스텝S442에서, C IN/C OUT(87)는, 관계하는 펌웨어에 의뢰하여, 체크아웃가능횟수가 1이상 있는 트랙에 관한 정보(곡 타이틀, 체크아웃가능횟수 등)를, 디스플레이(15)에 표시시킨다. 도 90은, 디스플레이(15)의 표시예를 나타내고 있다. 디스플레이(15)의 표시에어리어(311)에는, 체크아웃의 음원을 나타내는 정보로서 "HDD"가 표시된다. 표시에어리어(312)의 표시는, 각 트랙에 대응하는 콘텐츠 데이터의 체크아웃가능횟수를 나타내고 있다.
스텝S443에서, C IN/C OUT(87)는, 사용자가 커서버튼(17)과 선택버튼(18)을 조작함에 의해, 표시된 체크아웃 가능한 트랙 중, 체크아웃하는 트랙을 선택했는지 아닌지를 판정한다. 체크아웃하는 트랙을 선택하였다고 판정된 경우, 처리는 스텝S444로 진행한다.
스텝S444에서, C IN/C OUT(87)는, 선택된 트랙을 체크아웃리스트에 추가한다. 스텝S445에서, C IN/C OUT(87)는, 선택된 트랙에 대한 콘텐츠 데이터의 체크아웃가능횟수의 표시를 1만큼 감소시킨다. 처리는, 스텝S441로 되돌아가, 이후의 처리가 반복된다.
이때, 스텝S443에서, 체크아웃하는 트랙이 선택되지 않는다고 판정된 경우에는, 처리는 스텝S446로 진행한다. 스텝S446에서, C IN/C OUT(87)는, 사용자가 엔터키(20)를 조작함에 의해, 체크아웃하는 트랙의 리스트를 표시시키고, 엔터키(20)를 조작함에 의해, 체크아웃의 실행을 지시하였는지 아닌지를 판정한다. 체크아웃의 실행이 지시되어 있지 않다고 판정된 경우, 처리는 스텝S441로 되돌아가, 이후의 처리가 반복된다.
그 후, 스텝S446에서, 체크아웃의 실행이 지시되었다고 판정된 경우, 처리는 스텝S447로 진행한다. 스텝S447에서, C IN/C OUT(87)는, 체크아웃리스트에 포함되는 트랙에 대응하는 콘텐츠 데이터를 HDD(58)로부터 판독, MS MW(89)에 의뢰하여, 판독한 콘텐츠 데이터를 MS(4)에 복사시킨다. 이때, 콘텐츠 데이터의 복사에는, 체크아웃원인 HDD(58)를 특정하는 정보를 포함하게 한다.
스텝S448에서, C IN/C OUT(87)는, 복사한 콘텐츠 데이터에 대응하는 트랙 오브젝트의 AC의 CN에 기록되어 있는 체크아웃가능횟수를 1만큼 감소하여 CN의 값을 갱신한다. 또한, C IN/C OUT(87)은, AC의 LCMLOG에, 체크아웃전의 정보로서 MS(4) 를 특정하는 정보를 기록한다.
이때, 설명은 생략하지만, 이 체크아웃처리에서도, 상술한 무브아읏처리와 마찬가지로, 재생의 가부(권리의 유효, 또는 무효)를 나타내는 플래그를 사용하는 것에 의해, 전원차단 등의 보상과, 부정한 복사의 작성을 억제하고 있다.
도 91은, 체크아웃처리가 실행되어 있는 한가운데의 디스플레이(15)의 표시예를 나타내고 있다. 표시에어리어(321)에는, 체크아웃중인 것을 나타내는 문자 "Check out"이 점멸표시된다. 체크아웃이 완료한 트랙의 옆에는, 체크마크(322)가 표시된다. 현재 체크아웃중의 트랙의 옆에는, 포인터(323)가 표시된다. 표시에어리어(324)에는, 체크아웃처리의 진척상황을 나타내는 정보(체크아웃중 또는 체크아웃이 완료한 콘텐츠 데이터의 수/체크아웃리스트에 포함되는 콘텐츠 데이터의 총수)가 표시된다. 이상, 체크아웃처리의 설명을 종료한다.
다음에, MS(4)에 체크아웃한 콘텐츠 데이터를, HDD(58)에 체크인하는 처리에 관해서, 도 92및 도 93을 참조하여 설명한다.
여기서, MS(4)에 기록되어 있는 콘텐츠 데이터를 체크아웃하는 처리란, HDD(58)에서 MS(4)으로 일시적으로 재생한 콘텐츠 데이터의 복사를 소거함과 동시에, HDD(58)의 체크아웃가능횟수를 1만큼 증가하여, 체크아웃가능횟수를 원래의 값으로 복원하는 처리이다.
체크인처리에 관해서, 도 92의 흐름도를 참조하여 설명한다. 이때, 체크인처리는, HDMW(82)의 C IN/C OUT(87)에 의해서 제어된다.
이 체크인처리는, MS슬롯(45)에 MS(4)가 삽입되어 있는 상태에서, 사용자가 메뉴/취소버튼(21)을 조작하여 메뉴를 표시시켜, 커서버튼(17)을 조작하여 「편집」을 선택한 후, 엔터버튼(20)을 조작하여 편집메뉴를 표시시켜, 커서버튼(17)을 조작하여 「체크인」을 선택한 후, 엔터버튼(20)을 조작하였을 때에 시작된다. 스텝S451에서, C IN/C OUT(87)는, MS MW(89)에 의뢰하여, MS(4)에 기록되어 있는 데이터중, 체크인 가능한 콘텐츠 데이터(오디오 서버(1)의 HDD(58)에서 체크아웃된 콘텐츠 데이터)를 식별하여, 관계하는 펌웨어에 의뢰하여, 체크인 가능한 콘텐츠 데이터의 정보를 디스플레이(15)에 표시시킨다.
스텝S452에서, C IN/C OUT(87)는, 체크인 가능한 트랙에 관한 정보(곡 타이틀 등)를, 디스플레이(15)에 표시시킨다. 도 93은, 디스플레이(15)의 표시예를 나타내고 있다. 디스플레이(15)의 표시에어리어(331)에는, 체크인의 음원을 나타내는 정보로서"MS"가 표시된다. 콘텐츠 데이터의 곡 타이틀명 등의 정보뒤에 표시되는 화살표(332)는, 해당 콘텐츠 데이터가 체크인 가능한 것을 나타내고 있다.
스텝S452에서, C IN/C OUT(87)는, 사용자가 커서버튼(17)과 선택버튼(18)을 조작함에 의해, 표시된 체크인 가능한 콘텐츠 데이터중, 체크인하는 콘텐츠 데이터를 선택했는가 아닌가를 판정한다. 체크인하는 콘텐츠 데이터를 선택하였다고 판정된 경우, 처리는 스텝S453로 진행한다.
스텝S453에서, C IN/C OUT(87)는, 선택된 콘텐츠 데이터를 체크인 리스트에 추가한다. 처리는, 스텝S451로 되돌아가, 그 이후의 처리가 반복된다.
이때, 스텝S452에서, 체크인하는 콘텐츠 데이터가 선택되지 않는다고 판정된 경우에는, 처리는 스텝S454로 진행한다. 스텝S454에서, C IN/C OUT(87)는, 사용자 가 엔터키(20)를 조작함에 의해, 체크인하는 콘텐츠 데이터의 리스트를 표시시켜, 언테키(20)를 조작함에 의해, 체크인의 실행을 지시했는가 아닌가를 판정한다. 체크인의 실행이 지시되어있지 않다고 판정된 경우, 처리는 스텝S451로 되돌아가, 그 이후의 처리가 반복된다.
그 후, 스텝S454에서, 체크인의 실행이 지시되었다고 판정된 경우, 처리는 스텝S455로 진행한다. 스텝S455에서, C IN/C OUT(87)는, MS MW(89)에 의뢰하여, 체크인리스트에 포함되는 MS(4)의 콘텐츠 데이터를 소거하는 (재생의 가부를 나타내는 플래그를 거부, 즉, 권리무효라고 하는 것이어도 된다).
스텝S456에서, C IN/C OUT(87)는, HDD(58)에 기록되어 있는 원래의 콘텐츠 데이터에 대응하는 트랙 오브젝트의 AC의 CN에 기록되어 있는 체크아웃가능횟수를 1만큼 증가하여 CN의 값을 갱신한다. 또한, C IN/C OUT(87)은, AC의 LCML0G에서 체크아웃전의 정보로서 기록하고 있는 MS(4)를 특정하는 정보를 삭제한다. 이상, 체크인 처리의 설명을 종료한다.
다음에, MS(4)에 기록되어 있는 콘텐츠 데이터를 체크인하는 처리와, HD플레이 기능에 의해서 최후에 재생한 트랙이 포함되는 앨범에 속하는 복수의 트랙을 일괄하여 MS(4)에 체크아웃하는 처리를 연속하여 실행하는 교환처리에 관해서, 도 94내지 도 97을 참조하여 설명한다.
이 교환처리는, MS슬롯(45)에 MS(4)가 삽입된 상태에서, 사용자가 교환버튼(22)을 조작하였을 때에 시작된다.
스텝S461에서, C IN/C OUT(87)는, MS MW(89)에 의뢰하여, MS(4)에 기록되어 있는 데이터중, 체크인 가능한 콘텐츠 데이터를 식별한다. 스텝S4(62)에서, C IN/C OUT(87)는, MS MW(89)과 연휴하여, MS(4)의 체크인 가능한 콘텐츠 데이터를 1콘텐츠 데이터씩, 도 92를 참조하여 상술한 체크인처리와 같이 체크인한다.
도 95는, 스텝S462의 처리가 되고 있는 중에 디스플레이(15)의 표시예를 나타내고 있다. 디스플레이(15)의 표시에어리어(381)에는, 체크인의 음원을 나타내는 정보로서 "MS"가 표시된다. 표시에어리어(382)에는, 체크인이 실행중인 것을 나타내는 문자 "Now Check in"이 점멸표시된다. 콘텐츠 데이터의 곡 타이틀명 등의 정보의 앞에 표시되는 "×"인(383)은, 해당 콘텐츠 데이터가 체크인 불가능한 것을 나타내고 있다. 체크마크(384)는, 해당 콘텐츠 데이터의 체크인이 완료하고 있는 것을 나타내고 있다. 포인터(385)는, 해당 콘텐츠 데이터의 체크인이 실행중인 것을 나타내고 있다.
스텝S463에서, C IN/C OUT(87)는, MS(4)의 체크인 가능한, 콘텐츠 데이터를 모두 체크인하였는가 아닌가를 판정한다. MS(4)의 체크인 가능한 콘텐츠 데이터를 모두 체크인하였다고 판정되지 않은 경우, 처리는 스텝S4(62)로 되돌아가, 다음 콘텐츠 데이터가 체크인된다. 그 후, 스텝S463에서, MS(4)의 체크인 가능한 콘텐츠 데이터(25)를 모두 체크인하였다고 판정된 경우, 처리는 스텝S464로 진행한다.
스텝S464에서, C IN/C OUT(87)는, HD DB(91)과 연휴하여, 속하는 트랙을 일괄하여 체크아웃하는 앨범을 결정한다. 구체적으로는, 예를 들면, HD DB(91)이 오브젝트기록영역(122)에 기록되어 있는 각 트랙 오브젝트의 최종 액세스 일시(도 42)에 근거하여 최후에 재생된 트랙을 판별하여, 그 트랙이 속하는 앨범을 체크아 웃하는 앨범으로 결정한다.
스텝S465에서, C IN/C OUT(87)는, 체크아웃하는 앨범에서 1트랙(즉, 콘텐츠 데이터)을 선택한다. 스텝S466에서, C IN/C OUT(87)는, 선택된 콘텐츠 데이터가 체크아웃 가능한가 아닌가를 판정한다. 선택된 콘텐츠 데이터가 체크아웃 가능하다고 판정된 경우, 처리는 S467로 진행한다.
스텝S467에서, C IN/C OUT(87)는, MS MW(89)에 의뢰하여, 선택된 콘텐츠 데이터를 체크아웃하는 만큼의 용량이 MS(4)에 비어있는가 아닌가를 판정시킨다. 선택된 콘텐츠 데이터를 체크아웃하는 만큼의 용량이 MS(4)에 비어 있다고 판정된 경우, 처리는 스텝S468로 진행한다.
스텝S468에서, C IN/C OUT(87)는, 선택된 콘텐츠 데이터를, 도 89를 참조하여 상술한 체크아웃처리와 같이 체크아웃한다.
도 96은, 스텝S468의 처리가 행해지고 있는 한가운데의 디스플레이(15)의 표시예를 나타내고 있다. 디스플레이(15)의 표시에어리어(391)에는, 체크아웃의 음원을 나타내는 정보로서 "HDD" 가 표시된다. 표시에어리어(392)에는, 체크아웃이 실행중인 것을 나타내는 문자 "Now Check out"이 점멸표시된다. 콘텐츠 데이터의 곡 타이틀명 등의 정보의 앞에 표시되는 "×"인은, 해당 콘텐츠 데이터가 체크아웃 불가능한 것을 나타내고 있고, 체크마크는, 해당 콘텐츠 데이터의 체크아웃이 완료하고 있는 것을 나타내고 있다.
스텝S469에서, C IN/C OUT(87)는, 체크아웃하는 앨범에 포함되는 모든 트랙(즉, 콘텐츠 데이터)을, 스텝S465로 선택하였는가 아닌가를 판정한다. 모든 콘텐츠 데이터를 스텝S465로 선택하지 않고 있다고 판정된 경우, 처리는 스텝S465로 되돌아가, 이후의 처리가 반복되고, 스텝S469에서, 모든 콘텐츠 데이터를 스텝S465로 선택하였다고 판정된 경우, 교환처리는 종료된다.
이때, 스텝S466에서, 선택된 콘텐츠 데이터가 체크아웃가능하지 않다고 판정된 경우, 스텝S467, S468은 스킵된다. 또한, 스텝S467에서, 선택된 콘텐츠 데이터를 체크아웃하는 만큼의 용량이 MS(4)에 비어 있지 않다고 판정된 경우, 스텝S468는 스킵된다.
도 97은 교환처리가 완료한 직후의 디스플레이(15)의 표시예를 나타내고 있다. 디스플레이(15)의 표시에어리어(401)에는, 교환처리가 완료한 것을 나타내는 문자 "C0MPLETE"가 표시된다.
이상 설명한 바와 같이, 사용자는, 교환버튼(22)을 조작하는 것만으로, MS(4)로부터 HDD(58)에 대한 체크인처리와, HDD(58)로부터 MS(4)에 대한 체크아웃처리와 자동적으로 실행시키는 것이 가능해진다. 이상, 교환처리의 설명을 종료한다.
그런데, 상술한 무브아웃처리, 무브인처리, 임포트처리, 체크아웃처리, 및 체크인처리는, HDD(58)과 MS(4)와의 사이만이 아닌, HDD(58)과 커넥터(43)에 접속되는 PD(5)와의 사이에서도 실행하는 것이 가능하다.
다음에, 도 98은, PD(5)의 하드웨어적인 구성예를 나타내고 있다. PD(5)를 실현하는 LSI(Large Scale Integration)(410)는, 그 전체를 제어하는 CPU(411)을 내장하고 있다. CPU(411)에는, 버스(421)를 통해, ROM(412), RAM(413), DMA콘트롤 러(414), DSP(Digital Signal Processor)(415), 버퍼(416), LCD인터페이스(I/F)(417), 직렬인터페이스(I/F)(418), 및 인터페이스(419, 420)가 접속되어 있다.
ROM(412)에는, PD(5)의 각종의 기능을 실현하는 프로그램, 기기 ID, 암호키 등이 기억되어 있다. RAM(413)은, CPU(411)가 각종의 처리를 실행할 때, 소정의 데이터나 프로그램을 일시적으로 기억한다. DMA콘트롤러(414)는, 버퍼(416), 플래시 메모리(426), 및 직렬인터페이스(418)를 개재하는 USB콘트롤러(424)의 사이의 데이터전송을 제어한다. DSP(415)는, 플래시메모리(426) 등에 기록되어 있는 콘텐츠 데이터를 디코드한다. 또한, DSP(415)는, DES엔진을 가지고 있고, 암호키를 사용하여 콘텐츠 데이터의 암호화/복호를 한다. 버퍼(416)는, DMA콘트롤러(417)가 전송을 제어하는 데이터를 일시적으로 버퍼링한다.
LCD인터페이스(417)의 후단에는, LCD드라이버(422), 및 LCD(423)이 접속된다. 직렬인터페이스(418)의 후단에는, USB콘트롤러(424), 및 USB커넥터(425)가 접속된다. USB콘트롤러(424)는, USB커넥터(425)를 통해 접속되는 오디오 서버(1)와의 데이터통신을 제어한다. 인터페이스(419)를 통해 접속되는 플래시메모리(426)에는, 오디오 서버(1)에서 무브아웃 등 된 콘텐츠 데이터와, 그 곡 타이틀 등의 부가정보가 기록된다. 인터페이스(420)의 후단에는, DAC(427) 및 증폭기(AMP)(428)가 접속된다. 전원부(429)는, LSI(410)에 전원공급한다.
DSP(415)의 디코드에 의해서 얻어지는 오디오데이터는, 인터페이스(420), DAC(427), 및 증폭기(AMP)(428)를 통해 헤드폰 등에 출력된다.
HDD(58)와 MS(4)와의 사이의 무브아웃처리 등과, HDD(58)와 PD(5)와의 사이의 무브아웃처리 등은, 거의 마찬가지이기 때문에, 그 차이에 관해서만 설명한다.
MS(4)에 기록하는 콘텐츠 데이터의 암호화는, 오디오 서버(1)l의 HDD(58)에 기록되어 있는 콘텐츠 데이터의 암호화와 같은 암호키에 따라서 행해진다. 따라서, HDD(58)와 MS(4)와의 사이에서는, 암호화된 콘텐츠 데이터를 복호하지 않고, 그 대로의 상태로 무브아웃할 수 있다.
그것에 대하여, PD(5)에 기록하는 콘텐츠 데이터의 암호화는, 오디오 서버(1)의 HDD(58)에 기록되어 있는 콘텐츠 데이터의 암호화와는 다른 암호키가 사용된다. 따라서, HDD(58)와 PD(5)와의 사이에서는, 도 56을 참조하여 상술한 것과 같이, HDD(58)에 기록되어 있는 콘텐츠 데이터의 암호가 복호되고, 재차, 다른 PD(5)용의 암호키를 사용하여 암호화된 콘텐츠를 무브아웃하도록 하고 있다.
이상, HDD(58)과 PD(5)와의 사이에서의 무브아웃처리, 무브인처리, 임포트처리, 체크아웃처리, 및 체크인처리에 관한 설명을 종료한다.
다음에, 오디오 서버(1)가 가지는 스토어(ST0RE)기능 및 리스토어(REST0RE)기능에 관해서, 도 99 내지 도 107을 참조하여 설명한다.
스토어기능이란, 이미 MS(4)기록되어 있는 콘텐츠 데이터이외의 오디오 서버(1)이 재생 불가능한 데이터(예를 들면, 정지화상파일, 보이스 파일 등)가 존재하기 때문에, MS(4)의 기록용량이 부족하게 되는 경우, 그것을 해소하기 위해서, 이미 MS(4)에 기록되어 있는 콘텐츠 데이터 이외의 데이터를, 동시에 기록하는 동종의 파일을 1개의 기록파일로서 일시적으로 HDD(58)에 보관하는 기능이다.
리스토어기능이란, 스토어기능에 의해 HDD(58)상에 생성한 기록파일을 사용하여, 대응하는 디렉토리와 그것에 속하는 파일을 MS(4)상에 복원하는 기능이다.
도 99는, MS(4)에 기록되어 있을 가능성이 있는 디렉토리 및 데이터 파일의 종류를 나타내고 있다.
파일 MEMSTICK.ind는, 해당 파일이 기록되어 있는 기록미디어가 메모리 스틱인 것을 나타내고 있다. 디렉토리 DCIM은, 디지털스틸카메라 등으로 생성된 정지화상파일이 저장되는 디렉토리이다. 디렉토리 VOICE는, IC리코더 등으로 생성된 보이스 파일이 저장된 디렉토리이다. 디렉토리HIFI는, 오디오 서버(1) 등에서 체크아웃, 무브아웃 등 된 저작권정보가 부가되어 있는 콘텐츠 데이터가 저장되는 디렉토리이다. 디렉토리 CONTROL은, 콘트롤 정보파일이 저장되는 디렉토리이다. 디렉토리TEL은, 전화 및 팩시밀리정보파일이 저장되는 디렉토리이다. 디렉토리 0PEN-R은, 엔터테인먼트 로봇 정보파일이 저장되는 디렉토리이다. 디렉토리 POSITI0N은, 위치정보파일이 저장되는 디렉토리이다. 디렉토리 PALM은, PALM OS 데이터파일이 저장되는 디렉토리이다. 디렉토리 MP3은, MP3파일이 저장되는 디렉토리이다. 디렉토리MSxxxxxx는, 벤더고유의 정보파일이 저장되는 디렉토리인 ("xxxxxx"는, 벤더를 식별하기 위한 정보이다).
도 100은, 스토어기능에 의해서 HDD(58)의 오브젝트기록영역(122)의 디렉토리 구조하에서 생성되는 기록파일의 기록위치를 나타내고 있다. 폴더 오브젝트(217)와 같은 계층에는, MS데이터오브젝트(501)가 생성된다. MS데이터오브젝트(501)의 아래의 계층에는, MS스토어/리스토어 오브젝트(502)가 생성된다. 기록 파일(도 100의 경우, MS데이터#1. DCIM, MS데이터#2. VOICE, 및 MS데이터#3. DCIM)은, MS스토어/리스토어오브젝트(502)의 아래의 계층에 기록된다.
이때, 「MS 데이터#1」과 같은 기록파일의 명칭은, 사용자가 임의로 설정할 수 있다.
다음에, 스토어기능을 실현하는 HDMW(82)에의 한 스토어처리에 관해서, 도 101의 흐름도를 참조하여 설명한다. 이 스토어처리는, 사용자가 펑션 버튼(12)을 반복하여 눌러, 음원으로서 MS(4)를 선택하여, 메뉴/취소버튼(21)을 누른 후, 커서버튼(17)에 의해서「편집」을 선택하여 엔터버튼(20)을 누르고, 커서버튼(17)에 의해서「Store(MS→HDD)」를 선택하여 엔터버튼(20)을 눌렀을 때에 시작된다.
스텝501에서, HDMW(82)는, MS MW(89)에 의뢰하여, MS(4)에 기록되어 있는 디렉토리중, 스토어의 오브젝트가 되는 디렉토리, 즉, 디렉토리 HIFI 이외의 디렉토리를 검색하여, 그 용량을 산출하여, 디스플레이(15)에 표시시킨다.
도 102는, 음원으로서 MS(4)가 선택되었을 때의 디스플레이(15)의 표시예를 나타내고 있다. 표시에어리어 511 및 512에는, 음원을 나타내는 문자「MS」,「Memory Stick」이 표시된다. 표시마크(513)는, 정지화상파일 저장용 디렉토리를 나타내고 있고, 지금의 경우, 그 용량이 8MB인 것을 나타내고 있다. 표시마크(514)는, 보이스 파일 저장용 디렉토리를 나타내고 있고, 지금의 경우, 그 용량이 1MB인 것을 나타내고 있다.
도 101로 되돌아간다. 스텝S502에서, HDMW(82)는, 스토어의 대상으로 되는 디렉토리를 선택하는 사용자의 조작을 접수하여, 사용자의 조작이 행하여질 때 까 지 대기한다. 도 103은, 스토어 가능한 디렉토리의 리스트가 표시된 디스플레이(15)의 표시예를 나타내고 있다. 표시에어리어(521)에는, 스토어 가능한 디렉토리의 리스트가 표시되어 있는 것을 나타내는 정보가 표시된다. 표시에어리어(522)에는, 스토어 가능한 정지화상파일 저장용 디렉토리가 존재하고, 그 용량이 8MB인 것이 표시되어 있다. 표시에어리어(524)에는, 스토어 가능한 보이스 파일저장용 디렉토리가 존재하고, 그 용량이 1MB인 것이 표시되어 있다. 커서(524)는, 커서버튼(17)에 대한 조작에 대응하여, 정지화상파일 저장용 디렉토리, 또는 보이스 파일 저장용 디렉토리를 지시한다.
도 101로 되돌아간다. 스텝502에서, 스토어의 대상으로 하는 디렉토리를 선택하는 사용자의 조작이 행하여진 경우, 처리는 스텝S503로 진행한다. 스텝503에서, HDMW(82)는, MS MW(89)에 의뢰하여, 스토어의 대상으로서 선택된 디렉토리에 속하는 모든 파일을 판독, 1개의 아카이브 파일로서 HDD(58)의 오브젝트기록영역(122)의 MS스토어/리스토어 오브젝트(502)의 아래의 계층에 기록한다. 스텝S504에서, HDMW(82)는, 기록한 아카이브 파일에, 원래의 대상디렉토리(예를 들면, 디렉토리 DCIM), 및 아카이브 파일의 파일명(예를 들면, "2001/08/11")을 대응하여 기록한다.
이때, 아카이브 파일의 파일명은, 사용자가 임의로 설정 가능하지만, 파일명의 설정을 하지 않은 경우, 예를 들면, 파일명"2001/08/11"과 같이, 해당 스토어 처리가 행하여지고 있는 날짜가 아카이브 파일의 파일명으로서 자동적으로 설정된다.
도 104는, 아카이브 파일이 생성되어 있는 한가운데의 디스플레이(15)의 표시예를 나타내고 있다. 표시에어리어(531)에는, MS(4)의 정지화상파일 저장용 디렉토리가 HDD(58)에 스토어되어 있는 것을 나타내는 정보가 표시된다. 표시에어리어(532)에는, 생성되어 있는 아카이브 파일의 파일명(지금의 경우, "2001/08/11")이 표시된다. 표시에어리어(533)에는, 해당 스토어처리의 진척상황에 비례하여 신장하는 가변길이바(534)가 표시된다. 표시에어리어(535)에는, 스토어처리가 실행중인 것을 나타내는 문자열「Store」가 점멸표시된다.
도 101로 되돌아간다. 스텝505에서, HDMW(82)는, MS MW(89)에 의뢰하여, HDD(58)에 아카이브 파일이 생성된 MS(4)상의 디렉토리를, MS4로부터 소거시킨다. 이상, 스토어처리의 설명을 종료한다.
이때, 스텝502의 처리와 같이, 스토어의 대상으로 하는 디렉토리를 선택하는 사용자의 조작을 기다리는 것이 아니라, 검색된 스토어 가능한 디렉토리를 자동적으로 선택하도록 하여, 이후의 처리를 실행하도록 하여도 된다.
이상 설명한 바와 같이, 스토어처리에서는, MS(4)에 기록되어 있는 디렉토리및 파일중, 스토어 가능한 디렉토리를 검색할 수 있다. 또한, 특정한 전자기기에 의해서 생성되는 파일이 저장되는 디렉토리를 선택하여 스토어할 수 있다. 그리고, 스토어처리에서는, MS(4)상의 저작권정보를 가지는 파일이 저장되어 있는 HIFI디렉토리는 해당 처리의 대상으로 하지 않기 때문에, HIFI디렉토리에 저장되어 있는 콘텐츠 데이터를 부정하게 복사하고자 하는 악의 있는 사용자에게, 이 스토어기능이 이용되는 것을 억제할 수 있다.
다음에, HDMW(82)에 의한, HDD(58)에 스토어된 아카이브 파일에 해당하는 디렉토리를 MS(4)에 복원하는 리스토어처리에 관해서, 도 105의 흐름도를 참조하여 설명한다.
이 리스토어처리는, 사용자가 펑션버튼(12)을 반복하여 눌러, 음원으로서 HDD(58)를 선택하여, 메뉴/취소버튼(21)을 누른 후, 커서버튼(17)에 의해서「편집」을 선택하여 엔터버튼(20)을 누르고, 그리고, 커서버튼(17)에 의해서「Restore(MS→HDD)」를 선택하여 엔터버튼(20)을 눌렀을 때에 시작된다.
스텝501에서, HDMW(82)는, HDD(58)의 오브젝트기록영역(122)의 MS스토어/리스토어 오브젝트(502)의 아래의 계층에 속하는 아카이브 파일의 리스트를 디스플레이(15)에 표시한다.
도 106은 아카이브 파일의 리스트를 표시하는 디스플레이(15)의 표시예를 나타내고 있다. 표시에어리어(541)에는, 음원을 나타내는 문자열「HDD」가 표시된다. 표시에어리어(542)에는, 문자열「Restore List」가 표시된다. 표시에어리어(543)에는, 리스토어 가능한 아카이브 파일의 정보(파일의 종류를 나타내는 마크, 파일명, 데이터용량)가 표시된다. 커서(544)는, 커서버튼(17)에 대한 조작에 대응하여, 정지화상파일 저장용 디렉토리, 또는 보이스 파일 저장용 디렉토리를 지시한다.
도 105로 되돌아간다. 스텝S512에서, HDMW(82)는, 스텝S502에서, HDMW(82)는, 리스토어시키는 아카이브 파일을 선택하는 사용자의 조작을 접수하여, 사용자의 조작이 행해질 때까지 대기한다. 구체적으로는, 커서(544)를 상하로 이동시켜 아카이브 파일을 선택하는 커서버튼(17)에 대한 조작과, 그 선택을 확정하는 엔터 버튼(20)에 대한 조작이 행하여질 때까지 대기한다. 사용자의 조작이 행해진 경우, 처리는 스텝S513로 진행한다.
도 107은 아카이브 파일에 근거하여, 원래의 디렉토리와 그것에 속하는 파일이 복원되어 있는 한가운데의 디스플레이(15)의 표시예를 나타내고 있다. 표시에어리어(551)에는, HDD(58)으로부터 MS(4)에 대하여, 정지화상파일 저장용 디렉토리가 리스토어되어 있는 것을 나타내는 정보「Restore(HDD→MS)」가 표시된다. 표시에어리어(552)에는, 리스토어 되어 있는 아카이브 파일의 파일명(지금의 경우, "2001/08/11")이 표시된다. 표시에어리어(553)에는, 해당 리스토어처리의 진척상황에 비례하여 신장하는 가변길이바(554)가 표시된다. 표시에어리어(555)에는, 리스토어처리가 실행중인 것을 나타내는 문자열「Restore」가 점멸표시된다.
도 105로 되돌아간다. 스텝513에서, HDMW(82)는, MS MW(89)에 의뢰하여, 리스토어의 대상으로서 선택된 아카이브 파일에 근거하여, 원래의 디렉토리와 그것에 속하는 모든 파일을 MS(4)상에 복원한다. 스텝S514에서, HDMW(82)는, 선택된 아카이브 파일을 HDD(58)오브젝트 기록영역(122)의 MS스토어/리스토어 오브젝트(502)의 아래의 계층에서 삭제한다. 이상, 리스토어 처리의 설명을 종료한다.
이때, 스텝512의 처리와 같이, 리스토어의 대상으로 하는 아카이브 파일을 선택하는 사용자의 조작을 기다리는 것이 아니라, 리스토어하는 아카이브 파일을 자동적으로 선택하여, 이후의 처리를 실행하도록 하여도 된다.
다음에, 도 108은, 플래시 ROM(52)의 구성예를 나타내고 있다. 플래시ROM(52)에는, 후술하는 기동용 프로그램이 저장되어 있다.
플래시 ROM(52)에는 이때, 예를 들면, 도 7에 나타낸 펌웨어가, 소위 버전마다 저장되는 3개의 제1 기억영역 내지 제3 기억영역이 설정되어 있다. 즉, 이 예의 경우, 3세대 버전의 펌웨어를 저장할 수 있다.
제1 기억영역에 저장되는 펌웨어의 버전을 나타내는 마커 1, 제2 기억영역에 저장되는 펌웨어의 버전을 나타내는 마커 2, 그리고 제3 기억영역에 저장되는 펌웨어의 버전을 나타내는 마커 3은, 기동용 프로그램에 포함되어 있다.
이때, 상세한 것은 후술하지만, 마커는, 펌웨어가 버전 업될 때마다 1만큼 증가하도록 되어 있다. 또한 대응하는 영역에 펌웨어가 저장되어 있지 않은 경우, 마커는, "INVALID"를 나타내는 값으로 되어 있다.
펌웨어를 버전 업하는 경우(프로그램을 재기록하는 경우)의 처리순서에 관해서, 도 109의 흐름도를 참조하여 설명한다.
이때, 이 펌웨어를 버전 업하는 처리는, 사용자의 오디오 서버(1)에 대한 소정의 조작이 행하여졌을 때, 후술하는 기동용 프로그램에 의해 지시된 펌웨어가 실행하지만, 예를 들면, 버전 업되는 펌웨어와 재기록되는 새로운 버전의 펌웨어가 CD-ROM에 저장되어 있는 경우, CD MW(88)가, 또한 MS(4)에 저장되어 있는 경우, MS MW(89)이, 이 처리를 실행한다. 여기서는, CD MW(88)이, 이 버전 업처리를 실행하는 것으로 한다.
스텝S531에서, CD MW(88)는, 버전 업된 펌웨어를 저장하는 영역을 결정한다.
구체적으로는, 플래시 ROM(52)의 마커 2 이후의 마커(도 108의 예로서는, 마커 2와 마커 3)중에서, "INVALID"의 마커의 임의의 마커가 하나 검출되고, 그것에 대응하는 기억영역이, 버전 업된 펌웨어를 저장하는 영역으로 된다. 또한, 마커 2이후의 마커중에, "INVALID"의 마커가 존재하지 않은 경우, 가장 작은 마커가 검출되고, 그것에 대응하는 영역이, 버전 업된 펌웨어를 저장하는 영역으로 된다.
이때, 이 예의 경우, 가장 작은 마커에 대응하는 기억영역에는, 가장 오래된 버전의 펌웨어가 저장되어 있다.
스텝S532에서, CD MW(88)는, CD-ROM 드라이브(57)에 장착된 CD-ROM에서, 거기에 기록되어 있는 새로운 버전의 펌웨어를 입수한다. 이때, CD-ROM 외에, MS(4) 또는 이더넷 콘트롤러/커넥터(67)를 통해 데이터통신을 행하는 다른 전자기기로부터, 새로운 버전의 펌웨어를 입수할 수도 있다.
스텝S533에서, CD MW(88)는, 스텝S532에서 입수한 펌웨어를, 인코더/디코더(59)에 공급하여 복호시킴과 동시에, 이 예의 경우, 플래시 ROM(52)에 기억되어 있는 암호키로 재암호화시킨다.
스텝S534에서, CD MW(88)는, 스텝S533에서 재암호화된 펌웨어를, 스텝S531에서 결정한 기억영역에 기록한다.
스텝S535에서, 마커 2 이후의 마커중에서 ("INVALID"의 마커를 제외한다) 최대의 마커를 검출하여, 스텝S536에서, 그 마커에 1을 가산하여 얻어지는 값을, 스텝S534에서 펌웨어가 저장된 기억영역에 대응하는 마커로 한다. 그 후 해당 처리는 종료된다.
이상과 같이, 사용자가 소정의 조작을 오디오 서버(1)에 대하여 행하는 것만으로 펌웨어의 버전 업시킬 수 있다.
다음에, 기동용 프로그램에서의 처리순서에 관해서, 도 110의 흐름도를 참조하여 설명한다. 이때, 이 기동용 프로그램은, 전원부(65)로부터의 각부에 대한 전원공급이 시작된 직후(전원투입직후)에 실행된다.
스텝 S541에서, 기동용 프로그램은, 예를 들면, 레지스터의 초기화 등의 소정의 초기화처리를 실행한다.
스텝 S542에 있어서, 기동용 프로그램은, 플래시 ROM(52)의 마커 2 이후의 마커(마커2와 마커3)의 전부가 "INVALID"인지 아닌지를 판정하여, 그렇지 않다고 판정한 경우, 스텝 S543로 진행한다.
스텝 S543에 있어서, "INVALID"가 아니고, 마커2 이후의 마커의 속에서, 가장 큰 마커 m을 검출한다. 스텝 S544에 있어서, 기동용 프로그램은, 마커m에 대응하는 기억영역에 저장되어 있는 펌웨어를, 인코더/디코더(59)에 공급하여 복호시키고, 스텝 S545에 있어서, 복호된 펌웨어를 SDRAM(53)에 기록한다.
스텝 S542에 있어서, 마커2 이후의 마커의 전부가 "INVALID" 라고 판정된 경우, 스텝 S547로 진행하고, 기동용 프로그램은, 마커1이 "INVALID"인지 아닌지를 판정하여, "INVALID"가 아니라고 판정한 경우, 스텝 S548로 진행한다.
스텝 S548에 있어서, 기동용 프로그램은, 마커1에 대응하는 기억영역의 펌웨어를 인코더/디코더(59)에 공급하여 복호시키고, 스텝 S549에 있어서, 복호된 펌웨어를 SDRAM(53)에 기록한다.
스텝 S545 또는 스텝 S549에서, 펌웨어가 SDRAM(53)에 기록되었을 때, 스텝 S546로 진행하고, 기동용 프로그램은, SDRAM(53)에 기록된 펌웨어의 실행을 지시한 다. 이에 따라, SDRAM(53)상에 전개된 펌웨어가 실행된다.
스텝 S547에서, 마커1이 "INVALID"라고 판정된 경우, 즉, 어떤 기억영역에도 펌웨어가 저장되어 있지 않고, 모든 마커가 "INVALID"인 경우, 스텝 S550로 진행하여, 에러판정이 행해진다.
스텝 S546에서 펌웨어가 실행되었을 때, 또는 스텝 S550에서 에러판정이 행해졌을 때, 처리는 종료된다.
이때, 이상에서는, 플래시 ROM(52)에, 펌웨어가 저장되는 기억영역이 3개만 설정되는 경우를 예로 설명하였지만, 2개 이상이면, 그 수에 제한은 없다. 기억영역이 2개인 경우, 펌웨어가 기록되는 기억영역의 마커의 "INVALID"로 한 후, 그 기억영역에의 기록을 행하고, 그리고 기록이 종료한 후에 "VALID"(정확하게는, INVALID가 아닌 값)으로 할 수 있다. 이에 따라, 재기록 도중의 펌웨어가, SDRAM(53)에 전개되어 실행되는 것을 방지할 수 있다.
또한, 이상에서는, 펌웨어를 버전 업하는 경우를 예로 설명하였지만, 그 밖의 프로그램을 버전 업하는 경우에 있어서 본 발명을 적용할 수 있다. 또한, 버전 업이 아니라, 프로그램의 형태(예를 들면, 일본어용 프로그램, 영어용 프로그램)를 변경하는 경우에도 본 발명을 적용할 수 있다.
그런데, 상술한 일련의 처리는, 오디오 서버(1)와 같은 전용기기에 의해서 실행시킬 수 있지만, 범용의 퍼스널컴퓨터 등에, 도 7에 나타낸 것 같은 펌웨어를 인스톨하여 실행시켜서도 실현할 수 있다.
이 펌웨어는, 범용의 컴퓨터와는 별도로, 사용자에게 프로그램을 제공하기 위해서 배포되는, 펌웨어가 기록되어 있는 자기디스크(플로피 디스크를 포함한다), 광디스크(CD-ROM(Compact Disc-Read Only Memory), DVD(Digital Versatile Disc)를 포함한다), 광자기디스크(MD(Mini Disc)를 포함한다), 또는 반도체 메모리 등으로 이뤄지는 패키지미디어에 의해 구성되는 것뿐만 아니라, 컴퓨터에 미리 삽입된 상태로 사용자에게 제공되는, 펌웨어가 기록되어 있는 ROM이나 하드디스크 등으로 구성된다.
이때, 본 명세서에서, 프로그램(펌웨어)을 기술하는 스텝은, 기재된 순서에 따라서 시계열적으로 행해지는 처리는 물론, 반드시 시계열적으로 처리되지 않더라도, 병렬적 또는 개별적으로 실행되는 처리도 포함하는 것이다.
이상과 같이, 본 발명에 따르면, 소정의 포맷의 데이터를 일시적으로 바꿔 옮기는 처리를 자동적으로 실행시키는 것이 가능해진다.

Claims (32)

  1. 기록장치에 의해 재생될 수 있는 콘텐츠데이터를, 착탈가능한 제 1 정보기억매체에 기록하는 기록장치에 있어서,
    사용자의 조작을 접수하는 접수수단과,
    상기 콘텐츠데이터가 상기 기록장치에 의해 기록되는 상기 착탈가능한 제 1 정보기억매체로부터, 상기 기록장치에 의해 재생될 수 있는 상기 콘텐츠데이터와 다른 포맷의 복수의 데이터 파일을 검색하는 검색수단과,
    상기 검색수단에 의해 검색된 상기 복수의 데이터 파일을 상기 착탈가능한 제 1 정보기억매체로부터 판독하는 판독수단과,
    상기 판독수단에 의해 판독된 상기 복수의 데이터 파일을, 아카이브 파일로서, 상기 기록장치 내에 내장되어 있는 제 2 정보기억매체에 보관하는 보관수단과,
    상기 착탈가능한 제 1 정보기억매체로부터, 상기 아카이브 파일로서 저장되는 상기 복수의 데이터 파일을 소거하는 소거수단과,
    상기 접수수단에 의해 접수된 상기 사용자의 조작에 대응하여, 상기 검색수단, 상기 판독수단, 상기 보관수단 및 상기 소거수단을 제어하는 제어수단과,
    상기 콘텐츠데이터를 디코드하는 디코드수단을 포함하되,
    상기 보관수단은, 상기 판독수단에 의해 동일하게 판독된 동일한 포맷의 상기 복수의 데이터 파일을, 1개의 아카이브 파일로서, 상기 기록장치 내에 내장되어 있는 제 2 정보기억매체에 보관하며,
    상기 검색수단은, 상기 디코드수단이 디코드불가능한 상기 복수의 데이터 파일을 검색하는 것을 특징으로 하는 기록장치.
  2. 제 1항에 있어서,
    상기 검색수단은, 상기 콘텐츠데이터와는 다른 포맷의 상기 복수의 데이터파일로서, 상기 제 1 정보기억매체의 소정의 디렉토리에 속하는 상기 복수의 데이터 파일을 검색하는 것을 특징으로 하는 기록장치.
  3. 삭제
  4. 제 1항에 있어서,
    상기 검색수단은, 상기 콘텐츠데이터와는 다른 포맷의 상기 복수의 데이터 파일로서, 저작권정보가 부가되어 있지 않은 상기 복수의 데이터 파일을 검색하는 것을 특징으로 하는 기록장치.
  5. 삭제
  6. 기록장치에 의해 재생될 수 있는 콘텐츠데이터를, 착탈가능한 제 1 정보기억매체에 기록하는 기록장치의 기록방법에 있어서,
    사용자의 조작을 접수하는 접수스텝과,
    상기 콘텐츠데이터가 상기 기록장치에 의해 기록되는 상기 착탈가능한 제 1 정보기억매체로부터, 상기 콘텐츠데이터와 다른 포맷의 복수의 데이터 파일을 검색하는 검색스텝과,
    상기 검색스텝의 처리에서 검색된 상기 복수의 데이터 파일을 상기 착탈가능한 제 1 정보기록매체로부터 판독하는 판독스텝과,
    상기 판독스텝의 처리에서 판독된 상기 복수의 데이터 파일을, 아카이브 파일로서, 상기 기록장치 내에 내장되어 있는 제 2 정보기억매체에 보관하는 보관스텝과,
    상기 착탈가능한 제 1 정보기억매체로부터, 상기 아카이브 파일로서 저장되는 상기 복수의 데이터 파일을 소거하는 소거스텝과,
    상기 접수스텝의 처리에서 접수된 상기 사용자의 조작에 대응하여, 상기 검색스텝의 처리, 상기 판독스텝의 처리, 상기 보관스텝의 처리 및 상기 소거스텝의 처리를 제어하는 제어스텝과,
    상기 콘텐츠데이터를 디코드하는 디코드스텝을 포함하되,
    상기 보관스텝은, 상기 판독스텝에 의해 동일하게 판독된 동일한 포맷의 상기 복수의 데이터 파일을, 1개의 아카이브 파일로서, 상기 기록장치 내에 내장되어 있는 제 2 정보기억매체에 보관하며,
    상기 검색스텝에서는, 디코드불가능한 상기 복수의 데이터 파일을 검색하는 것을 특징으로 하는 기록방법.
  7. 기록장치에 의해 재생될 수 있는 콘텐츠데이터를, 착탈가능한 제 1 정보기억매체에 기록하기 위한 프로그램으로서,
    사용자의 조작을 접수하는 접수스텝과,상기 콘텐츠데이터가 상기 기록장치에 의해 기록되는 상기 착탈가능한 제 1 정보기억매체로부터, 상기 콘텐츠데이터와 다른 포맷의 복수의 데이터 파일을 검색하는 검색스텝과,
    상기 검색스텝의 처리에서 검색된 상기 복수의 데이터 파일을 상기 착탈가능한 제 1 정보기록매체로부터 판독하는 판독스텝과,
    상기 판독스텝의 처리에서 판독된 상기 복수의 데이터 파일을, 아카이브 파일로서, 상기 기록장치 내에 내장되어 있는 제 2 정보기억매체에 보관하는 보관스텝과,
    상기 착탈가능한 제 1 정보기억매체로부터, 상기 아카이브 파일로서 저장되는 상기 복수의 데이터 파일을 소거하는 소거스텝과,
    상기 접수스텝의 처리에서 접수된 상기 사용자의 조작에 대응하여, 상기 검색스텝의 처리, 상기 판독스텝의 처리, 상기 보관스텝의 처리 및 상기 소거스텝의 처리를 제어하는 제어스텝과,
    상기 콘텐츠데이터를 디코드하는 디코드스텝을 포함하되,
    상기 보관스텝은, 상기 판독스텝에 의해 동일하게 판독된 동일한 포맷의 상기 복수의 데이터 파일을, 1개의 아카이브 파일로서, 상기 기록장치 내에 내장되어 있는 제 2 정보기억매체에 보관하며,
    상기 검색스텝에서는, 디코드불가능한 상기 복수의 데이터 파일을 검색하는 것을 특징으로 하는 컴퓨터가 판독 가능한 프로그램을 기억하는 기억매체.
  8. 삭제
  9. 기록장치에 의해 재생될 수 있는 콘텐츠데이터를, 착탈가능한 제 1 정보기억매체에 기록하기 위한 전용애플리케이션 프로그램만이 기동가능하고, 전원투입 직후에 상기 전용애플리케이션 프로그램이 실행되는 기록장치에 있어서,
    사용자의 조작을 접수하는 접수수단과,
    상기 콘텐츠데이터가 상기 기록장치에 의해 기록되는 상기 착탈가능한 제 1 정보기억매체로부터, 상기 기록장치에 의해 재생될 수 있는 상기 콘텐츠데이터와 다른 포맷의 복수의 데이터 파일을 검색하는 검색수단과,
    상기 검색수단에 의해 검색된 상기 복수의 데이터 파일을 상기 착탈가능한 제 1 정보기억매체로부터 판독하는 판독수단과,
    상기 판독수단에 의해 판독된 상기 복수의 데이터 파일을, 아카이브 파일로서, 상기 기록장치 내에 내장되어 있는 제 2 정보기억매체에 보관하는 보관수단과,
    상기 착탈가능한 제 1 정보기억매체로부터, 상기 아카이브 파일로서 저장되는 상기 복수의 데이터 파일을 소거하는 소거수단과,
    상기 접수수단에 의해 접수된 상기 사용자의 조작에 대응하여, 상기 검색수단, 상기 판독수단, 상기 보관수단 및 상기 소거수단을 제어하는 제어수단과,
    상기 콘텐츠데이터를 디코드하는 디코드수단을 포함하되,
    상기 보관수단은, 상기 판독수단에 의해 동일하게 판독된 동일한 포맷의 상기 복수의 데이터 파일을, 1개의 아카이브 파일로서, 상기 기록장치 내에 내장되어 있는 제 2 정보기억매체에 보관하며,
    상기 검색수단은, 상기 디코드수단이 디코드불가능한 상기 복수의 데이터 파일을 검색하는 것을 특징으로 하는 기록장치.
  10. 제 9항에 있어서,
    상기 검색수단은, 상기 콘텐츠데이터와는 다른 포맷의 상기 데이터 파일로서, 상기 제 1 정보기억매체의 소정의 디렉토리에 속하는 상기 데이터 파일을 검색하는 것을 특징으로 하는 기록장치.
  11. 삭제
  12. 제 9항에 있어서,
    상기 검색수단은, 상기 콘텐츠데이터와는 다른 포맷의 상기 데이터 파일로서, 저작권정보가 부가되어 있지 않은 상기 데이터 파일을 검색하는 것을 특징으로 하는 기록장치.
  13. 삭제
  14. 기록장치에 의해 재생될 수 있는 콘텐츠데이터를, 착탈가능한 제 1 정보기억매체에 기록하는 기록장치에 있어서,
    사용자의 조작을 접수하는 접수수단과,
    상기 기록장치 내에 내장되어 있는 제 2 정보기억매체로부터 아카이브 파일을 검색하는 검색수단과,
    상기 검색수단에 의해 검색된 상기 아카이브 파일을 상기 제 2 정보기록매체로부터 판독하는 판독수단과,
    상기 판독수단에 의해 판독된 상기 아카이브 파일에 근거하여, 상기 콘텐츠데이터가 상기 기록장치에 의해 기록되는 상기 착탈가능한 제 1 정보기억매체에 복수의 데이터 파일을 복원하는 복원수단과,
    상기 제 2 정보기억매체에 보관되어 있는 상기 아카이브 파일을 소거하는 소거수단과,
    상기 접수수단에 의해 접수된 상기 사용자의 조작에 대응하여, 상기 검색수단, 상기 판독수단, 상기 복원수단 및 상기 소거수단을 제어하는 제어수단과,
    상기 콘텐츠데이터를 디코드하는 디코드수단을 포함하고,
    상기 검색수단은, 상기 디코드수단이 디코드불가능한 상기 아카이브 파일을 검색하는 것을 특징으로 하는 기록장치.
  15. 제 14항에 있어서,
    상기 검색수단은, 상기 제 2 정보기억매체의 소정의 디렉토리에 속하는 상기 아카이브 파일을 검색하는 것을 특징으로 하는 기록장치.
  16. 삭제
  17. 제 14항에 있어서,
    상기 검색수단은, 저작권정보가 부가되어 있지 않은 상기 아카이브 파일을 검색하는 것을 특징으로 하는 기록장치.
  18. 착탈가능한 제 1 정보기억매체에 콘텐츠데이터를 기록하는 기록장치의 기록방법에 있어서,
    사용자의 조작을 접수하는 접수스텝과,
    상기 기록장치 내에 내장되어 있는 제 2 정보기억매체로부터 아카이브 파일을 검색하는 검색스텝과,
    상기 검색스텝의 처리에서 검색된 상기 아카이브 파일을 상기 제 2 정보기억매체로부터 판독하는 판독스텝과,
    상기 판독스텝의 처리에서 판독된 상기 아카이브 파일에 근거하여, 상기 콘텐츠데이터가 상기 기록장치에 의해 기록되는 상기 착탈가능한 제 1 정보기억매체에 복수의 데이터 파일을 복원하는 복원스텝과,
    상기 제 2 정보기억매체에 보관되어 있는 상기 아카이브 파일을 소거하는 소거스텝과,
    상기 접수스텝의 처리에서 접수된 상기 사용자의 조작에 대응하여, 상기 검색스텝의 처리, 상기 판독스텝의 처리, 상기 복원스텝의 처리 및 상기 소거스텝의 처리를 제어하는 제어스텝과,
    상기 콘텐츠데이터를 디코드하는 디코드스텝을 포함하고,
    상기 검색스텝에서는, 디코드불가능한 상기 아카이브 파일을 검색하는 것을 특징으로 하는 기록방법.
  19. 착탈가능한 제 1 정보기억매체에 콘텐츠데이터를 기록하는 프로그램으로서,
    사용자의 조작을 접수하는 접수스텝과,
    기록장치 내에 내장되어 있는 제 2 정보기억매체로부터 아카이브 파일을 검색하는 검색스텝과,
    상기 검색스텝의 처리에서 검색된 상기 아카이브 파일을 상기 제 2 정보기억매체로부터 판독하는 판독스텝과,
    상기 판독스텝의 처리에서 판독된 상기 아카이브 파일에 근거하여, 상기 콘텐츠데이터가 상기 기록장치에 의해 기록되는 상기 착탈가능한 제 1 정보기억매체에 복수의 데이터 파일을 복원하는 복원스텝과,
    상기 제 2 정보기억매체에 보관되어 있는 상기 아카이브 파일을 소거하는 소거스텝과,
    상기 접수스텝의 처리에서 접수된 상기 사용자의 조작에 대응하여, 상기 검색스텝의 처리, 상기 판독스텝의 처리, 상기 복원스텝의 처리 및 상기 소거스텝의 처리를 제어하는 제어스텝과,
    상기 콘텐츠데이터를 디코드하는 디코드스텝을 포함하고,
    상기 검색스텝에서는, 디코드불가능한 상기 아카이브 파일을 검색하는 것을 특징으로 하는 컴퓨터가 판독 가능한 프로그램을 기억하는 기억매체.
  20. 삭제
  21. 기록장치에 의해 재생될 수 있는 콘텐츠데이터를, 착탈가능한 제 1 정보기억매체에 기록하기 위한 전용애플리케이션 프로그램만이 기동가능하고, 전원투입 직후에 상기 전용애플리케이션 프로그램이 실행되는 기록장치에 있어서,
    사용자의 조작을 접수하는 접수수단과,
    상기 기록장치 내에 내장되어 있는 제 2 정보기억매체로부터 아카이브 파일을 검색하는 검색수단과,
    상기 검색수단에 의해 검색된 상기 아카이브 파일을 상기 제 2 정보기록매체로부터 판독하는 판독수단과,
    상기 판독수단에 의해 판독된 상기 아카이브 파일에 근거하여, 상기 콘텐츠데이터가 상기 기록장치에 의해 기록되는 상기 착탈가능한 제 1 정보기억매체에 복수의 데이터 파일을 복원하는 복원수단과,
    상기 제 2 정보기억매체에 보관되어 있는 상기 아카이브 파일을 소거하는 소거수단과,
    상기 접수수단에 의해 접수된 상기 사용자의 조작에 대응하여, 상기 검색수단, 상기 판독수단, 상기 복원수단 및 상기 소거수단을 제어하는 제어수단과,
    상기 콘텐츠데이터를 디코드하는 디코드수단을 포함하고,
    상기 검색수단은, 상기 디코드수단이 디코드불가능한 상기 아카이브 파일을 검색하는 것을 특징으로 하는 기록장치.
  22. 제 21항에 있어서,
    상기 검색수단은, 상기 제 2 정보기억매체의 소정의 디렉토리에 속하는 상기 아카이브 파일을 검색하는 것을 특징으로 하는 기록장치.
  23. 삭제
  24. 제 21항에 있어서,
    상기 검색수단은, 저작권정보가 부가되어 있지 않은 상기 아카이브 파일을 검색하는 것을 특징으로 하는 기록장치.
  25. 콘텐츠데이터가 기록장치에 의해 기록되는 외부 정보기억매체로부터 특정한 속성을 갖는 특정데이터 파일을 검색하는 검색부와,
    상기 검색부에 의해 검색된 상기 특정데이터 파일을 판독하는 판독부와,
    상기 판독부에 의해 판독된 상기 특정데이터 파일을 내부 정보기억매체에 아카이브 파일로서 기억하는 기억 콘트롤러와,
    상기 외부 정보기억매체에 아카이브 파일로서 기억되는 상기 특정데이터 파일을 소거하는 소거 콘트롤러와,
    사용자 지시에 따라서, 자동적으로, 상기 검색부가 상기 외부 정보기억매체로부터 상기 특정데이터 파일을 검색함과 동시에 상기 판독부가 검색된 상기 특정데이터 파일을 판독하고, 다시, 상기 기억 콘트롤러가 상기 특정데이터 파일을 상기 내부 정보기억매체에 기록함과 동시에 상기 소거 콘트롤러가 상기 특정데이터 파일을 상기 외부 정보기억매체로부터 소거하도록 제어하는 콘트롤러와,
    상기 콘텐츠데이터를 복호하는 디코더를 구비하되,
    상기 검색부는, 상기 디코더에 의해 복호불가능한 상기 특정데이터 파일을 검색하는 것을 특징으로 하는 기록장치.
  26. 제 25항에 있어서,
    상기 검색부는, 상기 외부 정보기억매체로부터 특정디렉토리에서 관리되는 특정데이터를 검색하는 것을 특징으로 하는 기록장치.
  27. 제 26항에 있어서,
    상기 검색부는, 다시, 상기 외부 정보기억매체로부터 저작권 관리되지 않는 특정데이터를 검색하는 것을 특징으로 하는 기록장치.
  28. 삭제
  29. 내부 정보기억매체로부터 특정한 속성을 갖는 특정데이터 파일을 검색하는 검색부와,
    상기 검색부에 의해 검색된 상기 특정데이터 파일을 판독하는 판독부와,
    상기 판독부에 의해 판독된 상기 특정데이터 파일을 외부 정보기억매체에 기억하는 기억 콘트롤러와,
    상기 내부 정보기억매체에 아카이브 파일로서 기억되는 상기 특정데이터 파일을 소거하는 소거 콘트롤러와,
    사용자 지시에 따라서, 자동적으로, 상기 검색부가 상기 내부 정보기억매체로부터 상기 특정데이터 파일을 검색함과 동시에 상기 판독부가 검색된 상기 특정데이터 파일을 판독하고, 다시, 상기 기억 콘트롤러가 상기 특정데이터 파일을 외부 정보기억매체에 기록함과 동시에 상기 소거 콘트롤러가 상기 특정데이터 파일을 내부 정보기억매체로부터 소거하도록 제어하는 콘트롤러와,
    콘텐츠데이터를 복호하는 디코더를 구비하되,
    상기 검색부는, 상기 디코더에 의해 복호불가능한 상기 특정데이터 파일을 검색하는 것을 특징으로 하는 기록장치.
  30. 제 29항에 있어서,
    상기 검색부는, 상기 외부 정보기억매체로부터 특정디렉토리에서 관리되는 특정데이터를 검색하는 것을 특징으로 하는 기록장치.
  31. 제 30항에 있어서,
    상기 검색부는, 다시, 상기 내부 정보기억매체로부터 저작권 관리되지 않은 특정데이터를 검색하는 것을 특징으로 하는 기록장치.
  32. 삭제
KR1020037003618A 2001-07-18 2002-07-04 기록장치 및 방법 KR100959596B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JPJP-P-2001-00217589 2001-07-18
JP2001217589A JP4830225B2 (ja) 2001-07-18 2001-07-18 記録装置および方法、記録媒体、並びにプログラム
PCT/JP2002/006799 WO2003009141A1 (fr) 2001-07-18 2002-07-04 Appareil et procédé d'enregistrement

Publications (2)

Publication Number Publication Date
KR20040028605A KR20040028605A (ko) 2004-04-03
KR100959596B1 true KR100959596B1 (ko) 2010-05-27

Family

ID=19051877

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020037003618A KR100959596B1 (ko) 2001-07-18 2002-07-04 기록장치 및 방법

Country Status (6)

Country Link
US (1) US7441124B2 (ko)
EP (1) EP1408411A4 (ko)
JP (1) JP4830225B2 (ko)
KR (1) KR100959596B1 (ko)
CN (1) CN1302391C (ko)
WO (1) WO2003009141A1 (ko)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003059172A (ja) * 2001-08-22 2003-02-28 Yamaha Corp ディジタルオーディオ録音再生装置
JP2004021996A (ja) * 2002-06-12 2004-01-22 Sony Corp 記録装置、サーバ装置、記録方法、プログラム、記憶媒体
US20040103085A1 (en) * 2002-11-22 2004-05-27 Ly Pierre O. System and process for automated management and deployment of web content
JP4343551B2 (ja) * 2003-02-25 2009-10-14 パイオニア株式会社 情報提供システムおよび情報提供プログラム等
US20050034154A1 (en) * 2003-08-08 2005-02-10 Yeh Sabrina Tai-Chen User interface for a video display device
US7251719B2 (en) * 2003-08-11 2007-07-31 Fujitsu Ten Limited Recording medium playback apparatus
ATE389867T1 (de) * 2004-04-30 2008-04-15 Harman Becker Automotive Sys Fahrzeugmultimediasystem und -verfahren zur aktivierung einer funktion eines solchen systems
JP2006178778A (ja) * 2004-12-22 2006-07-06 Sony Corp データ記録装置及びデータ記録システム
JP4841276B2 (ja) * 2006-03-22 2011-12-21 三洋電機株式会社 音楽信号蓄積装置および音楽信号蓄積プログラム
US20120202189A1 (en) * 2007-04-16 2012-08-09 Diagnostic Hybrids, Inc. Rapid, semi-automated method to detect respiratory virus infected cells in direct specimens
KR101345386B1 (ko) * 2007-09-19 2013-12-24 삼성전자주식회사 멀티미디어 데이터 편집 방법 및 장치
JP4521446B2 (ja) 2008-01-11 2010-08-11 株式会社沖データ 画像処理装置
TWI643185B (zh) * 2017-04-26 2018-12-01 瑞昱半導體股份有限公司 音訊處理裝置及方法
US11093105B2 (en) * 2018-12-18 2021-08-17 Spotify Ab Controlling automatic playback of media content

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000261584A (ja) 1999-03-10 2000-09-22 Sharp Corp 文書管理システム
JP2001084165A (ja) * 1999-09-10 2001-03-30 Casio Comput Co Ltd 画像処理装置および記憶媒体
JP2001101796A (ja) * 1999-09-29 2001-04-13 Sony Corp 記録再生方法及び記録再生装置

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2776929B2 (ja) * 1989-03-29 1998-07-16 株式会社日立製作所 カードデータ処理システム及びカードデータの処理方法
JPH07110782A (ja) * 1993-10-12 1995-04-25 Hitachi Ltd 電子ファイルの画像入力装置
US5729741A (en) * 1995-04-10 1998-03-17 Golden Enterprises, Inc. System for storage and retrieval of diverse types of information obtained from different media sources which includes video, audio, and text transcriptions
US5870756A (en) * 1996-04-26 1999-02-09 Fujitsu Limited Interchangeable storage medium containing program for processing data files thereupon to match a data file format to a computer system
JPH10145717A (ja) * 1996-11-05 1998-05-29 Canon Inc 電子カメラ
US6064880A (en) * 1997-06-25 2000-05-16 Nokia Mobile Phones Limited Mobile station having short code memory system-level backup and restoration function
US6987927B1 (en) * 1998-09-09 2006-01-17 Smartdisk Corporation Enhanced digital data collector for removable memory modules
US6735699B1 (en) * 1998-09-24 2004-05-11 Ryuichi Sasaki Method and system for monitoring use of digital works
JP4356178B2 (ja) * 1999-03-09 2009-11-04 ソニー株式会社 再生装置
EP1045386B1 (en) 1999-04-16 2007-12-19 Deutsche Thomson-Brandt Gmbh Method and apparatus for preventing illegal use of multimedia content
JP3539276B2 (ja) * 1999-05-14 2004-07-07 日本電気株式会社 携帯用情報端末装置
US7124094B1 (en) * 1999-10-27 2006-10-17 Konica Corporation Print system, service system, data server, master server, print client system and printer
JP2001184240A (ja) * 1999-12-27 2001-07-06 Canon Inc 記憶容量管理装置、記憶容量管理方法および記憶媒体
JP4529056B2 (ja) * 2000-03-21 2010-08-25 ソニー株式会社 情報処理装置および方法、記録媒体、並びに情報処理システム
CN2418520Y (zh) * 2000-03-31 2001-02-07 上海广电(集团)有限公司 便携式数码音乐播放机
US7058681B1 (en) * 2000-07-10 2006-06-06 Canon Information Systems, Inc. Data reproduction system and method
JP2002171434A (ja) * 2000-12-04 2002-06-14 Nikon Corp 電子カメラ

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000261584A (ja) 1999-03-10 2000-09-22 Sharp Corp 文書管理システム
JP2001084165A (ja) * 1999-09-10 2001-03-30 Casio Comput Co Ltd 画像処理装置および記憶媒体
JP2001101796A (ja) * 1999-09-29 2001-04-13 Sony Corp 記録再生方法及び記録再生装置

Also Published As

Publication number Publication date
CN1302391C (zh) 2007-02-28
EP1408411A4 (en) 2006-04-12
KR20040028605A (ko) 2004-04-03
US7441124B2 (en) 2008-10-21
JP2003030015A (ja) 2003-01-31
EP1408411A1 (en) 2004-04-14
US20040068605A1 (en) 2004-04-08
CN1476560A (zh) 2004-02-18
WO2003009141A1 (fr) 2003-01-30
JP4830225B2 (ja) 2011-12-07

Similar Documents

Publication Publication Date Title
KR100915767B1 (ko) 정보 처리 장치 및 방법
JP4038686B2 (ja) 記録装置、記録方法、記憶媒体、プログラムおよび通信装置
KR100913149B1 (ko) 기록장치 및 방법과, 통신장치 및 방법
KR100959596B1 (ko) 기록장치 및 방법
JP3797104B2 (ja) ディジタルオーディオ信号録音装置
JP4242553B2 (ja) ディジタルオーディオ信号録音装置
JP2003069551A (ja) 暗号化装置および方法、復号装置および方法、記録媒体、並びにプログラム
JP4618476B2 (ja) 再生装置および方法、記録媒体、並びにプログラム
JP4586317B2 (ja) 記録再生装置および方法、記録媒体、並びにプログラム
JP2003022656A (ja) 記録装置および方法、記録媒体、並びにプログラム
JP2003087239A (ja) 通信システム、通信装置および方法、記録媒体、並びにプログラム
JP2003030966A (ja) 再生装置および方法、記録媒体、並びにプログラム
JP2006185589A (ja) データ転送システム、データ転送方法、およびデータ転送プログラム
JP2003066996A (ja) 記録再生装置および方法、記録媒体、並びにプログラム
JP2003022606A (ja) 記録再生装置および方法、記録媒体、並びにプログラム
JP2003030967A (ja) 記録装置および方法、記録媒体、並びにプログラム
JP2003022663A (ja) 記録装置および方法、記録媒体、並びにプログラム
JP2003022205A (ja) 記録装置および方法、記録媒体、並びにプログラム
JP2008021385A (ja) コンテンツ記録方法およびコンテンツ記録装置
JP2004039114A (ja) 記録再生装置、記録方法、プログラム、記録媒体

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
J201 Request for trial against refusal decision
AMND Amendment
E90F Notification of reason for final refusal
B701 Decision to grant
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee