JP2003233976A - Data reproducing device and data reproducing control method - Google Patents
Data reproducing device and data reproducing control methodInfo
- Publication number
- JP2003233976A JP2003233976A JP2002333116A JP2002333116A JP2003233976A JP 2003233976 A JP2003233976 A JP 2003233976A JP 2002333116 A JP2002333116 A JP 2002333116A JP 2002333116 A JP2002333116 A JP 2002333116A JP 2003233976 A JP2003233976 A JP 2003233976A
- Authority
- JP
- Japan
- Prior art keywords
- segment
- data
- reproduction
- rap
- index
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
Landscapes
- Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
Description
【0001】[0001]
【発明の属する技術分野】本発明は、記憶装置に記憶さ
れた映像/音声等のデータをユーザの操作に応じて再生
するデータ再生装置及びその制御方法に関するものであ
る。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a data reproducing device for reproducing video / audio data stored in a storage device in accordance with a user's operation and a control method thereof.
【0002】[0002]
【従来の技術】従来、安価で大容量の記憶装置として
は、磁気テープ、磁気テープのオートチェンジャ、リム
ーバブルディスクのオートチェンジャ等が使用されてい
る。2. Description of the Related Art Conventionally, magnetic tapes, magnetic tape autochangers, removable disk autochangers, and the like have been used as inexpensive and large-capacity storage devices.
【0003】これらの記憶装置は大容量ではあるが、ラ
ンダムアクセス時の応答時間に問題がある。例えばテー
プでは、必要なデータが記録されている位置までテープ
を早送り/巻き戻しをしなければならない。またオート
チェンジャでは、ドライブにマウントされていないメデ
ィアに必要なデータが記録されている場合にはメディア
の交換を行なわなければならない。Although these storage devices have a large capacity, they have a problem in response time during random access. With a tape, for example, the tape must be fast forwarded / rewound to the position where the required data is recorded. Also, in the autochanger, if the required data is recorded on the medium not mounted in the drive, the medium must be replaced.
【0004】そこで、一般に知られている階層記憶の概
念を採り入れ、転送能力が高くランダムアクセス性に優
れたハードディスク等を一次記憶装置とし、上記の大容
量記憶装置を二次記憶装置とする階層記憶装置が考案さ
れている。Therefore, a generally known concept of hierarchical storage is adopted, and a hard disk or the like having a high transfer capability and excellent random accessibility is used as a primary storage device, and the above-mentioned mass storage device is used as a secondary storage device. A device has been devised.
【0005】一般にこのような階層記憶装置では、一次
記憶装置は二次記憶装置に格納されているデータのキャ
ッシュまたは先読みバッファとして働く。なお、以降で
は一次記憶装置をキャッシュと呼び、二次記憶装置をラ
イブラリと呼ぶ。Generally, in such a hierarchical storage device, the primary storage device acts as a cache or prefetch buffer for the data stored in the secondary storage device. In the following, the primary storage device will be called a cache, and the secondary storage device will be called a library.
【0006】階層記憶装置では、格納されているデータ
にアクセスする際には、まず必要なデータがキャッシュ
に格納されているかどうか検索する。もし格納されてい
れば、キャッシュ上のデータにアクセスする。もし格納
されていなければ、ライブラリ上のデータにアクセスし
て、アクセスしたデータをキャッシュにコピーしてお
く。When accessing the stored data, the hierarchical storage device first searches whether or not the required data is stored in the cache. If so, access the data in the cache. If it is not stored, access the data in the library and copy the accessed data to the cache.
【0007】キャッシュにデータを格納する際に、割り
付ける領域が既にキャッシュ上にない場合には、何らか
の規則に従いキャッシュ上のデータを廃棄して新たなデ
ータに置き換える必要がある。このキャッシュ置換えア
ルゴリズムとしては、(a)LRU(Least Re
cently Used):最後にアクセスされてから
の経過時間が最長のものを廃棄
(b)FIFO(First In First Ou
t):キャッシュに格納されてからの経過時間が最長の
ものを廃棄
(c)LFU(Least Frequently U
sed):アクセス回数の最も少ないものを廃棄
等がある。これらの方式は一般的なデータアクセスに対
して効率良く動作することが経験的に知られており、広
く用いられている。When storing data in the cache, if the area to be allocated is not already in the cache, it is necessary to discard the data in the cache and replace it with new data according to some rule. The cache replacement algorithm is (a) LRU (Last Re
cently Used): Discard the one with the longest elapsed time since the last access (b) FIFO (First In First Ou)
t): Discard the one that has been stored for the longest time in the cache (c) LFU (Least Frequency U)
sed): The one with the smallest access count is discarded. It is empirically known that these methods operate efficiently for general data access, and they are widely used.
【0008】また、ライブラリとキャッシュの間での転
送単位としては、データ単位で管理する場合と、データ
を分割したセグメント(あるいはブロックと呼ばれる)
単位で管理する場合とがある。As a transfer unit between the library and the cache, a data unit is managed and a segment (or block) in which data is divided is used.
It may be managed in units.
【0009】さらに特殊なキャッシュ管理方式として、
データのオープン時にそのデータ全てをキャッシュに格
納する方式や、データの先頭の部分のみを常にキャッシ
ュに格納しておく方式がある。As a more special cache management system,
There are a method of storing all the data in the cache when the data is opened, and a method of always storing only the head portion of the data in the cache.
【0010】[0010]
【発明が解決しようとする課題】ここで、例えば、動画
像データや音声データのように、時間の経過とともにデ
ータを順に取り出すリアルタイムストリームデータを扱
う場合、一旦データの転送を開始すると次にデータ転送
を停止するまでにアクセスされるデータとその順序が予
測できる。When dealing with real-time stream data, such as moving image data and audio data, in which data is sequentially extracted with the passage of time, once data transfer is started, the next data transfer is performed. The data to be accessed and its order can be predicted by the time you stop.
【0011】このように連続したセグメントを順次転送
する場合には、あるセグメントをキャッシュから転送し
ている間に以降に使用されるセグメントをキャッシュに
格納することにより、以降のセグメントにアクセスする
際の応答時間が見かけ上なくなるか、あるいは応答時間
が小さくなることが期待できる。In the case of sequentially transferring consecutive segments in this manner, while storing a certain segment from the cache, a segment to be used thereafter is stored in the cache so that the subsequent segment can be accessed. It can be expected that the response time will disappear apparently or the response time will decrease.
【0012】その一方で、順次転送の開始時点では、順
次転送の先頭を含むセグメントがキャッシュに格納され
ていなければ、二次記憶装置に格納されているセグメン
トにアクセスするまでの時間がそのまま応答時間とな
る。On the other hand, at the start of the sequential transfer, if the segment including the beginning of the sequential transfer is not stored in the cache, the time until the segment stored in the secondary storage device is accessed is the response time. Becomes
【0013】したがって、例えばリアルタイムストリー
ムデータの途中の任意の位置に対してランダムアクセス
を行う場合に、このランダムアクセスポイントを含むセ
グメントがキャッシュに格納されていなければ、応答時
間が長くなってしまう。すなわち、このような用途にお
いては、ランダムアクセスポイントを含むセグメントの
キャッシュヒット率がユーザの使い勝手に大きな影響を
与える。Therefore, for example, when performing random access to an arbitrary position in the middle of real-time stream data, the response time becomes long if the segment including the random access point is not stored in the cache. That is, in such an application, the cache hit rate of the segment including the random access point greatly affects the usability of the user.
【0014】ところが、このような用途において従来の
キャッシュ置換えアルゴリズムを使用した場合、ランダ
ムアクセスポイントを含むセグメントは以下の様に扱わ
れる。
(a)LRUでは、ランダムアクセスポイントを含むセ
グメントは、それ以降に順次アクセスされたセグメント
よりも過去に参照されたことになるので、廃棄対象とな
る優先度が高い。
(b)FIFOでは、ランダムアクセスポイントを含む
セグメントは、それ以降に順次アクセスされたセグメン
トよりも過去に領域を割り付けされたことになるので、
廃棄対象となる優先度が高い。
(c)LFUでは、ランダムアクセスポイントを含むセ
グメントかどうかに関わらず、使用頻度の低いセグメン
トが廃棄対象となる優先度が高い。したがって、ランダ
ムアクセスポイントを含まないが使用頻度が高いセグメ
ントより、ランダムアクセスポイントを含むが使用頻度
が低いセグメントの方が、廃棄対象となる優先度が高
い。However, when the conventional cache replacement algorithm is used in such an application, the segment including the random access point is treated as follows. (A) In LRU, a segment including a random access point is referred to earlier than a segment that is sequentially accessed after that, and thus has a high priority to be discarded. (B) In the FIFO, the segment including the random access point has been allocated a region earlier than the segments sequentially accessed thereafter,
High priority for disposal. (C) In the LFU, regardless of whether it is a segment including a random access point, a segment having a low frequency of use has a high priority for being discarded. Therefore, a segment that includes a random access point but is used less frequently has a higher priority to be discarded than a segment that does not include a random access point but is used frequently.
【0015】つまり、本来キャッシュ全体のヒット率を
向上させることを目的としている従来のキャッシュ置換
えアルゴリズムでは、上述した用途において、ランダム
アクセスポイントを含むセグメントのキャッシュヒット
率を上げることはできず、ランダムアクセス時の応答時
間を小さくすることはできない。That is, in the conventional cache replacement algorithm, which is originally intended to improve the hit rate of the entire cache, the cache hit rate of the segment including the random access point cannot be increased in the above-mentioned use, and the random access The time response time cannot be reduced.
【0016】このような事情を鑑み、本発明は、階層記
憶装置において、キャッシュ全体のヒット率の向上を目
的とするのではなく、ランダムアクセスポイントを含む
セグメントのヒット率を向上させることにより、ランダ
ムアクセス時の応答時間を小さくしてユーザの使い勝手
を良くすることを目的とする。In view of such a situation, the present invention does not aim at improving the hit rate of the entire cache in the hierarchical storage device, but rather improves the hit rate of the segment including the random access points, so that The purpose is to reduce the response time at the time of access and improve the usability for the user.
【0017】さらに、上記のような動画像データや音声
データを扱う用途においてランダムアクセス時のユーザ
の使い勝手を良くするためには、データの記憶装置側で
応答時間に関して対策を施すだけではなく、データ再生
の操作手段においてユーザが目的のランダムアクセスポ
イントを簡単に指定できることが重要である。Further, in order to improve the usability of the user at the time of random access in the above-mentioned use of moving image data and audio data, not only measures are taken regarding the response time on the data storage device side, It is important that the user can easily specify a target random access point in the reproduction operation means.
【0018】例えばユーザがそのような操作を行なう機
器として、ビデオやコンパクトディスクをはじめとする
記録/再生装置は、現在ほとんどの家庭に普及してい
る。また、ネットワークから音声情報や、映像情報を読
み出し、それらを再生する再生装置も普及しつつある。For example, as a device for the user to perform such an operation, a recording / reproducing device such as a video or a compact disc is now widely used in most homes. In addition, playback devices that read audio information and video information from a network and play them back are becoming widespread.
【0019】このような再生装置においては、既存の映
像データや、ユーザが録画した映像データが収められた
記憶媒体から、ユーザが所望の番組や場面を早送り再生
などの手段を用いて探すという煩雑な操作が必要にな
る。In such a reproducing apparatus, it is complicated that the user searches for a desired program or scene from a storage medium in which existing video data or video data recorded by the user is stored by means of fast-forward reproduction. Operations are required.
【0020】そのような煩雑な操作を解決する方法とし
て、ビデオ再生装置では、ユーザが再生したい番組や場
面を探しやすいように、VISS(VHS Index
Search System)やVASS(VHS
Addess SearchSystem)のように、
インデックスを記憶媒体に記録する方法が利用されてい
る。このような手法を用いることにより、ユーザの望む
再生開始位置を記憶媒体に記録し、あとでその再生開始
位置を呼び出すことができる。As a method of solving such a complicated operation, in the video reproducing apparatus, the VISS (VHS Index) is provided so that the user can easily find the program or scene to be reproduced.
Search System) and VASS (VHS)
Like Add Address Search System)
A method of recording the index on a storage medium is used. By using such a method, the reproduction start position desired by the user can be recorded in the storage medium, and the reproduction start position can be recalled later.
【0021】しかし、これらの方法は、ユーザが自らの
判断による操作によって再生開始インデックスを付加す
るものであるため、ユーザが明示的にインデックスを付
加しなければならないという、冗長な操作ステップが発
生する。また、記録された再生開始インデックスを一覧
から選択するといったことが不可能である。However, in these methods, since the user adds the reproduction start index by an operation based on his / her own judgment, a redundant operation step occurs that the user must explicitly add the index. . Moreover, it is impossible to select the recorded reproduction start index from the list.
【0022】そこで、本発明は、データ再生装置におい
て、ユーザが再生開始インデックスとして使用する可能
性のある箇所を検出し、インデックスを付加する作業を
自動化し、容易にそれらを扱う手段を提供することをも
目的とする。Accordingly, the present invention provides a means for automating the work of detecting a portion that a user may use as a reproduction start index and adding the index in the data reproducing apparatus, and providing a means for easily handling them. Also for the purpose.
【0023】[0023]
【課題を解決するための手段】上記課題を解決するため
に、本発明は、入力された音声データと映像データの一
方または両方を再生出力するための出力手段と、この出
力手段に対し、ユーザ入力に従って、再生、停止、また
は再生位置の前方/後方への移動を指示するための指示
手段と、この指示手段が受けたユーザ入力が所定のパタ
ーンである場合に、該ユーザ入力に基づいて決定される
再生位置に関する情報を再生開始インデックスとして記
憶手段に記録する記録手段とを備えることを特徴とす
る。In order to solve the above-mentioned problems, the present invention provides an output means for reproducing and outputting one or both of input audio data and video data, and a user for the output means. Instructing means for instructing reproduction, stop, or movement of the reproduction position forward / backward according to the input, and when the user input received by the instructing means is a predetermined pattern, determined based on the user input Recording means for recording information on the reproduced position to be recorded in the storage means as a reproduction start index.
【0024】ここで、実際には、前記ユーザ入力が所定
時間以上の連続した再生を示す場合に、該再生を開始し
た位置が、ユーザの所望する場面である可能性が高いと
判断して、前記再生開始インデックスとして記録するこ
とが好ましい。Here, in reality, when the user input indicates continuous reproduction for a predetermined time or more, it is judged that the position where the reproduction is started is highly likely to be a scene desired by the user, It is preferable to record as the reproduction start index.
【0025】上記の再生開始インデックス(のリスト)
の記憶手段は、ネットワークに接続された外部の機器に
持っても良いし、本データ再生装置内に持っても良い
し、音声/映像データが記録されている取り外し可能な
外部の記憶メディアに持っても良い。(List of) the above playback start index
The storage means may be provided in an external device connected to the network, in the data reproducing device, or in a removable external storage medium in which audio / video data is recorded. May be.
【0026】上記の音声/映像データは、ネットワーク
に接続された外部の機器から入力しても良いし、取り外
し可能な外部の記憶メディアから入力しても良い。The above audio / video data may be input from an external device connected to the network, or may be input from a removable external storage medium.
【0027】また、本発明に係るデータ再生制御方法
は、入力された音声データと映像データの一方または両
方を再生装置へ再生出力し、この再生出力に対し、ユー
ザ入力に従って、再生、停止、または再生位置の前方/
後方への移動を指示し、この指示が所定のパターンであ
る場合に、該ユーザ入力に基づいて決定される再生位置
に関する情報を再生開始インデックスとして記憶装置に
記録するようにしたことを特徴とする。Further, the data reproduction control method according to the present invention reproduces and outputs one or both of the input audio data and video data to the reproduction device, and reproduces, stops, or outputs the reproduced output according to the user input. In front of the playback position /
It is characterized in that a backward movement is instructed, and when the instruction has a predetermined pattern, information regarding a reproduction position determined based on the user input is recorded in a storage device as a reproduction start index. .
【0028】本発明により記録された複数の再生開始イ
ンデックスのそれぞれに対し、重要度を付与することも
できる。例えば、再生開始インデックスが選択され(且
つそこから再生が開始され)た回数に応じて、当該イン
デックスの、リスト内での重要度を上げたり、再生開始
インデックスが記録され(既に記録された状態であれば
再生開始の為に選択され)た時刻の新鮮度に応じて、当
該インデックスの、リスト内での重要度を上げたりす
る。The degree of importance can be given to each of the plurality of reproduction start indexes recorded according to the present invention. For example, depending on the number of times the playback start index is selected (and playback is started from there), the importance of the index in the list is increased, or the playback start index is recorded (in the state already recorded). If so, the importance of the index in the list is increased according to the freshness of the time selected for starting reproduction.
【0029】上記の複数の再生開始インデックスには、
本発明により自動的に検出、生成されたものの他に、ユ
ーザにより指定された任意の再生位置を含むようにして
もよい。The above-mentioned plurality of reproduction start indexes include
In addition to the one automatically detected and generated by the present invention, an arbitrary reproduction position designated by the user may be included.
【0030】上記のように記録された再生開始インデッ
クスの内容を編集、削除するための手段をさらに設けて
も良い。Means for editing and deleting the contents of the reproduction start index recorded as described above may be further provided.
【0031】本発明によるデータ再生装置は、次のよう
なシステムを構成することも可能である。本システム
は、それぞれ複数のセグメントから成る複数のデータが
格納されているライブラリ用記憶装置とこのライブラリ
用記憶装置に格納されている複数のセグメントのうちの
一部を格納するためのキャッシュ用記憶装置とを備える
階層記憶サーバと、データの再生、停止、または再生位
置の前方/後方への移動を示すユーザ入力に従って前記
階層記憶サーバから所望のデータの所望の部分を受信し
再生出力するデータ再生クライアントとから構成される
システムであって、前記階層記憶サーバは、あるセグメ
ントが将来ランダムアクセスされるポイントを含んでい
る可能性が、どの程度あるかを予測するための、ランダ
ムアクセスポイントセグメント情報を記憶するサーバ側
記憶手段と、このサーバ側記憶手段に記憶されたランダ
ムアクセスポイントセグメント情報に基づいて、前記キ
ャッシュ用記憶装置に格納するセグメントの選択を制御
する手段と、前記データ再生クライアントから要求され
た前記所望のデータの前記所望の部分が前記キャッシュ
用記憶装置に格納されている場合は前記キャッシュ用記
憶装置から、格納されていない場合は前記ライブラリ用
記憶装置から読み出して送出する手段とを備え、前記デ
ータ再生クライアントは、前記ユーザ入力が所定のパタ
ーンである場合に再生開始インデックスとして記録され
る、該ユーザ入力に基づいて決定される再生位置に関す
る情報を記憶するクライアント側記憶手段と、このクラ
イアント側記憶手段に記憶された複数の再生開始インデ
ックスを提示してユーザに所望の再生位置を選択させ、
選択された再生位置を含むセグメントを前記階層記憶サ
ーバへ要求する手段とを備えたことを特徴とする。The data reproducing apparatus according to the present invention can also configure the following system. This system is a storage device for a library that stores a plurality of data each composed of a plurality of segments and a storage device for a cache that stores a part of the plurality of segments stored in the storage device for a library. And a data reproducing client for receiving and reproducing and outputting a desired portion of desired data from the hierarchical storage server according to a user input indicating reproduction, stop, or forward / backward movement of a reproduction position of data. And the hierarchical storage server stores random access point segment information for predicting how likely it is that a segment will include points that will be randomly accessed in the future. Server side storage means and the random access stored in the server side storage means. Means for controlling selection of a segment to be stored in the cache storage device based on point segment information; and the desired portion of the desired data requested by the data reproduction client is stored in the cache storage device. If the user input is a predetermined pattern, the data reproducing client reads the data from the cache memory device if it is stored, and reads it from the library memory device if it is not stored. Presenting to the user a client-side storage unit that stores information regarding a reproduction position determined based on the user input, which is recorded as a reproduction start index, and a plurality of reproduction start indexes stored in the client-side storage unit. Select the desired playback position,
Means for requesting the segment including the selected reproduction position to the hierarchical storage server.
【0032】[0032]
【発明の実施の形態】以下図面を参照しながら、本発明
の実施形態について説明する。BEST MODE FOR CARRYING OUT THE INVENTION Embodiments of the present invention will be described below with reference to the drawings.
【0033】まず最初に本実施形態に係る階層記憶装置
の構成の概要について、図1を参照しながら説明する。
入出力部11は本装置の外部とのインターフェースにあ
たる部分である。本装置がホスト計算機に接続されて動
作する機器として構成される場合には、入出力部11は
ホスト計算機との接続インターフェースとその制御ソフ
トウェアを含み、ホスト計算機との間で要求とデータの
送受信を行なう。本装置がファイルサーバとして動作す
る計算機として構成される場合には、入出力部11は、
ネットワークインターフェースとその制御ソフトウェア
を含み、クライアントとの間で要求とデータの送受信を
行なう。First, an outline of the configuration of the hierarchical storage device according to this embodiment will be described with reference to FIG.
The input / output unit 11 is a portion that serves as an interface with the outside of the apparatus. When this device is configured as a device that operates by being connected to a host computer, the input / output unit 11 includes a connection interface with the host computer and its control software, and transmits / receives requests and data to / from the host computer. To do. When this device is configured as a computer that operates as a file server, the input / output unit 11
It includes a network interface and its control software, and sends and receives requests and data with clients.
【0034】二次記憶装置(以下ライブラリと呼ぶ)1
4は、安価で大容量を実現するために、磁気テープ装
置、あるいは磁気テープ装置のオートチェンジャ、ある
いはリムーバブルディスクのオートチェンジャで構成さ
れる。ライブラリには、本実施形態の階層記憶装置に格
納する全てのデータをセグメントに分割して格納する。Secondary storage device (hereinafter referred to as library) 1
In order to realize a large capacity at a low cost, 4 is composed of a magnetic tape device, an automatic changer of a magnetic tape device, or an automatic changer of a removable disk. In the library, all the data stored in the hierarchical storage device of this embodiment is divided into segments and stored.
【0035】セグメントとは、データをシステム固有の
大きさに分割した管理単位である。セグメントの大きさ
は、ライブラリとキャッシュ用記憶装置の総容量と転送
速度、データを利用する際の転送速度等を考慮して定め
られる。A segment is a management unit obtained by dividing data into a size peculiar to the system. The size of the segment is determined in consideration of the total capacity and transfer rate of the library and the cache storage device, the transfer rate when data is used, and the like.
【0036】一次記憶装置(以下キャッシュと呼ぶ)1
5は、ライブラリよりも高価で小容量ではあるが、ラン
ダムアクセス性が高くアクセス時の応答時間が小さいハ
ードディスク装置で構成される。キャッシュにはライブ
ラリに格納されているセグメントのうちの一部のセグメ
ントを一時的に格納しておく。キャッシュ上のセグメン
トは、ライブラリに格納されているセグメントをコピー
したものである。ただし、セグメントの書き込みが行な
われた場合には、一時的にキャッシュ上のセグメントの
方が新しい内容となり、ライブラリの対応するセグメン
トと内容が異なることもある。Primary storage device (hereinafter referred to as cache) 1
5 is a hard disk device which is more expensive and has a smaller capacity than the library, but has a high random accessibility and a short response time at the time of access. The cache temporarily stores some of the segments stored in the library. The segment on the cache is a copy of the segment stored in the library. However, when the segment is written, the segment on the cache temporarily has a new content, and the content may differ from the corresponding segment in the library.
【0037】図1における要求処理部12、セグメント
転送管理部13、RAP候補検出部16、廃棄セグメン
ト選択部17、および格納セグメント選択部18をまと
めて、制御手段として構成することが可能である。制御
手段は、ライブラリとキャッシュの間のセグメント転送
を制御して、平均応答時間の短縮や総転送能力の向上な
ど、階層記憶装置として重視される性能を向上させるよ
うに動作する。本実施形態では、キャッシュ上に格納す
るセグメントやキャッシュ上から廃棄するセグメントを
選択する際に、それらの判断の材料の一つとしてRAP
セグメント情報記憶部19に記憶されたRAPセグメン
ト情報を用いる。The request processing unit 12, the segment transfer management unit 13, the RAP candidate detection unit 16, the discard segment selection unit 17, and the storage segment selection unit 18 in FIG. 1 can be collectively configured as control means. The control unit controls the segment transfer between the library and the cache to operate to improve the performance that is important as a hierarchical storage device, such as shortening the average response time and improving the total transfer capacity. In this embodiment, when selecting a segment to be stored in the cache or a segment to be discarded from the cache, the RAP is one of the materials for the judgment.
The RAP segment information stored in the segment information storage unit 19 is used.
【0038】なお、この制御手段を構成する各部は、ソ
フトウェアによっても、ハードウェアによっても、ソフ
トウェアとハードウェアの組合せによっても、実現する
ことが可能である。ソフトウェアにより実現する場合、
上記各部の機能を実行するように記述されたプログラム
を、そのプログラムを記憶した媒体から汎用のコンピュ
ータに読み込んでインストールすることにより、本装置
を実現することができる。Each unit constituting the control means can be realized by software, hardware, or a combination of software and hardware. When realized by software,
The present apparatus can be realized by loading a program described to execute the function of each unit described above from a medium storing the program into a general-purpose computer and installing the program.
【0039】RAPセグメント情報は、各セグメントが
将来ランダムアクセスされる可能性を推測するために、
過去の要求からランダムアクセスに関する情報を蓄積し
たものである。The RAP segment information is used to estimate the possibility that each segment will be randomly accessed in the future.
It is information that accumulates information on random access from past requests.
【0040】また、RAPセグメントとは、RAPセグ
メント情報に基づいて将来ランダムアクセスされるポイ
ントを含む可能性が高いと判定されるセグメントのこと
である。The RAP segment is a segment determined to have a high possibility of including points randomly accessed in the future based on the RAP segment information.
【0041】制御手段は、記憶されたRAPセグメント
情報を参照することにより、各セグメントがRAPセグ
メントであるか否かの判定をしたり、あるいは、各セグ
メントが将来ランダムアクセスされる可能性を数値とし
て得る。The control means refers to the stored RAP segment information to determine whether or not each segment is a RAP segment, or the numerical value indicates the possibility that each segment will be randomly accessed in the future. obtain.
【0042】次に、本実施形態に係るキャッシュ上のセ
グメントの置換え方式について説明する。制御手段は、
入出力部11を介して外部からアクセス要求を受信する
と、要求処理部12でその要求を解析して、指定された
ポイントを含むセグメントがキャッシュ15に格納され
ている場合は、そのセグメントをアクセスする。格納さ
れていない場合は、そのセグメントをライブラリ14か
らキャッシュ15へコピーするためのセグメント転送要
求を、セグメント転送管理部13に出す。セグメント転
送管理部13は、複数のセグメント転送要求をスケジュ
ーリングして、ライブラリに格納されているセグメント
をキャッシュにコピーする。要求処理部12がセグメン
トへアクセスするのは、セグメントのコピーの終了後で
も良いし、セグメントのコピーとアクセスをパイプライ
ン的に並行に処理してもよい。Next, the method of replacing the segment on the cache according to this embodiment will be described. The control means is
When an access request is received from the outside via the input / output unit 11, the request processing unit 12 analyzes the request, and if the segment including the designated point is stored in the cache 15, the segment is accessed. . If it is not stored, a segment transfer request for copying the segment from the library 14 to the cache 15 is issued to the segment transfer management unit 13. The segment transfer management unit 13 schedules a plurality of segment transfer requests and copies the segments stored in the library to the cache. The request processing unit 12 may access the segment after the segment copy is completed, or the segment copy and access may be processed in parallel in a pipeline manner.
【0043】制御手段では、新たにセグメントをキャッ
シュに格納する必要が生じた際に、キャッシュ上に必要
な大きさの領域を割り当てる。必要な大きさの領域が空
いていない場合には、キャッシュに格納されている他の
セグメントを廃棄して必要な大きさの領域を確保する。
この時、セグメント転送管理部13は廃棄セグメント選
択部17に廃棄候補の選択を要求する。廃棄セグメント
選択部17は、記憶部19のRAPセグメント情報を参
照して、その参照結果を用いて廃棄優先順位を決定す
る。そして廃棄優先順位がもっとも高いセグメントを廃
棄候補として選択して、セグメント転送管理部13にそ
の結果を伝える。When it becomes necessary to store a new segment in the cache, the control means allocates an area of the required size in the cache. If the area of the required size is not empty, the other segments stored in the cache are discarded and the area of the required size is secured.
At this time, the segment transfer management unit 13 requests the discard segment selection unit 17 to select a discard candidate. The discard segment selection unit 17 refers to the RAP segment information in the storage unit 19 and determines the discard priority order using the reference result. Then, the segment having the highest discard priority is selected as a discard candidate, and the segment transfer management unit 13 is notified of the result.
【0044】廃棄優先順位を決定するキーにはRAPセ
グメント情報以外の情報もあり得るが、それらを組み合
わせた例は以降の詳細な実施例で示す。Information other than the RAP segment information may be used as the key for determining the discard priority order, but an example in which these are combined will be shown in the detailed embodiments below.
【0045】なお、全てのセグメントについて廃棄優先
順位を決定する必要はなく、順位がもっとも高いセグメ
ントを決定できる様に一部のセグメントの順位のみを計
算しても良い。It should be noted that it is not necessary to determine the discard priority order for all segments, and only the order of some segments may be calculated so that the highest priority segment can be determined.
【0046】また、廃棄優先順位の決定に必要な計算
は、廃棄セグメント選択部17が呼ばれた(廃棄候補の
選択を要求された)時点で全ての計算を行なうのではな
く、廃棄優先順位を決定するキーに変化があった時点で
随時計算しておいてもよい。Further, the calculation necessary for determining the discard priority order is not performed at the time when the discard segment selection unit 17 is called (when the selection of the discard candidate is requested), but the discard priority order is determined. It may be calculated at any time when the key to be determined changes.
【0047】以上により、以降にランダムアクセスが行
なわれた時点でそのランダムアクセスポイントを含むセ
グメントがキャッシュ上に残っている確率が高くなる。As described above, the probability that the segment including the random access point remains in the cache becomes high at the time of subsequent random access.
【0048】キャッシュにセグメントを格納するのは、
そのセグメントに含まれるデータにアクセスする時点だ
けではない。例えば、その後アクセスされる可能性の高
いセグメントを前もってキャッシュ上に先読みしておく
ことも有用である。そこで制御手段には格納セグメント
選択部18を用意する。Storing a segment in the cache is
It is not only the time to access the data contained in that segment. For example, it is also useful to read ahead in the cache the segments that are likely to be accessed thereafter. Therefore, a storage segment selection unit 18 is prepared as the control means.
【0049】格納セグメント選択部18では、アクセス
要求で指定されたポイントを含むか否かに関係なく、キ
ャッシュ上に存在しないセグメントのなかから先読みす
べきセグメントの候補を選択し、その先読み候補をキャ
ッシュに格納するべきか否かを判断して、セグメント転
送要求をセグメント転送管理部13に出す。The storage segment selection unit 18 selects a segment candidate to be prefetched from the segments that do not exist in the cache regardless of whether or not the point designated by the access request is included, and caches the prefetching candidate. It is determined whether or not it should be stored in the segment transfer management unit 13 and a segment transfer request is sent to the segment transfer management unit 13.
【0050】例えば、openされているデータとop
enされていないデータとでは、openされているデ
ータの方が近い将来にアクセスされる可能性が高いと推
測できる。そこで、格納セグメント選択部18では、o
penされているデータに属するセグメントでかつラン
ダムアクセスポイントとなる可能性の高いセグメント
を、先読み候補として選択するようにすると良い。この
時、格納セグメント選択部18は、記憶部19のRAP
セグメント情報を参照して、その参照結果を用いて先読
み候補の選択および先読みの可否の判断を行なう。For example, open data and op
It can be inferred that open data is more likely to be accessed in the near future than non-encoded data. Therefore, in the storage segment selection unit 18, o
A segment that belongs to the data that has been penned and that is likely to be a random access point may be selected as a prefetch candidate. At this time, the storage segment selection unit 18 determines that the RAP of the storage unit 19 is
The segment information is referred to, and the reference result is used to select the prefetch candidate and determine whether or not the prefetch is possible.
【0051】なお、先読み候補の選択および先読みの可
否の判断のキーとしては、RAPセグメント情報だけで
なく、各データのopen/closeの状態など、複
数のキーが含まれ得る。先読み候補の選択および先読み
の可否の判断は、それらのキーに変化があった時点で随
時行われる。Note that the keys for selecting the prefetching candidates and determining whether or not the prefetching can include not only the RAP segment information but also a plurality of keys such as the open / close state of each data. The selection of the prefetching candidate and the determination of whether or not the prefetching is possible are performed at any time when those keys are changed.
【0052】以上により、openされたデータに属す
るセグメントのうち、ランダムアクセスされる可能性の
高いポイントを含むセグメントが、実際にアクセスされ
る以前にキャッシュに先読みされる可能性が生じる。し
たがって、以降にランダムアクセスが行なわれた時点で
そのポイントを含むセグメントがキャッシュ上に既に格
納されている確率が高くなる。As described above, among the segments belonging to the opened data, the segment including the point that is likely to be randomly accessed may be prefetched in the cache before being actually accessed. Therefore, at the time of subsequent random access, there is a high probability that the segment including the point is already stored in the cache.
【0053】次に、RAPセグメント情報に蓄積すべき
ランダムアクセスに関する情報を得る方法について説明
する。本装置では、クライアントまたはホスト計算機の
要求から、ランダムアクセスに関する情報を得る。制御
手段は入出力部11を介して各種の要求を受信すると、
その要求はRAP候補検出部16に通知される。RAP
候補検出部16では、その要求およびそれまでの要求の
履歴を参照して、RAP候補が存在するかどうかを調べ
る。RAP候補を検出した場合には、そのポイントを含
むセグメントのRAPセグメント情報を更新する。Next, a method for obtaining information on random access to be stored in the RAP segment information will be described. In this device, information on random access is obtained from the request of the client or the host computer. When the control means receives various requests via the input / output unit 11,
The request is notified to the RAP candidate detection unit 16. RAP
The candidate detection unit 16 refers to the request and the history of requests so far to check whether or not there is a RAP candidate. When a RAP candidate is detected, the RAP segment information of the segment including the point is updated.
【0054】RAP候補は単純にseek要求で指定さ
れたポイントとしても良いが、RAPセグメント情報で
必要となるランダムアクセスに関する情報を得るため
に、本発明を実施するシステム全体の用途やユーザの操
作の傾向を考慮して定められた条件を満たすポイントを
RAP候補とすることが望ましい。The RAP candidate may be simply the point designated by the seek request, but in order to obtain information on the random access required for the RAP segment information, the use of the entire system implementing the present invention and the operation of the user are performed. It is desirable that points that satisfy the conditions determined in consideration of the tendency be set as RAP candidates.
【0055】以下では、RAP候補を検出するためのヒ
ューリスティックな方法を幾つか挙げる。ランダムアク
セスを行なう場合には必ずそのポイントへのseek要
求がクライアントまたはホスト計算機から出される。In the following, some heuristic methods for detecting RAP candidates are listed. When performing random access, a seek request to the point is always issued from the client or the host computer.
【0056】一つ目の方法では、このseek要求で指
定されたポイントを含むセグメントのRAPセグメント
情報を更新する。図2(a)にこの条件を満たすポイン
トの例を示す。In the first method, the RAP segment information of the segment including the point designated by this seek request is updated. FIG. 2A shows an example of points that satisfy this condition.
【0057】ところで、大容量のストリームデータを扱
う用途では、seek要求で指定されたポイントが、必
ずしもクライアント側のユーザがランダムアクセスを意
図したポイントであるとは限らない。例えば、データを
高速に再生する際に、ステップ幅の小さいseekと少
量のデータアクセスを繰り返すスキップ方式が採用され
る場合がある。このような場合に全てのseek先をラ
ンダムアクセスポイントであると判断すると、スキップ
方式で高速再生される全てのセグメントをランダムアク
セスであるとみなしてしまう。By the way, in the case of handling a large amount of stream data, the point specified by the seek request is not always the point at which the user on the client side intends random access. For example, when reproducing data at high speed, a skip method in which a seek with a small step width and a small amount of data access are repeated may be adopted. In such a case, if it is determined that all seek destinations are random access points, all segments that are reproduced at high speed by the skip method are regarded as random access points.
【0058】そこで、二つ目の方法では、このようなア
クセスの間はランダムアクセスではないと判断し、se
ek幅がある閾値より大きい場合に、そのseek先を
RAP候補として検出する。すなわち、seek幅の大
きいseek先を含むセグメントのRAPセグメント情
報を更新し、seek幅の小さいseek先を含むセグ
メントのRAPセグメント情報は更新しない。もしく
は、繰り返された各seekのステップ幅が小さい程ラ
ンダムアクセスされる可能性が小さいことを示すよう
に、各seek先を含む各セグメントのRAPセグメン
ト情報を更新する。図2(b)にこの条件を満たすポイ
ントの例を示す。Therefore, in the second method, it is determined that random access is not performed during such access, and se
When the ek width is larger than a certain threshold, the seek destination is detected as a RAP candidate. That is, the RAP segment information of the segment including the seek destination having the wide seek width is updated, and the RAP segment information of the segment including the seek destination having the narrow seek width is not updated. Alternatively, the RAP segment information of each segment including each seek destination is updated so as to indicate that the smaller the step width of each repeated seek, the smaller the possibility of random access. FIG. 2B shows an example of points that satisfy this condition.
【0059】また、一般には、データを高速に再生する
ということは、ユーザが必要とするポイントをサーチす
る目的で行なわれる。したがって、データを高速に再生
した後の通常再生開始ポイントが、ユーザの意図したラ
ンダムアクセスポイントである場合が多い。しかし、そ
のようなポイントはseek要求やseek幅だけでは
推測できない。In general, high speed data reproduction is performed for the purpose of searching for a point required by the user. Therefore, the normal reproduction start point after reproducing the data at high speed is often the random access point intended by the user. However, such a point cannot be estimated only by the seek request and the seek width.
【0060】そこで、三つ目の方法では、seek後に
順次アクセスしたデータ量に着目する。すなわち、se
ek後に順次アクセスしたデータ量をカウントして、そ
のデータ量が例えばスキップ方式で順次アクセスされる
データ量を越えた場合は、高速再生後の通常再生が開始
されたと推測できる。したがって、その場合には、se
ek後に所定値以上のデータ量の順次アクセスが開始さ
れたポイントをRAP候補として検出する。すなわち、
seek後に相当量の順次アクセスが開始されたポイン
トを含むセグメントのRAPセグメント情報を更新し、
それ以外のseek先についてはRAPセグメント情報
を更新しない。もしくは、繰り返された各seekの後
の順次アクセスデータ量が小さい程ランダムアクセスさ
れる可能性が小さいことを示すように、各seek先を
含む各セグメントのRAPセグメント情報を更新する。
図2(c)にこの条件を満たすポイントの例を示す。Therefore, in the third method, attention is paid to the amount of data sequentially accessed after the seek. That is, se
When the amount of data sequentially accessed after ek is counted and the amount of data exceeds the amount of data sequentially accessed by the skip method, for example, it can be inferred that the normal reproduction after the high speed reproduction has started. Therefore, in that case, se
A point at which sequential access of a data amount equal to or larger than a predetermined value is started after ek is detected as a RAP candidate. That is,
Update the RAP segment information of the segment including the point where a considerable amount of sequential access is started after seek,
For other seek destinations, the RAP segment information is not updated. Alternatively, the RAP segment information of each segment including each seek destination is updated so that the smaller the sequential access data amount after each repeated seek, the smaller the possibility of random access.
FIG. 2C shows an example of points that satisfy this condition.
【0061】また、高速再生後に通常再生が開始された
場合でも、そのポイントがユーザの意図したものでない
ことがある。その時にはユーザは短時間の再生でそのこ
とに気付いて、再び高速再生によるサーチを行なうと考
えられる。すると、seek後に順次アクセスしたデー
タ量が大きい程、よりユーザが意図したランダムアクセ
スポイントである可能性が高いと推測できる。したがっ
て、seek後に相当量の順次アクセスが開始されたポ
イントを含むセグメントのRAPセグメント情報を更新
する(それ以外のseek先についてはRAPセグメン
ト情報を更新しない)際に、seek後に順次アクセス
したデータ量が大きい程ランダムアクセスされる可能性
が大きいことを示すように、RAPセグメント情報を更
新するようにしても良い。Even when the normal reproduction is started after the high speed reproduction, the point may not be what the user intended. At that time, it is considered that the user notices that by the short-time reproduction and performs the search by the high-speed reproduction again. Then, it can be inferred that the larger the amount of data sequentially accessed after the seek, the higher the possibility of the random access point intended by the user. Therefore, when updating the RAP segment information of the segment including the point where a considerable amount of sequential access is started after the seek (the RAP segment information is not updated for other seek destinations), the amount of data sequentially accessed after the seek is increased. The RAP segment information may be updated so that the larger the possibility, the greater the possibility of random access.
【0062】上記は、今後のランダムアクセスの傾向
を、過去のseek要求やread要求から推測するも
のである。The above is to infer the tendency of future random access from the past seek request and read request.
【0063】ここで、ユーザの意図するランダムアクセ
スポイントをあらかじめ登録することができれば、この
登録された情報を基に最も確実にランダムアクセスポイ
ントを推測できる。このため、ユーザが直接的にランダ
ムアクセスポイントを指定して登録しても良いが、ユー
ザのランダムアクセスに関する嗜好の情報をあらかじめ
記憶しておき、データを解析してそのデータの性質と記
憶されたユーザの嗜好とを照らし合わせてランダムアク
セスポイントを推測し、これを登録するようにすれば、
ユーザが使用する以前にRAPセグメント情報を更新す
ることも可能である。いずれの場合も、RAP候補検出
部16は、データ上のあるポイントをランダムアクセス
ポイントとして登録する要求を受けた時点で、そのポイ
ントを含むセグメントのRAPセグメント情報を更新す
る。Here, if the random access point intended by the user can be registered in advance, the random access point can be most reliably estimated based on the registered information. Therefore, the user may directly specify and register the random access point, but the preference information regarding the random access of the user is stored in advance, the data is analyzed, and the property of the data is stored. If you guess the random access point based on the user's taste and register it,
It is also possible to update the RAP segment information before it is used by the user. In any case, when the RAP candidate detection unit 16 receives a request to register a certain point on the data as a random access point, it updates the RAP segment information of the segment including the point.
【0064】本装置においては、クライアントやホスト
計算機を含めたシステム全体の用途や準備されている要
求の種類に応じて、ランダムアクセスポイントをより効
率的に推測できる手段を、上述した手段のうちから選択
して備えれば良い。In the present apparatus, a means for more efficiently estimating the random access point according to the purpose of the entire system including the client and the host computer and the type of request prepared is selected from the above means. Just select and prepare.
【0065】本装置にて用いるRAPセグメント情報に
は幾つかの形態があり得、RAPセグメント情報記憶部
19や、RAP候補検出部16からの更新、廃棄/格納
セグメント選択部17/18からの参照も、それに合わ
せた形態をとる。There can be several forms of RAP segment information used in this device, and reference from the RAP segment information storage unit 19 and the update from the RAP candidate detection unit 16 and the discard / stored segment selection unit 17/18. Also takes a form adapted to it.
【0066】RAPセグメント情報の記憶形態の第一の
例は、RAPセグメントに対応するエントリを持つリス
トまたはテーブルを構成する形態である。図3(a)お
よび図3(b)にそれぞれの例を示す。The first example of the storage form of the RAP segment information is a form of forming a list or table having an entry corresponding to the RAP segment. 3 (a) and 3 (b) show respective examples.
【0067】このように構成したRAPセグメント情報
を更新するためには、上記のリストまたはテーブルに対
するエントリの追加と削除の手段を用意する。RAP候
補検出部16でRAP候補を検出して、そのポイントを
含むセグメントのRAPセグメント情報を更新する場合
には、上記のリストまたはテーブルに該当セグメントの
エントリを追加する。また逆に、上記のリストまたはテ
ーブルに含まれているエントリに対応するセグメントが
RAPセグメントと判定されなくなった場合には、その
エントリを上記のリストまたはテーブルから削除する。In order to update the RAP segment information configured as described above, means for adding and deleting entries to the above list or table is prepared. When the RAP candidate detection unit 16 detects a RAP candidate and updates the RAP segment information of the segment including the point, the entry of the corresponding segment is added to the above list or table. On the contrary, when the segment corresponding to the entry included in the list or table is not determined as the RAP segment, the entry is deleted from the list or table.
【0068】RAPセグメント情報の記憶形態の第二の
例は、各セグメントに対し過去にランダムアクセスに関
する操作が行なわれた傾向を数値で表す形態である。こ
の形態では、各セグメント毎にRAP候補を含む傾向を
表すRAPカウンタを用意する。図3(c)にその例を
示す。なお、図3(c)中の参照カウンタとkeepカ
ウンタについては後述する。The second example of the storage form of the RAP segment information is a form in which the tendency of an operation relating to random access to each segment in the past is expressed numerically. In this form, a RAP counter indicating a tendency including RAP candidates is prepared for each segment. An example thereof is shown in FIG. The reference counter and the keep counter in FIG. 3C will be described later.
【0069】このように構成したRAPセグメント情報
を更新するためには、指定されたセグメントのRAPカ
ウンタを増減させる手段を用意する。上述したように、
RAP候補検出部16においてRAP候補を検出した際
のseek幅や順次アクセスされたデータ量などに応じ
て、ここでのRAPカウンタの増分値を変更しても良
い。また、図2に示したRAP候補検出の条件のうち、
どの条件により検出されたRAP候補であるかに応じ
て、ここでのRAPカウンタの増分値を変更しても良
い。In order to update the RAP segment information configured as described above, a means for increasing or decreasing the RAP counter of the designated segment is prepared. As mentioned above,
The increment value of the RAP counter here may be changed according to the seek width when the RAP candidate is detected by the RAP candidate detection unit 16, the amount of data that is sequentially accessed, and the like. In addition, among the conditions for RAP candidate detection shown in FIG.
The increment value of the RAP counter here may be changed according to which condition is the RAP candidate detected.
【0070】RAPセグメント情報を参照する第一の形
態として、指定されたセグメントがRAPセグメントか
否かを判定する形態がある。これは、RAPセグメント
情報を必要とする全ての場面で同一の判定基準を適用す
れば足りる場合に適している。As a first mode of referring to the RAP segment information, there is a mode of determining whether or not the designated segment is a RAP segment. This is suitable when it is sufficient to apply the same criterion in all scenes that require RAP segment information.
【0071】RAPセグメント情報記憶部19にRAP
セグメントのエントリを記憶する(RAPセグメントで
ないセグメントのエントリは記憶しない)形態において
は、指定されたセグメントのエントリが記憶部19のリ
ストまたはテーブルに含まれている場合にそのセグメン
トがRAPセグメントであると判定すれば良い。RAP is stored in the RAP segment information storage unit 19.
In the mode in which the entry of the segment is stored (the entry of the segment which is not the RAP segment is not stored), when the entry of the designated segment is included in the list or the table of the storage unit 19, the segment is regarded as the RAP segment. Just make a decision.
【0072】RAPセグメント情報記憶部19にRAP
カウンタを有する形態においては、指定されたセグメン
トのRAPカウンタがある閾値以上の場合にそのセグメ
ントがRAPセグメントであると判定すれば良い。RAP in the RAP segment information storage unit 19
In the form having a counter, it may be determined that the segment is a RAP segment when the RAP counter of the designated segment is equal to or more than a certain threshold.
【0073】RAPセグメント情報を参照する第二の形
態としては、RAPセグメント情報記憶部19に記憶さ
れた情報自体を参照する(単純に記憶された情報を読み
出す)形態がある。これは、RAPセグメント情報を必
要とする参照部位毎に異なる解釈がなされる可能性があ
る場合に適している。例えば、指定されたセグメントが
RAPセグメントか否かを判定する判定基準が参照部位
毎に異なる場合や、RAPカウンタの値を基準にセグメ
ントをソートする処理を行うべき参照部位がある場合、
あるいは記憶部19のリストを順に検索する処理を行う
べき参照部位がある場合等である。A second form of referring to the RAP segment information is a form of referring to the information itself stored in the RAP segment information storage unit 19 (simply reading the stored information). This is suitable when there is a possibility that a different interpretation is made for each reference site that requires the RAP segment information. For example, when the determination criterion for determining whether or not the designated segment is a RAP segment is different for each reference part, or when there is a reference part for which the process of sorting the segments based on the value of the RAP counter is to be performed,
Alternatively, there is a case where there is a reference site for which the process of sequentially searching the list of the storage unit 19 is performed.
【0074】なお、RAPセグメント情報は、廃棄セグ
メント選択部17と格納セグメント選択部18で参照さ
れるが、各部位での参照方法や参照結果の利用方法が異
なっていてもかまわない。例えば、廃棄セグメントの選
択の際にはRAPセグメントか否かの判定結果を用いて
セグメントを分類するという利用をし、格納セグメント
の選択の際にはRAPカウンタの値を参照してセグメン
トをソートするという利用をしても良い。The RAP segment information is referred to by the discarded segment selection unit 17 and the stored segment selection unit 18, but the reference method and the reference result utilization method at each part may be different. For example, when the discard segment is selected, the segment is classified by using the determination result of whether it is the RAP segment or not, and when the storage segment is selected, the segment is sorted by referring to the value of the RAP counter. You may use it.
【0075】以下では、上述した本実施形態に係る装置
を、動画像や音声等の大容量リアルタイムストリームを
扱うサーバとして実現した場合の、さらに具体的な実施
の形態について説明する。In the following, a more specific embodiment will be described in the case where the above-described device according to the present embodiment is realized as a server that handles a large-capacity real-time stream such as moving images and audio.
【0076】まず、この具体例に係るシステムの構成を
説明する。本階層記憶装置はネットワークを介してクラ
イアント装置と接続される。クライアント装置はユーザ
の操作に従い、ネットワークを介してリアルタイムスト
リームを階層記憶装置から読み出して再生する、あるい
は階層記憶装置に記録する。First, the configuration of the system according to this specific example will be described. This hierarchical storage device is connected to a client device via a network. The client device reads the real-time stream from the hierarchical storage device via the network and reproduces it, or records it in the hierarchical storage device, according to the user's operation.
【0077】クライアント装置は、ユーザがリアルタイ
ムストリームを扱うための操作手段を有する。例えば、
再生、録画、高速再生(早送り)、高速逆再生(巻戻
し)、一時停止、インデクス付加、インデクス再生等の
操作が可能であるクライアント装置と、それらの操作ボ
タンを備えたリモートコントロール装置を用意する。も
しくは、それらの操作ボタンをクライアント装置の画面
に表示して、マウス等のポインティングデバイスで選択
できるようにしても良い。The client device has operation means for the user to handle the real-time stream. For example,
Prepare a client device that can perform operations such as playback, recording, high-speed playback (fast forward), high-speed reverse playback (rewind), pause, index addition, and index playback, and a remote control device equipped with those operation buttons. . Alternatively, those operation buttons may be displayed on the screen of the client device so that they can be selected with a pointing device such as a mouse.
【0078】クライアント装置はユーザの操作に応じて
階層記憶装置に各種の要求を出す。データを一般のファ
イルとして扱う場合は、open、seek、rea
d、write、close等の一般的なファイル操作
要求を用意する。データをリアルタイムストリームとし
て扱う場合、ユーザが再生や早送り等の操作を行なった
時点で、その操作に応じた上記の一般的なファイル操作
要求をクライアント装置側で組み合わせて階層記憶装置
側に出す。もしくは、それぞれのユーザの操作に対応す
る個別の要求を用意して、階層記憶装置側に出しても良
い。The client device issues various requests to the hierarchical storage device according to the user's operation. When handling the data as a general file, open, seek, rea
Prepare general file operation requests such as d, write, and close. When the data is handled as a real-time stream, when the user performs an operation such as reproduction or fast-forward, the above-mentioned general file operation request corresponding to the operation is combined on the client device side and output to the hierarchical storage device side. Alternatively, an individual request corresponding to each user operation may be prepared and output to the hierarchical storage device side.
【0079】次に、本具体例における構成と動作を説明
する。ライブラリ用記憶装置14として、光ディスクを
複数枚収納可能なオートチェンジャ、キャッシュ用記憶
装置15として、ハードディスク装置を使用する。入出
力部11として、ネットワークインタフェースとその制
御ソフトウェアを備える。Next, the structure and operation of this example will be described. An autochanger capable of accommodating a plurality of optical disks is used as the library storage device 14, and a hard disk device is used as the cache storage device 15. A network interface and its control software are provided as the input / output unit 11.
【0080】リアルタイムストリームデータ(コンテン
ツ)は、システム固有の大きさのセグメントに分割され
ライブラリ14に記録される。ライブラリ上のデータの
格納状況を管理するために、各セグメントが格納されて
いるメディアの番号とそのメディア上の記録位置を記憶
するインデクステーブルを制御手段内に保持する(例え
ば図3(c))。また、各メディアの使用容量や残り空
き容量も制御手段内に保持する。The real-time stream data (content) is divided into segments having a size peculiar to the system and recorded in the library 14. In order to manage the storage status of the data on the library, an index table storing the number of the medium storing each segment and the recording position on the medium is held in the control means (for example, FIG. 3 (c)). . Also, the used capacity and the remaining free capacity of each medium are held in the control means.
【0081】同様に、キャッシュ15を管理するための
各種情報も制御手段内に保持する。具体的には、キャッ
シュの使用容量や残り空き容量と、キャッシュに格納さ
れたセグメントを管理するテーブルを制御手段内に持
つ。また、ライブラリとキャッシュ間のセグメント転送
が複数同時に生じた場合のために、それらのセグメント
転送要求を一時的に保持するリストを備える。セグメン
ト転送管理部13は、セグメント転送が可能になった時
点で随時、処理の順序をスケジューリングしてセグメン
ト転送を行なう。なお、セグメント転送時のセグメント
の置換え方式については後述する。Similarly, various information for managing the cache 15 is also held in the control means. Specifically, the control means has a table for managing the used capacity of the cache, the remaining free capacity, and the segments stored in the cache. Further, in the case where a plurality of segment transfers between the library and the cache occur simultaneously, a list for temporarily holding those segment transfer requests is provided. The segment transfer management unit 13 schedules the processing order and performs the segment transfer at any time when the segment transfer becomes possible. The segment replacement method during segment transfer will be described later.
【0082】次に、クライアントからの要求に応じて、
階層記憶装置からクライアント装置へデータをリアルタ
イムストリームとして送信する際の基本的な動作につい
て簡単に説明する。Next, in response to a request from the client,
A basic operation of transmitting data as a real-time stream from the hierarchical storage device to the client device will be briefly described.
【0083】要求処理部12は、入出力部11を介して
クライアントからのopen要求を受けると、新しいリ
アルタイムストリームに対応するストリーム管理情報を
作成する。ストリーム管理情報には、openしたデー
タに関する情報(識別子やアクセス権等)、割り当てら
れた種々の資源(使用するバッファ等)、現在アクセス
しているポイントがデータの先頭から何バイト目かを表
すseekポインタが含まれる。Upon receiving the open request from the client via the input / output unit 11, the request processing unit 12 creates the stream management information corresponding to the new real-time stream. The stream management information includes information related to the opened data (identifier, access right, etc.), various resources allocated (buffers used, etc.), and a seek indicating the byte number from the head of the data currently accessed. Contains a pointer.
【0084】クライアントからのread要求を受けて
データにアクセスする際には、要求処理部12は、キャ
ッシュ14上のセグメントにアクセスする。seekポ
インタが指すポイントを含むセグメントがキャッシュ上
に格納されていない場合には、まずセグメント転送要求
を出して、その転送要求が実行されてからキャッシュ上
のセグメントにアクセスする。When receiving the read request from the client and accessing the data, the request processing section 12 accesses the segment on the cache 14. If the segment including the point pointed to by the seek pointer is not stored in the cache, a segment transfer request is first issued, the transfer request is executed, and then the segment in the cache is accessed.
【0085】また、要求処理部12は、動画像や音声等
の大容量リアルタイムストリームを再生する場合には、
データを順次アクセスすると推測できるので、アクセス
するポイントを含むセグメントに加えて、それ以降の連
続する複数のセグメントをキャッシュ上に先読みするセ
グメント転送要求を出す。Further, the request processing section 12 reproduces a large-capacity real-time stream such as a moving image or a sound,
Since it can be inferred that the data will be accessed sequentially, a segment transfer request is issued to prefetch, in addition to the segment including the point to be accessed, a plurality of subsequent consecutive segments on the cache.
【0086】なお、リアルタイムストリームの連続性を
保証するためには、アクセスしているセグメントと先読
みするセグメントを格納する領域を常にキャッシュ上に
確保できることを保証する必要がある。そこで、キャッ
シュの総容量のうち、その時点での全てのリアルタイム
ストリームで確保されているサイズを管理する。ope
n要求を受けた時に、新しいリアルタイムストリームで
必要となるサイズをキャッシュ上に確保できない場合に
は、open要求を拒否する。In order to guarantee the continuity of the real-time stream, it is necessary to guarantee that the area for storing the segment being accessed and the segment to be read ahead can always be secured in the cache. Therefore, of the total capacity of the cache, the size secured for all real-time streams at that time is managed. ope
When an n request is received and the size required for a new real-time stream cannot be secured in the cache, the open request is rejected.
【0087】本具体例においても、RAPセグメント情
報に基づき、キャッシュ上に格納するセグメント、ある
いはキャッシュ上から廃棄するセグメントを選択するこ
とは前述の通りである。以下には、上述したRAPカウ
ンタを用いる方式における、RAPセグメント情報の構
成とその利用方法を具体的に示すが、これを適宜変形し
て上述したRAPセグメントのエントリをリストもしく
はテーブルに記憶する方式で実施することは当業者にと
っては十分に可能であり、いずれの方式での実施も本発
明の範囲である。Also in this example, the segment to be stored in the cache or the segment to be discarded from the cache is selected based on the RAP segment information as described above. The structure of the RAP segment information and the method of using the same in the method using the RAP counter described above will be concretely described below. However, this is appropriately modified to store the entries of the RAP segment in a list or a table. Implementation is well within the ability of those skilled in the art, and implementation in any manner is within the scope of the invention.
【0088】RAPセグメント情報記憶部19として
は、各セグメントのRAPカウンタをエントリとする専
用のテーブルを用意しても良いが、前述の様にライブラ
リを管理するためのインデクステーブルを持つ場合に
は、それを流用してインデクステーブルにRAPカウン
タのフィールドを追加しても良い(図3(c)参照)。
これにより、RAPカウンタ専用のテーブル上でのエン
トリの追加と削除の手続きを新たに用意する必要がなく
なる。As the RAP segment information storage unit 19, a dedicated table having an entry for the RAP counter of each segment may be prepared. However, in the case of having an index table for managing the library as described above, The RAP counter field may be added to the index table by diverting it (see FIG. 3C).
This eliminates the need to newly prepare procedures for adding and deleting entries on the table dedicated to the RAP counter.
【0089】ライブラリ上にデータが追加されて新たに
セグメントが生成されると、インデクステーブルにその
セグメントのエントリが追加され、そのエントリのRA
Pカウンタの値は0に初期化される。RAPカウンタの
更新は、RAP候補検出部16がRAP候補を検出した
時点で行われる。以下にRAP候補の検出条件を挙げ
る。When data is added to the library and a new segment is generated, an entry for that segment is added to the index table, and the RA of that entry is added.
The value of the P counter is initialized to 0. The RAP counter is updated when the RAP candidate detection unit 16 detects the RAP candidate. The RAP candidate detection conditions are listed below.
【0090】条件1: 制御手段でseek要求を受け
た時点で、そのseek要求で指定されたポイントをR
AP候補として検出する(図2(a)参照)。Condition 1: When the seek request is received by the control means, the point designated by the seek request is R
It is detected as an AP candidate (see FIG. 2A).
【0091】条件2:クライアントでの早送りまたは逆
再生がスキップ方式で実現される場合のスキップするs
eek幅をnとすると、制御手段でseek要求を受け
た時点で、現在のseekポインタが指すポイントから
そのseek要求で指定されたポイントまでの幅がnよ
り大きい場合に、そのseek要求で指定されたポイン
トをRAP候補として検出する(図2(b)参照)。Condition 2: Skipping when fast-forwarding or reverse playback at the client is realized by the skip method s
If the seek width is n, when the width from the point pointed to by the current seek pointer to the point specified by the seek request is larger than n at the time when the control unit receives the seek request, the seek request is specified by the seek request. The detected points are detected as RAP candidates (see FIG. 2B).
【0092】条件3:順次アクセスが開始されたポイン
トを記録するポインタPと、そのポイントからの順次ア
クセスデータ量を記録するカウンタCを用意しておき、
open要求を受けたら、ポインタPはデータの先頭、
カウンタCは0で初期化する。seek要求を受けた
ら、ポインタPにはseek先のポイント、カウンタC
には0を代入する。read要求を受けると、そのアク
セスサイズをカウンタCに加算する。クライアントでの
早送りまたは逆再生がスキップ方式で実現される場合の
順次アクセスデータ量をmとすると、カウンタCがmを
越えた時点で、ポインタPをRAP候補として検出する
(図2(c)参照)。Condition 3: A pointer P for recording the point at which sequential access is started and a counter C for recording the amount of sequential access data from that point are prepared,
When receiving the open request, the pointer P indicates the beginning of the data,
The counter C is initialized to 0. When the seek request is received, the pointer P is the point at the seek destination, and the counter C.
Is assigned 0. When receiving the read request, the access size is added to the counter C. Assuming that the sequential access data amount when the fast-forwarding or the reverse reproduction at the client is realized by the skip method is m, the pointer P is detected as a RAP candidate when the counter C exceeds m (see FIG. 2C). ).
【0093】条件4:クライアント装置から本階層記憶
装置への要求として、ランダムアクセスポイントの登録
要求が用意されている場合、その登録要求を受けた時点
で、指定されたポイントをRAP候補として検出する。Condition 4: When a random access point registration request is prepared as a request from the client device to the hierarchical storage device, the designated point is detected as a RAP candidate when the registration request is received. .
【0094】なお、RAP候補検出部16では、上記の
4個の条件全てを調べる手段を備える必要はない。クラ
イアントに用意されている要求やそのアクセスパターン
を考慮して、例えば上記の4個の条件の中からRAP候
補を適切に検出できると予想される条件をあらかじめ選
んで記憶しておき、記憶している条件のいずれかを満た
すポイントを検出してRAPセグメント情報を更新する
手段を備えればよい。The RAP candidate detecting section 16 does not need to have a means for checking all the above four conditions. Considering the request prepared for the client and its access pattern, for example, from the above four conditions, a condition that is expected to be able to appropriately detect the RAP candidate is selected and stored in advance. Means may be provided for detecting a point satisfying any of the following conditions and updating the RAP segment information.
【0095】例えば、スキップ方式で早送り/逆再生を
行うことがあらかじめわかっている場合には、条件1を
考慮せず、条件2、3、4のみを組み合わせるようにす
ると良い。For example, when it is known in advance that fast-forward / reverse reproduction is performed by the skip method, it is preferable to combine only conditions 2, 3 and 4 without considering condition 1.
【0096】RAPカウンタの更新方法としてもっとも
単純な方式は、RAP候補を検出する度にそのRAP候
補を含むセグメントのRAPカウンタを1増加させる方
式である。しかし、RAP候補検出の条件の種類や、R
AP候補検出時の状態(seek幅や順次アクセス量)
によって、その後ランダムアクセスポイントとなる可能
性が異なると考えられる場合には、RAPカウンタの増
分を異なる値にすると良い。The simplest method for updating the RAP counter is to increase the RAP counter of the segment including the RAP candidate by 1 each time the RAP candidate is detected. However, the types of conditions for detecting RAP candidates and R
State at AP candidate detection (seek width and sequential access amount)
Therefore, if it is considered that the possibility of becoming a random access point afterwards is different, the increment of the RAP counter may be set to a different value.
【0097】例えば、クライアントからのランダムアク
セスポイントの登録要求が用意されている場合には、登
録要求されたポイントは、seek要求の傾向から本階
層記憶装置の側でRAP候補を予測するその他の条件に
よるポイントよりも、その後ランダムアクセスポイント
となる可能性が高いと考えられる。そこで、条件4でR
APカウンタを更新させる場合には、他の条件よりもR
APカウンタの増分値を大きくすると良い。For example, when a registration request for a random access point is prepared from the client, the registration-requested point has other conditions for predicting a RAP candidate on the side of the hierarchical storage device from the tendency of the seek request. It is considered that there is a higher possibility that it will become a random access point after that. Therefore, in condition 4, R
When updating the AP counter, R is better than other conditions.
It is advisable to increase the increment value of the AP counter.
【0098】条件1、2ではseek要求に基づいてR
APカウンタを更新するが、そのseek幅に応じてR
APカウンタの増分値を変えても良い。例えば、see
k幅が小さければそのseek先はキャッシュ上に先読
みされている可能性がある。そこで、seek幅が大き
いほどRAPカウンタの増分値を大きくする。Under conditions 1 and 2, R is set based on the seek request.
Updates the AP counter, but R according to the seek width
The increment value of the AP counter may be changed. For example, see
If the k width is small, the seek destination may have been prefetched on the cache. Therefore, the larger the seek width, the larger the increment value of the RAP counter.
【0099】条件3では順次アクセスするデータ量に基
づいてRAPカウンタを更新するが、そのデータ量に応
じてRAPカウンタの増分値を変えても良い。例えば、
早送りによるサーチ後に通常再生を開始したが、ユーザ
の目的のポイントではなかったため短時間で再び早送り
を開始する場合、その後ランダムアクセスポイントとな
る可能性は低いと考えられる。そこで、順次アクセスす
るデータ量がある閾値(例えば10秒の再生に必要なデ
ータ量)を越えた時点で、再びRAPカウンタを増加さ
せる。In Condition 3, the RAP counter is updated based on the amount of data to be sequentially accessed, but the increment value of the RAP counter may be changed according to the amount of data. For example,
Although normal reproduction is started after the search by fast-forwarding, it is not likely to become a random access point after that when the fast-forwarding is restarted in a short time because it is not the target point of the user. Therefore, when the amount of data to be sequentially accessed exceeds a certain threshold (for example, the amount of data required for 10 seconds of reproduction), the RAP counter is incremented again.
【0100】また、クライアントにおいて、データにあ
らかじめ設定されたポイントにはランダムアクセスでき
るが、ユーザが早送り等で見つけたポイントを後からラ
ンダムアクセスポイントとして指定することができない
場合には、条件3はあまり意味を持たない。そのような
場合には、条件3よりも他の条件でRAP候補を検出し
た場合のRAPカウンタの増分値を大きくすると良い。Further, in the client, the points preset in the data can be randomly accessed, but if the point found by the user such as fast-forward cannot be designated later as the random access point, the condition 3 is not so much. Has no meaning. In such a case, it is advisable to increase the increment value of the RAP counter when the RAP candidate is detected under other conditions than the condition 3.
【0101】RAPセグメント情報を参照する手段とし
ては、指定のセグメントのRAPカウンタの値を参照す
る手段と、RAPカウンタの値に基づいて指定のセグメ
ントがRAPセグメントであるかどうかを判定する手段
のうち少なくとも一方を用意すれば良い。Means for referring to the RAP segment information include means for referring to the value of the RAP counter of the designated segment and means for judging whether or not the designated segment is the RAP segment based on the value of the RAP counter. At least one should be prepared.
【0102】RAPカウンタの値を参照する手段は、指
定されたセグメントのデータ識別子とデータ内でのセグ
メント番号から、インデクステーブル内での対応するエ
ントリを決定し、そのエントリのRAPカウンタフィー
ルドの値を返すように構成すれば良い。The means for referring to the value of the RAP counter determines the corresponding entry in the index table from the data identifier of the specified segment and the segment number in the data, and determines the value of the RAP counter field of that entry. It can be configured to return.
【0103】RAPセグメントか否かを判定する手段
は、指定されたセグメントのRAPカウンタの値を参照
し、それがある閾値T以上の場合にはRAPセグメント
であるとの判定結果を、そうでない場合には通常のセグ
メントであるとの判定結果を返すように構成すれば良
い。The means for judging whether or not it is a RAP segment refers to the value of the RAP counter of the specified segment, and when it is equal to or more than a threshold value T, the judgment result that it is a RAP segment is determined. May be configured to return a determination result that the segment is a normal segment.
【0104】なお、閾値Tは状況に応じて変化する値で
あってもよい。また、指定されたセグメントが属するデ
ータ毎に閾値Tを変えても良い。例えば、指定されたセ
グメントが属するデータについて、そのデータに属する
全てのセグメントの平均値の一次関数で表される値を閾
値Tとする。The threshold value T may be a value that changes depending on the situation. Further, the threshold T may be changed for each data to which the designated segment belongs. For example, with respect to the data to which the designated segment belongs, a value represented by a linear function of the average value of all the segments belonging to the data is set as the threshold T.
【0105】以上、RAPセグメント情報をどのように
蓄積し、参照するかを説明してきた。以下では、RAP
セグメント情報を用いてライブラリとキャッシュ間での
セグメント転送をどのように制御するかを説明する。The above has been a description of how to store and refer to RAP segment information. In the following, RAP
How to control the segment transfer between the library and the cache using the segment information will be described.
【0106】キャッシュに新たにセグメントを格納する
際には、制御手段はキャッシュ上に必要な大きさの領域
を割り当てる。この時、十分な領域が空いていない場合
にはキャッシュ上の他のセグメントを廃棄して空き領域
をつくる。この例では、セグメントの廃棄優先順位のキ
ーとして、以下の情報を考慮する。
(1)RAPセグメント情報
(2)そのセグメントの属するデータがopen状態か
close状態か
(3)そのセグメントがkeep状態かどうか
廃棄セグメント選択部17では、少なくともRAPセグ
メント情報を含めてこれらの情報を組み合わせることに
よりキャッシュ上のセグメントの廃棄優先順位を定め、
その順位の最も高いセグメントを廃棄するセグメントの
候補とする。When a new segment is stored in the cache, the control means allocates an area of the required size on the cache. At this time, if a sufficient area is not free, another segment on the cache is discarded to create a free area. In this example, the following information is considered as a key for the segment discard priority. (1) RAP segment information (2) Whether the data to which the segment belongs is in the open state or the close state (3) Whether the segment is in the keep state The discard segment selection unit 17 combines these information including at least the RAP segment information. By setting the discard priority of the segment on the cache,
The segment with the highest rank is set as a candidate for the discarded segment.
【0107】なお、あるデータがopen状態であると
は、少なくとも一つのストリームからopenされてい
る状態を意味する。逆に、あるデータがclose状態
であるとは、そのデータをopenしているストリーム
が存在しない状態を意味する。各データがopen状態
かclose状態かを参照するためには、各データ毎に
参照カウントを用意すれば良い。データがストリームか
らopenされると対応する参照カウンタが1増加し、
closeされると対応する参照カウンタが1減少す
る。あるデータに対応する参照カウンタを参照して、そ
の値が0より大きい時はそのデータがopen状態にあ
ると判定できる。It should be noted that the fact that certain data is in the open state means a state in which at least one stream is open. On the contrary, the fact that certain data is in the close state means that there is no stream that opens the data. In order to refer to whether each data is in the open state or the close state, a reference count may be prepared for each data. When data is opened from the stream, the corresponding reference counter is incremented by 1,
When closed, the corresponding reference counter is decremented by 1. When the value of the reference counter corresponding to a certain data is greater than 0, it can be determined that the data is in the open state.
【0108】また、セグメントをkeepするとは、今
後近い将来そのセグメントにアクセスすると宣言するこ
とを意味する。keep状態のセグメントは、一旦キャ
ッシュに格納された後はkeep状態が解除されるまで
の間キャッシュ上に格納されていることを保証される。Keeping a segment means declaring that the segment will be accessed in the near future. A segment in the keep state is guaranteed to be stored in the cache once it is stored in the cache until the keep state is released.
【0109】本具体例では、リアルタイムストリームを
送る際に、アクセスするポイントを含むセグメントをk
eepする。また、そのセグメント以降の先読みすべき
セグメント(そのセグメント以降の連続する所定数のセ
グメントで、その所定数はシステム仕様により適切な数
を決めておく)もkeepする。それらのセグメントが
キャッシュ上にない場合には、キャッシュへのセグメン
ト転送要求を出す。それらのセグメントを順次アクセス
して、seekポインタがアクセス中のセグメントから
先読みした次のセグメントに移ると、前のアクセス中の
セグメントのkeepを解放する。In this example, when sending a real-time stream, the segment including the point to be accessed is k
eep. In addition, the segment to be prefetched after that segment (a predetermined number of consecutive segments after that segment, and the predetermined number is an appropriate number determined according to system specifications) is also kept. If those segments are not in the cache, a segment transfer request to the cache is issued. When those seek segments are sequentially accessed and the seek pointer moves from the segment being accessed to the next prefetched segment, the keep of the previous segment being accessed is released.
【0110】各セグメントをkeepするかどうかはス
トリーム毎に管理される。あるセグメントをkeepし
ているストリームが一つでも存在する場合には、そのセ
グメントはkeep状態にあるとする。各セグメントが
keep状態かどうかを参照するためには、RAPカウ
ンタと同様にインデクステーブルにkeepカウンタの
フィールドを追加する。このkeepカウンタは0で初
期化される。セグメントがストリームからkeepされ
ると対応するkeepカウンタを1増加し、keepが
解放されると対応するkeepカウンタを1減少する。
あるセグメントに対応するkeepカウンタを参照し
て、その値が0より大きい時はそのセグメントがkee
p状態にあると判定できる。Whether or not to keep each segment is managed for each stream. If there is at least one stream that keeps a certain segment, it is assumed that the segment is in the keep state. In order to refer to each segment whether it is in the keep state, a field of the keep counter is added to the index table similarly to the RAP counter. This keep counter is initialized to 0. When a segment is kept from the stream, the corresponding keep counter is incremented by 1, and when the keep is released, the corresponding keep counter is decremented by 1.
The keep counter corresponding to a certain segment is referred to, and when the value is greater than 0, that segment is kept
It can be determined to be in the p state.
【0111】次に、上記の情報を組み合わせて廃棄優先
順位を決定する方針を説明する。キャッシュに格納され
ているセグメントを、openされているかどうかとR
APセグメントかどうかで以下の4個のカテゴリに分類
する。
(a)close状態のデータに属する通常のセグメン
ト
(b)open状態のデータに属する通常のセグメント
(c)close状態のデータに属するRAPセグメン
ト
(d)open状態のデータに属するRAPセグメント
この例では、(a)(b)(c)(d)の順に廃棄優先
順位が高いとみなし、廃棄優先順位が高いカテゴリに含
まれるセグメントから順に廃棄候補とする。ただし、k
eepされているセグメントは廃棄候補として選択しな
い。上記カテゴリへの分類を行ってから、keepされ
ているセグメントを廃棄候補から除外しても良いし、ま
ずkeepされているセグメントを除外してから、上記
カテゴリへの分類(廃棄優先順位の決定)を行っても良
い。Next, the policy for determining the discard priority order by combining the above information will be described. Whether the segment stored in the cache is open or not and R
It is classified into the following four categories depending on whether it is an AP segment. (A) Normal segment belonging to close state data (b) Normal segment belonging to open state data (c) RAP segment belonging to close state data (d) RAP segment belonging to open state data In this example, It is considered that the discard priority is higher in the order of (a), (b), (c), and (d), and the segments included in the category with the higher discard priority are sequentially considered as the discard candidates. Where k
The segment that has been kept is not selected as a discard candidate. After the classification into the above categories is performed, the kept segments may be excluded from the discard candidates, or the kept segments may be excluded first, and then the categories are classified into the above categories (determination of discard priority order). You may go.
【0112】上記の方針を実現するための実装方式とし
ては、セグメント置き換えが必要となった時にキャッシ
ュ上の全てのセグメントを分類する方式、もしくは、各
カテゴリに対応するセグメントリストを用意してセグメ
ントの状態変化に伴いそのリストを随時更新する方式が
あり得る。ただし、前者ではセグメント置換え時にその
処理が集中するので、リアルタイム処理を行なうシステ
ムでは不都合な場合がある。そこで以降では後者の実装
方式について詳しく説明する。As an implementation method for realizing the above policy, a method of classifying all the segments in the cache when segment replacement is necessary, or a segment list corresponding to each category is prepared. There may be a method of updating the list as the state changes. However, in the former case, the processing is concentrated at the time of segment replacement, which may be inconvenient in a system performing real-time processing. Therefore, the latter mounting method will be described in detail below.
【0113】図4に、廃棄セグメント選択部17で必要
な情報を管理するために記憶されるデータ構造の一例を
示す。上記のカテゴリに対応する4個のセグメントリス
トが用意されている。各セグメントリストには、対応す
るカテゴリに含まれ、かつキャッシュ上に格納されてい
るセグメントを表すセグメントノードが繋がれる。セグ
メントノードにはそのセグメントが属するデータのデー
タ識別子とセグメント番号とが記録される。FIG. 4 shows an example of the data structure stored for managing the information required by the discard segment selection unit 17. Four segment lists corresponding to the above categories are prepared. Each segment list is connected to segment nodes that represent the segments included in the corresponding category and stored in the cache. In the segment node, the data identifier of the data to which the segment belongs and the segment number are recorded.
【0114】図5は、セグメントがキャッシュに格納さ
れる際に、そのセグメントに対応するセグメントノード
が繋がれるべきセグメントリストを選択する動作を示す
フローチャートである。FIG. 5 is a flow chart showing an operation of selecting a segment list to which the segment node corresponding to the segment should be connected when the segment is stored in the cache.
【0115】まず、RAPセグメント情報を参照してそ
のセグメントがRAPセグメントかどうか判定する(S
11,S12)。さらに、そのセグメントが属するデー
タの参照カウントを調べて(S13,S16)、そのデ
ータがopen状態かclose状態かを判定する。こ
れら2種類の判定結果の組合せに応じて、上記の4個の
セグメントリストのうちの1つを選択する(S14,S
15,S17,S18)。First, it is determined whether the segment is a RAP segment by referring to the RAP segment information (S
11, S12). Furthermore, the reference count of the data to which the segment belongs is checked (S13, S16) to determine whether the data is in the open state or the close state. One of the above four segment lists is selected according to the combination of these two types of determination results (S14, S).
15, S17, S18).
【0116】廃棄セグメント選択部17は、これらのセ
グメントリストに対し、データがopen/close
された時、あるいはセグメントがキャッシュに格納/廃
棄された時、あるいはRAPセグメント情報が更新され
た時に、上記の各リストが正しい状態を示すようにノー
ドの繋ぎ換え/追加/削除を行なう。以下にその具体的
な動作を示す。The discard segment selection unit 17 stores the data open / close in these segment lists.
When each segment is stored in the cache, when the segment is stored / discarded in the cache, or when the RAP segment information is updated, the nodes are reconnected / added / deleted so that each of the above lists shows the correct state. The specific operation is shown below.
【0117】データがcloseされた場合は、図6に
示すように、そのデータの状態がopen状態からcl
ose状態に変わった時(S21Yes)、opene
d_RAPセグメントリストを探索し(S22,S23
〜S27)、そのデータに属するセグメントノード(S
24Yes)をopened_RAPセグメントリスト
から取り除き(S25)、closed_RAPセグメ
ントリストの最後尾に繋ぐ(S26)。さらに、ope
ned_通常セグメントリストを探索し(S28,S2
9〜S33)、そのデータに属するセグメントノード
(S30Yes)をopened_通常セグメントリス
トから取り除き(S31)、closed_通常セグメ
ントリストの最後尾に繋ぐ(S32)。When the data is closed, the state of the data is changed from the open state to cl as shown in FIG.
When changed to ose state (S21 Yes), open
Search the d_RAP segment list (S22, S23
~ S27), the segment node (S
24 Yes) is removed from the open_RAP segment list (S25) and is connected to the end of the closed_RAP segment list (S26). In addition, ope
search the _normal segment list (S28, S2
9 to S33), the segment node (S30 Yes) belonging to the data is removed from the open_normal segment list (S31), and the segment node is connected to the end of the closed_normal segment list (S32).
【0118】データがopenされた場合は、図7に示
すように、そのデータの状態がclose状態からop
en状態に変わった時(S41Yes)、closed
_RAPセグメントリストを探索し(S42,S43〜
S47)、そのデータに属するセグメントノード(S4
4Yes)をclosed_RAPセグメントリストか
ら取り除き(S45)、opened_RAPセグメン
トリストの最後尾に繋ぐ(S46)。さらに、clos
ed_通常セグメントリストを探索し(S48,S49
〜S53)、そのデータに属するセグメントノード(S
50Yes)をclosed_通常セグメントリストか
ら取り除き(S51)、opened_通常セグメント
リストの最後尾に繋ぐ(S52)。When the data is opened, as shown in FIG. 7, the state of the data changes from the close state to the op state.
When changed to en state (S41 Yes), closed
Search the _RAP segment list (S42, S43-
S47), the segment node (S4
4Yes) is removed from the closed_RAP segment list (S45), and is connected to the end of the opened_RAP segment list (S46). In addition,
ed_searches the normal segment list (S48, S49
~ S53), the segment node (S
50 Yes) is removed from the closed_normal segment list (S51), and is connected to the end of the opened_normal segment list (S52).
【0119】キャッシュに新たにセグメントを格納した
場合は、図8に示すように、そのセグメントに対応する
セグメントノードを新たに作成する(S61)。そのセ
グメントがRAPセグメントかどうかを判定し、そのセ
グメントが含まれるカテゴリを決定する(S62)。そ
のセグメントを、決定されたカテゴリに対応するセグメ
ントリストの最後尾に繋ぐ(S63)。When a new segment is stored in the cache, a segment node corresponding to the segment is newly created as shown in FIG. 8 (S61). It is determined whether the segment is a RAP segment and the category including the segment is determined (S62). The segment is connected to the end of the segment list corresponding to the determined category (S63).
【0120】キャッシュ上からセグメントを廃棄した場
合は、図9に示すように、そのセグメントがRAPセグ
メントかどうかを判定し、そのセグメントが含まれるカ
テゴリを決定する(S71)。決定されたカテゴリに対
応するセグメントリストを探索して、廃棄するセグメン
トに対応するセグメントノードをそのセグメントリスト
から取り除き(S72)、そのセグメントノード自体も
削除する(S73)。When the segment is discarded from the cache, as shown in FIG. 9, it is determined whether the segment is a RAP segment and the category including the segment is determined (S71). The segment list corresponding to the determined category is searched for, the segment node corresponding to the discarded segment is removed from the segment list (S72), and the segment node itself is also deleted (S73).
【0121】RAPセグメント情報の更新要求が生じた
場合は、図10に示すように、更新前のRAPセグメン
ト情報に基づいてそのセグメントがRAPセグメントで
あったかどうかを判定し、そのセグメントが含まれてい
たカテゴリを決定する(S81)。決定されたカテゴリ
に対応するセグメントリストを探索する(S82)と、
そのセグメントがキャッシュに格納されている場合に
は、そのセグメントに対応するセグメントノードが見つ
かるので(S83Yes)、そのセグメントリストから
そのセグメントノードを取り除き(S84)、RAPセ
グメント情報を更新し(S85)、更新後のRAPセグ
メント情報に基づいてそのセグメントがRAPセグメン
トであるかどうかを判定してそのセグメントが含まれる
カテゴリを決定し(S86)、そのセグメントノードを
更新後のカテゴリに対応するセグメントリストに繋ぎか
える(S87)。そのセグメントがキャッシュに格納さ
れていない場合には、そのセグメントに対応するセグメ
ントノードが見つからないので(S83No)、単純に
RAPセグメント情報の更新を行う(S88)。When an update request for RAP segment information is made, as shown in FIG. 10, it is determined whether the segment is a RAP segment based on the RAP segment information before update, and the segment is included. The category is determined (S81). When a segment list corresponding to the determined category is searched (S82),
If the segment is stored in the cache, the segment node corresponding to the segment is found (S83 Yes), the segment node is removed from the segment list (S84), and the RAP segment information is updated (S85). Based on the updated RAP segment information, it is determined whether the segment is a RAP segment and the category including the segment is determined (S86), and the segment node is connected to the segment list corresponding to the updated category. Frog (S87). If the segment is not stored in the cache, the segment node corresponding to the segment cannot be found (No in S83), so the RAP segment information is simply updated (S88).
【0122】廃棄セグメント選択部17(セグメント転
送管理部13が行なっても良い)は、廃棄セグメントの
選択が必要になった時点で、図11および図12に示す
フローチャートに従って、廃棄候補を選択する。The discard segment selection unit 17 (which may be performed by the segment transfer management unit 13) selects a discard candidate according to the flowcharts shown in FIGS. 11 and 12 when the selection of the discard segment becomes necessary.
【0123】廃棄候補を探すカテゴリを、カテゴリ
(a)(b)(c)(d)の順に指定する(S91,S
92No,S93,S94No,S95,S96No,
S97)。指定されたカテゴリ内で廃棄候補を検索する
には、指定カテゴリに対応するセグメントリストの先頭
からセグメントノードを検索し(S101,S102〜
S104)、最初に見つかったkeep状態にないセグ
メントを廃棄候補として選択する(S103Yes)す
る。複数のセグメントを廃棄する必要がある場合には、
必要な数分の廃棄候補が選択されるまで、この動作を繰
り返す。指定カテゴリ内で十分な数の廃棄候補が選択さ
れたら、そこで処理を終了する(S92Yes/S94
Yes/S96Yes/S98Yes)。The categories for searching for discard candidates are designated in the order of categories (a), (b), (c), and (d) (S91, S).
92 No, S93, S94 No, S95, S96 No,
S97). To search for a discard candidate in the designated category, a segment node is searched from the beginning of the segment list corresponding to the designated category (S101, S102-
In S104), the first found segment that is not in the keep state is selected as a discard candidate (Yes in S103). If you need to discard multiple segments,
This operation is repeated until the necessary number of discard candidates are selected. When a sufficient number of discard candidates are selected within the designated category, the process ends there (S92 Yes / S94).
Yes / S96 Yes / S98 Yes).
【0124】なお、データ識別子とセグメント番号から
対応するセグメントノードを得るために、インデクステ
ーブルの各エントリにセグメントノードへのポインタを
格納するフィールドを追加したり、ハッシュ関数を用意
してもよい。こうすれば、セグメントリストの更新の際
に、RAPセグメントかどうかを判定してそのセグメン
トが含まれるカテゴリに対応するセグメントリストを決
定したり、決定されたセグメントリストを探索してセグ
メントノードを見つけたりする必要がなくなる。In order to obtain the corresponding segment node from the data identifier and the segment number, a field for storing a pointer to the segment node may be added to each entry of the index table, or a hash function may be prepared. By doing this, when updating the segment list, it is determined whether the segment is a RAP segment and the segment list corresponding to the category including the segment is determined, or the determined segment list is searched to find a segment node. There is no need to do it.
【0125】また、上記のカテゴリ(a)(b)(c)
(d)の順で廃棄優先順位を高いとすると、キャッシュ
上のほとんどをRAPセグメントが占めるようになる可
能性がある。すると、keep状態のセグメントを除い
て、RAPセグメントではない通常のセグメントの格納
/廃棄が頻繁に生じるようになる。ライブラリとキャッ
シュ間のセグメント転送の頻度があまりに増加し、ライ
ブラリの機械的な部品の耐久性に問題が生じるようであ
れば、キャッシュ上でRAPセグメントが占める割合が
ある閾値を越えている場合に廃棄優先順位をカテゴリ
(a)(c)(b)(d)の順に変更すると良い。こう
すれば、ランダムアクセス時の応答時間を小さくするだ
けでなく、ライブラリとキャッシュ間のセグメント転送
の頻度とのバランスをとることが可能になる。Further, the above categories (a) (b) (c)
If the discard priority is high in the order of (d), there is a possibility that the RAP segment will occupy most of the cache. Then, except for the segment in the keep state, normal segments other than the RAP segment are frequently stored / discarded. If the frequency of segment transfers between the library and the cache increases too much, and the durability of mechanical parts of the library becomes problematic, discard if the ratio of the RAP segment in the cache exceeds a certain threshold. It is advisable to change the priority order in the order of categories (a) (c) (b) (d). This makes it possible not only to reduce the response time during random access but also to balance the frequency of segment transfer between the library and the cache.
【0126】ここでは、RAPセグメント情報の参照手
段としてRAPセグメントか否かを判定する手段を使用
する例を説明したが、RAPカウンタの値を参照して、
その大きさ自体を廃棄優先順位のキーに含む形態も可能
である。例えば、RAPセグメントを含むカテゴリ
(c)あるいは(d)から廃棄候補を選択する際に、そ
のカテゴリに属するkeep状態にないRAPセグメン
トの中から、RAPカウンタの値が最も小さいセグメン
トを廃棄候補として選択すれば良い。Here, an example in which a means for determining whether or not it is a RAP segment is used as the reference means for the RAP segment information has been described, but referring to the value of the RAP counter,
It is also possible that the size itself is included in the discard priority key. For example, when selecting a discard candidate from the category (c) or (d) including the RAP segment, the segment having the smallest RAP counter value is selected as the discard candidate from the RAP segments belonging to the category that are not in the keep state. Just do it.
【0127】具体的には、opened_RAPセグメ
ントリストあるいはclosed_RAPセグメントリ
ストにセグメントノードを繋ぐ際に、RAPカウンタの
値が小さい順にソートされた状態になるように繋げば良
い。Specifically, when connecting segment nodes to the open_RAP segment list or the closed_RAP segment list, the segment nodes may be connected so that the RAP counter values are sorted in ascending order.
【0128】本具体例では、データへのアクセス要求を
受けた時点で、そのseekポインタが指すポイントを
含むセグメントをキャッシュに転送するだけではなく、
例えば、順次アクセスする際に、アクセスするセグメン
トに続くセグメントをキャッシュに先読みすることは先
に述べた通りである。In this specific example, when a request to access data is received, not only the segment including the point pointed to by the seek pointer is transferred to the cache,
For example, when sequentially accessing, the segment subsequent to the segment to be accessed is prefetched in the cache as described above.
【0129】さらに、open状態のデータに属するR
APセグメントは、他のセグメントと比較して近い未来
にランダムアクセスされる可能性が高い。そこで、格納
セグメント選択部18において、先に述べたカテゴリの
うち、カテゴリ(d)に属するセグメントをキャッシュ
に先読みする手段を用意する。Further, R belonging to the data in the open state
The AP segment is likely to be randomly accessed in the near future as compared to other segments. Therefore, the storage segment selection unit 18 is provided with means for prefetching the segment belonging to the category (d) among the above-mentioned categories into the cache.
【0130】具体的には、まず、格納セグメント選択部
18で必要なデータを管理するために記憶するデータ構
造として、先読みリストを用意する。先読みリストに
は、open状態のデータに属するRAPセグメントの
うちキャッシュされていないセグメントのセグメントノ
ードを繋ぐ。Specifically, first, a prefetch list is prepared as a data structure to be stored in the storage segment selection unit 18 in order to manage necessary data. Segment nodes of uncached segments of RAP segments belonging to open data are connected to the prefetch list.
【0131】格納セグメント選択部18は、この先読み
リストを、データやセグメントの状態が変化した時点で
更新する。以下にその具体的な動作を示す。The storage segment selection unit 18 updates this prefetch list when the state of data or segment changes. The specific operation is shown below.
【0132】データがopenされた場合は、図13に
示すように、そのデータの状態がclose状態からo
pen状態に変わった時(S111Yes)、そのデー
タに属する全セグメントを調べ(S112,S113〜
S117)、RAPセグメントであって(S115Ye
s)かつキャッシュ上に格納されていない(S114N
o)セグメントを、先読みリストの最後尾に繋ぐ(S1
16)。When the data is opened, as shown in FIG. 13, the state of the data changes from close to o.
When the state changes to the pen state (Yes in S111), all the segments belonging to the data are checked (S112, S113-).
S117), which is a RAP segment (S115Ye
s) and is not stored in the cache (S114N
o) Connect the segment to the end of the prefetch list (S1
16).
【0133】データがcloseされた場合は、図14
に示すように、そのデータの状態がopen状態からc
lose状態に変わった時(S121Yes)、先読み
リストに繋がっている全セグメントを調べ(S122,
S123〜S126)、そのデータに属するセグメント
があれば(S124Yes)、いずれも取り除く(S1
25)。When the data is closed, FIG.
As shown in, the state of the data changes from the open state to c
When changed to the lose state (S121 Yes), all the segments connected to the prefetch list are checked (S122,
S123 to S126), if there is a segment belonging to that data (S124 Yes), remove all (S1).
25).
【0134】RAPセグメント情報の更新要求が生じた
場合は、図15に示すように、データがopen状態で
あるならば(S131No)、更新前のRAPセグメン
ト情報に基づいてそのセグメントがRAPセグメントで
あったかどうかを判定し(S132)、RAPセグメン
トであったならば(S133Yes)既に先読みリスト
に存在するためRAPセグメント情報を更新して処理を
終了する(S138)。なお、データがclose状態
であるならば(S131Yes)、本例では先読みリス
トにセグメントを載せないことにしているので、同じく
RAPセグメント情報を更新して処理を終了する(S1
38)。ここで、前述のS132に代えて、先読みリス
トの探索を行い、情報更新しようとするセグメントが先
読みリストに繋がっているか否かを、S133の判断に
代えても良い。When an update request for the RAP segment information is made, as shown in FIG. 15, if the data is in the open state (S131 No), whether the segment is the RAP segment based on the RAP segment information before the update. If it is a RAP segment (S133 Yes), it is already in the prefetch list and the RAP segment information is updated and the process is terminated (S138). If the data is in the close state (S131 Yes), the segment is not placed in the prefetch list in this example, so the RAP segment information is similarly updated and the process ends (S1).
38). Here, instead of the above-described S132, a search of the prefetch list may be performed, and whether or not the segment whose information is to be updated is connected to the prefetch list may be replaced with the determination of S133.
【0135】更新前はRAPセグメントではなかった場
合(S133No)、RAPセグメント情報を更新し
(S134)、更新後のRAPセグメント情報に基づい
て判定すると(S135)RAPセグメントである場合
には(S136Yes)、更新の結果新たにRAPセグ
メントと判定されるようになったセグメントを先読みリ
ストの最後尾に繋ぐ(S137)。If it is not a RAP segment before the update (No in S133), the RAP segment information is updated (S134), and it is judged based on the updated RAP segment information (S135) If it is the RAP segment (S136 Yes) , The segment that is newly determined to be the RAP segment as a result of the update is connected to the end of the prefetch list (S137).
【0136】格納セグメント選択部18は、データやセ
グメントの状態が変化した時点で、先読みリストに繋が
れているセグメントをキャッシュに格納するか否かを判
断して、セグメント転送管理部13へセグメント転送要
求を出す(セグメント転送管理部13自身が先読みの格
納の可否を判断しても良い)。The storage segment selection unit 18 judges whether or not to store the segment linked to the prefetch list in the cache when the state of the data or the segment changes, and transfers the segment to the segment transfer management unit 13. A request is issued (the segment transfer management unit 13 itself may determine whether or not prefetch storage is possible).
【0137】具体的には、例えば下記のイベントが発生
した時点でキャッシュに格納するか否かの判断を開始す
る。
(1)キャッシュ上のセグメントのkeep状態が解放
された時
(2)open状態のデータがcloseされてclo
se状態に変わった時
(3)open状態のデータに属するセグメントのRA
Pセグメント情報が更新された時
(4)ライブラリ〜キャッシュ間のセグメント転送が終
了した時
(5)空の先読みリストに新たにセグメントが繋がれた
時
先読みリストに繋がれているセグメントをキャッシュに
格納するか否かの判断は、図16に示すフローチャート
に従って行なわれる。Specifically, for example, when the following event occurs, the judgment as to whether or not to store in the cache is started. (1) When the keep state of the segment on the cache is released (2) The data of the open state is closed and closed
When changing to the se state (3) RA of the segment belonging to the data in the open state
When P segment information is updated (4) When segment transfer between library and cache is completed (5) When a new segment is linked to an empty prefetch list Stores the segment linked to the prefetch list in the cache The determination as to whether or not to perform is performed according to the flowchart shown in FIG.
【0138】まず、その時点でセグメント転送を実行中
でなく(S141No)、かつ次に実行すべきセグメン
ト転送要求が存在しない(S142Yes)という条件
を満たすかどうかを調べる。条件を満たさない場合は終
了する。条件を満たす場合は、先読みリストを先頭から
探索し(S143,S144〜S147)、キャッシュ
に格納されているセグメントがあれば(S145Ye
s)、そのセグメントを先読みリストから取り除く(S
146)。これを、キャッシュに格納されていないセグ
メントが見つかるまで繰り返し、見つからない場合には
処理を終了する。First, it is checked whether or not the condition that the segment transfer is not being executed at that time (No in S141) and there is no segment transfer request to be executed next (S142 Yes) is satisfied. If the conditions are not met, the process ends. If the condition is satisfied, the prefetch list is searched from the beginning (S143, S144 to S147), and if there is a segment stored in the cache (S145Ye).
s), remove that segment from the look-ahead list (S
146). This is repeated until a segment that is not stored in the cache is found, and if not found, the process ends.
【0139】先読みリストの中にキャッシュに格納され
ていないセグメントが見つかったら(S145No)、
次に、キャッシュからの廃棄候補を選択し(S14
8)、その廃棄候補がカテゴリ(d)に含まれるかどう
かを調べる(S149)。含まれない場合には(S15
0No)、この廃棄候補を先読みリストから見つけたセ
グメントに置き換えるべく、先読み対象セグメントの転
送要求を発行し(S152)、そのセグメントを先読み
リストから取り除く(S151)。含まれる場合には
(S150Yes)そのまま終了する。ここで、kee
p状態になっているセグメントは、キャッシュからの廃
棄候補には選択されない。If a segment not stored in the cache is found in the prefetch list (No in S145),
Next, the discard candidate from the cache is selected (S14
8) Then, it is checked whether or not the discard candidate is included in the category (d) (S149). If not included (S15
0 No), in order to replace the discard candidate with the segment found from the prefetch list, a transfer request for the prefetch target segment is issued (S152), and the segment is removed from the prefetch list (S151). If it is included (Yes in S150), the process ends. Where ee
The segment in the p state is not selected as a discard candidate from the cache.
【0140】なお、このRAPセグメントの先読み動作
においては、先読みによりキャッシュに格納されるセグ
メントはkeep状態にしない。In the read-ahead operation of this RAP segment, the segment stored in the cache by the read-ahead is not kept in the keep state.
【0141】上記の例では、先読みリストに繋がれた時
刻順(FIFO)でセグメント転送要求を出すように動
作するが、そうではなく、ランダムアクセスされる可能
性のより高いRAPセグメントほど優先的にセグメント
転送要求が発行されるように動作するようにもできる。In the above example, the segment transfer requests are issued in the time order (FIFO) linked to the prefetch list. However, the RAP segment that is more likely to be randomly accessed is preferentially operated. It can also be operated so that a segment transfer request is issued.
【0142】そのためには、例えば、RAPセグメント
を上記のタイミングで先読みリストに繋ぐ際に、そのR
APセグメントのRAPカウンタを参照して、RAPカ
ウンタの値が大きい順にセグメントが並ぶようにRAP
セグメントを先読みリストに挿入するようにすれば良
い。For that purpose, for example, when connecting the RAP segment to the prefetch list at the above timing, the R
Referring to the RAP counter of the AP segment, the RAP is arranged so that the segments are arranged in descending order of the value of the RAP counter.
The segment should be inserted in the look-ahead list.
【0143】具体的には、先読みリストの最後尾のセグ
メントから順にRAPカウンタを参照し、挿入するセグ
メントのRAPカウンタの値と比較する。挿入するセグ
メントのRAPカウンタの値以上のRAPカウンタ値を
持つセグメントが見つかると、その後ろにセグメントを
挿入する。Specifically, the RAP counter is referenced in order from the last segment of the prefetch list and compared with the value of the RAP counter of the segment to be inserted. When a segment having a RAP counter value equal to or larger than the value of the RAP counter of the segment to be inserted is found, the segment is inserted after that.
【0144】なお、先読みリストに繋がれているセグメ
ントのRAPカウンタが更新されると、先読みリストの
順序がRAPカウンタ値の大きい順にならない場合も一
時的に生じる。しかし、先に述べた方法でRAPカウン
タを更新する場合、RAPカウンタが更新される状況で
はそのセグメントはkeep状態にある可能性が極めて
高く、先読みリストには繋がれていない場合がほとんど
であると考えられるので、本例では、先読みリストの一
時的な順序の乱れは無視することができる。もし無視で
きない場合には、適当なタイミングで、先読みリストに
繋がれたセグメントを、RAPカウンタ値に基づいてソ
ートすれば良い。When the RAP counters of the segments connected to the look-ahead list are updated, the order of the look-ahead list may not be in the descending order of the RAP counter value. However, when the RAP counter is updated by the method described above, it is very likely that the segment is in the keep state in the situation where the RAP counter is updated, and in most cases, it is not connected to the prefetch list. As such, in this example, the temporary out-of-order of the look-ahead list can be ignored. If it cannot be ignored, the segments linked to the look-ahead list may be sorted based on the RAP counter value at an appropriate timing.
【0145】また、先読みリストのリニアサーチでは実
行速度に問題がある場合には、先読みリストをB+tr
eeとして実現する等の高速化を図ってもよい。If there is a problem in the execution speed in the linear search of the prefetch list, the prefetch list is set to B + tr.
The speed may be increased, such as realization as ee.
【0146】以上により、openされたデータのRA
Pセグメントは、キャッシュ上に格納されているセグメ
ントの種類や状態に応じて、openされていないデー
タのセグメントや、RAPセグメントではない通常のセ
グメントと置き換えられる。From the above, the RA of the opened data
The P segment is replaced with an unopened data segment or a normal segment that is not a RAP segment, depending on the type and state of the segment stored in the cache.
【0147】このように、本実施形態によれば、see
k要求やアクセス要求等のデータの操作の傾向から、デ
ータの各部分が今後ランダムアクセスポイントとなる可
能性が高いかを予測して、その情報をRAPセグメント
情報として蓄積できる。RAPセグメント情報を利用す
ることにより、キャッシュ上のセグメントを廃棄する必
要がある際に、RAPセグメントをできるだけキャッシ
ュ上に残すように動作できる。また、あるデータがop
enされた時に、RAPセグメントをキャッシュ上に先
読みするように動作できる。したがって、通常の順次ア
クセスとは異なる性質を持つランダムアクセス時のキャ
ッシュヒット率を向上させることができ、その結果、ラ
ンダムアクセス時の平均応答時間を小さくすることが可
能となる。As described above, according to this embodiment, see
From the tendency of data manipulation such as k request and access request, it is possible to predict whether each part of the data is likely to become a random access point in the future, and store the information as RAP segment information. By utilizing the RAP segment information, when the segment on the cache needs to be discarded, the RAP segment can be operated to remain on the cache as much as possible. Also, some data is op
When en-enabled, it can operate to read ahead the RAP segment on the cache. Therefore, the cache hit rate at the time of random access having a property different from that of normal sequential access can be improved, and as a result, the average response time at the time of random access can be shortened.
【0148】以下には、本発明によるデータ再生装置の
実施形態について述べる。本実施形態に係るデータ再生
装置は、基本的な映像データや音声データの記録再生の
操作手段に加えて、
・再生開始のインデックスとなり得る再生開始位置を自
動的に検出し、検出した位置を再生開始インデックスと
して記録する手段
・記録されたインデックスに優先順位をつける手段
・記録されたインデックスの一覧からインデックスを選
択し、選択したインデックスの示す位置からデータ再生
を開始する、インデックス再生の手段
・操作者が明示的にインデックスを記録する手段
・記録したインデックスを編集、削除する手段
を提供するものである。Hereinafter, embodiments of the data reproducing apparatus according to the present invention will be described. The data reproducing apparatus according to the present embodiment has, in addition to the basic operation means for recording and reproducing video data and audio data,:-Automatically detects a reproduction start position that can be a reproduction start index and reproduces the detected position. A means for recording as a start index, a means for prioritizing recorded indexes, a means for selecting an index from a list of recorded indexes, and starting data reproduction from the position indicated by the selected index Provides a means for explicitly recording the index and a means for editing and deleting the recorded index.
【0149】以降では、本実施形態に係るデータ再生装
置の全体構成と各構成要素の説明を行ない、次に本装置
で用意するインデックスの管理方法と利用方法の概要を
説明する。その後、ユーザの操作を起点として各構成要
素がどのように連係して動作するかを具体的な実施例を
挙げて説明する。In the following, the overall structure of the data reproducing apparatus according to the present embodiment and each constituent element will be described, and then the outline of the method of managing and using the indexes prepared by this apparatus will be described. After that, how the respective components cooperate with each other from the user's operation as a starting point will be described with reference to specific examples.
【0150】まず、本実施形態で扱う、再生開始インデ
ックスと、再生開始インデックスのリストについて述べ
る。First, a reproduction start index and a list of reproduction start indexes used in this embodiment will be described.
【0151】再生開始インデックスとは、本データ再生
装置が再生するデータの再生開始位置を指定して再生を
開始する際に参照する、再生開始位置を示す情報であ
る。再生開始インデックスによって、操作者が、後から
見たい場面を素早く呼び出すことが可能となる。再生開
始インデックスには、例えば、再生開始インデックスを
一意に定める『インデックスの識別子』、再生開始イン
デックスの対象となる『データの識別子』、そのデータ
の再生開始アドレスを示す『シークポイント』、再生開
始インデックスの『記録時刻』、『参照回数』、『イン
デックスの名前』、不用意に再生開始インデックスが削
除されないようにするための『保護フラグ』の要素が含
まれている。The reproduction start index is information indicating the reproduction start position, which is referred to when the reproduction start position of the data to be reproduced by the present data reproduction apparatus is designated and reproduction is started. The playback start index enables the operator to quickly call a scene that he or she wants to see later. The reproduction start index includes, for example, an "index identifier" that uniquely defines the reproduction start index, an "data identifier" that is the target of the reproduction start index, a "seek point" that indicates the reproduction start address of the data, and a reproduction start index. “Recording time”, “reference count”, “index name”, and “protection flag” elements for preventing the reproduction start index from being deleted carelessly.
【0152】一方、再生開始インデックスのリストと
は、複数の再生開始インデックスの集合で、リスト構造
またはテーブルとして管理されている(図18を参
照)。On the other hand, the reproduction start index list is a set of a plurality of reproduction start indexes and is managed as a list structure or a table (see FIG. 18).
【0153】図17に、本実施形態に係るデータ再生装
置の一構成例を示す。本再生装置は、制御部21、デー
タ通信路に接続されたデータ入出力部22、記憶装置2
3、一時記憶領域24、タイマー25、操作者からの入
力を受け付けるユーザ入力部26、デコーダ27、画面
やスピーカ等の出力装置に接続された出力部29から構
成される。必要に応じて、エンコーダ28、チューナ等
の入力装置に接続された入力部30も備えても良い。FIG. 17 shows a configuration example of the data reproducing apparatus according to this embodiment. The reproducing apparatus includes a control unit 21, a data input / output unit 22 connected to a data communication path, and a storage device 2.
3, a temporary storage area 24, a timer 25, a user input unit 26 that receives an input from an operator, a decoder 27, and an output unit 29 connected to an output device such as a screen or a speaker. An input unit 30 connected to an input device such as the encoder 28 and the tuner may be provided as necessary.
【0154】制御部21は、ソフトウェアとそのソフト
ウェアを実行するためのCPUで構成され、
・再生開始位置となり得るインデックスの検出
・インデックスの優先順位付け
・ユーザ入力部26からのユーザ入力の処理
・ユーザインタフェイスのための表示画面の構成
・記憶装置23との間での再生開始インデックスのリス
トの読み書き
・一時記憶領域24との間での一時的なデータの読み書
き
・タイマー25の制御
・データ入出力部22との間の要求とデータの送受信
・出力部29に対するデータの書き出し
・入力部30からのデータの読み込み
を行う。制御部21のソフトウェア本体は、記憶装置2
3に記録されており、記憶装置23に記録された基本ソ
フトウェアによって、必要な部分が一時記憶領域24に
読み込まれる。The control unit 21 is composed of software and a CPU for executing the software, detection of an index that can be a reproduction start position, prioritization of the index, processing of user input from the user input unit 26, user Configuration of display screen for interface, reading / writing list of playback start index from / to storage device 23, reading / writing temporary data from / to temporary storage area 24, controlling timer 25 / data input / output Requests with the unit 22, data transmission / reception, data writing to the output unit 29, and data reading from the input unit 30 are performed. The software body of the control unit 21 is the storage device 2
3 is recorded in the storage device 23, and the necessary portion is read into the temporary storage area 24 by the basic software recorded in the storage device 23.
【0155】データ入出力部22は、データ通信路を通
して、外部の記憶装置に対する要求とそこに記録されて
いるデータの読み込み/書き出しを扱う部分である。例
えば、本データ再生装置をクライアントとし、ネットワ
ークを経由して、サーバとなる記憶装置(図1のような
階層記憶装置であっても良いしその他の種類のサーバ装
置であっても良い)に対してデータを読み書きする場合
には、データ入出力部22は、ネットワークインターフ
ェイスとその制御ソフトウェアで構成され、サーバとの
間で要求とデータの送受信を行う。The data input / output unit 22 is a unit for handling requests to external storage devices and reading / writing of data recorded therein via a data communication path. For example, with respect to a storage device (which may be a hierarchical storage device as shown in FIG. 1 or a server device of another type) which serves as a server via the network using the data reproducing device as a client, When data is read and written by the data input / output unit 22, the data input / output unit 22 includes a network interface and its control software, and sends and receives requests and data to and from the server.
【0156】記憶装置23は、永続的に使うデータを記
録する部分である。本データ再生装置の電源を切っても
その内容が保持されるように、ハードディスクや、不揮
発性RAM等を使用して構成する。記憶装置23には、
代表的には、制御部21のためのソフトウェアと、再生
開始インデックスのリストが記録される。そして、制御
部21からの要求により、記憶装置23内に記録されて
いる内容を読み込んで制御部21へ送信したり、制御部
21から情報を受信して記憶装置23内に書き出したり
する。The storage device 23 is a part for recording permanently used data. A hard disk, a non-volatile RAM, or the like is used so that the contents of the data reproducing apparatus are retained even when the power is turned off. In the storage device 23,
Typically, the software for the control unit 21 and a list of reproduction start indexes are recorded. Then, in response to a request from the control unit 21, the contents recorded in the storage device 23 are read and transmitted to the control unit 21, or the information is received from the control unit 21 and written in the storage device 23.
【0157】制御部21が記憶装置23内の再生開始イ
ンデックスのリストを扱う手段として、
・再生開始インデックスの単体、もしくは一括での取得
・再生開始インデックスの参照カウントのインクリメン
ト
・再生開始インデックスの登録
を用意する。As means for the control unit 21 to handle the list of reproduction start indexes in the storage device 23: acquisition of the reproduction start index alone or in batch; increment of the reference count of the reproduction start index; registration of the reproduction start index prepare.
【0158】一時記憶領域24は、制御部21が一時的
に使用するデータなどを記録する部分である。一時記憶
領域24に記録された内容は本データ再生装置の電源を
切った場合には保持する必要は無く、また、高速なアク
セスができる必要があるので、RAM等を使用して構成
する。一時記憶領域24には、制御部のためのソフトウ
ェアが記録され、さらに、制御部のソフトウェアの作業
領域が設けられる。この作業領域には、再生開始インデ
ックスのリストのキャッシュ、再生開始インデックスの
自動検出のための再生位置記憶、その他が記録される。
制御部のソフトウェアは、本データ再生装置の電源を入
れた時など、ソフトウェアが必要になった時に記憶装置
23から一時記憶領域24に読み込まれる。The temporary storage area 24 is a portion for recording data and the like temporarily used by the control unit 21. The contents recorded in the temporary storage area 24 do not need to be retained when the power of the data reproducing apparatus is turned off, and since high-speed access is required, it is configured by using a RAM or the like. Software for the control unit is recorded in the temporary storage area 24, and a work area for the software of the control unit is further provided. In this work area, a cache of a list of reproduction start indexes, reproduction position storage for automatic detection of reproduction start indexes, and the like are recorded.
The software of the control unit is read from the storage device 23 into the temporary storage area 24 when the software is needed, such as when the power of the data reproducing apparatus is turned on.
【0159】タイマー25は、外部クロックによって駆
動され、タイマー内のカウンタ値をインクリメントして
いく。タイマーは、制御部21によって、再生開始イン
デックスとなり得る再生位置を検出するために使用され
る。制御部21からは、タイマー25の保持しているカ
ウンタ値のゼロリセットと読み出しをおこなう。The timer 25 is driven by an external clock and increments the counter value in the timer. The timer is used by the control unit 21 to detect a reproduction position that can be a reproduction start index. From the control unit 21, the counter value held by the timer 25 is reset to zero and read.
【0160】ユーザ入力部26は、操作者の本データ再
生装置への操作入力を制御部21に伝える部分である。
ユーザ入力部26は、本データ再生装置に用意された操
作手段を呼び出すためのボタンやカーソルキー、決定キ
ーなどの電気的な入力装置と、その入力を制御部21に
伝えるための変換器によって構成される。より進んだ構
成として、入力装置をマウスやキーボード、ソフトウェ
アキーボードによって置き換えることもできる。The user input section 26 is a section for transmitting an operation input to the present data reproducing apparatus by the operator to the control section 21.
The user input unit 26 is composed of an electric input device such as a button, a cursor key, and an enter key for calling the operation means prepared in the data reproducing apparatus, and a converter for transmitting the input to the control unit 21. To be done. As a more advanced configuration, the input device can be replaced with a mouse, keyboard, or software keyboard.
【0161】デコーダ27は、制御部21から送られて
くる音声/映像データや、制御部21によって作られる
ユーザインタフェイスのための表示画面の構成データを
復号/展開し、出力部29に渡す部分である。The decoder 27 decodes / decompresses the audio / video data sent from the control unit 21 and the display screen configuration data for the user interface created by the control unit 21, and passes it to the output unit 29. Is.
【0162】エンコーダ28は、入力部30から送られ
てくる音声/映像データを符号化し、制御部21に渡す
部分である。The encoder 28 is a part which encodes the audio / video data sent from the input part 30 and passes it to the control part 21.
【0163】デコーダ27とエンコーダ28の音声/映
像データを復号/符号化する部分は、ソフトウェアで
も、ハードウェアでも構成することができる。ハードウ
ェアとして構成する場合には、そのための回路を組み込
み、ソフトウェアとして構成する場合には、ソフトウェ
アとソフトウェアの実行のためのCPUおよび記憶領域
のためのRAM、および基本ソフトウェアの記録のため
の記憶装置を組み込む。CPUやRAM、記憶装置は制
御部21のそれと共有することもできる。The portions of the decoder 27 and the encoder 28 for decoding / encoding the audio / video data can be configured by software or hardware. When configured as hardware, a circuit for that is incorporated, and when configured as software, a CPU for executing software and software, a RAM for a storage area, and a storage device for recording basic software. Incorporate. The CPU, RAM, and storage device can be shared with that of the control unit 21.
【0164】出力部29は、デコーダ27によって復号
/展開されたデータを、画面やスピーカなどの出力装置
に出力する部分である。出力部29は、デコーダ27か
らの出力を出力対象となる装置の扱える形式への変換を
おこなう回路によって構成される。The output section 29 is a section for outputting the data decoded / developed by the decoder 27 to an output device such as a screen or a speaker. The output unit 29 is configured by a circuit that converts the output from the decoder 27 into a format that can be handled by a device that is an output target.
【0165】入力部30は、チューナなどの入力装置か
らの入力をエンコーダ28へ出力する部分である。入力
部30は、入力装置からの入力を、エンコーダ28が扱
える形式への変換をおこなう回路によって構成される。
なお、本データ再生装置は、エンコーダ、入力部を必ず
備える必要は無く、備えない場合は、再生専用の装置と
して機能する。The input section 30 is a section for outputting an input from an input device such as a tuner to the encoder 28. The input unit 30 is configured by a circuit that converts an input from the input device into a format that the encoder 28 can handle.
The data reproducing apparatus does not necessarily have to have an encoder and an input unit, and if not provided, it functions as a reproduction-only apparatus.
【0166】次に、本データ再生装置における、
・再生開始インデックスの自動的な検出
・再生開始インデックスのリスト内での優先順位の決定
方法
・インデックス選択のユーザインタフェイスの基本的な
動作仕様
の概要について説明する。Next, in the present data reproducing apparatus: -Automatic detection of reproduction start index-Method of determining priority in list of reproduction start index-Outline of basic operation specifications of user interface for index selection Will be described.
【0167】まず、図19を参照しながら、再生開始イ
ンデックスとなり得るシークポイントを自動的に検出
し、インデックスのリストとして記憶装置23に記録す
る方法について説明する。First, with reference to FIG. 19, a method for automatically detecting seek points that can be the reproduction start index and recording them in the storage device 23 as a list of indexes will be described.
【0168】本実施形態におけるデータ再生装置も含
め、従来の再生装置には、再生のための制御手段とし
て、再生、停止、早送り、巻戻し等の基本的な操作手段
が備えられている。一般的に、操作者は、このような操
作手段を用いてデータ内より自分の再生したい場面を捜
し出す。その際に、高速再生、高速逆再生を用い、大雑
把にデータを操作した後、再生を開始する。再生された
場面が操作者が所望する場面であった場合には、そのま
ま再生を続け、そうでない場合には、再び高速再生、高
速逆再生をおこなう。The conventional reproducing apparatus, including the data reproducing apparatus in this embodiment, is provided with basic operating means such as reproduction, stop, fast forward, and rewind as control means for reproduction. Generally, the operator uses such an operation means to search the data for a scene he wants to reproduce. At that time, high-speed reproduction and high-speed reverse reproduction are used to roughly operate the data, and then reproduction is started. If the reproduced scene is the scene desired by the operator, the reproduction is continued as it is, and if not, the high speed reproduction and the high speed reverse reproduction are performed again.
【0169】つまり、このようなパターンで操作者が操
作をおこなう中で、ある閾値T0以上の期間継続した再
生が開始されたシークポイント(図19では2番目と4
番目の再生開始点)を検出することが、再生開始インデ
ックスとなり得るシークポイントを検出することにな
る。That is, while the operator is operating in such a pattern, the seek point at which reproduction continued for a certain threshold T0 or more (second and fourth in FIG. 19) is started.
The detection of the second reproduction start point) detects a seek point that can be a reproduction start index.
【0170】そして、本再生装置では、上記のように検
出したシークポイントから、再生開始インデックスを生
成し、記憶装置23に記録する手段を用意する。記録し
ておくことが出来るインデックスの数は、インデックス
のリストを記録する記憶装置23の容量によって変わ
る。Then, the reproducing apparatus is provided with means for generating a reproducing start index from the seek point detected as described above and recording it in the storage device 23. The number of indexes that can be recorded varies depending on the capacity of the storage device 23 that records the index list.
【0171】また、操作者が再生開始インデックスのリ
ストを後から参照して、リスト中からひとつの再生開始
インデックスを選択し、そのシークポイントからの再生
をおこなうためのインデックス再生の操作手段を用意す
る。Further, the operator refers to the reproduction start index list later, selects one reproduction start index from the list, and prepares an index reproduction operation means for performing reproduction from that seek point. .
【0172】本再生装置において再生開始インデックス
となり得るシークポイントを上記のように検出するの
は、図1の階層記憶装置において、順次アクセス(再
生)量が大きい場合に順次アクセスの先頭(再生開始
点)をRAP候補として検出する(図2(c))のと同
様の原理を用いている。すなわち、図1の階層記憶装置
においては、図2(c)に示したような条件を満たすポ
イントのRAPセグメント情報を更新し、RAP候補を
含むセグメントがキャッシュに存在する確率が高くなる
ように制御することにより、以降にユーザがコンテンツ
の途中の任意の場所からの再生を指示した時のレスポン
スタイムをサーバ装置側で短くしている。一方、本再生
装置においては、ユーザが初めにサーチした際に図2
(c)と同様の(図19の)条件を満たすポイントをク
ライアント装置側で履歴(再生開始インデックスのリス
ト)として残しておき、以降はその履歴を利用して再生
したい場面を早く呼び出すことができるようにしてい
る。The seek point which can be the reproduction start index in the present reproducing apparatus is detected as described above, in the hierarchical storage apparatus of FIG. 1, when the sequential access (reproduction) amount is large, the head of the sequential access (reproduction starting point 2) is detected as a RAP candidate (FIG. 2 (c)). That is, in the hierarchical storage device of FIG. 1, the RAP segment information of points satisfying the conditions as shown in FIG. 2C is updated, and control is performed so that the probability that a segment including a RAP candidate exists in the cache is increased. By doing so, the response time when the user subsequently instructs the reproduction from an arbitrary place in the middle of the content is shortened on the server device side. On the other hand, in this reproducing apparatus, when the user first searches,
Points that satisfy the same condition (of FIG. 19) as in (c) are left as a history (playback start index list) on the client device side, and thereafter, the history can be used to quickly recall a scene to be played back. I am trying.
【0173】次に、インデックスのリストの中での再生
開始インデックスの優先順位を決める方法について説明
する。優先順位を決めるにあたっては、例えば、
・新しく記録されたもの(新鮮度)
・選択された回数の多いもの(参照回数)
・操作者が明示的にリストに追加した
再生開始インデックスをリストの中での順位を上げる。Next, a method of determining the priority order of the reproduction start index in the index list will be described. In determining the priority order, for example, newly recorded ones (freshness), many selected ones (referenced number), the playback start index explicitly added to the list by the operator in the list Raise the rank of.
【0174】操作者がシーク操作の後に閾値以上の期間
の再生をした場合に自動的に再生開始インデックスを記
録する際や、操作者が既に記録されている再生開始イン
デックスを使ってのインデックス再生を開始した際に、
本データ再生装置はその再生開始位置の最終参照時刻を
記録し、参照カウントを増加させる。インデックス再生
をする際や、インデックスの編集をする際など、再生開
始インデックスのリストを表示する際には、このふたつ
のパラメータによって決まる優先順位に基づいた順序で
表示する。この記録された時刻と、参照された回数のふ
たつのパラメータのどちらに重みを置くかは、本データ
再生装置の用途によって変わってくる。When the operator performs reproduction for a period equal to or more than the threshold value after the seek operation, the reproduction start index is automatically recorded, or the index reproduction is performed by using the reproduction start index already recorded by the operator. When I started,
The data reproducing apparatus records the last reference time of the reproduction start position and increases the reference count. When displaying a list of playback start indexes, such as when playing back an index or when editing an index, they are displayed in an order based on the priority order determined by these two parameters. Which of the two parameters, that is, the recorded time and the number of times of reference, is weighted depends on the use of the data reproducing apparatus.
【0175】例えば、高い頻度で参照を繰り返す情報な
ど、直前に参照した再生開始位置を利用することが多い
と考えられる場合には、新鮮度のパラメータへの重み付
けを大きくする。逆に、再生開始位置の選択をする場面
の少ない状況など、過去に選択された回数が多い再生開
始位置を選択する可能性が高いと考えられる場合には、
参照回数のパラメータへの重み付けを大きくする。For example, when it is considered that the reproduction start position referred to immediately before is often used, such as information in which the reference is repeated at high frequency, the freshness parameter is weighted more. On the contrary, when it is considered that there is a high possibility that the reproduction start position that has been selected a lot in the past is likely to be selected, such as the situation where the reproduction start position is selected in a few situations,
Increase the weight of the reference count parameter.
【0176】また、操作者が明示的にリストに追加した
ものに関しては、後から参照する可能性が高いと考えら
れるので、あらかじめ高い優先順位でリスト内に記録す
る。Further, since it is considered that there is a high possibility that the operator explicitly refers to the items explicitly added to the list, they are recorded in the list in high priority in advance.
【0177】最後に、操作者が再生開始インデックスを
選択する際のユーザインタフェイスの基本的な動作につ
いて説明する。Finally, the basic operation of the user interface when the operator selects the reproduction start index will be described.
【0178】操作者が再生開始インデックス選択画面の
呼び出しの操作をリモートコントロール装置等を使って
本データ再生装置に対しておこなうと、画面に図22の
ようにインデックスのリストの一覧が表示される。この
一覧は、前述のパラメータによって決定される優先順位
が高いものから順番に表示される。表示される再生開始
位置の数は、表示画面の解像度や、本データ再生装置の
用途によって変更する。表示画面の解像度が低いなどの
理由で、一覧に再生開始インデックスの詳しい情報を表
示し切れない場合は、画面上部などに、カーソルの指す
再生開始インデックスの詳しい情報を表示場所を設けて
表示する。When the operator performs an operation of calling the reproduction start index selection screen on the data reproducing device using a remote control device or the like, a list of index lists is displayed on the screen as shown in FIG. This list is displayed in descending order of priority determined by the above parameters. The number of reproduction start positions to be displayed is changed depending on the resolution of the display screen and the use of this data reproducing apparatus. When the detailed information of the reproduction start index cannot be displayed in the list due to the low resolution of the display screen or the like, the detailed information of the reproduction start index pointed by the cursor is provided in a display place at the upper part of the screen.
【0179】操作者は、カーソルキー(キーボード)や
マウスなどを使用して、画面上のカーソルを動かし、表
示されたリストの中の希望する再生開始インデックスに
カーソルを合わせ、確定キーを押し、選択を確定する。
操作者が再生開始インデックスの選択を終えると、デー
タ再生装置は、そのインデックスの指すシークポイント
からデータの再生を開始する。The operator uses the cursor keys (keyboard) or mouse to move the cursor on the screen, moves the cursor to the desired playback start index in the displayed list, and presses the enter key to select. To confirm.
When the operator finishes selecting the reproduction start index, the data reproducing device starts reproducing the data from the seek point indicated by the index.
【0180】以下では、本実施形態のデータ再生装置の
具体的な実施例を説明する。第一の例として、サーバ/
クライアント方式による、ネットワークを介したストリ
ーム再生の場合を、第二の例として、ビデオやDVDの
ような取り外し可能な外部の記憶メディアに記録された
データを扱う場合を挙げる。A specific example of the data reproducing apparatus according to this embodiment will be described below. As a first example, server /
As a second example of the case of stream reproduction via a network by the client system, a case of handling data recorded in a removable external storage medium such as a video or a DVD will be described.
【0181】まず、第一の例、すなわちネットワークを
経由してサーバとなる記憶装置から映像情報を受け取り
再生する、ネットワーククライアント型の記録再生装置
として本データ再生装置を使用する場合について説明す
る。First, a description will be given of a first example, that is, a case where the present data reproducing apparatus is used as a network client type recording / reproducing apparatus for receiving and reproducing video information from a storage device serving as a server via a network.
【0182】本例においては、図20に示すように、図
17のデータ入出力部22はネットワークインターフェ
イスとして構成され、その制御をおこなうソフトウェア
も含む。本データ再生装置はこのインターフェイスを通
して、サーバとの間で要求とデータの送受信をおこな
う。In this example, as shown in FIG. 20, the data input / output unit 22 of FIG. 17 is configured as a network interface, and also includes software for controlling the network interface. The data reproducing device transmits / receives requests and data to / from the server through this interface.
【0183】本データ再生装置は、再生/インデックス
再生、停止/一時停止、高速再生(早送り)、高速逆再
生(巻戻し)、インデックス付け、インデックス編集の
操作手段を有する。これらの操作をサーバへ伝える際
に、サーバ側の実施形態で述べたopen、seek、
read、write、close等のファイル操作要
求に変換して伝えても構わない。これに加えてエンコー
ダ、入力部をデータ再生装置が備えている場合は、録画
をおこなうことができる。サーバに同等の録画をおこな
うための装置が備えられている場合は、サーバのエンコ
ーダ、入力部を使用して録画をおこなえばよいので、本
データ再生装置では必ずしもエンコーダ、入力部を備え
る必要はない。This data reproducing apparatus has operation means for reproduction / index reproduction, stop / pause, high speed reproduction (fast forward), high speed reverse reproduction (rewind), indexing, and index editing. When transmitting these operations to the server, the open, seek, and
The file operation request such as read, write, and close may be converted and transmitted. In addition to this, if the data reproducing device is provided with an encoder and an input unit, recording can be performed. If the server is equipped with a device for performing equivalent recording, recording can be performed using the encoder and input unit of the server, so this data playback device does not necessarily have to have an encoder and input unit. .
【0184】通常の再生の場合、操作者が再生開始の操
作をおこなうと、ユーザ入力部26は制御部21に対し
てその入力を伝える。制御部21は、データ入出力部2
2を通して、サーバに対しデータ転送の要求を出す。デ
ータ転送の要求には、データ識別子、読み出し開始位置
が含まれる。サーバは、サーバの持つ記憶装置内の、受
け取ったデータ読み出し位置から指定されたデータを読
み出し、データ入出力部22にデータを転送する。制御
部21は、データ入出力部22から受け取ったデータを
デコーダ27に転送する。デコーダ27はデータを順次
復号化し、出力装置である画面やスピーカに出力部29
より出力する。In the case of normal reproduction, when the operator performs a reproduction start operation, the user input section 26 notifies the control section 21 of the input. The control unit 21 uses the data input / output unit 2
A request for data transfer is issued to the server through 2. The data transfer request includes the data identifier and the read start position. The server reads the specified data from the received data read position in the storage device of the server and transfers the data to the data input / output unit 22. The control unit 21 transfers the data received from the data input / output unit 22 to the decoder 27. The decoder 27 sequentially decodes the data, and outputs the output unit 29 to a screen or a speaker which is an output device.
Output more.
【0185】制御部21は、上記の再生の開始の操作と
同時に、その再生開始を始めた位置が操作者が所望す
る、再生開始インデックスとして記録すべきシークポイ
ントであるかどうかの判定を開始する。この判定の動作
の過程を図21に沿って説明する。At the same time as the reproduction start operation described above, the control unit 21 starts determining whether or not the position where the reproduction is started is the seek point to be recorded as the reproduction start index desired by the operator. . The process of this determination operation will be described with reference to FIG.
【0186】まず、本データ再生装置は、操作者からの
入力を受け付けるコマンド待機状態にある(S16
1)。操作者のユーザ入力部26に対する、早送り/巻
戻し(シーク)の操作、再生の操作の入力が制御部21
に伝えられる(S162)。入力を受け取った制御部2
1は、再生を開始したシークポイントの値Pを一時記憶
領域24に記録する(S163)。続いて制御部21
は、タイマー25を起動し(S164)、タイマー25
はカウントを開始する(S165)。タイマー25は一
定時間ごとに、保持しているカウント値tをインクリメ
ントする(S166)。First, the data reproducing apparatus is in a command waiting state for receiving an input from the operator (S16).
1). The operator inputs the fast forward / rewind (seek) operation and the reproduction operation to the user input unit 26 by the control unit 21.
(S162). Control unit 2 that received input
1 records the value P of the seek point at which the reproduction has started in the temporary storage area 24 (S163). Then, the control unit 21
Starts the timer 25 (S164), and the timer 25
Starts counting (S165). The timer 25 increments the held count value t at regular time intervals (S166).
【0187】制御部21は、ユーザ入力部26から操作
者の停止、シークなど再生状態を変更する操作が伝えら
れるまで、通常の再生動作をおこなう。再生の動作と同
時に、タイマー25のカウント値tと、ある閾値T0と
を比較し続ける(S167No,S168)。カウント
値tが閾値T0よりも大きくなる前に再生状態を変化さ
せる操作がおこなわれた場合には(S169No,S1
67Yes)、シークポイントPは記録すべき再生開始
インデックスでないと判断し、タイマー25を停止さ
せ、次の動作に移る(S161)。The control section 21 performs a normal reproduction operation until the user input section 26 reports an operation for changing the reproduction state such as stop of the operator or seek. Simultaneously with the reproduction operation, the count value t of the timer 25 is continuously compared with a certain threshold value T0 (S167 No, S168). If the operation of changing the reproduction state is performed before the count value t becomes larger than the threshold value T0 (No in S169, S1).
67 Yes), it is determined that the seek point P is not the reproduction start index to be recorded, the timer 25 is stopped, and the next operation is performed (S161).
【0188】再生状態を変更する操作の入力がない状態
が続き、タイマー25のカウント値tが、閾値T0を越
えた場合(S169Yes)、制御部21は操作者が再
生を開始したシークポイントPが操作者の所望する場面
を示すシークポイントであると判断する。なお、閾値T
0は、操作者の使いやすいように、任意の値を設定する
事ができる。When there is no operation input for changing the reproduction state and the count value t of the timer 25 exceeds the threshold value T0 (Yes in S169), the control unit 21 determines that the seek point P at which the operator has started reproduction. It is determined that the seek point indicates the scene desired by the operator. The threshold T
An arbitrary value of 0 can be set so that the operator can easily use it.
【0189】次に、制御部21は、シークポイントPの
値と同じ値を持った再生開始インデックスが記憶装置2
3中のインデックスのリストLに含まれるかを調べる
(S170)。もし、シークポイントの値がPの再生開
始インデックスが既にリストLに含まれていた場合に
は、後述するインデックスのリスト内での優先順位を決
定するためのパラメータとして使う、その再生開始イン
デックスの参照カウントをインクリメントする(S17
1)。シークポイントの値がPの再生開始インデックス
がリストLに含まれていない場合には、シークポイント
Pから、再生開始インデックスIを制御部21で生成
し、リストLに併合し、記憶装置23に記録する(S1
72)。Next, the control unit 21 determines that the reproduction start index having the same value as the seek point P is the storage device 2.
It is checked whether or not it is included in the list L of indexes in No. 3 (S170). If the playback start index whose seek point value is P is already included in the list L, the playback start index used as a parameter for determining the priority order in the index list described later is referred to. The count is incremented (S17
1). When the playback start index having the seek point value P is not included in the list L, the playback start index I is generated from the seek point P by the control unit 21, merged into the list L, and recorded in the storage device 23. Yes (S1
72).
【0190】再生開始インデックスIの生成は、シーク
ポイントPから次の要素:インデックスの識別子(リス
トの中で一意にインデックスを識別できる値を制御部2
1で生成する)、データの識別子(再生しているデータ
の識別子)、シークポイントP、記録時刻、参照回数
(初期値1)、インデックスの名前(制御部21で生成
する)、保護フラグ、を制御部21が生成することによ
っておこなう。The reproduction start index I is generated from the seek point P by the following element: index identifier (a value which allows the index to be uniquely identified in the list is controlled by the control unit 2
1), data identifier (identifier of data being reproduced), seek point P, recording time, reference count (initial value 1), index name (generated by control unit 21), protection flag. This is performed by the generation by the control unit 21.
【0191】インデックスの名前は、操作者が明示的に
指定しない場合は、データ識別子、シークポイント、記
録日時から制御部21が生成して記憶装置23に記録す
る。操作者は、これらの情報をあとから編集することが
可能である。The index name is generated by the control unit 21 from the data identifier, the seek point, and the recording date and time and recorded in the storage device 23, unless the operator explicitly specifies it. The operator can edit this information later.
【0192】保護フラグは、自動的にインデックスが削
除されないようにするためのフラグである。自動検出に
よる登録の場合は、優先順位が下がると記憶装置から自
動的に削除される状態で登録される。The protection flag is a flag for preventing the index from being automatically deleted. In the case of registration by automatic detection, the registration is automatically deleted from the storage device when the priority decreases.
【0193】本例においては、再生開始インデックスの
リストを記録する手法として、上記のように本データ再
生装置に備える記憶媒体/記憶装置に記録する方式と、
音声情報、画像情報を持っているネットワークに接続さ
れた記憶装置(サーバ)に記録する方式がある。サーバ
に記録された再生開始インデックスは、サーバに接続さ
れた他の本データ再生装置からも利用することができ
る。In this example, as a method of recording the list of reproduction start indexes, a method of recording in the storage medium / storage device provided in the data reproducing apparatus as described above,
There is a method of recording audio information and image information in a storage device (server) connected to a network. The reproduction start index recorded in the server can also be used from another data reproducing apparatus connected to the server.
【0194】再生開始インデックスのリストをサーバに
記録する方式では、
・再生開始インデックスの単体、一覧での取得
・あるシークポイントの値と同じ値をシークポイントと
して持つ再生開始インデックスがリストに含まれるかど
うかのチェック
・再生開始インデックスの参照カウントのインクリメン
ト
・再生開始インデックスの登録
を、データ入出力部22を通して、サーバとの間で要求
とデータを送受信しておこなう。In the method of recording the list of the reproduction start index in the server: -A single reproduction start index, acquisition in the list-Is the reproduction start index having the same seek point value as the seek point included in the list? Whether or not to check / increase the reference count of the reproduction start index / register the reproduction start index is performed by transmitting / receiving a request and data to / from the server through the data input / output unit 22.
【0195】サーバに記録されている再生開始インデッ
クスのリストには、優先順位が付いている必要はなく、
クライアント側(本データ再生装置)の制御部21でリ
ストの一覧を読み込み、その内容を走査することによ
り、優先順位を決定する。The list of reproduction start indexes recorded in the server does not need to be prioritized.
The control unit 21 on the client side (this data reproducing apparatus) reads the list of the list and scans the contents to determine the priority order.
【0196】サーバに再生開始インデックスのリストを
記録することで、他のデータ再生装置を使っている操作
者と、再生開始インデックスを共有したり、ある操作者
が、複数のデータ再生装置を使う場合にも、通常使用し
ている再生開始インデックスのリストを参照したりする
ことが可能となる。サーバから読み込んだ再生開始イン
デックスの内容を、本データ再生装置内の一時記憶領域
24内にキャッシュして、サーバとの通信の負荷を下げ
るようにしても良い。When a reproduction start index is recorded in the server to share the reproduction start index with an operator who is using another data reproduction apparatus, or when an operator uses a plurality of data reproduction apparatuses Also, it is possible to refer to the list of the reproduction start index that is normally used. The content of the reproduction start index read from the server may be cached in the temporary storage area 24 in the data reproducing apparatus to reduce the load of communication with the server.
【0197】次には、インデックス再生の場合を説明す
る。インデックス再生は、通常再生に再生開始位置の指
定を加えた操作手段で、本実施形態で初めて導入される
ものである。操作者が再生開始インデックス選択の操作
をおこなうと、図22のように、本データ再生装置の出
力画面にインデックスのリストの一覧が表示される。イ
ンデックスのリストの一覧の取得方法は、後述する。操
作者は、取得した一覧の中から希望する再生開始インデ
ックスを選択する。Next, the case of index reproduction will be described. The index reproduction is an operation means in which the reproduction start position is specified in addition to the normal reproduction, and is introduced for the first time in this embodiment. When the operator performs a reproduction start index selection operation, a list of index lists is displayed on the output screen of the data reproducing apparatus as shown in FIG. A method for acquiring the list of index lists will be described later. The operator selects a desired reproduction start index from the acquired list.
【0198】制御部21は、データ入出力部22を通し
て、操作者が選択した再生開始インデックスが指すシー
クポイントを引数にサーバに対してシーク要求を発行し
た後、データ転送要求を出す。サーバは、指定されたシ
ークポイントに再生開始位置を移動し、その場所から本
データ再生装置に対してデータの転送を開始する。この
とき、サーバが図1のような階層記憶装置で、再生開始
インデックスと同様の原理でRAP候補を検出すること
により、その再生開始位置を含むセグメントをキャッシ
ュに残すかあるいは先読みしていれば、本データ再生装
置からのデータ転送要求に対するレスポンスタイムは短
縮される。Through the data input / output unit 22, the control unit 21 issues a seek request to the server with the seek point indicated by the reproduction start index selected by the operator as an argument, and then issues a data transfer request. The server moves the reproduction start position to the designated seek point and starts data transfer from this position to this data reproducing apparatus. At this time, if the server detects the RAP candidate in the hierarchical storage device as shown in FIG. 1 according to the same principle as the reproduction start index and leaves the segment including the reproduction start position in the cache or prefetches it, The response time to the data transfer request from the data reproducing device is shortened.
【0199】再生開始インデックスが選択された時に、
制御部21は、記憶装置23に記録されている、選択さ
れた再生開始インデックスの参照カウントをインクリメ
ントする。When the playback start index is selected,
The control unit 21 increments the reference count of the selected reproduction start index recorded in the storage device 23.
【0200】操作者が停止もしくは一時停止の操作をお
こなった場合は、制御部21は、データ入出力部22を
通して、サーバに対してデータ転送終了の要求を発行す
る。サーバが、通常の再生停止と、一時停止で処理を振
り分けることが出来るように、その要求を区別するため
のフラグを要求に含める。When the operator performs a stop or temporary stop operation, the control section 21 issues a data transfer end request to the server through the data input / output section 22. The request includes a flag for distinguishing the request so that the server can divide the processing into normal reproduction stop and temporary stop.
【0201】高速再生は、操作者が、不必要な場面を飛
ばしたり、所望する場面を素早く探すために使用する、
短い時間で情報の再生をおこなう操作手段である。高速
再生をおこなうための方法としては、データ転送レート
を上げる方式と、スキップ方式の二通りを挙げることが
できる。High-speed playback is used by the operator to skip unnecessary scenes or to quickly find a desired scene.
It is an operation means for reproducing information in a short time. As a method for performing high-speed reproduction, there are two methods, a method of increasing the data transfer rate and a skip method.
【0202】データ転送レートを上げる方式では、一定
時間内に転送するデータ量を増やすことによって、高速
再生を実現する。データ転送レートを上げる方式による
高速再生時の再生位置の移動は図23のようになる。操
作者が高速再生の操作をおこなうと、制御部21は、デ
ータ入出力部22を通して、サーバに対して高速に再生
する度合を指定する要求を発行する。サーバは指定され
たデータ転送レートで本データ再生装置にデータを転送
する。In the method of increasing the data transfer rate, high-speed reproduction is realized by increasing the amount of data transferred within a fixed time. The movement of the reproduction position during high-speed reproduction by the method of increasing the data transfer rate is as shown in FIG. When the operator performs a high speed reproduction operation, the control unit 21 issues a request for specifying the degree of high speed reproduction to the server through the data input / output unit 22. The server transfers the data to the data reproducing device at the specified data transfer rate.
【0203】スキップ方式では、シーク要求、再生要
求、停止要求を繰り返し発行することで、一定時間に処
理するデータ量を変えることなく、高速再生を実現す
る。スキップ方式による高速再生時の再生位置の移動は
図24のようになる。操作者が高速再生の操作をおこな
うと、制御部21は、データ入出力部22を通して、サ
ーバに対して、シーク要求、再生要求、停止要求を繰り
返し発行する。サーバはその要求にしたがってデータの
読み込み位置を変更しながら、データを本データ再生装
置に転送する。なお、本方式は、間引かれたデータを受
信するので、前方から全てのデータを解釈しなくても、
途中からデータを解釈することができるデータ形式の場
合にのみ使用することができる。In the skip method, high speed reproduction is realized by repeatedly issuing a seek request, a reproduction request, and a stop request without changing the amount of data to be processed in a fixed time. The movement of the reproduction position during high-speed reproduction by the skip method is as shown in FIG. When the operator performs a high speed reproduction operation, the control unit 21 repeatedly issues a seek request, a reproduction request, and a stop request to the server through the data input / output unit 22. The server transfers the data to the data reproducing device while changing the read position of the data according to the request. Note that this method receives thinned data, so even if you do not interpret all the data from the front,
It can be used only when the data format allows the data to be interpreted halfway.
【0204】高速逆再生は、高速再生と同じように、素
早く操作者が所望する場面を探すために使用する、短い
時間で情報を逆方向に再生する操作手段である。高速再
生と同様に、データ転送レートを上げる方式と、スキッ
プ方式の二通りの方式が考えられる。The high-speed reverse reproduction is an operation means for reproducing information in a reverse direction in a short time, which is used for quickly searching for a desired scene by the operator like the high-speed reproduction. Similar to the high-speed reproduction, there are two methods of increasing the data transfer rate and the skip method.
【0205】扱うデータが、後方から連続的に解釈する
ことができない形式の場合は、解釈できる再生位置まで
戻って再生し、一定量の再生をおこなった後、再び前方
に解釈できる位置が見つかるまで再生位置を移動してい
く手法を使用する。この時に、本データ再生装置側の記
憶装置に後方からデータを記録していく方法は、データ
転送レートを上げる方式に、シーク動作を使って前方に
ある再生可能なデータを探す方法は、スキップ方式に似
ている。When the data to be handled is in a format that cannot be continuously interpreted from the rear, the data is returned to an interpretable reproduction position and reproduced, a certain amount of reproduction is performed, and then an interpretable position is found forward again. Use the technique of moving the playback position. At this time, the method of recording data from the rear in the storage device of the data reproducing device is the method of increasing the data transfer rate, and the method of searching the reproducible data in the front by using the seek operation is the skip method. It's similar to.
【0206】ここで、インデックス高速再生という操作
手段を新たに設けることも可能である。すなわち、再生
開始インデックスのリストに挙げられたシークポイント
を順に所定時間ずつ自動で再生していき、操作者がこれ
を見て真に所望する場面で通常再生に切り替える(再生
ボタンを押す)ことにより、高速再生よりも更に素早く
見たい場面にたどり着けるようにする。このときの所定
時間ずつ再生するインデックスの選択順序は、リスト内
優先順位の順でも良いし、操作者が最初に選択した再生
開始インデックスと同一のコンテンツに属する(同一の
データ識別子を持つ)インデックスを選んでその中から
何らかの順で再生しても良いし、操作者が最初に選択し
たインデックスの記録時刻の周辺の記録時刻を持つイン
デックスを選んで再生していっても良いし、操作者が最
初に選択したインデックスと同一または類似の名前が付
与されたインデックスを選んで再生していくのでも良
い。この場合、操作者が通常再生に切り替えたインデッ
クスの参照カウントをインクリメントすることになる。[0206] Here, it is possible to newly provide an operating means for high speed index reproduction. That is, the seek points listed in the playback start index are automatically played in sequence for a predetermined time, and when the operator sees this, the playback is switched to normal playback (pressing the playback button) at the truly desired scene. , Try to reach the scene you want to see even faster than high-speed playback. At this time, the order of selecting the indexes to be reproduced for each predetermined time may be the order of the priority in the list, or the index belonging to the same content as the reproduction start index initially selected by the operator (having the same data identifier) may be selected. It may be selected and played back in any order, or an index with a recording time around the recording time of the index first selected by the operator may be selected and played back, or the operator The index having the same or similar name as the index selected for may be selected and reproduced. In this case, the operator increments the reference count of the index switched to the normal reproduction.
【0207】高速再生、高速逆再生、インデックス再
生、インデックス高速再生は、再生位置を前方/後方に
移動させる操作手段であるが、この操作手段として、上
記の他に、操作者に明示的に再生位置を指定させるよう
にする手段があっても良い。例えば、現在の再生位置の
例えば10分後、30分後(または10分前、30分
前)にジャンプすることを示す操作ボタンを設ける、も
しくは操作者に何分後かを入力させてそこへジャンプす
る等の手段が提供でき、本データ再生装置は指定された
ジャンプ先に対するシーク要求を発行する。本例では、
そのシーク先から所定期間以上の通常再生を行った場合
にその再生開始点を再生開始インデックスのリストに追
加することになるが、そのシーク先を無条件に再生開始
インデックスのリストに追加しても良いし(図2(a)
の原理を応用)、そのシーク先までのシーク量が所定の
閾値より大きい場合にそのシーク先を再生開始インデッ
クスのリストに追加しても良い(図2(b)の原理を応
用)。High-speed reproduction, high-speed reverse reproduction, index reproduction, and index high-speed reproduction are operation means for moving the reproduction position forward / backward. As these operation means, in addition to the above, reproduction is explicitly performed by the operator. There may be means for designating the position. For example, an operation button that indicates jumping 10 minutes, 30 minutes (or 10 minutes before, 30 minutes before) of the current playback position is provided, or the operator inputs the number of minutes after which the operation button is entered. Means such as jumping can be provided, and the data reproducing apparatus issues a seek request to the specified jump destination. In this example,
When the normal playback is performed for a predetermined period or longer from the seek destination, the playback start point is added to the playback start index list, but even if the seek destination is unconditionally added to the playback start index list. Good (Figure 2 (a))
If the seek amount up to the seek destination is larger than a predetermined threshold value, the seek destination may be added to the list of reproduction start indexes (the principle of FIG. 2B is applied).
【0208】録画は、サーバに映像情報や音声情報を記
録する操作手段である。録画には、記録するデータを、
本データ再生装置側でエンコーダ、入力部を使って用意
する方式と、サーバ側(本データ再生装置以外の装置)
で用意する方式の二通りが考えられる。Recording is an operation means for recording video information and audio information in the server. For recording, the data to be recorded is
A method of preparing using the encoder and input unit on the data reproducing device side, and a server side (device other than this data reproducing device)
There are two possible methods to prepare.
【0209】本データ再生装置でデータを用意する方式
は、本データ再生装置にチューナやエンコーダなど、録
画するデータのソースを提供するための装置が備えられ
ており、サーバにそのような装置が備えられていない場
合に使用する。The method of preparing data in this data reproducing apparatus is such that the data reproducing apparatus is provided with a device for providing a source of data to be recorded, such as a tuner or an encoder, and the server is equipped with such a device. Use when not available.
【0210】操作者によるデータの録画の操作や、装置
による自動的な録画がおこなわれると、制御部21は、
サーバに対してデータ記録の要求を出す。記録の準備が
整うのを待ち、制御部21はエンコーダ28に対して、
データの符号化を開始する要求を発行する。エンコーダ
28は、入力部30からデータを取り込み、符号化した
後に制御部21に転送する。制御部21は録画するデー
タをサーバに転送する。操作者が録画を終了の操作をお
こなうと、制御部21はエンコーダ28に対して、符号
化を停止する要求を発行し、データの受信を停止する。
続いて、サーバに対してデータ記録を終了する要求を発
行する。When the data recording operation by the operator or the automatic recording by the device is performed, the control unit 21
Send a request for data recording to the server. After waiting for the preparation for recording, the control unit 21 instructs the encoder 28 to
Issue a request to start encoding data. The encoder 28 takes in the data from the input unit 30, encodes the data, and then transfers the data to the control unit 21. The control unit 21 transfers the data to be recorded to the server. When the operator performs an operation of ending recording, the control unit 21 issues a request to stop encoding to the encoder 28, and stops receiving data.
Then, a request for ending the data recording is issued to the server.
【0211】サーバ側でデータを用意する方式は、サー
バ側にチューナやエンコーダなど、録画するデータのソ
ースを提供するための装置が備えられている場合に使用
する。The method of preparing data on the server side is used when the server side is provided with a device for providing a source of data to be recorded, such as a tuner or an encoder.
【0212】操作者によるデータの録画の操作や、装置
による自動的な録画がおこなわれると、本データ再生装
置は、サーバに対してデータ記録の要求を出す。サーバ
は、記録の準備をおこない、データソースとなる装置か
らデータを取り込んで記憶装置に記録する。録画を終了
の操作をおこなうと、本データ再生装置はサーバに対し
てデータ記録終了の要求を出す。サーバは、データソー
スとなる装置からのデータの取り込みを停止し、録画を
終了する。When the data recording operation is performed by the operator or the apparatus automatically records the data, the data reproducing apparatus issues a data recording request to the server. The server prepares for recording, takes in data from the device that is the data source, and records it in the storage device. When the operation of ending the recording is performed, the data reproducing apparatus issues a request for ending the data recording to the server. The server stops capturing data from the device serving as the data source and ends recording.
【0213】サーバ側にも本データ再生装置側にもチュ
ーナやエンコーダが備えられている場合には、いずれの
方式も使用できる。When the server side and the data reproducing apparatus side are provided with a tuner and an encoder, either method can be used.
【0214】インデックス付けは、操作者が明示的に再
生開始インデックスをインデックスのリストに追加する
操作である。インデックス付けは、当該再生位置を後か
ら参照するとユーザが考えた場合に使用する。Indexing is an operation in which the operator explicitly adds the reproduction start index to the index list. Indexing is used when the user thinks that the playback position will be referred to later.
【0215】操作者がインデックス付けの操作をおこな
うと、その入力は制御部21に伝えられ、制御部21は
現在の再生位置から再生開始インデックスを生成し、こ
れを記憶装置23上の再生開始インデックスのリストに
追加する。既に、その再生位置と同じ値をシークポイン
トとして持っている再生開始インデックスがリストの中
に存在する場合は、その再生開始インデックスの参照カ
ウントをインクリメントする。さらに、インデックス付
けにより生成されたもしくは参照カウントがの更新され
た再生開始インデックスについては、優先順位が下がっ
ても自動的にこのインデックスが削除されることがない
ように保護フラグを設定する。これらの過程の詳細につ
いては、自動的に再生開始インデックスを検出する時と
同様なので、ここでは省略する。When the operator performs an indexing operation, the input is transmitted to the control unit 21, and the control unit 21 generates a reproduction start index from the current reproduction position, and the reproduction start index on the storage device 23 is generated. Add to the list. If a reproduction start index having the same value as the reproduction position as a seek point already exists in the list, the reference count of the reproduction start index is incremented. Further, for the reproduction start index generated by indexing or the reference count of which is updated, a protection flag is set so that the index is not automatically deleted even if the priority is lowered. The details of these steps are the same as in the case of automatically detecting the reproduction start index, and therefore will be omitted here.
【0216】さらに、再生開始インデックスのリストの
編集をおこなう時のユーザインタフェイスについて説明
する。編集時の画面は図25のように構成される。操作
者がおこなうインデックスの編集としては、
・インデックスの名前の付け替え
・インデックス削除
・再生開始インデックスの指すシークポイントの調整
・保護フラグの設定
がある。以下では、各々の操作手段について説明する。Further, a user interface for editing the list of reproduction start indexes will be described. The editing screen is configured as shown in FIG. The editing of the index performed by the operator includes: changing the name of the index, deleting the index, adjusting the seek point indicated by the playback start index, and setting the protection flag. Below, each operation means is demonstrated.
【0217】インデックスの名前の付け替え:本再生装
置によって自動的に付けられたインデックスの名前を、
後から参照した時に分かりやすくするために、インデッ
クスの名前を付け替える手段を用意する。Renaming of index: The name of the index automatically assigned by the playback apparatus is
Prepare a method to rename the index so that it will be easier to understand when you refer to it later.
【0218】操作者は、インデックスの名前の付け替え
をおこなう対象となる再生開始インデックスをリストの
一覧から選択する。選択時の動作は、インデックス再生
時の動作と同様なので、ここでは省略する。[0218] The operator selects a reproduction start index to which the index name is changed from the list. Since the operation at the time of selection is the same as the operation at the time of index reproduction, it is omitted here.
【0219】選択された再生開始インデックスの新しい
名前を、入力装置から入力する。制御部21は、ユーザ
入力部26からの入力を受け取り、カーソル移動、文字
入力などの操作者の入力を出力画面、編集対象の再生開
始インデックスの内容に反映させる。入力が終ったら、
操作者は確定の操作をおこない、編集を終了し、制御部
21は、その再生開始インデックスをリストに再登録す
る。本データ再生装置内にインデックスのリストを記録
している場合、制御部21は対象となる再生開始インデ
ックスを記録装置23に記録し、サーバ側に記録してい
る場合は、データ入出力部22を通してサーバに対して
対象となるインデックス再登録の要求を発行する。The new name of the selected reproduction start index is input from the input device. The control unit 21 receives an input from the user input unit 26, and reflects the operator's input such as cursor movement and character input on the output screen and the content of the reproduction start index to be edited. When you're done,
The operator performs a confirming operation, finishes the editing, and the control unit 21 re-registers the reproduction start index in the list. When the index list is recorded in the data reproducing apparatus, the control unit 21 records the target reproduction start index in the recording apparatus 23, and when the index is recorded on the server side, the control unit 21 uses the data input / output unit 22. Issue the target index re-registration request to the server.
【0220】インデックス削除:不必要になったインデ
ックスや、自動検出のノイズとして登録されてしまった
インデックスを、明示的に操作者が削除する手段を用意
する。Index deletion: A means for explicitly deleting an unnecessary index or an index registered as noise of automatic detection is prepared by the operator.
【0221】操作者は、削除の対象となるインデックス
をリストの一覧から選択する。操作者が確定したら、制
御部21は、削除の対象となる再生開始インデックスを
リストから削除する。本データ再生装置内にインデック
スのリストを記録している場合、制御部21は対象とな
る再生開始インデックスを記録装置23から削除し、サ
ーバ側に記録している場合は、データ入出力部22を通
してサーバに対して対象となるインデックスの削除の要
求を発行する。The operator selects the index to be deleted from the list in the list. When the operator is determined, the control unit 21 deletes the reproduction start index to be deleted from the list. When the index list is recorded in the present data reproducing device, the control unit 21 deletes the target reproduction start index from the recording device 23, and when the index is recorded on the server side, the data input / output unit 22 is used. Issue a request to the server to delete the target index.
【0222】シークポイント調整:自動登録されたイン
デックスを後から参照する時のために、そのインデック
スの指すシークポイントをより正確な位置に指定し直す
手段を用意する。Seek point adjustment: A means for respecifying the seek point pointed to by the index to a more accurate position is provided for later reference to the automatically registered index.
【0223】操作者は、シークポイントの微調整の対象
となるインデックスを一覧から選択する。操作者は、シ
ークポイントを適当な値を入力装置を使って変更する。
制御部21は、ユーザ入力部26からの入力を受け取
り、操作者の入力を出力画面、調整対象の再生開始イン
デックスの内容に反映させる。編集が終ったら、確定の
操作をおこない、調整を終了する。本データ再生装置内
にインデックスのリストを記録している場合、制御部2
1は対象となる再生開始インデックスを記録装置23に
記録し、サーバ側に記録している場合は、データ入出力
部22を通してサーバに対して対象となるインデックス
再登録の要求を発行する。The operator selects from the list the index to be the target of fine adjustment of the seek point. The operator changes the seek point to an appropriate value using the input device.
The control unit 21 receives the input from the user input unit 26 and reflects the input of the operator on the output screen and the content of the reproduction start index to be adjusted. When the editing is completed, the confirmation operation is performed and the adjustment is completed. When the index list is recorded in the data reproducing apparatus, the control unit 2
1 records the target reproduction start index in the recording device 23, and when it is recorded on the server side, issues a target index re-registration request to the server through the data input / output unit 22.
【0224】保護フラグ設定:本再生装置を使用してい
くうちに、インデックスの優先順位が下がり、記憶装置
から削除されてしまうことを防ぐために、削除禁止の属
性をインデックスに対して付加する手段を用意する。Protection flag setting: A means for adding a deletion prohibition attribute to the index in order to prevent the priority of the index from being lowered and being deleted from the storage device as the reproducing apparatus is used. prepare.
【0225】操作者は、保護フラグの設定の変更の対象
となるインデックスを一覧から選択する。操作者は、保
護フラグの値を入力装置を使って適当に設定する。制御
部21は、ユーザ入力部26からの入力を受け取り、操
作者の入力を出力画面、設定対象の再生開始インデック
スの内容に反映させる。編集が終ったら確定の操作をお
こない、編集を終了する。本データ再生装置内にインデ
ックスのリストを記録している場合、制御部21は対象
となる再生開始インデックスを記録装置23に記録し、
サーバ側に記録している場合は、データ入出力部22を
通してサーバに対して対象となるインデックス再登録の
要求を発行する。The operator selects from the list the index for which the setting of the protection flag is to be changed. The operator appropriately sets the value of the protection flag using the input device. The control unit 21 receives the input from the user input unit 26, and reflects the input of the operator on the output screen and the content of the reproduction start index to be set. When the editing is completed, the confirmation operation is performed and the editing is completed. When the index list is recorded in the data reproducing device, the control unit 21 records the target reproduction start index in the recording device 23,
When the data is recorded on the server side, a target index re-registration request is issued to the server through the data input / output unit 22.
【0226】本データ再生装置に、再生開始インデック
ス検出のための所定時間の調整をする操作手段を設ける
ことも有効である。すなわち、再生開始インデックスと
して記録するための閾値T0を設定する手段を用意す
る。T0を大きくすると、ノイズとして自動登録される
インデックスは減るが、インデックスを自動検出をする
までに必要な時間も長くなる。逆に、T0を小さくする
と、多くのインデックスを自動検出することが出来る
が、ノイズとして検出されるインデックスの数も増え
る。It is also effective to provide the data reproducing apparatus with operating means for adjusting a predetermined time for detecting the reproduction start index. That is, a means for setting the threshold T0 for recording as the reproduction start index is prepared. When T0 is increased, the number of indexes automatically registered as noise decreases, but the time required for automatic index detection also increases. Conversely, if T0 is made small, many indexes can be automatically detected, but the number of indexes detected as noise also increases.
【0227】操作者が閾値T0を設定するための画面を
呼び出す操作をおこなうと、制御部21は現在の閾値T
0を出力部29を通して画面に表示する。操作者はその
値を、入力装置を使用して変更する。制御部21は、ユ
ーザ入力部26からの入力を受け取り、閾値T0の値に
反映させる。変更が終ったら、確定の操作をおこない、
本データ再生装置に備える記憶装置23に新しい閾値T
0の値を記録する。When the operator performs an operation for calling a screen for setting the threshold value T0, the control section 21 causes the present threshold value T0.
0 is displayed on the screen through the output unit 29. The operator changes the value by using the input device. The control unit 21 receives the input from the user input unit 26 and reflects it on the value of the threshold value T0. When the change is completed, perform the confirmation operation,
A new threshold value T is stored in the storage device 23 provided in the data reproducing device.
Record a value of 0.
【0228】次に、第二の例、すなわち従来のビデオ/
DVDデッキなどのように、取り外し可能な外部記憶メ
ディアからデータ再生装置がデータを読み込んで再生し
たり、書き込んで記録する例について説明する。本デー
タ再生装置に用意される操作手段は、第一の例と同様
に、再生/インデックス再生、停止/一時停止、高速再
生(早送り)、高速逆再生(巻戻し)、録画、インデッ
クス付け等である。Next, a second example, conventional video /
An example in which a data reproducing device reads and reproduces data from a removable external storage medium, such as a DVD deck, or writes and records the data will be described. Similar to the first example, the operation means provided in this data reproducing apparatus are reproduction / index reproduction, stop / pause, high speed reproduction (fast forward), high speed reverse reproduction (rewind), recording, indexing, etc. is there.
【0229】第二の例における、再生/インデックス再
生、停止/一時停止、高速再生(早送り)、高速逆再生
(巻戻し)、インデックス高速再生、録画、インデック
ス付けの操作手段は第一の例と同様なのでここでは説明
を省略する。第二の例におけるデータ再生装置と第一の
例のデータ再生装置との相違点は、データ入出力部22
の構成と再生開始インデックスのリストの管理方法であ
る。In the second example, the operation means for reproduction / index reproduction, stop / pause, high speed reproduction (fast forward), high speed reverse reproduction (rewind), index high speed reproduction, recording and indexing are the same as those in the first example. Since it is the same, the description is omitted here. The difference between the data reproducing apparatus in the second example and the data reproducing apparatus in the first example is that the data input / output unit 22
And a method of managing the list of playback start indexes.
【0230】本例においては、図26に示すように、デ
ータ入出力部22は、単体の外部記憶メディアからデー
タを読み取るための磁気ヘッドや光ディスクのピックア
ップなどの装置として構成される。本データ再生装置は
この読み取り装置を通してデータの送受信をおこなう。In this example, as shown in FIG. 26, the data input / output unit 22 is configured as a device such as a magnetic head or an optical disk pickup for reading data from a single external storage medium. The data reproducing device transmits and receives data through this reading device.
【0231】前述したように、第一の例のネットワーク
クライアント型のデータ再生装置においては、インデッ
クスのリストをサーバの記憶装置に記録する方式と、デ
ータ再生装置内の記憶装置にデータの識別子と対応付け
て記録する方式とがある。これに対し、第二の例のデー
タ再生装置の場合には、後者のデータ再生装置内の記憶
装置に記録する方式と、データが記録されている記憶メ
ディアに記録する方式とがある。どちらの場合にも、記
憶メディアを一意に識別するための識別子がメディアの
所定の位置に記録されており、再生装置がその識別子を
読み出すようにする。As described above, in the network client type data reproducing device of the first example, the method of recording the index list in the storage device of the server and the data identifier in the storage device in the data reproducing device correspond to each other. There is a method of attaching and recording. On the other hand, in the case of the data reproducing apparatus of the second example, there are a method of recording on the storage device in the latter data reproducing apparatus and a method of recording on the storage medium on which the data is recorded. In either case, an identifier for uniquely identifying the storage medium is recorded at a predetermined position on the medium, and the playback device reads the identifier.
【0232】まず、データ再生装置内の記憶装置に記録
する方式は、記憶メディアに書き込みが出来ない場合
や、一つのデータ再生装置でのみデータを再生する場合
に使用する。First, the method of recording in the storage device in the data reproducing device is used when the data cannot be written in the storage medium or when the data is reproduced by only one data reproducing device.
【0233】この方式で記憶装置に記録するインデック
ス情報は、第一の例の再生装置が記録する情報と同じで
ある。データの識別子として、記録メディアが持ってい
るそのメディアの識別子を使用する。The index information recorded in the storage device by this method is the same as the information recorded by the reproducing device of the first example. As the data identifier, the media identifier of the recording medium is used.
【0234】一方、記憶メディアに記録する方式は、記
憶メディアに書き込みが出来て、かつ、そのメディアを
他の再生装置でも再生する場合に使用すると良い。On the other hand, the method of recording on the storage medium is preferably used when the data can be written on the storage medium and the medium is also reproduced by another reproducing apparatus.
【0235】図27(a)もしくは(b)のように、メ
ディアの先頭部分もしくは終端部分などにインデックス
を記録するためのインデックス領域を用意しておき、イ
ンデックス領域に、自動検出したインデックス、操作者
が明示的につけたインデックスを記録する。テープな
ど、シーク、アクセスの遅いメディアを使用する場合に
は、逐次メディアから読み込み/書き出しをしていては
遅いので、メディアの挿入の際に再生装置内の一時的な
記憶装置にメディアからインデックス領域を読み込み、
メディアの排出の際に、メディアのインデックス領域に
書き出すといった、キャッシングの作業をおこなう。As shown in FIG. 27 (a) or 27 (b), an index area for recording an index is prepared in the head portion or the end portion of the medium, and the automatically detected index and operator are stored in the index area. Records the index explicitly added by. When using media such as tape that has slow seek and access times, it is slow to read / write from the media one by one, so when inserting media, the media is used to temporarily store data in the playback device and the index area Read
When ejecting media, perform caching work such as writing to the index area of the media.
【0236】ここでは、図2(c)の原理を利用して、
クライアント装置(データ再生装置)で再生開始インデ
ックスを自動的に生成する手法を中心に詳述したが、デ
ータ再生装置の用途や仕様によっては、図2(a)や
(b)に示した条件を満たすポイントを、再生開始イン
デックスとして記録するように構成しても良い。Here, using the principle of FIG. 2 (c),
The method for automatically generating the reproduction start index in the client device (data reproducing device) has been described in detail, but the conditions shown in FIGS. 2A and 2B may be set depending on the application and specifications of the data reproducing device. The point to be satisfied may be recorded as the reproduction start index.
【0237】なお、上述した実施形態はあくまで一例で
あり、本発明は、その趣旨を逸脱しない範囲で種々の変
形実施が可能である。The above-described embodiment is merely an example, and the present invention can be variously modified without departing from the spirit thereof.
【0238】[0238]
【発明の効果】以上詳述したように、本発明によれば、
データ再生装置におけるユーザの操作性については、再
生開始のインデックスとなり得る場面の自動的な記録
と、過去に記録された場面の呼び出しが容易にできるよ
うになり、装置の利用効率、操作性が向上する。As described in detail above, according to the present invention,
Regarding the operability of the user in the data reproducing apparatus, it becomes possible to automatically record the scene that can be the index of the reproduction start and to easily recall the scene recorded in the past, thus improving the utilization efficiency and operability of the apparatus To do.
【図1】 本実施形態に係る階層記憶装置の構成例を表
すブロック図。FIG. 1 is a block diagram showing a configuration example of a hierarchical storage device according to this embodiment.
【図2】 RAP候補の検出条件の例を説明するための
図。FIG. 2 is a diagram for explaining an example of RAP candidate detection conditions.
【図3】 RAPセグメント情報記憶部の構成例を示す
図。FIG. 3 is a diagram showing a configuration example of a RAP segment information storage unit.
【図4】 廃棄セグメント選択部で必要となる情報を管
理するためのデータ構造の例を示す図。FIG. 4 is a diagram showing an example of a data structure for managing information required by a discard segment selection unit.
【図5】 セグメントが含まれるカテゴリに対応するセ
グメントリストを選択する動作の例を示すフローチャー
ト。FIG. 5 is a flowchart showing an example of an operation of selecting a segment list corresponding to a category including a segment.
【図6】 データがcloseされた場合に廃棄セグメ
ント選択部においてデータ構造を更新する動作の例を示
すフローチャート。FIG. 6 is a flowchart showing an example of an operation of updating a data structure in a discard segment selection unit when data is closed.
【図7】 データがopenされた場合に廃棄セグメン
ト選択部においてデータ構造を更新する動作の例を示す
フローチャート。FIG. 7 is a flowchart showing an example of an operation of updating a data structure in a discard segment selection unit when data is opened.
【図8】 セグメントが新たにキャッシュに格納された
場合に廃棄セグメント選択部においてデータ構造を更新
する動作の例を示すフローチャート。FIG. 8 is a flowchart showing an example of an operation of updating a data structure in a discard segment selection unit when a segment is newly stored in a cache.
【図9】 セグメントがキャッシュから廃棄された場合
に廃棄セグメント選択部においてデータ構造を更新する
動作の例を示すフローチャート。FIG. 9 is a flowchart showing an example of an operation of updating a data structure in a discard segment selection unit when a segment is discarded from the cache.
【図10】 RAPセグメント情報が更新された場合に
廃棄セグメント選択部においてデータ構造を更新する動
作の例を示すフローチャート。FIG. 10 is a flowchart showing an example of an operation of updating a data structure in a discard segment selection unit when RAP segment information is updated.
【図11】 キャッシュからの廃棄候補を選択するため
にカテゴリを順に指定する動作の例を示すフローチャー
ト。FIG. 11 is a flowchart showing an example of an operation of sequentially specifying categories in order to select a discard candidate from the cache.
【図12】 キャッシュからの廃棄候補を選択するため
に指定カテゴリ内でセグメントを検索する動作の例を示
すフローチャート。FIG. 12 is a flowchart showing an example of an operation of searching a segment in a designated category to select a discard candidate from the cache.
【図13】 データがopenされた場合に格納セグメ
ント選択部においてデータ構造を更新する動作の例を示
すフローチャート。FIG. 13 is a flowchart showing an example of an operation of updating a data structure in a storage segment selection unit when data is opened.
【図14】 データがcloseされた場合に格納セグ
メント選択部においてデータ構造を更新する動作の例を
示すフローチャート。FIG. 14 is a flowchart showing an example of an operation of updating a data structure in a storage segment selection unit when data is closed.
【図15】 RAPセグメント情報が更新された場合に
格納セグメント選択部においてデータ構造を更新する動
作の例を示すフローチャート。FIG. 15 is a flowchart showing an example of an operation of updating the data structure in the storage segment selection unit when the RAP segment information is updated.
【図16】 先読み候補のキャッシュへの格納可否を判
断する動作の例を示すフローチャート。FIG. 16 is a flowchart showing an example of an operation of determining whether or not prefetch candidates can be stored in the cache.
【図17】 本実施形態に係るデータ再生装置の構成例
を表すブロック図。FIG. 17 is a block diagram showing a configuration example of a data reproducing device according to the present embodiment.
【図18】 再生開始インデックスのリストの構造の例
を表す図。FIG. 18 is a diagram showing an example of the structure of a list of reproduction start indexes.
【図19】 再生開始インデックスとなり得るシークポ
イントを検出する方法の概要を表す図。FIG. 19 is a diagram showing an outline of a method for detecting a seek point that can be a reproduction start index.
【図20】 ネットワークを介したデータを再生/録画
する場合のシステム構成例を示す図。FIG. 20 is a diagram showing an example of a system configuration when reproducing / recording data via a network.
【図21】 自動的な再生開始インデックス登録処理の
例を示すフローチャート。FIG. 21 is a flowchart showing an example of automatic reproduction start index registration processing.
【図22】 選択画面の構成例を示す図。FIG. 22 is a diagram showing a configuration example of a selection screen.
【図23】 データ転送レートを上げる方式による高速
再生時のデータ読みだし位置の移動を示す図。FIG. 23 is a diagram showing movement of a data reading position during high speed reproduction by a method of increasing a data transfer rate.
【図24】 スキップ方式による高速再生時のデータ読
みだし位置の移動を示す図。FIG. 24 is a diagram showing movement of a data read position during high-speed reproduction by the skip method.
【図25】 インデックス編集画面の構成例を示す図。FIG. 25 is a diagram showing a configuration example of an index edit screen.
【図26】 取り外し可能な外部の記憶メディアからデ
ータを再生/録画する場合のシステム構成例を示す図。FIG. 26 is a diagram showing an example of a system configuration when reproducing / recording data from a removable external storage medium.
【図27】 外部記憶メディア中の再生開始インデック
スのリストの領域の位置の例を示す図。FIG. 27 is a diagram showing an example of the positions of areas of a list of reproduction start indexes in an external storage medium.
11…入出力部 12…要求処理部 13…セグメント転送管理部 14…二次記憶装置(ライブラリ) 15…一次記憶装置(キャッシュ) 16…RAP候補検出部 17…廃棄セグメント選択部 18…格納セグメント選択部 19…RAPセグメント情報記憶部 11 ... Input / output section 12 ... Request processing unit 13 ... Segment transfer management unit 14 ... Secondary storage device (library) 15 ... Primary storage device (cache) 16 ... RAP candidate detection unit 17 ... Discarded segment selection section 18 ... Storage segment selection section 19 ... RAP segment information storage unit
───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 5D044 AB05 AB07 BC01 CC05 DE24 DE37 DE53 FG19 FG24 GK12 5D077 AA01 AA22 AA38 BA04 BA08 BA18 DC31 DC35 DE08 EA12 EA34 FA07 FA09 ─────────────────────────────────────────────────── ─── Continued front page F-term (reference) 5D044 AB05 AB07 BC01 CC05 DE24 DE37 DE53 FG19 FG24 GK12 5D077 AA01 AA22 AA38 BA04 BA08 BA18 DC31 DC35 DE08 EA12 EA34 FA07 FA09
Claims (8)
または両方を再生出力するための出力手段と、 この出力手段に対し、ユーザ入力に従って、再生、停
止、または再生位置の前方/後方への移動を指示するた
めの指示手段と、 この指示手段が受けたユーザ入力が所定のパターンであ
る場合に、該ユーザ入力に基づいて決定される再生位置
に関する情報を再生開始インデックスとして記憶手段に
記録する記録手段とを備えることを特徴とするデータ再
生装置。1. Output means for reproducing and outputting one or both of inputted audio data and video data, and reproduction, stop, or forward / backward of a reproduction position of the output means according to a user input. Instructing means for instructing movement, and when the user input received by the instructing means is a predetermined pattern, information about a reproduction position determined based on the user input is recorded in the storage means as a reproduction start index. A data reproducing apparatus comprising: a recording unit.
間以上の連続した再生を示す場合に、該再生を開始した
位置を、前記再生開始インデックスとして記録するもの
であることを特徴とする請求項1記載のデータ再生装
置。2. The recording means records the position at which the reproduction is started as the reproduction start index when the user input indicates continuous reproduction for a predetermined time or longer. Item 1. The data reproducing device according to item 1.
インデックスを提示してユーザに所望の再生位置を選択
させる選択手段を更に備えることを特徴とする請求項1
記載のデータ再生装置。3. A selection means for presenting a plurality of reproduction start indexes recorded in the storage means to allow a user to select a desired reproduction position.
The described data reproducing device.
インデックスを所定の順に選択し、それら再生開始イン
デックスに含むシークポイントから所定の時間ずつ自動
再生するインデックス高速再生手段を更に備えることを
特徴とする請求項1記載のデータ再生装置。4. A high-speed index reproduction means for selecting a plurality of reproduction start indexes recorded in the storage means in a predetermined order and automatically reproducing for a predetermined time from a seek point included in the reproduction start indexes. The data reproducing device according to claim 1.
インデックスを提示してユーザに削除対象を選択させる
選択手段と、 前記選択手段によって選択された削除対象の再生開始イ
ンデックスを前記記憶手段から削除する削除手段とを更
に備えることを特徴とする請求項1記載のデータ再生装
置。5. A selection unit that presents a plurality of reproduction start indexes recorded in the storage unit to allow a user to select a deletion target, and a reproduction start index of the deletion target selected by the selection unit from the storage unit. The data reproducing apparatus according to claim 1, further comprising a deleting unit for deleting.
一方または両方は、取り外し可能な外部記憶メディアか
らの入力であり、 前記外部記録メディアの排出の際に、前記記憶手段に記
録された複数の再生開始インデックスを前記外部記録メ
ディアに書き出す手段を更に備えたことを特徴とする請
求項1記載のデータ再生装置。6. One or both of the input audio data and video data is input from a removable external storage medium, and a plurality of data recorded in the storage means when the external recording medium is ejected. 2. The data reproducing apparatus according to claim 1, further comprising means for writing the reproduction start index of the above into the external recording medium.
または両方を再生装置へ再生出力し、 この再生出力に対し、ユーザ入力に従って、再生、停
止、または再生位置の前方/後方への移動を指示し、 この指示が所定のパターンである場合に、該ユーザ入力
に基づいて決定される再生位置に関する情報を再生開始
インデックスとして記憶装置に記録するようにしたこと
を特徴とするデータ再生制御方法。7. One or both of the input audio data and video data is reproduced and output to a reproducing device, and reproduction, stop, or movement of the reproduction position forward / backward is performed in response to user input with respect to this reproduction output. A data reproduction control method, characterized in that, when the instruction is a predetermined pattern, information about a reproduction position determined based on the user input is recorded in a storage device as a reproduction start index.
または両方を再生装置へ再生出力させる機能と、 この再生出力に対し、ユーザ入力に従って、再生、停
止、または再生位置の前方/後方への移動を指示する機
能と、 この指示が所定のパターンである場合に、該ユーザ入力
に基づいて決定される再生位置に関する情報を再生開始
インデックスとして記憶装置に記録する機能とをコンピ
ュータに実現させるためのプログラムを記憶する記憶媒
体。8. A function of reproducing and outputting one or both of input audio data and video data to a reproducing device, and reproducing, stopping, or moving forward or backward of a reproduction position according to a user input with respect to this reproduction output. In order to realize a computer, a function of instructing movement and a function of recording information regarding a reproduction position determined based on the user input in a storage device as a reproduction start index when the instruction has a predetermined pattern A storage medium that stores a program.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002333116A JP2003233976A (en) | 1998-09-30 | 2002-11-18 | Data reproducing device and data reproducing control method |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10-278081 | 1998-09-30 | ||
JP27808198 | 1998-09-30 | ||
JP2002333116A JP2003233976A (en) | 1998-09-30 | 2002-11-18 | Data reproducing device and data reproducing control method |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP36893298A Division JP3396639B2 (en) | 1998-09-30 | 1998-12-25 | Hierarchical storage device and hierarchical storage control method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2003233976A true JP2003233976A (en) | 2003-08-22 |
Family
ID=27790310
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002333116A Pending JP2003233976A (en) | 1998-09-30 | 2002-11-18 | Data reproducing device and data reproducing control method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2003233976A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007519088A (en) * | 2003-11-25 | 2007-07-12 | ネットワーク・アプライアンス・インコーポレイテッド | Adaptive look-ahead technology for multiple read streams |
JP2010156552A (en) * | 2008-12-26 | 2010-07-15 | Kddi R & D Laboratories Inc | Guidance method and system |
JP2014505295A (en) * | 2011-01-04 | 2014-02-27 | トムソン ライセンシング | Apparatus and method for transmitting live media content |
-
2002
- 2002-11-18 JP JP2002333116A patent/JP2003233976A/en active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007519088A (en) * | 2003-11-25 | 2007-07-12 | ネットワーク・アプライアンス・インコーポレイテッド | Adaptive look-ahead technology for multiple read streams |
JP2010156552A (en) * | 2008-12-26 | 2010-07-15 | Kddi R & D Laboratories Inc | Guidance method and system |
JP2014505295A (en) * | 2011-01-04 | 2014-02-27 | トムソン ライセンシング | Apparatus and method for transmitting live media content |
US10069887B2 (en) | 2011-01-04 | 2018-09-04 | Thomson Licensing Dtv | Apparatus and method for transmitting live media content |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3396639B2 (en) | Hierarchical storage device and hierarchical storage control method | |
KR100694152B1 (en) | Method and apparatus for managing multimedia contents stored in the digital multimedia device | |
US20070038811A1 (en) | Playback system and method supporting improved trick mode performance for disc-based multimedia | |
US20100325679A1 (en) | Preference based program deletion in a pvr | |
US20060130097A1 (en) | User history information generation of multimedia data and management method thereof | |
JP2010063182A (en) | System and method for efficiently managing video file | |
MXPA05000415A (en) | Enhanced bookmarks for digital video playback. | |
CN100445962C (en) | Recording device, method thereof, program product and program recording medium | |
US20070009237A1 (en) | Disc player | |
EP1679705B1 (en) | Method and device for scanning the contents of a storage medium | |
KR20030005367A (en) | Memory control method for a personal video recording system | |
JP2007060005A (en) | Digital data reproducing device | |
JP2003233976A (en) | Data reproducing device and data reproducing control method | |
US20080046117A1 (en) | Method of preprocessing content and a content providing apparatus using the method of preprocessing content | |
JPH10124352A (en) | Method for managing file in library and server device for library | |
JP2002344849A (en) | Moving picture processing unit, moving picture processing method, recording medium, and control program | |
CN1774760A (en) | Allocation class selection for file storage | |
JP2004282763A (en) | Video reproducing method and system, and apparatus using the same | |
US7178152B2 (en) | Application programming interface for communication between audio/video file system and audio video controller | |
JP2005158151A (en) | Information recording and reproducing device | |
KR100618734B1 (en) | Method for controlling data file | |
WO2007044661A2 (en) | System and method for storing and managing digital content | |
JP2006040416A (en) | Content recorder | |
US20040240852A1 (en) | Disc recording apparatus and method with function of securing data recording area on disc | |
KR100547343B1 (en) | Method for managing memory device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Effective date: 20050318 Free format text: JAPANESE INTERMEDIATE CODE: A971007 |
|
A131 | Notification of reasons for refusal |
Effective date: 20050329 Free format text: JAPANESE INTERMEDIATE CODE: A131 |
|
RD02 | Notification of acceptance of power of attorney |
Effective date: 20050415 Free format text: JAPANESE INTERMEDIATE CODE: A7422 |
|
A521 | Written amendment |
Effective date: 20050530 Free format text: JAPANESE INTERMEDIATE CODE: A523 |
|
RD04 | Notification of resignation of power of attorney |
Effective date: 20050606 Free format text: JAPANESE INTERMEDIATE CODE: A7424 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20050628 |