JP2007511855A - トリック再生の性能を向上するためのキャッシュ管理 - Google Patents
トリック再生の性能を向上するためのキャッシュ管理 Download PDFInfo
- Publication number
- JP2007511855A JP2007511855A JP2006530942A JP2006530942A JP2007511855A JP 2007511855 A JP2007511855 A JP 2007511855A JP 2006530942 A JP2006530942 A JP 2006530942A JP 2006530942 A JP2006530942 A JP 2006530942A JP 2007511855 A JP2007511855 A JP 2007511855A
- Authority
- JP
- Japan
- Prior art keywords
- data
- playback
- cache memory
- current
- cache
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0862—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with prefetch
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/12—Replacement control
- G06F12/121—Replacement control using replacement algorithms
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/005—Reproducing at a different information rate from the information rate of recording
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/78—Television signal recording using magnetic recording
- H04N5/782—Television signal recording using magnetic recording on tape
- H04N5/783—Adaptations for reproducing at a rate different from the recording rate
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/84—Television signal recording using optical recording
- H04N5/85—Television signal recording using optical recording on discs or drums
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N9/00—Details of colour television systems
- H04N9/79—Processing of colour television signals in connection with recording
- H04N9/80—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
- H04N9/804—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components
- H04N9/8042—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components involving data reduction
Abstract
再生システムで使用される再生装置及び関連の方法が開示され、その装置は、データソース(1)から読み取られるデータを格納するように構成されたキャッシュメモリと、装置の少なくとも2つの再生モードでのデータソースのデータの使用の決定に基づいて、キャッシュメモリ(335)から削除されるデータのいくつかを特定するように構成されたキャッシュ交換ユニット(341)と、ユーザに提示されるデータをキャッシュメモリ(335)から取得するように構成されたプレゼンテーションユニット(337)とを有する。再生装置は、データソース(1)から読み取られるデータを特定し、キャッシュメモリ(335)の現在の内容に基づいてキャッシュメモリ(335)に格納されるように構成されたディスク制御ユニット(343)を更に有する。
Description
本発明は、ビデオレコーダ及び再生システムに関し、特に光ディスク再生システム及びその向上したトリックモードの性能に関する。
以下の説明は、次に定義する用語を使用する。
MPEG(Motion Picture Experts Group)は、デジタル圧縮フォーマットにオーディオビジュアル情報を符号化するために使用される国際標準のグループに与えられた名前である。MPEG標準は、異なる帯域及び品質の制約に適応するMPEG-1、MPEG-2及びMPEG-4を有する。例えば、MPEG-2は、放送品質のテレビ番組の格納及び伝送に特に適している。
フラグメント(fragment)はMPEGストリームの一部である。一般的に、MPEGストリームの毎15フレームはIフレームとして符号化される。フラグメントはIフレームとして定義され、又は一般的に間に14フレームの情報を有する2つの連続する符号化Iフレームの境界の間のMPEGストリームの部分として定義される。
MPEG(Motion Picture Experts Group)は、デジタル圧縮フォーマットにオーディオビジュアル情報を符号化するために使用される国際標準のグループに与えられた名前である。MPEG標準は、異なる帯域及び品質の制約に適応するMPEG-1、MPEG-2及びMPEG-4を有する。例えば、MPEG-2は、放送品質のテレビ番組の格納及び伝送に特に適している。
フラグメント(fragment)はMPEGストリームの一部である。一般的に、MPEGストリームの毎15フレームはIフレームとして符号化される。フラグメントはIフレームとして定義され、又は一般的に間に14フレームの情報を有する2つの連続する符号化Iフレームの境界の間のMPEGストリームの部分として定義される。
図1は、5つのフラグメント101-105を示す例示的なMPEGデータストリームの例である。図示のように、フレームI1、I2及びI3は、それぞれフラグメント101、103及び105を表し、フラグメント102及び104は、Iフレームで片側に境界のある14フレームの情報で構成される。ある実装では、フラグメントの境界は、Iフレームが開始又は終了するバイト位置と正確に一致しないが、光ディスクのセクタ境界に沿うように、これらのバイト位置のいくぶんか前又は後に配置される点に留意すべきである。
図2は、光ディスクを再生する従来技術の光ディスク再生システム200のハイレベルブロック図である。光ディスク再生システム200は、ユーザインタフェース2と、再生ユニット6と、外部ディスプレイ8とを有する。光ディスク再生システム200は、通常の再生速度より遅い又は早い速度で、順方向又は逆方向に、ディスクドライブ1に挿入された光ディスクの再生を提供する。このような非標準速度の再生機能は、トリックモード(trick mode)又はトリック再生(trick play)(例えば、早送り、一時停止、巻き戻し等)として当該技術分野において知られている。主に、再生ユニット6は、トリックモードを含む様々な再生機能を実行する役目をする。トリックモードの一例は、早送りモードを得るために選択されたフレームのスキップを行うことが挙げられる。トリックモードの他の例は、フレームの連続シーケンスに繰り返しアクセスすること(一般的にA-Bループ再生(A-B loop play)として呼ばれる)でもよい。ディスク再生システム200はまた、システム200のユーザ命令を受け付けるユーザインタフェース構造2を有する。例えば、ユーザインタフェース構造は、動作スイッチ及びボタン、リモコン、キーボード及び液晶ディスプレイ装置等を有する。
図3は、従来技術による図2の再生システム200の再生ユニット6の詳細ブロック図である。再生ユニット6は、全ディスク関連動作を制御するコントローラ10と、再生が生じる現在位置を保持するためにコントローラにより使用される現在再生位置ユニット12と、ディスプレイ8での表示用に再生ユニット16により要求され得るフラグメントを格納するFIFOバッファ14とを有する。コントローラ10は、ディスクドライブ1の光ディスクに格納されているデータの再生(トリックモード再生を含む)を制御する。コントローラ10は、単一の装置に含まれてもよく、別の装置に含まれてもよい。コントローラ10は、コントローラ10に‘現在再生位置’ポインタを提供する現在再生位置ユニット12に双方向に結合されている。現在再生位置ポインタは、光ディスクから読み取られる次のビデオフラグメントを決定するために、前方向及び後方向に動く。
通常の‘再生’モードでは、ポインタは‘ジャンプ’せずに線形的に前方向に動く。‘早送り’トリックモードでは、ポインタは題材の一部をスキップする。スキップの距離は一定でもよく(例えば、早送りでは60フレームに等しい4つのIフレーム毎)、フィードバックループを介して制御されてもよい。ディスクドライブ1はコントローラ10からコマンドを受信し、光ディスクの特定の位置から特定のサイズの情報のフラグメントを読み取る。読み取られたフラグメントは、外部ディスプレイ装置8で表示するためにプレゼンテーションユニット16にフラグメントを最終的に渡すFIFOバッファ14に入れられる。
図2及び3の従来の光ディスク再生システム200は、以下のものを含む複数の欠点を有する。(1)異なるトリックモードの間の効率的な(すなわち高速の)移行の実行は、比較的複雑なコントローラ10を必要とする。(2)一方のモードから他方への移行は、格納、制御、待ち時間及びタイミングに関する問題を提示し、その全ては、設計、コーディングデバッグ及びチューニング時間のかなりの投資を必要とする。(3)コントローラは、ディスク又は類似の記憶媒体に完全に連続して格納されていないデータストリームを処理することが困難である。データストリームの‘ギャップ’がディスクドライブにより横断されなければならない場合、これはFIFOバッファの不足を引き起こし得る遅延に導くことがある。ディスク再生システムが再生処理の持続時間の間に光ディスクからデータストリームを維持することができない場合に、バッファの不足が生じる(このことは、より複雑なコントローラを使用することにより、又は空のFIFOバッファを処理することができるプレゼンテーションユニットを使用することにより、克服され得る)。(4)A-Bループ再生の場合、ポイントA及びBが相互に非常に近い場合に、望ましくないバッファの不足を招かずに処理することが困難な状況になる。このことはコントローラに複雑性を追加することにより克服され得る。
従って、従来技術の前述の欠点を克服する簡単なシステム設計のニーズが存在する。
本発明は、前述の欠点を克服し、光ディスク再生システムで使用される光ディスク再生装置を提供する。
本発明の一態様によれば、複数の再生モードを含む再生システムで使用される再生装置は、一実施例では、データソースから読み取られるデータを格納するように構成されたキャッシュメモリと、その複数の再生モードの中から少なくとも2つの再生モードでのその格納されたデータの現在及び/又は今後の使用の決定に基づいて、キャッシュメモリから削除されるその格納されたデータのいくつかを特定するように構成されたキャッシュ交換ユニットと、ユーザに提示されるデータをキャッシュメモリから取り出すように構成されたプレゼンテーションユニットとを有する。
本発明の他の態様によれば、再生システムでトリックモードの性能を向上する方法は、データソースからデータを読み取り、キャッシュメモリにそのデータを格納し、その複数の再生モードの中から少なくとも2つの再生モードでのその格納されたデータの現在及び/又は今後の使用の決定に基づいて、キャッシュメモリから削除されるその格納されたデータのいくつかを特定し、ユーザに提示されるデータをキャッシュメモリから取り出すことを有する。
有利には、本発明の再生装置は、連続又は非連続のデータストリームを格納することができる光ディスクから取り出されたデータを格納するために、従来のFIFOバッファの代わりにキャッシュメモリを使用する。従来のFIFOバッファに対する利点は、予測不能なトリックモードの移行を見越してキャッシュメモリでのデータの選択を可能にするように、キャッシュメモリをランダムにアドレス指定可能にすることと、今後のトリックモードの移行を見越して格納されたデータをキャッシュメモリに残すことを可能にすることとを含む。
本発明の前記の特徴は、添付図面と共に検討される本発明の例示的な実施例の以下の詳細な説明を参照することにより、容易に明らかになり、理解され得る。
以下の詳細な説明は、例示目的で多数の詳細を含むが、以下の説明に対する多数の変更及び代替が本発明の範囲内であることを、当業者は認識する。従って、本発明の以下の好ましい実施例は、本発明に対する一般性を失わずに、本発明への限定を行わずに示される。
開示されたシステム、方法及び装置は、ディスクからマルチメディアコンテンツを再生する機能を有する如何なる装置にも一般的に適用を見出し得ると考えられる。本発明の再生装置は、装置が少なくとも以下の基準を満たす場合に、特に適切である。
(1)装置が、遅いランダムアクセス応答時間を備えたディスクドライブ、又は遅いランダムアクセス待ち時間を有するその他の媒体を使用する。例えば、特に衛星を通じて中継される場合の広域ネットワーク回線。
(2)装置が、コンテンツが必ずしも線形的に配列されていないと仮定されるディスクフォーマットを使用する。
(3)装置が、家庭用電化装置(すなわち、ハンドヘルドコンピュータ、ポケットサイズのコンピュータ、携帯情報端末、移動電話及びその他の電子装置)のように限られたメモリ量を有する。
本発明の再生装置について、マイクロプロセッサにより実行されるコンピュータ実行可能命令(プログラムモジュール等)の一般的な背景で説明し得る。一般的に、プログラムモジュールは、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造等を有する。ここで定義されるコンピュータ記憶媒体は、CD-ROM、デジタル多用途ディスク(DVD)若しくはその他の光ディスクストレージ、又は所望の情報を格納するために使用可能であり、コンピュータによりアクセス可能であるその他の媒体を含むが、それらに限定されない。
図4は、本発明の実施例によるディスク再生システム400のハイレベルブロック図を示している。ディスク再生システム400は、ディスクドライブ1と、ユーザインタフェース2と、再生ユニット6と、外部ディスプレイ8とを有する。再生ユニット6は、トリックモードキャッシュ31と、キャッシュ及びディスク制御ユニット33と、プレゼンテーションユニット35とを有する。
図5は、本発明の実施例による図4のディスク再生システム400の詳細ブロック図である。図5は、図4のディスク再生システム400のキャッシュ及びディスク制御ユニット33を有するモジュールを示している。図示のように、キャッシュ及びディスク制御ユニット33は、i)モードユニット331と、ii)現在フラグメント位置ユニット333と、iii)アクセス予測ユニット339と、iv)キャッシュ交換ユニット341と、v)ディスク制御ユニット343と、vi)トリックモードキャッシュ335と、vii)プレゼンテーションユニット337とを有する。
代替実施例では、アクセス予測ユニット339は、ディスク制御ユニット343及びキャッシュ交換ユニット341から分割されてその中に具現されるようにその機能を保持しつつ、物理的に除去されてもよいことがわかる。換言すると、ディスク制御ユニット343及びキャッシュ交換ユニット341は、内蔵されたアクセス予測機能を有してもよい。
以下の説明は、システム500を構成するユニットの機能的詳細を提供することにより、一実施例に従って図5に示す新規な再生システム500の全体動作を記述する。
[モードユニット331]
モードユニット331は、(ライン42を介して)プレゼンテーションユニット337及び(ライン40を介して)アクセス予測ユニット339とインタフェース接続する。
モードユニット331は、(ライン42を介して)プレゼンテーションユニット337及び(ライン40を介して)アクセス予測ユニット339とインタフェース接続する。
動作中に、ライン44でユーザインタフェース2からモード変更が受信されると、モードユニット331は新しいモード状態を格納する。格納されると、モードユニット331は、ライン42で、適切なポインタ位置変更についての情報を含み、新しいモード状態と何らかの適切なA-Bループ再生情報とをプレゼンテーションユニット337に出力し、どこで動作を継続するかについてプレゼンテーションユニット337に通知する。プレゼンテーションユニット337は、存在する場合には、ライン45で更新されたフラグメント位置の値を送信することにより、適切なポインタ位置変更を現在フラグメント位置ユニット333に通知する。モードユニット331はまた、ライン40で、モード状態と何らかの適切なA-Bループ再生情報とをアクセス予測ユニット335に出力する。
一般的に、モード状態は、ユーザが図4−5に示す光ディスク再生システム400、500の動作を制御することを可能にするコマンドで構成される。例えば、モード状態は以下のコマンドを有してもよい。再生を実行する命令を行う“PLAY”、“FF”(早送り)や“REW”(巻き戻し)や“SLOW”(低速動作)等のようなトリック再生コマンド、場面又は時間を検索する命令を行う“SEARCH”、再生を中止する命令を行う“STOP”、再生を一時停止する命令を行う“PAUSE”、再生モードを設定するコマンド等である。当然のことながら、コマンドは前述のものに限定されず、光再生システム400、500を制御する任意のコマンドで構成されてもよい。
代替実施例では、モードユニット331の機能は、1つ以上の他のユニットの全体又は一部で複製及び/又は重複されてもよい点に留意すべきである。
[現在フラグメント位置ユニット333]
現在フラグメント位置ユニット333は、(ライン48を介して)アクセス予測ユニット339及び(ライン45を介して)プレゼンテーションユニット337とインタフェース接続する。様々なユニットを相互接続するラインは一方向でもよく、双方向でもよく、バスラインでもよいことがわかる。
現在フラグメント位置ユニット333は、(ライン48を介して)アクセス予測ユニット339及び(ライン45を介して)プレゼンテーションユニット337とインタフェース接続する。様々なユニットを相互接続するラインは一方向でもよく、双方向でもよく、バスラインでもよいことがわかる。
現在フラグメント位置ユニット333は、(1)双方向ライン45でプレゼンテーションユニット337により現在表示されているフラグメントの部分を受信及び格納し、(2)(ライン48を介して)現在フラグメント位置をアクセス予測ユニット339に出力する。
[プレゼンテーションユニット337]
プレゼンテーションユニット337は、ライン45を介してトリックモードキャッシュ335及び現在フラグメント位置ユニット333とインタフェース接続し、ライン42を介してモードユニット331とインタフェース接続し、ディスプレイ8とインタフェース接続する。
プレゼンテーションユニット337は、ライン45を介してトリックモードキャッシュ335及び現在フラグメント位置ユニット333とインタフェース接続し、ライン42を介してモードユニット331とインタフェース接続し、ディスプレイ8とインタフェース接続する。
一態様では、プレゼンテーションユニット337は、“Play”や“FF”のようなモードによる要求に応じて連続フラグメントの提示を開始するタイミング機構を有する。内部タイミング機構は、モードユニット331のモード値に依存し、現在フラグメント位置ユニット333に格納されている値を進める又は遅らせる。
プレゼンテーションユニット337は、現在フラグメント位置ユニット333からライン45を介して受信した現在フラグメントのアイデンティティで現在フラグメントを提示し、外部ディスプレイ8で表示するために、双方向ライン46でトリックモードキャッシュ335からフラグメントを要求する。
フラグメント位置が変更すると常に、プレゼンテーションユニット337は、トリックモードキャッシュ335から新しいフラグメントを要求しようとする。
フラグメントがトリックモードキャッシュ335に現在格納されていないため(すなわち、キャッシュミス)、プレゼンテーションユニット337により行われたフラグメントの要求が満たされない場合、プレゼンテーションユニット337は、最近表示されたフラグメントの最後のフレームを出力し続けることにより(すなわち、フレームのフリーズ)、不足のデータを補う。キャッシュミスの場合、フラグメント位置ユニット333を進める内部タイミング機構の機能が影響を受けてもよい。例えば、PLAYモードでの複数のキャッシュミスの後に、タイミング機構は、ディスクの悪い領域をジャンプしようとして、フラグメント位置を‘30秒前’に進めてもよい。このような現在再生位置の発見的操作は当該技術分野において周知である点に留意すべきである。
[ディスク制御ユニット343]
ディスク制御ユニット343は、ライン54を介してディスクドライブ1とインタフェース接続し、ライン50、52を介してアクセス予測ユニット339とインタフェース接続し、ライン55を介してトリックモードキャッシュとインタフェース接続する。
ディスク制御ユニット343は、ライン54を介してディスクドライブ1とインタフェース接続し、ライン50、52を介してアクセス予測ユニット339とインタフェース接続し、ライン55を介してトリックモードキャッシュとインタフェース接続する。
ディスク制御ユニット343は、コマンドライン54でフラグメントを読み取るようにディスクドライブ1に指示する。ディスク制御ユニット343はまた、データライン52を介して最近に生成されたフラグメントリストを送信するように、コマンドライン50でアクセス予測ユニット339に命令する。
ディスク制御ユニット343は、フラグメントリストを生成及び供給するようにアクセス予測ユニット339に命令する。データライン52を介してアクセス予測ユニット339からフラグメントリストを受信すると、ディスク制御ユニット343は、フラグメントリストから単一のフラグメントを選択するために、フラグメント選択アルゴリズムを使用する。選択されると、フラグメントリストの残りは、ディスク制御ユニット343により破棄される。
以下に説明する手法の1つに従ってフラグメントリストから単一のフラグメントを選択すると、ディスク制御ユニット343は、ディスクドライブ1に適したコマンド言語で1つ以上のコマンドを使用して選択されたフラグメントを取り出すように、ライン54でディスクドライブ1に指示する。これらのコマンドに応じて、ディスクドライブ1は、ライン56でトリックモードキャッシュ335に取り出されたフラグメントを出力する。
一実施例に従ってディスク制御ユニット343のフラグメント選択アルゴリズムによりフラグメントリストから単一のフラグメントを選択する処理について説明する。
フラグメント選択アルゴリズムは、トリックモードキャッシュ335の現在の内容を認識している。その内容を認識しているため、アルゴリズムは、まずフラグメントリスト{f1,f2,f3,f4,...}の内容を調べ、トリックモードキャッシュ335に既に存在している全てのフラグメントを除去する。これらのフラグメントを除去すると、フラグメント選択アルゴリズムは、減少したフラグメントリストから単一のフラグメントを選択するために如何なる数の手法を利用してもよい。
単一のフラグメントを選択する第1の手法は、減少したリストの最初のフラグメントを選択することが挙げられる。
第2の手法は、更にディスクドライブのシークパターンを最適化するフラグメントを選択する更なる目的を有する。この第2の手法は、減少したフラグメントリストから、以下に定めるトレードオフ関数Tにより計算された最低の数値を有する単一のフラグメントを選択する。
T(リストの始めまでのfxの距離,現在ディスク位置までのfxの距離) 式(1)
式(1)は、フラグメントリストからのフラグメントfxについて2つの計算値をトレードオフするトレードオフ関数Tを記述している。第1の計算値は“フラグメントリストの始めまでのフラグメントfxの距離”である。フラグメントリストの先頭に近いフラグメントは、要求される可能性が高くなるため、高い数値になる。
式(1)は、フラグメントリストからのフラグメントfxについて2つの計算値をトレードオフするトレードオフ関数Tを記述している。第1の計算値は“フラグメントリストの始めまでのフラグメントfxの距離”である。フラグメントリストの先頭に近いフラグメントは、要求される可能性が高くなるため、高い数値になる。
第2の計算値(すなわち、“現在のディスク位置までのfxの距離”)は、現在のディスクドライブの読み/書きヘッド位置までのフラグメントfxの距離である。距離が小さいほど、結果の値は高くなる。
トレードオフ関数Tは双方の値を計算し、フラグメントリストの要素fx毎に2つの計算値の加重結合を戻す。この加重結合は、双方の引数の増加関数であり、Xが増加する場合且つYが増加する場合に、T(X,Y)が高い関数の値を生じることを意味する。適切なTの一例は、T(X,Y)=X+C*Yであり、Cは定数である。加重関数Tの正確なパラメータ(例えば定数C)は、ディスクドライブ1の特定の性能パラメータを前提として最適なシークパターンを生成するように、調整又は決定される。
前述のように、トレードオフ関数T’により計算された最低の数値を有する単一のフラグメントが、減少したフラグメントリストから選択される。
ディスク制御ユニット343がアクセス予測ユニットにより生成されたフラグメントリストを使用するため、また、アクセス予測ユニット393がフラグメントリストを生成するときに少なくとも2つの再生モードを考慮するため、ディスク制御ユニットは、何のフラグメントを要求するかを決定するときに少なくとも2つの再生モードを考慮することになる。
フラグメントリストの生成は、アクセス予測を実行するために一方向を表すことに留意すべきである。フラグメントをランク付けする他の表現も本発明の検討内である。
他の実施例によれば、本発明は、アクセス予測ユニット339の使用を考慮しない。それよりも、ディスク制御ユニット343は、アクセス予測ユニット339の機能を組み込む。具体的には、ディスク制御ユニット343は、キャッシュ335の現在の内容に基づいて、データソース1から読み取られるデータブロックを特定する。読み取られるデータブロックの特定は、読み取られる1つの候補データブロックを選択するために何らかの数の候補データブロックを優先付ける優先制御機構を介して実行されてもよい。優先付けは、キャッシュメモリ335に現在存在しない少なくとも2つの候補データブロックを特定する動作と、候補データブロックに適切度の数値を割り当てる動作と、最高の適切度の数値を有するデータブロックを選択する動作とを有する。適切度の数値は、各再生モードの相対的重要度を少なくとも含むがそれに限定されない基準に基づいてもよい。
他の実施例では、ディスク制御ユニット343は、発見的アルゴリズムに基づいてデータソース1に格納されたデータを予測的に選択するように構成される。発見的アルゴリズムは、データが今後キャッシュメモリ335から要求される可能性を予測することにより、データソースからデータを選択し、予測に基づいて予測スコアを割り当て、最高の予測スコアを有するデータをデータソース1から選択する。発見的アルゴリズムは、現在の再生モードと、現在のフラグメント位置と、複数の再生モードの中からのフラグメントアクセスパターンの知識と、現在のモードが維持される確率と、現在の再生モード以外のモードが選択される確率とを含むがこれらに限定されない基準を考慮に入れる。
[トリックモードキャッシュ335]
トリックモードキャッシュ335は、ライン56を介してディスクドライブ1とインタフェース接続し、ライン53を介してキャッシュ交換ユニット341とインタフェース接続し、ライン46を介してプレゼンテーションユニット337とインタフェース接続する。
トリックモードキャッシュ335は、ライン56を介してディスクドライブ1とインタフェース接続し、ライン53を介してキャッシュ交換ユニット341とインタフェース接続し、ライン46を介してプレゼンテーションユニット337とインタフェース接続する。
トリックモードキャッシュ335は、ディスク制御ユニット343の制御でディスクドライブ1から受信したフラグメントを格納する。最終的に、トリックモードキャッシュ335に格納されているフラグメントのうち何らかが、後に双方向ライン46でプレゼンテーションユニット337により要求されてもよい。
トリックモードキャッシュ335の特徴は、プレゼンテーションユニット337によりランダムにアクセスされて、許容されるトリックモード及び/又は再生モードのいずれかへの移行を見越してフラグメントを要求してもよいという点である。この機能は、FIFOバッファを使用する従来技術の再生ユニットでは利用不可能であった。代替実施例では、トリックモードキャッシュ335は、ディスクセクタ番号のようにフラグメント以外のデータセグメントを要求するためにアドレス指定されてもよい点に留意すべきである。
この実施例でのトリックモードキャッシュ335及びその対応する制御ロジックのその他の特徴は、プレゼンテーションユニット337が表示用のフラグメントを要求したときに、取り出されたフラグメントがトリックモードキャッシュ335から自動的に削除又は消去されないという点である。この特徴は、許容されるトリックモード及び/又は再生モードのいずれかへの移行を見越して提供される。
この実施例でのトリックモードキャッシュ335及びその対応する制御ロジックのその他の特徴は、従来のキャッシュはキャッシュのユーザがキャッシュにまだ存在していないデータの部分を要求したときのみ充填されるという点で、通常のキャッシュと異なる予測キャッシュであるという点である。予測キャッシュは、今後の要求を予測しようとする別の機構により充填される。
トリックモードキャッシュ335のその他の特徴は、プレゼンテーションユニット337がデータ(例えば1つ以上のフラグメント)を要求した場合に、要求されたデータがキャッシュに存在していて利用可能でなければならないことを確保するための暗黙の要件がキャッシュの周囲の制御ロジックに存在しないという点である。これは、要求されたデータがFIFOバッファに存在しなければならない存在しなければならないという点で、従来のFIFOの方策と異なる。要求されたデータがキャッシュに存在しない場合には常に、キャッシュミスが生じ、プレゼンテーションユニット337は最近表示されたフラグメントの最後のフレームを出力し続ける(すなわち、フレームのフリーズ)。
[アクセス予測ユニット339]
アクセス予測ユニット339は、(ライン48を介して)現在フラグメント位置ユニット333、(ライン40を介して)モードユニット331、(ライン47を介して)キャッシュ交換ユニット341、及び(ライン50、52を介して)ディスク制御ユニット343とインタフェース接続する。
アクセス予測ユニット339は、(ライン48を介して)現在フラグメント位置ユニット333、(ライン40を介して)モードユニット331、(ライン47を介して)キャッシュ交換ユニット341、及び(ライン50、52を介して)ディスク制御ユニット343とインタフェース接続する。
アクセス予測ユニット339は、ユーザにより今後アクセスされる可能性の最も高いフラグメントで構成されるフラグメントリストを生成するために、アクセス予測を実行する。フラグメントリストは{f1,f2,f3,f4,...}として表されてもよく、f1は今後アクセスされる可能性の最も高いフラグメントである。
好ましい実施例では、アクセス予測ユニット339により生成されたフラグメントリストの長さは、リストのフラグメントの数を表す(F+1)*Mである。Fは、トリックモードキャッシュ335に収まることができる推定の最大フラグメント数である。MPEG-2ストリームのフラグメントが可変サイズを有し得るため(現実的な最小サイズは品質の考慮を加味することで決められる)、この推定が必要になる。変数Mは、アクセス予測ユニットにより考慮される異なる再生モードの数である。
他の実施例では、短いリスト又は長いリストが生成されてもよいことがわかる。特に、受信ユニットが決定を行うのに十分な要素を受信したことを示す何らかの信号をアクセス予測ユニット339に与えたときに、通常では短い可変サイズのリストが生成され得る。この信号の使用は、アクセス予測タスクがディスク制御ユニット341及び/又はキャッシュ交換ユニット343に統合されている場合に特に適切である。このような統合された場合では、リストデータ構造を全く使用しない実施例、又は予測を生成して(取り出す又は消去する)フラグメントを選択するタスクを単一のアルゴリズムに混合する実施例を使用することができる(使用される方法の実装によっては好ましい場合がある)。
アクセス予測ユニット339は、プレゼンテーションユニット337により今後アクセスされる可能性の最も高いフラグメントを予測するために、予測アルゴリズムを使用する。今後アクセスされる可能性の最も高いフラグメントを予測するために、プレゼンテーションユニット337は、モードユニット331及び現在フラグメント位置ユニット333から入力情報を受信する。
従来技術では、アクセス予測は、一般的にモードにより決定される方向で現在フラグメント再生位置からの現在の再生モードの直線外挿として実行されている。フラグメントのリストが出力され、このリストは、現在の再生モードの直線外挿を表す。それに対して、本発明の主な特徴は、アクセス予測は単に現在の再生モードからなるだけではなく、ユーザが今後切り替え得る他の再生モードをも考慮する。最も簡単な場合では、アクセス予測は、現在の再生モード以外の少なくとも1つのモードを検討する。従って、アクセス予測ユニットは、現在の再生モードにより必要になるフラグメントと、更に少なくとも1つの他のモードにより必要になるフラグメントとを含むフラグメントリストを出力する。より複雑な実装では、アクセス予測を実行するときに、1つ以上の更なるモードが考慮されてもよい。従って、アクセス予測は、現在のモードが維持される確率と、更に現在の再生モードと異なるモードが今後ユーザにより選択される確率とを反映することがわかる。
アクセス予測の結果がキャッシュ交換ユニット及びディスク制御ユニットに供給されるという認識に加えて、アクセス予測が複数の再生モードを検討するという事実を考慮して、好ましい実施例では、これらの双方のユニットはまた、何のフラグメントを削除又は要求するかについて決定を行うときに1つより多いモードを考慮するように構成されることがわかる。
アクセス予測ユニットの前述の説明は、中心原理として‘予測’を強調したが、予測を重視せずに他のランク付け方法を使用する他の実施例も、本発明の検討内である。最も一般的な場合では、アクセス予測ユニットに必要な全てのものは、トリックモードの性能を最適化する効果を有する発見的手法を有することである。
代替実施例では、アクセス予測ユニットは、‘適切度ランク付けユニット’と交換されてもよい。‘適切度ランク付けユニット’は、キャッシュメモリに有することが最も望ましいフラグメントが高い適切度の数値を有するように、各フラグメントに適切度の数値を割り当てる。適切度の数値は、少なくとも2つの候補フラグメントが使用され得る少なくとも2つの再生モードの相対的重要度と、現在の再生位置までの少なくとも2つの候補データブロックの間の距離とを含むがこれらに限定されない基準に基づいてもよい。
適切度ランク付けユニットを使用する実施例では、出力は、最も適切なフラグメントがリストの先頭にあるフラグメントリストであることが好ましい。このフラグメントリストがキャッシュ交換ユニット及びディスク制御ユニットに供給されるため、これらの双方のユニットもまた適切度ランク付け手法を使用する(すなわち、何のフラグメントを削除又は要求するかについて決定を行うときに1つより多いモードを考慮する)ように構成されることがわかる。
[キャッシュ交換ユニット341]
キャッシュ交換ユニット341は、(ライン53を介して)トリックモードキャッシュ335、(ライン47を介して)アクセス予測ユニット339、及び(ライン51を介して)プレゼンテーションユニット337とインタフェース接続する。
キャッシュ交換ユニット341は、(ライン53を介して)トリックモードキャッシュ335、(ライン47を介して)アクセス予測ユニット339、及び(ライン51を介して)プレゼンテーションユニット337とインタフェース接続する。
キャッシュ交換ユニット341は、フラグメントデータを読み取るディスク制御ユニット343からの命令に応じて、ストレージがディスクドライブ1から受信したフラグメントデータを格納する必要があるときに、トリックモードキャッシュ335から何のフラグメントを削除するかを選択する。何のフラグメントがトリックモードキャッシュ335から削除されるかについての決定は、アクセス予測ユニット339から取り出されたフラグメントリストのそれぞれ格納されたフラグメントの位置を考慮する。順次、フラグメントリストに現れない格納済のフラグメントは常に削除される。この動作の後に大きいストレージが必要になると、リストの最後に現れる格納済のフラグメントが削除される。
好ましい実施例の前記の説明は、当業者が本発明を作る又は使用することを可能にするために提供されている点に留意すべきである。本発明の機能を使用せずに、他の実施例に加えて、これらの実施例への様々な変更が当業者に容易に明らかになる。従って、本発明は、ここに示されている実施例に限定されることを意図しているのではなく、ここに開示されている原理及び新規な特徴に従った最も広い範囲で認められることを意図する。
請求項を解釈するときに、以下のことがわかる。
a)“有する”という用語は、所定の請求項に記載されたもの以外の要素又は動作の存在を除外するものではない。
b)単数の要素は、そのような要素の複数の存在を除外するものではない。
c)請求項の如何なる参照符合も特許請求の範囲を限定しない。
d)複数の“手段”は、同一のアイテム又はハードウェア若しくはソフトウェアに実装された構造又は機能により表されてもよい。
e)開示された要素のそれぞれは、ハードウェア部分(例えば別個の電子回路)、ソフトウェア部分(例えばコンピュータプログラム)又はその何らかの組み合わせで構成されてもよい。
b)単数の要素は、そのような要素の複数の存在を除外するものではない。
c)請求項の如何なる参照符合も特許請求の範囲を限定しない。
d)複数の“手段”は、同一のアイテム又はハードウェア若しくはソフトウェアに実装された構造又は機能により表されてもよい。
e)開示された要素のそれぞれは、ハードウェア部分(例えば別個の電子回路)、ソフトウェア部分(例えばコンピュータプログラム)又はその何らかの組み合わせで構成されてもよい。
Claims (25)
- 複数の再生モードを含む再生システムにおける再生装置であって:
データソースから読み取られるデータを格納するように構成されたキャッシュメモリと;
前記複数の再生モードの中から少なくとも2つの再生モードでの前記格納されたデータの現在及び/又は今後の使用の決定に基づいて、前記キャッシュメモリから削除される前記格納されたデータのいくつかを特定するように構成されたキャッシュ交換ユニットと;
ユーザに提示されるデータを前記キャッシュメモリから取り出すように構成されたプレゼンテーションユニットと;
を有する装置。 - 請求項1に記載の装置であって、
前記データソースから読み取られる前記データを特定して取り出すように構成されたディスク制御ユニットを更に有し、
前記特定は、前記キャッシュメモリに現在格納されたデータの考慮を除外する装置。 - 請求項2に記載の装置であって、
前記特定されて取り出されたデータは、前記複数の再生モードのうち少なくとも2つで現在及び/又は今後に使用されるのに適したデータである装置。 - 請求項3に記載の装置であって、
前記データの特定は、前記キャッシュメモリに現在存在しない少なくとも2つの候補ブロックを特定し、前記少なくとも2つの特定された候補データブロックに適切度の数値を割り当て;割り当てられた最高の適切度の数値を有する前記少なくとも2つの候補データブロックのうち1つを選択する動的優先制御機構を介して実行される装置。 - 請求項4に記載の装置であって、
前記割り当てられた適切度の数値は、前記少なくとも2つの候補データブロックが使用され得る前記少なくとも2つの再生モードの相対的重要度と、現在の再生位置までの前記少なくとも2つの候補データブロックの間の距離とを少なくとも有する基準に基づく装置。 - 請求項1に記載の装置であって、
発見的アルゴリズムに基づいて前記データソースに格納されたデータを予測的に選択するように構成されたディスク制御ユニットを更に有し、
前記予測的に選択されるデータは、前記キャッシュメモリに現在格納されているデータを除外する装置。 - 請求項6に記載の装置であって、
前記発見的アルゴリズムは、前記データが今後に前記キャッシュメモリから要求される可能性を予測し、前記予測に基づいて予測スコアを割り当て、最高の予測スコアを有する前記データを前記データソースから選択することにより、前記データソースから前記データを選択する装置。 - 請求項7に記載の装置であって、
前記発見的アルゴリズムは、現在の再生モードの認識と、現在の再生位置と、前記複数のモードのそれぞれのデータアクセスパターンの認識と、現在のモードが維持される確率と、現在のモードと異なるモードが選択される確率とを少なくとも有する基準を検討する装置。 - 複数の再生モードを有する再生システムにおける再生装置であって:
データソースから読み取られた複数のデータブロックを有するデータを格納するように構成されたキャッシュメモリと;
前記データソースから読み取られる前記複数のデータブロックのいくつかを特定するように構成され、前記特定は前記キャッシュメモリの現在の内容に基づくディスク制御ユニットと;
前記キャッシュメモリから削除される前記データブロックのいくつかを特定するように構成されたキャッシュ交換ユニットと;
表示されるデータを前記キャッシュメモリから取得するように構成されたプレゼンテーションユニットと;
を有する再生装置。 - 請求項9に記載の装置であって、
前記ディスク制御ユニットの制御で前記データソースから読み取られる前記複数のデータブロックのいくつかは、前記複数のデータモードのうち少なくとも2つで使用されるのに適した候補データブロックである装置。 - 請求項10に記載の装置であって、
前記候補データブロックの前記特定は、動的優先制御機構を介して実行される装置。 - 請求項11に記載の装置であって、
前記動的優先制御機構は、前記キャッシュメモリに現在存在しない少なくとも2つの候補データブロックを特定し、前記少なくとも2つの候補データブロックに適切度の数値を割り当て;割り当てられた最高の適切度の数値を有する候補データブロックを前記少なくとも2つの候補データブロックから選択するように構成される装置。 - 請求項12に記載の装置であって、
前記割り当てられた適切度の数値は、前記少なくとも2つの候補データブロックが使用され得る前記少なくとも2つの再生モードの相対的重要度と、現在の再生位置までの前記少なくとも2つの候補データブロックの間の距離とを少なくとも有する基準に基づく装置。 - 複数の再生モードを有する再生システムにおける再生装置であって:
データソースから読み取られるデータブロックを予測的に選択するように構成され、前記選択されたデータは前記複数の再生モードの中から少なくとも2つの再生モードで使用可能であるアクセス予測ユニットと;
前記データソースから前記予測的に選択されたデータブロックを読み取るように構成されたディスク制御ユニットと;
前記データソースから読み取られた前記予測的に選択されたデータブロックを格納するように構成されたキャッシュと;
ユーザに提示されるデータブロックを前記キャッシュから要求するように構成されたプレゼンテーションユニットと;
を有する装置。 - 請求項14に記載の装置であって、
前記アクセス予測ユニットは、発見的アルゴリズムに従ってフラグメントを予測的に選択する装置。 - 請求項15に記載の装置であって、
前記発見的アルゴリズムは、前記データソースから読み取られるデータブロックが今後に前記キャッシュメモリから取り出される確率を予測し、取り出される最高の確率を有するデータブロックを選択する装置。 - 請求項16に記載の装置であって、
前記キャッシュメモリから削除される前記データブロックのいくつかを特定するように構成されたキャッシュ交換ユニットを更に有する装置。 - 複数の再生モードを有する再生システムにおける再生装置でトリックモードの性能を向上する方法であって:
データソースからデータを読み取る動作と;
キャッシュメモリに前記データを格納する動作と;
前記複数の再生モードの中から少なくとも2つの再生モードでの前記格納されたデータの現在及び/又は今後の使用の決定に基づいて、前記キャッシュメモリから削除される前記格納されたデータのいくつかを特定する動作と;
表示されるデータを前記キャッシュメモリから取り出す動作と;
を有する方法。 - 請求項18に記載の方法であって:
前記データソースから読み取られる前記データを特定し、前記データは、前記キャッシュメモリに現在格納されているものの検討を除外する動作と;
前記データソースから前記特定されたデータを取り出す動作と;
前記取り出されたデータを前記キャッシュメモリに格納する動作と;
を更に有する方法。 - 請求項19に記載の方法であって、
前記特定する動作は、前記複数の再生モードのうち少なくとも2つでの前記データの現在及び/又は今後の使用に基づく方法。 - 請求項20に記載の方法であって、
前記データの特定は:
前記キャッシュメモリに現在存在しない少なくとも2つの候補データブロックを特定する動作と;
前記少なくとも2つの特定された候補データブロックに適切度の数値を割り当てる動作と;
前記少なくとも2つの候補データブロックのうち割り当てられた最高の適切度の数値を有するものを選択する動作と;
を有する動的優先制御機構を介して実行される方法。 - 請求項20に記載の方法であって、
前記割り当てられた適切度の数値は、前記少なくとも2つの候補データブロックが使用され得る前記少なくとも2つの再生モードの相対的重要度と、現在の再生位置までの前記少なくとも2つの候補データブロックの間の距離とを少なくとも有する基準に基づく方法。 - 請求項18に記載の方法であって、
発見的アルゴリズムに基づいて前記データソースに格納された前記データを予測的に選択する動作を更に有し、
前記予測的に選択されるデータは、前記キャッシュメモリに現在格納されたデータを除外する方法。 - 請求項23に記載の方法であって、
前記発見的アルゴリズムは:
前記データが今後に前記キャッシュメモリから要求される確率を予測する動作と;
前記予測に基づいて予測スコアを割り当てる動作と;
最高の予測スコアを有する前記データを前記データソースから選択する動作と;
に従って前記データソースから前記データを予測的に選択する方法。 - 請求項24に記載の方法であって、
前記発見的アルゴリズムは、現在の再生モードの認識と、現在の再生位置と、前記複数のモードのそれぞれのデータアクセスパターンの認識と、現在のモードが維持される確率と、現在のモードと異なるモードが選択される確率とを少なくとも有する基準を検討する方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US50709103P | 2003-09-30 | 2003-09-30 | |
PCT/IB2004/051900 WO2005031737A1 (en) | 2003-09-30 | 2004-09-28 | Cache management for improving trick play performance |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007511855A true JP2007511855A (ja) | 2007-05-10 |
Family
ID=34393208
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006530942A Pending JP2007511855A (ja) | 2003-09-30 | 2004-09-28 | トリック再生の性能を向上するためのキャッシュ管理 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20070038811A1 (ja) |
EP (1) | EP1671326A1 (ja) |
JP (1) | JP2007511855A (ja) |
KR (1) | KR20060092235A (ja) |
CN (1) | CN1860545A (ja) |
WO (1) | WO2005031737A1 (ja) |
Families Citing this family (130)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8645137B2 (en) | 2000-03-16 | 2014-02-04 | Apple Inc. | Fast, language-independent method for user authentication by voice |
US8151259B2 (en) | 2006-01-03 | 2012-04-03 | Apple Inc. | Remote content updates for portable media devices |
US7724716B2 (en) | 2006-06-20 | 2010-05-25 | Apple Inc. | Wireless communication system |
US7831199B2 (en) | 2006-01-03 | 2010-11-09 | Apple Inc. | Media data exchange, transfer or delivery for portable electronic devices |
CN1938778A (zh) * | 2004-03-30 | 2007-03-28 | 皇家飞利浦电子股份有限公司 | 支持基于盘的多媒体内容的改进的特技模式性能的系统和方法 |
US7536565B2 (en) | 2005-01-07 | 2009-05-19 | Apple Inc. | Techniques for improved playlist processing on media devices |
US8300841B2 (en) | 2005-06-03 | 2012-10-30 | Apple Inc. | Techniques for presenting sound effects on a portable media player |
US7590772B2 (en) | 2005-08-22 | 2009-09-15 | Apple Inc. | Audio status information for a portable electronic device |
US8677377B2 (en) | 2005-09-08 | 2014-03-18 | Apple Inc. | Method and apparatus for building an intelligent automated assistant |
US7930369B2 (en) | 2005-10-19 | 2011-04-19 | Apple Inc. | Remotely configured media device |
US20070096939A1 (en) * | 2005-10-27 | 2007-05-03 | Craig Walrath | Methods and systems for content distribution using intelligent data management arrangements |
US7673238B2 (en) * | 2006-01-05 | 2010-03-02 | Apple Inc. | Portable media device with video acceleration capabilities |
US9137309B2 (en) | 2006-05-22 | 2015-09-15 | Apple Inc. | Calibration techniques for activity sensing devices |
US20070271116A1 (en) | 2006-05-22 | 2007-11-22 | Apple Computer, Inc. | Integrated media jukebox and physiologic data handling application |
US9318108B2 (en) | 2010-01-18 | 2016-04-19 | Apple Inc. | Intelligent automated assistant |
US8090130B2 (en) | 2006-09-11 | 2012-01-03 | Apple Inc. | Highly portable media devices |
US8977255B2 (en) | 2007-04-03 | 2015-03-10 | Apple Inc. | Method and system for operating a multi-function portable electronic device using voice-activation |
JP5261785B2 (ja) * | 2007-10-31 | 2013-08-14 | 株式会社日立製作所 | コンテンツ配信システム、キャッシュサーバ及びキャッシュ管理サーバ |
US9330720B2 (en) | 2008-01-03 | 2016-05-03 | Apple Inc. | Methods and apparatus for altering audio output signals |
US8996376B2 (en) | 2008-04-05 | 2015-03-31 | Apple Inc. | Intelligent text-to-speech conversion |
US10496753B2 (en) | 2010-01-18 | 2019-12-03 | Apple Inc. | Automatically adapting user interfaces for hands-free interaction |
US20100030549A1 (en) | 2008-07-31 | 2010-02-04 | Lee Michael M | Mobile device having human language translation capability with positional feedback |
US9959870B2 (en) | 2008-12-11 | 2018-05-01 | Apple Inc. | Speech recognition involving a mobile device |
US9858925B2 (en) | 2009-06-05 | 2018-01-02 | Apple Inc. | Using context information to facilitate processing of commands in a virtual assistant |
US10241752B2 (en) | 2011-09-30 | 2019-03-26 | Apple Inc. | Interface for a virtual digital assistant |
US10241644B2 (en) | 2011-06-03 | 2019-03-26 | Apple Inc. | Actionable reminder entries |
US10706373B2 (en) | 2011-06-03 | 2020-07-07 | Apple Inc. | Performing actions associated with task items that represent tasks to perform |
US9431006B2 (en) | 2009-07-02 | 2016-08-30 | Apple Inc. | Methods and apparatuses for automatic speech recognition |
US10276170B2 (en) | 2010-01-18 | 2019-04-30 | Apple Inc. | Intelligent automated assistant |
US10679605B2 (en) | 2010-01-18 | 2020-06-09 | Apple Inc. | Hands-free list-reading by intelligent automated assistant |
US10553209B2 (en) | 2010-01-18 | 2020-02-04 | Apple Inc. | Systems and methods for hands-free notification summaries |
US10705794B2 (en) | 2010-01-18 | 2020-07-07 | Apple Inc. | Automatically adapting user interfaces for hands-free interaction |
DE202011111062U1 (de) | 2010-01-25 | 2019-02-19 | Newvaluexchange Ltd. | Vorrichtung und System für eine Digitalkonversationsmanagementplattform |
US8682667B2 (en) | 2010-02-25 | 2014-03-25 | Apple Inc. | User profiling for selecting user specific voice input processing information |
US10762293B2 (en) | 2010-12-22 | 2020-09-01 | Apple Inc. | Using parts-of-speech tagging and named entity recognition for spelling correction |
US9262612B2 (en) | 2011-03-21 | 2016-02-16 | Apple Inc. | Device access using voice authentication |
US10057736B2 (en) | 2011-06-03 | 2018-08-21 | Apple Inc. | Active transport based notifications |
US8994660B2 (en) | 2011-08-29 | 2015-03-31 | Apple Inc. | Text correction processing |
US10134385B2 (en) | 2012-03-02 | 2018-11-20 | Apple Inc. | Systems and methods for name pronunciation |
US9483461B2 (en) | 2012-03-06 | 2016-11-01 | Apple Inc. | Handling speech synthesis of content for multiple languages |
US9280610B2 (en) | 2012-05-14 | 2016-03-08 | Apple Inc. | Crowd sourcing information to fulfill user requests |
US9721563B2 (en) | 2012-06-08 | 2017-08-01 | Apple Inc. | Name recognition system |
US9495129B2 (en) | 2012-06-29 | 2016-11-15 | Apple Inc. | Device, method, and user interface for voice-activated navigation and browsing of a document |
US9576574B2 (en) | 2012-09-10 | 2017-02-21 | Apple Inc. | Context-sensitive handling of interruptions by intelligent digital assistant |
US9547647B2 (en) | 2012-09-19 | 2017-01-17 | Apple Inc. | Voice-based media searching |
JP2016508007A (ja) | 2013-02-07 | 2016-03-10 | アップル インコーポレイテッド | デジタルアシスタントのためのボイストリガ |
US9368114B2 (en) | 2013-03-14 | 2016-06-14 | Apple Inc. | Context-sensitive handling of interruptions |
KR101759009B1 (ko) | 2013-03-15 | 2017-07-17 | 애플 인크. | 적어도 부분적인 보이스 커맨드 시스템을 트레이닝시키는 것 |
WO2014144579A1 (en) | 2013-03-15 | 2014-09-18 | Apple Inc. | System and method for updating an adaptive speech recognition model |
WO2014197334A2 (en) | 2013-06-07 | 2014-12-11 | Apple Inc. | System and method for user-specified pronunciation of words for speech synthesis and recognition |
WO2014197336A1 (en) | 2013-06-07 | 2014-12-11 | Apple Inc. | System and method for detecting errors in interactions with a voice-based digital assistant |
US9582608B2 (en) | 2013-06-07 | 2017-02-28 | Apple Inc. | Unified ranking with entropy-weighted information for phrase-based semantic auto-completion |
WO2014197335A1 (en) | 2013-06-08 | 2014-12-11 | Apple Inc. | Interpreting and acting upon commands that involve sharing information with remote devices |
US10176167B2 (en) | 2013-06-09 | 2019-01-08 | Apple Inc. | System and method for inferring user intent from speech inputs |
CN110442699A (zh) | 2013-06-09 | 2019-11-12 | 苹果公司 | 操作数字助理的方法、计算机可读介质、电子设备和系统 |
CN105265005B (zh) | 2013-06-13 | 2019-09-17 | 苹果公司 | 用于由语音命令发起的紧急呼叫的系统和方法 |
JP6163266B2 (ja) | 2013-08-06 | 2017-07-12 | アップル インコーポレイテッド | リモート機器からの作動に基づくスマート応答の自動作動 |
US20150334204A1 (en) * | 2014-05-15 | 2015-11-19 | Google Inc. | Intelligent auto-caching of media |
US9620105B2 (en) | 2014-05-15 | 2017-04-11 | Apple Inc. | Analyzing audio input for efficient speech and music recognition |
US10592095B2 (en) | 2014-05-23 | 2020-03-17 | Apple Inc. | Instantaneous speaking of content on touch devices |
US9502031B2 (en) | 2014-05-27 | 2016-11-22 | Apple Inc. | Method for supporting dynamic grammars in WFST-based ASR |
US9760559B2 (en) | 2014-05-30 | 2017-09-12 | Apple Inc. | Predictive text input |
US9633004B2 (en) | 2014-05-30 | 2017-04-25 | Apple Inc. | Better resolution when referencing to concepts |
US9842101B2 (en) | 2014-05-30 | 2017-12-12 | Apple Inc. | Predictive conversion of language input |
US9715875B2 (en) | 2014-05-30 | 2017-07-25 | Apple Inc. | Reducing the need for manual start/end-pointing and trigger phrases |
US10289433B2 (en) | 2014-05-30 | 2019-05-14 | Apple Inc. | Domain specific language for encoding assistant dialog |
US9430463B2 (en) | 2014-05-30 | 2016-08-30 | Apple Inc. | Exemplar-based natural language processing |
US9734193B2 (en) | 2014-05-30 | 2017-08-15 | Apple Inc. | Determining domain salience ranking from ambiguous words in natural speech |
US10170123B2 (en) | 2014-05-30 | 2019-01-01 | Apple Inc. | Intelligent assistant for home automation |
US9785630B2 (en) | 2014-05-30 | 2017-10-10 | Apple Inc. | Text prediction using combined word N-gram and unigram language models |
US10078631B2 (en) | 2014-05-30 | 2018-09-18 | Apple Inc. | Entropy-guided text prediction using combined word and character n-gram language models |
US9966065B2 (en) | 2014-05-30 | 2018-05-08 | Apple Inc. | Multi-command single utterance input method |
US9338493B2 (en) | 2014-06-30 | 2016-05-10 | Apple Inc. | Intelligent automated assistant for TV user interactions |
US10659851B2 (en) | 2014-06-30 | 2020-05-19 | Apple Inc. | Real-time digital assistant knowledge updates |
US10446141B2 (en) | 2014-08-28 | 2019-10-15 | Apple Inc. | Automatic speech recognition based on user feedback |
US9818400B2 (en) | 2014-09-11 | 2017-11-14 | Apple Inc. | Method and apparatus for discovering trending terms in speech requests |
US9606986B2 (en) | 2014-09-29 | 2017-03-28 | Apple Inc. | Integrated word N-gram and class M-gram language models |
US9668121B2 (en) | 2014-09-30 | 2017-05-30 | Apple Inc. | Social reminders |
US10074360B2 (en) | 2014-09-30 | 2018-09-11 | Apple Inc. | Providing an indication of the suitability of speech recognition |
US9886432B2 (en) | 2014-09-30 | 2018-02-06 | Apple Inc. | Parsimonious handling of word inflection via categorical stem + suffix N-gram language models |
US10127911B2 (en) | 2014-09-30 | 2018-11-13 | Apple Inc. | Speaker identification and unsupervised speaker adaptation techniques |
US9646609B2 (en) | 2014-09-30 | 2017-05-09 | Apple Inc. | Caching apparatus for serving phonetic pronunciations |
US10552013B2 (en) | 2014-12-02 | 2020-02-04 | Apple Inc. | Data detection |
US9711141B2 (en) | 2014-12-09 | 2017-07-18 | Apple Inc. | Disambiguating heteronyms in speech synthesis |
US9865280B2 (en) | 2015-03-06 | 2018-01-09 | Apple Inc. | Structured dictation using intelligent automated assistants |
US9886953B2 (en) | 2015-03-08 | 2018-02-06 | Apple Inc. | Virtual assistant activation |
US10567477B2 (en) | 2015-03-08 | 2020-02-18 | Apple Inc. | Virtual assistant continuity |
US9721566B2 (en) | 2015-03-08 | 2017-08-01 | Apple Inc. | Competing devices responding to voice triggers |
US9899019B2 (en) | 2015-03-18 | 2018-02-20 | Apple Inc. | Systems and methods for structured stem and suffix language models |
US9842105B2 (en) | 2015-04-16 | 2017-12-12 | Apple Inc. | Parsimonious continuous-space phrase representations for natural language processing |
US10083688B2 (en) | 2015-05-27 | 2018-09-25 | Apple Inc. | Device voice control for selecting a displayed affordance |
US10127220B2 (en) | 2015-06-04 | 2018-11-13 | Apple Inc. | Language identification from short strings |
US9578173B2 (en) | 2015-06-05 | 2017-02-21 | Apple Inc. | Virtual assistant aided communication with 3rd party service in a communication session |
US10101822B2 (en) | 2015-06-05 | 2018-10-16 | Apple Inc. | Language input correction |
US11025565B2 (en) | 2015-06-07 | 2021-06-01 | Apple Inc. | Personalized prediction of responses for instant messaging |
US10255907B2 (en) | 2015-06-07 | 2019-04-09 | Apple Inc. | Automatic accent detection using acoustic models |
US10186254B2 (en) | 2015-06-07 | 2019-01-22 | Apple Inc. | Context-based endpoint detection |
US10747498B2 (en) | 2015-09-08 | 2020-08-18 | Apple Inc. | Zero latency digital assistant |
US10671428B2 (en) | 2015-09-08 | 2020-06-02 | Apple Inc. | Distributed personal assistant |
US9697820B2 (en) | 2015-09-24 | 2017-07-04 | Apple Inc. | Unit-selection text-to-speech synthesis using concatenation-sensitive neural networks |
US10366158B2 (en) | 2015-09-29 | 2019-07-30 | Apple Inc. | Efficient word encoding for recurrent neural network language models |
US11010550B2 (en) | 2015-09-29 | 2021-05-18 | Apple Inc. | Unified language modeling framework for word prediction, auto-completion and auto-correction |
US11587559B2 (en) | 2015-09-30 | 2023-02-21 | Apple Inc. | Intelligent device identification |
US10691473B2 (en) | 2015-11-06 | 2020-06-23 | Apple Inc. | Intelligent automated assistant in a messaging environment |
US10049668B2 (en) | 2015-12-02 | 2018-08-14 | Apple Inc. | Applying neural network language models to weighted finite state transducers for automatic speech recognition |
US10223066B2 (en) | 2015-12-23 | 2019-03-05 | Apple Inc. | Proactive assistance based on dialog communication between devices |
US10446143B2 (en) | 2016-03-14 | 2019-10-15 | Apple Inc. | Identification of voice inputs providing credentials |
US9934775B2 (en) | 2016-05-26 | 2018-04-03 | Apple Inc. | Unit-selection text-to-speech synthesis based on predicted concatenation parameters |
US9972304B2 (en) | 2016-06-03 | 2018-05-15 | Apple Inc. | Privacy preserving distributed evaluation framework for embedded personalized systems |
US10249300B2 (en) | 2016-06-06 | 2019-04-02 | Apple Inc. | Intelligent list reading |
US10049663B2 (en) | 2016-06-08 | 2018-08-14 | Apple, Inc. | Intelligent automated assistant for media exploration |
DK179309B1 (en) | 2016-06-09 | 2018-04-23 | Apple Inc | Intelligent automated assistant in a home environment |
US10586535B2 (en) | 2016-06-10 | 2020-03-10 | Apple Inc. | Intelligent digital assistant in a multi-tasking environment |
US10490187B2 (en) | 2016-06-10 | 2019-11-26 | Apple Inc. | Digital assistant providing automated status report |
US10509862B2 (en) | 2016-06-10 | 2019-12-17 | Apple Inc. | Dynamic phrase expansion of language input |
US10192552B2 (en) | 2016-06-10 | 2019-01-29 | Apple Inc. | Digital assistant providing whispered speech |
US10067938B2 (en) | 2016-06-10 | 2018-09-04 | Apple Inc. | Multilingual word prediction |
DK201670540A1 (en) | 2016-06-11 | 2018-01-08 | Apple Inc | Application integration with a digital assistant |
DK179343B1 (en) | 2016-06-11 | 2018-05-14 | Apple Inc | Intelligent task discovery |
DK179415B1 (en) | 2016-06-11 | 2018-06-14 | Apple Inc | Intelligent device arbitration and control |
DK179049B1 (en) | 2016-06-11 | 2017-09-18 | Apple Inc | Data driven natural language event detection and classification |
US10043516B2 (en) | 2016-09-23 | 2018-08-07 | Apple Inc. | Intelligent automated assistant |
US10593346B2 (en) | 2016-12-22 | 2020-03-17 | Apple Inc. | Rank-reduced token representation for automatic speech recognition |
DK201770439A1 (en) | 2017-05-11 | 2018-12-13 | Apple Inc. | Offline personal assistant |
DK179745B1 (en) | 2017-05-12 | 2019-05-01 | Apple Inc. | SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT |
DK179496B1 (en) | 2017-05-12 | 2019-01-15 | Apple Inc. | USER-SPECIFIC Acoustic Models |
DK201770432A1 (en) | 2017-05-15 | 2018-12-21 | Apple Inc. | Hierarchical belief states for digital assistants |
DK201770431A1 (en) | 2017-05-15 | 2018-12-20 | Apple Inc. | Optimizing dialogue policy decisions for digital assistants using implicit feedback |
DK179549B1 (en) | 2017-05-16 | 2019-02-12 | Apple Inc. | FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES |
TWI713362B (zh) * | 2019-12-17 | 2020-12-11 | 瑞昱半導體股份有限公司 | 多媒體內容播放裝置與多媒體內容播放方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2141607A1 (en) * | 1992-08-10 | 1994-02-17 | Charlie Kellner | System and method of selecting among multiple data streams |
GB2270791B (en) * | 1992-09-21 | 1996-07-17 | Grass Valley Group | Disk-based digital video recorder |
JPH07176174A (ja) * | 1992-12-25 | 1995-07-14 | Mitsubishi Electric Corp | ディスク装置 |
US6009231A (en) * | 1994-09-05 | 1999-12-28 | Sony Corporation | Reproduction of information using a ring buffer with read and write pointers separated from each other by substantially half of the total ring buffer capacity |
JP3319209B2 (ja) * | 1995-02-17 | 2002-08-26 | ソニー株式会社 | データ復号化装置 |
US5870551A (en) * | 1996-04-08 | 1999-02-09 | Lucent Technologies Inc. | Lookahead buffer replacement method using ratio of clients access order offsets and buffer data block offsets |
US6128712A (en) * | 1997-01-31 | 2000-10-03 | Macromedia, Inc. | Method and apparatus for improving playback of interactive multimedia works |
JP3968206B2 (ja) * | 2000-04-11 | 2007-08-29 | パイオニア株式会社 | 再生装置 |
-
2004
- 2004-09-28 US US10/573,746 patent/US20070038811A1/en not_active Abandoned
- 2004-09-28 JP JP2006530942A patent/JP2007511855A/ja active Pending
- 2004-09-28 WO PCT/IB2004/051900 patent/WO2005031737A1/en not_active Application Discontinuation
- 2004-09-28 EP EP04770116A patent/EP1671326A1/en not_active Withdrawn
- 2004-09-28 KR KR1020067006251A patent/KR20060092235A/ko not_active Application Discontinuation
- 2004-09-28 CN CNA2004800282322A patent/CN1860545A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
CN1860545A (zh) | 2006-11-08 |
EP1671326A1 (en) | 2006-06-21 |
KR20060092235A (ko) | 2006-08-22 |
US20070038811A1 (en) | 2007-02-15 |
WO2005031737A1 (en) | 2005-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2007511855A (ja) | トリック再生の性能を向上するためのキャッシュ管理 | |
JP2007531199A (ja) | ディスクベースのマルチメディアコンテンツのための改良されたトリックモード実行をサポートするシステムおよび方法 | |
US8924643B2 (en) | System and method for caching multimedia data | |
JP3641686B2 (ja) | 圧縮ビデオデータ用再生機能を実施するための方法および装置 | |
US8437408B2 (en) | Decoding with reference image stored in image memory for random playback | |
JP2005507218A (ja) | 情報ファイルを使用した早送りトリックモード及び巻き戻しトリックモード | |
US20060029364A1 (en) | Digital video stream trick play | |
JP2008072336A (ja) | 復号装置および復号方法 | |
KR20140010337A (ko) | 전자기기 및 그 제어방법 | |
JP5120981B2 (ja) | 特殊再生用のビデオデータの生成方法 | |
JP2008529405A (ja) | デジタルビデオサーバ用のビデオプレーヤ | |
KR20040045889A (ko) | 사용자 선택가능한 가변 트릭 모드 속도 | |
JP4827669B2 (ja) | 動画再生方法および装置 | |
JP2009111881A (ja) | 映像再生装置、映像再生方法及び映像再生処理用プログラム | |
KR20080010898A (ko) | 콘텐츠 전처리 방법 및 그 방법을 이용하는 콘텐츠 제공장치 | |
US20230062704A1 (en) | Video decoding method and device enabling improved user interaction with video content | |
JP2004140575A (ja) | データ処理装置、データ処理方法、および情報記憶媒体、並びにコンピュータ・プログラム | |
JP2004350152A (ja) | 映像再生装置および映像再生方法 | |
JP4591549B2 (ja) | 再生処理装置、および再生処理方法、並びにプログラム | |
JP2008112521A (ja) | 情報処理装置、及びその節電運転用プログラム | |
JP2013046357A (ja) | 画像再生装置、画像再生方法および画像再生プログラム | |
JP2005323089A (ja) | 再生装置 | |
JPH11298858A (ja) | ビデオサーバシステム | |
JP2004199766A (ja) | 再生装置および方法、並びにプログラム | |
JP2005346760A (ja) | 記録装置および方法、記録媒体、並びにプログラム |