(58)【調査した分野】(Int.Cl.,DB名)
動画をデコーディングする第1デコーダー及び該第1デコーダーを制御する制御部を有する装置に多重動画再生方法を実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
複数のコアで構成された中央処理装置(CPU)を含む前記制御部に、
前記第1デコーダーが使用中であるか否かを判断する段階と、
前記第1デコーダーが使用中の場合、前記制御部が第2デコーダーとして直接前記動画をデコーディングし縮小して動画クリップを生成する段階と、
前記動画クリップを記憶部に保存する段階と、
プレビュー要請イベントの検出に応答して前記記憶部に保存された動画クリップを同時再生する段階と、を実行させ、
前記動画クリップを生成する段階は、前記複数のコアのうちの第1のコアが前記第1デコーダーを制御して第1の複数の動画クリップを生成し、前記複数のコアのうちの少なくとも第2のコアが前記第2デコーダーとして第2の複数の動画クリップを生成する段階を含むことを特徴とするコンピュータ読み取り可能な記録媒体。
【発明を実施するための形態】
【0013】
以下、本発明を実施するための形態の具体例を、図面を参照しながら詳細に説明する。下記の説明と図面は、本発明の好ましい実施形態に過ぎず、多様に変更し得る。また、図面において、一部の構成要素は、誇張、省略、または概略的に示され、各構成要素の大きさは、実際の大きさを反映するものではない。
【0014】
本発明による多重動画再生方法及び装置は、スマートホン、タブレットパソコン、ノートパソコン、デスクトップパソコン、テレビ、ナビゲーション装置、及びビデオフォンなどのようなマルチメディア機器に適用される。また、マルチメディア機器が融合された機器(例えば、通信機能及びタッチスクリーンを有する冷蔵庫)にも適用される。
【0015】
以下、本発明の一実施形態による多重動画再生方法及び装置について詳しく説明する。以下の説明において、関連する公知の機能または構成に対する具体的な説明が本発明の要旨を不明瞭にすると判断される場合は、その詳細な説明を省略する。
【0016】
図1は、本発明の一実施形態による動画クリップを説明するための図である。
【0017】
本実施形態において、「動画クリップ」は、動画の一部または全体がハードウェア・ベースのデコーダーまたはソフトウェア・ベースのデコーダーによってデコーディングされたものである。また「動画クリップ」は、大きさがオリジナルサイズとは異なるサイズ、例えば小さくリサイジング(resizing)されたものである。すなわち動画クリップは、オリジナル動画の縮小版(thumbnail)である。例えば、動画クリップの大きさは、304×208ピクセルまたは336×208ピクセルである。もちろん縮小されない場合、動画クリップの大きさは、オリジナル動画と同一である。動画クリップは、オリジナル動画とは別に、記憶部に保存される。オリジナル動画が削除される場合、対応する動画クリップも削除される。また、オリジナル動画の再生が完了すると、対応する動画クリップも削除される(すなわち一時保存)。また、動画クリップは、あらかじめ決定された時間、再生頻度、及びメモリ空間の容量制限(space capacity limit)などに基づいて、削除される。例えば、保存時間が二日を経過した場合、当該動画クリップは、自動的に削除される。あるいは、保存後二日以内に一回も再生されない場合、当該動画クリップは、自動的に削除される。メモリ空間(memory space)が500MB以下に減少した場合、保存時間が一日以上経過した動画クリップは、自動的に削除される。
【0018】
図1を参照すると、第1動画(Video1)及び第2動画(Video2)は記憶部(例えば、
図2の記憶部220)に保存される。動画(Video1及びVideo2)は、それぞれ、複数のチャプター(chapter)(例えば、C1〜C5)を含む。ここで、チャプターは、時間によって分割される。例えば、1つのチャプターの再生時間は、10分である。動画クリップ110は、各動画に対して生成され、特に、各動画の各チャプター別に生成される。ここで、1つのチャプターの一部分だけ(例えば、チャプターの再生時間10分のうちの最初の10秒)が動画クリップに変換される。さらに、1つのチャプター全体または動画全体が動画クリップに変換される。動画クリップは、例えば、動画再生装置が待機中に、または動画再生装置が充電中で表示部がオフ(OFF)状態の時に、生成される。動画クリップは、動画再生アプリケーションでサムネイルビュー(thumbnail view)またはチャプタービュー(Chapter view)モードが実行される時に、生成される。動画クリップは、動画再生アプリケーションにおいて全画面モードで動画が再生されるときに生成される。
【0019】
図2は、本発明の一実施形態による多重動画再生装置のブロック構成図である。
【0020】
図2を参照すると、多重動画再生装置200は、例えば、携帯(portable)端末またはモバイル(mobile)装置で具現される。多重動画再生装置200は、表示部210、記憶部220、記憶部インターフェース225、オーディオ処理部230、スピーカーSPK、マイクMIC、カメラ240、無線通信部245、周辺機器(peripheral device)インターフェース250、コーデック260、バス270、及び制御部280を備える。
【0021】
表示部210は、コーデック260または制御部280から入力された画像データをアナログ信号に変換して、制御部280の制御下で、上記信号を表示する。すなわち、表示部210は、多重動画再生装置200の利用に応じて多様な画面、例えば、ロック画面、ホーム画面、アプリケーション(「アプリ(App)」と略称する)実行画面、及びキーパッド画面などを表示する。ロック画面は、表示部210がオンされた時に、表示部210に表示される画像として定義される。ロック解除のためのタッチジェスチャーが検出されると、制御部280は、表示される画像をロック画面からホーム画面またはアプリ実行画面などに変更する。ホーム画面は、多数のアプリのそれぞれに対応する多数のアプリ・アイコンを含む画像として定義される。
【0022】
多数のアプリのうちの1つがユーザによって選択(例えば、アプリ・アイコンをタップ)されると、制御部280は、当該アプリ(例えば、動画プレーヤー)を実行し、実行画面を表示部210に表示する。制御部280は、動画再生中に、プレビュー要請イベント(例えば、動画プレーヤー実行画面で「動画プレビュー」ボタンをタップ)を検出する。制御部280は、プレビュー要請イベントの検出に応答して記憶部220に保存された多数の動画のそれぞれに対応する動画クリップを同時に再生する。すなわち制御部280は、記憶部220に保存された多数の動画クリップを表示部210に出力する。表示部210は、制御部280から受信した動画クリップをD/A変換して表示する。
【0023】
表示部210は、上記画面のうちの1つを背景(background)で表示し、他の1つを前景(foreground)として背景にオーバーラップして表示する。例えば、表示部210は、アプリ実行画面を表示し、その上にキーパッドをキーパッドスクリーンまたはキーパッドウィンドウとして表示する。また、表示部210は、制御部280の制御下で、多数の画面を表示する。例えば、表示部210は、第1表示領域に動画を表示し、第1表示領域とは異なる第2表示領域に表示中の動画に関連した各チャプターの動画クリップを表示する。
【0024】
表示部210は、液晶表示装置(LCD:Liquid Crystal Display)、有機発光ダイオード(OLED:Organic Light Emitted Diode)、及びアクティブマトリックス式有機発光ダイオード(AMOLED:Active Matrix Organic Light Emitted Diode)などの平板表示パネルの形態で具現される。
【0025】
表示部210は、ユーザとの対話のためのユーザインターフェースを提供するために、タッチスクリーン211を含む。タッチスクリーン211は、表示部210上に配置されるか又は表示部210内に組み込まれる。具体的には、タッチスクリーン211は、表示部210上に配置されるアドオンタイプ(add−on type)や、表示部210内に挿入されるオンセルタイプ(on−cell type)またはインセルタイプ(in−cell type)で具現される。
【0026】
タッチスクリーン211は、タッチスクリーン211に対するユーザのジェスチャー(例えば、タッチイベント)に応答してアナログ信号を発生し、アナログ信号をA/D変換して制御部280に伝達する。制御部280は、伝達されたタッチイベントからユーザのジェスチャーを検出する。すなわち、制御部280は、タッチ地点、タッチの移動距離、タッチの移動方向、タッチの速度、及びタッチの圧力などを検出して、上記構成要素を制御する。ユーザのジェスチャーは、タッチ(Touch)とタッチジェスチャー(Touch gesture)とに区分される。さらに、タッチジェスチャーは、タップ(Tap)、ダブルタップ(Double Tap)、ロングタップ(Long tap)、ドラッグ(Drag)、ドラッグアンドドロップ(Drag & Drop)、フリック(Flick)、及びプレス(Press)などを含む。ここで、タッチは、ユーザが画面のいずれか一地点にタッチ入力手段(例えば、指やスタイラスペン)を利用して接触する操作であり、タップは、いずれか一地点をタッチした後にタッチ入力手段の移動なしに当該地点からタッチ入力手段をタッチ解除(touch−off)する操作であり、ダブルタップは、いずれか一地点を連続的に二度タップする操作であり、ロングタップは、タップより相対的に長くタッチした後、タッチ入力手段の移動なしに当該地点からタッチ入力手段をタッチ解除する操作であり、ドラッグは、いずれか一地点をタッチした状態でタッチ入力手段を所定方向に移動させる操作であり、ドラッグアンドドロップは、ドラッグした後にタッチ入力手段をタッチ解除する操作であり、フリックは、弾くように、ドラッグに比べてタッチ入力手段を早く移動させた後、タッチ解除する操作を意味する。プレスは、タッチ入力手段でいずれか一地点をタッチした後、当該地点を押す操作である。すなわちタッチは、タッチスクリーンに接触(contact)している状態を意味し、タッチジェスチャーは、タッチがタッチスクリーンに接触(touch−on)してタッチ解除(touch−off)までのタッチの動きを意味する。
【0027】
タッチスクリーン211は、圧力センサーを具備して、タッチされた地点の圧力を感知する。感知された圧力情報は、制御部280に伝達され、制御部280は、感知された圧力情報に基づいてタッチとプレスを区分する。タッチスクリーン211には、抵抗膜方式(resistive type)、静電容量方式(capacitive type)、及び電磁誘導方式(electromagnetic induction type)などが適用される。
【0028】
記憶部220は、制御部280の制御下で、多重動画再生装置200で生成(例えば、カメラ240での撮影)されるか、または無線通信部245を通じて外部ソースから受信したデータ、特に多様な動画221を保存する。また、記憶部220は、制御部280またはコーデック260によって生成された動画クリップ222を保存する。このような動画クリップ222は、それぞれ、動画221に対応する。また、記憶部220は、ロック画面、ホーム画面、及びキーパッド画面などを構成または表示するためのデータを保存する。また、記憶部220は、多重動画再生装置200の動作のための多様な設定値(例えば、画面の明るさ、タッチ発生時の振動の有無、画面の自動回転可否など)を保存する。
【0029】
記憶部220は、多様なプログラムを保存する。具体的に、記憶部220は、多重動画再生装置200の起動及び動作のためのオペレーションシステム(OS)、通信プログラム、イメージ処理プログラム、表示制御プログラム、ユーザインターフェースプログラム、組み込みアプリケーション(embedded application)、及びサードパーティーのアプリケーション(3rd party application)を含む。
【0030】
通信プログラムは、無線通信部245を通じて外部装置と通信を可能にする命令(command)を含む。イメージ処理プログラムは、表示部210に表示されるグラフィックイメージを処理するための様々なソフトウェア構成要素(例えば、イメージフォーマットの変換、表示される画像のサイズ調節、レンダリング(rendering)、及び表示部210のバックライトユニットの輝度決定などのためのモジュール)を含む。ここで、画像は、テキスト、ウェブページ、アイコン、写真、動画、及びアニメーションなどを含む。また、イメージ処理プログラムは、ソフトウェアのみを利用して具現されたソフトウェアコーデック223を含む。ここで、「ソフトウェア」という用語は、以下S/Wと略記して使用する。「ハードウェア」という用語は、以下H/Wと略記して使用する。ソフトウェアコーデック223は、制御部280が動画をデコーディング(復号化)するデコーダーとして機能することを可能にする命令と、その反対にコーディング(符号化:例えば、AVI、MPEGなどのフォーマットで圧縮)するコーダーとして機能することを可能にする命令を含む。すなわち、制御部280は、ソフトウェアコーデック223を利用してデコーダー及びコーダーの機能を行う。これにより、制御部280は、ソフトウェア・ベースのデコーダー及び/またはソフトウェア・ベースのコーダーとして動作する。
【0031】
ユーザインターフェースプログラムは、ユーザインターフェースに関連するさまざまなソフトウェア構成要素を含む。組み込みアプリケーションは、多重動画再生装置200に基本的な設定として搭載されているアプリケーションを意味する。例えば、組み込みアプリケーションは、ブラウザ(browser)、電子メール(email)、及びインスタントメッセンジャー(instant messenger)などである。サードパーティーのアプリケーションは、オンラインマーケットから多重動画再生装置200にダウンロードしてインストールしたアプリケーションを意味する。このようなサードパーティーのアプリケーションは、インストール及び削除が自由である。例えば、サードパーティーのアプリケーションは、ソーシャルネットワークサービスにアクセスするためのアプリケーション、例えばフェイスブック(登録商標)及びツイーター(登録商標)などである。
【0032】
記憶部インターフェース225は、記憶部220を、バス270を通じて無線通信部245、コーデック260、及び制御部280に連結する。
【0033】
オーディオ処理部230は、スピーカーSPK及びマイクMICのうちの少なくとも1つと連結され、音声認識、音声複製、デジタルレコーディング、及び電話機能のためにオーディオ信号の入力及び出力機能を行う。すなわち、オーディオ処理部230は、スピーカーSPKを通じてオーディオ信号を出力し、マイクMICを通じてオーディオ信号の入力を受信するための機能を行う。オーディオ処理部230は、制御部280からオーディオデータを受信し、受信したオーディオデータをアナログ信号にD/A変換した後、アナログ信号をスピーカーSPKに出力する。オーディオ処理部230は、マイクMICからアナログ信号を受信してオーディオデータにA/D変換した後、オーディオデータを制御部280に提供する。スピーカーSPKは、オーディオ処理部230から受信したアナログ信号を音波(sound wave)に変換して出力する。マイクMICは、人やその他の音源(sound source)から伝達された音波をアナログ信号に変換する。
【0034】
カメラ240は、制御部280の制御下で、被写体を撮影して制御部280に出力する機能を行う。具体的に、カメラ240は、光を集めるためのレンズと、この光を電気的な信号に変換するイメージセンサー(例えば、CMOS(Complementary Metal Oxide Semiconductor)またはCCD(Charge Coupled Device))と、イメージセンサーから入力される電気信号を映像データにA/D変換して制御部280に出力するイメージ信号処理部(ISP:Image Signal Processor)とを備える。
【0035】
カメラ240のISPは、画像データをプレビューイメージに加工(例えば、表示部210の画面サイズに合わせて解像度を調節(resizing))して制御部280に出力する表示制御モジュールと、画像データをコーディング(例えば、MPEGフォーマットに圧縮)して制御部280に出力するコーディングモジュールとをさらに含む。制御部280は、プレビューイメージを表示部210に表示する。また、制御部280は、コーディングされた動画を記憶部220に保存する。
【0036】
無線通信部245は、音声通話、画像通話、またはデータ通信を制御部280の制御下で行う。このために、無線通信部245は、送信される信号の周波数をアップコンバート及び増幅する無線周波数送信部と、受信した信号の周波数を低雑音増幅及びダウンコンバートする無線周波数受信部を含む。また、無線通信部245は、移動通信モジュール(例えば、3G(3−Generation)移動通信モジュール、3.5G(3.5−Generation)移動通信モジュール、または4G(4−Generation)移動通信モジュールなど)、デジタル放送モジュール(例えば、DMBモジュール)、及び近距離通信モジュール(例えば、Wi−Fi(登録商標)モジュール、ブルートゥース(登録商標)モジュール)を含む。
【0037】
周辺機器インターフェース250は、周辺機器(210、230、240)を、バス270を通じて記憶部220、コーデック260、及び制御部280に連結する。
【0038】
コーデック260は、デコーダー261とコーダー262を含む。デコーダー261は、制御部280の制御下で、記憶部220、無線通信部245、カメラ240、または制御部280から入力されるデータ(例えば、動画)をデコーディングしてタッチスクリーン211に出力する。また、コーダー262は、制御部280の制御下で、カメラ240または制御部280から入力されるデータ(例えば、動画)をコーディング(符号化:例えば、AVI、MPEGなどのフォーマットに圧縮)して記憶部220に出力する。
【0039】
バス270は、上記構成要素間の信号フローを伝達するための電気回路または他の既知の通信インターフェース及び構成要素(components)である。バス270は、ISAバス(Industry Standard Architecturebus)、EISAバス(Extended Industry Standard Architecture bus)、VESAバス(video electronics standard s association bus)、及びPCIバス(Peripheral Component Interconnect Bus)などに区分される。
【0040】
制御部280は、多重動画再生装置200の全般的な動作及び当該装置200の内部構成要素間の信号フローを制御し、データを処理する機能を行う。そして、制御部280は、バッテリーまたは他の既知のパワーソースから内部構成要素への電源供給を制御する。制御部280は、中央処理装置(CPU:central processing unit)281とグラフィック処理装置(GPU:graphic processing unit)282を含む。
【0041】
CPU281は、データの演算及び比較、命令の解読及び実行などを行うコンピューターシステムの中央制御ユニットである。GPU282は、CPU281に代わって、グラフィックに関連したデータの演算及び比較と、命令の解読及び実行などを行うグラフィック制御ユニットである。両プロセッサ(281、282)は、それぞれ、2つ以上の独立コア(例えば、4コア(quad−core)、
図2参照)が単一の集積回路として形成されて1つのパッケージ(package)に統合される。また、CPU281とGPU282は、1つのチップ、例えばシステムオンチップ(SoC:System on Chip)に統合される。また、CPU281とGPU282は、マルチレイヤ(multi layer)でパッケージング(packaging)され得る。狭義には、CPU281及びGPU282を含む構成はAP(Application Processor)と呼称される。広義には、CPU281、GPU282、バス270、コーデック260、及びインターフェース(225、250)を含む構成がAP(Application Processor)と呼称される。
【0042】
本実施形態による多重動画再生は、表示部210に表示するために、CPU281を利用して行われる。例えば、CPU281の第1〜第4コア(core0〜core3)のうちの少なくとも1つが動画クリップを生成し、動画クリップをタッチスクリーン211に出力する。また、多重動画再生は、GPU282を利用して行われる。例えば、GPU282の第1〜第4コア(core0〜core3)のうちの少なくとも1つが動画を動画クリップに変換し、動画クリップをタッチスクリーン211に出力する。さらに、本実施形態による多重動画再生は、CPU281及びGPU282の両方で行われる。CPU281及びGPU282のうちの1つのコアがビデオをデコーディングするようにデコーダー261を制御し、CPU281及びGPU282のうちの1つの他のコアがソフトウェアを利用してビデオをデコーディングするように制御部280を制御し、CPU281及びGPU282のうちの1つのさらに他のコアがビデオを同時再生する。本実施形態による制御部280の機能は、以下で詳細に説明する。
【0043】
デジタル機器のコンバージェンス(convergence)傾向と共に、多様な実施形態に変形が可能であり、すべて列挙することはできないが、本発明による多重動画再生装置200は、GPSモジュール、震動モーター、外部機器(例えば、PCなど)と有線で連結するための有線通信モジュールなどの上記で言及していない構成要素をさらに含む。また、本実施形態の多重動画再生装置200の上述した構成要素から特定構成要素が除外されるか、または他の構成に代替され得る。
【0044】
図3は、本発明の一実施形態による多重動画再生方法を説明するためのフローチャートである。
【0045】
図3を参照すると、段階310で、制御部280は、無線通信部245を通じて外部ソースから動画を受信する。さらに、制御部280は、有線で連結された外部機器(例えば、PC)から動画を受信する。制御部280は、外部ソースから受信した動画を記憶部220に保存する。また、段階310で、制御部280は、カメラ240から動画を受信する。カメラ240がロウ(raw)データ(すなわち、コーディングされない動画)を出力する場合、制御部280は、カメラ240から受信したロウデータをコーダー262に伝達してコーディングするようにし、コーダー262によってコーディングされた動画を記憶部220に保存する。ここで、制御部280が直接、コーダーとしてロウデータをコーディングして記憶部220に保存することもできる。
【0046】
段階320で、制御部280は、第1デコーダー(H/Wとして装備)、すなわちデコーダー261が使用中であるか否かを判断する。言い換えると、制御部280は、デコーダー261が現在作業(例えば、デコーディング、リサイジングなど)中であるか否かを判断する。
【0047】
第1デコーダーが使用中の場合、段階330で、制御部280は、S/Wを利用して自身が第2デコーダーとして、オリジナル動画(すなわち、受信した動画)をデコーディングし、デコーディングされたオリジナル動画を縮小して動画クリップを生成し、段階350に進行する。この際、
図1を参照して説明したように、オリジナル動画の一部分だけまたは全体を動画クリップに変換する。また、動画クリップは、オリジナル動画を縮小せずに、単にデコーディングされたものであってもよい。本実施形態では、制御部280において、1つのコアだけが動画クリップを生成する。あるいは、複数のコアが動画クリップの生成を行ってもよい。すなわちコアのそれぞれがデコーダーの役目を行う。例えば、
図1及び
図2を参照すると、第1動画(Video1)及び第2動画(Video2)を制御部280が受信した場合、CPU281の第1コア(core0)が第1動画(Video1)のチャプターC1及びC2に対する動画クリップを生成し、CPU281の第2コア(core1)が第1動画(Video1)のチャプターC3〜C5に対する動画クリップを生成する。また、GPU282の第1コア(core0)が第2動画(Video2)のチャプターC1及びC2に対する動画クリップを生成し、GPU282の第2コア(core2)が第2動画(Video2)のチャプターC3〜C5に対する動画クリップを生成する。したがって、複数の動画クリップが同時に且つ迅速に生成される。
【0048】
段階320で、第1デコーダーが使用中ではない場合(例えば、再生が一時停止された場合、画面がオフとされている場合、第1デコーダーが待機状態(idle state)の場合など)、段階340で、制御部280は、オリジナル動画(すなわち受信された動画)をデコーディングするように第1デコーダー261をハードウェア・ベースのデコーダーとして制御し、デコーディングされたオリジナル動画を縮小(あるいは、縮小しなくてもよい)して動画クリップを生成する。この際、段階340で、制御部280(例えば、CPU281のコアのうちの少なくとも1つ)も、動画クリップの生成に加わる。
【0049】
段階350で、制御部280は、段階330または段階340で生成された動画クリップを記憶部220に保存する。
【0050】
段階360で、制御部280は、プレビュー要請があるか否かを判断する。例えば、表示部210は、制御部280の制御下で、「動画プレビュー」のためのボタンが含まれたアプリ実行画面(例えば、動画プレーヤーの実行画面)を表示する。制御部280は、表示部210で動画プレビューボタンに対するユーザのジェスチャー(例えば、タップ)、すなわちプレビュー要請イベントを検出する。
プレビュー要請がなければ、制御部280は、プレビュー要請があるか否かを繰り返して検査する。
【0051】
プレビュー要請イベントが検出されると、段階370で、制御部280は、プレビュー要請イベントに応答して記憶部220にあらかじめ保存された動画クリップを同時に再生する。例えば、CPU281の1つ以上のコアまたはGPU282の1つ以上のコアが動画クリップを表示部210に出力する。また、CPU281及びGPU282のそれぞれ1つ以上のコアが動画クリップを表示部210に出力する。また、制御部280は、動画クリップを表示部210に出力するようにデコーダー261を制御する。
【0052】
また、段階370で、制御部280は、記憶部220にあらかじめ保存された動画クリップが当該動画において一部だけがデコーディングされたものである場合、動画クリップの一部分を同時再生すると同時に、デコーディングされていない残りの部分に対して新しい動画クリップを生成し、これを記憶部220に保存する。すなわち制御部280は、続けてプレビューが可能となるように新しい動画クリップを生成する。この際、同時再生は、CPU281(またはGPU282)のコアのうちのいずれか1つが処理し、動画クリップの生成及び保存は、他の少なくとも1つのコアが処理する。また、同時再生は、CPU281が処理し、動画クリップの生成及び保存は、GPU282が処理する。あるいは、その反対であってもよい。
【0053】
以上、
図3を参照しながら説明した実施形態によると、多重動画再生装置200で動画が新たに生成されるか、または外部ソースから新たにダウンロードされた場合、当該動画に対する動画クリップが自動的に生成され、記憶部220に保存される。すなわち、動画のそれぞれに対応する動画クリップがあらかじめ保存される。制御部280は、ハードウェア・ベースのデコーダーが使用中の場合、ソフトウェア・ベースのデコーダーとして機能する制御部280によって、動画クリップを生成する。このように動画クリップがあらかじめ保存された状態でプレビュー要請がある場合、制御部280は、記憶部220に保存された動画クリップを同時に生成する。すなわち、制御部280は、バッファリング時間なしに(すなわち、動画をデコーディングし、縮小する過程なしに)、動画クリップを同時再生することによって、端末が高性能であることをユーザに直観的に示すことができる。
【0054】
図4は、本発明の他の実施形態による多重動画再生方法を説明するためのフローチャートである。
図5及び
図6は、本発明の多重動画再生方法を説明するための画面の例を示す図である。
【0055】
図4及び
図5を参照すると、表示部210は、制御部280の制御下で、ホーム画面を表示する。制御部280は、ホーム画面で動画プレーヤーに対応するアイコンの選択(例えば、当該アイコンをタップ)を検出する。段階410で、制御部280は、アイコンの選択に応答して動画プレーヤーを実行する。表示部210は、制御部280の制御下で、動画プレーヤーの実行画面500を表示する。動画プレーヤーの実行画面500は、動画再生画面510とメニュー画面520を含む。
【0056】
制御部280は、再生要請イベント(例えば、再生ボタン530に対するタップ)を検出する。再生要請イベントが検出された場合、段階420で、制御部280は、第1デコーダー(H/W)、すなわちデコーダー261を制御して動画を再生する。すなわち制御部280の制御下で、デコーダー261は、動画をデコーディングして表示部210に出力し、表示部210は、動画をD/A変換して動画再生画面510に表示する。この際、再生される動画は、以前に再生された動画である。また、再生される動画は、実行画面500または他の画面上に表示された動画リストからユーザによって選択された動画であってもよい。動画再生の制御は、制御部280の少なくとも1つのコア(例えば、CPU281のCore0)によって行われる。
【0057】
段階430で、制御部280は、第2デコーダーの役目を行う。すなわち制御部280で、少なくとも1つのコア(例えば、CPU281のCore1〜Core3)は、再生中の動画の各チャプター別に動画クリップを生成し、これを記憶部220に一時保存する。すなわち制御部280は、チャプタープレビュー要請がある場合、バッファリング時間なしに(すなわち、動画をデコーディングし、縮小する過程なしに)同時再生可能となるように動画クリップをあらかじめ生成して保存する。
【0058】
段階440で、制御部280は、プレビュー要請があるか否かを判断する。例えば、制御部280は、メニュー画面520からチャプタープレビューボタン521の選択(例えば、タップ)を検出する。プレビュー要請がなければ、制御部280は、プレビュー要請があるか否かを繰り返し検査する。
【0059】
段階450で、制御部280は、
図6に示すように、チャプタープレビューの要請に応答して記憶部220にあらかじめ保存された動画クリップを同時に再生する。例えば、CPU281で1つ以上のコアまたはGPU282で1つ以上のコアが動画クリップを表示部210に出力する。また、CPU281及びGPU282のそれぞれの1つ以上のコアが動画クリップを表示部210に出力する。また、制御部280は、動画クリップを表示部210に出力するようにデコーダー261を制御するる。
【0060】
また、段階450で、制御部280は、記憶部220にあらかじめ保存された動画クリップを同時再生すると同時に、新しい動画クリップを生成して記憶部220に保存する。すなわち制御部280は、続けてプレビューが可能となるように新しい動画クリップを生成する。この際、同時再生は、CPU281(またはGPU282のコアのうちのいずれか1つが処理し、動画クリップの生成及び保存は、他の少なくとも1つのコアが処理する。また、同時再生は、CPU281が処理し、動画クリップの生成及び保存は、GPU282が処理する。
【0061】
以上、
図4〜
図6を参照して説明した実施形態によると、多重動画再生装置200のハードウェア・ベースのデコーダー261によって動画が再生中の場合、制御部280は、ソフトウェア・ベースのデコーダーとして、再生中の動画の各チャプター別に動画クリップを生成してあらかじめ保存する。このように動画クリップがあらかじめ保存された状態でチャプタープレビュー要請がある場合、制御部280は、記憶部220に保存された各チャプター別に動画クリップを同時に再生する。すなわち制御部280は、動画クリップをバッファリング時間なしに同時再生することによって、端末が高性能であることをユーザに直観的に示すことができる。
【0062】
上述した本発明による多重動画再生方法は、多様なコンピュータを通じて実行可能なプログラム命令で具現され、コンピュータ読み取り可能な記録媒体に記録される。ここで、記録媒体は、プログラム命令、データファイル、及びデータ構造などを含む。また、プログラム命令は、本発明のために特別に設計され構成されたものであるか、またはコンピュータソフトウェア分野で通常の知識を有する者に公知で使用可能なものであってもよい。また、記録媒体には、ハードディスク、フロッピー(登録商標)、及び磁気テープのような磁気媒体と、CD−ROM、DVDのような光記録媒体と、フロプチカルディスク(Floptical Disk)のような磁気−光媒体と、ROM、RAM、及びフラッシュメモリなどのようなハードウェア装置が含まれる。また、プログラム命令には、コンパイラーによって作られる機械語コードだけでなく、インタプリターを使用してコンピュータによって実行される高級言語コードが含まれる。ハードウェア装置は、本発明の動作を実行する1つ以上のソフトウェアモジュールとして動作するように構成される。
【0063】
以上、本発明の実施形態について図面を参照しながら詳細に説明したが、本発明は、上述の実施形態に限定されるものではなく、本発明の技術的範囲から逸脱しない範囲内で多様に変更実施することが可能である。