JP7386990B2 - ビデオ再生方法、装置、機器及びコンピュータプログラム - Google Patents

ビデオ再生方法、装置、機器及びコンピュータプログラム Download PDF

Info

Publication number
JP7386990B2
JP7386990B2 JP2022524677A JP2022524677A JP7386990B2 JP 7386990 B2 JP7386990 B2 JP 7386990B2 JP 2022524677 A JP2022524677 A JP 2022524677A JP 2022524677 A JP2022524677 A JP 2022524677A JP 7386990 B2 JP7386990 B2 JP 7386990B2
Authority
JP
Japan
Prior art keywords
plot
video
development
playback
options
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
JP2022524677A
Other languages
English (en)
Other versions
JP2022553996A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Publication of JP2022553996A publication Critical patent/JP2022553996A/ja
Application granted granted Critical
Publication of JP7386990B2 publication Critical patent/JP7386990B2/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/239Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
    • H04N21/2393Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
    • 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/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/80Special adaptations for executing a specific game genre or game mode
    • A63F13/822Strategy games; Role-playing games
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/45Controlling the progress of the video game
    • A63F13/47Controlling the progress of the video game involving branching, e.g. choosing one of several possible scenarios at a given point in time
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/53Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game
    • A63F13/533Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game for prompting the player, e.g. by displaying a game menu
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • 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/4331Caching operations, e.g. of an advertisement for later insertion during playback
    • 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/4335Housekeeping operations, e.g. prioritizing content for deletion because of storage space restrictions
    • 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 or rendering scenes according to encoded video stream scene graphs
    • H04N21/44008Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in 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/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 or rendering scenes according to encoded video stream scene graphs
    • H04N21/44016Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for substituting a video clip
    • 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 or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream 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
    • 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/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4781Games
    • 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/482End-user interface for program selection
    • H04N21/4825End-user interface for program selection using a list of items to be played back in a given order, e.g. playlists
    • 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/485End-user interface for client configuration
    • 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
    • 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/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8541Content authoring involving branching, e.g. to different story endings
    • 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/85Assembly of content; Generation of multimedia applications
    • H04N21/858Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot
    • H04N21/8586Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot by using a URL
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/20Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of the game platform

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • Optics & Photonics (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Television Signal Processing For Recording (AREA)

Description

本願は、2020年2月14日に提出された、出願番号が202010105302.0で、発明名称が「ビデオ再生方法、装置、機器及び記憶媒体」である中国特許出願の優先権を主張するものであり、その全ての内容は、参照により本願に組み込まれるものとする。
本願の実施例は、ヒューマンコンピュータインタラクションの分野に関し、特にビデオ再生方法、装置、機器及び記憶媒体に関する。
インタラクティブムービーゲームは、映画とゲームとをインタラクティブに結合したものであり、映画作品に基づいて改造されたモバイルゲーム、ウェブページゲーム、クライアントゲームなどのゲーム製品を含む。インタラクティブムービーゲームにおいて、ビデオの形式でゲームプロットが展開され、ゲームプロットに複数の分岐が存在し、プロットの発展に伴って異なるオプションが表示され、プレーヤが合理的な選択を行うことができ、プロットがプレーヤの選択に伴って異なる分岐に進み、異なるビデオコンテンツが再生される。
関連技術において、プレーヤがゲームにおいて与えられたオプションを選択する前に、プレーヤは、次に再生されるビデオコンテンツを予知することができない。パッケージ本体により制限されていることから、大量のビデオデータをローカルに記憶することができないため、ビデオデータは、いずれもバックグラウンドサーバに記憶される。ビデオを再生するときは、サーバからビデオのスライスインデックスファイルを取得し、ビデオのスライスインデックスファイルを解析することによりスライスのアドレスを取得して、スライスを取得する必要があり、その後に再生することができる。
上記関連技術において、ビデオの再生には、まずダウンロードして復号する必要があるため、ビデオコンテンツを迅速にシームレスに切り替えることができず、ビデオ再生の停止をもたらす。
本願の実施例は、ビデオ再生方法、装置、機器及び記憶媒体を提供し、端末は、ビデオを再生するときにサーバからダウンロードして復号する必要がなくなり、ビデオのスムーズな再生を実現する。上記技術的手段は以下のとおりである。
本願の一態様に係るビデオ再生方法は、
端末に応用される、ビデオ再生方法であって、
プロット取得要求を送信するステップであって、前記プロット取得要求は、第1のプロットビデオのプロット情報を取得することを要求するために用いられ、前記第1のプロットビデオのプロット情報は、前記第1のプロットビデオのビデオアドレスと、前記第1のプロットビデオに対応するn個のプロット発展オプションとを含み、前記nは正の整数である、ステップと、
前記第1のプロットビデオのビデオアドレスに基づいて、前記第1のプロットビデオを再生するステップと、
前記第1のプロットビデオを再生する過程において、前記n個のプロット発展オプションにそれぞれ対応するプロットビデオデータを取得するステップと、
前記n個のプロット発展オプションにそれぞれ対応するプロットビデオデータをキャッシュリストに追加するステップと、
前記n個のプロット発展オプションのうちのターゲットプロット発展オプションの選択命令を受信したことに応答して、前記キャッシュリストから第2のプロットビデオのプロットビデオデータを取得し、前記第2のプロットビデオを再生するステップであって、前記第2のプロットビデオは、前記ターゲットプロット発展オプションに対応するプロットビデオを指す、ステップと、を含む。
本願の別の態様に係るビデオ再生方法は、
端末に応用される、ビデオ再生方法であって、
ゲームアプリケーションプログラムのユーザーインタフェースにおいて第1のプロットビデオを再生するステップと、
前記第1のプロットビデオの再生が終了したことに応答して、前記第1のプロットビデオに対応するn個のプロット発展オプションを表示するステップであって、前記nは正の整数である、ステップと、
前記n個のプロット発展オプションのうちのターゲットプロット発展オプションの選択命令を受信したことに応答して、前記ユーザーインタフェースにおいて第2のプロットビデオを再生するステップであって、前記第2のプロットビデオは、前記ターゲットプロット発展オプションに対応するプロットビデオを指し、前記第2のプロットビデオは、キャッシュリストに記録された前記第2のプロットビデオのビデオデータに基づいて取得される、ステップと、を含む。
本願の別の態様に係るビデオ再生装置は、
要求送信モジュールであって、プロット取得要求を送信するために用いられ、前記プロット取得要求は、第1のプロットビデオのプロット情報を取得することを要求するために用いられ、前記第1のプロットビデオのプロット情報は、前記第1のプロットビデオのビデオアドレスと、前記第1のプロットビデオに対応するn個のプロット発展オプションとを含み、前記nは正の整数である、要求送信モジュールと、
前記第1のプロットビデオのビデオアドレスに基づいて、前記第1のプロットビデオを再生するために用いられる第1の再生モジュールと、
前記第1のプロットビデオを再生する過程において、前記n個のプロット発展オプションにそれぞれ対応するプロットビデオデータを取得するために用いられるデータ取得モジュールと、
前記n個のプロット発展オプションにそれぞれ対応するプロットビデオデータをキャッシュリストに追加するために用いられるリスト追加モジュールと、
第2の再生モジュールであって、前記n個のプロット発展オプションのうちのターゲットプロット発展オプションの選択命令を受信したことに応答して、前記キャッシュリストから第2のプロットビデオのプロットビデオデータを取得し、前記第2のプロットビデオを再生するために用いられ、前記第2のプロットビデオは、前記ターゲットプロット発展オプションに対応するプロットビデオを指す、第2の再生モジュールと、を含む。
本願の別の態様に係るビデオ再生装置は、
ゲームアプリケーションプログラムのユーザーインタフェースにおいて第1のプロットビデオを再生するために用いられる第1の再生モジュールと、
オプション表示モジュールであって、前記第1のプロットビデオの再生が終了したことに応答して、前記第1のプロットビデオに対応するn個のプロット発展オプションを表示するために用いられ、前記nは正の整数である、オプション表示モジュールと、
第2の再生モジュールであって、前記n個のプロット発展オプションのうちのターゲットプロット発展オプションの選択命令を受信したことに応答して、前記ユーザーインタフェースにおいて第2のプロットビデオを再生するために用いられ、前記第2のプロットビデオは、前記ターゲットプロット発展オプションに対応するプロットビデオを指し、前記第2のプロットビデオは、キャッシュリストに記録された前記第2のプロットビデオのビデオデータに基づいて取得される、第2の再生モジュールと、を含む。
本願の別の態様に係るコンピュータ機器は、プロセッサ及びメモリを含み、前記メモリには、少なくとも1つの命令、少なくとも1つのプログラム、コードセット又は命令セットが記憶され、前記少なくとも1つの命令、前記少なくとも1つのプログラム、前記コードセット又は命令セットは、前記プロセッサによってロードされ、実行されることにより、上記態様に記載のビデオ再生方法を実現する。
本願の別の態様に係るコンピュータ可読記憶媒体には、少なくとも1つの命令、少なくとも1つのプログラム、コードセット又は命令セットが記憶され、前記少なくとも1つの命令、前記少なくとも1つのプログラム、前記コードセット又は命令セットは、プロセッサによってロードされ、実行されることにより、上記態様に記載のビデオ再生方法を実現する。
本願の別の態様に係るコンピュータプログラム製品は、コンピュータ可読記憶媒体に記憶されているコンピュータ命令を含む。コンピュータ機器のプロセッサは、前記コンピュータ可読記憶媒体から前記コンピュータ命令を読み取り、前記プロセッサは、前記コンピュータ命令を実行することにより、前記コンピュータ機器に上記各態様に記載のビデオ再生方法を実行させる。
本願の実施例に係る技術的手段は、以下の有益な効果を含むことができる。
第1のプロットビデオを再生する過程において、第1のプロットビデオに対応するプロット発展オプションのプロットビデオデータを取得し、該プロットビデオデータをキャッシュリストに追加することにより、ターゲットプロット発展オプションに対する選択命令を取得した後に、キャッシュリストから該ターゲットプロット発展オプションに対応するビデオデータを直接的に取得して再生する。サーバからビデオのスライスインデックスファイルを取得する必要がなく、また、該スライスインデックスファイルを解析してスライスのアドレスを取得することによりビデオセグメントを再生する必要がないため、ロード時間が長すぎることによるビデオ再生の停止を回避し、ビデオのスムーズな再生を実現する。
本願の1つの例示的な実施例に係るコンピュータシステムの構造概略図である。 本願の1つの例示的な実施例に係るビデオ再生方法のフローチャートである。 本願の別の例示的な実施例に係るビデオ再生方法のフローチャートである。 本願の別の例示的な実施例に係るビデオ再生方法のフローチャートである。 本願の1つの例示的な実施例に係るユーザーインタフェースの概略図である。 本願の1つの例示的な実施例に係るプロット発展オプションの概略図である。 本願の別の例示的な実施例に係るユーザーインタフェースの概略図である。 本願の1つの例示的な実施例に係るビデオ再生装置のブロック図である。 本願の別の例示的な実施例に係るビデオ再生装置のブロック図である。 本願の別の例示的な実施例に係るビデオ再生装置のブロック図である。 本願の別の例示的な実施例に係るビデオ再生装置のブロック図である。 本願の1つの例示的な実施例に係る端末の構造ブロック図である。 本願の1つの例示的な実施例に係るサーバの構造概略図である。
まず、本願の実施例に係る名詞について簡単に説明する。
1.インタラクティブムービーゲームは、インタラクティブ映画ゲームと呼ばれてもよく、映画とゲームとをインタラクティブに結合したものである。インタラクティブムービーゲームは、映画作品に基づいて改造されたモバイルゲーム、ウェブページゲーム、クライアントゲームなどのゲーム製品を含む。ゲームにおいて、ゲームプロットに複数の分岐が存在し、プロットの発展に伴って異なるオプションが表示され、プレーヤが合理的な選択を行うことができ、プロットがプレーヤの選択に伴って異なる分岐に進み、異なるビデオコンテンツが再生される。
2.HLS(HTTP Live Streaming、ライブストリーミング)は、アップル社が提供したHTTPに基づくストリーミングメディアネットワークトランスポートプロトコルであり、主に端末のオーディオビデオサービスに用いられ、M3U8スライスインデックスファイル及びTS(Transport Stream、トランスポートストリーム)スライスで構成される。HLSプロトコルの利点は、配置しやすく、配布しやすく、サーバの性能に対する要求が比較的低く、アダプティブコードレートの再生をサポートすることである。
HLSの動作原理は、オーディオビデオストリーム全体をHTTPに基づく複数の小さなファイルに分けてダウンロードし、毎回一部のみをダウンロードすることである。メディアストリームを再生しているとき、クライアント端末は、多くの異なる代替源から異なるレートで同じリソースをダウンロードすることを選択することができ、ストリーミングメディアセッションが異なるデータレートに適応することを許可することができる。
3.M3U8ファイルは、TSスライスのインデックスファイルであり、各TSスライスのサーバにおけるダウンロードアドレスを記憶するために用いられ、端末は、該M3U8ファイルに基づいて、各TSスライスを順に読み取ることができる。
4.TSスライスは、完全なビデオファイル又はビデオストリームを分割して得られたビデオセグメントを指す。
5.read_threadは、ビデオ読み取りスレッドであり、ビデオデータを読み取るために用いられる。
6.AVFormatContextは、1つのメディアファイル又はメディアストリームの構成及び基本的な情報を記述し、read_threadにより作成され、主に関数ポインタに値を与え、ファイルをデフォルトに開く関数と、ファイルを閉じる関数とを決定する。
図1は、本願の1つの実施例に係るコンピュータシステムの構造概略図を示す。該コンピュータシステムは、端末10及びサーバ20を含む。
上記端末10は、携帯電話、PC(Personal Computer、パーソナルコンピュータ)、タブレットコンピュータ、電子ブックリーダー、MP3(Moving Picture Experts Group Audio Layer III、MPEG圧縮標準オーディオレイヤ3)プレーヤ、MP 4(Moving Picture Experts Group Audio Layer IV、MPEG圧縮標準オーディオレイヤ4)プレーヤなどであってよい。本願の実施例はこれを限定しない。
好ましくは、該端末10にターゲットアプリケーションプログラムを実行するクライアント端末がインストールされ、該ターゲットアプリケーションプログラムは、ゲームアプリケーションプログラムであってよく、該ゲームは、インタラクティブナラティブゲーム、インタラクティブプロットゲーム、インタラクティブビデオゲーム(例えばインタラクティブ映画)、インタラクティブ音楽ゲーム又は他のプロットを有するゲームであってよい。例えば、ゲームにおいて大きなゲームのストーリーフレームを設定し、ゲームのストーリーフレームにおいて複数のゲームプロット分岐を設定し、これらのゲームプロット分岐を一定のプロット論理に応じて接続することにより、対応するゲームストーリーを形成する。プレーヤは、ゲーム中にインタラクティブ操作を行い、端末は、プレーヤのインタラクティブ操作に基づいて、対応するゲームプロットを発展させる。例えば、プロットの発展に伴って異なるオプションを表示し、プレーヤは、合理的な選択を行うことができる。プロットは、プレーヤの選択に伴って異なる分岐に進むことがあり、さらに、ゲームストーリー全体が異なる結末に進むようにする。
上記サーバ20は、有線又は無線ネットワークを介して端末10と通信することができる。該サーバ20は、上記ターゲットアプリケーションプログラムのバックグラウンドサーバであってよく、ターゲットアプリケーションプログラムにバックグラウンドサービスを提供するために用いられる。
好ましくは、上記サーバ20は、独立した物理サーバであってもよく、複数の物理サーバで構成されたサーバクラスタ又は分散システムであってもよく、さらにクラウドサービス、クラウドデータベース、クラウドコンピューティング、クラウド関数、クラウドストレージ、ネットワークサービス、クラウド通信、ミドルウェアサービス、ドメインネームサービス、セキュリティサービス、CDN(Content Delivery Network、コンテンツデリバリネットワーク)、並びにビッグデータ及び人工知能プラットフォームなどの基礎クラウドコンピューティングサービスを提供するクラウドサーバであってもよく、本願の実施例はこれを限定しない。
ここで、クラウド技術(Cloud Technology)は、ワイドエリアネットワーク又はローカルエリアネットワーク内において、ハードウェア、ソフトウェア、ネットワークなどの一連のリソースを統一し、データの計算、記憶、処理及び共有を実現するホスティング技術を指す。
クラウド技術は、クラウドコンピューティングビジネスモデルアプリケーションに基づくネットワーク技術、情報技術、統合技術、管理プラットフォーム技術、アプリケーション技術などの総称であり、リソースプールを構成することができ、需要に応じて使用され、柔軟で便利である。クラウドコンピューティング技術は、重要なサポートとなる。技術ネットワークシステムのバックグラウンドサービスは、大量の計算、記憶リソース、例えばビデオウェブサイト、画像ウェブサイト及びより多くのポータルサイトを必要とする。インターネット業界の高度な発展及び応用に伴い、将来、全ての物品に自分の識別マークが存在し、どれもバックグラウンドシステムに伝送して論理処理を行う必要が出てくる可能性がある。異なる程度レベルのデータは分別処理され、各種業界のデータはいずれも強力なシステムのサポートを必要とするが、これはクラウドコンピューティングにしか実現できない。
クラウドコンピューティング(Cloud Computing)は、IT(Internet Technology)インフラストラクチャの配信及び使用モードを指し、ネットワークにより必要に応じて、拡張しやすい方式で必要なリソースを取得することを指す。広義のクラウドコンピューティングは、サービスの配信及び使用モードを指し、ネットワークにより必要に応じて、拡張しやすい方式で必要なサービスを取得することを指す。このようなサービスは、IT及びソフトウェア、インターネットに関連するものであってもよく、他のサービスであってもよい。クラウドコンピューティングは、グリッドコンピューティング(Grid Computing)、分散コンピューティング(Distributed Computing)、並列コンピューティング(Parallel Computing)、ユーティリティコンピューティング(Utility Computing)、ネットワークストレージ(Network Storage Technologies)、仮想化(Virtualization)、ロードバランス(Load Balance)などの従来のコンピュータ及びネットワーク技術が発展して融合した産物である。
以下、いくつかの実施例により本願の技術的手段を説明する。
図2は、本願の1つの実施例に係るビデオ再生方法のフローチャートを示す。本実施例において、主に該方法を、図1に示される端末10にインストールされて実行されるターゲットアプリケーションプログラムのクライアント端末に応用することを例として説明する。該方法は、以下のいくつかのステップを含んでよい。
ステップ201では、プロット取得要求を送信する。
ユーザーは、端末にインストールされたターゲットアプリケーションプログラムのクライアント端末を実行し、その後に、クライアント端末は、サーバに上記プロット取得要求を送信する。該プロット取得要求は、第1のプロットビデオのプロット情報を取得することを要求するために用いられ、ここで、第1のプロットビデオは、クライアント端末で再生されているプロットビデオを指す。
上記ターゲットアプリケーションプログラムについては、既に上記において説明したため、ここでは説明を省略する。
それに対応して、クライアント端末が再生したプロットビデオの再生ノードがサーバに記録されているため、サーバは、クライアント端末から送信されたプロット取得要求を受信した後に、再生されたプロットビデオの再生ノードを直接的に照会し、上記第1のプロットビデオを決定し、該第1のプロットビデオのプロット情報を取得してクライアント端末に送信することができる。
上記第1のプロットビデオのプロット情報は、第1のプロットビデオに関連する情報を含む。該第1のプロットビデオのプロット情報は、第1のプロットビデオのビデオアドレスと、第1のプロットビデオに対応するn個のプロット発展オプションとを含み、該nは正の整数である。
ここで、上記ビデオアドレスは、URL(Uniform Resource Locator、ユニフォームリソースロケータ)を含み、ここで、URLは、インターネットから取得されたリソースの位置及びアクセス方法の簡単な表示であり、インターネット上の標準リソースのアドレスである。該ビデオアドレスによりビデオデータを取得することができる。
上記n個のプロット発展オプションは、プレーヤを選択するために用いられ、各プロット発展オプションは、異なるプロット分岐に対応し、プレーヤは、合理的な選択を行うことができる。プロットは、プレーヤの選択に伴って異なる分岐に進み、さらに、プロット全体が異なる結末に進むようにする。
好ましくは、上記プロット発展オプションは、文字オプションであってもよく、音声オプションであってもよく、さらに画像オプションであってもよく、本願の実施例はこれを限定しない。
ステップ202では、第1のプロットビデオのビデオアドレスに基づいて、第1のプロットビデオを再生する。
サーバが送信した第1のプロットビデオのプロット情報を取得した後に、クライアント端末は、該プロット情報における第1のプロットビデオのビデオアドレスに基づいて、該第1のプロットビデオを再生する。
好ましくは、クライアント端末は、該第1のプロットビデオのビデオアドレスを取得した後に、該第1のプロットビデオのビデオアドレスに基づいて、第1のプロットビデオのビデオデータを取得し、該第1のビデオのビデオデータに基づいて、第1のプロットビデオを再生する。
ステップ203では、第1のプロットビデオを再生する過程において、n個のプロット発展オプションにそれぞれ対応するプロットビデオデータを取得する。
上記第1のプロットビデオを再生する過程において、クライアント端末は、上記n個のプロット発展オプションにそれぞれ対応するプロットビデオデータを取得する。
好ましくは、上記プロットビデオデータは、ビデオアドレスに基づいて取得されたデータをデカプセル化した後のビデオデータであってよい。該プロットビデオデータは、AVPacketとして表してよい。
ステップ204では、n個のプロット発展オプションにそれぞれ対応するプロットビデオデータをキャッシュリストに追加する。
クライアント端末は、該n個のプロット発展オプションにそれぞれ対応するプロットビデオデータをキャッシュリストに追加する。
該キャッシュリストは、プロットビデオデータをキャッシュするために用いられ、すなわち該キャッシュリストは、実質的にビデオデータリストである。
ステップ205では、n個のプロット発展オプションのうちのターゲットプロット発展オプションの選択命令を受信したことに応答して、キャッシュリストから第2のプロットビデオのプロットビデオデータを取得し、第2のプロットビデオを再生する。
プレーヤは、n個のプロット発展オプションからターゲットプロット発展オプションを自ら選択することができ、それに対応して、クライアント端末は、ターゲットプロット発展オプションに対する選択命令を取得することができる。該ターゲットプロット発展オプションに対する選択命令は、ターゲットプロット発展オプションに対応するプロットビデオを再生するように指示するために用いられる。
好ましくは、上記ターゲットプロット発展オプションは、n個のプロット発展オプションのうちのいずれか1つのプロット発展オプションであってよい。
クライアント端末は、該ターゲットプロット発展オプションに対する選択命令を受信した後に、キャッシュリストから第2のプロットビデオのプロットビデオデータを直接的に取得し、第2のプロットビデオを再生することができる。上記第2のプロットビデオは、ターゲットプロット発展オプションに対応するプロットビデオを指す。
上述したように、本願の実施例に係る技術的手段は、第1のプロットビデオを再生する過程において、第1のプロットビデオに対応するプロット発展オプションのプロットビデオデータを取得し、該プロットビデオデータをキャッシュリストに追加することにより、ターゲットプロット発展オプションに対する選択命令を取得した後に、キャッシュリストから該ターゲットプロット発展オプションに対応するビデオデータを直接的に取得して再生する。サーバからビデオのスライスインデックスファイルを取得する必要がなく、また、該スライスインデックスファイルを解析した後にスライスのアドレスを取得することによりビデオセグメントを再生する必要がないため、ロード時間が長すぎることによるビデオ再生の停止を回避し、ビデオのスムーズな再生を実現する。
図3は、本願の別の実施例に係るビデオ再生方法のフローチャートを示す。本実施例において、主に該方法を、図1に示される端末10にインストールされて実行されるターゲットアプリケーションプログラムのクライアント端末に応用することを例として説明する。該方法は、以下のいくつかのステップを含んでよい。
ステップ301では、プロット取得要求を送信する。
上記プロット取得要求は、第1のプロットビデオのプロット情報を取得することを要求するために用いられる。ここで、第1のプロットビデオのプロット情報は、第1のプロットビデオのビデオアドレスと、第1のプロットビデオに対応するn個のプロット発展オプションとを含み、該nは正の整数である。
このステップは、図2の実施例におけるステップ201の内容と同じであるか又は類似するため、ここでは説明を省略する。
好ましくは、上記第1のプロットビデオのプロット情報は、n個のプロット発展オプションに対応するビデオインデックスファイルをさらに含む。上記ビデオインデックスファイルは、M3U8ファイルであってよい。M3U8ファイルについては、既に上記において説明したため、ここでは説明を省略する。
ステップ302では、第1のプロットビデオのビデオアドレスに基づいて、第1のプロットビデオを再生する。
このステップは、図2の実施例におけるステップ202の内容と同じであるか又は類似するため、ここでは説明を省略する。
好ましくは、第1のプロットビデオのビデオアドレスに基づいて、第1のプロットビデオを再生する上記ステップは、ビデオ読み取りスレッドの第2のサブスレッドを呼び出して、第1のプロットビデオのビデオアドレスに基づいて、第1のプロットビデオを再生するステップを含む。
上記ビデオ読み取りスレッドは、ビデオデータを読み取るために用いられる。本願の実施例において、該ビデオ読み取りスレッドは、2つのAVFormatContextを作成することができ、第1のスレッド及び第2のスレッドと呼ばれる。ここで、第1のスレッドは、ビデオデータをキャッシュするために用いられ、第2のサブスレッドは、ビデオを復号して再生するために用いられる。AVFormatContextについては、既に上記において説明したため、ここでは説明を省略する。
本願の実施例において、復号及び再生のために用いられる1つのサブスレッドと、ビデオデータをキャッシュするために用いられるもう1つのサブスレッドとの2つのサブスレッドにより、ビデオ再生のスタッターを回避することができる。
ステップ303では、n個のプロット発展オプションにそれぞれ対応するビデオインデックスファイルを解析して、n個のプロット発展オプションにそれぞれ対応するビデオアドレスを取得する。
第1のプロットビデオのプロット情報がn個のプロット発展オプションに対応するビデオインデックスファイルを含む場合、クライアント端末は、上記ビデオインデックスファイルを取得した後に、該n個のプロット発展オプションにそれぞれ対応するビデオインデックスファイルを解析して、n個のプロット発展オプションにそれぞれ対応するビデオアドレスを取得することができる。
ステップ304では、n個のプロット発展オプションにそれぞれ対応するビデオアドレスをキャッシュ対象キューに追加する。
上記n個のプロット発展オプションにそれぞれ対応するビデオアドレスを取得した後に、該ビデオアドレスをキャッシュ対象キューに追加する。
上記キャッシュ対象キューは、キャッキュ対象のプロットビデオのビデオアドレスを記録するために用いられ、すなわち該キャッシュ対象キューは、実質的にビデオアドレスキューである。
ステップ305では、n個のプロット発展オプションにそれぞれ対応するビデオアドレスに基づいて、n個のプロット発展オプションにそれぞれ対応するプロットビデオデータを取得する。
上記n個のプロット発展オプションにそれぞれ対応するビデオアドレスを取得した後に、該n個のプロット発展オプションにそれぞれ対応するビデオアドレスに基づいて、n個のプロット発展オプションにそれぞれ対応するプロットビデオデータを取得する。ビデオデータについては、既に上記において説明したため、ここでは説明を省略する。
好ましくは、n個のプロット発展オプションにそれぞれ対応するビデオアドレスに基づいて、n個のプロット発展オプションにそれぞれ対応するプロットビデオデータを取得する上記ステップは、
キャッシュ対象キューにキャッシュ対象のプロットビデオのビデオアドレスが存在することに応答して、ビデオ読み取りスレッドの第1のサブスレッドを呼び出して、n個のプロット発展オプションにそれぞれ対応するビデオアドレスに基づいて、n個のプロット発展オプションにそれぞれ対応するプロットビデオデータを取得するステップを含む。
キャッシュ対象キューにキャッシュする必要があるプロットビデオのビデオアドレスが存在する場合、クライアント端末は、ビデオ読み取りスレッドのうちの第1のサブスレッドを呼び出して、プロットビデオデータを取得する。
好ましくは、ビデオ読み取りスレッドは、キャッシュする必要があるプロットビデオのビデオアドレスに対していずれも対応するExtraPacketInfoデータ構造を作成し、該ExtraPacketInfoデータ構造によりプロットビデオデータを記憶する。
好ましくは、クライアント端末は、キャッシュスレッドを呼び出して、キャッシュ対象キューにキャッシュ対象のプロットビデオのビデオアドレスが存在するか否かを照会する。
好ましくは、キャッシュスレッドは、ポーリング方式でキャッシュ対象キューを照会する。いくつかの他の実施例において、hash(ハッシュ)インデックスの方式で照会してもよく、本願の実施例はこれを限定しない。
また、クライアント端末は、キャッシュ対象キューにキャッシュ対象のプロットビデオのビデオアドレスが存在しないことを照会した場合、
(1)キャッシュリストに第2のプロットビデオのプロットビデオデータが存在しないことに応答して、ビデオ読み取りスレッドの第2のサブスレッドを呼び出して、第2のプロットビデオに対応するビデオインデックスファイルを取得するステップと、
(2)第2のプロットビデオに対応するビデオインデックスファイルに基づいて、第2のプロットビデオのプロットビデオデータを取得するステップと、をさらに実行することができる。
ネットワーク品質が悪いなどの理由により、第2のプロットビデオのプロットビデオデータがキャッシュリストに追加されないことを引き起こす可能性がある。この場合、クライアント端末は、ビデオ読み取りスレッドの第2のサブスレッドを呼び出して、サーバから第2のプロットビデオに対応するビデオインデックスファイルを取得し、該第2のプロットビデオに対応するビデオインデックスファイルに基づいて、第2のプロットビデオのプロットビデオデータを取得することができる。
好ましくは、第2のプロットビデオがm個のプロットセグメントを含む場合、クライアント端末は、ビデオ読み取りスレッドの第2のサブスレッドを呼び出して、第1のプロットセグメントから各プロットセグメントに対応するビデオインデックスファイルを順に取得し、さらに各プロットセグメントのプロットビデオデータを取得することができる。
ステップ306では、n個のプロット発展オプションにそれぞれ対応するプロットビデオデータをキャッシュリストに追加する。
このステップは、図2の実施例におけるステップ204の内容と同じであるか又は類似するため、ここでは説明を省略する。
ステップ307では、n個のプロット発展オプションのうちのターゲットプロット発展オプションの選択命令を受信したことに応答して、キャッシュリストから第2のプロットビデオの第1のプロットセグメントのプロットビデオデータを取得する。
上記第2のプロットビデオは、m個のプロットセグメントを含み、該mは正の整数である。
第2のプロットビデオが複数のプロットセグメントを含む場合、n個のプロット発展オプションのうちのターゲットプロット発展オプションに対する選択命令を取得した後に、クライアント端末は、キャッシュリストから第2のプロットビデオの第1のプロットセグメントのプロットビデオデータを取得する。該第1のプロットセグメントは、第2のプロットビデオのうちの1番目のプロットセグメントを指す。
好ましくは、ターゲットプロット発展オプションの選択命令を取得したことに応答して、キャッシュリストにおいて、ターゲットプロット発展オプション以外の他のプロット発展オプションに対応するプロットビデオデータをクリアする。
ターゲットプロット発展オプションに対応する選択命令を取得した後に、クライアント端末は、さらにキャッシュリストにおいて、ターゲットプロット発展オプション以外の他のプロット発展オプションに対応するプロットビデオデータをクリアすることにより、キャッシュキュー全体を最適化し、キャッシュキューの長さを低減することができる。
ステップ308では、第1のプロットセグメントのプロットビデオデータに基づいて、第1のプロットセグメントを再生する。
第1のプロットセグメントのプロットビデオデータを取得した後に、該第1のプロットセグメントのプロットビデオデータを第2のサブスレッドにプッシュして復号し、復号が完了した後に該第1のプロットセグメントを再生してよい。
ステップ309では、第1のプロットセグメントを再生する過程において、第1のプロットセグメントの後のm-1個のプロットセグメントのプロットビデオデータを順に取得する。
第1のプロットセグメントを再生する過程において、クライアント端末は、キャッシュされた第1のプロットセグメントを再生する時間を利用して、第1のプロットセグメントの後のm-1個のプロットセグメントのプロットビデオデータを順に取得することにより、第1のプロットセグメントの再生を終了した後に、直接的に、既に取得されたm-1個のプロットセグメントのプロットビデオデータに基づいて、m-1個のプロットセグメントを再生し、ビデオのスムーズな再生を実現することができる。
好ましくは、クライアント端末は、ビデオ読み取りスレッドの第2のサブスレッドを呼び出して、サーバから上記m-1個のプロットセグメントのインデックスファイルを取得し、次に該m-1個のプロットセグメントのインデックスファイルに基づいて、m-1個のプロットセグメントのプロットビデオデータを取得してよい。
ステップ310では、m-1個のプロットセグメントのプロットビデオデータに基づいて、m-1個のプロットセグメントの、第2のプロットビデオにおける順序に応じて再生する。
上記m-1個のプロットセグメントのプロットビデオデータを取得した後に、さらに、m-1個のプロットセグメントのプロットビデオデータに基づいて、m-1個のプロットセグメントを取得し、m-1個のプロットセグメントの、第2のプロットビデオにおける順序に応じて再生してよい。
好ましくは、各プロットセグメントにいずれも再生タイムスタンプが存在し、該再生タイムスタンプにより該プロットセグメントの第2のプロットビデオにおける再生順序を明確にすることができる。
上述したように、本願の実施例に係る技術的手段は、第1のプロットビデオを再生する過程において、第1のプロットビデオに対応するプロット発展オプションのプロットビデオデータを取得し、該プロットビデオデータをキャッシュリストに追加することにより、ターゲットプロット発展オプションに対する選択命令を取得した後に、キャッシュリストから該ターゲットプロット発展オプションに対応するビデオデータを直接的に取得して再生する。サーバからビデオのスライスインデックスファイルを取得する必要がなく、また、該スライスインデックスファイルを解析してスライスのアドレスを取得することによりビデオセグメントを再生する必要がないため、ロード時間が長すぎることによるビデオ再生の停止を回避し、ビデオのスムーズな再生を実現する。
また、ビデオ読み取りスレッドが、復号及び再生のために用いられる1つのサブスレッドと、ビデオデータをキャッシュするために用いられるもう1つのサブスレッドとの2つのサブスレッドを含むことにより、ビデオ再生がフリーズすることを回避することができる。
また、キャッシュリストにおいて、ターゲットプロット発展オプション以外の他のプロット発展オプションに対応するプロットビデオデータをクリアすることにより、キャッシュキュー全体を最適化し、キャッシュキューの長さを低減することができる。
図4は、本願のさらに別の実施例に係るビデオ再生方法のフローチャートを示す。本実施例において、主に該方法を、図1に示される端末10にインストールされて実行されるターゲットアプリケーションプログラム(例えばゲームアプリケーションプログラム)のクライアント端末に応用することを例として説明する。該方法は、以下のいくつかのステップを含んでよい。
ステップ401では、ゲームアプリケーションプログラムのユーザーインタフェースにおいて第1のプロットビデオを再生する。
ユーザーは、端末にインストールされたターゲットアプリケーションプログラムのクライアント端末を実行する。クライアント端末は、ユーザーインタフェースを表示し、該ユーザーインタフェースに上記第1のプロットビデオを再生する。
ここで、上記ユーザーインタフェースは、プロットビデオを再生し、上記第1のプロットビデオは、クライアント端末で再生されているプロットビデオを指す。
好ましくは、該ユーザーインタフェースは、ビデオ時間情報を含み、該ビデオ時間情報は、ビデオ総時間及びビデオ既再生時間を含む。ここで、ビデオ総時間は、第1のプロットビデオの総時間を指し、ビデオ既再生時間は、既に再生された時間を指す。
好ましくは、該ユーザーインタフェースは、解像度調整コントロール、再生速度調整コントロール、スクリーンショットコントロールなどをさらに含む。ここで、解像度切り替えコントロールは、ビデオの解像度を調整するために用いられ、再生速度切り替えコントロールは、ビデオの再生速度を調整するために用いられ、スクリーンショットコントロールは、ユーザーが再生されているビデオに対して画像スクリーンショットを行うために用いられる。いくつかの実施例において、上記ユーザーインタフェースは、設定コントロールなどの他のコントロールをさらに含み、本願の実施例はこれを限定しない。
例示的には、図5に示すように、ユーザーインタフェース50において、第1のプロットビデオが再生されている。好ましくは、該ユーザーインタフェースにおいて、ビデオ時間情報、例えばビデオ総時間51及びビデオ既再生時間52が表示され、好ましくは、該ユーザーインタフェースにおいて、解像度調整コントロール53、再生速度調整コントロール54、スクリーンショットコントロール55などがさらに表示されている。
ステップ402では、第1のプロットビデオの再生が終了したことに応答して、第1のプロットビデオに対応するn個のプロット発展オプションを表示し、該nは正の整数である。
上記第1のプロットビデオの再生が終了した後に、該第1のプロットビデオに対応するn個のプロット発展オプションを表示することができる。
上記n個のプロット発展オプションは、プレーヤを選択するために用いられ、各プロット発展オプションは、異なるプロット発展分岐に対応する。プレーヤは、合理的な選択を行うことができ、プロットは、プレーヤの選択に伴って異なる分岐に進み、さらに、ゲームストーリー全体が異なる結末に進むようにする。
好ましくは、上記プロット発展オプションは、文字オプションであってもよく、音声オプションであってもよく、さらに画像オプションであってもよく、本願の実施例はこれを限定しない。
例示的には、図6に示すように、プロット発展オプションが文字オプションであることを例とする。第1のプロットビデオの再生が終了した後に、4つのプロット発展オプション、例えば第1のプロット発展オプション61である「方先生と孫さんの状況はどう?」、第2のプロット発展オプション62である「私に対する組織の指示は?」、第3のプロット発展オプション63である「先生はどうして私と絶縁のフリをしていますか?」、第4のプロット発展オプション64である「先生、方敏さんは...」を表示することができる。
ステップ403では、n個のプロット発展オプションのうちのターゲットプロット発展オプションの選択命令を受信したことに応答して、ユーザーインタフェースにおいて第2のプロットビデオを再生する。
プレーヤは、上記n個のプロット発展オプションから自ら選択することができ、それに対応して、クライアント端末は、n個のプロット発展オプションのうちのターゲットプロット発展オプションに対する選択命令を取得した後に、ユーザーインタフェースにおいて第2のプロットビデオを再生する。上記第2のプロットビデオは、ターゲットプロット発展オプションに対応するプロットビデオを指す。
該第2のプロットビデオは、キャッシュリストに記録された第2のプロットビデオのビデオデータに基づいて取得される。
例示的には、図7に示すように、ユーザーは、n個のプロット発展オプションのうちのターゲットプロット発展オプションを選択した後に、ユーザーインタフェース50において該ターゲットプロット発展オプションに対応するプロットビデオを再生することができる。
好ましくは、第1のプロットビデオを再生する過程において、ロード進度情報を表示し、第2のプロットビデオのロードが完了したことに応答して、ロード進度情報の表示をキャンセルする。
上記ロード進度情報は、第2のプロットビデオをロードする進度を指示するために用いられる。
例示的には、図5に示すように、第1のプロットビデオを再生する過程において、ロード進度情報56、例えば「進度情報をロード中」を表示することができる。該ロード進度情報56は、プロットビデオのロードが完了した後に自動的に消える。
上述したように、本願の実施例に係る技術的手段は、第1のプロットビデオを再生する過程において、キャッシュリストに記録された第2のプロットビデオのビデオデータに基づいて、第2のプロットビデオを直接的に取得することにより、第1のプロットビデオの再生が終了した後に、第2のプロットビデオを直接的に再生し、サーバから該第2のプロットビデオをダウンロードして復号する必要がない。そのため、ロード時間が長すぎることによるビデオ再生の停止を回避し、ビデオのスムーズな再生を実現する。
また、ロード進度情報を表示することにより、プレーヤは、現在のロード進度を明確に知ることができる。
図8は、本願の1つの実施例に係るビデオ再生装置のブロック図を示す。該装置は、上記ビデオ再生方法を実現する例示的な機能を有し、上記機能は、ハードウェアによって実現されてもよく、ハードウェアが対応するソフトウェアを実行することによって実現されてもよい。該装置は、上記において説明された端末であってもよく、端末に設置されてもよい。該装置800は、要求送信モジュール810、第1の再生モジュール820、データ取得モジュール830、リスト追加モジュール840及び第2の再生モジュール850を含んでよい。
上記要求送信モジュール810は、プロット取得要求を送信するために用いられ、プロット取得要求は、第1のプロットビデオのプロット情報を取得することを要求するために用いられ、第1のプロットビデオのプロット情報は、第1のプロットビデオのビデオアドレスと、第1のプロットビデオに対応するn個のプロット発展オプションとを含み、nは正の整数である。
上記第1の再生モジュール820は、第1のプロットビデオのビデオアドレスに基づいて、第1のプロットビデオを再生するために用いられる。
上記データ取得モジュール830は、第1のプロットビデオを再生する過程において、n個のプロット発展オプションにそれぞれ対応するプロットビデオデータを取得するために用いられる。
上記リスト追加モジュール840は、n個のプロット発展オプションにそれぞれ対応するプロットビデオデータをキャッシュリストに追加するために用いられる。
上記第2の再生モジュール850は、n個のプロット発展オプションのうちのターゲットプロット発展オプションの選択命令を受信したことに応答して、キャッシュリストから第2のプロットビデオのプロットビデオデータを取得し、第2のプロットビデオを再生するために用いられ、第2のプロットビデオは、ターゲットプロット発展オプションに対応するプロットビデオを指す。
上述したように、本願の実施例に係る技術的手段は、第1のプロットビデオを再生する過程において、第1のプロットビデオに対応するプロット発展オプションのプロットビデオデータを取得し、該プロットビデオデータをキャッシュリストに追加することにより、ターゲットプロット発展オプションに対する選択命令を取得した後に、キャッシュリストから該ターゲットプロット発展オプションに対応するビデオデータを直接的に取得して再生する。サーバからビデオのスライスインデックスファイルを取得する必要がなく、該スライスインデックスファイルを解析してスライスのアドレスを取得することによりビデオセグメントを再生する必要がないため、ロード時間が長すぎることによるビデオ再生の停止を回避し、ビデオのスムーズな再生を実現する。
いくつかの可能な設計において、第1のプロットビデオのプロット情報は、少なくとも1つのプロット発展オプションに対応するビデオインデックスファイルをさらに含み、図9に示すように、上記データ取得モジュール830は、ファイル解析ユニット831、アドレス追加ユニット832及びデータ取得ユニット833を含む。
上記ファイル解析ユニット831は、n個のプロット発展オプションにそれぞれ対応するビデオインデックスファイルを解析して、n個のプロット発展オプションにそれぞれ対応するビデオアドレスを取得するために用いられる。
上記アドレス追加ユニット832は、n個のプロット発展オプションにそれぞれ対応するビデオアドレスをキャッシュ対象キューに追加するために用いられ、キャッシュ対象キューは、キャッシュ対象のプロットビデオのビデオアドレスを記録するために用いられる。
上記データ取得ユニット833は、n個のプロット発展オプションにそれぞれ対応するビデオアドレスに基づいて、n個のプロット発展オプションにそれぞれ対応するプロットビデオデータを取得するために用いられる。
いくつかの可能な設計において、上記データ取得ユニット833は、キャッシュ対象キューにキャッシュ対象のプロットビデオのビデオアドレスが存在することに応答して、ビデオ読み取りスレッドの第1のサブスレッドを呼び出して、n個のプロット発展オプションにそれぞれ対応するビデオアドレスに基づいて、n個のプロット発展オプションにそれぞれ対応するプロットビデオデータを取得するために用いられる。
いくつかの可能な設計において、第2のプロットビデオは、m個のプロットセグメントを含み、mは正の整数である。上記第2の再生モジュール850は、キャッシュリストから第2のプロットビデオの第1のプロットセグメントのプロットビデオデータを取得し、第1のプロットセグメントのプロットビデオデータに基づいて、第1のプロットセグメントを再生し、第1のプロットセグメントを再生する過程において、第1のプロットセグメントの後のm-1個のプロットセグメントのプロットビデオデータを順に取得し、m-1個のプロットセグメントのプロットビデオデータに基づいて、m-1個のプロットセグメントの、第2のプロットビデオにおける順序に応じて再生するために用いられる。
いくつかの可能な設計において、上記装置800は、データクリアモジュール860をさらに含む。
上記データクリアモジュール860は、ターゲットプロット発展オプションの選択命令を取得したことに応答して、キャッシュリストにおいて、ターゲットプロット発展オプション以外の他のプロット発展オプションに対応するプロットビデオデータをクリアするために用いられる。
いくつかの可能な設計において、上記装置800は、ファイル取得モジュール870及びビデオ取得モジュール880をさらに含む。
上記ファイル取得モジュール870は、キャッシュリストに第2のプロットビデオのプロットビデオデータが存在しないことに応答して、ビデオ読み取りスレッドの第2のサブスレッドを呼び出して、第2のプロットビデオに対応するビデオインデックスファイルを取得するために用いられる。
上記ビデオ取得モジュール880は、第2のプロットビデオに対応するビデオインデックスファイルに基づいて、第2のプロットビデオのプロットビデオデータを取得するために用いられる。
いくつかの可能な設計において、上記第1の再生モジュール820は、ビデオ読み取りスレッドの第2のサブスレッドを呼び出して、第1のプロットビデオのビデオアドレスに基づいて、第1のプロットビデオを再生するために用いられる。
図10は、本願のさらに別の実施例に係るビデオ再生装置のブロック図を示す。該装置は、上記ビデオ再生方法を実現する例示的な機能を有し、上記機能は、ハードウェアによって実現されてもよく、ハードウェアが対応するソフトウェアを実行することによって実現されてもよい。該装置は、上記において説明された端末であってもよく、端末に設置されてもよい。該装置1000は、第1の再生モジュール1010、オプション表示モジュール1020及び第2の再生モジュール1030を含んでよい。
上記第1の再生モジュール1010は、ゲームアプリケーションプログラムのユーザーインタフェースにおいて第1のプロットビデオを再生するために用いられる。
上記オプション表示モジュール1020は、第1のプロットビデオの再生が終了したことに応答して、第1のプロットビデオに対応するn個のプロット発展オプションを表示するために用いられ、nは正の整数である。
上記第2の再生モジュール1030は、n個のプロット発展オプションのうちのターゲットプロット発展オプションの選択命令を受信したことに応答して、ユーザーインタフェースにおいて第2のプロットビデオを再生するために用いられる。第2のプロットビデオは、ターゲットプロット発展オプションに対応するプロットビデオを指し、第2のプロットビデオは、キャッシュリストに記録された第2のプロットビデオのビデオデータに基づいて取得される。
上述したように、本願の実施例に係る技術的手段は、第1のプロットビデオを再生する過程において、キャッシュリストに記録された第2のプロットビデオのビデオデータに基づいて、第2のプロットビデオを直接的に取得することにより、第1のプロットビデオの再生が終了した後に、第2のプロットビデオを直接的に再生する。サーバから該第2のプロットビデオをダウンロードして復号する必要がないため、ロード時間が長すぎることによるビデオ再生の停止を回避し、ビデオのスムーズな再生を実現する。
いくつかの可能な設計において、図11に示すように、上記装置1000は、進度表示モジュール1040及び表示キャンセルモジュール1050をさらに含む。
上記進度表示モジュール1040は、第1のプロットビデオを再生する過程において、ロード進度情報を表示するために用いられ、ロード進度情報は、第2のプロットビデオをロードする進度を指示するために用いられる。
上記表示キャンセルモジュール1050は、第2のプロットビデオのロードが完了したことに応答して、ロード進度情報の表示をキャンセルするために用いられる。
説明すべきこととして、上記実施例に係る装置については、その機能を実現するときに、上記各機能モジュールの区分で例を挙げて説明したが、実際の応用においては、必要に応じて上記機能を、異なる機能モジュールに割り当てて実現することができる。すなわち機器の内部構成を異なる機能モジュールに区分することにより、以上に説明された一部又は全ての機能を実現することができる。さらに、上記実施例に係る装置は、方法実施例と同じ構想に属し、その具体的な実現過程の詳細については方法の実施例を参照できるため、ここでは説明を省略する。
図12に示すように、本願の1つの実施例に係る端末の構造ブロック図を示す。一般的に、端末1200は、プロセッサ1201及びメモリ1202を含む。
プロセッサ1201は、1つ以上の処理コア、例えば4-コアのプロセッサ、8-コアのプロセッサなどを含んでよい。プロセッサ1201は、DSP(Digital Signal Processing、デジタル信号処理)、FPGA(Field Programmable Gate Array、フィールドプログラマブルゲートアレイ)、PLA(Programmable Logic Array、プログラマブルロジックアレイ)のうちの少なくとも1つのハードウェア形態を用いて実現されてよい。プロセッサ1201は、メインプロセッサ及びコプロセッサを含んでよく、メインプロセッサは、アウェイク状態でのデータを処理するために用いられるプロセッサであり、CPU(Central Processing Unit、中央処理装置)とも呼ばれ、コプロセッサは、スタンバイ状態でのデータを処理するために用いられる低消費電力プロセッサである。いくつかの実施例において、プロセッサ1201には、GPU(Graphics Processing Unit、画像プロセッサ)が集積されてよく、GPUは、表示画面に表示する必要があるコンテンツに対するレンダリング及び描画を行うために用いられる。いくつかの実施例において、プロセッサ1201は、AI(Artificial Intelligence、人工知能)プロセッサをさらに含んでよく、該AIプロセッサは、機械学習に関連する演算操作を処理するために用いられる。
メモリ1202は、1つ以上のコンピュータ可読記憶媒体を含でんよく、該コンピュータ可読記憶媒体は、非一時的であってよい。メモリ1202は、高速ランダムアクセスメモリ、及び不揮発性メモリ、例えば1つ以上の磁気ディスクストレージ機器、フラッシュメモリストレージ機器をさらに含んでよい。いくつかの実施例において、メモリ1202における非一時的コンピュータ可読記憶媒体は、少なくとも1つの命令、少なくとも1つのプログラム、コードセット又は命令セットを記憶するために用いられ、該少なくとも1つの命令、少なくとも1つのプログラム、コードセット又は命令セットは、プロセッサ1201によって実行されることにより、本願の方法実施例に係るビデオ再生方法を実現するために用いられる。
いくつかの実施例において、端末1200は、周辺機器インタフェース1203及び少なくとも1つの周辺機器をさらに含む。プロセッサ1201、メモリ1202及び周辺機器インタフェース1203は、バス又は信号線を介して接続されてよい。各周辺機器は、バス、信号線又は回路基板を介して周辺機器インタフェース1203に接続されてよい。具体的には、周辺機器は、通信インタフェース1204、表示画面1205、オーディオ回路1206、カメラアセンブリ1207、位置決めアセンブリ1208及び電源1209のうちの少なくとも1種を含んでよい。
当業者であれば理解できるように、図12に示す構造は、端末1200を限定するものではなく、図示よりも多い又は少ない部品を含んでもよく、いくつかの部品を組み合わせてもよく、異なるアセンブリを用いて配置されてもよい。
図13に示すように、本願の1つの実施例に係るサーバの構造概略図である。具体的には、
上記サーバ1300は、CPU(Central Processing Unit、中央処理装置)1301と、RAM(Random Access Memory、ランダムアクセスメモリ)1302及びROM(Read Only Memory、リードオンリーメモリ)1303を含むシステムメモリ1304と、システムメモリ1304及び中央処理装置1301を接続するシステムバス1305と、を含む。上記サーバ1300は、コンピュータ内の各部品の間の情報の伝送を支援する基本I/O(Input/Output入力/出力)システム1306と、オペレーティングシステム1313、アプリケーションプログラム1314及び他のプログラムモジュール1312を記憶するための大容量のストレージ機器1307と、をさらに含む。
上記基本入力/出力システム1306は、情報を表示するためのディスプレイ1308と、ユーザーが情報を入力するためのマウス、キーボードなどの入力機器1309と、を含む。ここで、上記ディスプレイ1308及び入力機器1309は、いずれもシステムバス1305に接続された入出力コントローラ1310により中央処理装置1301に接続される。上記基本入力/出力システム1306は、入出力コントローラ1310をさらに含むことにより、キーボード、マウス又は電子ペンなどの複数の他の機器からの入力を受信して処理するために用いられる。同様に、入出力コントローラ1310は、表示画面、プリンタ又は他のタイプの出力機器に出力をさらに提供する。
上記大容量のストレージ機器1307は、システムバス1305に接続された大容量のストレージコントローラ(図示せず)により中央処理装置1301に接続される。上記大容量のストレージ機器1307及びその関連するコンピュータ可読媒体は、サーバ1300に不揮発性記憶を提供する。すなわち、上記大容量のストレージ機器1307は、ハードディスク又はCD-ROM(Compact Disc Read-Only Memory、コンパクトディスクリードオンリーメモリ)ドライブのようなコンピュータ可読媒体(図示せず)を含んでよい。
汎用性を失うことなく、上記コンピュータ可読媒体は、コンピュータ記憶媒体及び通信媒体を含んでよい。コンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、又はその他のデータなどの情報を記憶するための任意の方法もしくは技術により実現される揮発性及び不揮発性、リムーバブルな及び非リムーバブルの媒体を含む。コンピュータ記憶媒体は、RAM、ROM、EPROM(Erasable Programmable Read Only Memory、消去可能プログラマブルリードオンリーメモリ)、フラッシュメモリ又は他のソリッドメモリ技術、CD-ROM、DVD又は他の光学メモリ、磁気テープカートリッジ、磁気テープ、磁気ディスク記憶又は他の磁気ストレージ機器を含む。当然のことながら、当業者であれば分かるように、上記コンピュータ記憶媒体は、上記複数の種類に限定されない。上記システムメモリ1304と大容量のストレージ機器1307とをまとめてメモリと呼ぶことができる。
本願の様々な実施例によれば、上記サーバ1300は、さらにインターネットなどのネットワークを介してネットワークの遠隔コンピュータに接続されて動作してよい。すなわち、サーバ1300は、上記システムバス1305に接続されたネットワークインタフェースユニット1311によりネットワーク1312に接続されてよく、或いはネットワークインタフェースユニット1311を用いて他のタイプのネットワーク又は遠隔コンピュータシステム(図示せず)に接続されてよい。
上記メモリは、少なくとも1つの命令、少なくとも1つのプログラム、コードセット又はコ命令セットをさらに含み、上記少なくとも1つの命令、少なくとも1つのプログラム、コードセット又は命令セットは、メモリに記憶され、配置により1つ又は1つ以上のプロセッサによって実行されることにより、上記ビデオ再生方法を実現する。
例示的な実施例において、コンピュータ機器がさらに提供される。該コンピュータ機器は、端末又はサーバであってよい。上記コンピュータ機器は、プロセッサ及びメモリを含み、該メモリには、少なくとも1つの命令、少なくとも1つのプログラム、コードセット又は命令セットが記憶され、該少なくとも1つの命令、該少なくとも1つのプログラム、該コードセット又は命令セットは、該プロセッサによってロードされ、実行されることにより、上記ビデオ再生方法を実現する。
例示的な実施例において、コンピュータ可読記憶媒体がさらに提供され、該コンピュータ可読記憶媒体には、少なくとも1つの命令、少なくとも1つのプログラム、コードセット又は命令セットが記憶され、該少なくとも1つの命令、該少なくとも1つのプログラム、該コードセット又は該命令セットは、プロセッサによって実行されると、上記ビデオ再生方法を実現する。
例示的な実施例において、コンピュータ可読記憶媒体がさらに提供され、該コンピュータ可読記憶媒体には、コンピュータプログラムが記憶され、該コンピュータプログラムは、プロセッサにより実行されると、上記ビデオ再生方法を実現する。
例示的な実施例において、コンピュータプログラム製品がさらに提供され、該コンピュータプログラム製品は、コンピュータ可読記憶媒体に記憶されているコンピュータ命令を含む。コンピュータ機器のプロセッサは、該コンピュータ可読記憶媒体から該コンピュータ命令を読み取り、該プロセッサは、該コンピュータ命令を実行することにより、該コンピュータ機器に上記各態様に記載のビデオ再生方法を実行させる。
10 端末
20 サーバ
50 ユーザーインタフェース
53 解像度調整コントロール
54 再生速度調整コントロール
55 スクリーンショットコントロール
800 装置
810 要求送信モジュール
820 第1の再生モジュール
830 データ取得モジュール
831 ファイル解析ユニット
832 アドレス追加ユニット
833 データ取得ユニット
840 リスト追加モジュール
850 第2の再生モジュール
860 データクリアモジュール
870 ファイル取得モジュール
880 ビデオ取得モジュール
1000 装置
1010 第1の再生モジュール
1020 オプション表示モジュール
1030 第2の再生モジュール
1040 進度表示モジュール
1050 表示キャンセルモジュール
1200 端末
1201 プロセッサ
1202 メモリ
1203 周辺機器インタフェース
1204 通信インタフェース
1205 表示画面
1206 オーディオ回路
1207 カメラアセンブリ
1208 アセンブリ
1209 電源
1300 サーバ
1301 中央処理装置
1304 システムメモリ
1305 システムバス
1306 出力システム
1307 ストレージ機器
1308 ディスプレイ
1309 入力機器
1310 入出力コントローラ
1311 ネットワークインタフェースユニット
1313 オペレーティングシステム
1314 アプリケーションプログラム

Claims (12)

  1. 端末に応用される、ビデオ再生方法であって、
    プロット取得要求を送信するステップであって、前記プロット取得要求は、第1のプロットビデオのプロット情報を取得することを要求するために用いられ、前記第1のプロットビデオのプロット情報は、前記第1のプロットビデオのビデオアドレスと、前記第1のプロットビデオに対応するn個のプロット発展オプションとを含み、nは正の整数である、ステップと、
    前記第1のプロットビデオのビデオアドレスに基づいて、前記第1のプロットビデオを再生するステップと、
    前記第1のプロットビデオを再生する過程において、n個の前記プロット発展オプションにそれぞれ対応するプロットビデオデータを取得するステップと、
    n個の前記プロット発展オプションにそれぞれ対応するプロットビデオデータをキャッシュリストに追加するステップと、
    n個の前記プロット発展オプションのうちのターゲットプロット発展オプションの選択命令を受信したことに応答して、前記キャッシュリストから第2のプロットビデオのプロットビデオデータを取得し、前記第2のプロットビデオを再生するステップであって、前記第2のプロットビデオは、前記ターゲットプロット発展オプションに対応するプロットビデオを指す、ステップと、を含み、
    前記キャッシュリストに前記第2のプロットビデオのプロットビデオデータが存在しないことに応答して、ビデオ読み取りスレッドの第2のサブスレッドを呼び出して、前記第2のプロットビデオに対応するビデオインデックスファイルを取得するステップと、
    前記第2のプロットビデオに対応するビデオインデックスファイルに基づいて、前記第2のプロットビデオのプロットビデオデータを取得するステップと、をさらに含むことを特徴とするビデオ再生方法。
  2. 前記第1のプロットビデオのプロット情報は、少なくとも1つの前記プロット発展オプションに対応するビデオインデックスファイルをさらに含み、
    前記第1のプロットビデオを再生する過程において、n個の前記プロット発展オプションにそれぞれ対応するプロットビデオデータを取得するステップは、
    n個の前記プロット発展オプションにそれぞれ対応するビデオインデックスファイルを解析して、n個の前記プロット発展オプションにそれぞれ対応するビデオアドレスを取得するステップと、
    n個の前記プロット発展オプションにそれぞれ対応するビデオアドレスをキャッシュ対象キューに追加するステップであって、前記キャッシュ対象キューは、キャッシュ対象のプロットビデオのビデオアドレスを記録するために用いられる、ステップと、
    n個の前記プロット発展オプションにそれぞれ対応するビデオアドレスに基づいて、n個の前記プロット発展オプションにそれぞれ対応するプロットビデオデータを取得するステップと、を含む、ことを特徴とする請求項1に記載の方法。
  3. n個の前記プロット発展オプションにそれぞれ対応するビデオアドレスに基づいて、n個の前記プロット発展オプションにそれぞれ対応するプロットビデオデータを取得するステップは、
    前記キャッシュ対象キューに前記キャッシュ対象のプロットビデオのビデオアドレスが存在することに応答して、ビデオ読み取りスレッドの第1のサブスレッドを呼び出して、n個の前記プロット発展オプションにそれぞれ対応するビデオアドレスに基づいて、n個の前記プロット発展オプションにそれぞれ対応するプロットビデオデータを取得するステップを含む、ことを特徴とする請求項2に記載の方法。
  4. 前記第2のプロットビデオは、m個のプロットセグメントを含み、mは正の整数であり、
    前記キャッシュリストから第2のプロットビデオのプロットビデオデータを取得し、前記第2のプロットビデオを再生するステップは、
    前記キャッシュリストから前記第2のプロットビデオの第1のプロットセグメントのプロットビデオデータを取得するステップと、
    前記第1のプロットセグメントのプロットビデオデータに基づいて、前記第1のプロットセグメントを再生するステップと、
    前記第1のプロットセグメントを再生する過程において、前記第1のプロットセグメントの後のm-1個のプロットセグメントのプロットビデオデータを順に取得するステップと、
    m-1個の前記プロットセグメントのプロットビデオデータに基づいて、m-1個の前記プロットセグメントの、前記第2のプロットビデオにおける順序に応じて再生するステップと、を含む、ことを特徴とする請求項1に記載の方法。
  5. 前記ターゲットプロット発展オプションの選択命令を取得したことに応答して、前記キャッシュリストにおいて、前記ターゲットプロット発展オプション以外の他のプロット発展オプションに対応するプロットビデオデータをクリアするステップをさらに含む、ことを特徴とする請求項1~4のいずれか一項に記載の方法。
  6. 前記第1のプロットビデオのビデオアドレスに基づいて、前記第1のプロットビデオを再生するステップは、
    ビデオ読み取りスレッドの第2のサブスレッドを呼び出して、前記第1のプロットビデオのビデオアドレスに基づいて、前記第1のプロットビデオを再生するステップを含む、ことを特徴とする請求項1~4のいずれか一項に記載の方法。
  7. 端末に応用される、ビデオ再生方法であって、
    ゲームアプリケーションプログラムのユーザーインタフェースにおいて第1のプロットビデオを再生するステップと、
    前記第1のプロットビデオの再生が終了したことに応答して、前記第1のプロットビデオに対応するn個のプロット発展オプションを表示するステップであって、nは正の整数である、ステップと、
    n個の前記プロット発展オプションのうちのターゲットプロット発展オプションの選択命令を受信したことに応答して、前記ユーザーインタフェースにおいて第2のプロットビデオを再生するステップであって、前記第2のプロットビデオは、前記ターゲットプロット発展オプションに対応するプロットビデオを指し、前記第2のプロットビデオは、キャッシュリストに記録された前記第2のプロットビデオのビデオデータに基づいて取得される、ステップと、を含み、
    前記キャッシュリストに前記第2のプロットビデオのプロットビデオデータが存在しないことに応答して、ビデオ読み取りスレッドの第2のサブスレッドを呼び出して、前記第2のプロットビデオに対応するビデオインデックスファイルを取得するステップと、
    前記第2のプロットビデオに対応するビデオインデックスファイルに基づいて、前記第2のプロットビデオのプロットビデオデータを取得するステップと、をさらに含むことを特徴とするビデオ再生方法。
  8. 前記第1のプロットビデオを再生する過程において、ロード進度情報を表示するステップであって、前記ロード進度情報は、前記第2のプロットビデオをロードする進度を指示するために用いられる、ステップと、
    前記第2のプロットビデオのロードが完了したことに応答して、前記ロード進度情報の表示をキャンセルするステップと、をさらに含む、ことを特徴とする請求項に記載の方法。
  9. ビデオ再生装置であって、前記装置は、
    要求送信モジュールであって、プロット取得要求を送信するために用いられ、前記プロット取得要求は、第1のプロットビデオのプロット情報を取得することを要求するために用いられ、前記第1のプロットビデオのプロット情報は、前記第1のプロットビデオのビデオアドレスと、前記第1のプロットビデオに対応するn個のプロット発展オプションとを含み、nは正の整数である、要求送信モジュールと、
    前記第1のプロットビデオのビデオアドレスに基づいて、前記第1のプロットビデオを再生するために用いられる第1の再生モジュールと、
    前記第1のプロットビデオを再生する過程において、n個の前記プロット発展オプションにそれぞれ対応するプロットビデオデータを取得するために用いられるデータ取得モジュールと、
    n個の前記プロット発展オプションにそれぞれ対応するプロットビデオデータをキャッシュリストに追加するために用いられるリスト追加モジュールと、
    第2の再生モジュールであって、n個の前記プロット発展オプションのうちのターゲットプロット発展オプションの選択命令を受信したことに応答して、前記キャッシュリストから第2のプロットビデオのプロットビデオデータを取得し、前記第2のプロットビデオを再生するために用いられ、前記第2のプロットビデオは、前記ターゲットプロット発展オプションに対応するプロットビデオを指す、第2の再生モジュールと、を含み、
    前記キャッシュリストに前記第2のプロットビデオのプロットビデオデータが存在しないことに応答して、ビデオ読み取りスレッドの第2のサブスレッドを呼び出して、前記第2のプロットビデオに対応するビデオインデックスファイルを取得するファイル取得モジュールと、
    前記第2のプロットビデオに対応するビデオインデックスファイルに基づいて、前記第2のプロットビデオのプロットビデオデータを取得するビデオ取得モジュールと、をさらに含む、ことを特徴とするビデオ再生装置。
  10. ビデオ再生装置であって、前記装置は、
    ゲームアプリケーションプログラムのユーザーインタフェースにおいて第1のプロットビデオを再生するために用いられる第1の再生モジュールと、
    オプション表示モジュールであって、前記第1のプロットビデオの再生が終了したことに応答して、前記第1のプロットビデオに対応するn個のプロット発展オプションを表示するために用いられ、nは正の整数である、オプション表示モジュールと、
    第2の再生モジュールであって、n個の前記プロット発展オプションのうちのターゲットプロット発展オプションに対する選択命令に応答して、前記ユーザーインタフェースにおいて第2のプロットビデオを再生するために用いられ、前記第2のプロットビデオは、前記ターゲットプロット発展オプションに対応するプロットビデオを指し、前記第2のプロットビデオは、キャッシュリストに記録された前記第2のプロットビデオのビデオデータに基づいて取得される、第2の再生モジュールと、を含み、
    前記キャッシュリストに前記第2のプロットビデオのプロットビデオデータが存在しないことに応答して、ビデオ読み取りスレッドの第2のサブスレッドを呼び出して、前記第2のプロットビデオに対応するビデオインデックスファイルを取得するファイル取得モジュールと、
    前記第2のプロットビデオに対応するビデオインデックスファイルに基づいて、前記第2のプロットビデオのプロットビデオデータを取得するビデオ取得モジュールと、をさらに含む、ことを特徴とするビデオ再生装置。
  11. プロセッサ及びメモリを含み、前記メモリには、少なくとも1つのプログラム、コードセット又は命令セットが記憶され、前記少なくとも1つのプログラム、前記コードセット又は命令セットは、前記プロセッサによってロードされ、実行されることにより、請求項1~7のいずれか一項に記載の方法を実現するか又は請求項7又は8に記載の方法を実現する、ことを特徴とするコンピュータ機器。
  12. 少なくとも1つのコードセット又は命令セットが記憶され、前記コードセット又は命令セットは、プロセッサによってロードされ、実行されることにより、請求項1~6のいずれか一項に記載の方法を実施するか又は請求項7又は8に記載の方法を実施する、ことを特徴とするコンピュータプログラム。
JP2022524677A 2020-02-14 2020-11-03 ビデオ再生方法、装置、機器及びコンピュータプログラム Active JP7386990B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN202010105302.0 2020-02-14
CN202010105302.0A CN111277869B (zh) 2020-02-14 2020-02-14 视频播放方法、装置、设备和存储介质
PCT/CN2020/126105 WO2021159770A1 (zh) 2020-02-14 2020-11-03 视频播放方法、装置、设备和存储介质

Publications (2)

Publication Number Publication Date
JP2022553996A JP2022553996A (ja) 2022-12-27
JP7386990B2 true JP7386990B2 (ja) 2023-11-27

Family

ID=70999178

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022524677A Active JP7386990B2 (ja) 2020-02-14 2020-11-03 ビデオ再生方法、装置、機器及びコンピュータプログラム

Country Status (5)

Country Link
US (1) US20220174346A1 (ja)
EP (1) EP4021000A4 (ja)
JP (1) JP7386990B2 (ja)
CN (1) CN111277869B (ja)
WO (1) WO2021159770A1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111277869B (zh) * 2020-02-14 2021-12-14 腾讯科技(深圳)有限公司 视频播放方法、装置、设备和存储介质
CN112954479A (zh) * 2021-01-26 2021-06-11 广州欢网科技有限责任公司 基于电视终端的剧情类游戏实现方法及装置
CN113271475B (zh) * 2021-04-12 2023-01-10 北京奇艺世纪科技有限公司 一种数据处理方法、系统、电子设备及存储介质
CN113347498A (zh) * 2021-05-28 2021-09-03 北京爱奇艺科技有限公司 一种视频播放方法、装置及计算机可读存储介质
CN113797542B (zh) * 2021-09-29 2024-04-23 上海完美时空软件有限公司 任务数据的生成方法及装置、存储介质、电子装置
CN114125532A (zh) * 2021-10-30 2022-03-01 杭州当虹科技股份有限公司 互动视频无缝切播方法和装置
CN114051152A (zh) * 2022-01-17 2022-02-15 飞狐信息技术(天津)有限公司 视频播放方法及装置、存储介质及电子设备
CN115175000A (zh) * 2022-06-29 2022-10-11 网易(杭州)网络有限公司 游戏视频的播放方法、装置、介质及电子设备
CN116582696B (zh) * 2023-07-14 2023-09-26 北京医百科技有限公司 切换节目场景到预设监视窗口的方法和系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013084544A1 (ja) 2011-12-07 2013-06-13 シャープ株式会社 表示装置、表示方法、及び表示プログラム
US20130259442A1 (en) 2012-04-02 2013-10-03 Jonathan BLOCH Systems and methods for loading more than one video content at a time
JP2019051411A (ja) 2019-01-09 2019-04-04 グリー株式会社 制御プログラム、制御方法及びコンピュータ

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101127867A (zh) * 2006-08-16 2008-02-20 任峰 可选择情节的视频播放方法
CN101282348B (zh) * 2007-04-06 2011-03-30 上海晨兴电子科技有限公司 运用http协议实现流媒体功能的方法
KR101435412B1 (ko) * 2007-10-18 2014-09-01 삼성전자주식회사 컨텐츠의 줄거리 정보 제공 방법 및 장치
JP5488180B2 (ja) * 2010-04-30 2014-05-14 ソニー株式会社 コンテンツ再生装置、制御情報提供サーバ、及びコンテンツ再生システム
KR101280962B1 (ko) * 2011-06-15 2013-07-02 인하대학교 산학협력단 비디오 서버 및 그 운영 방법
CN102843605A (zh) * 2012-08-22 2012-12-26 Tcl集团股份有限公司 视频播放方法、装置
US9009619B2 (en) * 2012-09-19 2015-04-14 JBF Interlude 2009 Ltd—Israel Progress bar for branched videos
US9106965B2 (en) * 2012-12-27 2015-08-11 Echostar Technologies L.L.C. Using idle resources to reduce channel change times
CN105792020A (zh) * 2014-12-26 2016-07-20 北京奇虎科技有限公司 播放视频文件的方法及装置
US10582265B2 (en) * 2015-04-30 2020-03-03 JBF Interlude 2009 LTD Systems and methods for nonlinear video playback using linear real-time video players
CN106131610A (zh) * 2016-06-28 2016-11-16 乐视控股(北京)有限公司 在线播放视频的方法、设备及装置
CN106534946A (zh) * 2016-10-26 2017-03-22 腾讯科技(深圳)有限公司 视频播放的控制方法和装置
CN107277558B (zh) * 2017-06-19 2020-03-31 网宿科技股份有限公司 一种实现直播视频同步的播放器客户端、系统及方法
US10555023B1 (en) * 2017-09-25 2020-02-04 Amazon Technologies, Inc. Personalized recap clips
CN108156523A (zh) * 2017-11-24 2018-06-12 互影科技(北京)有限公司 交互视频播放的互动方法及装置
CN107948751A (zh) * 2017-11-24 2018-04-20 互影科技(北京)有限公司 分支剧情视频的播放方法及装置
CN108124187A (zh) * 2017-11-24 2018-06-05 互影科技(北京)有限公司 交互视频的生成方法及装置
CN108260014A (zh) * 2018-04-12 2018-07-06 腾讯科技(上海)有限公司 一种视频播放方法和终端以及存储介质
CN109788350A (zh) * 2019-01-18 2019-05-21 北京睿峰文化发展有限公司 一种基于影视剧情选择无缝连续播放的方法和装置
CN109600635B (zh) * 2019-01-24 2021-04-27 四川长虹电器股份有限公司 一种根据智能电视视频按需推送信息的系统及方法
CN110366024A (zh) * 2019-07-01 2019-10-22 北京达佳互联信息技术有限公司 一种播放视频的方法及装置
CN110430461A (zh) * 2019-08-28 2019-11-08 腾讯科技(深圳)有限公司 一种控制视频播放的方法、装置及视频播放设备
CN111277869B (zh) * 2020-02-14 2021-12-14 腾讯科技(深圳)有限公司 视频播放方法、装置、设备和存储介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013084544A1 (ja) 2011-12-07 2013-06-13 シャープ株式会社 表示装置、表示方法、及び表示プログラム
US20130259442A1 (en) 2012-04-02 2013-10-03 Jonathan BLOCH Systems and methods for loading more than one video content at a time
JP2019051411A (ja) 2019-01-09 2019-04-04 グリー株式会社 制御プログラム、制御方法及びコンピュータ

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Heekwang Kim,Won Joo Park,Sun Joong Kim,Kwangsue Chung,Context-aware prefetching scheme for interactive multimedia services based on HTTP adaptive streaming,2016 2nd IEEE International Conference on Computer and Communications (ICCC),米国,IEEE,2016年10月14日,pp. 2123 - 2126,https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=7925075

Also Published As

Publication number Publication date
WO2021159770A1 (zh) 2021-08-19
US20220174346A1 (en) 2022-06-02
CN111277869B (zh) 2021-12-14
CN111277869A (zh) 2020-06-12
EP4021000A4 (en) 2022-12-07
JP2022553996A (ja) 2022-12-27
EP4021000A1 (en) 2022-06-29

Similar Documents

Publication Publication Date Title
JP7386990B2 (ja) ビデオ再生方法、装置、機器及びコンピュータプログラム
US11374995B2 (en) Multimedia file processing
US9485305B2 (en) API platform that includes server-executed client-based code
US8621069B1 (en) Provisioning a computing application executing on a cloud to a client device
JP2015515660A (ja) ゲートウェイサーバ又はサービスを介してクラウドコンピューティングサービスストレージにアクセスする複数の媒体装置
JP7397094B2 (ja) リソース構成方法、リソース構成装置、コンピューター機器、及びコンピュータープログラム
US11588875B2 (en) Multi-media redirection for media applications
CA3120826A1 (en) Techniques for managing generation and rendering of user interfaces on client devices
US20210258369A1 (en) Web browser multi-media redirection
US9578395B1 (en) Embedded manifests for content streaming
US11800184B2 (en) Method and apparatus for media scene description
US20230405455A1 (en) Method and apparatus for processing cloud gaming resource data, computer device, and storage medium
WO2021012723A1 (zh) 多媒体文件存储、读取方法
KR102134250B1 (ko) 스트리밍 콘텐츠의 재생 방법 및 시스템
US9088631B2 (en) Game streaming system and method of supporting the multiuser and multiplatform
KR20200105178A (ko) 고화질 영상 서비스를 위한 가상 데스크탑 시스템 및 그 데이터 처리 방법
US20200272568A1 (en) Adaptive retrieval of objects from remote storage
Soni et al. Introduction to nginx web server
KR101341441B1 (ko) 멀티미디어 콘텐츠 분할 및 분산 방법
US12052447B1 (en) Dynamically moving transcoding of content between servers
KR20160084215A (ko) 최적 클라우드 스트리밍 서비스를 위한 동적 어플리케이션 처리 방법 및 이를 위한 장치
Rodríguez‐Silva et al. Improving the virtualization of rich applications by combining VNC and streaming protocols at the hypervisor layer
Duong Distributed video processing system on cloud servers
KR20160022505A (ko) 클라우드 스트리밍 서비스 시스템, 클라우드 스트리밍 서비스 유형에 따른 서비스 처리 방법 및 이를 위한 장치

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220426

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220426

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230424

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230522

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20230822

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230823

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231114

R150 Certificate of patent or registration of utility model

Ref document number: 7386990

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150