JP4519082B2 - 情報処理方法、動画サムネイル表示方法、復号化装置、および情報処理装置 - Google Patents

情報処理方法、動画サムネイル表示方法、復号化装置、および情報処理装置 Download PDF

Info

Publication number
JP4519082B2
JP4519082B2 JP2006037890A JP2006037890A JP4519082B2 JP 4519082 B2 JP4519082 B2 JP 4519082B2 JP 2006037890 A JP2006037890 A JP 2006037890A JP 2006037890 A JP2006037890 A JP 2006037890A JP 4519082 B2 JP4519082 B2 JP 4519082B2
Authority
JP
Japan
Prior art keywords
thread
processing
data
decoding
buffer
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.)
Expired - Fee Related
Application number
JP2006037890A
Other languages
English (en)
Other versions
JP2007221323A (ja
Inventor
竜司 山本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Interactive Entertainment Inc
Original Assignee
Sony Computer Entertainment Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Computer Entertainment Inc filed Critical Sony Computer Entertainment Inc
Priority to JP2006037890A priority Critical patent/JP4519082B2/ja
Priority to US11/706,153 priority patent/US7885472B2/en
Publication of JP2007221323A publication Critical patent/JP2007221323A/ja
Application granted granted Critical
Publication of JP4519082B2 publication Critical patent/JP4519082B2/ja
Priority to US12/939,494 priority patent/US8036474B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining

Description

本発明は、情報処理技術に関し、特に複数の入力データのそれぞれに処理を施し並列に出力する情報処理方法、動画サムネイル表示方法、およびそれを適用する復号化装置および情報処理装置に関する。
近年の情報処理技術の著しい進歩に伴い、高速演算を行う情報処理装置がより身近なものになってきた。同時に画像や音声など各種データの処理技術等が発展したことにより、ユーザは様々なデータを容易に取得し、再生したり所望の処理を施したりすることができるようになった。
そのような状況において、同種の複数のデータを並列に処理し、並列に出力する技術は、膨大なデータの内容把握や、処理結果の比較といった目的で一般的に利用されるようになった。例えば動画再生装置における圧縮符号化された動画ファイルのサムネイル表示や、多重チャネルでリアルタイムに取得された複数の画像、音声、温度などのデータの画像解析による比較映像など、そのような技術の利用分野は多岐にわたる。
このようなデータの処理装置において並列処理を実現するためには、処理したいデータの数に応じてスレッドを生成し、CPUやメモリなどの限られたリソースを、時間的、空間的に分割して各スレッドに割り当てる必要がある。したがって、一度に表示するサムネイルの数を増やしたり、入力チャネルの数を増やしてより多くの結果を比較したりしようとすると、スレッドの数が増え、装置の負荷が増大する。このため、例えばサムネイルとして複数の動画をそのまま再生する動画サムネイル表示時や、複数チャネルのデータの経時変化を比較する場合など、リアルタイム性を要求される処理を並列して行う場合に所定の出力レートを確保するためには、並列に出力できるデータの数を増やすことが困難であった。
本発明はこのような課題に鑑みてなされたものであり、その目的は多数のデータを並列に出力する場合であっても、出力を円滑に行うことのできる技術を提供することにある。
本発明のある態様は情報処理方法に関する。この情報処理方法は、入力データストリームに所定の処理を施した中間データを対応するバッファに格納するスレッドを入力データストリームごとに生成し、切り替えて処理するステップと、複数の中間データを対応するバッファからそれぞれ読み出し、複数の出力データとして並列に出力するステップと、を含む。そして、切り替えて処理するステップは、スレッドの処理開始時に、バッファに格納され、読み出されていない中間データの量を検出するステップと、中間データの量が規定値より大きいとき、当該スレッドの処理を休止し、他のスレッドへ処理を切り替えるステップと、を含むことを特徴とする。
ここで「入力データストリーム」は、ある期間に連続的に出力されるべきデータ、または、処理して出力されるべき時間がある許容範囲をもって定められている一続きの時系列データであってよく、圧縮符号化された動画ファイル、音声ファイルなどのデータおよびその組み合わせ、圧縮されていない各種データなどのいずれでもよい。従って「所定の処理」は圧縮符号化されたデータであれば復号化、その他のデータであれば画像解析、音声解析、2次元プロファイル形成など、入力データストリームの種類と所望の出力データによって決定され、同種、異種によらず複数単位の処理を含んでよい。出力データは中間データに必要な処理を施してもよいし、中間データをそのまま使用してもよい。
「スレッド」は一般的にはアプリケーションに対応したプロセスを細分化したある機能を実現する処理単位であるが、ここではそれに限らず、プロセスそのものでも、ある機能を実現するために呼び出されるコンポーネントに対応した処理単位でもよく、何らかの処理または機能の単位に対応すればよい。
本発明の別の態様は動画サムネイル表示方法に関する。この動画サムネイル表示方法は、圧縮符号化された動画ファイルを復号化して生成されたテクスチャデータを対応するテクスチャバッファに格納する処理を行う復号化スレッドと、テクスチャデータを対応するテクスチャバッファから読み出し、画像フレームデータを生成して対応するフレームバッファに格納する処理を行う描画スレッドとを動画ファイルごとに生成し、切り替えて処理するステップと、複数の動画ファイルの画像フレームデータを、対応するフレームバッファからそれぞれ読み出し、並列に表示装置に出力するステップと、を含み、切り替えて処理するステップは、復号化スレッドの処理開始時に、テクスチャバッファに格納され、読み出されていないテクスチャデータの量を検出するステップと、テクスチャデータの量が規定値より大きいとき、復号化スレッドの復号化に係る処理を休止し、他のスレッドへ処理を切り替えるステップと、を含むことを特徴とする。
本発明のさらに別の態様は復号化装置に関する。この復号化装置は、符号化されたデータストリームを入力する入力部と、入力部に入力した複数の前記データストリームを切り替えて順に復号化する復号化部と、復号化部が復号化した中間データを一時保存する、前記データストリームのそれぞれに対応して設けられた複数のバッファと、複数のバッファに保存された複数の前記中間データを読み出し、並列に出力する出力部と、を備え、復号化部は、データストリームの復号化を行う前に、対応するバッファに格納され、読み出されていない中間データの量を検出し、中間データの量が規定値より大きいときは、データストリームの復号化を休止し、他の処理を開始することを特徴とする。
本発明のさらに別の態様は情報処理装置に関する。この情報処理装置は、圧縮符号化された複数の動画ファイルのそれぞれに対応した複数のバッファと、動画ファイルを復号化し、生成したテクスチャデータを対応するバッファに格納する復号化スレッドと、テクスチャデータを前記バッファから読み出し、動画ファイルに対応した画像フレームデータを生成する描画スレッドと、を動画ファイルごとに生成し、切り替えて処理するプロセッサユニットと、プロセッサユニットにより生成された、複数の動画ファイルの画像フレームデータを並列に表示する画像表示部と、を備え、プロセッサユニットは、復号化スレッドの処理開始時に、バッファに格納され、読み出されていないテクスチャデータの量に応じて、復号化スレッドの復号化に係る処理の続行可否を判定することを特徴とする。
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
本発明によれば、再生装置や情報処理装置等において、複数のデータの並列出力を効率的に行うことができる。
図1は本実施の形態における情報処理装置の構成を示している。情報処理装置100は装置全体を統括的に制御するとともに、圧縮符号化された動画ファイルの復号化処理などを行うプロセッサユニット20、実行中のプログラムや実行に必要なデータを記憶するメモリ70、ユーザによる入力指示を受け付ける入力装置75、動画ファイルを保存する記憶装置80、および復号化した動画ファイルのフレームを表示する表示装置90を含む。プロセッサユニット20、メモリ70、入力装置75、記憶装置80、表示装置90はバス95によって相互にデータ伝送を行う。
入力装置75はキーボード、マウス、トラックボールなど一般的に用いられる入力装置のいずれかでよい。記憶装置80は符号化された動画ファイルを記録したハードディスクや、DVD(Digital Versatile Disk)、CD(Compact Disk)などの記録媒体の読取装置などのいずれかでよい。
プロセッサユニット20は、情報処理装置100における処理を制御する管理部30、管理部30の管理下で処理を実行する処理部40を含む。管理部30はメモリ70、入力装置75、記憶装置80、表示装置90とプロセッサユニット20とのデータの入出力を制御するほか、処理部40における処理のスケジューリングを行い、複数のプロセスやスレッドを切り替えて処理するように制御する。
記憶装置80に保存された圧縮符号化された複数の動画ファイルは、ユーザによる入力装置75に対する動画サムネイル表示の指示により管理部30の制御のもと、メモリ70に格納される。処理部40はメモリ70に格納された複数の動画ファイルを並列して復号化し、最終的に出力すべき画像フレームデータを動画ファイルごとに生成する。そして管理部30が、生成された画像フレームデータを表示装置90の画面内で動画ファイルごとに設けた領域に順次出力するよう制御を行うことにより、表示装置90に動画サムネイルが複数表示される。
なお圧縮符号化はMPEG4、H.264/AVC、SVC(Scalable Video Coding)など一般的な圧縮符号化手法のいずれに基づいていてもよい。
本実施の形態では1つの動画ファイルに対する動画サムネイル表示のための復号化処理を、1つのスレッドによって行う。従って複数の動画ファイルの動画サムネイルを表示させるためには、処理部40において複数の動画ファイルを復号化する複数のスレッドを並列に処理する。さらに処理部40は、復号化したデータに基づき画像フレームデータを生成するスレッドや、動画サムネイル表示以外のプロセスまたはスレッドも並列に処理する。処理部40は複数のサブプロセッサで構成されていてもよい。この場合も管理部30は、時分割したスレッドを各サブプロセッサに割り当てることにより、複数のスレッドを並列処理するように制御を行う。
この情報処理装置100では、情報処理装置100を効率よく使用するための機能、環境を提供し、装置全体を統括的に制御するオペレーティングシステム(以下、OSと略す)が実行される。そのOS上で複数のアプリケーションソフトウェア(以下、単にアプリケーションという)が実行される。例えば管理部30におけるスレッドのスケジューリングには、一般的なマルチスレッド対応の装置において導入されているOSをそのまま利用することができる。
図2は処理部40およびメモリ70のうち、動画サムネイル表示を行うための構成を示している。図2や図1のプロセッサユニット20などにおいて、様々な処理を行う機能ブロックとして記載される各要素は、ハードウェア的には、CPU、メモリ、その他のLSIで構成することができ、ソフトウェア的には、画像処理機能のあるプログラムなどによって実現される。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。
例えば図2に示した処理部40のブロックのうち破線で囲まれた要素は、ある動画ファイルの復号化を行うためのスレッドである、復号化スレッド43を処理するための機能ブロックを示している。上述のとおり本実施の形態では動画ファイルごとに復号化処理を行うスレッドが生成されるため、実際には復号化スレッド43と同様の構成を有する復号化スレッドが複数存在し、OSが割り当てたタイムスライスごとにそれぞれのスレッドに含まれる機能が発揮されることになる。描画部50も動画ファイルごとに描画スレッド51が生成され、タイムスライスごとに異なる動画ファイルの画像フレームデータが生成される。
処理部40では上述のとおり、図2で示した動画サムネイル表示を行うためのスレッド以外のスレッドを処理する場合もある。この際は、処理部40ではあるタイムスライスにおいてまた別の機能が発揮されることになるが、本実施の形態ではその機能を限定しないため、機能ブロックは同図では省略する。
メモリ70は、圧縮符号化された動画ファイルを格納するファイル格納部47と、各フレームのテクスチャデータを保存するテクスチャバッファ48と、表示装置90に表示させる画像フレームデータを保存するフレームバッファ52を含む。テクスチャバッファ48およびフレームバッファ52は図示しないグラフィックメモリなどを別に設け、その中に領域を確保してもよい。テクスチャバッファ48とフレームバッファ52は動画ファイルごとに領域が割り当てられ、復号化スレッド43や描画スレッド51は、それぞれに対応した動画ファイルに割り当てられたテクスチャバッファ48およびフレームバッファ52の領域を使用する。以後の説明では、テクスチャバッファ48およびフレームバッファ52内の個別の領域も、テクスチャバッファ48、フレームバッファ52と呼ぶ。
処理部40は動画ファイルの復号化スレッド43として、メモリ70のファイル格納部47から圧縮符号化された動画ファイルを取得する初期処理部42、符号化された動画ファイルを復号化する復号化部44、復号化したデータをテクスチャデータとしてテクスチャバッファ48に保存するバッファ書込部46を含む。処理部40はさらに、テクスチャデータをテクスチャバッファ48から読み出し画像フレームデータを生成してフレームバッファ52に書き込む描画部50を、描画スレッド51として含む。
初期処理部42は後述するように、テクスチャバッファ48に格納されたテクスチャデータのフレーム数に基づき、以後の処理を続行するかどうかの決定も行う。バッファ書込部46は復号化部44において復号化したデータに対しRGB変換など必要な処理を施してテクスチャデータとしてもよい。描画部50は動画ファイルの種類によって、ポリゴンにテクスチャを貼り付けるなどの必要な処理を適宜行い画像フレームデータを生成する。画像フレームデータの生成に必要なデータのうち、テクスチャデータ以外のデータは、描画部50がメモリ70より適宜読み込んでよい。
次に上記の構成によって本実施の形態を実現するための動作について説明する。本実施の形態では複数の動画サムネイル表示処理を効率化するために、処理部40における復号化スレッド43の処理時間を、スレッド自身によって変化させる。本実施の形態の効果を明らかにするため、まず一般的なOSによって割り当てられたタイムスライスをそのまま適用した場合について説明する。
図3は処理部40におけるスレッド切り替えの例を模式的に示している。同図横方向が時間軸であり、第1復号化スレッド43a、第1描画スレッド51a、第2復号化スレッド43b、第2描画スレッド51b、動画サムネイル表示以外のスレッドである他スレッド55が、各タイムスライスごとに順番に処理されている。実際には第1復号化スレッド43aの後に他スレッド55が処理されるなど、優先度に基づくOSのスケジューリングによって順番は様々となる。
割り当てられた処理時間が終了したら、各スレッドはCPUの割り当てを開放し、次の処理時間が到来するまで実行待ちの行列に並んで待機状態となる。復号化スレッド43および描画スレッド51は第1および第2の2つに限らず、サムネイル表示を行いたい動画ファイルの数だけ発生する。全てのスレッドは図示した時間以降も、繰り返し処理が行われる。
第1復号化スレッド43aのバッファ書込部46は、テクスチャバッファ48内の割り当てられた領域である第1テクスチャバッファ48aに動画のテクスチャデータをフレームごとに格納する。第1復号化スレッド43aが待ち行列に並んでいる間に、第1描画スレッド51aの処理が開始されると、描画部50は第1テクスチャバッファ48a内のテクスチャデータをフレームごとに消費して、当該動画の画像フレームデータを生成し、フレームバッファ52内の割り当てられた領域、第1フレームバッファ52aへ格納する。これらの処理を繰り返すことにより、1つの動画ファイルの動画サムネイルが表示装置90に表示される。
同様に、第2復号化スレッド43bが第2テクスチャバッファ48bへテクスチャデータを格納し、第2描画スレッド51bがそれを消費して第2フレームバッファ52bに画像フレームデータを格納することによって、別の動画ファイルの動画サムネイルが表示装置90に表示される。
各描画スレッド51が一度の処理時間で消費しきれなかったテクスチャバッファ48内のテクスチャデータはそのままテクスチャバッファ48に残り、各復号化スレッド43のバッファ書込部46は、新たに生成したテクスチャデータをテクスチャバッファ48に追加して格納していく。
バッファ書込部46はテクスチャデータをテクスチャバッファ48に格納するとともに、テクスチャバッファ48内に格納されているテクスチャデータのフレーム数をカウントするカウンタ(不図示)を動作させる。あるタイムスライスにおいて処理部40が復号化スレッド43を処理中、バッファ書込部46がテクスチャバッファ48の容量が満たされた、または満たされつつあることを当該カウンタにより検知すると、復号化スレッド43はタイムスライス中でもCPUの割り当てを開放して実行待ちの行列に並ぶ。後に述べるように、本実施の形態ではカウンタは初期処理部42によっても参照される。
ところで復号化部44における動画ファイルの復号化の速度は、元の画像に依存して変化する。例えば基準フレームから得られる予測画像と実際の画像との差分画像を利用した予測符号化を行った動画ファイルにおいては、ほとんど動きのないシーンと、動きの早いシーンや色の変化の大きいシーンとで演算量が異なり、前者の方が復号化の速度が速い。復号化の速度は1つの動画ファイルにおいてもシーンによって変化する。さらに動画サムネイル表示のように一斉に複数の動画ファイルを再生した場合には、同一時刻において動画ファイル間で速度の大小が発生する。
図4はある時点で復号化の速度が異なる2つの動画ファイルの復号化スレッド、第1復号化スレッド43aおよび第2復号化スレッド43bがそれぞれ使用する、2つのテクスチャバッファ、第1テクスチャバッファ48aおよび第2テクスチャバッファ48bにおけるテクスチャデータの格納状況を模式的に示している。ここで第1復号化スレッド43aは復号化速度の速い動画ファイルの復号化スレッド、第2復号化スレッド43bは復号化速度の遅い動画ファイルの復号化スレッドとする。
各スレッドに割り当てられた第1テクスチャバッファ48aおよび第2テクスチャバッファ48bは、同図の例では8フレーム分のテクスチャデータを格納することができ、1フレーム分を1つの矩形で示している。さらに1フレーム分を表す矩形内に示された「○」は、テクスチャバッファ48に格納され、消費される前のテクスチャデータのフレーム数を表している。同図の例では第1テクスチャバッファ48aには7フレーム分、第2テクスチャバッファ48bには1フレーム分のテクスチャデータが格納されている。
一般的にOSは、各スレッドに均等に処理時間を割り当てる。そのため、1回の処理時間において復号化速度の速い第1復号化スレッド43aが処理できるフレーム数は、第2復号化スレッド43bより多くなる。さらに第1復号化スレッド43aは、割り当てられた第1テクスチャバッファ48aの容量を満たしてタイムスライスの満了を待たずにCPUの割り当てを開放する確率が高くなるため、複数のサブプロセッサで複数のスレッドを並列に処理する環境下では、待ち行列に並ぶ回数が第2復号化スレッド43bより多くなる。この場合もOSは、「動画ファイルの復号化」という共通のスレッドである第1復号化スレッド43aおよび第2復号化スレッド43bの双方に同一の優先度を与えるため、結果として第1復号化スレッド43aが処理される回数は第2復号化スレッド43bに比べて多くなる。
以上のことから、図3に示すように、第1復号化スレッド43aに割り当てられた第1テクスチャバッファ48aは、第2復号化スレッド43bに割り当てられた第2テクスチャバッファ48bより、格納されているテクスチャデータの量が恒常的に多くなる。さらにこのような状況下では、第2復号化スレッド43bに対応する動画ファイルのテクスチャデータの蓄積が少なく、対応する第2描画スレッド51bの処理が開始されても十分な数の画像フレームデータが生成できない可能性がある。結果として画像フレームデータが表示装置90における出力タイミングに間に合わず、動画サムネイルがコマ落ちする確率が高くなる。
動画サムネイルのコマ落ちを防止するために、復号化速度の遅い動画ファイルの復号化スレッドの優先度を上げるなど、スケジューリング時の優先度を動的に割り振るようにOS上で操作を行うと、動画サムネイル表示と関係しない他のプロセスの優先度が相対的に下がる場合が発生しうる。他の重要なプロセスの処理の優先度が不安定になる状況は望ましくないため、本実施の形態では一般的なOSが提供する優先度やスケジューリングをそのまま導入しながら、動画サムネイルのコマ落ち削減を実現する。
上述のとおり復号化速度の速い復号化スレッドと復号化速度の遅い復号化スレッドとでは、テクスチャバッファ48におけるテクスチャデータの蓄積量に差が生じる。本実施の形態ではこの差を利用し、「復号化スレッド」のグループ間で復号化速度の遅い復号化スレッドを優先して処理するようにする。さらに復号化速度はシーンによりリアルタイムで変化するため、優先状況はそれに応じて変化させる。
具体的にはテクスチャバッファ48におけるテクスチャデータの格納量に第1のしきい値F1および第2のしきい値F2(F1<F2)を設ける。ここで第2のしきい値F2はテクスチャバッファ48中の割り当てられた容量、またはそれに近い容量である。そしてテクスチャデータの格納量が一旦第2のしきい値F2を超えたら、テクスチャデータの格納量が第1のしきい値F1以下になるまで復号化を行わずにCPUの割り当てを開放して次のスレッドに処理を譲るイールド(Yield)処理を行う(以下、イールドと呼ぶ)。そして描画部50によってテクスチャデータが消費され、格納されているテクスチャデータが第1のしきい値F1以下になったら復号化処理を再開し、格納量が再び第2のしきい値F2を超えるまで処理を続ける。
図5は本実施の形態の復号化スレッド43の割り当て処理時間における処理手順を示している。まずOSが当該復号化スレッド43に対して割り当てた時間が開始すると(S10)、初期処理部42は図示しないレジスタ等に記憶したフラグ値を確認する(S12)。フラグ値は、ユーザが動画サムネイル表示機能を起動させた直後など、当該復号化スレッド43の初期状態では「0」である。フラグが0であったら(S12のY)、初期処理部42はメモリ70から復号化対象となる動画ファイルを取得する(S20)。そして復号化部44およびバッファ書込部46が復号化およびテクスチャバッファ48への書き込み処理を通常通り行う(S22)。
テクスチャデータを書き込んだ際、バッファ書き込み部46はカウンタによって、テクスチャバッファ48に格納されているテクスチャデータのフレーム数が第2のしきい値F2に到達したかを確認する(S24)。格納量が第2のしきい値F2より小さければ(S24のY)、当該スレッドの割り当て時間が満了するまで、復号化処理を続行する(S28のN、S20)。テクスチャデータの格納量が第2のしきい値F2となったら(S24のN)、フラグ値を「1」に設定し、OSの制御のもとレジスタの値をメモリ70に退避させるなどの処理を行いスレッド処理を終了させる(S30)。S30のステップは、テクスチャデータの格納量が第2のしきい値F2へ到達する前に割り当て時間が満了した場合(S28のY)も同様に行う。
復号化スレッド43の処理開始時にフラグ値が「1」であった場合(S12のN)、初期処理部42はバッファ書き込み部46が管理するカウンタにより、テクスチャバッファ48に格納されているテクスチャデータのフレーム数を検出する。そして格納されているフレーム数が第1のしきい値F1より大きいかを確認する(S14)。
第1のしきい値F1としては、例えば図4で示したテクスチャバッファ48において、8フレーム分の記憶容量に対して2フレーム分など、復号する動画ファイルの符号化方法や、必要なフレームレートなどに応じて適宜計算あるいは実験によって求める。第1のしきい値F1を2フレーム分とすると、図4の例では、第1テクスチャバッファ48aは規定値より多いフレーム数のテクスチャデータが、第2テクスチャバッファ48bは規定値以下のフレーム数のテクスチャデータが格納されている。
テクスチャデータの格納量が第1のしきい値F1より大きかったら(S14のY)、画像フレームデータの生成に十分なテクスチャデータの蓄積があるものとしてイールドする。この際は、通常のOSによるスレッド切り替え時と同様に、レジスタの値をメモリ70に退避させるなどの処理を行う(S18)。この処理は実際にはOSに用意された機能を呼び出すことによりOSが行ってもよい。
テクスチャデータの格納量が第1のしきい値F1以下であったら(S14のN)、初期処理部42はフラグ値を「0」とする(S16)。そして上述のS20からS30のステップを行うことにより、テクスチャデータを貯めていく。
以上の手順により、復号化速度の速い動画ファイルやあるシーンでは、復号化スレッド43の処理順が回ってきても、スレッドが自らイールドすることによって処理時間の消費が抑えられる。その分、他のスレッド、ひいては復号化速度の遅い他の復号化スレッドの単位時間あたりの処理回数が増加し、結果的には他の復号化スレッドの優先度を上げていることになる。このときOSが決定した優先度はそのままであるため、動画ファイルの復号化スレッド以外のスレッドとの相対的な優先度には影響せず、他のプロセスの動作が遅くなるなどの不安定要素は発生しない。
そして1回の処理時間内で生成できるテクスチャデータのフレーム数が小さい、復号化に時間のかかる動画ファイルやシーンを復号化するスレッドは、単位時間あたりの処理回数が増加することによってテクスチャバッファ48におけるテクスチャデータの格納量を増加できる。復号化速度の速い復号化スレッドは、イールドすることによってテクスチャデータが消費されるのみになり、テクスチャバッファ48における格納量が一旦減少するが、第1のしきい値F1で設定した不足しない範囲の下限に達すると再び格納を開始する。
そして格納量が第2のしきい値F2に到達するまでは、復号化速度の速い復号化スレッドも復号化処理を続けて行う。このため一旦イールドに転じた復号化スレッドは、テクスチャデータの貯蓄が十分であることから、割り当て時間が到来しても連続してイールドを行うことになり、まとまった時間を他のスレッドに譲ることができる。そして復号化速度の遅い復号化スレッドは譲られた時間を利用して効率よく復号化処理を行うことができる。
結果として、描画部50が画像フレームデータの生成を行うのに十分な量のテクスチャデータがいずれの復号化スレッド43に割り当てられたテクスチャバッファ48にも格納されることになり、動画サムネイルのコマ落ちを削減することができる。
実際に25個の動画サムネイルを表示した場合に本実施の形態を適用した。本実施の形態を適用せず、OSによる処理時間制御のみを行った場合、25個の動画において1秒間に合計20〜30フレームのコマ落ちが確認されたのに対し、本実施の形態を適用することによって、1秒間に合計数フレームレベルのコマ落ちに抑えることができた。このようなレベルであれば、ユーザがコマ落ちを視認する可能性は極めて少ない。
以上述べた本実施の形態によれば、動画サムネイルを複数表示させる際、復号化速度の速い動画の復号化スレッドと、復号化速度の遅い動画の復号化スレッドとを、テクスチャバッファにおけるテクスチャデータの格納量をリアルタイムで検出して判断する。そして復号化速度の速い復号化スレッドは、OSによる処理開始時間が開始しても復号化処理を行わずにイールドする。イールドはテクスチャデータが不足しない範囲で行われる。これにより、処理時間を有効に活用して、復号化速度の遅い動画の復号化スレッドの単位時間あたりの処理回数を増加させることができ、テクスチャデータの蓄積不足によるコマ落ちを削減することができる。
本実施の形態はソフトウェアの改良により、実質上、動画サムネイル表示の処理速度を増加させることができ、CPUやバスなどハードウェアの改良による処理速度向上と比較して安価なコストで導入することができる。またOSも一般的な動作を行うのみでよいため、携帯端末から大規模なシステムまで様々な装置に汎用的に適用することができる。
以上、本発明を実施の形態をもとに説明した。上記実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
例えば本実施の形態では復号化スレッドがイールドを行うバッファ格納量のしきい値をあらかじめ設定したが、動画サムネイル表示をさせながら、動画ファイルの符号化方法や表示装置などに対して適応的にしきい値を自動的に決定するようにしてもよい。
また本実施の形態では複数の動画サムネイル表示を行うために生成した、複数の復号化スレッド間で処理時間の譲渡を行ったが、割り当てられたバッファにそれぞれが出力を行う複数のスレッドと、バッファに格納されたデータをそれぞれ消費するスレッドと、を生成させるプロセスであれば同様の処理を適用することができる。例えば、カメラやマイク、温度センサなど外部デバイスから入力した複数のリアルタイムデータをそれぞれ画像化、音声処理などして出力するなどのマルチ入出力装置、複数台のネットワークコンピュータから取得した複数のデータから複数の出力を行う処理などに適用できる。
このような処理を行う装置において、さらに別のプロセスが実行されている場合など、OSが決定した各スレッドの優先度を変化させることが困難な状況においては、本実施の形態は特に効果的である。
また本実施の形態はOSが同一の処理時間を各スレッドに割り当てるプリエンプティブ方式のマルチスレッドにおける処理手順を示しているが、各スレッドが所定の処理タイミングでCPUの割り当てを開放することによってスレッド処理の切り替えを行うノンプリエンプティブ方式のマルチスレッドにおいても適用できる。この場合も復号化速度の遅速によって実行待ちの行列に並ぶ回数に差が生じるため、復号化速度の速い復号化スレッドがイールドすることによって、復号化速度の遅い復号化スレッドの処理回数を増加させることができ、本実施の形態と同様の効果を得ることができる。このときは、図5におけるS28の割り当て時間満了確認処理に代わり、切り替えタイミングの処理が行われたかの確認処理を行えばよい。あるいはS24Nの、テクスチャデータの格納量がF2となったタイミング自体を切り替えタイミングとしてもよい。
本実施の形態における情報処理装置の構成を示す図である。 本実施の形態において動画サムネイルを表示する際の処理部の構成を示す図である。 本実施の形態の処理部におけるスレッド切り替えの様子を模式的に示す図である。 本実施の形態において2つのテクスチャバッファにおけるテクスチャデータの格納状況を説明する図である。 本実施の形態における復号化スレッドの割り当て処理時間における処理手順を示すフローチャートである。
符号の説明
20 プロセッサユニット、 30 管理部、 40 処理部、 42 初期処理部、 43 復号化スレッド、 44 復号化部、 46 バッファ書込部、 47 ファイル格納部、 48 テクスチャバッファ、 50 描画部、 51 描画スレッド、 52 フレームバッファ、 70 メモリ、 75 入力装置、 80 記憶装置、 90 表示装置、 100 情報処理装置。

Claims (18)

  1. 複数の入力データストリームのそれぞれに所定の処理を施して生成した複数の出力データを並列に出力する情報処理方法であって、
    入力データストリームに第1の処理を施し中間データを生成し、当該入力データストリームに対応づけられたバッファに格納するスレッドと、
    前記中間データを前記対応づけられたバッファから読み出し第2の処理を施して出力データを生成するスレッドと、前記複数の入力データストリームのそれぞれに対して生成するステップと、
    各入力データストリームに対応する、前記格納するスレッドと前記出力データを生成するスレッドを含む複数のスレッドの処理待ち行列から順次スレッドを取得して処理するステップと、
    を含み、
    前記処理するステップは、
    一の入力データストリームに対応する前記格納するスレッドの処理開始時に、当該入力データストリームに対応づけられたバッファに格納され、読み出されていない前記中間データの量を検出するステップと、
    前記中間データの量が当該バッファの容量より小さい規定値より大きいとき、当該格納するスレッドの処理を休止し、前記処理待ち行列に格納したうえ、別の入力データストリームに対応する前記格納するスレッドを含む前記処理待ち行列から、次に処理すべきスレッドを取得して処理を開始するステップと、
    を含むことを特徴とする情報処理方法。
  2. 前記処理するステップは、一の入力データストリームに対応づけられたバッファに格納され、読み出されていない前記中間データの量が前記規定値より大きいとき、当該格納するスレッドのイールド処理を行い、別の入力データストリームに対応づけられたバッファに前記中間データを格納するスレッドの処理回数を増加させることを特徴とする請求項1に記載の情報処理方法。
  3. 前記検出するステップは、前記処理するステップにおける、前記格納するスレッド内の処理において実施し、前記格納するスレッドは、前記中間データの量が前記規定値より大きいとき、自らの処理を休止して他のスレッドへ処理を譲るイールド処理を行うことを特徴とする請求項1または2に記載の情報処理方法。
  4. 各入力データストリームに対応する格納するスレッドはその他のスレッドとともに、オペレーティングシステムが決定したスケジュールおよび優先度に基づく順序で、前記処理待ち行列に格納されたうえ前記処理するステップにおいて順次処理が開始されることを特徴とする請求項1から3のいずれかに記載の情報処理方法。
  5. 前記入力データストリームごとに生成した前記格納するスレッドは、処理の再開に対して同一の優先度を有することを特徴とする請求項1から4のいずれかに記載の情報処理方法。
  6. 前記処理するステップは、前記中間データの量が前記規定値以下となったとき、およびそれ以後、前記バッファに格納され、読み出されていない前記中間データが所定の量に達するまでは前記中間データの量が前記規定値より大きくても、当該格納するスレッドの処理を続行することを特徴とする請求項1から5のいずれかに記載の情報処理方法。
  7. 圧縮符号化された複数の動画ファイルをそれぞれ復号化して描画した複数の動画像を並列に表示する動画サムネイル表示方法であって、
    動画ファイルを復号化して生成たテクスチャデータを、当該動画ファイルに対応づけられたテクスチャバッファに格納する処理を行う復号化スレッドと、前記テクスチャデータを前記対応づけられたテクスチャバッファから読み出し、画像フレームデータを生成して対応するフレームバッファに格納する処理を行う描画スレッドとを前記複数の動画ファイルのそれぞれに対し生成するステップと、
    各動画ファイルに対応する、前記復号化スレッドと前記描画スレッドを含む複数のスレッドの処理待ち行列から順次スレッドを取得して処理するステップと、
    複数の前記動画ファイルの前記画像フレームデータを、対応する前記フレームバッファからそれぞれ読み出し、並列に表示装置に出力するステップと、
    を含み、
    前記処理するステップは、
    一の動画ファイルに対応する前記復号化スレッドの処理開始時に、当該動画ファイルに対応づけられたテクスチャバッファに格納され、読み出されていない前記テクスチャデータの量を検出するステップと、
    前記テクスチャデータの量が当該テクスチャバッファの容量より小さい規定値より大きいとき、前記復号化スレッドの復号化に係る処理を休止し、当該スレッドを前記処理待ち行列に格納したうえ、別の動画ファイルに対応する前記復号化スレッドを含む前記処理待ち行列から、次に処理すべきスレッドを取得して処理を開始するステップと、
    を含むことを特徴とする動画サムネイル表示方法。
  8. 複数のデータストリームのそれぞれに所定の処理を施して生成した複数の出力データを並列に出力する復号化装置であって、
    前記複数のデータストリームを入力する入力部と、
    前記入力部に入力したデータストリームに第1の処理を施し中間データを生成し、当該データストリームに対応して設けられたバッファに一時保存するスレッドと、前記対応して設けられたバッファに保存された前記中間データを読み出し、第2の処理を施して出力データを生成するスレッドと、を前記複数のデータストリームのそれぞれに対し生成し、各データストリームに対応する、前記一時保存するスレッドと前記出力データを生成するスレッドを含む複数のスレッドの処理待ち行列から順次スレッドを取得して処理するプロセッサユニットと、
    前記プロセッサユニットがデータストリームごとに生成した出力データを並列に出力する出力部と、
    を備え、
    前記プロセッサユニットは、一のデータストリームに対応する前記一時保存するスレッドの処理開始時に、当該データストリームに対応して設けられたバッファに格納され、読み出されていない前記中間データの量を検出し、前記中間データの量が当該バッファの容量より小さい規定値より大きいときは、当該一時保存するスレッドの処理を休止し、前記処理待ち行列に格納したうえ、別のデータストリームに対応する前記一時保存するスレッドを含む前記処理待ち行列から、次に処理すべきスレッドを取得して処理を開始することを特徴とする復号化装置。
  9. 前記プロセッサユニットは、一のデータストリームに対応して設けられたバッファに格納され、読み出されていない前記中間データの量が前記規定値より大きいとき、当該一時保存するスレッドのイールド処理を行い、別のデータストリームに対応して設けられたバッファに前記中間データを一時保存するスレッドの処理回数を増加させることを特徴とする請求項8に記載の復号化装置。
  10. 前記プロセッサユニットは、前記中間データの量を検出する処理を、前記一時保存するスレッド内の処理において実施し、当該一時保存するスレッドは、前記読み出されていない中間データの量が前記規定値より大きいとき、自らの処理を休止して前記プロセッサユニットを開放することを特徴とする請求項に記載の復号化装置。
  11. 各データストリームに対応する前記一時保存するスレッドはその他のスレッドとともに、オペレーティングシステムが決定したスケジュールおよび優先度に基づく順序で、前記処理待ち行列に格納されたうえ前記プロセッサユニットにおいて順次処理が開始されることを特徴とする請求項8から10のいずれかに記載の復号化装置。
  12. 圧縮符号化された複数の動画ファイルをそれぞれ復号化して描画した複数の動画像を並列に表示する情報処理装置であって、
    前記動画ファイルのそれぞれに対応した複数のバッファと、
    前記動画ファイルを復号化し、生成したテクスチャデータを対応する前記バッファに格納する復号化スレッドと、前記テクスチャデータを前記対応するバッファから読み出し、前記動画ファイルに対応した画像フレームデータを生成する描画スレッドと、を前記複数の動画ファイルのそれぞれに対し生成し、各動画ファイルに対応する、前記復号化スレッドと前記描画スレッドを含む複数のスレッドの処理待ち行列から順次スレッドを取得して処理するプロセッサユニットと、
    前記プロセッサユニットにより生成された、複数の前記動画ファイルの前記画像フレームデータを並列に表示する画像表示部と、
    を備え、
    前記プロセッサユニットは、一の動画ファイルに対応する前記復号化スレッドの処理開始時に、当該動画ファイルに対応づけられたバッファに格納され、読み出されていない前記テクスチャデータの量が当該バッファの容量より小さい規定値より大きいとき、前記復号化スレッドの復号化に係る処理を休止し、当該スレッドを前記処理待ち行列に格納したうえ、別の動画ファイルに対応する前記復号化スレッドを含む前記処理待ち行列から、次に処理すべきスレッドを取得して処理を開始することを特徴とする情報処理装置。
  13. 前記プロセッサユニットは、前記テクスチャデータの量を検出する処理を、前記復号化スレッド内の処理において実施し、当該復号化スレッドは、前記読み出されていないテクスチャデータの量が前記規定値より大きいとき、自らの処理を休止して前記プロセッサユニットを開放することを特徴とする請求項12に記載の情報処理装置。
  14. 前記プロセッサユニットが処理するスレッドは、前記復号化スレッドおよび前記描画スレッド以外のスレッドを含むことを特徴とする請求項12または13に記載の情報処理装置。
  15. 前記複数の動画ファイルごとに生成された前記復号化スレッドは、前記プロセッサユニットによる処理に対し、同一の優先度を有することを特徴とする請求項12から14のいずれかに記載の情報処理装置。
  16. 前記プロセッサユニットは、前記テクスチャデータの量が前記規定値以下となったとき、およびそれ以後、前記バッファに格納され、読み出されていない前記テクスチャデータが所定の量に達するまでは前記テクスチャデータの量が前記規定値より大きくても、前記復号化スレッドの復号化に係る処理を続行することを特徴とする請求項12から15のいずれかに記載の情報処理装置。
  17. 複数のスレッドを切り替えて処理するコンピュータにおいて実行され、複数の入力データストリームからそれぞれ生成した複数の出力データを並列に出力する機能をコンピュータに実現させるコンピュータプログラムであって、
    前記複数の入力データストリームを取得する機能と、
    入力データストリームに第1の処理を施し中間データを生成し、当該入力データストリームに対応づけられたバッファに格納するスレッドと、前記中間データを前記対応づけられたバッファから読み出し第2の処理を施して出力データを生成するスレッドと、を前記複数の入力データストリームのそれぞれに対し生成する機能と、
    各入力データストリームに対応する、前記格納するスレッドと前記出力データを生成するスレッドを含む複数のスレッドの処理待ち行列から順次スレッドを取得して処理する機能と、
    一の入力データストリームに対応する前記格納するスレッドの処理開始時に、当該入力データストリームに対応づけられたバッファに格納され、読み出されていない前記中間データの量を検出し、前記中間データの量が当該バッファの容量より小さい規定値より大きいときは、当該格納するスレッドの処理を休止してプロセッサを開放し、別の入力データストリームに対応する前記格納するスレッドを含む他のスレッドへ処理を譲るイールド処理を行う機能と、
    を前記コンピュータに実現させることを特徴とするコンピュータプログラム。
  18. 圧縮符号化された複数の動画ファイルをそれぞれ復号化して描画した複数の動画像を並列に表示する情報処理装置であって、
    動画ファイルを復号化して生成たテクスチャデータを、当該動画ファイルに対応づけられたテクスチャバッファに格納する処理を行う復号化スレッドと、前記テクスチャデータを前記対応づけられたテクスチャバッファから読み出し、画像フレームデータを生成して対応するフレームバッファに格納する処理を行う描画スレッドと、を前記複数の動画ファイルのそれぞれに対し生成する機能と、
    各動画ファイルに対応する、前記復号化スレッドと前記描画スレッドを含む複数のスレッドの処理待ち行列から順次スレッドを取得して処理する機能と、
    複数の前記動画ファイルの前記画像フレームデータを、対応する前記フレームバッファからそれぞれ読み出し、並列に表示装置に出力する機能と、
    をコンピュータに実現させ、
    前記処理する機能において、
    一の動画ファイルに対応する前記復号化スレッドの処理開始時に、当該動画ファイルに対応づけられたテクスチャバッファに格納され、読み出されていない前記テクスチャデータの量を検出する機能と、
    前記テクスチャデータの量が当該テクスチャバッファの容量より小さい規定値より大きいとき、前記復号化スレッドの復号化に係る処理を休止し、当該スレッドを前記処理待ち行列に格納したうえ、別の動画ファイルに対応する前記復号化スレッドを含む前記処理待ち行列から、次に処理すべきスレッドを取得して処理を開始する機能と、
    をさらにコンピュータに実現させることを特徴とするコンピュータプログラム。
JP2006037890A 2006-02-15 2006-02-15 情報処理方法、動画サムネイル表示方法、復号化装置、および情報処理装置 Expired - Fee Related JP4519082B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2006037890A JP4519082B2 (ja) 2006-02-15 2006-02-15 情報処理方法、動画サムネイル表示方法、復号化装置、および情報処理装置
US11/706,153 US7885472B2 (en) 2006-02-15 2007-02-14 Information processing apparatus enabling an efficient parallel processing
US12/939,494 US8036474B2 (en) 2006-02-15 2010-11-04 Information processing apparatus enabling an efficient parallel processing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006037890A JP4519082B2 (ja) 2006-02-15 2006-02-15 情報処理方法、動画サムネイル表示方法、復号化装置、および情報処理装置

Publications (2)

Publication Number Publication Date
JP2007221323A JP2007221323A (ja) 2007-08-30
JP4519082B2 true JP4519082B2 (ja) 2010-08-04

Family

ID=38368543

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006037890A Expired - Fee Related JP4519082B2 (ja) 2006-02-15 2006-02-15 情報処理方法、動画サムネイル表示方法、復号化装置、および情報処理装置

Country Status (2)

Country Link
US (2) US7885472B2 (ja)
JP (1) JP4519082B2 (ja)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8213728B2 (en) * 2008-06-16 2012-07-03 Taiwan Imagingtek Corporation Method and apparatus of image compression with output control
EP2297965A1 (en) * 2008-06-26 2011-03-23 Thomson Licensing Moving image processing method, program and apparatus
US9032254B2 (en) * 2008-10-29 2015-05-12 Aternity Information Systems Ltd. Real time monitoring of computer for determining speed and energy consumption of various processes
JP4878054B2 (ja) * 2009-03-03 2012-02-15 日本電信電話株式会社 映像解析装置,映像解析方法および映像解析プログラム
CN101819807B (zh) * 2010-05-13 2014-06-11 中兴通讯股份有限公司 在多媒体文件控制过程中实现快速响应的方法及播放装置
US10324605B2 (en) 2011-02-16 2019-06-18 Apple Inc. Media-editing application with novel editing tools
US8483286B2 (en) * 2010-10-27 2013-07-09 Cyberlink Corp. Batch processing of media content
US9251855B2 (en) * 2011-01-28 2016-02-02 Apple Inc. Efficient media processing
US9997196B2 (en) 2011-02-16 2018-06-12 Apple Inc. Retiming media presentations
US11747972B2 (en) 2011-02-16 2023-09-05 Apple Inc. Media-editing application with novel editing tools
US9672688B2 (en) 2011-10-14 2017-06-06 Bally Gaming, Inc. System and method for cross platform persistent gaming sessions using a mobile device
US20130093779A1 (en) * 2011-10-14 2013-04-18 Bally Gaming, Inc. Graphics processing unit memory usage reduction
US9659437B2 (en) 2012-09-28 2017-05-23 Bally Gaming, Inc. System and method for cross platform persistent gaming sessions using a mobile device
US9767642B2 (en) 2011-10-14 2017-09-19 Bally Gaming, Inc. System and method for cross platform persistent gaming sessions using a mobile device
EP2746941A1 (en) * 2012-12-20 2014-06-25 Thomson Licensing Device and method for optimization of data processing in a MapReduce framework
CN110381322B (zh) * 2019-07-15 2023-03-14 腾讯科技(深圳)有限公司 视频流解码方法、装置、终端设备及存储介质
US11789771B2 (en) * 2019-09-28 2023-10-17 Tencent America LLC Method and apparatus for a step-enabled workflow
US20210096904A1 (en) * 2019-09-28 2021-04-01 Tencent America LLC Method and apparatus for a step-enabled workflow

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08107542A (ja) * 1994-09-08 1996-04-23 Internatl Business Mach Corp <Ibm> メディア・ストリーマ
JPH09282184A (ja) * 1996-02-14 1997-10-31 Matsushita Electric Ind Co Ltd 同優先度タスクの急増に伴う実行確率の変動を吸収することができるタスク管理装置
JP2000353099A (ja) * 1999-06-01 2000-12-19 Tektronix Inc アクティブ・パイプラインにおける流れ制御方法
JP2002032233A (ja) * 2000-07-18 2002-01-31 Hitachi Ltd マルチスレッドシステムにおけるデータi/o処理方法
WO2004002145A1 (ja) * 2002-06-20 2003-12-31 Sony Corporation 復号装置及び復号方法
WO2005078580A1 (en) * 2004-02-06 2005-08-25 Intel Corporation Method for reducing energy consumption of buffered applications using simultaneous multi-threaded processor
JP2006012150A (ja) * 2004-06-10 2006-01-12 Thomson Licensing 処理ユニットにおいてデータを処理するための方法及び装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5253308A (en) * 1989-06-21 1993-10-12 Amber Engineering, Inc. Massively parallel digital image data processor using pixel-mapped input/output and relative indexed addressing
US5623423A (en) * 1994-12-12 1997-04-22 Univ. Of Texas Apparatus and method for video decoding
US5867608A (en) * 1995-11-07 1999-02-02 Sun Microsystems, Inc. Method and apparatus for scaling images
EP1037134A2 (en) * 1999-03-16 2000-09-20 Matsushita Electric Industrial Co., Ltd. Virtual space control data receiving apparatus and method
US6535905B1 (en) * 1999-04-29 2003-03-18 Intel Corporation Method and apparatus for thread switching within a multithreaded processor
US6675285B1 (en) * 2000-04-21 2004-01-06 Ati International, Srl Geometric engine including a computational module without memory contention
JP3702814B2 (ja) * 2001-07-12 2005-10-05 日本電気株式会社 マルチスレッド実行方法及び並列プロセッサシステム
JP3680845B2 (ja) * 2003-05-28 2005-08-10 セイコーエプソン株式会社 圧縮動画像の伸張装置及びそれを用いた画像表示装置
DE102004009610B4 (de) * 2004-02-27 2007-08-16 Infineon Technologies Ag Heterogener paralleler Multithread-Prozessor (HPMT) mit geteilten Kontexten
US7457484B2 (en) * 2004-06-23 2008-11-25 Creative Technology Ltd Method and device to process digital media streams
JP4287799B2 (ja) * 2004-07-29 2009-07-01 富士通株式会社 プロセッサシステムおよびスレッド切り替え制御方法
JP4556554B2 (ja) * 2004-08-25 2010-10-06 セイコーエプソン株式会社 画像処理を並列処理で実行する際の負荷の割り付け
US7434002B1 (en) * 2006-04-24 2008-10-07 Vmware, Inc. Utilizing cache information to manage memory access and cache utilization
US9648325B2 (en) * 2007-06-30 2017-05-09 Microsoft Technology Licensing, Llc Video decoding implementations for a graphics processing unit

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08107542A (ja) * 1994-09-08 1996-04-23 Internatl Business Mach Corp <Ibm> メディア・ストリーマ
JPH09282184A (ja) * 1996-02-14 1997-10-31 Matsushita Electric Ind Co Ltd 同優先度タスクの急増に伴う実行確率の変動を吸収することができるタスク管理装置
JP2000353099A (ja) * 1999-06-01 2000-12-19 Tektronix Inc アクティブ・パイプラインにおける流れ制御方法
JP2002032233A (ja) * 2000-07-18 2002-01-31 Hitachi Ltd マルチスレッドシステムにおけるデータi/o処理方法
WO2004002145A1 (ja) * 2002-06-20 2003-12-31 Sony Corporation 復号装置及び復号方法
WO2005078580A1 (en) * 2004-02-06 2005-08-25 Intel Corporation Method for reducing energy consumption of buffered applications using simultaneous multi-threaded processor
JP2006012150A (ja) * 2004-06-10 2006-01-12 Thomson Licensing 処理ユニットにおいてデータを処理するための方法及び装置

Also Published As

Publication number Publication date
US7885472B2 (en) 2011-02-08
US20110043695A1 (en) 2011-02-24
US20070189617A1 (en) 2007-08-16
US8036474B2 (en) 2011-10-11
JP2007221323A (ja) 2007-08-30

Similar Documents

Publication Publication Date Title
JP4519082B2 (ja) 情報処理方法、動画サムネイル表示方法、復号化装置、および情報処理装置
JP7191240B2 (ja) ビデオストリーム復号方法、装置、端末機器およびプログラム
JP6335845B2 (ja) 動的ビデオスイッチング
JP4476261B2 (ja) 復号装置および復号方法
JP5300438B2 (ja) 画像処理装置、画像処理方法及びプログラム
RU2466451C2 (ru) Управление цифровыми данными с помощью пула совместно используемой памяти
US20140119457A1 (en) Parallel transcoding
US20170220283A1 (en) Reducing memory usage by a decoder during a format change
JP2009044537A (ja) 映像ストリーム処理装置及びその制御方法、プログラム、記録媒体
JP5698156B2 (ja) 復号装置、復号方法、および編集装置
JP2009111932A (ja) 動画像復号化装置
JP4789777B2 (ja) タスクの分配方法および情報処理装置
CN116204308A (zh) 音视频算力动态调节方法和装置、电子设备
JP2007219577A (ja) データ処理装置、データ処理方法、データ処理方法のプログラム及びデータ処理方法のプログラムを記録した記録媒体
JP2008299610A (ja) マルチプロセッサ
US20060093322A1 (en) Data processing apparatus, data processing method, data processing system, program, and storage medium
JP5506250B2 (ja) ストリーム復号装置及びストリーム復号方法
US7729591B2 (en) Data processing apparatus, reproduction apparatus, data processing system, reproduction method, program, and storage medium
CN101090470B (zh) 信息处理设备和信息处理方法
JP5236386B2 (ja) 画像復号装置及び画像復号方法
KR101484101B1 (ko) 동영상 변환 장치
JP4591549B2 (ja) 再生処理装置、および再生処理方法、並びにプログラム
JP2007165962A (ja) ストリームデータ処理装置
US9336557B2 (en) Apparatus and methods for processing of media signals
JP2011160077A (ja) 復号装置および方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081014

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081021

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081218

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091104

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091228

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100518

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100518

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130528

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4519082

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140528

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees