JP5106671B1 - 電子機器および再生制御方法 - Google Patents

電子機器および再生制御方法 Download PDF

Info

Publication number
JP5106671B1
JP5106671B1 JP2011217333A JP2011217333A JP5106671B1 JP 5106671 B1 JP5106671 B1 JP 5106671B1 JP 2011217333 A JP2011217333 A JP 2011217333A JP 2011217333 A JP2011217333 A JP 2011217333A JP 5106671 B1 JP5106671 B1 JP 5106671B1
Authority
JP
Japan
Prior art keywords
packet
buffer
data
received
index information
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.)
Active
Application number
JP2011217333A
Other languages
English (en)
Other versions
JP2013078022A (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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2011217333A priority Critical patent/JP5106671B1/ja
Priority to US13/525,810 priority patent/US20130084054A1/en
Application granted granted Critical
Publication of JP5106671B1 publication Critical patent/JP5106671B1/ja
Publication of JP2013078022A publication Critical patent/JP2013078022A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23614Multiplexing of additional data and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/432Content retrieval operation from a local storage medium, e.g. hard-disk
    • H04N21/4325Content retrieval operation from a local storage medium, e.g. hard-disk by playing back content from the storage medium
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4334Recording operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47217End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for controlling playback functions for recorded or on-demand content, e.g. using progress bars, mode or play-point indicators or bookmarks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8453Structuring of content, e.g. decomposing content into time segments by locking or enabling a set of features, e.g. optional functionalities in an executable program
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8455Structuring of content, e.g. decomposing content into time segments involving pointers to the content, e.g. pointers to the I-frames of the video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/78Television signal recording using magnetic recording
    • H04N5/782Television signal recording using magnetic recording on tape
    • H04N5/783Adaptations for reproducing at a rate different from the recording rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/82Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only
    • H04N9/8205Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only involving the multiplexing of an additional signal and the colour video signal

Abstract

【課題】コンテンツデータを受信しながらそのコンテンツデータに対応するインデックス情報を作成することができる電子機器を実現する。
【解決手段】実施形態によれば、電子機器は、受信されたパケットが、ランダムアクセス可能なビデオフレームを運ぶためのパケット群内の先頭のパケットであることを示すランダムアクセスインジケータフラグが設定された第1パケットであるか否かを判定し、受信されたパケットが第1パケットである場合、第1パケットから、または第1パケットと同一のパケット識別子を有する他の受信されたパケットから、ランダムアクセス可能なビデオフレームの提示時刻を示すタイムスタンプを取得し、提示時刻と、第1パケットに対応するデータが格納されるバッファ内の位置とを示すインデックス情報を生成する。電子機器は、変更先再生位置に対応する第1データ部がバッファ上に存在するか否かを前記インデックス情報に基づいて判定する。
【選択図】図3

Description

本発明の実施形態は、コンテンツデータを再生可能な電子機器および再生制御方法に関する。
近年、パーソナルコンピュータ、PDA、スマートフォンといった種々の電子機器が開発されている。この種の電子機器の多くは、インターネットを介してマルチメディアコンテンツデータを受信しながら、そのマルチメディアコンテンツデータを再生するストリーミング再生機能を有している。
マルチメディアコンテンツデータのストリーミング再生においては、コンテンツサーバから受信されるマルチメディアコンテンツデータの一部分は電子機器内のストリームバッファに格納される。
特開2010−50980号公報
電子機器上で実行されるプレーヤソフトウェアは、シークバー(またはプログレッシブバー)と称されるユーザインタフェースを表示する。ユーザは、シークバーを操作することによって、マルチメディアコンテンツデータ内の再生位置を変更(シーク)することができる。
MPEGにおいて規格化されたMP4のようなファイルフォーマットを有するコンテンツデータは、シーク用のインデックス情報を含んでいる。
しかしながら、幾つか種類のコンテンツデータ(例えばMPEG-2 TS/TTSコンテンツデータ等)においては、シーク用のインデックス情報はそのコンテンツデータに包含されていない。このため、電子機器側では、MPEG-2 TS/TTSコンテンツデータのストリーム内のピクチャ構造等を解析することによってそのストリームに対応するインデックス情報を作成することが必要とされる。しかし、一般的に、ストリームのピクチャ構造を解析するためには、そのストリームをデコードする処理と同等の処理を実行することが必要とされる。このため、コンテンツデータを受信しながら、インデックス情報をリアルタイムに作成することは困難である。
本発明は、コンテンツデータを受信しながらそのコンテンツデータに対応するインデックス情報を作成することができる電子機器及びコンテンツ再生制御方法を提供することを目的とする。
実施形態によれば、電子機器は、コンテンツデータのストリームを構成するパケット群をサーバから受信しながら前記コンテンツデータを再生する。この電子機器は、バッファと、再生手段と、インデックス生成手段と、制御手段とを具備する。前記バッファは、前記受信されたパケット群を格納する。前記再生手段は、前記バッファに格納されているパケット群をデコードして前記パケット群に対応するデータを再生する。前記インデックス生成手段は、受信されたパケットが、ランダムアクセス可能なビデオフレームを運ぶためのパケット群内の先頭のパケットであることを示すランダムアクセスインジケータフラグが設定された第1パケットであるか否かを判定し、前記受信されたパケットが前記第1パケットである場合、前記第1パケットから、または前記第1パケットと同一のパケット識別子を有する他の受信されたパケットから、前記ランダムアクセス可能なビデオフレームの提示時刻を示すタイムスタンプを取得し、前記提示時刻と、前記第1パケットが格納される前記バッファ内の位置とを示すインデックス情報を生成する。前記制御手段は、前記再生手段によって要求される変更先再生位置に対応する第1データ部が前記バッファ上に存在するか否かを前記インデックス情報に基づいて判定し、前記判定結果に基づいて、前記第1データ部を前記バッファから前記再生手段に転送する処理または前記第1データ部を前記サーバから受信する処理のいずれかを実行する。
実施形態に係る電子機器の外観を示す斜視図。 同実施形態の電子機器によって実行されるプレーヤソフトウェアによって表示されるコンテンツ再生画面の例を示す図。 同実施形態の電子機器のシステム構成を示すブロック図。 同実施形態の電子機器によって実行されるプレーヤソフトウェアの構成を示すブロック図。 図4のプレーヤソフトウェアによってサーバから受信されるトランスポートストリーム(TS)パケット群を説明するための図。 図5のトランスポートストリーム(TS)パケットに付加されるランダムアクセスインジケータを説明するための図。 図4のプレーヤソフトウェアによって組み立てられるパケッタイズドエレメンタリーストリーム(PES)パケットヘッダを説明するための図。 図4のプレーヤソフトウェアによって使用されるバッファを説明するための図。 図4のプレーヤソフトウェアによって生成されるインデックス情報を説明するための図。 図4のプレーヤソフトウェアによって実行される再生制御動作の手順を示すフローチャート。 図4のプレーヤソフトウェアによって実行されるバッファリング動作の手順を示すフローチャート。 図4のプレーヤソフトウェアによって実行されるシーク制御動作の手順を示すフローチャート。
以下、実施の形態について図面を参照して説明する。
図1は、一実施形態に係る電子機器の外観を示す斜視図である。この電子機器は、例えば、スレート型パーソナルコンピュータ(PC)、ラップトップ型PC、スマートフォン、またはPDA等として実現され得る。以下では、この電子機器がスレート型パーソナルコンピュータ10として実現されている場合を想定する。スレート型パーソナルコンピュータ10は、図1に示すように、コンピュータ本体11とタッチスクリーンディスプレイ17とから構成される。
コンピュータ本体11は、薄い箱形の筐体を有している。タッチスクリーンディスプレイ17には、液晶表示装置(LCD)及びタッチパネルが組み込まれている。タッチパネルは、LCDの画面を覆うように設けられる。タッチスクリーンディスプレイ17は、コンピュータ本体11の上面に重ね合わせるように取り付けられている。
コンピュータ10はコンテンツデータをストリーミングによって再生するコンテンツ再生機能を有している。このコンテンツ再生機能はコンピュータ10にインストールされたプレーヤソフトウェアによって実行される。プレーヤソフトウェアによるコンテンツ再生動作は、オペレーティングシステムによって提供されるマルチメディアフレームワークを利用して実行するようにしてもよい。コンピュータ10は有線または無線のネットワークとの通信を実行するための通信デバイスを内蔵しており、コンピュータ10とインターネット20との間の通信はこの通信デバイスを介して実行される。
コンテンツデータは、例えば、ビデオデータとオーディオデータとが多重化されたデータストリームである。ビデオデータは圧縮符号化されていてもよく、またオーディオデータも圧縮符号化されていてもよい。コンテンツデータは、ビデオデータのみから構成されていてもよい。
プレーヤソフトウェアはインターネット20のようなネットワークを介してコンテンツサーバ21からコンテンツデータ(マルチメディアコンテンツデータ)を受信する。プレーヤソフトウェアはマルチメディアコンテンツデータを受信しながら、そのマルチメディアコンテンツデータを再生する。コンピュータ10においては、マルチメディアコンテンツデータ内の受信されたデータ部はバッファに格納される。バッファはコンピュータ10内のメモリの一部である。バッファに一定量のデータが蓄積された後に、プレーヤソフトウェアはマルチメディアコンテンツデータの再生を開始する。
マルチメディアコンテンツデータの再生処理においては、バッファに格納されたビデオデータ部およびオーディオデータ部の各々が再生される。マルチメディアコンテンツデータの再生処理の間、プレーヤソフトウェアは、先読み処理を実行してもよい。先読み処理は、現在再生位置よりも時間的に後のデータ部それぞれをコンテンツサーバ21から順次受信してバッファに格納するバッファリング処理である。
図2は、プレーヤソフトウェアによってディスプレイ17に表示されるコンテンツ再生画面の例である。コンテンツ再生画面はビデオ表示エリア31およびシークバー33を表示する。ビデオ表示エリア31は、マルチメディアコンテンツデータ内のビデオデータの画像(動画像)を表示するための表示領域である。シークバー33はマルチメディアコンテンツデータの再生位置をユーザに制御させるためのグラフィカルユーザインタフェースである。
シークバー33の左端および右端は再生対象のマルチメディアコンテンツデータの先頭位置および終端位置にそれぞれ対応する。マルチメディアコンテンツデータの再生期間中においては、マルチメディアコンテンツデータの再生位置は時間の経過に伴って自動的に更新される。再生位置を示す値としては、マルチメディアコンテンツデータの先頭位置を起点としたオフセット値を用いてもよい。ある再生位置に対応するオフセット値は、マルチメディアコンテンツデータの先頭位置からその再生位置までの再生時間を示す。
シークバー33はスライダ35を表示する。スライダ35はマルチメディアコンテンツデータ内の現在再生位置を示す。つまり、スライダ35はマルチメディアコンテンツデータの再生の進行状況を示す。ユーザは、ポインティングデバイスを用いてスライダ35を移動させることにより、マルチメディアコンテンツデータの再生位置を変更することができる。
図3は、本コンピュータ10のシステム構成を示す図である。
本コンピュータ10は、図3に示されるように、CPU101、ノースブリッジ102、主メモリ103、サウスブリッジ104、グラフィクスコントローラ105、サウンドコントローラ106、BIOS−ROM107、LANコントローラ108、ソリッドステートドライブ(SSD)109、無線LANコントローラ112、エンベデッドコントローラ(EC)113、EEPROM114、HDMI制御回路3等を備える。
CPU101は、コンピュータ10内の各部の動作を制御するプロセッサである。CPU101は、SSD109から主メモリ103にロードされる、オペレーティングシステム(OS)201、および各種アプリケーションプログラムを実行する。アプリケーションプログラムには、プレーヤアプリケーションプログラム202が含まれている。このプレーヤアプリケーションプログラム202は上述のプレーヤソフトウェアであり、オペレーティングシステム(OS)201上で実行される。
また、CPU101は、BIOS−ROM107に格納されたBIOSも実行する。BIOSは、ハードウェア制御のためのプログラムである。
ノースブリッジ102は、CPU101のローカルバスとサウスブリッジ104との間を接続するブリッジデバイスである。ノースブリッジ102には、主メモリ103をアクセス制御するメモリコントローラも内蔵されている。また、ノースブリッジ102は、PCI EXPRESS規格のシリアルバスなどを介してグラフィクスコントローラ105との通信を実行する機能も有している。
グラフィクスコントローラ105は、本コンピュータ10のディスプレイモニタとして使用されるLCD17Aを制御する表示コントローラである。このグラフィクスコントローラ105によって生成される表示信号はLCD17Aに送られる。LCD17Aは、表示信号に基づいて映像を表示する。このLCD17A上にはタッチパネル17Bが配置されている。タッチパネル17Bは、LCD17Aの画面上で入力を行うためのポインティングデバイスである。ユーザは、タッチパネル17Bを用いて、LCD17Aの画面に表示されたグラフィカルユーザインタフェース(GUI)等を操作することができる。例えば、ユーザは、画面に表示されたボタンをタッチすることによって、当該ボタンに対応する機能の実行を指示することができる。
HDMI端子2は、外部ディスプレイ接続端子である。HDMI端子2は、非圧縮のデジタル映像信号とデジタルオーディオ信号とを1本のケーブルで外部ディスプレイ装置1に送出することができる。HDMI制御回路3は、HDMIモニタと称される外部ディスプレイ装置1にデジタル映像信号をHDMI端子2を介して送出するためのインタフェースである。つまり、コンピュータ10は、HDMI端子2等を介して、外部ディスプレイ装置1に接続可能である。
サウスブリッジ104は、PCI(Peripheral Component Interconnect)バス上の各デバイス及びLPC(Low Pin Count)バス上の各デバイスを制御する。また、サウスブリッジ104は、SSD109を制御するためのATAコントローラを内蔵している。
サウスブリッジ104は、各種USBデバイスを制御するためのUSBコントローラを内蔵している。さらに、サウスブリッジ104は、サウンドコントローラ106との通信を実行する機能も有している。サウンドコントローラ106は音源デバイスであり、再生対象のオーディオデータをスピーカ18A,18Bに出力する。LANコントローラ108は、例えばIEEE 802.3規格の有線通信を実行する有線通信デバイスである。無線LANコントローラ112は、例えばIEEE 802.11規格の無線通信を実行する無線通信デバイスである。
EC113は、電力管理のためのエンベデッドコントローラを含む1チップマイクロコンピュータである。EC113は、ユーザによるパワーボタンの操作に応じて本コンピュータ10を電源オン/電源オフする機能を有している。
次に、図4を参照して、プレーヤアプリケーションプログラム202の機能構成を説明する。
プレーヤアプリケーションプログラム202は、データソース301、デマルチプレクサ302、ビデオデコーダ303、オーディオデコーダ304、レンダラ305、および再生制御部306を備える。データソース301は、再生制御部306の制御の下、コンテンツサーバ21からマルチメディアコンテンツデータを受信するための処理を順次実行し、受信されたデータ部分それぞれをバッファ401に格納する(バッファリング)。
このバッファリングにおいては、データソース301は、コンテンツデータのストリームを構成するパケット群をサーバ21から順次受信する。これら各パケットは、トランスポートストリーム(TS)パケットである。また、これら各パケットは、タイムスタンプドTSパケット(TTSパケット)であってもよい。TTSパケットはTSパケットの一種であり、TSパケットの先頭にタイムスタンプが付与されたパケットである。バッファ401は、受信されたTS/TTSパケット群、つまりコンテンツデータ内の一部のデータを格納する。
データソース301は、さらに、インデックス情報生成部402、制御部403、およびインデックス情報記憶部404を備える。インデックス情報生成部402は、コンテンツデータに対するシーク用のインデックス情報をバッファリング中にリアルタイムに生成する。このインデックス情報の生成動作を支援するために、サーバ201は、コンテンツデータ内の各ランダムアクセスポイントに対応するTSパケットを送信する場合には、そのTSパケットのヘッダに“1”のランダムアクセスインジケータフラグ(random_access_indicator)を設定するように構成されている。
ランダムアクセスインジケータフラグ(random_access_indicator)が設定されたTSパケットは、ランダムアクセス可能なビデオフレームを運ぶための複数のTSパケット群内の先頭のTSパケットである。あるビデオフレームを運ぶための一つのパケッタイズドエレメンタリーストリーム(PES)パケットは、同一のパケット識別子(PID)を持つ複数のTSパケットのペイロードに分割して伝送される。したがって、ランダムアクセスインジケータフラグ(random_access_indicator)が設定されたTSパケットは、ランダムアクセス可能なビデオフレームを運ぶためのPESパケットが分散される複数のTSパケット内の先頭TSパケットである。ランダムアクセス可能なビデオフレームは、他のビデオフレームを参照せずにデコード可能なビデオフレーム、例えばH.264のIDR(Instantaneous Decoder Refresh)フレーム、MPEG−2 VideoのI(Intra)フレーム、等である。
サーバ201は、ランダムアクセス可能なビデオフレームを格納するPESパケットが割り当てられた複数のTSパケットの内の先頭TSパケットのヘッダに存在するrandom_access_indicatorに“1”をセットする。
インデックス情報生成部402は、受信されたTSパケットのヘッダを参照して、受信されたTSパケットが、ランダムアクセスインジケータフラグ(random_access_indicator)が設定されたTSパケットであるか否か、つまり、random_access_indicatorに“1”がセットされたTSパケットであるか否かを判定する。受信されたTSパケットがランダムアクセスインジケータフラグ(random_access_indicator)が設定されたTSパケット(第1パケット)である場合、インデックス情報生成部402は、このランダムアクセスインジケータフラグ(random_access_indicator)が設定されたTSパケットから、またはこのランダムアクセスインジケータフラグ(random_access_indicator)が設定されたTSパケットと同一のパケット識別子(PID)を有する他の受信されたTSパケットから、ランダムアクセス可能なビデオフレームの提示時刻を示すタイムスタンプを取得する。
この場合、インデックス情報生成部402は、ランダムアクセスインジケータフラグ(random_access_indicator)が設定されたTSパケットと、このランダムアクセスインジケータフラグ(random_access_indicator)が設定されたTSパケットと同一のパケット識別子を有する他の受信された1以上のTSパケットとを用いて、ランダムアクセス可能なビデオフレームを運ぶPESパケットのヘッダを組み立て、この組み立てたヘッダから、ランダムアクセス可能なビデオフレームの提示時刻を示すタイムスタンプ(プレゼンテーションタイムスタンプ:PTS)を取得してもよい。PESパケットのヘッダは幾つかのTSパケットに分散されている場合がある。したがって、上述のようにPESパケットのヘッダを組み立て、その組み立てられたヘッダからPTSを取得することにより、たとえPESパケットのヘッダが幾つかのTSパケットに分散されている場合であっても、ランダムアクセス可能なビデオフレームに対応するPTSをより正しく取得することができる。
そして、インデックス情報生成部402は、取得された提示時刻(PTS)と、ランダムアクセスインジケータフラグ(random_access_indicator)が設定されたTSパケットが格納されるバッファ401内の位置とを示すインデックス情報を生成する。ランダムアクセスインジケータフラグ(random_access_indicator)が設定されたTSパケットが格納されるバッファ401内の位置としては、例えば、そのTSパケットが格納されるバッファ401内のオフセット位置が用いられる。このインデックス情報はインデックス情報記憶部404に格納される。ランダムアクセスインジケータフラグ(random_access_indicator)が設定されたTSパケット(第1パケット)が受信される度、ランダムアクセス可能な新たなビデオフレームに対応するインデックス情報が生成される。これによって、バッファ401に格納されたデータ内のランダムアクセス可能な箇所毎に、提示時刻とバッファ401内の格納位置とのペアが、インデックス情報としてインデックス情報記憶部404に格納される。
制御部404は、デマルチプレクサ302によって要求される変更先再生位置に対応する第1データ部がバッファ401上に存在するか否かをインデックス情報に基づいて判定し、この判定結果に基づいて、第1データ部をバッファ401からデマルチプレクサ302に転送する処理または第1データ部をサーバ21から受信する処理のいずれかを実行する。
このように、バッファリング中に簡易な処理でシークに使用するインデックス情報を作成しておくことで、シークのレスポンスを向上させることができる。
デマルチプレクサ302、ビデオデコーダ303、オーディオデコーダ304、およびレンダラ305は、バッファ401に格納されたデータ(TS/TTSパケット群)をデコードしてそれらパケット群に対応するデータ(ビデオデータおよびオーディオデータ)を再生する再生部として機能する。
デマルチプレクサ302は、データソース301内のバッファ401からTS/TTSパケット群を受信し、それらTS/TTSパケット群それぞれのPIDに基づいて、それらTS/TTSパケット群をビデオデータに対応するTS/TTSパケット群とオーディオデータに対応するTS/TTSパケット群とに分離する。ビデオデコーダ303はビデオデータに対応するTS/TTSパケット群をデコードし、デコードによって得られたビデオデータをレンダラ305に送る。オーディオデコーダ304はオーディオデータに対応するTS/TTSパケット群をデコードし、デコードによって得られたオーディオデータをレンダラ305に送る。レンダラ305はビデオデータの動画像をビデオ表示エリア31上に表示する。さらに、レンダラ305はオーディオデータに対応する音をスピーカ等を介して出力する。
再生制御部306は、プレーヤアプリケーションプログラム202によるコンテンツデータの再生動作を制御する。より詳しくは、再生制御部306は、データソース301、デマルチプレクサ302、ビデオデコーダ303、オーディオデコーダ304、およびレンダラ305をそれぞれ制御する。
次に、図5を参照して、プレーヤソフトウェア202によってサーバ201から受信されるTSパケット群について説明する。
トランスボートストリームは、TSパケット(またはTTSパケット)の列から構成される。各TSパケットは188バイト長の固定長パケットであり、ヘッダ(H)とペイロード(P)とを含む。コンテンツデータのビットストリームはTSパケット群によって伝送される。ビットストリームにおいては、複数のランダムアクセス可能な箇所(ランダムアクセスポイント)が設定されている。ランダムアクセスポイントは例えば0.5秒程度の間隔で設定される。ビットストリーム内におけるランダムアクセス可能なビデオフレームそれぞれの位置がランダムアクセスポイントとなる。あるランダムアクセスポイントから次のランダムアクセスポイントまでの時間長は例えば0.5秒程度である。
ビットストリームはPESパケット群によってパケット化される。各PESパケットのペイロード(P)は一つのアクセスユニット(一つのビデオフレーム)のデータを含む。各PESパケットのヘッダ(P)には、対応するビデオフレームのPTSが含まれている。一つのPESパケットは同一のPIDを有する複数のTSパケットのペイロードに分割して伝送される。
いま、PESパケット501のペイロードにランダムアクセス可能なビデオフレームが含まれている場合を想定する。PESパケット501は、同一のPID(ここでは、0x0100)を有する複数のTSパケット601,602,…に分割される。この場合、本実施形態では、先頭のTSパケット601のヘッダ内に存在するrandom_access_indicatorに“1”がセットされる。
さらに、PESパケット701のペイロードにランダムアクセス可能なビデオフレームが含まれている場合を想定する。PESパケット701は、同一のPID(ここでは、0x0300)を有する複数のTSパケット801,802,…に分割される。先頭のTSパケット801のヘッダ内に存在するrandom_access_indicatorには“1”がセットされる。
図6には、TS/TTSパケットの構成が示されている。TS/TTSパケットのヘッダには、PIDを格納するフィールド部、random_access_indicatorを格納するフィールド部、等が存在する。通常のシステムでは、random_access_indicatorを格納するフィールドは使用されないことが多い。なぜなら、デコーダにおいては、ピクチャ構造を解析することによって、各ビデオフレームごとに、そのフレームがランダムアクセス可能なビデオフレームであるか否かを判定することができるからである。しかし、ピクチャ構造を解析するために必要な処理量は多いため、もしバッファリング処理中にピクチャ構造を解析する処理を行うと、バッファリング処理の負荷が増大し、バッファリングの速度が低下したり、コンテンツの再生性能に影響が及ぼされる可能性がある。本実施形態では、random_access_indicatorに“1”がセットされたTSパケットが検出され、このTSパケットに対応するPESパケットのヘッダ内に存在するPTSが取得される。これにより、ピクチャ構造の解析を伴わない簡易な処理によってインデックス情報を作成することができる。
図7には、PESパケットの構成が示されている。PESパケットのヘッダには、PTSを格納するフィールド部、等が存在する。
次に、図8および図9を参照して、インデックス情報の例について説明する。
いま、図8に示すように、ランダムアクセスインジケータフラグ(random_access_indicator)が設定されたTSパケット601がバッファ401の先頭から9000バイト目の格納位置Aに格納され、ランダムアクセスインジケータフラグ(random_access_indicator)が設定された別のTSパケット801がバッファ401の先頭から18000バイト目の格納位置Bに格納されている場合を想定する。
この場合、TSパケット601のペイロードまたはTSパケット602のペイロードにはPESパケット501のヘッダが含まれている。したがって、TSパケット601のペイロードまたはTSパケット602のペイロードを参照することによって、PESパケット501に含まれるビデオフレームのPTS(ここでは、PTS=100000)を取得することができる。
同様に、TSパケット801のペイロードまたはTSパケット802のペイロードにはPESパケット701のヘッダが含まれている。したがって、TSパケット801のペイロードまたはTSパケット802のペイロードを参照することによって、PESパケット701に含まれるビデオフレームのPTS(ここでは、PTS=250000)を取得することができる。
図9はインデックス情報の例を示している。TSパケット601の受信時には、バッファ内オフセット(=9000)とタイムスタンプ(=100000)とのペアがインデックス情報として生成される。同様に、TSパケット801の受信時には、バッファ内オフセット(=18000)とタイムスタンプ(=250000)とのペアがインデックス情報として生成される。
一旦生成されたペアは、必要に応じてインデックス情報から削除される。なぜなら、バッファ401の空き領域を確保するために、バッファ401の一部または全ての記憶領域を確保する処理が必要に応じて実行されるからである。例えば、バッファ401のバッファ内オフセット(=9000)からバッファ内オフセット(=18000)の直前までの記憶領域が解放されてこの記憶領域が空き領域に設定される場合には、バッファ内オフセット(=9000)とタイムスタンプ(=100000)とのペアがインデックス情報から削除される。
次に、図10のフローチャートを参照して、プレーヤアプリケーションプログラム202によって実行される再生制御処理の手順を説明する。
プレーヤアプリケーションプログラム202においては、再生制御部306の制御の下、データソース301は、マルチメディアコンテンツデータのTSパケット群それぞれをコンテンツサーバ21から順次受信してバッファ401に格納するためのバッファリング処理を開始する。一定量のデータがバッファ401に格納されると、再生制御部306からデマルチプレクサ302に再生要求が発行され(ステップS11)、これによってマルチメディアコンテンツデータをストリーミングによって再生するための再生処理(ステップS12〜S17)が開始される。
再生処理では、デマルチプレクサ302は、次に再生すべきデータ(ビデオまたはオーディオ)をデータソース301に要求し(ステップS13)、次に再生すべきデータ(ビデオまたはオーディオ)をデータソース301から取得する(ステップS14)。このデータがビデオデコーダ303またはオーディオデコーダ304によってデコードされることによって再生される(ステップS19)。この場合、ビデオデータに対応する各TSパケットはデマルチプレクサ302からビデオデコーダ303に送られ、オーディオデータに対応する各TSパケットはデマルチプレクサ302からオーディオデコーダ304に送られる。
さらに、再生処理では、再生制御部306は、マルチメディアコンテンツデータの再生が完了したか否か、つまり、再生が進捗し再生位置がマルチメディアコンテンツデータの終端に達したか否かを判定する(ステップS16)。マルチメディアコンテンツデータの再生が完了するまで、ステップS12からステップS17までの再生処理のループが繰り返し実行される。再生が進捗し再生位置がマルチメディアコンテンツデータの終端に達すると(ステップS16のYES)、再生処理が完了される(ステップS18)。
次に、図11のフローチャートを参照して、プレーヤアプリケーションプログラム202によって実行されるバッファリング処理について説明する。
バッファリング処理は、サーバ21からデータを順次受信するための受信処理のループ(ステップS21〜S29)を含む。この受信処理のループ(ステップS21〜S29)には、サーバ21から受信されるTTS/TSパケットを解析して上述のインデックス情報を生成するための解析処理のループ(ステップS22〜S27)が含まれている。
まず、データソース301は、コンテンツデータのストリームを構成するTTS/TSパケット群をサーバ21から受信する(ステップS21)。受信されたTTS/TSパケット群はバッファ401に格納される。一つのTTS/TSパケットが受信される度に、データソース301のインデックス情報生成部402は、以下の処理を実行する。
インデックス情報生成部402は、受信されたTTS/TSパケットが、ランダムアクセスインジケータフラグ(random_access_indicator)が設定されたTTS/TSパケットであるか否かを判定する(ステップS23)。ステップS23では、インデックス情報生成部402は、受信されたTTS/TSパケットのヘッダに存在するランダムアクセスインジケータフラグ(random_access_indicator)が“1”であるか否かを判定する。
受信されたTTS/TSパケットが、ランダムアクセスインジケータフラグ(random_access_indicator)が設定されたTTS/TSパケットであるならば、つまり、ランダムアクセス可能なビデオフレームを運ぶためのTTS/TSパケット群内の先頭のTTS/TSパケットであるならば(ステップ23のYES)、インデックス情報生成部402は、受信されたTTS/TSパケットに対応するPESパケットのヘッダ内に存在するタイムスタンプ(PTS)を取得するための処理を実行する(ステップS24)。
ステップS24では、インデックス情報生成部402は、受信されたTTS/TSパケットのペイロードから、または受信されたTTS/TSパケットと同一のPIDを有する他の受信されたTTS/TSパケットのペイロードから、ランダムアクセス可能なビデオフレームの提示時刻を示すタイムスタンプ(PTS)を取得する。
あるいは、インデックス情報生成部402は、受信されたTTS/TSパケットと、この受信されたTTS/TSパケットと同一のPIDを有する他の受信された全てのTTS/TSパケットとを用いて、PESパケットを組み立て、このPESパケットのヘッダからタイムスタンプ(PTS)を取得してもよい。もちろん、必ずしもPESパケット全体を組み立てる必要は無い。データソース301は、受信されたTTS/TSパケットと、この受信されたTTS/TSパケットと同一のPIDを有する他の受信された1以上のTTS/TSパケットとを用いて、PESパケットのヘッダを組み立ててもよい。
インデックス情報生成部402は、ランダムアクセスインジケータフラグ(random_access_indicator)が設定されたTTS/TSパケットが格納されるバッファ401内のオフセットと、上述のPTSとのペアを、インデックス情報として生成し、このインデックス情報をインデックス情報記憶部404に格納する(ステップS25)。
インデックス情報生成部402は、サーバ21から取得された全てのTTS/TSパケットに対する解析処理が完了したか否かを判定する(ステップS26)。取得された全てのTTS/TSパケットに対する解析処理が完了するまで、ステップS22〜S27の解析処理が繰り返し実行される。
取得された全てのTTS/TSパケットに対する解析処理が完了すると(ステップS26のYES)、データソース301は、コンテンツデータの受信が完了したか否かを判定する(ステップS28)。コンテンツデータの受信が完了するまで、ステップS21〜S29の受信処理が繰り返し実行される。コンテンツデータの受信が完了すると(ステップS28のYES)、バッファリング処理が終了される(ステップS30)。
次に、図12のフローチャートを参照して、再生位置変更処理(シーク)について説明する。
例えばユーザによるスライダ35の移動操作によって、再生位置が現在再生位置と異なる位置(変更先再生位置)に変更された場合、以下のシーク制御動作が実行される。
すなわち、再生制御部306は、再生位置を変更先再生位置に変更すべきことをデマルチプレクサ302に要求する(ステップS41)。デマルチプレクサ302は、再生制御部306の制御の下、変更先再生位置に対応するデータ部をデータソース301に要求する。変更先再生位置は、変更先再生位置に対応する提示時刻(シーク先時刻)を示す。このシーク先時刻は、コンテンツデータの先頭位置からその変更先再生位置までの再生時間を示す。シーク先時刻の精度は例えばミリ秒単位で再生位置が指定できるような精度であればよい。一方、PTSによって示される提示時刻の精度は1/90KHzであり、シーク先時刻の精度よりも高精度である。このため、データソース301の制御部403は、シーク先時刻をPTSの精度に変換する処理(スケーリング処理)を実行する。またPTSはコンテンツの先頭が0とは限らないため、オフセット値を算出しPTSから減算する。オフセット値としては、コンテンツ先頭のPESパケットに設定されたPTSでもよいし、ビデオもしくはオーディオの先頭PESパケットのPTSを用いても良い。(ステップS42)。
そして、データソース301の制御部403は、インデックス情報を参照して、変換されたシーク先時刻に対応するデータ部(変更先再生位置に対応する第1データ部)がバッファ401上に存在するか否かを判定する(ステップS43、S44)。変換されたシーク先時刻が、例えば、インデックス情報内に登録されている最小PTSから最大PTSまでの範囲内に属するならば、変換されたシーク先時刻に対応するデータ部(変更先再生位置に対応する第1データ部)がバッファ401上に存在すると判定される。
この判定結果に基づき、制御部403は、インデックス情報に基づいて、変更先再生位置に対応する第1データ部をバッファ401からデマルチプレクサ302に転送する処理、または第1データ部をサーバ21からから受信する処理のいずれかを実行する。
より詳しくは、変換されたシーク先時刻に対応するデータ部(変更先再生位置に対応する第1データ部)がバッファ401上に存在するならば、制御部403は、変更先再生位置に対応する第1データ部をバッファ401から取得し、その取得した第1データ部をデマルチプレクサ302に送る(ステップS47)。上述の図8および図9の例においては、たとえば、変換されたシーク先時刻が、PTS=100000からPTS=250000までの範囲内に属するならば、変更先再生位置に対応する第1データ部(変更先再生位置に対応する、ランダムアクセス可能なビデオフレーム)がバッファ401上に存在すると判定される。もし、変換されたシーク先時刻がPTS=100000よりも大きく、且つPTS=250000未満であれば、例えば、変換されたシーク先時刻の直後のランダムアクセスポイント(PTS=250000)がシーク先位置として決定される。換言すれば、オフセット値=18000バイトに対応する格納位置に格納されたデータ部が、変更先再生位置に対応する第1データ部として決定される。そして、そのデータ部がバッファ401からリードされ、そのデータ部がデマルチプレクサ302に転送される。
一方、変換されたシーク先時刻に対応するデータ部(変更先再生位置に対応する第1データ部)がバッファ401上に存在しないならば、データソース301の制御部403は、第1データ部および第1データ部に後続するデータ部それぞれをサーバ21に要求し(ステップS45)、そしてサーバ21から第1データ部および第1データ部に後続するデータ部それぞれを受信する。データソース301の制御部403は、バッファ401に所定データ量のデータが蓄積されるのを待つ(ステップS46)。この待ち時間の間、コンテンツデータの再生は一時停止される。また、このデータ受信処理中においては、データソース301は、上述のインデックス生成処理も実行する。
バッファ401に所定データ量のデータが蓄積された後、データソース301は、データソース301は、変更先再生位置に対応する第1データ部をバッファ401から取得し、その取得した第1データ部をデマルチプレクサ302に送る(ステップS47)。
以上説明したように、本実施形態によれば、受信されたパケットが、ランダムアクセス可能なビデオフレームを運ぶためのパケット群内の先頭のパケットであることを示すランダムアクセスインジケータフラグが設定された第1パケットであるか否かが判定される。受信されたパケットが第1パケットである場合、第1パケットから、または第1パケットと同一のパケット識別子を有する他の受信されたパケットから、ランダムアクセス可能なビデオフレームの提示時刻を示すタイムスタンプ(PTS)が取得される。そして、取得された提示時刻と、第1パケットが格納されるバッファ401内の位置とを示すインデックス情報を生成される。このインデックス情報に基づき、変更先再生位置に対応するデータ部がバッファ401上に存在するか否かを判定することができる。
よって、インデックス情報を含まないコンテンツデータをストリーミング再生する場合であっても、そのコンテンツデータを受信しながら、そのコンテンツデータに対応するインデックス情報を生成することができる。したがって、コンテンツデータの現在再生位置を別の再生位置に変更するためのシーク処理をこのインデックス情報に基づいて実行することができる。これにより、シーク処理のレスポンスを向上することができる。
なお、図10〜図12のフローチャートで説明した本実施形態の処理手順は全てソフトウェアによって実行することができる。このため、この処理手順を実行するプログラムを格納したコンピュータ読み取り可能な記憶媒体を通じてこのプログラムを通常のコンピュータにインストールして実行するだけで、本実施形態と同様の効果を容易に実現することができる。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
10…コンピュータ、21…コンテンツサーバ、202…プレーヤアプリケーションプログラム、301…データソース、302…デマルチプレクサ、303…ビデオデコーダ、304…オーディオデコーダ、305…レンダラ、306…再生制御部、401…バッファ、402…インデックス情報生成部、403…制御部。

Claims (7)

  1. コンテンツデータのストリームを構成するパケット群をサーバから受信しながら前記コンテンツデータを再生する電子機器であって、
    前記受信されたパケット群を格納するバッファと、
    前記バッファに格納されているパケット群をデコードして前記パケット群に対応するデータを再生する再生手段と、
    受信されたパケットが、ランダムアクセス可能なビデオフレームを運ぶためのパケット群内の先頭のパケットであることを示すランダムアクセスインジケータフラグが設定された第1パケットであるか否かを判定し、前記受信されたパケットが前記第1パケットである場合、前記第1パケットから、または前記第1パケットと同一のパケット識別子を有する他の受信されたパケットから、前記ランダムアクセス可能なビデオフレームの提示時刻を示すタイムスタンプを取得し、前記提示時刻と、前記第1パケットが格納される前記バッファ内の位置とを示すインデックス情報を生成するインデックス生成手段と、
    前記再生手段によって要求される変更先再生位置に対応する第1データ部が前記バッファ上に存在するか否かを前記インデックス情報に基づいて判定し、前記判定結果に基づいて、前記第1データ部を前記バッファから前記再生手段に転送する処理または前記第1データ部を前記サーバから受信する処理のいずれかを実行する制御手段とを具備する電子機器。
  2. 前記インデックス生成手段は、前記第1パケットと、前記第1パケットと同一のパケット識別子を有する他の受信された1以上のパケットとを用いて、前記ランダムアクセス可能なビデオフレームを運ぶためのパケッタイズドエレメンタリーストリーム(PES)パケットのヘッダを組み立て、前記組み立てたヘッダから、前記ランダムアクセス可能なビデオフレームの提示時刻を示す前記タイムスタンプを取得するように構成されている請求項1記載の電子機器。
  3. 前記コンテンツデータのストリームを構成するパケット群はトランスポートストリーム(TS)パケット群である請求項1記載の電子機器。
  4. 前記サーバは、ランダムアクセス可能なビデオフレームを運ぶためのパケット群内の先頭のパケットに前記ランダムアクセスインジケータフラグを設定するように構成されている請求項1記載の電子機器。
  5. コンテンツデータのストリームを構成するパケット群をサーバから受信しながら前記コンテンツデータを再生する再生制御方法であって、
    前記受信されたパケット群をバッファに格納し、
    前記バッファに格納されているパケット群をデコードして前記パケット群に対応するデータを再生し、
    前記受信されたパケットが、ランダムアクセス可能なビデオフレームを運ぶためのパケット群内の先頭のパケットであることを示すランダムアクセスインジケータフラグが設定された第1パケットであるか否かを判定し、
    前記受信されたパケットが前記第1パケットである場合、前記第1パケットから、または前記第1パケットと同一のパケット識別子を有する他の受信されたパケットから、前記ランダムアクセス可能なビデオフレームの提示時刻を示すタイムスタンプを取得し、前記提示時刻と、前記第1パケットが格納される前記バッファ内の位置とを示すインデックス情報を生成し、
    再生位置変更要求によって要求される変更先再生位置に対応する第1データ部が前記バッファ上に存在するか否かを前記インデックス情報に基づいて判定し、
    前記判定結果に基づいて、前記第1データ部を前記バッファから前記再生手段に転送する処理または前記第1データ部を前記サーバから受信する処理のいずれかを実行する再生制御方法。
  6. 前記インデックス情報を生成することは、
    前記第1パケットと、前記第1パケットと同一のパケット識別子を有する他の受信された1以上のパケットとを用いて、前記ランダムアクセス可能なビデオフレームを運ぶためのパケッタイズドエレメンタリーストリーム(PES)パケットのヘッダを組み立てることと、
    前記組み立てたヘッダから、前記ランダムアクセス可能なビデオフレームの提示時刻を示す前記タイムスタンプを取得することとを含む請求項5記載の再生制御方法。
  7. コンピュータに、コンテンツデータのストリームを構成するパケット群をサーバから受信しながら前記コンテンツデータを再生させるプログラムであって、
    前記受信されたパケット群をバッファに格納する手順と、
    前記バッファに格納されているパケット群をデコードして前記パケット群に対応するデータを再生する手順と、
    前記受信されたパケットが、ランダムアクセス可能なビデオフレームを運ぶためのパケット群内の先頭のパケットであることを示すランダムアクセスインジケータフラグが設定された第1パケットであるか否かを判定する手順と、
    前記受信されたパケットが前記第1パケットである場合、前記第1パケットから、または前記第1パケットと同一のパケット識別子を有する他の受信されたパケットから、前記ランダムアクセス可能なビデオフレームの提示時刻を示すタイムスタンプを取得し、前記提示時刻と、前記第1パケットが格納される前記バッファ内の位置とを示すインデックス情報を生成する手順と、
    再生位置変更要求によって要求される変更先再生位置に対応する第1データ部が前記バッファ上に存在するか否かを前記インデックス情報に基づいて判定する手順と、
    前記判定結果に基づいて、前記第1データ部を前記バッファから前記再生手段に転送する処理または前記第1データ部を前記サーバから受信する処理のいずれかを実行する手順とを実行させるプログラム。
JP2011217333A 2011-09-30 2011-09-30 電子機器および再生制御方法 Active JP5106671B1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2011217333A JP5106671B1 (ja) 2011-09-30 2011-09-30 電子機器および再生制御方法
US13/525,810 US20130084054A1 (en) 2011-09-30 2012-06-18 Electronic apparatus and playback control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011217333A JP5106671B1 (ja) 2011-09-30 2011-09-30 電子機器および再生制御方法

Publications (2)

Publication Number Publication Date
JP5106671B1 true JP5106671B1 (ja) 2012-12-26
JP2013078022A JP2013078022A (ja) 2013-04-25

Family

ID=47528544

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011217333A Active JP5106671B1 (ja) 2011-09-30 2011-09-30 電子機器および再生制御方法

Country Status (2)

Country Link
US (1) US20130084054A1 (ja)
JP (1) JP5106671B1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016136676A (ja) * 2015-01-23 2016-07-28 日本放送協会 受信装置、バッファ管理方法、及びプログラム

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106250468B (zh) * 2016-07-29 2019-07-19 捷开通讯(深圳)有限公司 环境信息的存储方法、回放方法、存储回放系统及终端
KR102494584B1 (ko) 2016-08-18 2023-02-02 삼성전자주식회사 디스플레이 장치 및 그 컨텐츠 디스플레이 방법

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3351757B2 (ja) * 1999-01-27 2002-12-03 松下電器産業株式会社 ディジタル記録再生装置
JP2000312342A (ja) * 1999-02-23 2000-11-07 Canon Inc 記録再生装置、方法、記録装置、方法及びコンピュータ読み取り可能な記憶媒体
US20030093800A1 (en) * 2001-09-12 2003-05-15 Jason Demas Command packets for personal video recorder
JP2003230089A (ja) * 2002-01-31 2003-08-15 Toshiba Corp 情報記憶媒体及び情報記録装置
US7231516B1 (en) * 2002-04-11 2007-06-12 General Instrument Corporation Networked digital video recording system with copy protection and random access playback
CN101677383B (zh) * 2004-04-28 2013-05-29 松下电器产业株式会社 流生成装置和方法,流再现装置、方法和系统,流记录方法
JP4541962B2 (ja) * 2005-04-25 2010-09-08 パナソニック株式会社 多重化装置、再生装置
US20070154185A1 (en) * 2006-01-04 2007-07-05 Wade Wan Method and system for transcoding video information to enable digital video recording (DVR) trick modes
WO2008023967A1 (en) * 2006-08-25 2008-02-28 Lg Electronics Inc A method and apparatus for decoding/encoding a video signal
JP2008171566A (ja) * 2008-03-31 2008-07-24 Sony Corp データ再生装置及びデータ記録装置、並びにデータ再生方法及びデータ記録方法
US8301008B2 (en) * 2010-06-09 2012-10-30 Eldon Technology Limited Apparatus, systems and methods for storing program events in an enhanced history buffer

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016136676A (ja) * 2015-01-23 2016-07-28 日本放送協会 受信装置、バッファ管理方法、及びプログラム

Also Published As

Publication number Publication date
US20130084054A1 (en) 2013-04-04
JP2013078022A (ja) 2013-04-25

Similar Documents

Publication Publication Date Title
US10567809B2 (en) Selective media playing method and apparatus according to live streaming and recorded streaming
US9930308B2 (en) Platform-agnostic video player for mobile computing devices and desktop computers
CN108076364B (zh) 自适应媒体流传输设备和媒体服务设备
US8473628B2 (en) Dynamically altering playlists
CN108337545B (zh) 用于同步再现视频和音频的媒体重放设备和媒体服务设备
CN108337560B (zh) 用于在web浏览器上播放媒体的媒体重放设备和媒体服务设备
US8244897B2 (en) Content reproduction apparatus, content reproduction method, and program
JP2009044416A (ja) コンテンツ再生装置、コンテンツ再生方法、プログラム、およびコンテンツ再生システム
BR112013004857B1 (pt) Método implementado por computador e sistema para controlar, usando um dispositivo móvel, apresentação de conteúdo de mídia realizado por um cliente de mídia, e método implementado por computador para apresentar conteúdo de mídia a partir de um cliente de mídia em um dispositivo de exibição
JP5282383B2 (ja) コンテンツ再生装置、コンテンツ再生方法、プログラム、およびコンテンツ再生システム
JP2010232760A (ja) 画像供給装置、画像供給システム、画像供給方法、プログラム、及び記録媒体
US9055272B2 (en) Moving image reproduction apparatus, information processing apparatus, and moving image reproduction method
JP5106671B1 (ja) 電子機器および再生制御方法
JP5143295B1 (ja) 電子機器及びインデックス生成方法
KR20140117889A (ko) 클라이언트 장치, 서버 장치, 멀티미디어 리디렉션 시스템 및 그 방법
JP2011009949A (ja) 映像処理装置及び映像処理方法
JP5552650B2 (ja) 電子機器および再生制御方法
KR101428472B1 (ko) 클라우드 스트리밍 서비스 제공을 위한 장치 및 이를 위한 방법
JP2006339980A (ja) 映像再生装置
JP2017130957A (ja) 送信装置、送信方法、再生装置、及び再生方法
JP5092028B2 (ja) 映像処理装置及び映像処理方法
CN112887755A (zh) 用于播放视频的方法和装置
WO2015072020A1 (ja) 情報処理装置および情報処理方法
EP2549772A2 (en) Electronic apparatus and playback control method
JP2012060467A (ja) 映像コンテンツ再生装置、映像コンテンツ再生方法、及びコンピュータプログラム

Legal Events

Date Code Title Description
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: 20120904

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: 20121002

R151 Written notification of patent or utility model registration

Ref document number: 5106671

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

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

Free format text: PAYMENT UNTIL: 20151012

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313121

Free format text: JAPANESE INTERMEDIATE CODE: R313117

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350