JP2013536611A - Httpライブストリーミングと両立できるようにストリーミングメディアプログラムおよび目標とされた広告を供給する方法および装置 - Google Patents

Httpライブストリーミングと両立できるようにストリーミングメディアプログラムおよび目標とされた広告を供給する方法および装置 Download PDF

Info

Publication number
JP2013536611A
JP2013536611A JP2013518502A JP2013518502A JP2013536611A JP 2013536611 A JP2013536611 A JP 2013536611A JP 2013518502 A JP2013518502 A JP 2013518502A JP 2013518502 A JP2013518502 A JP 2013518502A JP 2013536611 A JP2013536611 A JP 2013536611A
Authority
JP
Japan
Prior art keywords
media program
version
advertisement
versions
segment
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.)
Granted
Application number
JP2013518502A
Other languages
English (en)
Other versions
JP5833114B2 (ja
Inventor
ホルト、ウイリアム・ゼッド.
ウ、シナン
リ、エデン・エス.
クーデュリエ、バプティステ
グタリン、アレキサンダー・ブイ.
Original Assignee
フル・エルエルシー
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
Priority claimed from US12/950,563 external-priority patent/US9721254B2/en
Application filed by フル・エルエルシー filed Critical フル・エルエルシー
Publication of JP2013536611A publication Critical patent/JP2013536611A/ja
Application granted granted Critical
Publication of JP5833114B2 publication Critical patent/JP5833114B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • 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/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/23439Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions
    • 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/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25866Management of end-user data
    • H04N21/25891Management of end-user data being end-user preferences
    • 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/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26258Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for generating a list of items to be played back in a given order, e.g. playlist, or scheduling item distribution according to such list
    • 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/81Monomedia components thereof
    • H04N21/812Monomedia components thereof involving advertisement data
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Development Economics (AREA)
  • Accounting & Taxation (AREA)
  • Computer Graphics (AREA)
  • Economics (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

広告にユーザデバイスに伝送されたメディアプログラムを付す方法、装置、製品およびメモリ構造を説明する。メディアプログラムおよび広告の異なるバージョンを生成およびセグメント化して、メディアプレーヤに個別に伝送すると、ユーザ人口統計および他の要素に従ってユーザへの提示に向けて異なる広告を選択することができる。

Description

関連出願に対する相互参照
本出願は、William Z.Holt、Xinan Wu、Eden Li、Baptiste CoudurierおよびAlexander V.Gutarinにより2010年6月28日に出願された米国特許仮出願第No.61/359,319号の利益を主張する、William Z.Holt、Xinan Wu、Eden Li、Baptiste CoudurierおよびAlexander V.Gutarinにより2010年11月19日に出願された、「HTTPライブストリーミングと両立できるようにストリーミングメディアプログラムおよび目標とされた広告を供給する方法および装置」(METHOD AND APPARATUS FOR PROVIDING STREAMING MEDIA PROGRAMS AND TARGETED ADVERTISEMENTS COMPATIBLY WITH HTTP LIVE STREAMING)という名称の米国特許出願第12/950,563号の利益を主張するものであり、これらの出願のいずれも、参照により本明細書に組み入れられる。
本出願は、以下の同時係属特許出願にも関するものであり、これらの特許のいずれも、参照により本明細書に組み入れられる。
Robert M.Wong、Charles B.ReevesおよびEugene Chan−Huai Weiにより、本出願と同一日付にて出願された「メディアプログラムの直観的ナビゲーションのための方法および装置」(METHOD AND APPARATUS FOR INTUITIVE NAVIGATION OF A MEDIA PROGRAM)という名称の、出願第61/359,309号、および
Robert M.WongおよびEden Liにより、本出願と同一日付にて出願された「プラットフォーム全体にわたって休止された再生を同期化する方法および装置」(METHOD AND APPARATUS FOR SYNCHRONIZING PAUSED PLAYBACK ACROSS PLATFORMS)という名称の出願第61/359,258号
本発明は、ユーザライブストリーミングプロトコルに即してストリーミングメディアを供給するシステムおよび方法に関し、特に、ターゲット式広告(directed advertising)を上記のストリーミングメディア内に含むシステムおよび方法に関する。
メディアプログラムの提供および再生は、過去10年でかなり変わった。以前は、メディアプログラム(音声、映像または両方とも含む場合がある)は、アナログ放送(従来の衛星またはケーブル)により、または、映画館へのフィルムの配給により提供されていた。
これらの従来の提供および再生手段は、デジタル技術の到来後も相変わらず使用されている。しかしながら、デジタル技術は、メディアプログラムの提供および再生に大きな影響を与えてきた。
第1に、デジタル技術により、デジタルビデオテープレコーダ(DVR)の使用が可能となった。DVRは、標準的なアナログビデオカセットレコーダ(VCR)と機能が似ているが、ライブ休止、別のプログラムを再生中に1つのプログラムを録画することができること、およびDVR機能性と電子プログラムガイドとの一体化(メディアプログラム録画をかなり前もって予定することができるように)を含め、いくつかの更なる便利な機能がある。
第2に、デジタル技術により、インターネットを介したメディアプログラムの提供および再生が許可となり、信号処理が向上し、高速インターネットアクセス(例えばDSL、ファイバおよび/または衛星)を使用する世帯がますます増えている。これらの提供および再生の方法は、従来の手段と競合するようになった。インターネットを介したメディアプログラムの提供は、簡単なダウンロード、プログレッシブダウンロードまたはストリーミングにより行われる場合がある。
プログレッシブダウンロード(Progressive Downloading)
プログレッシブダウンロードについては、メディアプログラムを有するメディアファイルは、ダイヤルアップ、DSL、ADSL、ケーブル、Tlまたは他の高速接続でインターネットを介してダウンロードされる。当該のダウンロードは、一般的にインターネットを介してウェブサーバにより実行される。
簡単なダウンロードでは、任意の便利な順番で複数バイトのメディアファイルがダウンロードされ、一方、プログレッシブダウンロードでは、ファイルの始めの複数バイトをダウンロードし、最終バイトまで連続しておよび逐次的にファイルをダウンロードし続ける。プログレッシブダウンロード中の任意の特定の時期では、ファイルの部分が、すぐには再生に利用可能ではない場合がある。一部の状況においては、最初に、ファイル全体をダウンロードしなければならず、その後に、メディアプレーヤが再生を開始することができる。他のプログレッシブダウンロード状況においては、メディアプレーヤは、ファイルの開始の十分な量がダウンロードされると再生を開始することができる。メディアプレーヤは、何らかの形の再生をサポートするのに十分な情報をダウンロードしなければならず、その後、再生を行うことができる。プログレッシブダウンロードされたメディアファイルの再生は、遅いインターネット接続により遅延されることが多く、途切れ途切れであることも多く、および/または、ほんの数秒後に停止する可能性が高い。プログレッシブダウンロードされるメディアプログラムが完全にダウンロードされると、その後の使用のためにエンドユーザコンピュータ上に記憶される場合がある。
プログレッシブダウンロードの短所の1つは、データを伝送するエンティティ(ウェブサーバ)は、単にできるだけ速くクライアントにデータをプッシュ配信するだけであるという点である。映像を「ストリーミングしている」ように見えるかもしれないが、この理由としては、多くのメディアプレーヤのプログレッシブダウンロード能力により、適当な量のデータがダウンロードされるとすぐには再生が可能であるからである。しかしながら、ユーザは、ファイル全体がウェブサーバにより配信されるまでファイルの終わりまで早送りすることができない。プログレッシブダウンロードに関する別の短所は、ウェブサーバは、ビデオファイルのデータ転送速度を考慮に入れないという点である。それゆえに、ネットワーク帯域幅がビデオファイルにより必要とされるデータ転送速度を下回る場合、ユーザは、しばらく待たなければならず、その後に、再生が始まることがある。再生速度がデータ伝達速度を上回る場合、再生が、更なるデータがダウンロード中にしばらく休止される場合があり、視聴経験が中断される。しかしながら、映像再生品質は、潜在的により高いデータ転送速度のために再生が行われたときに良くなる場合がある。例えば、100kbpsの動画ファイルを56kbpsのモデム上に配信することができる場合、映像は100kbpsの速度にて提示されることになる、しかし、更なる映像データがダウンロード中に再生が休止される期間がある場合がある。映像データは、一般的に、全体が一時ファイルとしダウンロードおよび記憶される。
Webサーバは、TCP(伝送制御プロトコル)に加えてHTTP(ハイパーテキスト転送プロトコル)を一般的に使用して、ネットワークでファイルを転送する。ネットワーク上でのデータパケットの転送を制御するTCPは、速度でなくデータ配信の保証のために最適化される。したがって、ブラウザがデータがなくなっていると感知した場合、再送要求が発行されてデータが再送される。配信エラーが多いネットワークにおいては、再送要求は、大量の帯域幅を消費する恐れがある。TCPが適当なデータの効率的な配信または帯域幅制御(むしろ全てのデータの配信の保証)に向けて設計されていないことから、全ての用途において映像データの配信に好ましいというわけではない。
ストリーミング
ストリーミングでは、メディアプレーヤに連続的にメディアコンテンツを配信し、メディア再生が、同時に行われる。エンドユーザは、コンテンツプロバイダにより配信されると直ちにメディアを再生することができる。従来のストリーミング技法は、1組のエンドユーザにデータのストリームを配信する単一のプロバイダから発するものである。多くの視聴者に単一のストリームを配信するために高帯域および中央演算装置(CPU)電力が必要であり、プロバイダの所要の帯域幅は、エンドユーザの数が増加するにつれて増加する。
プログレッシブダウンロードとは異なり、ストリーミングメディアは、オンデマンドでまたはライブで配信することができる。プログレッシブダウンロードでファイル全体をダウンロードするか、または、開始時に再生を開始するのに十分なファイル全体の量をダウンロードすることが必要である場合、ストリーミングにより、ファイル内の任意の地点にて即時の再生が可能である。エンドユーザは、再生を開始するためにメディアファイルにざっと目を通すか、または、メディアファイルにおいて任意の点に再生を変更するかもしれない。したがって、エンドユーザは、ファイルが漸進的にダウンロードされるのを待つ必要はない。一般的に、ストリーミングメディアは、高帯域容量を有する2、3の専用サーバから配信される。
ストリーミングメディアサーバは、動画ファイルの要求を受理し、かつ、それらのファイルのフォーマット、帯域幅および構造に関する情報とともに、動画ファイルを再生するために必要な速度にて、映像を再生するために必要なデータ量のみを配達する専用デバイスである。ストリーミングメディアサーバは、伝送帯域幅およびメディアプレーヤ容量に対応する場合がある。ウェブサーバとは異なり、ストリーミングメディアサーバは、映像が再生されるとき、変化するネットワーク状態に適応するために制御メッセージおよびデータメッセージを使用してユーザコンピュータと通信する。これらの制御メッセージは、早送り、早戻し、休止、ファイルの特定部分への移動などのトリックプレイ機能のコマンドを含む可能性がある。ストリーミングメディアサーバは必要に応じてのみおよび必要される速度にて映像データを伝送することから、供されるストリームの数の正確な制御を維持することができる。プログレッシブダウンロードの場合とは異なり、視覚者は、データ転送速度が劣るメディア伝送媒体でデータ転送速度が速い映像を見ることができない。しかしながら、ストリーミングメディアサーバは、(1)ユーザが動画ファイルにランダムアクセスすることができ、(2)誰がどんな動画プログラムを見ているか、および、どれくらい見ているかのモニタリングを可能にし、(3)視聴経験をサポートするために必要とされるデータ量のみが伝送されることからより効率的に伝送帯域幅を使用し、(4)視覚者のコンピュータ内に動画ファイルを記憶しない(ファイルは、最終的にメディアプレーヤにより廃棄され、この結果、コンテンツのより多くの制御が可能である)。
ストリーミングメディアサーバは、HTTPおよびTCPを使用してビデオストリームを配信する場合があるが、通常、RSTP(リアルタイムストリーミングプロトコル)およびUDP(ユーザデータグラムプロトコル)を使用する。これらのプロトコルでは、制御メッセージを許可してオーバーヘッドを低減することにより帯域幅を節約する。TCPとは異なり、データが伝送中になくなったとき、UDPは、再送された要求を伝送しない。その代わりに、サーバは、データを送り続ける。ストリーミングメディアサーバは、ライブウェブキャストを配信することもでき、かつ、マルチキャストすることもでき、これにより、2つ以上のクライアントが、単一のストリームに同調することができ、この結果、帯域幅が節約される。
一般的に、プログレッシブダウンロードされたメディアは、再生よりも速い速度にてユーザコンピュータに伝送される。メディアプログラムプレーヤは、このデータをバッファリングし、かつ、通常「プログレスバー(progress bar)」の一部としてインディケータを提示することによりメディアプログラムのどれだけがバッファリングされたか示す場合がある。ユーザが、制御を選択してプログレスバーに沿って異なる場所に移動させることにより既にバッファリングされたプログラム内の任意の地点に行くことを可能にする制御が行われることが多い。これにより、ユーザは、ランダムにメディアプログラムの任意のバッファリングされた部分にアクセスすることができる。
ストリーミングメディアプレーヤは、メディアプログラム内の任意の地点にランダムアクセスをすることができるようにするためにバッファリングに依存するものではない。その代わりに、これは、メディアプレーヤからストリーミングメディアサーバに伝送された制御メッセージを使用して達成される。
モバイルデバイス
携帯電話、iPhone、個人用携帯情報端末(PDA)、ラップトップコンピュータなどのモバイルメディアプログラム再生デバイスにメディアプログラムを伝送したいという願望がある。デバイス当該のモバイルデバイスへのメディアプログラムの伝送には更なる問題点があり、この理由は、通信チャネルの帯域幅が一般的に低減され、かつ、デバイス自体の処理電力が一般的に普通のコンピュータまたは専用デバイスの処理電力を下回るからである。
当該のデバイスにメディアプログラム(ライブメディアプログラムを含む)を伝送する各種伝送プロトコルが既に開発されている。ライブメディアプログラムの伝送は、当該のストリームの長さは限りがないので更に一層困難だがやりがいのあるものとなる可能性がある。1つの当該の伝送プロトコルは、http://tools.ietf.org/HTML/draft−pantos−http−live−streamingで、かつ、米国特許仮出願第61/359,319号で説明するように、IETF(インターネット技術タスクフォース)トラストのHTTPライブストリーミングプロトコルであり、この出願は、参照により本明細書に組み入れられる。
広告の組み込み
メディアプログラムの配信は、様々なモデルに基づいて達成することができる。1つのモデルにおいては、ユーザはメディアプログラムの視聴の代金を支払う(例えば、ペイパービューサービスを使用して)。開始直後に放送テレビにより広く採用された別のモデルにおいては、スポンサは、プログラム提示中にまたはプログラムの提示の近くで広告を提示する権利と引き換えにメディアプログラムの提示の代金を支払う。
広告モデルは、視覚者が自分にとって興味深い広告が提示された場合に最も良好に機能する。これまでは、広告主は、当該の人口統計により見られそうだというメディアプログラム中に広告が確実に放映されるようにすることにより自社製品に興味がある視聴者に広告の狙いを定めようとするしかできなかった。しかしながら、デジタル技術の出現およびインターネットを介したメディアプログラムの配信により、広告を特定のユーザにより具体的に方向づけることができる。例えば、登録ユーザは、男性25〜30才、未婚とわかる場合がある。他の情報(例えば、視聴者がどんなメディアプログラムをこれまで見てきたかまたはどんな広告にこれまで前向きな反応があったか)とともに、これらの人口統計を用いてユーザにどんな広告を見せたらよいか判断することができる。
スループット
HTTP、TCP、RTSP、UDPを介してかまたはライブストリーミングを介してかを問わず、メディアプログラムを送受信するために使用される通信チャネルのスループットは、非常に可変であり、かつ、予測し難い。したがって、メディアサーバは、通常は各メディアプログラムのいくつかの異なるバージョンを記憶し、各々の異なるバージョンは、異なる通信チャネルスループットに向けて最適化されており、適切なバージョンが、通信チャネルスループットに基づいて送受信に向けて選択される。
しかしながら、ストリーミングされたメディアプログラムのビット伝送速度は、時間的に一定でなくて経時的に大きく変わる。通信チャネルスループットも、経時的に変わる場合がある。これらの時間的変動により、通信チャネルの帯域幅は、メディアプログラムの各部には十分かまたは必要以上であるが、他の部分には不十分である状況が生じる。当該の変動により、メディアプログラムプレーヤは、適当な再生を確保するために、メディアプログラムのバージョン間で切り替わる。当該の切り替えは、通常は広告に関する配慮を問わず行われ、したがって、結果として、再生中断または途切れが発生することがある。したがって、当該の問題を軽減または排除するシステム、装置および方法に対する要望がある。本発明は、この要望を満たすものである。
先述した要件に対応するために、広告が中に含まれたメディアプログラムをストリーミングする方法、装置、製品およびメモリ構造体を開示する。一実施形態においては、メディアプログラムプロバイダが、各々が他と異なる提示スループットに向けて生成される複数のメディアプログラムバージョンを生成し、メディアプログラムバージョンの各々複数のメディアプログラムセグメントにセグメント化し、各々がメディアプログラムバージョンの1つのみに関連し、かつ、関連のメディアプログラムバージョンのデータ転送速度での転送に向けて生成される、複数の広告バージョンを生成し、広告バージョンの各々を複数の広告セグメントにセグメント化する。メディアプログラムプロバイダは、その後、メディアプログラム識別子を有するメディアプログラム要求をメディアプログラムプレーヤから受信して、各々が複数のメディアプログラムバージョンの1つに関連する複数のアドレスを備える、第1のメッセージから生成されたマスタプレイリストをメディアプログラムプレーヤに伝送し、セグメントプレイリストをメディアプログラムプレーヤに伝送する。一実施形態においては、セグメントプレイリストは、メディアプログラムバージョンの1つに関連し、かつ、メディアプログラムバージョンの1つに関連した複数のメディアプログラムセグメントの各1つに関連したアドレスと、メディアプログラムバージョンの1つに関連した広告バージョンに関連した複数の広告セグメントの各1つに関連したアドレスとを有する時間的に順序づけられたリストを備える。
同様の参照番号が全体にわたって対応する部分を表す図面をここで参照すると、
図1は、例示的なメディアプログラムシステムを示す図である。 本発明を実行するために使用することができる例示的なユーザデバイスを示す図である。 図3は、ユーザへの提示に向けてメディアプログラムおよび広告に配信するために使用することができるコンテンツ配信サブシステムおよび最重要の作業を示す図である。 図4は、メディアプログラムおよび広告の異なるバージョンのセグメント化を示す図である。 図5は、変動するスループットによる通信チャネルおよびユーザデバイスの対象となるメディアプログラムの提示および広告セグメントを示す図である。 図6は、ユーザザデバイスが通信提示スループット変化に対応しかつそのうえ異なるユーザを対象とした異なる広告の挿入に許可しながらどのようにしてメディアプログラムセグメントを受信することができるかを示す図である。 図7は、利用可能な提示スループットの変化に対応しながらユーザデバイスがどのようにしてメディアプログラムセグメントおよび目標とされた広告を受信することができるかを示す図である。 図8Aは、メディアプログラムおよび広告をストリーミングするために使用することができる例示的方法の諸ステップを示す図を示す。 図8Bは、マスタプレイリストを生成するために使用することができる例示的な諸ステップを示す図である。 図9は、例示的なマスタプレイリストを示す図である。 図10は、セグメントプレイリストの一実施形態を示す図である。
以下の説明においては、本明細書の一部を成し、かつ、例示として示される添付図面、本発明のいくつかの実施形態を参照する。他の実施形態を利用される場合があり、構造上の変更が本発明の範囲から逸脱することなく行われる場合があることが理解される。
図1は、例示的なメディアプログラムシステム100を示す図である。図示する実施形態においては、システム100はインターネットなどの通信ネットワーク104に通信上結合され、かつ、各々が1つまたは複数のソースメディアプログラムデータベース124A、124B、に通信上結合された1つまたは複数のソースビデオサーバ122A、122Bを有する1つまたは複数のメディアプログラムソース120A、120Bを備えることができる。メディアプログラムシステム100は、更に、通信ネットワーク104に通信上結合され、かつ、1つまたは複数のプロバイダビデオサーバ112および1つまたは複数のプロバイダデータベース114を有するメディアプログラムプロバイダ110を備える。一実施形態においては、メディアプログラムプロバイダ110は、ビデオオンデマンドおよび/またはストリーミングメディアプログラムプロバイダである。
メディアプログラムシステム100は、コンピュータなどの第1のユーザデバイス102Aまたは携帯電話などの第2のユーザデバイス102B(以下あるいはユーザデバイス120という)にメディアプログラムを伝送する。この伝送は、メディアプログラムプロバイダ110から直接的なものとすることができるか、または、メディアプログラムプロバイダ110は、ポータルとして動作することができ、メディアプログラム自体でなく(その代わりにメディアプログラムソース120により供給される)、メディアプログラムソース120Aおよび120Bから入手可能であるメディアプログラムに対するインターフェースとなる。
第1の場合においては、メディアプログラムプロバイダ110は、メディアプログラムソース120(www.fox.comまたはwww.nbc.comなど)からのメディアプログラムを使用許諾し、当該のプログラムのメタデータは、通常、同様にメディアプログラムソース120からメディアプログラムプロバイダ110にも供給される。当該のメタデータは、使用に向けてメディアプログラムプロバイダのデータベース114により検索することができる。補助メタデータが必要とされる場合、以下で更に説明するように、メディアプログラムプロバイダ110およびメディアプログラムソース120から独立しているメタデータソース130から取得することができる。
第2の場合においては、メディアプログラムは、メディアプログラムソース120のサーバから直にユーザデバイス102にストリーミングされる。メディアプログラムがメディアプログラムソース120から直にストリーミングされるとき、メディアプログラムソース120により供給されたメタデータは不十分であることが当てはまることが多い。このような場合、補助メタデータは、独立したメタデータソース130(www.tv.comまたはwww.imdb.comなど)または他の第三者ソースから取得することができる。この状況においては、メディアプログラムプロバイダ110の役割は、ユーザ132に利用可能なメディアプログラムのリストを供給するポータル、かつ、当該のプログラムを見つけるために、かつ、視聴するために調べるインターフェースの役割である。
メディアプログラムおよびメタデータは、インターネットなどの通信ネットワーク104を介して、または、補助(および/または専用)通信リンク134を介して取得することができる。当該の情報は、インターネットのクローリングにより(例えば、秩序立った自動的な方法でワールドワイドウェブを閲覧するプログラムまたは自動スクリプトを使用して)取得することができる。
ユーザデバイス102を使用して、リモートユーザ132は、メディアプログラム(ビデオオンデマンドおよび/または映像配信サービスを含む)を取得するために、かつ、プロバイダメディアプログラムデータベース114を調べて当該のメディアプログラムを見つけるために通信ネットワーク104を使用してメディアプログラムプロバイダ110と通信することができる。
メディアプログラムシステム100は、メディアプログラムプロバイダ110またはメディアプログラムソース120により供給されたメディアプログラムに関連してリプレイされる広告を供給する1つまたは複数の広告プロバイダ140を備えることができる。図示する実施形態においては、広告プロバイダ140は、関連のかつ通信上結合された広告プロバイダデータベース144に通信上結合された広告プロバイダサーバ142を含む。
広告は、インターネット104、専用リンク146を介して、または、広告を有するメモリ記憶デバイスの物理的交換により広告プロバイダ140からメディアプログラムプロバイダ110に供給することができる。当該の広告は、妥当な時間にてユーザデバイス102に供給し、かつ、メディアプログラムプロバイダ110により記憶して妥当な時間にユーザデバイス102にメディアプログラムとともにストリーミングまたはダウンロードすることができる。
一実施形態においては、広告は、メディアプログラムプロバイダ110からのストリーミングまたはダウンロードされた映像と一体化される。別の実施形態においては、広告は、メディアプログラムと一体化されず、その代わりにメディアプログラムとは別々にユーザデバイス102に伝送され、かつ、いつ各広告が提示されるべきかを示すインデックスを使用して妥当な時間にて再生される。例えば、広告は、インデックスを付して、かつ、ユーザデバイス102にストリーミングまたはダウンロードすることができ(メディアプログラムプロバイダ110または広告プロバイダ140から)、当該の広告は、メディアプログラム内の対応するインデックスにより示された時間にてユーザ132に再生することができる。
図2は、ユーザデバイス102、サーバ112、122、および142およびデータベース114、124、および144を含め、本発明の要素を実行するために使用することができる例示的なコンピュータシステム202を示す。システム202は、汎用ハードウェアプロセッサ204Aおよび/または専用ハードウェアプロセッサ204B(以下あるいは集合的にプロセッサ204という)およびランダムアクセスメモリ(RAM)などメモリ206を備える。コンピュータ202は、キーボード214などの入出力(I/O)デバイス、マウス、タッチパッドまたはトラックボールなどのポインティングデバイス216およびプリンタ228を含め、他のデバイスに結合することができる。
一実施形態においては、システム202は、オペレーティングシステム(OS)208に制御されたコンピュータプログラム210により定義された命令を実行する汎用プロセッサ204Aにより動作する。コンピュータプログラム210および/またはオペレーティングシステム208は、メモリ206内に記憶することができ、かつ、入力およびコマンドを受理するために、かつ、コンピュータプログラム210およびオペレーティングシステム208により定義された当該の入力およびコマンドおよび命令に基づいて、出力および結果を供給するためにユーザ132および/または他のデバイスとインターフェースすることができる。
出力/結果は、ディスプレイ222上で提示するか、または、提示または更なる処理またはアクションに向けて別のデバイスに供給することができる。通常は、ディスプレイ222は、ユーザ132に画像を集合的に提示するために状態を変更する複数の絵素(画素)を備える。例えば、ディスプレイ222は、入力およびコマンドへのコンピュータプログラム210の命令の適用からプロセッサ204および/またはオペレーティングシステム208により生成されたデータまたは情報に応答してディスプレイ上で画像の一部を形成するために不透明または半透明の状態に変わる液晶を各々が有する複数の別々にアドレス指定可能な画素を有する液晶ディスプレイ(LCD)を備えることができる。同様に、プラズマディスプレイは、異なる色蛍光体を各々が有する3つの別々のサブピクセルセルを有する画素を含む。色は、共に混ざり合って画素に示す色を作成する。セルを流れる電流のパルスは、入力およびコマンドに応答してコンピュータプログラムおよび/またはオペレーティングシステム208の命令の適用からプロセッサにより生成されるデータに従って変えられ、画素により供給される光の強度が変わる。また、同様に、光線管(CRT)が表示する陰極は、各画素が通常はアパーチャグリルからの点または線により表されるサブピクセルを有する複数の画素を含む。各点または線は、電子銃から電子により当たられるときに光を発する蛍光体被覆を含む。コンピュータプログラムおよび/またはオペレーティングシステム208の命令の適用からプロセッサにより生成されたデータに応答して、および、入力およびコマンドに応答して、電子銃により出射された電子は、点または線にてステアリングされ、この結果、関連の画素の状態が、この点または線の蛍光体被覆に光を発せさせることにより変わる。
画像は、グラフィカルユーザインターフェース(GUI)モジュール218Aを介して供給することができる。GUIモジュール218Aは別個のモジュールとして示されているが、GUI機能を実行する命令は、オペレーティングシステム208、コンピュータプログラム210内に常駐または分散させるか、または、専用メモリおよびプロセッサで実行することができる。
コンピュータプログラム110命令に従ってシステム202により行われる作業の一部または全部は、専用プロセッサ204B内で実行することができる。この実施形態においては、コンピュータプログラム210命令の一部または全部は、専用プロセッサ204B内の読取り専用メモリ(ROM)、プログラマブル読取り専用メモリ(PROM)またはフラッシュメモリ内にまたはメモリ206内に記憶されたファームウェア命令を介して実行することができる。専用プロセッサ204Bは、本発明を実行する作業の一部または全部を実行するために回路設計を介して配線で接続することができる。更に、専用プロセッサ204Bは、機能のサブセットを実行する専用回路およびコンピュータプログラム命令に応答するなどのより一般的な機能を実行する他の回路を含むハイブリッドプロセッサとすることができる。一実施形態においては、専用プロセッサは、特定用途向け集積回路(ASIC)である。
システム202は、COBOL、C++、FORTRANなどのプログラミング言語または他の言語で書かれたアプリケーションプログラム210をプロセッサ204可読コードに変換することを可能にするコンパイラ212を実行することもできる。完了後、アプリケーションまたはコンピュータプログラム210は、入出力デバイスから受理され、かつ、関係およびコンパイラ212を使用して生成された論理回路を使用してシステム202のメモリ206内に記憶されたデータにアクセスおよび操作する。
システム202は、随意的にモデム、衛星リンク、イサーネットカード、無線リンク、または他のコンピュータから入力を受理して他のコンピュータに出力を供給する他のデバイスなどの外部通信デバイスも備える。
一実施形態においては、オペレーティングシステム208、コンピュータプログラム210およびコンパイラ212を実行する命令は、Zipドライブ、フロッピー(登録商標)ディスクドライブ224、ハードドライブ、CD−ROMドライブ、テープドライブ、DVDなど1つまたはそれ以上の固定式または着脱式データ記憶デバイスを含むことができるコンピュータ可読媒体、例えば、データ記憶デバイス220において明白に実施される。更に、オペレーティングシステム208およびコンピュータプログラム210は、コンピュータプログラム命令で構成され、コンピュータプログラム命令は、システム202によりアクセスされ、読み込まれて実行されたとき、システム202に、本発明を実行および/または使用するために、または、命令のプログラムをメモリに取り込むために必要なステップを実行させ、その結果、コンピュータに本明細書で説明する方法のステップを実行する特別にプログラムされたコンピュータとして動作させる専用データ構造が作成される。コンピュータプログラム210および/または操作命令は、メモリ206および/またはデータ通信デバイス230においても明白に実施することができ、この結果、本発明に従ってコンピュータプログラム製品または製品が作製される。この点を踏まえて、本明細書で使用する「製品」、「プログラム記憶装置」および「コンピュータプログラム製品」という用語は、任意のコンピュータ可読デバイスまたは媒体からアクセス可能なコンピュータプログラムを包含することが意図されている。
言うまでもなく、当業者は、上記の構成部品または任意の数の異なる構成部品、周辺機器、および他のデバイスの任意の組み合わせをシステム202と共に用いることができることを認識するであろう。
「ユーザデバイス」という用語に本明細書で言及するが、ユーザコンピュータ、iPhone、iPod、iPad、携帯電話、セル方式の携帯無線電話、ポータブルMP3またはビデオプレーヤ、ビデオゲームコンソール、ノートパソコン、ポケットコンピュータ、パームデバイスなどの個人用携帯情報端末(PDA)、または、適当な処理、通信および入出力能力を有する任意の他のデバイスを含むことができる。
図3は、コンテンツ配信サブシステム(CDS)300およびユーザ132への提示に向けてメディアプログラムおよび広告を配信するために使用することができる最重要の作業の一実施形態を示す図である。図示する実施形態においては、コンテンツ配信サブシステム300は、ユーザデバイス102、メディアプログラムプロバイダ110および広告プロバイダ140を含む。
メディアプログラムプロバイダ110は、ユーザデバイス102を介してユーザ132にメディアプログラムおよび広告を供給するためにユーザデバイス102および広告プロバイダと通信する。広告プロバイダ140はメディアプログラムプロバイダ110と別個の構造上のエンティティをと示されているが、広告プロバイダ140は、メディアプログラムプロバイダ110と一体化することができる(即ち、メディアプログラムプロバイダ110は、広告を供給することもできる)。メディアサーバ114も、メディアプログラムプロバイダ110の一部または別個のエンティティとすることができる。CDS300は、www.hulu.com、www.imdb.com、www.aol.comまたはwww.msn.comを挙げることができる複数の配信網全体にわたってメディアプログラムおよび広告を供給する手段となる。
メディアプログラムに関係するメタデータおよび広告コンテンツ並びにストリーミング情報は、メディアプログラムおよび広告がCDS300内でどこにあるかを記述するデータと同様にコンテンツ配信システム300のデータベース316内に記憶されている。
図示する実施形態においては、ユーザデバイス102は、インターフェースモジュール302およびメディアプログラムプレーヤ304を含む。インターフェースモジュール302は、ユーザ132に情報およびメディアプログラムを提示し、かつ、コマンドを含めユーザ入力を受理するためにユーザデバイス102のプロセッサにより実行される命令を含む。ユーザインターフェースモジュール302がメディアプログラムプレーヤ304とは別個に実行されると図示されているが、ユーザインターフェースモジュール302は、メディアプログラムプレーヤ304と一体化することができる。
ポータブルユーザデバイスによるメディアプログラムの伝送および提示において使用する単純かつ効果的なデータ転送プロトコルが、既に開発されている。これらのプロトコルでは、ユーザデバイスにメディアプログラムの小さいセグメントを伝送し、これらのプロトコルにより、ユーザデバイスは、より大きな伝送帯域幅およびメディアプログラムプレーヤ処理電力(以下提示スループットという)を必要とするセグメントを受信するのか、または、提示スループットを必要とするより低い解像度のセグメントを受信するのか選択することができる。
図4は、メディアプログラム伝送プロトコルの態様を示す図である。メディアプログラムプロバイダ110または別のエンティティは、各々が異なる提示スループットに適当な、メディアプログラムの複数の異なるバージョンを生成する。図示する実施形態においては、3つのバージョン、高提示スループットバージョン402、中提示スループットバージョン404および低提示スループットバージョン406が作成される。更にまた、メディアプログラムの各バージョン402〜404は、複数のセグメントに分離される。例えば、図4では、メディアプログラムの第1のバージョン402は、Nセグメント402−1〜402−Nに分離され、メディアプログラムの第2のバージョン404も、Nセグメント404−1〜404−Nに分離され、メディアプログラムの第3のバージョン406は、Nセグメント406−1〜406Nに分離される。
図示する実施形態においては、任意の特定のバージョンのセグメントの全ては、等しい時間的長さである(例えば、時間的セグメント402−1は、時間的セグメント402−2と同じ時間的長さである)が、これは当てはまらなくてもよい。また、図示する実施形態においては、メディアプログラムの各バージョンは、同数のセグメントを含む(例えば、バージョン402、404および406は、全てN個のセグメントを含む)が、これが当てはまらなくてもよい。更に、各々の対応する時間的セグメントのバージョンの全ては、通常、同じ時間的長さとなる(換言すると、セグメント402−1は、通常は、404−1と同じ時間的長さとなる)が、これが当てはまらなくてもよい。その代わりに、異なるバージョンの時間的セグメントは、広告が挿入されることになっている時間にてセグメントが時間的に整合される限り異なる時間的長さとすることができる。例えば、第1のバージョン402がN個の時間的に等しいセグメントを有し、第2のバージョン404が2N個の時間的に等しいセグメントを有する場合、セグメント402−1の長さは、第2のバージョンセグメントの2倍となる。
メディアプログラムの3つのバージョンだけが図示されているが、異なるメディアプログラムの数は、わずか2個、または、必要されるだけとすることができる。通常は、バージョンの数は、異なるバージョンの記憶、生成および管理と伝送帯域幅およびメディアプログラムプレーヤ処理要件の保護間の歩み寄りである。
図5は、提示スループットおよび/またはメディアプログラムデータ転送速度の変化に対応しながらメディアプログラムプレーヤ304がどのようにしてメディアプログラムセグメントを受信することができるかの簡素化されたバージョンを示す図である。図5に示すように、メディアプログラムのデータまたはビット伝送速度は、破線で示すように時間と共に変わる可能性がある。同時に、実線で示すように、提示スループット(例えば、メディアプログラムが受信される通信チャネルのスループットおよび/またはユーザデバイス102の処理スループットを含むことができる)は、時間と共に変わる恐れがある。
図示する実施例においては、メディアプログラムプレーヤ304は、提示スループットが最小値閾値を上回ったとき、メディアプログラム402−1〜402−7の第1の(高提示スループット)バージョンのセグメントを受信する。しかしながら、提示スループットが時間tにてメディアプログラムデータ転送速度を下回ったとき、メディアプログラムプレーヤは、時機を逃さずにメディアプログラムの高解像度バージョンを受信および処理することができることができない恐れがあり、したがって、中間解像度(404−8〜404−10)のメディアプログラムセグメントを要求および受信する。提示スループットが時間tにてメディアプログラムデータ転送速度を上回ったとき、メディアプログラムプレーヤは、時機を逃さずにメディアプログラムの高解像度バージョンを受信および処理することができ、したがって、中間の解像度(404−11など)のメディアプログラムセグメントを要求および受信する。
通常は、ユーザデバイス102は、先入れ先出し(FIFO)バッファを含み、メディアプログラムデータ転送速度が提示スループットを下回ったとき、ユーザデバイス102は、後の提示に向けてデータをバッファリングすることができる。このバッファは、ユーザデバイス102が異なるセグメントバージョンに切り替わる必要性を改善する、つまり、遅らせることができる。しかしながら、メディアプログラムデータ転送速度が十分に長い期間にわたって提示スループットを上回った場合、ユーザデバイス102は、先述したように、メディアプログラムの低い方のビット伝送速度バージョンに切り替わる必要がある。通常は、メディアプログラムプレーヤ304は、ユーザに提示する前のセグメントを記憶する任意のバッファの豊かさ、処理負荷および通信チャネル帯域幅を含む様々な要因に基づいてストリーミングされたメディアプログラムの異なるバージョンがいつ所望されるか判断する。
また、ライブストリーミングプロトコルで一度に要求および伝送を必要とされるメディアプログラムのセグメントは相対的に短いことから、メディアプログラムデータ転送速度はセグメント間で殆ど変わらないと考えられることは注目に値することである。当該の場合、メディアプログラムプレーヤは、提示スループットに主として基づいて異なるセグメントバージョンを要求することになる。
上記プロトコルは、メディアプログラムが広告を含まない限り、または、メディアプログラムが全ての視聴者に向けて同じ広告を含む限りよく機能する。当該の場合、広告は、メディアストリーム内に配置しさえすればよく、メディアプレーヤは、広告が同じ情報(メディアプログラムの一部のみ、広告の一部のみまたはその両方を有するセグメントを含むことができる)を表す限りセグメントバージョン間で切り替わることができることになる。しかしながら、ユーザにユーザの好みまたは他の要素に基づいて選択される広告(以下、個人用にカスタマイズされた、または、ターゲット式広告(directed advertisement)という)提示されたとき、前出のモデルは、良好には機能しない。それは、ユーザがメディアプログラムを要求したときであれば、メディアプログラムは、検索される必要があり、広告は妥当な時間にて組み継がれる必要があり、その後になってユーザデバイスがメディアプログラムを受信することができるからである。更に、このプロセスであれば、全てのメディアプログラムバージョンについて実行される必要がある。
図6は、メディアプログラムプレーヤ304が通信提示スループットおよびメディアプログラムビット伝送速度の変化に対応しかつそのうえ異なるユーザを対象とした異なる広告の挿入に許可しながらどのようにしてメディアプログラムセグメントを受信することができるかを示す図である。前と同様に、メディアプログラムの異なるバージョンが生成される。前と同様に、メディアプログラム602〜606の異なるバージョンは、通常は時間的にバージョン間で同じ長さであるセグメント602−1〜606−Nに分離される。しかし、この場合、メディアプログラム600は、広告を除外する。その代わりに、広告の異なるバージョンが生成され(第1の広告650の3つのバージョン652〜656など)、これらの異なるバージョンも、セグメント652−1〜656−Mに分離される。メディアプログラムセグメント602−1〜606−Mと同様に、広告セグメント652−1〜656−Mは、同じ時間的長さである必要がなく、バージョン間で等しい長さである場合もあれば、等しい長さではない場合もある。
図7は、利用可能な提示スループットおよびメディアプログラムビット伝送速度の変化に対応しながらメディアプログラムプレーヤ304がどのようにしてメディアプログラムセグメントおよび目標とされた広告を受信することができるかを示す図である。提示スループットが仮に高品質再生の最小値閾値を上回ったままである場合、メディアプログラムプレーヤ304は、単に、図7の頂部に示すように、共にメディアプログラムの高解像度バージョンを備えるセグメントを要求する。これであれば、メディアプログラム(PS1V1−PS6V1)の第1の6つのセグメント602−1〜602−6、次に、広告(AS1V1−AS2V1)の2つのセグメント652−1〜652−2、その後、メディアプログラム(PS7V1−PS10V1)の次のセグメント602−7〜602−10を含む。しかしながら、提示スループット最小値がメディアプログラム(時間tにて、例えば)を再生するために必要な場合、本発明は、その代わりに、再生が続くように広告の異なるバージョンを検索する。例えば、図7に示すように、時間tの後、メディアプログラムプレーヤ304は、セグメントAS1V1、PS7V2およびPS8V2を要求し、セグメントAS1V1、PS7V2およびPS8V2は、通信チャネル上で適当に伝送してメディアプログラムプレーヤ304により提示することができるより低いサイズおよび解像度の広告およびメディアプログラムセグメントである。提示スループットがメディアプログラムを再生するために必要な最小値を上回ったとき、メディアプログラムプレーヤ304により要求される次のセグメントは、メディアプログラムPS9V1、PS10V1)のより高い帯域幅のバージョンである。
図示する実施形態では、データセグメイトのバッファリングおよび提示スループットの可能な予測を考慮に入れていない。したがって、大きい方のAS1V1の代わりに広告セグメントAS1V2を検索することが望ましかったであろうが、メディアプログラムプレーヤ302は、単に、次の配信されたセグメントが、現在利用可能な提示スループットおよびメディアプログラムデータ転送速度に適当であることを要求する。一実施形態においては、メディアプログラムプレーヤ304は、提示スループット変化を予測して、これらの予測変化に基づいてメディアプログラムおよび広告の異なるバージョンを要求することができる。別の実施形態においては、メディアプログラムプレーヤ304は、スループットが変更したために、提示および現在バッファ済みであるが提示されていないセグメントが適当に提示することができない場合にメディアプログラムプレーヤがその代わりに処理要件が低減された代替セグメントを要求してそのセグメントを提示する時間を有するように、受信されたセグメントを提示されるときにかなり先んじてバッファリングする。メディアプログラムプレーヤがメディアプログラムデータ転送速度を予測することができる(例えば、メディアプログラムデータ転送速度に関する情報を使用して、または、他の要素から予想されるデータ転送速度を推論することにより)実施形態も可能である。
図8Aは、メディアプログラムおよび広告をストリーミングするために使用することができる例示的方法の諸ステップを示す図を示す。ブロック802においては、各1つが異なる提示スループットに向けて生成される複数のメディアプログラムバージョン602〜606をメディアプログラムに向けて生成する。例えば、各々、異なるビット伝送速度または平均的なビット伝送速度にていくつかのメディアプログラムバージョン602〜606を生成することができる。ブロック804においては、これらのメディアプログラムバージョン602〜606の各々を一部がメディアプログラムプレーヤ304に伝送される複数のメディアプログラムバージョンセグメント(例えば、602−1〜606N)に分離する。図示する実施形態においては、メディアプログラムバージョンセグメント602−1〜602−Nは、メディアプログラムバージョン602に向けて生成され、メディアプログラムバージョンセグメント604−1〜604−Nは、メディアプログラムバージョン604に向けて生成され、メディアプログラムバージョンセグメント606〜1−606−Nは、メディアプログラムバージョン606に向けて生成される。これらの作業は、CMS 310の制御下にあるコンテンツセグメンタ320により実行することができる。
ブロック806〜808においては、類似の作業を行って、複数の広告バージョン652〜656および広告バージョンセグメント652−1〜656−Mを生成する。
図3に戻って、ここで、更に詳細にメディアプログラムおよび広告の伝送および受信を論じる。先述したように、複数のメディアプログラムバージョンが、メディアプログラムプロバイダ(または、別のエンティティ)により生成され、各々バージョンは、複数のバージョンの他のバージョンと異なる提示スループットに向けて生成される。
ユーザインターフェースモジュール302を使用して、ユーザは、視聴に向けてメディアプログラムを選択し、ユーザデバイス102は、メディアプログラムの要求をメディアプログラムプロバイダ110に伝送する。図示する実施形態においては、要求はユーザ識別子(ユーザID)および要求のメディアプログラムの識別子を備えて、供給サービス306に伝送されるメタデータ(特に、メディアプログラムのためのマスタプレイリストのアドレス)の要求である。一実施形態においては、メタデータ要求で伝送される要求されたメディアプログラムの識別子は、ユーザインターフェースモジュール302を介してユーザに提示されるプログラムガイドから取得される。プログラムガイドは、メディアプログラムのサムネイル図を含むことができ、ユーザは、当該のメディアプログラムに関連したサムネイルをクリックすることによりメディアプログラムを選択することができる。
図8Aを再度参照すると、ブロック810に示すように、メディアプログラムのメディアプログラム要求を受信する。供給サービス306は、メそしディアプログラムを受信および視聴するために必要とされるマスタプレイリストを付してID要求に最終的に応答する。
図8Bは、マスタプレイリストを生成するために使用することができる例示的な諸ステップを示す図である。図8Bを図3に関連して論じる。
ブロック816に示すように、メディアプログラムに関連したマスタプレイリストのアドレスの要求をユーザデバイスから受信する。一実施形態においては、要求は、当該のメディアプログラムを識別するデータ、並びに、ユーザ132を識別するデータ、ユーザコンピュータ102および/またはメディアプログラムプレーヤ304を含む。この情報は、メディアプログラムに関連して再生に向けて選択される広告がユーザ132、ユーザコンピュータ102またはメディアプログラム304データに基づいて選択される実施形態において使用することができる。供給サービス306は、要求を受信し、保証格納域312および他のデータベース316、および、コンテンツ管理サービス310を介して広告サービス316から取得された情報を用いて、供給サービス306は、選択されたメディアプログラムについて、メディアプログラム識別子(PID)、および、メディアプログラムとともに再生されるべき任意の広告の類似の識別子を含むことができる妥当なメタデータを判断する。
メディアプログラムプロバイダ110はユーザIDまたは少なくとも多少ユーザを識別する他の情報を受信したかもしれないことから、メディアプログラムプロバイダ110は、要求されたメディアプログラムと共にのどの広告を含めるべきか判断するために広告サービス318を呼び出すことができる。これらの識別子は、ともに含むことができる。これは、Wing Chit Makにより2010年5月26日に出願された「迅速かつ拡大縮小可能なターゲット式広告(directed advertising)サービスの方法および装置」(METHOD AND APPARATUS FOR RAPID AND SCALEABLE DIRECTED ADVERTISING SERVICE)という名称の同時係属特許出願第12/787,679号明細書で説明されるように達成することができ、この出願は、参照により本明細書に組み入れられる。あるいは、このプロセスは、以下で説明するように、メディアプログラムプレーヤがメディアプログラムのどのバージョンから始めるべきか選択した後に始めることができる。
ブロック820に示すように、マスタプレイリストを生成する。一実施形態においては、これは、コンテンツセレクタ308により実行される。例示的なマスタプレイリストを図9に示すとともに以下で更に論じる。ブロック822においては、マスタプレイリスト900を供給する。一実施形態においては、先述したように、マスタプレイリスト900は、選択された広告の各々の識別子を含むことができるアドレスにて供給される。
例えば、マスタプレイリストアドレスは、以下とすることができる:
https://play.hulu.com/play/50000011/mplst/b=[adlist]a=[authentication token]
「50000011」はメディアプログラムID(PID)を表し、「adlist」は再生中にプログラムに挿入されるように選択された広告について広告セグメント識別子904のリストである。ブロック822および図3に示すように、マスタプレイリスト900アドレスをユーザデバイス102に伝送する。
次に、ユーザデバイス102は、マスタプレイリストアドレス900を受信して、ブロック824において受信されたマスタプレイリストアドレスにマスタプレイリスト要求を伝送する。先述したように、アドレスは、メディアプログラムのPID並びにメディアプログラムの再生中に提示されるべき広告を識別する広告IDのリストを含むことができる。
ブロック826に示すように、マスタプレイリストをメディアプログラムプロバイダ110においてマスタプレイリストアドレスにて受信する。各々が、メディアプログラムバージョンの要求された1つに関連した広告バージョン652〜656に関して広告バージョンセグメント識別子652−1〜656−Mを有する複数のメディアプログラムバージョンアドレスは生成される。マスタプレイリストは、複数のメディアプログラムバージョンアドレスから作成される。
図9は、例示的なマスタプレイリスト900を示す図である。この実施形態においては、マスタプレイリスト900は、「.m3u8」で終了しおよび/または「application/vnd.apple.mpegurl」のコンテンツ形式を有するファイル名を有し、かつ、単一のLF文字またはキャリッジリターンにより終了される個々の線を備えるテキストファイルである。コメント文字「#」で始まる線は、コメントまたはタグであり、タグは、文字EXTで始まる。「#」で始まる全ての他の線は、コメントであり無視される。第1の線は、拡張されたm3uファイルとしてファイルを識別するM3Uタグを備える。次に、マスタプレイリストは、URIまたはURLが以下の線で提示されるメディアプログラムバージョンを記述するタグを有する。例えば、802Aは、以下のものを識別するタグを提示する。
PROGRAM−ID:マスタプレイリストが複数のメディアプログラムを指す場合、PROGRAM−IDパラメータは、複数のメディアプログラムのうちのどれが関与するか識別する。図示する実施形態においては、マスタプレイリストは、同じメディアプログラムのいくつかのバージョンを指すのでPROGRAM−IDは、1である。複数のメディアプログラムがマスタプレイリストに含まれている場合、第2のメディアプログラムは、例えば、2というPROGRAM−IDを有する。このPROGRAM−IDは、マスタプレイリスト内だけでなく大域的にメディアプログラムの識別子を指すPIDと混同すべきではない。
BANDWIDTH:は、以下の線で記載されるURIにて利用可能であるストリームの平均的なビット伝送速度を識別するものである。メディアプログラムプレーヤは、セグメントのダウンロード速度を観察することにより実際の帯域幅を判断することができる。
URIは、タグの後にあり、PID(図示する実施例では50000011)、ファイル名(図示する実施例では「.m3u8」拡張子を有するビット伝送速度)、広告セグメント識別子904(652−1〜656−M、654−1〜654−Mまたは656−1〜656Mに類似)および認証目的に使用されているトークンを含む。
尚、図9に示すマスタプレイリストは、メディアプログラムの8つの異なるバージョンについてタグおよびURIを含み、ストリームは、それぞれ、1500kbps、3200kbps、2500kbps、1000kbps、400 200kbps、128kbpsおよび64kbpsを表す902A、902B、902C、902D、902E、902F、902Gおよび902Hにより識別する。各メディアプログラムバージョンアドレスに関連した広告IDの各々は、他のメディアプログラムバージョンアドレスに関連した広告IDと異なる場合がある。
図8Aに示すブロック812に示すように、マスタプレイリスト900アドレスをユーザデバイス102に伝送する。
先述した実施形態においては、ユーザIDは、マスタプレイリストのアドレスの要求と共に供給され、かつ、ユーザ132にとって最も興味深い広告を選択するために使用されたものである。これらの広告の識別子は、ユーザデバイス102に伝送されるマスタプレイリストアドレスで、かつ、その後、マスタプレイリスト自体のメディアプログラムバージョンのアドレスでも返される。この特徴部により、選択された広告のアイデンティティは、マスタプレイリストの生成と、要求されたメディアプログラムバージョン間で、かつ、メディアプログラムプロバイダ110により広告状態を維持することなく異なるプログラムバージョン間でも持続することができる。対応される多数のユーザデバイス102を考慮すると、この特徴部により大幅に大いに管理が簡素化する。
他の実施形態においては、メディアプログラム内に含めるべき広告のリストは、マスタプレイリストアドレスが伝送された後、および、マスタプレイリストが受信される前に生成することができる。この実施形態においては、マスタプレイリストアドレスは、広告IDのリストを含まないが、マスタプレイリスト自体はこのリストを含む場合がある。
他の実施形態においては、ユーザIDは、伝送されず、メディアプログラムと共に再生するべき広告を識別するのに用いられる。あるいは、ユーザのアイデンティティは、クッキー、ユーザのIPアドレスを使用してなど他の情報を使用して十分に確認される(その結果、ユーザの地理的場所を判断するために使用することができる情報が得られ、かつ、結果的に、広告を選択するために使用することができるユーザに関する情報が得られる)。
図3を参照すると、予想される提示スループットおよびメディアプログラムデータ転送速度(利用可能な場合)を考慮して、メディアプログラムプレーヤ102は、メディアプログラムバージョンのうちどれが受信および提示に最も適当か判断し、メディアプログラムバージョンの1つを識別するメディアプログラムバージョン要求を伝送することにより、そのメディアプログラムバージョンを要求する。一実施形態においては、これは、マスタプレイリストに示す妥当なアドレスにて特定のメディアプログラムバージョンを要求することにより達成される。初めに選ばれるメディアプログラムバージョンは、視聴者好みにより判断することもできる(例えば、ユーザは、通常であれば供給されるより高い解像度バージョンを要求することができる)。一実施形態においては、メディアプログラムバージョン要求は、メディアプログラムプレーヤ102が選択したメディアプログラムバージョンに関連したURLまたはURIを備えるかまたはこのURLまたはURIにアドレス指定される。例えば、メディアプログラムプレーヤ102が図9に示す例示的なマスタプレイリストにおいてメディアプログラムの1500kbpsのバージョンを選択した場合、メディアプログラムプレーヤは、802AのURI、即ち、
https://play.hulu.com/play/50000011/1500.m3u8?b=IUEfAAK7...580
をメディアプログラムプロバイダ110に伝送する。メディアプログラムプロバイダ110はメッセージを受信して、選択されたメディアプログラムバージョンに関連したセグメントプレイリストを生成する(または、予め生成されたセグメントプレイリストを検索する)。これは、メディアプログラムバージョン要求内のメディアプログラムバージョンの複数のメディアプログラムセグメントの各々に関連したアドレスを生成し、かつ、メディアプログラム中に提示されるように選ばれる広告の複数の広告セグメントの各々に関連したアドレスを生成することにより達成される。セグメントプレイリストは、これらのアドレスおよび妥当なタグを付して生成される。一実施形態においては、セグメントプレイリストは、時間的に順序づけられる(セグメントは、リスト上に提示される順番で要求および再生される)、しかしながら、他の実施形態が可能であり、セグメントプレイリストは任意の順番であり、再生順序は、黙示的であるか(送信器および受信器にはわかっている)、または、ユーザデバイス102に伝送されたデータ内に明記されている。
図10は、セグメントプレイリスト1000の一実施形態を示す図である。図示する実施形態においては、セグメントプレイリストは、要求されたメディアプログラムバージョン1006A〜1006Cのメディアプログラムセグメント、および、選択されたメディアプログラムバージョン(どの広告がユーザへの提示に向けてメディアプログラムプロバイダ110により選択されたか)に関連した広告バージョンの広告セグメント1004A〜1004Cの各々に関連したアドレスまたはユニフォームリソースアイデンティファイア(URI)のリストを備える。一実施形態においては、アドレスまたはURIは、時間的に順序づけられる。この時間的順序づけは、リスト(時間的順番での各エントリ)固有である場合があるか、または、セグメントの時間的関係が判断することができるようにインデックスが供給される場合がある。
セグメントプレイリスト1000は、上記アドレスおよびプレロール(メディアプログラムの再生が始まる前に)広告1002のタグおよび2つの不連続性タグ1008、1010を含むこともできる。不連続性タグ1008、1010は、メディアファイルの後に来るメディアファイルとその前にあるメディアファイル間で符号化上の不連続性を示す。変更する恐れがある1組の特性としては、ファイル形式、トラックの数および形式、符号化パラメータ、符号化シーケンスおよび/またはタイムスタンプシーケンスがある。図10に示す実施例においては、不連続性は、メディアプログラムセグメントから広告セグメントへの(例えば、不連続性1008)、または、広告セグメントからメディアプログラムセグメントへの(不連続性1010、例えば)の変化を表す。
図3に戻ると、メディアプログラムプロバイダ110は、ユーザデバイス102にセグメントプレイリストを伝送する。ユーザデバイス102は、セグメントプレイリストを受信して、メディアサーバ114にセグメント要求を伝送し、メディアサーバ114は、ストレージ312からメディアプログラムを検索して、ユーザデバイスに要求されたメディアセグメントおよび広告を伝送する。ユーザデバイス102は、各メディアプログラムおよび広告セグメントを受信して、妥当な順序でユーザに再生する。
前述の実施形態においては、セグメントプレイリスト1000は<マスタプレイリスト900とは別個に、かつ、マスタプレイリスト900に従って伝送されたものであるが、これが当てはまらなくてもよい。その代わりに、メディアプログラムプレーヤは、単一のメッセージでマスタプレイリスト900およびセグメントプレイリスト1000を共に送る場合がある。この場合、一旦メディアプログラムプレーヤ304が当該のメディアプログラムバージョンを選択した場合、メディアプログラムプレーヤは、その後、既に受信されたセグメントプレイリスト900を使用してメディアプログラムまたは妥当なメディアプログラム用広告セグメントおよび広告バージョンを単に要求することができる。
提示スループットがメディアプログラムおよび関連の広告の再生を通して十分なままである場合、メディアプログラムプレーヤ304は、単に、現在選択されているバージョンについてメディアプログラムセグメントおよび広告のセクションを受信し続ける。しかしながら、提示スループットが現在選択されているメディアプログラムバージョンに不十分である(例えば、図7に示す時間tにて)場合、メディアプログラムプレーヤ304は、その代わりに、必要とする提示スループットが小さい方のメディアプログラムセグメントおよび告セグメントのURIを提示するセグメントプレイリストかららメディアプログラムおよび広告セグメントを選択する。
妥当なセグメントプレイリスト1000がメディアプログラムプレーヤ304に既に供給されている場合、メディアプログラムプレーヤ304は、妥当なメディアプログラムおよび広告バージョンについてセグメントプレイリスト1000内に記載された妥当なURIを使用して妥当なセグメントを要求しさえすればよい。
しかしながら、妥当なセグメントプレイリスト1000が第2のメディアプログラムバージョンに供給されていなかった場合、現在のまたは予測された提示スループットに妥当であるメディアプログラムおよび広告のバージョンに向けてセグメントプレイリスト900を要求する要求が、メディアプログラムプロバイダ110に伝送される。例えば、図10に示す例示的なマスタプレイリストにおいては、メディアプログラムプレーヤ304は、メディアプログラムの1000kbpsのバージョンおよび今後のセグメントに向けた広告を選択することができる。これは、1000kbpsのストリームに関連したURIに第2のメディアプログラムバージョン要求を伝送することにより達成することができる。図9に示す実施例においては、これは902Dに関連したURI、つまり、以下である。
https://play.hulu.com/play/50000011/1000.m3u8....
メディアプログラムプロバイダ110は、その後、メディアプログラムプレーヤに第2のセグメントプレイリストを伝送する。第1のセグメントプレイリストと同様に、第2のセグメントプレイリストは、第2の選択されたメディアバージョンに関連したメディアプログラムセグメントの各1つに関連したアドレス、および、メディアプログラムバージョンの第2のメディアプログラムバージョンに関連した広告バージョンに関連した複数の広告セグメントの各1つに関連したアドレスとを有する時間的に順序づけられたリストである。換言すれば、ビット伝送速度が遅い方のメディアプログラムセグメントおよび広告セグメントに関するセグメントリスト1000は、メディアプログラムプロバイダ110からメディアプログラムプレーヤ304に伝送されてそこで再生される。
当業者は、本発明の範囲から逸脱することなく多くの改変をこの構成に行うことができることを認識するであろう。例えば、当業者は、上記の構成部品または任意の数の異なる構成部品、周辺機器、および他のデバイスの任意の組み合わせを本発明とともに使用することができることを認識するであろう。
結び
これにより、好適な本発明の実施形態の説明を終了する。本発明の好適な実施形態の上記説明は、例示および説明を目的として提示したものである。網羅的であること、または、開示した正確な形態に本発明を制限することを目的とするものではない。上記の教示に照らして多くの改変および変形が可能である。本発明の範囲はこの詳細な説明により限定されず本明細書に添付の特許請求項の範囲により限定されることを意図している。上記明細書、実施例、および、データは、本発明の構成の製造および使用に説明を完全に行うものである。本発明の精神および範囲から逸脱することなく多くの本発明の種々の実施形態を成すことができることから、本発明は、以下に添付する特許請求項の範囲に属する。

Claims (18)

  1. メディアプログラムと、これと共に提示するための広告とをストリーミングする方法であって、
    各々が他と異なる提示スループットのために生成される複数のメディアプログラムバージョンを生成することと、
    各メディアプログラムバージョンについて複数のメディアプログラムバージョンセグメントを生成するために複数のメディアプログラムバージョンセグメントに前記複数のメディアプログラムバージョンの各々をセグメント化することと、
    各々が前記複数のメディアプログラムバージョンの1つのみに関連し、かつ、前記関連のメディアプログラムバージョンの前記提示スループットのために生成される、前記広告の複数の広告バージョンを生成することと、
    各広告バージョンについて複数の広告バージョンセグメントを生成するために複数の広告バージョンセグメントに前記複数の広告バージョンの各々をセグメント化することと、
    前記メディアプログラムのメディアプログラム要求を受信することと、
    各々が前記複数のメディアプログラムバージョンの1つのみに関連する複数のメディアプログラムバージョンアドレスを備えるマスタプレイリストを前記メディアプログラムプレーヤに伝送することと、
    前記複数のメディアプログラムバージョンの要求された1つに関連し、かつ、
    前記複数のメディアプログラムバージョンの前記要求された1つに関連した前記複数のメディアプログラムバージョンセグメントの各1つに関連したメディアプログラムバージョンセグメントアドレスと、前記複数のメディアプログラムバージョンの前記要求された1つに関連した前記広告バージョンに関連した前記複数の広告セグメントの各1つに関連した広告バージョンセグメントアドレスと
    を有する時間的に順序づけられたリストを備える、セグメントプレイリストを前記メディアプログラムプレーヤに伝送することと、
    の各ステップを備える方法。
  2. 前記メディアプログラム要求を受信する前記ステップ
    は、
    前記メディアプログラムに関連した前記マスタプレイリストのアドレスの要求を受信するステップを備え、
    前記マスタプレイリストを伝送する前記ステップは、
    前記メディアプログラムと共に再生するべき1組の広告から前記広告を選択すること、
    のステップを備え、前記選択された広告は、少なくともある程度ユーザ識別子に従って選択され、
    前記マスタプレイリストを伝送する前記ステップは、更に
    前記マスタプレイリストを生成して、前記選択された広告の識別子を含むマスタプレイリストアドレスにて前記マスタプレイリストを供給することと、
    前記メディアプログラム要求に応答して前記メディアプログラムプレーヤに前記マスタプレイリストアドレスを伝送することと、
    前記マスタプレイリストアドレスにてマスタプレイリスト要求を受信することと、
    前記マスタプレイリスト要求に応答して前記マスタプレイリストを伝送することと
    の各ステップを備える請求項1に記載の方法。
  3. 前記選択された広告の前記複数の広告バージョンセグメントの各々は、広告バージョンセグメント識別子に関連し、
    前記マスタプレイリストを生成する前記ステップは、
    前記選択された広告の前記識別子を有する前記マスタプレイリストアドレスにて前記マスタプレイリスト要求を受信することと、
    各々は前記複数のメディアプログラムバージョンの1つのみに関連し、かつ、前記複数のメディアプログラムバージョンの前記要求の1つに関連した前記選択された広告の前記広告バージョンについて前記広告バージョンセグメント識別子を備える前記複数のメディアプログラムバージョンアドレスを生成することとのステップを備える請求項2に記載の方法。
  4. 前記広告の前記識別子は、複数の広告識別子文字を備え、前記複数の広告バージョンセグメント識別子の各々は、前記複数の広告識別子文字を備える請求項3に記載の方法。
  5. 前記メディアプログラムプレーヤに前記セグメントプレイリストを伝送する前記ステップは、
    前記複数のメディアプログラムバージョンの前記要求の1つの前記メディアプログラムバージョンアドレスにてセグメントプレイリスト要求を受信することと、
    前記受信されたセグメントプレイリスト要求に応答して前記セグメントプレイリストを伝送することとの各ステップを備える請求項3に記載の方法。
  6. 前記複数のメディアプログラムバージョンの第2の要求された1つの前メディアプログラムバージョンアドレスにて第2のセグメントプレイリスト要求を受信するステップを更に備え、前記第2のセグメントプレイリスト要求は、前記複数のメディアプログラムバージョンの前記第2の要求の1つに関連した前記複数のメディアプログラムバージョンアドレスの前記1つにアドレス指定され、前記複数のメディアプログラムバージョンアドレスの前記1つは、前記選択された広告の前記識別子を含み、
    前記方法は、更に
    前記複数のメディアプログラムバージョンの前記第2の要求の1つに関連した前記複数のメディアプログラムセグメントの各1つに関連したアドレスと、
    前記複数のメディアプログラムバージョンの前記要求の1つに関連した前記選択された広告の前記広告バージョンに関連した前記複数の広告セグメントの各1つに関連したアドレスとを有する時間的に順序づけられたリストを備えるセグメントプレイリストを前記メディアプログラムプレーヤに伝送するステップを備える請求項3に記載の方法。
  7. メディアプログラムと、これと共に提示するための広告とをストリーミングする装置であって、
    各々が他と異なる提示スループットのために生成される複数のメディアプログラムバージョンを生成する手段と、
    各メディアプログラムバージョンについて複数のメディアプログラムバージョンセグメントを生成するために複数のメディアプログラムバージョンセグメントに前記複数のメディアプログラムバージョンの各々をセグメント化する手段と、
    各々が前記複数のメディアプログラムバージョンの1つのみに関連し、かつ、前記関連のメディアプログラムバージョンの前記提示スループットのために生成される、前記広告の複数の広告バージョンを生成する手段と、
    各広告バージョンについて複数の広告バージョンセグメントを生成するために複数の広告バージョンセグメントに前記複数の広告バージョンの各々をセグメント化する手段と、
    前記複数のメディアプログラムのメディアプログラム要求を受信する手段と、
    各々が前記複数のメディアプログラムバージョンの1つのみに関連する複数のメディアプログラムバージョンアドレスを備えるマスタプレイリストを前記メディアプログラムプレーヤに伝送する手段と、
    前記複数のメディアプログラムバージョンの要求の1つに関連し、かつ
    前記複数のメディアプログラムバージョンの前記要求された1つに関連した前記複数のメディアプログラムバージョンセグメントの各1つに関連したメディアプログラムバージョンセグメントアドレスと、前記メディアプログラムバージョンの前記要求された1つに関連した前記広告バージョンに関連した前記複数の広告セグメントの各1つに関連した広告バージョンセグメントアドレスとを有する時間的に順序づけられたリストを備える、セグメントプレイリストを前記メディアプログラムプレーヤに伝送する手段と
    を備える装置。
  8. 前記メディアプログラム要求を受信する前記手段は、
    前記メディアプログラムに関連した前記マスタプレイリストのアドレスの要求を受信する手段を備え、
    前記マスタプレイリストを伝送する前記手段は、
    前記メディアプログラムと共に再生するべき1組の広告から前記広告を選択する手段を備え、前記選択された広告は、少なくともある程度ユーザ識別子に従って選択され、
    前記マスタプレイリストを伝送する前記手段は、更に
    前記マスタプレイリストを生成して、前記選択された広告の識別子を含むマスタプレイリストアドレスにて前記マスタプレイリストを供給する手段と、
    前記メディアプログラム要求に応答して前記メディアプログラムプレーヤに前記マスタプレイリストアドレスを伝送する手段と、
    前記マスタプレイリストアドレスにてマスタプレイリスト要求を受信する手段と、
    前記マスタプレイリスト要求に応答して前記マスタプレイリストを伝送する手段とを備える請求項7に記載の装置。
  9. 前記選択された広告の前記複数の広告バージョンセグメントの各々は、広告バージョンセグメント識別子に関連し、
    前記マスタプレイリストを生成する前記手段は、
    前記選択された広告の前記識別子を有する前記マスタプレイリストアドレスにて前記マスタプレイリスト要求を受信する手段と、
    各々が前記複数のメディアプログラムバージョンの1つのみに関連し、かつ、前記複数のメディアプログラムバージョンの前記要求の1つに関連した前記選択された広告の前記広告バージョンについて前記広告バージョンセグメント識別子を備える前記複数のメディアプログラムバージョンアドレスを生成する手段とを備える請求項8に記載の装置。
  10. 前記広告の前記識別子は、複数の広告識別子文字を備え、前記複数の広告バージョンセグメント識別子の各々は、前記複数の広告識別子文字を備える請求項9に記載の装置。
  11. 前記セグメントプレイリストを前記メディアプログラムプレーヤに伝送する前記手段は、
    前記複数のメディアプログラムバージョンの前記要求の1つの前記メディアプログラムバージョンアドレスにてセグメントプレイリスト要求を受信する手段と、
    前記受信されたセグメントプレイリスト要求に応答して前記セグメントプレイリストを伝送する手段とを備える請求項9に記載の装置。
  12. 前記複数のメディアプログラムバージョンの第2の要求された1つの前メディアプログラムバージョンアドレスにて第2のセグメントプレイリスト要求を受信する手段を更に備え、
    前記第2のセグメントプレイリスト要求は、前記複数のメディアプログラムバージョンの前記第2の要求の1つに関連した前記複数のメディアプログラムバージョンアドレスの前記1つにアドレス指定され、前記複数のメディアプログラムバージョンアドレスの前記1つは、前記選択された広告の前記識別子を含み、
    前記装置は、更に
    前記複数のメディアプログラムバージョンの前記第2の要求の1つに関連した前記複数のメディアプログラムセグメントの各1つに関連したアドレスと、
    前記複数のメディアプログラムバージョンの前記要求の1つに関連した前記選択された広告の前記広告バージョンに関連した前記複数の広告セグメントの各1つに関連したアドレスとを有する時間的に順序づけられたリストを備える、セグメントプレイリストを前記メディアプログラムプレーヤに伝送する手段を備える請求項9に記載の装置。
  13. メディアプログラムと、これと共に提示するための広告とをストリーミングする装置であって、
    各々が他と異なる提示スループットのために生成される複数のメディアプログラムバージョンを生成し、各メディアプログラムバージョンについて複数のメディアプログラムバージョンセグメントを生成するために複数のメディアプログラムバージョンセグメントに前記複数のメディアプログラムバージョンの各々をセグメント化し、各々が前記複数のメディアプログラムバージョンの1つのみに関連し、かつ、前記関連のメディアプログラムバージョンの前記提示スループットについて生成される、前記広告の複数の広告バージョンを生成し、かつ、各広告バージョンについて複数の広告バージョンセグメントを生成するために複数の広告バージョンセグメントに前記複数の広告バージョンの各々をセグメント化するコンテンツ生成器と、
    前記メディアプログラムのメディアプログラム要求を受信し、各々が前記複数のメディアプログラムバージョンの1つのみに関連する複数のメディアプログラムバージョンアドレスを備えるマスタプレイリストを前記メディアプログラムプレーヤに伝送し、かつ
    前記複数のメディアプログラムバージョンの要求の1つに関連し、かつ
    前記複数のメディアプログラムバージョンの前記要求された1つに関連した前記複数のメディアプログラムバージョンセグメントの各1つに関連したメディアプログラムバージョンセグメントアドレスと、前記複数のメディアプログラムバージョンの前記要求された1つに関連した前記広告バージョンに関連した前記複数の広告セグメントの各1つに関連した広告バージョンセグメントアドレスとを有する時間的に順序づけられたリストを備える、セグメントプレイリストを前記メディアプログラムプレーヤに伝送するコンテンツセレクタと
    を備える装置。
  14. コンテンツセレクタは、
    前記メディアプログラムに関連した前記マスタプレイリストのアドレスの要求を受信する手段と、
    前記マスタプレイリストを生成して、前記選択された広告の識別子を含むマスタプレイリストアドレスにて前記マスタプレイリストを供給する手段と、
    前記メディアプログラム要求に応答して前記メディアプログラムプレーヤに前記マスタプレイリストアドレスを伝送する手段と、
    前記マスタプレイリストアドレスにてマスタプレイリスト要求を受信する手段と、
    前記マスタプレイリスト要求に応答して前記マスタプレイリストを伝送する手段とを備え、前記装置は、前記メディアプログラムと共に再生するべき1組の広告から前記広告を選択する広告サービスを更に備え、前記選択された広告は、少なくともある程度ユーザ識別子に従って選択される請求項13に記載の装置。
  15. 前記選択された広告の前記複数の広告バージョンセグメントの各々は、広告バージョンセグメント識別子に関連し、
    前記マスタプレイリストを生成する前記手段は、
    前記選択された広告の前記識別子を有する前記マスタプレイリストアドレスにて前記マスタプレイリスト要求を受信する手段と、
    各々が前記複数のメディアプログラムバージョンの1つのみに関連し、かつ、前記複数のメディアプログラムバージョンの前記要求の1つに関連した前記選択された広告の前記広告バージョンについて前記広告バージョンセグメント識別子を備える前記複数のメディアプログラムバージョンアドレスを生成する手段とを備える請求項14に記載の装置。
  16. 前記広告の前記識別子は、複数の広告識別子文字を備え、前記複数の広告バージョンセグメント識別子の各々は、前記複数の広告識別子文字を備える請求項15に記載の装置。
  17. コンテンツセレクタは、
    前記複数のメディアプログラムバージョンの前記要求の1つの前記メディアプログラムバージョンアドレスにてセグメントプレイリスト要求を受信する手段と、
    前記受信されたセグメントプレイリスト要求に応答して前記セグメントプレイリストを伝送する手段とを更に備える請求項15に記載の装置。
  18. 前記コンテンツセレクタは、
    更に、前記複数のメディアプログラムバージョンの第2の要求された1つの前メディアプログラムバージョンアドレスにて第2のセグメントプレイリスト要求を受信し、前記第2のセグメントプレイリスト要求は、前記複数のメディアプログラムバージョンの前記第2の要求の1つに関連した前記複数のメディアプログラムバージョンアドレスの前記1つにアドレス指定され、前記複数のメディアプログラムバージョンアドレスの前記1つは、前記選択された広告の前記識別子を含み、
    前記複数のメディアプログラムバージョンの前記第2の要求の1つに関連した前記メディアプログラムセグメントの各1つに関連したアドレスと、
    前記複数のメディアプログラムバージョンの前記要求の1つに関連した前記選択された広告の前記広告バージョンに関連した前記複数の広告セグメントの各1つに関連したアドレスとを有する時間的に順序づけられたリストを備える、セグメントプレイリストを前記メディアプログラムプレーヤに伝送する手段を備える請求項15に記載の装置。
JP2013518502A 2010-06-28 2011-06-24 Httpライブストリーミングと両立できるようにストリーミングメディアプログラムおよび目標とされた広告を供給する方法および装置 Active JP5833114B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US35931910P 2010-06-28 2010-06-28
US61/359,319 2010-06-28
US12/950,563 2010-11-19
US12/950,563 US9721254B2 (en) 2010-06-28 2010-11-19 Method and apparatus for providing streaming media programs and targeted advertisements using multiple advertisement version segments
PCT/US2011/041774 WO2012009135A1 (en) 2010-06-28 2011-06-24 Method and apparatus for providing streaming media programs and targeted advertisements compatibly with http live streaming

Publications (2)

Publication Number Publication Date
JP2013536611A true JP2013536611A (ja) 2013-09-19
JP5833114B2 JP5833114B2 (ja) 2015-12-16

Family

ID=45469756

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013518502A Active JP5833114B2 (ja) 2010-06-28 2011-06-24 Httpライブストリーミングと両立できるようにストリーミングメディアプログラムおよび目標とされた広告を供給する方法および装置

Country Status (4)

Country Link
EP (1) EP2586197B1 (ja)
JP (1) JP5833114B2 (ja)
CN (1) CN103081461B (ja)
WO (1) WO2012009135A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016500943A (ja) * 2012-10-09 2016-01-14 オランジュ ユニバーサルリソース識別子(uri)パラメータの継承
KR102228375B1 (ko) * 2019-12-11 2021-03-16 네이버 주식회사 다수의 스트리밍 콘텐츠들을 재생하는 방법 및 시스템

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103873926B (zh) * 2012-12-13 2017-03-22 腾讯科技(深圳)有限公司 下载并播放媒体文件的方法及系统
CN103338401A (zh) * 2013-06-03 2013-10-02 贝壳网际(北京)安全技术有限公司 用于移动终端浏览器中的视频播放控制方法、装置和系统
CN104918130A (zh) * 2014-03-12 2015-09-16 腾讯科技(北京)有限公司 一种发送、播放多媒体信息的方法、装置和系统
US9503794B2 (en) 2014-05-08 2016-11-22 Google Inc. Serving a live stream as an advertisement
CN104159132B (zh) * 2014-08-22 2018-11-20 华为软件技术有限公司 视频定制化服务的实现方法及装置
CN104394438B (zh) * 2014-11-04 2018-05-29 福建星网视易信息系统有限公司 一种配置多媒体显示内容的方法及系统
WO2017168441A1 (en) * 2016-04-01 2017-10-05 Rohatgi Abhinav Methods and systems of live advertisement
KR20210072979A (ko) * 2019-12-10 2021-06-18 현대자동차주식회사 차량의 avn 및 그의 미디어 재생 방법
CN113079413B (zh) * 2020-01-03 2023-04-28 李小彭 基于使用者现实需求来提供个人化广告的系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003242074A (ja) * 2002-02-20 2003-08-29 Victor Co Of Japan Ltd ストリーミング情報提供システム及び再生リストファイル作成方法
WO2008121639A1 (en) * 2007-03-30 2008-10-09 Sandisk Corporation Method and system for controlling access to digital content
JP2009522850A (ja) * 2005-12-29 2009-06-11 ユナイテッド ビデオ プロパティーズ, インコーポレイテッド 複数の装置を有する双方向メディアガイダンスシステム
JP2010109791A (ja) * 2008-10-31 2010-05-13 Hitachi Ltd 広告付きコンテンツ配信システムおよびコンテンツ情報サーバ
WO2010058549A1 (ja) * 2008-11-18 2010-05-27 日本電気株式会社 コンテンツ配信システム
WO2010078281A2 (en) * 2008-12-31 2010-07-08 Apple Inc. Real-time or near real-time streaming

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100353450C (zh) * 2003-01-10 2007-12-05 华为技术有限公司 一种多媒体数据的处理方法
US8434118B2 (en) * 2004-05-27 2013-04-30 Time Warner Cable Enterprises Llc Playlist menu navigation
US9681105B2 (en) * 2005-12-29 2017-06-13 Rovi Guides, Inc. Interactive media guidance system having multiple devices
JP5431733B2 (ja) * 2006-01-05 2014-03-05 テレフオンアクチーボラゲット エル エム エリクソン(パブル) メディアコンテンツ管理
JP4891320B2 (ja) * 2006-07-11 2012-03-07 Kddi株式会社 番組表配信装置および番組表配信方法
US8645990B2 (en) * 2006-12-22 2014-02-04 Ciena Corporation Dynamic advertising control
US8424036B2 (en) * 2007-10-05 2013-04-16 Alcatel Lucent Targeted/addressable advertisement insertion into video streams delivered to users
US20090106082A1 (en) * 2007-10-23 2009-04-23 Senti Thad E System and method to facilitate targeted advertising
US9621855B2 (en) * 2007-12-10 2017-04-11 Time Warner Cable Enterprises Llc Apparatus and method for video-on-demand playlist
US8239889B2 (en) * 2008-03-10 2012-08-07 Hulu, LLC Method and apparatus for collecting viewer survey data and for providing compensation for same
US8473628B2 (en) * 2008-08-29 2013-06-25 Adobe Systems Incorporated Dynamically altering playlists
US20100131993A1 (en) * 2008-11-24 2010-05-27 Sanitate Paul A Method and apparatus for the efficient generation, storage and delivery of multiple versions of a video

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003242074A (ja) * 2002-02-20 2003-08-29 Victor Co Of Japan Ltd ストリーミング情報提供システム及び再生リストファイル作成方法
JP2009522850A (ja) * 2005-12-29 2009-06-11 ユナイテッド ビデオ プロパティーズ, インコーポレイテッド 複数の装置を有する双方向メディアガイダンスシステム
WO2008121639A1 (en) * 2007-03-30 2008-10-09 Sandisk Corporation Method and system for controlling access to digital content
JP2010109791A (ja) * 2008-10-31 2010-05-13 Hitachi Ltd 広告付きコンテンツ配信システムおよびコンテンツ情報サーバ
WO2010058549A1 (ja) * 2008-11-18 2010-05-27 日本電気株式会社 コンテンツ配信システム
WO2010078281A2 (en) * 2008-12-31 2010-07-08 Apple Inc. Real-time or near real-time streaming

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016500943A (ja) * 2012-10-09 2016-01-14 オランジュ ユニバーサルリソース識別子(uri)パラメータの継承
KR102228375B1 (ko) * 2019-12-11 2021-03-16 네이버 주식회사 다수의 스트리밍 콘텐츠들을 재생하는 방법 및 시스템

Also Published As

Publication number Publication date
WO2012009135A1 (en) 2012-01-19
CN103081461A (zh) 2013-05-01
JP5833114B2 (ja) 2015-12-16
EP2586197B1 (en) 2018-02-07
EP2586197A1 (en) 2013-05-01
EP2586197A4 (en) 2015-09-09
CN103081461B (zh) 2016-07-06

Similar Documents

Publication Publication Date Title
JP5833114B2 (ja) Httpライブストリーミングと両立できるようにストリーミングメディアプログラムおよび目標とされた広告を供給する方法および装置
JP5917508B2 (ja) 休止された再生をプラットフォーム全体にわたって同期化する方法および装置
US9721254B2 (en) Method and apparatus for providing streaming media programs and targeted advertisements using multiple advertisement version segments
JP6461895B2 (ja) 適応ビットレート切換えのための方法および装置
JP6253983B2 (ja) 修正されたシーク機能を用いた帯域幅割当の改善
US11019125B2 (en) Similar introduction advertising caching mechanism
EP2586202B1 (en) Method and apparatus for geofiltering by content
US9826007B2 (en) Method and apparatus for sharing viewing information
US11463741B2 (en) Methods and systems for dynamic routing of content using a static playlist manifest
WO2012051453A1 (en) Method and apparatus for recommending media programs based on correlated user feedback

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140526

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150122

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150224

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150519

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150616

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150827

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20151028

R150 Certificate of patent or registration of utility model

Ref document number: 5833114

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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