JP7336179B2 - 通信装置、通信方法、およびプログラム - Google Patents

通信装置、通信方法、およびプログラム Download PDF

Info

Publication number
JP7336179B2
JP7336179B2 JP2018042445A JP2018042445A JP7336179B2 JP 7336179 B2 JP7336179 B2 JP 7336179B2 JP 2018042445 A JP2018042445 A JP 2018042445A JP 2018042445 A JP2018042445 A JP 2018042445A JP 7336179 B2 JP7336179 B2 JP 7336179B2
Authority
JP
Japan
Prior art keywords
communication device
content
dynamic content
control unit
mirroring
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
JP2018042445A
Other languages
English (en)
Other versions
JP2019159505A (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.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2018042445A priority Critical patent/JP7336179B2/ja
Priority to US16/275,937 priority patent/US20190278472A1/en
Priority to KR1020190024990A priority patent/KR20190106730A/ko
Publication of JP2019159505A publication Critical patent/JP2019159505A/ja
Application granted granted Critical
Publication of JP7336179B2 publication Critical patent/JP7336179B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1454Digital output to display device ; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04883Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
    • 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/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/43615Interfacing a Home Network, e.g. for connecting the client to a plurality of peripherals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/165Management of the audio stream, e.g. setting of volume, audio stream path
    • 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
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • 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/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/4363Adapting the video stream to a specific local network, e.g. a Bluetooth® network
    • H04N21/43637Adapting the video stream to a specific local network, e.g. a Bluetooth® network involving a wireless protocol, e.g. Bluetooth, RF or wireless LAN [IEEE 802.11]
    • 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/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47202End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting content on demand, e.g. video on demand
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04808Several contacts: gestures triggering a specific function, e.g. scrolling, zooming, right-click, when the user establishes several contacts with the surface simultaneously; e.g. using several fingers or a combination of fingers and pen
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/0486Drag-and-drop
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2354/00Aspects of interface with display user
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/02Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
    • H04W84/10Small scale networks; Flat hierarchical networks
    • H04W84/12WLAN [Wireless Local Area Networks]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Tourism & Hospitality (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Databases & Information Systems (AREA)
  • Economics (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Description

本発明は、コンテンツの再生に関する。
近年、他の通信装置との間で、表示している画面や再生している音声を共有することができる通信装置が存在する。送信装置が表示している画面や再生している音声の情報として、画像データや音声データを受信装置へ伝送することで、表示している画面や再生している音声を送信装置と受信装置とで共有することができる。これをミラーリング機能という。
また、受信装置に自装置が保持しているコンテンツを送信し、再生させることができる送信装置も存在する。これをダイレクトストリーミング機能という。ダイレクトストリーミング機能によりコンテンツを再生する場合、送信装置はコンテンツを再生しなくてもよい。
また、受信装置に送信装置以外の外部装置からコンテンツを取得して再生させることができる送信装置も存在する。これをコンテンツリダイレクト機能という。コンテンツリダイレクト機能では、外部装置が有するコンテンツの所在情報を送信装置が受信装置に送信し、受信装置はコンテンツの所在情報に基づいて外部装置からコンテンツを取得し再生する。
特許文献1には、ミラーリング機能とコンテンツリダイレクト機能との両方でコンテンツを再生可能な通信装置が、画面の共有操作が行われた場合にコンテンツの属性や自装置の負荷状況に応じて何れかの再生方法でコンテンツを再生することが開示されている。
特開2016-71638号公報
ミラーリング機能などによってコンテンツを再生可能な通信装置において、コンテンツの再生を開始する場合、ユーザは通信装置の画面上に表示されたコンテンツの所在情報が関連付けられた関連表示を選択する。コンテンツの所在情報が関連付けられた関連表示とは、例えばコンテンツのURIがリンクされたサムネイルや再生ボタンのことである。通信装置のユーザがサムネイルや再生ボタンを選択すると、コンテンツの再生を制御するメニュー画面に遷移、あるいはコンテンツの再生が開始する。
複数の再生方法でコンテンツを再生可能な通信装置が、ユーザによる関連表示の選択を受け付けた場合、コンテンツの属性などに基づいてコンテンツの再生方法を選択すると、ユーザの望む再生方法でコンテンツを再生できない虞がある。
上記を鑑み、本発明の通信装置は、ユーザ操作に基づいた再生方法でコンテンツを再生できるようにすることを目的とする。
上記目的の少なくとも1つを達成するため、本発明の1つの側面としての通信装置は、動画データ又は映像データである動的コンテンツのリソースを示すURI(Uniform Resource Identifier)に基づいて外部装置から対応する動的コンテンツを取得し、当該取得した動的コンテンツの再生処理を通信装置上で行い、当該再生処理により得られる再生中の前記動的コンテンツを示す画像を含む画面を前記通信装置の表示部に表示し、前記通信装置の前記表示部に表示されている、前記再生中の前記動的コンテンツを示す画像を含む画面を示す画像データを他の通信装置に送信して他の通信装置に前記再生中の前記動的コンテンツを示す画像を含む画面をミラーリングする第1の処理を行う第1の処理手段と、前記動的コンテンツのリソースを示す前記URIを他の通信装置に送信する第2の処理を行う第2の処理手段と、前記動的コンテンツのリソースを示す前記URIが前記通信装置に保持されている状態、且つ、当該URIに対応する動画データ又は映像データである動的コンテンツの再生処理を開始する前に、前記動的コンテンツに関わる所定のユーザ操作を受け付けたことに従って、前記動的コンテンツの共有方法を選択する表示アイテムを表示する表示制御手段と、を有し、前記表示制御手段は、前記動的コンテンツに関わるユーザ操作であって、前記所定のユーザ操作とは異なる第2の所定のユーザ操作を、前記動的コンテンツに対応する前記URIが前記通信装置に保持されている状態、且つ、当該URIで示される動画データ又は映像データである前記動的コンテンツの再生処理を開始する前に受け付けた場合、前記表示アイテムを表示することなく、前記第1の処理手段による前記第1の処理を開始するよう制御することを特徴とする。
本発明の1つの側面によればユーザ操作に基づいた再生方法でコンテンツを再生できる通信装置提供できるようになる
通信装置101が参加するネットワークのネットワーク構成を示す図である。 通信装置101のハードウェア構成を示す図である。 通信装置101と通信装置102とが、ミラーリングを実施する際に実行する処理を示すフローチャートである。 通信装置101が入力されたユーザ操作に基づいてメニュー画面を表示し、選択された再生方法でコンテンツを再生する際に実行する処理を示すフローチャートである。 通信装置101が入力されたユーザ操作に基づいた再生方法でコンテンツを再生する際に実行する処理を示すフローチャートである。 通信装置101が入力されたユーザ操作に基づいた再生方法でコンテンツを再生する際に実行する処理を示す別のフローチャートである。 通信装置101がコンテンツのサムネイルに対するユーザ操作に基づいて表示する表示画面の一例を示す図である。 通信装置101が複数の通信装置102を検出している場合に、コンテンツのサムネイルに対するユーザ操作に基づいて表示する表示画面の一例を示す図である。 通信装置101がコンテンツの所在情報が関連付けられていない表示に対するユーザ操作に基づいて表示する表示画面の一例を示す図である。
以下、添付の図面を参照して実施形態を詳細に説明する。なお、以下の実施形態において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
<実施形態1>
図1に、本実施形態に係る通信装置101が参加するネットワークのネットワーク構成を示す。図1のネットワーク110上で、各装置はIEEE802.11シリーズ規格に準拠した無線通信方式で通信を行う。IEEEとは、Institute of Electrical and Electronics Engineersの略である。
通信装置101は、通信装置102とWi-Fi Direct規格に準拠した無線通信を行う。この場合、通信装置101と通信装置102とは、アクセスポイント(AP)103を介さず直接無線通信する。また、通信装置101は通信装置102とIEEE802.11シリーズ規格に準拠したインフラストラクチャネットワーク上で、AP103を介した無線通信も行うことができる。
なお、ネットワーク110上で、各装置はIEEE802.11シリーズ規格に準拠した無線通信に加えて、Bluetooth(登録商標)、NFC、UWB、ZigBee、MBOAなどの他の無線通信方式に準拠した無線通信も利用してよい。なお、UWBはUltra Wide Bandの略であり、MBOAはMulti Band OFDM Allianceの略である。なお、OFDMはOrthogonal Frequency Division Multiplexingの略である。また、NFCはNear Field Communicationの略である。UWBには、ワイヤレスUSB、ワイヤレス1394、WiNETなどが含まれる。また、有線LANなどの有線通信方式に準拠した通信方式も利用してよい。
本実施形態において、通信装置101と通信装置102とは、Wi-Fi Miracast規格に準拠したミラーリングを行う。通信装置101(送信装置)は、Wi-Fi Miracast規格に準拠し、通信装置102(受信装置)と表示している画面や再生している音声を共有する。具体的には、送信装置が表示している画面や再生している音声の情報として、画像データや音声データを、ネットワーク110を介して受信装置へ伝送することで、送信装置と受信装置とで表示している画面や再生している音声を共有する。これを、ミラーリングという。通信装置101は、Wi-Fi Miracast規格において、自装置が表示している画面あるいは再生している音声の少なくとも一方を送信するソース機器としての役割を担う。また、通信装置102は、Wi-Fi Miracast規格において、ソース機器から送信される画面や音声を受信して再生するシンク機器の役割を担う。通信装置101と通信装置102とがミラーリングを行う場合、通信装置101が表示している画面や再生している音声が、通信装置101と通信装置102とで共有される。
通信装置101は、Wi-Fi Direct規格に準拠したネットワークを介したミラーリングに加え、インフラストラクチャネットワークを介したミラーリングを行ってもよい。また、通信装置102も同様である。
通信装置101と通信装置102とが、通信装置101をソース機器、通信装置102をシンク機器として、Wi-Fi Direct規格に準拠したネットワークを介したミラーリングを行う場合を説明する。Wi-Fi Direct規格に準拠したネットワークを介したミラーリングでは、ソース機器は表示している画面や再生している音声の情報として、画像データや音声データのストリームを、ネットワークを介してシンク機器へ直接伝送(ストリーミング)する。なお、画像データはソース機器が表示している画面を符号化したものであり、音声データはソース機器が再生している音声を符号化したものである。そして、シンク機器は、画像データや音声データのストリームを受信し、ソース機器と同期して再生する。つまり、ミラーリングを行うソース機器とシンク機器とは、表示している画面や再生している音声を共有する。
また、通信装置101(ソース機器)と通信装置102(シンク機器)とが、インフラストラクチャネットワークを介してミラーリングを行う場合を説明する。インフラストラクチャネットワークを介したミラーリングでは、ソース機器は画像データや音声データのストリームを、AP103を介してシンク機器に伝送する。シンク機器は、AP103を介して画像データや音声データのストリームを受信し、ソース機器と同期して再生する。
また、通信装置101と通信装置102とは、ミラーリングに加えて、Wi-Fi Direct規格に準拠したネットワーク、あるいはインフラストラクチャネットワークを介したコンテンツリダイレクトを行う。コンテンツリダイレクトでは、通信装置101は通信装置102に、通信装置101以外の外部装置からデータを取得させ、通信装置102に当該データを再生させる。ここで、外部装置とはクラウドサーバ104のことである。このとき、通信装置101は、通信装置102にデータを外部装置から取得させるために必要な情報を送信する。通信装置102が取得するデータとは、例えばコンテンツのことであり、画像データ、音声データ、動画データ、映像データ、文書データ等のことである。なお、映像データとは、音声データと動画データとの両方を含むデータのことである。他に、これらのデータを再生するためのソフトウェアデータや、GUIデータ、メタデータの少なくとも何れか一つを含んでいてもよい。
通信装置101が通信装置102に送信する情報とは、外部装置上にあるコンテンツの関連情報である。コンテンツの関連情報は、例えば、外部装置上にあるコンテンツを識別するための識別子や、サービス名、コンテンツの所在情報(URI)、再生開始時間(オフセット)などの情報である。なお、受信するコンテンツの関連情報は、これらの情報の一部であってもよい。コンテンツの識別子とは、コンテンツを一意に決定するための識別子のことである。また、コンテンツの所在情報とは、コンテンツが格納されている格納場所を示す情報である。なお、URIはUniform Resource Identifierの略で、URLとURNを含む。URLはUniform Resource Locatorの、URNはUniform Resource Nameの夫々、略である。
通信装置101の具体的な例としては、タブレット、スマートフォン、PC、携帯電話、カメラ、ビデオカメラなどが挙げられるが、これらに限定されない。通信装置101は、外部装置が保持しているコンテンツの関連情報を他の通信装置に送信することで、他の通信装置に該コンテンツを取得させ、再生させることができる通信装置であればよい。
また、通信装置102の具体的な例としては、タブレット、スマートフォン、PC、携帯電話、テレビ、テレビ用アダプタ、セットトップボックス、ヘッドマウントディスプレイなどが挙げられる。また他に通信装置102の具体的な例として、プロジェクター、ディスプレイ、カーナビゲーション装置などが挙げられるが、これらに限定されない。通信装置102は、通信装置101から受信した関連情報に基づいて外部装置からコンテンツを取得し、再生することができる通信装置であればよい。
また、通信装置101と通信装置102とは、コンテンツリダイレクトに加えて、Wi-Fi Direct規格に準拠したネットワーク、あるいはインフラストラクチャネットワークを介したダイレクトストリーミングを行ってもよい。ダイレクトストリーミングでは、通信装置101は通信装置102に、通信装置101が記憶しているデータを送信し、通信装置102は当該データを受信し、再生する。この場合、通信装置101は当該データを復号および再符号化することなく、そのままの符号化方式で通信装置102に送信することができる。ここで、通信装置102が受信するデータとは、例えばコンテンツのことである。
なお、図1では、通信装置101がミラーリングするための通信方式として、Wi-Fi Miracast規格を用いるものとした。しかしWi-Fi Miracast規格に限らず、WiDiやWirelessHDといった他の通信方式を用いてもよい。なお、WiDiはIntel Wireless Displayの、WirelessHDはWireless High Definitionの夫々略である。具体的には、上述のミラーリング、コンテンツリダイレクト、あるいはダイレクトストリーミングの少なくとも何れか一つに相当する無線通信が行える通信方式であればよい。また、Wi-Fi Miracast規格では、通信装置101はWi-Fi Direct規格に準拠したネットワークあるいはインフラストラクチャネットワークを介してミラーリングを行う。通信装置101はミラーリングを行う通信装置102とこれらのネットワークを介してASPセッションを確立し、確立したASPセッションを介してミラーリングを行うことも可能である。なお、ASPはApplication Service Platformの略である。また、通信装置101がミラーリングとコンテンツリダイレクトとを行う際に、夫々異なる無線通信方式を利用して行ってもよい。
図2に、通信装置101のハードウェア構成を示す。
通信装置101は、記憶部201、制御部202、機能部203、入力部204、出力部205、通信部206、およびアンテナ207を備える。
記憶部201はROMやRAM等の1以上のメモリにより構成され、後述する各種動作を行うためのコンピュータプログラムや、無線通信のための通信パラメータ等の各種情報を記憶する。ROMはRead Only Memoryの、RAMはRandom Access Memoryの夫々略である。なお、記憶部201として、ROM、RAM等のメモリの他に、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD-ROM、CD-R、磁気テープ、不揮発性のメモリカード、DVDなどの記憶媒体を用いてもよい。また、記憶部201が複数のメモリ等を備えていてもよい。
制御部202はCPUやMPU等の1以上のプロセッサにより構成され、記憶部201に記憶されたコンピュータプログラムを実行することにより通信装置101全体を制御する。CPUはCentral Processing Unitの、MPUはMicro Processing Unitの略であり、コンピュータとして機能する。なお、制御部202は、記憶部201に記憶されたコンピュータプログラムとOS(Operating System)との協働により通信装置101全体を制御するようにしてもよい。また、制御部202がマルチコア等の複数のプロセッサを備え、複数のプロセッサにより通信装置101全体を制御するようにしてもよい。
また、制御部202が記憶部201に記憶されたコンピュータプログラムを実行することで、ソース機器としてのミラーリング機能およびコンテンツリダイレクト機能を実現する。ソース機器としてのミラーリング機能とは、自装置が表示している画面をキャプチャし符号化した画像データや、再生している音声を符号化した音声データをシンク機器に送信する機能である。また、ソース機器としてのコンテンツリダイレクト機能とは、シンク機器で再生するコンテンツを、シンク機器がソース機器以外の外部装置から取得するために必要な情報をシンク機器に送信する機能である。さらに、ソース機器としてのコンテンツリダイレクト機能として、通信装置101はシンク機器で再生されているコンテンツの再生を制御するための再生制御信号をシンク機器に送信することができる。また、通信装置101は制御部202が記憶部201に記憶されたコンピュータプログラムを実行することで、ソース機器としてのダイレクトストリーミング機能を実現してもよい。ソース機器としてのダイレクトストリーミング機能とは、記憶部201に記憶されているコンテンツをシンク機器に送信する機能である。
また、制御部202は、機能部203を制御して、撮像やコンテンツの閲覧などの所定の処理を実行する。機能部203は、通信装置101が所定の処理を実行するためのハードウェアである。例えば、通信装置101がカメラである場合、機能部203は撮像部であり、撮像処理を行う。このとき、通信装置101は、撮像部が生成したデータを、後述の出力部205によって画面上に表示し、制御部202のミラーリング機能によって他の通信装置に送信することでミラーリングを実行することができる。あるいは、通信装置101の記憶部201に記憶されているデータを出力部205によって画面上に表示し、同様にミラーリングを実行してもよい。
入力部204は、ユーザからの各種操作の受付を行う。出力部205は、モニタ画面やスピーカーなどを介してユーザに対して各種出力を行う。ここで、出力部205による出力とは、画面上への表示や、スピーカーによる音声出力、振動出力などであってもよい。なお、出力部205が出力するモニタ画面は、通信装置101が備えるモニタ画面である。あるいは、通信装置101と接続された他の装置が有するモニタ画面であってもよい。なお、タッチパネルのように入力部204と出力部205の両方を1つのモジュールで実現するようにしてもよい。入力部204、出力部205は、夫々通信装置101とは別体であってもよい。
通信部206は、IEEE802.11シリーズに準拠した無線通信の制御や、有線LAN等の有線通信の制御、IP(Internet Protocol)通信の制御を行う。また、通信部206はアンテナ207を制御して、無線通信のための無線信号の送受信を行う。通信装置101は通信部206を介して、画像データや文書データ、映像データ等のコンテンツを通信装置102と通信する。
通信装置102は通信装置101と同様のハードウェア構成を有する。通信装置102の、記憶部201、機能部203、入力部204、出力部205、通信部206、およびアンテナ207は、通信装置101と同様であるため説明を省略する。制御部202についても、通信装置101の制御部202と同様であるが、違いについて簡単に説明する。
通信装置102の制御部202は、記憶部201に記憶されたコンピュータプログラムを実行することで、シンク機器としてのミラーリング機能とコンテンツリダイレクト機能とを実現する。ここで、シンク機器としてのミラーリング機能とは、ソース機器が表示している画面をキャプチャし符号化した画像データや、再生している音声を符号化した音声データを受信し、復号、再生する機能である。また、シンク機器としてのコンテンツリダイレクト機能とは、ソース機器から送られた情報を基にソース機器以外の外部装置から再生したいコンテンツを取得し、再生する機能である。さらに、シンク機器としてのコンテンツリダイレクト機能として、通信装置102はソース機器から受信した再制御情報に基づいて、自装置行っているコンテンツの再生を制御することができる。また、通信装置102の制御部202は、記憶部201に記憶されたコンピュータプログラムを実行することで、シンク機器としてのダイレクトストリーミング機能を実現してもよい。シンク機器としてのダイレクトストリーミング機能とは、ソース機器から送信されるコンテンツを受信し再生する機能である。
なお、通信装置101および通信装置102は、画像の表示と音声の再生のどちらも行える装置である。しかし、通信装置101および通信装置102のどちらも、画像の表示あるいは音声の再生の何れか一方しか行えない装置であってもよい。
図3は、通信装置101と通信装置102とがミラーリングを実施する際に実行する処理を示すフローチャートである。ステップS301からステップS317は、通信装置101がコンテンツリダイレクトを実施する際に、記憶部201に記憶されたコンピュータプログラムを制御部202が読み出し、実行することで実現される処理のフローチャートである。またステップS351からステップS362は、通信装置102がコンテンツリダイレクトを実施する際に、記憶部201に記憶されたコンピュータプログラムを制御部202が読み出し、実行することで実現される処理のフローチャートである。
なお、図3に示すフローチャートの少なくとも一部をハードウェアにより実現してもよい。ハードウェアにより実現する場合、例えば、所定のコンパイラを用いることで、各ステップを実現するためのコンピュータプログラムからFPGA上に自動的に専用回路を生成すればよい。FPGAとは、Field Programmable Gate Arrayの略である。また、FPGAと同様にしてGate Array回路を形成し、ハードウェアとして実現するようにしてもよい。また、ASIC(Application Specific Integrated Circuit)により実現するようにしてもよい。
本フローチャートのステップS301は、通信装置101の電源が入ることで開始される。なお、本フローチャートのステップS301は、通信装置101において所定のアプリケーションが起動したことに応じて開始するようにしてもよい。また、本フローチャートのステップS351は、通信装置102の電源が入ることで開始される。なお、本フローチャートのステップS351は、通信装置102において所定のアプリケーションが起動したことに応じて開始するようにしてもよい。
まず通信装置101の制御部202は、入力部204を介してユーザから画面・音声共有の開始操作が行われたか判定する(ステップS301)。画面・音声共有の開始操作とは、ユーザによる画面・音声共有を開始するための制御ボタンの押下である。これに限らず、通信装置101の制御部202は、所定のキーボード操作やマウス操作、タッチ操作、ジョイステック操作等のユーザ操作を開始操作としてもよい。また、通信装置101の制御部202は、所定のジェスチャーや、リモコンの制御ボタンの押下、所定のコンテンツの再生開始、所定のアプリケーションの立ち上げなどのユーザ操作を開始操作としてもよい。画面・音声共有の開始操作が行われなかったと判定されると(ステップS301のNo)、通信装置101の制御部202は再びステップS301の処理を行う。一方、画面・音声共有の開始操作が行われたと判定されると(ステップS301のYes)、通信装置101の制御部202はステップS302の処理を行う。
次に、通信装置101と通信装置102との間でデバイス探索が行われる。通信装置101および通信装置102は、Wi-Fi Direct規格に準拠した無線通信を介してミラーリングを行うデバイスを探索する。あるいは、通信装置101および通信装置102は、インフラストラクチャネットワークを介してミラーリングを行うデバイスを探索してもよい。
本フローチャートにおいて通信装置101と通信装置102とは、Wi-Fi Direct規格に準拠した無線通信を介してミラーリングを行うデバイスを探索する(ステップS302、ステップS351)。具体的には、まず通信装置101の制御部202がデバイス発見要求としてIEEE802.11シリーズ規格に準拠したProbe Requestを送信し、通信装置102の制御部202は応答としてProbe Responseを送信する。これにより通信装置101と通信装置102とは互いを発見する。なお、Probe Request/Responseは、夫々送信する装置が逆であってもよい。
通信装置101の制御部202は発見したデバイスの一覧を出力部205であるモニタ画面上に表示する。ユーザは通信装置101のモニタ画面上に表示されたデバイスの一覧から、画面・音声共有を行うデバイスを選択する。通信装置101の制御部202は、ユーザによって選択されたデバイスを、画面・音声共有を行う接続相手装置として選択する(ステップS303)。なお、本ステップにおける接続相手装置の選択は、過去に画面・音声共有を行ったことがあるデバイスの履歴に基づいて通信装置101が行ってもよい。具体的には、通信装置101の制御部202は、検出されたデバイスの中に、過去に画面・音声共有を行ったことがあるデバイスがある場合、当該デバイスを接続相手装置として選択する。あるいは、通信装置101の制御部202は、検出したデバイスの中から最も通信装置101と距離が近いデバイスを接続相手装置として選択してもよいし、最も通信品質がよいデバイスを接続相手装置として選択してもよい。なお、ステップS303の接続相手装置の選択を通信装置102が行ってもよい。
また、本フローチャートではデバイス探索でProbe Request/Responseを用いたが、Wi-Fi Miracast規格に基づき、IEEE802.11シリーズ規格に準拠したBeaconなどの無線信号を用いてもよい。また、通信装置101あるいは通信装置102は、NFC、QRコード(登録商標)、Bluetooth low energy(BLE)などを利用してデバイス探索を行ってもよい。例えば、通信装置101がNFCの通信機能を有しているとき、通信装置101と通信装置102とのペアリングをNFCタッチ操作で行い、以降の通信はWi-Fi Miracast規格に基づいて行うことも可能である。
ここで、ステップS304およびステップS352の処理を行う前に、通信装置101と通信装置102とは、サービス探索を行ってもよい。サービス探索はWi-Fi Direct規格に基づいて行われ、サービス探索を行うことで通信装置101と通信装置102との少なくとも一方は相手装置が提供するサービスについての情報を得ることができる。
次に、通信装置101の制御部202は、ステップS303で選択された接続相手装置と接続セットアップを行う(ステップS304)。ここで、ステップS303において通信装置102が接続相手装置として選択されたとする。そのため、通信装置102の制御部202も通信装置101と接続セットアップを行う(ステップS352)。具体的に、通信装置101と通信装置102とは、Wi-Fi Miracastの接続処理を行い、その後、TCPの接続処理を行う。これらの接続処理を行うことで、通信装置101と通信装置102との間の接続セットアップが完了する。なお、TCPとはTransmission Control Protocolの略である。
通信装置101および通信装置102は、Wi-Fi Miracastの接続処理の方法として、Wi-Fi Direct規格あるいはTDLS規格から選ぶことができるが、本実施形態ではWi-Fi Direct規格に準拠して行う。なお、TDLSはTunneled Direct Link Setupの略である。
ここで、ステップS304とステップS352の詳細な手順について説明する。まず、通信装置102が通信装置101にProbe Requestを送信する。Probe Requestを受信した通信装置101は、通信装置102に対してProbe Responseを送信する。これにより、通信装置101と通信装置102とは相手装置の存在を確認する。続いて、Wi-Fi Direct規格に準拠した無線通信においてネットワークを構築する役割を担うGroup Owner(GO)となる通信装置を決定するため、通信装置101はGO Negotiation Requestを送信する。この信号には、通信装置101のGOになりたい度合いを示すIntent値が含まれる。なお、GOにならなかった通信装置はClient(CL)となり、GOが構築するネットワークに参加する役割を担う。
GO Negotiation Requestを受信した通信装置102は、応答として通信装置102のIntent値を含むGO Negotiation Responseを送信する。GO Negotiation Responseを受信した通信装置101は、通信装置101と通信装置102とのIntent値の大小を比較し、Intent値が大きかった方の通信装置をGOとして決定する。他方、Intent値が小さかった方の通信装置がCLとして決定される。
通信装置101は、Intent値を比較した結果を含めたGO Negotiation Confirmを通信装置102に送信する。本実施形態では、通信装置101のIntent値が通信装置102のIntent値より大きかったため、通信装置101がGOに、通信装置102がCLになったものとする。
その後、WPS方式を用いて接続やセキュリティに関する情報など、通信装置101と通信装置102とのネットワーク接続を確立するために必要なパラメータ情報を共有する。なお、WPSはWi-Fi Protected Setupの略である。そして、交換したパラメータ情報に基づいて、CLである通信装置102がGOである通信装置101へAssociation Requestを送信する。当該信号を受信した通信装置101は、応答としてAssociation Responseを送信する。
以上により、通信装置101と通信装置102との間でWi-Fi Direct規格に準拠したWi-Fi Miracastの接続処理が完了する。なお、本実施形態において、通信装置101をGO、通信装置102をCLとしたが、逆でもよい。また、GOが送信する各無線信号をCLが送信してもよい。この場合、CLが送信する無線信号をGOが送信する。また、Wi-Fi Miracastの接続処理を行うにあたって、通信装置101および通信装置102は、上記の無線信号の他にBeacon、Reassociationメッセージなどを用いてもよい。また通信装置101と通信装置102は、他にP2P Invitationメッセージ、Provision Discoveryメッセージなどを用いてもよい。
続いて、通信装置101と通信装置102との間でTCP接続を確立する。この接続は通信装置101がTCPサーバの、通信装置102がTCPクライアントの役割を担い、Three-way handshakeを行うことで確立される。
このように、通信装置101と通信装置102の間でWi-Fi Miracastの接続処理が完了し、TCP接続が確立されたことにより、接続セットアップが完了する。
なお、通信装置101と通信装置102とがインフラストラクチャネットワークを介してミラーリングを行うデバイスを探索する場合、ステップS302~ステップS304と、ステップS351、ステップS352の処理は以下のように行われる。
インフラストラクチャネットワークを介してミラーリングを行うデバイスの探索は、マルチキャストDNS(multicast DNS、mDNS)によって行われる。なお、DNSとはDomain Name Systemの略である。まず、通信装置101が接続しているAP103を介して、インフラストラクチャネットワークに参加している他の通信装置に対してDNSパケットをマルチキャスト送信する。通信装置101は、AP103を介してミラーリングを行うことができるデバイスから応答を受信することで当該デバイスを検出する。具体的には、通信装置101はAP103を介して、DNSレコードを含むDNSパケットを送信する。DNSレコードは、通信装置101がWi-Fi Miracast規格に準拠した無線通信を行うことができる通信装置を指定して探索していることを示す。DNSレコードにはソース機器を示すDisplaysrc、またはシンク機器を示すDisplayの何れか一つのサービス名が含まれる。通信装置101はミラーリングを行うデバイスとしてシンク機器を探索するので、DNSレコードとしてはシンク機器を示すdisplayを含める。なお通信装置101は、DNSパケットを任意の送信間隔、任意の送信回数で送信することが可能である。通信装置101はデバイスの探索を行う場合、所定の回数に達するまでDNSパケットの送信を繰り返し行うものとする。あるいは、通信装置101は所定の時間が経過するまでDNSパケットを繰り返し送信してもよい。また、通信装置101は所定の台数の対向機から応答を受信したことに基づいて、DNSパケットの送信を停止してもよい。
通信装置101の制御部202はインフラストラクチャネットワークを介してミラーリングを行うデバイスの探索を行うと、探索結果を表示し、接続相手装置の選択が行われる。当該探索結果表示と、接続相手装置の選択とは、ステップS303と同様に行われる。
続いて通信装置101の制御部202は選択された接続相手装置(ここでは通信装置102)に、AP103経由でmDNS問合せを送信する。ここで送信するmDNS問合せは、通信装置102の能力情報や通信装置101と通信装置102の通信とで使用するポート番号やホスト名を問合せる信号である。なお、本mDNS問合せで問い合わせる通信装置102の能力情報とは、通信装置102がシンク機器であるか、ソース機器であるか、あるいはデュアルロール機器であるかなどの情報である。mDNS問合せを受信した通信装置102は、自装置の能力情報と、ポート番号、ホスト名を含むmDNS応答を通信装置101に送信する。本応答を受信した通信装置101は、通信装置102との接続セットアップを完了する。
通信装置101と通信装置102が接続セットアップを完了して以降の処理は、Wi-Fi Direct規格に準拠したネットワークを介してミラーリングを行う場合も、インフラストラクチャネットワークを介してミラーリングを行う場合も共通である。
続いて通信装置101の制御部202は、Capability Negotiationを行う(ステップS305)。同様に通信装置102の制御部202も、Capability Negotiationを行う(ステップS353)。Wi-Fi Miracast規格においてCapability NegotiationにはRTSP(Real Time Streaming Protocol)を利用するよう規定されている。RTSPは、ストリーミングを制御するためのプロトコルである。また、下位層のトランスポートプロトコルには一般的にTCPが用いられる。Capability NegotiationにはRTSP M1~M4までの所定のメッセージが通信装置101と通信装置102との間で交換される。通信装置101はRTSPメッセージの交換によって通信装置102の能力情報を得て、使用するパラメータを決定し通信装置102に通知する。通信装置102は、通信装置101から通知されたパラメータを設定する。能力情報とは具体的に、例えば画面については、通信装置102が対応する画面の解像度やフレームレート、解像度などの情報である。また音声については、通信装置102が対応するコーデックやサンプリング周波数などの情報である。Capability Negotiationの結果、通信装置101と通信装置102との間で、ミラーリングを行う際に使用する画面や音声の符号化方式の種類や映像の解像度、フレームレートなどが決定される。なお、通信装置101と通信装置102とが送受信する能力情報はこれらの情報の一部であってもよい。
Capability Negotiationが完了すると、通信装置101の制御部202と通信装置102の制御部202とはWi-Fi Miracast規格のセッションを確立する(ステップS306、ステップS354)。Wi-Fi Miracast規格では、セッションの確立にはRTSP M5~M7までの所定のメッセージが通信装置101と通信装置102との間で交換される。これらのRTSPメッセージの交換により、通信装置101と通信装置102との間で使用されるポート番号の設定などが行われ、セッションが確立される。
セッションが確立されると、通信装置101の制御部202はソース機器としてのミラーリング処理を開始し、画面・音声ストリームの送信を開始する(ステップS307)。本ステップにおいて通信装置101の制御部202は、ソース機器としてのミラーリング処理として、表示されている画面のキャプチャやキャプチャ画像の符号化、多重化、データ送信処理を行う。なお、通信装置101が行うミラーリング処理はこれらの一部の処理であってもよい。
また、通信装置102の制御部202はシンク機器としてのミラーリング処理を開始し、画面・音声ストリームの受信を開始する(ステップS355)。本ステップにおいて、通信装置102の制御部202は、シンク機器としてのミラーリング処理として、データの受信や逆多重化、キャプチャ画像の復号化、復号されたキャプチャ画像の再生処理を行う。なお、通信装置102が行うミラーリング処理はこれらの一部の処理であってもよい。
通信装置101と通信装置102とがステップS307およびステップS355の処理を行うことで、通信装置101が表示している画面や再生している音声の情報のストリームが通信装置102に送信される。通信装置102は、送信された画面や音声の情報のストリームを再生することで、通信装置101と同じ画面の表示や音声の再生を行う。
続いて、通信装置101の制御部202はコンテンツの再生を指示するユーザ操作を受け付ける(ステップS308)。本ステップにおいて、通信装置101は、コンテンツの再生を指示するユーザ操作として、コンテンツのサムネイルに対するユーザ操作を受け付ける。コンテンツのサムネイルには、コンテンツのURIが関連付けられている。コンテンツのURIとは、コンテンツの所在情報を示す情報である。また、通信装置101は、コンテンツのサムネイルに限らず、ハイパーリンクやアイコン、再生ボタンなど、コンテンツのURIが関連付けられている画像や文字列である関連表示に対してユーザ操作を受け付けてもよい。なお、コンテンツの再生ボタンとは通信装置101の画面上に表示されるソフトウェアキーであって、該コンテンツのURIが関連付けられている。通信装置101は、ユーザによって再生ボタンが選択されると、関連付けられているコンテンツのURIに基づいて該コンテンツを取得し、再生する。通信装置101の制御部202は、コンテンツのサムネイルに対して受け付けたユーザ操作に基づいて、コンテンツをミラーリングで再生するか、あるいはコンテンツリダイレクトで再生するかを判定する。本ステップの詳細は、後述の図4、図5、図6で説明する。
通信装置101の制御部202は、ステップS308で受け付けたユーザ操作に基づいて、コンテンツをコンテンツリダイレクトで再生する指示が出されたか判定する(ステップS309)。通信装置101の制御部202は、コンテンツをコンテンツリダイレクトで再生する指示が出されていないと判定すると(ステップS309のNo)、ステップS310の処理を行う。一方、通信装置101の制御部202は、コンテンツをコンテンツリダイレクトで再生する指示が出されたと判定すると(ステップS309のYes)、ステップS311の処理を行う。
通信装置101の制御部202は、ステップS308で受け付けたユーザ操作に基づいた処理を行う(ステップS310)。例えばステップS308でミラーリングによるコンテンツの再生指示を受け付けた場合、通信装置101の制御部202は、ステップS308においてクラウドサーバ104からコンテンツを取得し、再生を開始している。そのため本ステップにおいて、通信装置101の制御部202はクラウドサーバ104からのコンテンツの取得と再生を継続する。また、例えばステップS308で文章や画像などをコピーする指示が出された場合は、通信装置101の制御部202は該当の文章や画像などをコピーする。通信装置101の制御部202は、ステップS308で受け付けたユーザ操作に基づいた処理を行うと、ステップS307の処理を行い、ミラーリングを継続する。
一方、通信装置101の制御部202は、コンテンツをコンテンツリダイレクトで再生する指示が出されたと判定すると(ステップS309のYes)、ステップS311の処理を行う。
通信装置101の制御部202は、通信装置102にコンテンツリダイレクト機能をサポートしているか問い合わせる(ステップS311)。通信装置101の制御部202は、コンテンツリダイレクト機能の問合せに、RTSP GET_PARAMETERメッセージを利用することができる。当該問合せを受信した通信装置102の制御部202は、応答としてコンテンツリダイレクト機能への対応の可否を通信装置101に通知する(ステップS356)。また、通信装置102の制御部202は、応答として、通信装置102がコンテンツリダイレクト機能によってコンテンツを再生できるコンテンツ共有サービス名などの情報を通知してもよい。
通信装置101の制御部202は、通信装置102がコンテンツリダイレクト機能をサポートしているか、ステップS311で受信した応答に基づいて判定する(ステップS312)。通信装置101の制御部202は、通信装置102がコンテンツリダイレクト機能をサポートしていないと判定すると(ステップS312のNo)、ステップS307の処理を行う。この場合、通信装置101と通信装置102との少なくとも一方は、ユーザに対して通信装置102がコンテンツリダイレクト機能に対応していないことを通知してもよい。一方、通信装置101の制御部202は、通信装置102がコンテンツリダイレクト機能をサポートしていると判定すると(ステップS312のYes)、通信装置102にコンテンツの関連情報を送信する(ステップS313)。通信装置101の制御部202は、コンテンツの関連情報を送信することで、当該コンテンツの取得と再生とを通信装置102に要求する。ここで通信装置101が送信するコンテンツの関連情報は、例えばクラウドサーバ104上にあるコンテンツを識別するための識別子や、サービス名、コンテンツの所在情報(URI)、再生開始時間(オフセット)などの情報である。なお、通信装置101が送信するコンテンツの関連情報は、これらの一部であってもよい。また、通信装置101の制御部はコンテンツの関連情報を送信する際、RTSP SET_PARAMETERメッセージを用いてもよい。
通信装置102の制御部202は、通信装置101からコンテンツの関連情報を受信する(ステップS357)。そして、通信装置102の制御部202はコンテンツの関連情報を受信すると、実行中のミラーリング処理を一時停止する(ステップS314)。同様に通信装置101の制御部202も、実行中のミラーリング処理を一時停止する(ステップS358)。通信装置101の制御部202および通信装置102の制御部202は、ステップS313とステップS357で行われたコンテンツの関連情報の送受信としてのメッセージ交換を契機にミラーリング処理を一時停止する。あるいは、ステップS313の処理を行った通信装置101の制御部202が自装置のミラーリング処理を一時停止し、通信装置102にミラーリング処理の一時停止を指示する無線信号を送信してもよい。あるいはステップS357の処理を行った通信装置102の制御部202が、自装置のミラーリング処理を一時停止し、通信装置101にミラーリング処理の一時停止を指示する無線信号を送信してもよい。ミラーリングを実行中にコンテンツリダイレクトを実施する場合、ミラーリング処理を一時停止することにより、通信装置101と通信装置102とにおけるミラーリングの処理負荷を軽減し、消費電力を抑えることが可能である。
通信装置102の制御部202はミラーリング処理を一時停止すると、ステップS357で受信したコンテンツの関連情報に基づいてクラウドサーバ104からコンテンツを取得し、再生する(ステップS359)。本フローチャートにおいて通信装置102は、AP103を介してクラウドサーバ104からコンテンツを受信する。通信装置101の制御部202によるコンテンツの受信方法やプロトコルは、コンテンツの種類やサービスの種類によって様々である。例えば通信装置101の制御部202はHLS方式やHTTPのGETメソッドなどを用いてコンテンツを受信してもよい。ここでHLSとはHTTP Live Streamingの略であり、HTTPはHyper Text Transfer Protocolの略である。
コンテンツリダイレクトによるコンテンツの受信と再生を開始した通信装置102の制御部202は、コンテンツリダイレクトの状態を検知し、通信装置101に当該状態を通知する(ステップS360)。通信装置101の制御部202は、通信装置102からコンテンツリダイレクトの状態についての通知を受信する(ステップS315)。そして、ステップS360とステップS315において、通信装置102の制御部202と通信装置101の制御部202とは、夫々コンテンツリダイレクトの状態に応じた所定の制御を行う。例えば通信装置102の制御部202が、コンテンツが終端まで再生されたことを検知し、通信装置101に通知する場合、通信装置101と通信装置102とは、一時停止していたミラーリングを再開する。あるいは、通信装置101と通信装置102とは、Wi-Fi Direct規格に準拠したネットワークを介した通信、もしくはインフラストラクチャネットワークを介した通信を終了してもよい。なお、終端まで再生されたコンテンツの次に再生するコンテンツが決められている場合、通信装置101は通信装置102に、次に再生するコンテンツの関連情報を送信してもよい。次に再生するコンテンツの関連情報を受信した通信装置102は、受信した関連情報に基づいてコンテンツを取得し、再生する。
続いて通信装置101の制御部202と通信装置102の制御部202とはコンテンツリダイレクトが終了したか判定する(ステップS316、ステップS361)。なお、コンテンツリダイレクトは夫々ステップS315、S360において終了し得る。通信装置101の制御部202は、コンテンツリダイレクトが終了していないと判定すると(ステップS316のNo)、ステップS315の処理を再度行う。一方、コンテンツリダイレクトが終了したと判定すると(ステップS316のYes)、通信装置101の制御部202はステップS317の処理を行う。また、通信装置102の制御部202は、コンテンツリダイレクトが終了していないと判定すると(ステップS361のNo)、ステップS359の処理を再度行う。一方、コンテンツリダイレクトが終了したと判定すると(ステップS361のYes)、通信装置102の制御部202はステップS362の処理を行う。
通信装置101の制御部202と、通信装置102の制御部202とは、ミラーリングが終了したかを夫々判定する(ステップS317、ステップS362)。なお、ミラーリングは夫々ステップS315、S360において終了し得る。また、通信装置101の制御部202と通信装置102の制御部202とは、夫々ステップS307およびステップS355以降の各ステップにおいて、ミラーリングを終了することができる。
ミラーリングが終了したと判定されると(ステップS317のYes)、通信装置101の制御部202は図3に示すフローチャートの処理を終了する。同様に、通信装置102の制御部202もミラーリングを終了したと判定すると(ステップS362のYes)、図3に示すフローチャートの処理を終了する。一方、ミラーリングが終了していないと判定されると(ステップS317のNo)、通信装置101の制御部202はステップS307の処理を行い、一時停止していたミラーリング処理を再開する。また、ミラーリングが終了していないと判定された場合(ステップS362のNo)、通信装置102の制御部202はステップS355の処理を行い、一時停止していたミラーリング処理を再開する。
以上、図3のフローチャートでは通信装置101と通信装置102とがコンテンツリダイレクトを実施する際に実行する処理を示した。
なお、図3ではコンテンツリダイレクトを実施する場合に、まずミラーリングを開始してからコンテンツリダイレクトを実施するとしたが、これに限らない。通信装置101と通信装置102とは、ステップS306およびステップS354でセッションが確立した後、ミラーリングを開始せずにコンテンツリダイレクトを開始してもよい。具体的には、通信装置101は本フローチャートが開始されると、まずステップS308の処理を行い、続けてステップS309の判定を行う。ステップS309の判定の結果、Yesと判定されると通信装置101の制御部202は、ステップS302からステップS306の処理を行う。一方、Noと判定されると、通信装置101の制御部202はステップS310の処理を行い、再びステップS308の処理を行う。なお、ステップS308においてミラーリングでのコンテンツの再生が指示された場合、通信装置101の制御部202はステップS308において、ステップS302からステップS307の処理を行い、ミラーリングによるコンテンツの再生を行う。なお、通信装置102は、通信装置101がステップS302からステップS306の処理を行う際に、ステップS351からステップS354の処理を行う。また、通信装置101はステップS306でセッションを確立した後、ステップS311の処理を行う。また、通信装置102はステップS354でセッションを確立した後、ステップS356の処理を行う。この場合、ステップS314とステップS358はスキップされる。また、ステップS317およびステップS362の判定は、スキップされる。
本フローチャートにおいて、通信装置101はコンテンツのサムネイルに対するユーザ操作に基づいて、コンテンツがミラーリングもしくはコンテンツリダイレクトで再生されるように制御する。
図4は、通信装置101が入力されたユーザ操作に基づいてメニュー画面を表示し、選択された再生方法でコンテンツを再生する際に実行する処理を示すフローチャートである。図4は、通信装置101がコンテンツリダイレクトを実施する際に、記憶部201に記憶されたコンピュータプログラムを制御部202が読み出し、実行することで実現される処理のフローチャートである。
なお、図4に示すフローチャートの少なくとも一部をハードウェアにより実現してもよい。ハードウェアにより実現する場合、例えば、所定のコンパイラを用いることで、各ステップを実現するためのコンピュータプログラムからFPGA上に自動的に専用回路を生成すればよい。FPGAとは、Field Programmable Gate Arrayの略である。また、FPGAと同様にしてGate Array回路を形成し、ハードウェアとして実現するようにしてもよい。また、ASIC(Application Specific Integrated Circuit)により実現するようにしてもよい。
本フローチャートは、図3のステップS308において行われる処理を示すもので、図3のステップS308において、通信装置101がユーザからコンテンツのサムネイルに対する長押し操作を受け付けた場合のフローチャートである。
なお、通信装置101は、図3のステップS308において、図4の処理の他に、図5や図6の処理を行ってもよい。通信装置101は、コンテンツのサムネイルに対するユーザ操作を受けた際に、図4から図6の少なくとも一つの処理を行う。あるいは、図4から図6の処理の内、複数の処理を組み合わせた処理を行ってもよいし、複数の処理を変更して行ってもよい。通信装置101が図3のステップS308において何れの処理を行うかは、通信装置101にプリセットされている。あるいは、通信装置101がミラーリングを行うために利用しているアプリケーションプログラムによって決められてもよいし、コンテンツリダイレクトを行うために利用しているアプリケーションプログラムによって決められてもよい。あるいは、ユーザによって決められてもよい。
まず、通信装置101の制御部202は、入力部204を介して、ユーザからコンテンツのサムネイルに対する長押し操作を受け付ける(ステップS401)。本ステップのコンテンツは、ミラーリングとコンテンツリダイレクトとの両方で再生可能なコンテンツである。
なお、ユーザによる長押し操作を受け付けた対象が、コンテンツのURIが関連付けられたサムネイルであるかの判定は、通信装置101の制御部202が記憶部201に保持する情報に基づいて判定する。通信装置101の制御部202は、記憶部201が保持する情報に基づいて、パターン記憶あるいはHTTPを用いて、コンテンツのURIが関連付けられているか判定する。パターン記憶では、通信装置101の記憶部201は一般的に利用者が多いサイトのURIのパターンを記憶しておく。あるいは通信装置101のユーザの利用頻度が高いサイトのURIのパターンを記憶してもよい。そして通信装置101の制御部202は、ハイパーリンクやサイトのAPIなどを読み込む際に、これらの情報と記憶部201で記憶している情報を比較し、コンテンツのURIが関連付けられているサムネイルであるか判定する。また、HTTPを用いた判定では、通信装置101の記憶部201はHTTP RequestのContent TypeやHTTP Responseの値を記憶しておく。そして、通信装置101の制御部202は、ハイパーリンク先の情報を読み込み際に記憶部201に記憶されている値を用いて比較を行い、コンテンツのURIが関連付けられているサムネイルであるか判定する。
ステップS401においてサムネイルに対する長押し操作を受け付けた通信装置101の制御部202は、メニュー画面の表示を行う(ステップS402)。本ステップで表示されるメニュー画面の例は、後述の図7または図8に示す。本ステップで表示されるメニュー画面は、通信装置101のユーザにコンテンツをミラーリングで再生するか、あるいはコンテンツリダイレクトで再生するか選択させるためのものである。通信装置101の制御部202は、メニュー画面を表示することで、コンテンツをミラーリングで再生するか、あるいはコンテンツリダイレクトで再生するかをユーザに問い合わせる。
図7は、通信装置101がコンテンツのサムネイルに対するユーザ操作に基づいて表示する表示画面の一例を示す図である。通信装置101の制御部202は、ステップS401でコンテンツのサムネイルに対する長押し操作を受け付けたことに基づいて、出力部205を介してメニュー画面701を表示する。メニュー画面701には、コンテンツをミラーリングで再生する選択肢と、コンテンツリダイレクトで再生する選択肢とが表示されている。また、これらに加えて、メニュー画面701には、通信装置101のOS(Operating System)標準の機能に基づく処理を行う選択肢が表示されてもよい。本実施形態において、メニュー画面701には、OS標準の機能に基づく処理として、URIのコピーを行うことができる選択肢が表示されているが、これに限らず、URIの保存やURIをテキストとしてコピーするなどの選択肢が表示されてもよい。また、メニュー画面701には、通信装置101が利用しているアプリケーションプログラムに固有の機能に基づく処理が選択肢として表示されてもよい。また、メニュー画面701には、通信装置101がサムネイルの長押しを受け付けた前の処理に戻るための選択肢が表示されてもよい。当該選択肢は、図7において「Cancel」として表示されている。通信装置101の制御部202は、入力部204を介して通信装置101のユーザによる何れかの選択肢を選択するためのユーザ操作を受け付けたことに基づいて、選択された選択肢を実行するための処理を行う。
また、図8は、通信装置101が複数の通信装置102を検出している場合に、コンテンツのサムネイルに対するユーザ操作に基づいて表示する表示画面の一例を示す図である。通信装置101の制御部202は、ステップS401でコンテンツのサムネイルに対する長押し操作を受け付けたこと、および複数の通信装置102(シンク機器)を検出したことに基づいて、出力部205を介してメニュー画面801を表示する。メニュー画面801は、メニュー画面701と同様であるが、違いについて簡単に説明する。メニュー画面801には、コンテンツリダイレクトによるコンテンツの再生を行う相手装置となるシンク機器について、複数の選択肢が表示される。図8において、通信装置101の制御部202は二台のシンク機器を検出しているものとする。そのため、メニュー画面801には、第一のシンク機器とコンテンツリダイレクトを行う選択肢と、第二のシンク機器とコンテンツリダイレクトを行う選択肢とが表示される。また、これらに加えて、検出している全てのシンク機器とコンテンツリダイレクトを行う選択肢が表示されてもよい。なお、通信装置101が接続していないシンク機器と、接続しているシンク機器との両方を検出した場合、通信装置101の制御部202は接続しているシンク機器をユーザが認識できるように強調して表示してもよい。また、通信装置101が現在ミラーリングを行っている相手装置を強調して表示してもよい。なお、本実施形態において、メニュー画面801には第一のシンク機器と第二のシンク機器とが夫々S1とS2として表示されているが、これに限らず夫々のシンク機器に固有のIDや機種名、ユーザによって設定された名称などを表示してもよい。通信装置101の制御部202は、あるシンク機器とのコンテンツリダイレクトを行うためのユーザ操作を受け付けたことに基づいて、選択されたシンク機器とのコンテンツリダイレクトを実行するための処理を行う。
なお、コンテンツリダイレクトを行う相手装置として選択されたシンク機器と、ソース機器である通信装置101とが接続していない場合、通信装置101は選択されたシンク機器と図3のステップS304以降の処理を行い、接続する。そして、通信装置101は選択されたシンク機器とコンテンツリダイレクトによるコンテンツの再生を開始する。あるいは、通信装置101はコンテンツリダイレクトを行う相手装置として接続していないシンク機器が選択された場合、選択されたシンク機器とコンテンツリダイレクトを行うかユーザに問い合わせる問合せ画面を表示してもよい。通信装置101は、問合せ画面に対するユーザ操作を受け付け、ユーザが選択されたシンク機器とのコンテンツリダイレクトを行うと選択した場合、選択されたシンク機器と図3のステップS304以降の処理を行う。そして、通信装置101は選択されたシンク機器とコンテンツリダイレクトによるコンテンツの再生を開始する。一方、通信装置101は、ユーザが選択されたシンク機器とのコンテンツリダイレクトを行わないと選択した場合、再びメニュー画面801を表示する。
なお、図8においてユーザがミラーリングによるコンテンツの再生を選択した場合、通信装置101の制御部202は、既にミラーリングを行っているシンク機器とのミラーリングを継続し、かつコンテンツを再生するよう指示する。
図9は、通信装置101がコンテンツの所在情報が関連付けられていない表示に対するユーザ操作に基づいて表示する表示画面の一例を示す図である。通信装置101の制御部202は、コンテンツの所在情報が関連付けられていない表示に対する長押し操作を受け付けたことに基づいて、メニュー画面901を表示する。コンテンツの所在情報が関連付けられていない表示とは、コンテンツのURIが関連付けられていない画像や文字列等の表示のことである。図9では、コンテンツの所在情報が関連付けられていない表示として、例えばコンテンツの説明文(図9においては“おすすめ映画”の文章)に対してユーザが長押し操作を行った場合に表示するメニューの一例を示している。メニュー画面901には、通信装置101のOS標準の機能に基づく処理が選択肢として表示されている。また、メニュー画面901には通信装置101が利用しているアプリケーションプログラムに固有の機能に基づく処理が選択肢として表示されてもよい。メニュー画面901には、これらの選択肢としてユーザが長押し操作を行った文章に対するコピーや検索、ユーザ辞書に登録といった動作が表示されているが、表示される選択肢はこの限りではない。
通信装置101の制御部202は、このようにユーザが所定の動作を行った対象などに基づいて、表示するUI(User Interface)を切り替えることができる。通信装置101の制御部202は、ユーザから同じユーザ操作を受け付けても、そのユーザ操作が行われた対象に基づいて表示するUIを切り替えることで、ユーザの意図に沿ったUIの表示を行うことができる。
なお、本実施形態では、コンテンツのサムネイルのような、コンテンツの所在情報が関連付けられている表示について所定のユーザ操作を受け付けた場合、通信装置101の制御部202は、図7あるいは図8のようなメニュー画面を表示するとした。また、コンテンツの所在情報が関連付けられていない表示について所定のユーザ操作を受け付けた場合、通信装置101の制御部202は図9のようなメニュー画面を表示するとした。しかしこれに限らず、通信装置101の制御部202は、通信装置102とミラーリングを行っており、かつコンテンツの所在情報が関連付けられている表示について所定のユーザ操作を受け付けた場合、図7や図8のようなメニュー画面を表示するとしてもよい。一方、通信装置101と通信装置102とがミラーリングを行っていない場合、コンテンツの所在情報が関連付けられている表示について所定のユーザ操作を受け付けても、通信装置101の制御部202は図9のようなメニュー画面を表示するとしてもよい。
図4のステップS402においてメニュー画面を表示すると、通信装置101の制御部202は、ステップS402で出力部205を介して表示したメニュー画面に対するユーザの選択を受け付ける(ステップS403)。具体的には、通信装置101の制御部202はステップS402で表示したメニュー画面に対するユーザ操作を、入力部204を介して受け付ける。
通信装置101の制御部202は、ユーザがミラーリングによるコンテンツの再生を選択したか判定する(ステップS404)。具体的には、ステップS403で受け付けたユーザ操作が、ミラーリングによるコンテンツの再生を選択するものであったか判定する。ユーザがミラーリングによるコンテンツの再生を選択したと判定した場合(ステップS404のYes)、通信装置101の制御部202はステップS405の処理を行う。一方、ユーザがミラーリングによるコンテンツの再生を選択しなかったと判定した場合(ステップS404のNo)、通信装置101の制御部202はステップS406の処理を行う。
通信装置101の制御部202は、長押し操作が行われたサムネイルに関連付けられているURIが示すコンテンツの所在情報に基づいて、クラウドサーバ104からコンテンツを取得し、該コンテンツの再生を開始する(ステップS405)。通信装置101の制御部202は、ステップS405の処理を行うと、本フローチャートのフローを終了し、図3のステップS309の処理を行う。なお、ユーザがミラーリングでのコンテンツの再生を指示した場合、通信装置101の制御部202は、図3のステップS309でNoと判定し、ステップS310においてコンテンツの取得と再生を継続する。そして、通信装置101の制御部202は、ステップS307の処理を行うことで、通信装置102とのミラーリングを継続する。ユーザがコンテンツをミラーリングで再生すると選択した場合、ソース機器である通信装置101がコンテンツを取得、および再生し、シンク機器である通信装置102とのミラーリングを継続することで、通信装置102にもコンテンツが表示される。
一方、通信装置101の制御部202は、ステップS404においてユーザがミラーリングによるコンテンツの再生を選択しなかったと判定すると、ステップS406の処理を行う。通信装置101の制御部202は、ユーザがコンテンツリダイレクトによるコンテンツの再生を選択したか判定する(ステップS406)。具体的には、ステップS403で受け付けたユーザ操作が、コンテンツリダイレクトによるコンテンツの再生を選択するものであったか判定する。ユーザがコンテンツリダイレクトによるコンテンツの再生を選択したと判定した場合(ステップS406のYes)、本フローチャートのフローを終了し、図3のステップS309の処理を行う。この場合、通信装置101の制御部202は、ステップS309でYesと判定し、ステップS311以降の処理を行うことで、コンテンツリダイレクトのよるコンテンツの再生を開始する。なお、コンテンツリダイレクトによってコンテンツを再生する場合、ソース機器である通信装置101はコンテンツを再生しない。また、通信装置101は、ソース機器としてのコンテンツリダイレクト機能として、通信装置101はシンク機器で再生されているコンテンツの再生を制御するための再生制御信号をシンク機器に送信することができる。そのため、通信装置101の制御部202は、ステップS406でYesと判定されたことに基づいて、コンテンツの再生を制御するためのUIを表示してもよい。
一方、通信装置101の制御部202は、ユーザがコンテンツリダイレクトによるコンテンツの再生を選択しなかったと判定すると(ステップS406のNo)、本フローチャートのフローを終了し、図3のステップS309の処理を行う。通信装置101の制御部202は、ユーザからステップS403でミラーリングあるいはコンテンツリダイレクトによるコンテンツの再生以外の処理の実行指示が出された場合、本ステップでNoと判定する。なお、ステップS403で選択された処理とは、例えば図7のメニュー画面701に表示されている、URIのコピーのことを指す。これに限らず、その他のOS標準の機能に基づく処理や、通信装置101が利用しているアプリケーションプログラムに固有の機能に基づく処理などであってもよい。通信装置101の制御部202は、本フローチャートのフローを終了すると、ステップS309でNoと判定し、ステップS310の処理を行う。通信装置101の制御部202は、ステップS310において、図4のステップS403でユーザが選択した処理を実行する。具体的には、図4のステップS403においてユーザがURIのコピーを選択した場合、通信装置101の制御部202は、図3のステップS310においてURIのコピーを実行する。そして通信装置101の制御部202は、ステップS310の処理を行うと、ステップS307の処理を行い、ミラーリングを継続する。
なお、本実施形態において、通信装置101はミラーリングとコンテンツリダイレクトとの両方の再生方法に対応している通信装置であるため、通信装置101はステップS402において両方の再生方法を選択可能なメニュー画面を表示した。しかし、通信装置101が何れか一方の再生方法にのみ対応可能な通信装置である場合、通信装置101はステップS402において対応可能な再生方法のみ選択可能なメニュー画面を表示してもよい。この場合、通信装置101が対応していない再生方法については、該再生方法の選択肢を表示しないか、あるいはグレーアウトしてユーザが選択できないようにする。また、通信装置101が図3のステップS305において、通信装置102のコンテンツリダイレクト機能について問い合わせており、通信装置102からコンテンツリダイレクトに対応していないとの通知を受信した場合も同様のメニュー画面を表示してよい。また、本実施形態において、コンテンツはミラーリングとコンテンツリダイレクトとの両方で再生可能なコンテンツであるが、何れか一方の再生方法で再生可能なコンテンツである場合も同様のメニュー画面を表示してよい。このように、通信装置101、通信装置102、あるいはコンテンツが対応可能な再生方法に基づいて、メニュー画面の表示を変更することで、選択されたコンテンツを何れの再生方法で再生可能かをユーザが一目で把握することができ、便利である。
なお、図4において、通信装置101の制御部202は、ステップS401でコンテンツのサムネイルに対して所定の操作を受け付けるとメニュー画面を表示した。しかし、これに限らず、通信装置101の制御部202は、コンテンツのサムネイルに対して所定の操作以外のユーザ操作を受け付けた場合、メニュー画面の表示とは異なる処理を行ってもよい。例えば所定の操作が長押し操作である場合、通信装置101の制御部202は、コンテンツのサムネイルに対してタッチ操作を受け付けた場合、ミラーリングでコンテンツを再生してもよい。あるいは通信装置101の制御部202は、同様の場合にコンテンツリダイレクトでコンテンツを再生してもよいし、あるいはコンテンツに関するウェブページへと遷移してもよい。通信装置101の制御部202が、コンテンツのサムネイルに対して所定の操作以外のユーザ操作を受け付けた場合に、どのような所定を行うかは、通信装置101にプリセットされていてもよいし、通信装置101のOSに基づいて決定されてもよい。あるいは通信装置101がミラーリングを行うために利用しているアプリケーションに基づいて決定されてもよい。
以上、図4において通信装置101は、コンテンツのサムネイルに対する長押し操作を受け付けた場合に、メニュー画面を表示することで、ミラーリングあるいはコンテンツリダイレクトでコンテンツを再生することをユーザに選択可能にした。このように、コンテンツのサムネイルに対するユーザ操作をトリガーとして、メニュー画面を表示することにより、ユーザは直観的に操作ができる。
また、コンテンツのサムネイルに対するユーザ操作に基づいて、コンテンツの再生方法を選択可能なメニュー画面を表示することで、通信装置101は夫々の再生方法に対応する別のサムネイルを表示しなくてよくなる。
なお、通信装置101は、サムネイルに対する長押し操作をトリガーとしてメニュー画面を表示したが、これに限らずサムネイルに対するダブルタッチ操作やマルチタッチ操作、スライド操作をトリガーとしてメニュー画面を表示してもよい。また、通信装置101が入力部204であるタッチパネルに対してユーザが押し込むようなユーザ操作を行ったことを感知できるセンサーを備えている場合、このような押し込み操作を検知したことに基づいてメニュー画面を表示してもよい。あるいは、通信装置101がマウスで操作される通信装置である場合、通信装置101はサムネイルに対するマウスの右クリック操作や、クリック操作、ダブルクリック操作などをトリガーとしてメニュー画面を表示してもよい。
図5は、通信装置101が入力されたユーザ操作に基づいた再生方法でコンテンツを再生する際に実行する処理を示すフローチャートである。図5は、通信装置101がコンテンツリダイレクトを実施する際に、記憶部201に記憶されたコンピュータプログラムを制御部202が読み出し、実行することで実現される処理のフローチャートである。
なお、図5に示すフローチャートの少なくとも一部をハードウェアにより実現してもよい。ハードウェアにより実現する場合、例えば、所定のコンパイラを用いることで、各ステップを実現するためのコンピュータプログラムからFPGA上に自動的に専用回路を生成すればよい。FPGAとは、Field Programmable Gate Arrayの略である。また、FPGAと同様にしてGate Array回路を形成し、ハードウェアとして実現するようにしてもよい。また、ASIC(Application Specific Integrated Circuit)により実現するようにしてもよい。
本フローチャートは、図3のステップS308において行われる処理を示すもので、図3のステップS308において、通信装置101がユーザからコンテンツのサムネイルに対するフリック操作を受け付けた場合のフローチャートである。
まず、通信装置101の制御部202は、入力部204を介して、ユーザからコンテンツのサムネイルに対するフリック操作を受け付ける(ステップS501)。本ステップのコンテンツは、ミラーリングとコンテンツリダイレクトとの両方で再生可能なコンテンツである。なお、ユーザによるフリック操作を受け付けた対象が、コンテンツのURIが関連付けられたサムネイルであるかの判定は、図4のステップS401と同様の方法で行う。
通信装置101の制御部202は、ステップS501で受け付けたフリック操作が、所定の方向へのフリック操作であるか判定する(ステップS502)。ユーザが所定の方向へのフリック操作を行ったと判定した場合(ステップS502のYes)、通信装置101の制御部202はステップS503の処理を行う。一方、ユーザが所定の方向へのフリック操作を行わなかったと判定した場合(ステップS502のNo)、通信装置101の制御部202はステップS505の処理を行う。ユーザが所定の方向へのフリック操作を行わない場合とは、ユーザが所定の方向以外の方向へのフリック操作を行った場合である。なお、所定の方向については、通信装置101がミラーリングあるいはコンテンツリダイレクトを行う際に利用するアプリケーションプログラムによって決められている。あるいは通信装置101にプリセットされていてもよいし、ユーザによって決められていてもよい。
所定の方向へのフリック操作が行われたことに基づいて、通信装置101の制御部202はユーザからコンテンツリダイレクトによるコンテンツの再生が指示されたとする(ステップS503)。通信装置101の制御部202は、ステップS503の処理を行うと、本フローチャートのフローを終了し、図3のステップS309の処理を行う。この場合、通信装置101の制御部202は、ステップS309でYesと判定し、コンテンツリダイレクトによるコンテンツの再生を開始する。
なお、通信装置101の制御部202は、コンテンツのサムネイルに対する所定の方向としてシンク機器である通信装置102が存在する方向へのフリック操作を受け付けたことに基づいて、コンテンツリダイレクトによるコンテンツの再生を行ってもよい。通信装置101の制御部202は、GPSやWi-Fi location規格などを用いて、シンク機器の位置情報を取得する。また、ソース機器である通信装置101が複数のシンク機器に接続している場合、通信装置101は夫々のシンク機器の位置情報を取得する。この場合、通信装置101の制御部202は、所定の方向へのフリック操作が、ある一台のシンク機器が存在する方向へのフリック操作である場合、該シンク機器とのコンテンツリダイレクトによるコンテンツの再生が選択されたと判定してもよい。
なお、コンテンツリダイレクトによってコンテンツを再生する場合、ソース機器である通信装置101はコンテンツを再生しない。また、通信装置101は、ソース機器としてのコンテンツリダイレクト機能として、通信装置101はシンク機器で再生されているコンテンツの再生を制御するための再生制御信号をシンク機器に送信することができる。そのため、通信装置101の制御部202は、ステップS406でYesと判定されたことに基づいて、コンテンツの再生を制御するためのUIを表示してもよい。
一方、ユーザが所定の方向へのフリック操作を行わなかったと判定した場合(ステップS502のNo)、通信装置101の制御部202は、ミラーリングによるコンテンツの再生が指示されたとする(ステップS504)。
通信装置101の制御部202は、フリック操作が行われたサムネイルに関連付けられているURIが示すコンテンツの所在情報に基づいて、クラウドサーバ104からコンテンツを取得し、該コンテンツの再生を開始する(ステップS505)。本ステップ以降の処理は、図4のステップS405以降の処理と同様である。
なお、通信装置101の制御部202は、ユーザが入力部204を介してコンテンツのサムネイル上に指を置いたことに基づいて、フリック操作の方向と選択される処理の対応関係を示す操作メニューを表示してもよい。このように操作メニューを表示することで、ユーザは所望の再生方法でコンテンツを再生する際に、何れの方向にフリックすればよいのか一目で把握でき、便利である。通信装置101の制御部202は、ユーザの指が入力部204から離れた場合、操作メニューを非表示にする。
図5において、通信装置101は、コンテンツのサムネイルに対して所定の方向へのフリック操作が入力されたことに基づいて、コンテンツの再生方法を決定することで、ユーザの所望の再生方法でのコンテンツの再生を可能にした。このように、ユーザが所定の方向にフリックしたことに基づいて、所定の再生方法でコンテンツを再生するようにすることで、ユーザの直観的な操作による再生方法の選択を可能にする。
また、ユーザ操作の種類に基づいてコンテンツの再生方法を選択することで、通信装置101は夫々の再生方法に対応する別のサムネイルを表示しなくてよくなる
なお、所定の方向以外へのフリック操作を受け付けた場合、通信装置101はミラーリングによるコンテンツの再生を行うとしたが、これに限らず、所定の方向以外へのフリック操作を受け付けた場合、通信装置101は特別な処理を行わないとしてもよい。具体的には、通信装置101の制御部202は、ステップS502でNoと判定すると、本フローチャートのフローを終了し、図3のステップS309の処理を行う。通信装置101の制御部202は、ステップS309でNoと判定し、ステップS310の処理を行う。この場合、通信装置101の制御部202は、ステップS310において特別な処理は行わず、ステップS307の処理を行い、ミラーリングを継続する。あるいは、所定の方向以外へのフリック操作を受け付けた場合、通信装置101は画面のスクロールを行ってもよい。例えば、通信装置101が所定の方向以外へのフリック操作として、下方向へのフリック操作を受け付けたとする。通信装置101の制御部202は、ステップS502でNoと判定すると、本フローチャートのフローを終了し、図3のステップS309の処理を行う。通信装置101の制御部202は、ステップS309でNoと判定し、ステップS310の処理を行う。この場合、通信装置101の制御部202は、ステップS310において、下方向への画面のスクロールを行い、ステップS307の処理を行うことでミラーリングを継続する。
なお、本フローチャートは、スマートフォンなどの入力部204としてタッチパネルを備える通信装置101に対するユーザによるフリック操作に基づいて再生方法を選択している。しかし、これに限らず、通信装置101は、ユーザによるスライド操作、あるいはスワイプ操作など、所定の方向への指の移動を伴うユーザ操作に基づいて再生方法を選択してもよい。また、通信装置101はマウス操作による右クリック操作や、クリック操作、ダブルクリック操作、ドラッグ操作、ドロップ操作などに基づいて再生方法を選択してもよい。
図6は、通信装置101が入力されたユーザ操作に基づいた再生方法でコンテンツを再生する際に実行する処理を示す別のフローチャートである。図6は、通信装置101がコンテンツリダイレクトを実施する際に、記憶部201に記憶されたコンピュータプログラムを制御部202が読み出し、実行することで実現される処理のフローチャートである。
なお、図6に示すフローチャートの少なくとも一部をハードウェアにより実現してもよい。ハードウェアにより実現する場合、例えば、所定のコンパイラを用いることで、各ステップを実現するためのコンピュータプログラムからFPGA上に自動的に専用回路を生成すればよい。FPGAとは、Field Programmable Gate Arrayの略である。また、FPGAと同様にしてGate Array回路を形成し、ハードウェアとして実現するようにしてもよい。また、ASIC(Application Specific Integrated Circuit)により実現するようにしてもよい。
本フローチャートは、図3のステップS308において行われる処理を示すもので、図3のステップS308において、通信装置101がユーザからコンテンツのサムネイルに対するタッチ操作などのユーザ操作を受け付けた場合のフローチャートである。
まず、通信装置101の制御部202は、入力部204を介して、ユーザからコンテンツのサムネイルに対するユーザ操作を受け付ける(ステップS601)。本ステップのコンテンツは、ミラーリングとコンテンツリダイレクトとの両方で再生可能なコンテンツである。なお、ユーザ操作を受け付けた対象が、コンテンツのURIが関連付けられたサムネイルであるかの判定は、図4のステップS401と同様の方法で行う。
通信装置101の制御部202は、ステップS601で受け付けたユーザ操作が、シングルタッチ操作であるか判定する(ステップS602)。シングルタッチ操作とは、通信装置101のユーザが一本の指を用いて行うタッチ操作である。通信装置101の制御部202は、ステップS601で受け付けたユーザ操作がシングルタッチ操作であると判定すると(ステップS602のYes)、ステップS603の処理を行う。通信装置101の制御部202は、ユーザ操作としてタッチ装置を受け付けたことに基づいて、ユーザからミラーリングによるコンテンツの再生指示が出されたとする(ステップS603)。通信装置101はステップS603の処理を行うと、ステップS604の処理を行うが、ステップS604の処理は図4のステップS405と同様である。
一方、通信装置101の制御部202は、ステップS601で受け付けたユーザ操作がシングルタッチ操作ではないと判定すると(ステップS602のNo)、ステップS605の処理を行う。通信装置101の制御部202は、ステップS601で受け付けたユーザ操作がマルチタッチ操作であるか判定する(ステップS605)。マルチタッチ操作とは、通信装置101のユーザが同時に二本以上の指を用いて行うタッチ操作である。通信装置101の制御部202は、ステップS601においてマルチタッチ操作を受け付けたと判定すると(ステップS606のYes)、ステップS606の処理を行う。通信装置101の制御部202は、マルチタッチ操作を受け付けたことに基づいて、ユーザからコンテンツリダイレクトによるコンテンツの再生指示を受け付けたとする(ステップS606)。
一方、通信装置101の制御部202は、ステップS601においてマルチタッチ操作を受け付けていないと判定すると(ステップS606のNo)、ステップS607の処理を行う。通信装置101の制御部202は、ステップS601でミラーリングあるいはコンテンツリダイレクトによるコンテンツの再生以外の処理の実行指示が出されたとする(ステップS607)。通信装置101の制御部202は、受け付けたユーザ操作に基づいてどのような処理を実行するかを、通信装置101のOSに基づいて決定する。これに加えて、あるいは代えて、通信装置101が利用していているアプリケーションに基づいて決定してもよい。通信装置101の制御部202は、ステップS607の処理を行うと本フローチャートのフローを終了し、図3のステップS309の処理を行う。この場合、通信装置101の制御部202は、ステップS309でNoと判定し、ステップS310の処理を行う。通信装置101の制御部202は、ステップS310において、図6のステップS601で受け付けたユーザ操作に基づく処理を実行する。
なお、本フローチャートでは、通信装置101の制御部202は、コンテンツのサムネイルに対して受け付けたユーザ操作の種類に基づいて、コンテンツの再生方法を決定した。具体的には、通信装置101の制御部202は、シングルタッチ操作を受け付けた場合はミラーリングによりコンテンツを再生し、マルチタッチ操作を受け付けた場合はコンテンツリダイレクトによりコンテンツを再生した。しかし、通信装置101の制御部202は、コンテンツのサムネイルに対してダブルタッチ操作や、長押し操作、スライド操作、スワイプ操作などを受け付け場合にミラーリングによりコンテンツを再生すると選択してもよい。あるいは通信装置101の制御部202は、コンテンツのサムネイルに対して画面上の所定の領域へのドラッグ操作、ドロップ操作を受け付けた場合に、ミラーリングによりコンテンツを再生すると選択してもよい。通信装置101の制御部202は、コンテンツリダイレクトによるコンテンツの再生についても、同様に他のユーザ操作を受け付けたことに基づいて選択してもよい。あるいは、通信装置101が入力部204であるタッチパネルに対して押し込み操作が行われたことを感知できる場合、押し込み操作を検知したことに基づいて通信装置101の制御部202はミラーリングによりコンテンツを再生すると選択してもよい。あるいは、通信装置101の制御部202は、ユーザ操作として押し込み操作を受け付けた場合に、コンテンツリダイレクトによりコンテンツを再生すると選択してもよい。もしくは、通信装置101の制御部202は、受け付けた押し込み操作の強さに応じて、コンテンツリダイレクトまたはミラーリングでコンテンツを再生すると選択してもよい。例えば通信装置101の制御部202は、一定の強さ以上の押し込み操作を受け付けた場合はコンテンツリダイレクトによるコンテンツの再生を選択する。この場合、通信装置101の制御部202は、該押し込み操作よりも弱い押し込み操作を受け付けた場合はミラーリングによるコンテンツの再生を選択する。
図6において、通信装置101の制御部202は、異なる種類のユーザ操作を受け付けたことに基づいて、コンテンツをミラーリングで再生するか、あるいはコンテンツリダイレクトで再生するか選択した。このように、コンテンツのサムネイルに対するユーザ操作をトリガーとして、メニュー画面を表示することにより、ユーザは直観的に操作ができる。
また、ユーザ操作の種類に基づいてコンテンツの再生方法を選択することで、通信装置101は夫々の再生方法に対応する別のサムネイルを表示しなくてよくなる。
なお、本フローチャートは、スマートフォンなどの入力部204としてタッチパネルを備える通信装置101に対するユーザ操作の種類に基づいて再生方法を選択している。しかし、これに限らず、通信装置101はマウス操作による右クリック操作や、クリック操作、ダブルクリック操作、ドラッグ操作、ドロップ操作などのユーザ操作の種類に基づいて再生方法を選択してもよい。
また、通信装置101は、図4、図5、図6の少なくとも一つのフローチャートに基づいた再生方法の選択に対応していればよい。
本実施形態において、通信装置101の制御部202が入力されたユーザ操作に基づいてコンテンツの再生方法を選択したが、これに限らず通信装置102の制御部202がコンテンツの再生方法を選択してもよい。この場合、通信装置102の制御部202は、通信装置102の入力部204を介して入力されたユーザ操作に基づいてコンテンツの再生方法を選択する。
また、本実施形態において、通信装置101の制御部202は、コンテンツをミラーリングで再生するか、コンテンツリダイレクトで再生するか選択した。コンテンツをミラーリングで再生した場合、シンク機器である通信装置102の通信量を抑えることができる。そのため、通信装置102が利用している通信の通信量に上限が設定されている場合、通信量が上限に達することを防ぐことができる。また、通信装置102が利用している通信が従量課金制である場合、ユーザは通信料金の増加を抑えることができる。また、コンテンツをコンテンツリダイレクトで再生する場合、ユーザはコンテンツの再生が開始されるまでに通信装置102における該コンテンツを再生するためアプリケーションの立ち上げなどの処理が完了するまで待たなければならない。そのため、コンテンツをミラーリングで再生することで、ユーザはコンテンツリダイレクトの開始処理の時間を待たなくてよくなる。また、ソース機器である通信装置101がコンピュータなどの複数の画面を同時に表示できる通信装置である場合、コンテンツをミラーリングで再生することで、シンク機器である通信装置102にも複数の画面を同時に表示することができる。具体的には、例えば通信装置101において、コンテンツと文書ファイルを同時に表示している場合、ミラーリングでコンテンツを再生することで、通信装置102においてもコンテンツと文書ファイルとを同時に表示することができる。これにより、ユーザはコンテンツと文書ファイルとを同時に共有することができる。
一方、コンテンツをコンテンツリダイレクトで再生する場合、ソース機器である通信装置101の通信量を抑えることができる。そのため、通信装置101が利用している通信の通信量に上限が設定されている場合、通信量が上限に達することを防ぐことができる。また、通信装置101が利用している通信が従量課金制である場合、ユーザは通信料金の増加を抑えることができる。また、コンテンツをコンテンツリダイレクトで再生する場合、通信装置101で表示されている画面はシンク機器である通信装置102とは共有されないので、ユーザは通信装置101を用いてコンテンツの再生とは異なる処理を実行することができる。具体的にはユーザは通信装置101を利用してインターネットの閲覧や、メールの作成などといったことができるため、ユーザの利便性が向上する。また、通信装置101は、ミラーリングでコンテンツを再生する場合、クラウドサーバ104からコンテンツを取得し、取得したコンテンツを再生し、さらにミラーリング処理を行うことで、シンク機器である通信装置102の画面上にコンテンツを表示する。一方、コンテンツリダイレクトでコンテンツを再生する場合、通信装置101はコンテンツの再生を行わないため、通信装置101の負荷が軽減でき、また通信装置101の消費電力が軽減する。
また、本実施形態では、通信装置101はコンテンツのサムネイルに対するユーザ操作に基づいて、コンテンツをミラーリングで再生するか、あるいはコンテンツリダイレクトで再生するかの選択を行った。しかし、コンテンツリダイレクトに代えて、あるいは加えて、通信装置101はユーザ操作に基づいてコンテンツをダイレクトストリーミングで再生するかの選択を行ってもよい。この場合、コンテンツのサムネイルに関連付けられているURIは、通信装置101におけるコンテンツの所在を示す。
通信装置101がダイレクトストリーミングによるコンテンツの再生を行うことができる通信装置である場合、通信装置101の制御部202は図3のステップS309に代わって、ダイレクトストリーミングによるコンテンツの再生指示が出されたか判定する。
なお、通信装置101がミラーリングと、ダイレクトストリーミングと、コンテンツリダイレクトとの何れかによるコンテンツの再生が可能な通信装置であるとする。この場合、通信装置101は図3のステップS309と並行して、ダイレクトストリーミングによるコンテンツの再生指示が出されたか判定する。あるいはステップS309でNoと判定された場合に、ダイレクトストリーミングによるコンテンツの再生指示が出されたか判定してもよいし、ステップS309より先にダイレクトストリーミングによるコンテンツの再生指示が出されたか判定してもよい。通信装置101の制御部202は、ダイレクトストリーミングによるコンテンツの再生指示が出されていないと判定すると、ステップS310の処理を行う。
一方、通信装置101の制御部202は、ダイレクトストリーミングによるコンテンツの再生指示が出されたと判定すると、通信装置102に対してダイレクトストリーミングによるコンテンツの再生に対応しているか問い合わせる。通信装置102の制御部202は、通信装置101からダイレクトストリーミングに対応しているかの問合せを受信すると、自装置がダイレクトストリーミングによるコンテンツの再生に対応しているかの応答を送信する。通信装置101の制御部202は、通信装置102から受信した応答に基づいて、通信装置102がダイレクトストリーミングに対応していない場合、コンテンツの再生を開始し、ステップS307の処理を行う。つまり、通信装置102がダイレクトストリーミングに対応していない場合、通信装置101はコンテンツを再生し、通信装置102とミラーリングを継続する。あるいは、通信装置102がダイレクトストリーミングに対応していない場合、通信装置101の制御部202はコンテンツの再生を開始せず、ユーザに通信装置102がダイレクトストリーミングに対応していない旨を通知してもよい。そして、通信装置101の制御部202は、通信装置102がダイレクトストリーミングに対応していない旨を通知した後、ステップS307の処理を行ってもよい。一方、通信装置102がダイレクトストリーミングに対応している場合、通信装置101の制御部202は、通信装置102との間でダイレクトストリーミングを行う際に使用する画面や音声の符号化方式の種類や映像の解像度、フレームレートなどを決定する。なお、図3のステップS305およびステップS353において、通信装置101と通信装置102とは、通信装置102がダイレクトストリーミングに対応しているかの確認を行ってもよい。また、通信装置101と通信装置102とは、ダイレクトストリーミングを行う際に使用する符号化方式などを決定しておいてもよい。
そして、通信装置101の制御部202は、通信装置102にコンテンツを送信する。この場合に、通信装置101はコンテンツを再生しなくてよい。また、通信装置101と通信装置102とは、ダイレクトストリーミングによるコンテンツの再生を行う際、ミラーリングを一時停止する。具体的には通信装置101と通信装置102とは図3のステップS314およびステップS358と同様の処理を行い、ミラーリングを一時停止する。通信装置102の制御部202は、通信装置101からコンテンツを受信すると、受信したコンテンツを再生する。通信装置102が受信したコンテンツの再生を開始すると、通信装置101と通信装置102とは図3のステップS315およびステップS360以降と同様の処理を行う。
また、本実施形態において、通信装置101は、コンテンツをミラーリングで再生する場合も、コンテンツリダイレクトで再生する場合も、同じ通信装置102をシンク機器としたが、これ限らず、夫々の再生方法で異なる通信装置をシンク機器としてもよい。具体的には、通信装置101は、コンテンツをミラーリングで再生する場合は通信装置102をシンク機器とし、コンテンツをコンテンツリダイレクトで再生する場合は通信装置102と異なる通信装置をシンク機器としてもよい。
また、通信装置101の制御部202は、コンテンツのサムネイルに対するユーザ操作に基づいて、ミラーリングあるいはコンテンツリダイレクトによるコンテンツの再生を行う。あるいは、通信装置101の制御部202は、コンテンツリダイレクトに代えて、もしくは加えて、ダイレクトストリーミングによるコンテンツの再生を行う。これらに加えて、通信装置101の制御部202は、ミラーリング処理(図3のステップS307)を開始する前に受け付けたユーザ操作に基づいて、通信装置101上でのコンテンツの再生を行ってもよい。この場合に、通信装置101は、ステップS307をスキップし、ミラーリングを行わない。
なお、本実施形態では、通信装置101がマルチタッチ操作を受け付けた場合、通信装置101の制御部202は、タッチ操作を行った指の本数に限らずコンテンツの再生方法の選択などの処理を行うとした。しかし、これに限らず、通信装置101はマルチタッチ操作を受け付けた場合に、該マルチタッチ操作に用いられた指の本数に基づいて異なる処理を行ってもよい。例えば通信装置101の制御部202は、二本の指によるマルチタッチ操作を受け付けた場合はミラーリングを選択し、三本の指によるマルチタッチ操作を受け付けた場合はコンテンツリダイレクトを選択してもよい。
なお、本実施形態において、通信装置101の制御部202は、コンテンツのサムネイルに対して所定のユーザ操作を受け付けた場合に、メニュー画面を表示し、コンテンツをミラーリングあるいはコンテンツリダイレクトで再生するか、ユーザに選択させた。そして、通信装置101の制御部202は、表示したメニュー画面に対するユーザ選択に応じて、コンテンツをミラーリングまたはコンテンツリダイレクトで再生した。この場合に、通信装置101の制御部202は、コンテンツのサムネイルに関連付けられている所在情報のリンク先を表示する前に、コンテンツをミラーリングあるいはコンテンツリダイレクトで再生するか選択した。所在情報のリンク先では、コンテンツが表示される。例えばコンテンツのサムネイルに関連付けられているURLのリンク先が、コンテンツを提供している動画サービス内にある、コンテンツの再生ページだったとする。コンテンツが画像データを含む場合、再生ページにはコンテンツに含まれる画像データや、コンテンツのタイトル、コンテンツを再生するためのGUIなどが表示される。通信装置101の制御部202は、コンテンツのサムネイルに対して所定のユーザ操作を受け付けるとコンテンツの再生ページを表示する前にメニュー画面を表示し、コンテンツをミラーリングあるいはコンテンツリダイレクトで再生するかをユーザに選択させる。そして通信装置101の制御部202は、ユーザによって選択された再生方法でコンテンツの再生を開始する。
例えば通信装置101がコンテンツの再生ページを表示した場合に、通信装置101がコンテンツの一部分を取得し、バッファリングするように設定されている場合がある。このようなコンテンツを再生する際に、通信装置101の制御部202が再生ページを表示する前にコンテンツの再生方法をユーザに選択させることで、通信装置101が不要なバッファリングを行わなくてよくなる場合がある。例えばコンテンツリダイレクトでコンテンツを再生する場合、実際にコンテンツを取得するのは通信装置102であるので、通信装置101はバッファリングを行う必要がない。そのため、通信装置101の制御部202は、コンテンツの再生ページに遷移する前にユーザにコンテンツの再生方法を選択させることで、ユーザがコンテンツリダイレクトによるコンテンツの再生を選択した場合、不要なバッファリングを行わなくてよくなる。
また、本実施形態において、通信装置101の制御部202が、コンテンツのサムネイルに対して受け付けたユーザ操作の種類に基づいてコンテンツの再生方法を選択する場合も同様である。通信装置101の制御部202は、コンテンツのサムネイルに対して受け付けたユーザ操作に基づいてコンテンツの再生方法を選択するが、再生方法の選択は再生ページを表示する前に行われる。そのため、ユーザがコンテンツをコンテンツリダイレクトで再生するように指示するユーザ操作をサムネイルに対して行った場合、通信装置101は不要なバッファリングを行わなくてよい。通信装置101の制御部202が、コンテンツのサムネイルに対して受け付けたユーザ操作の種類と方向に基づいてコンテンツの再生方法を選択する場合も同様である。
なお、図3から図6に示した通信装置101や通信装置102のフローチャートの少なくとも一部または全部をハードウェアにより実現してもよい。ハードウェアにより実現する場合、例えば、所定のコンパイラを用いることで、各ステップを実現するためのコンピュータプログラムからFPGA上に専用回路を生成し、これを利用すればよい。FPGAとは、Field Programmable Gate Arrayの略である。また、FPGAと同様にしてGate Array回路を形成し、ハードウェアとして実現するようにしてもよい。また、ASIC(Application Specific Integrated Circuit)により実現するようにしてもよい。
また、図3から図6に示したフローチャートの各ステップを不図示の複数のCPUもしくは装置で分散して行うようにしてもよい。複数の装置で分散して行う場合、ソース機器についてはソースシステム、シンク機器についてはシンクシステムとして動作する。
以上、実施形態を詳述したが、本発明は例えば、システム、装置、方法、プログラム若しくは記録媒体(記憶媒体)などとしての実施態様をとることが可能である。具体的には、複数の機器(例えば、ホストコンピュータ、インタフェース機器、撮像装置、webアプリケーションなど)から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
201 記憶部
202 制御部
203 機能部
204 入力部
205 出力部
206 通信部
207 アンテナ

Claims (8)

  1. 通信装置であって、
    動画データ又は映像データである動的コンテンツのリソースを示すURI(Uniform Resource Identifier)に基づいて外部装置から対応する動的コンテンツを取得し、当該取得した動的コンテンツの再生処理を通信装置上で行い、当該再生処理により得られる再生中の前記動的コンテンツを示す画像を含む画面を前記通信装置の表示部に表示し、前記通信装置の前記表示部に表示されている、前記再生中の前記動的コンテンツを示す画像を含む画面を示す画像データを他の通信装置に送信して他の通信装置に前記再生中の前記動的コンテンツを示す画像を含む画面をミラーリングする第1の処理を行う第1の処理手段と、
    前記動的コンテンツのリソースを示す前記URIを他の通信装置に送信する第2の処理を行う第2の処理手段と、
    前記動的コンテンツのリソースを示す前記URIが前記通信装置に保持されている状態、且つ、当該URIに対応する動画データ又は映像データである動的コンテンツの再生処理を開始する前に、前記動的コンテンツに関わる所定のユーザ操作を受け付けたことに従って、前記動的コンテンツの共有方法を選択する表示アイテムを表示する表示制御手段と、を有し、
    前記表示制御手段は、前記動的コンテンツに関わるユーザ操作であって、前記所定のユーザ操作とは異なる第2の所定のユーザ操作を、前記動的コンテンツに対応する前記URIが前記通信装置に保持されている状態、且つ、当該URIで示される動画データ又は映像データである前記動的コンテンツの再生処理を開始する前に受け付けた場合、前記表示アイテムを表示することなく、前記第1の処理手段による前記第1の処理を開始するよう制御することを特徴とする通信装置。
  2. 前記動的コンテンツに関わる所定のユーザ操作は、再生待ち状態の動的コンテンツが存在することを表す第2の表示アイテムに対する長押し操作であり、
    前記第2の所定のユーザ操作は、前記第2の表示アイテムに対するタッチ操作であることを特徴とする請求項に記載の通信装置。
  3. 前記第2の表示アイテムは、再生待ち状態の動的コンテンツに対応するサムネイル画像を含み、前記表示アイテムは、複数の選択肢から1つの選択肢を選択する択一操作を受け付けるための表示アイテムであることを特徴とする請求項に記載の通信装置。
  4. 前記表示アイテムは、前記共有方法と、共有相手先を選択する表示アイテムであり、前記表示アイテムに対するユーザ操作を受け付けた結果に基づいて、前記第2の処理手段は、前記動的コンテンツのリソースを示す前記URIを前記他の通信装置に送信するとともに、当該URIを前記他の通信装置とは異なる第2の他の通信装置にも送信することを特徴とする請求項1乃至3のいずれか1項に記載の通信装置。
  5. 前記通信装置が記憶する動的コンテンツを取得し、前記取得した動的コンテンツを再生処理することで得られる再生画像を含む画面を前記通信装置に表示することなく、前記取得した動的コンテンツを前記他の通信装置に送信し、前記他の通信装置に前記動的コンテンツの表示を引き起こさせる第3の処理を行う第3の処理手段をさらに有することを特徴とする請求項1乃至のいずれか1項に記載の通信装置。
  6. 前記通信装置は、Wi-Fi Miracast規格に準拠して、他の通信装置に画面をミラーリングする前記第1の処理を行うことを特徴とする請求項1乃至のいずれか1項に記載の通信装置。
  7. 通信装置の制御方法であって、
    動画データ又は映像データである動的コンテンツのリソースを示すURI(Uniform Resource Identifier)に基づいて外部装置から対応する動的コンテンツを取得し、当該取得した動的コンテンツの再生処理を通信装置上で行い、前記再生処理により得られる再生中の前記動的コンテンツを示す画像を含む画面を前記通信装置の表示部に表示し、前記通信装置の前記表示部に表示されている、前記再生中の動的コンテンツを示す画像を含む画面を示す画像データを他の通信装置に送信して他の通信装置に前記再生中の前記動的コンテンツを示す画像を含む画面をミラーリングする第1の処理を行う第1の処理工程と、
    前記動的コンテンツのリソースを示す前記URIを他の通信装置に送信する第2の処理を行う第2の処理工程と、
    前記動的コンテンツのリソースを示す前記URIが前記通信装置に保持されている状態、且つ、当該URIに対応する動画データ又は映像データである動的コンテンツの再生処理を開始する前に、前記動的コンテンツに関わる所定のユーザ操作を受け付けたことに従って、前記動的コンテンツの共有方法を選択する表示アイテムを表示する第1の表示制御工程と、
    前記動的コンテンツに関わるユーザ操作であって、前記所定のユーザ操作とは異なる第2の所定のユーザ操作を、前記動的コンテンツに対応する前記URIが前記通信装置に保持されている状態、且つ、当該URIで示される動画データ又は映像データである前記動的コンテンツの再生処理を開始する前に受け付けた場合、前記表示アイテムを表示することなく、前記第1の処理工程の前記第1の処理を開始するよう制御する第2の表示制御工程と、
    を有することを特徴とする通信装置の制御方法。
  8. コンピュータを請求項1乃至6のいずれか1項に記載の通信装置の各手段として機能させるためのプログラム。
JP2018042445A 2018-03-08 2018-03-08 通信装置、通信方法、およびプログラム Active JP7336179B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2018042445A JP7336179B2 (ja) 2018-03-08 2018-03-08 通信装置、通信方法、およびプログラム
US16/275,937 US20190278472A1 (en) 2018-03-08 2019-02-14 Communication apparatus, communication method, and recording medium
KR1020190024990A KR20190106730A (ko) 2018-03-08 2019-03-05 통신장치, 통신방법, 기록매체 및 프로그램

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018042445A JP7336179B2 (ja) 2018-03-08 2018-03-08 通信装置、通信方法、およびプログラム

Publications (2)

Publication Number Publication Date
JP2019159505A JP2019159505A (ja) 2019-09-19
JP7336179B2 true JP7336179B2 (ja) 2023-08-31

Family

ID=67842635

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018042445A Active JP7336179B2 (ja) 2018-03-08 2018-03-08 通信装置、通信方法、およびプログラム

Country Status (3)

Country Link
US (1) US20190278472A1 (ja)
JP (1) JP7336179B2 (ja)
KR (1) KR20190106730A (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4044610A4 (en) 2019-10-07 2023-04-19 LG Electronics Inc. SOURCE DEVICE AND WIRELESS SYSTEM
CN111741352A (zh) * 2020-07-09 2020-10-02 腾讯科技(深圳)有限公司 一种投屏控制的方法、投屏播放的方法以及相关装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130219072A1 (en) 2012-02-20 2013-08-22 Samsung Electronics Co., Ltd. Screen mirroring method and apparatus thereof
US20150095510A1 (en) 2013-09-30 2015-04-02 Cavium, Inc. Protocol Switching over Multi-Network Interface
JP2016071638A (ja) 2014-09-30 2016-05-09 Kddi株式会社 ソース端末、表示制御システム、表示制御方法、表示制御プログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2989244B1 (fr) * 2012-04-05 2014-04-25 Current Productions Interface et navigation video multi sources
US8856845B2 (en) * 2012-12-21 2014-10-07 TCL Research America Inc. Method and system for providing personalized contents
US20160034460A1 (en) * 2014-07-29 2016-02-04 TCL Research America Inc. Method and system for ranking media contents
PL3329670T3 (pl) * 2015-07-28 2023-04-11 Mersive Technologies, Inc. System wirtualnego mostka sterownika wideo do współpracy z wieloma źródłami w obrębie systemu konferencji internetowych
US9924238B2 (en) * 2016-03-21 2018-03-20 Screenovate Technologies Ltd. Method and a system for using a computerized source device within the virtual environment of a head mounted device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130219072A1 (en) 2012-02-20 2013-08-22 Samsung Electronics Co., Ltd. Screen mirroring method and apparatus thereof
US20150095510A1 (en) 2013-09-30 2015-04-02 Cavium, Inc. Protocol Switching over Multi-Network Interface
JP2016071638A (ja) 2014-09-30 2016-05-09 Kddi株式会社 ソース端末、表示制御システム、表示制御方法、表示制御プログラム

Also Published As

Publication number Publication date
US20190278472A1 (en) 2019-09-12
JP2019159505A (ja) 2019-09-19
KR20190106730A (ko) 2019-09-18

Similar Documents

Publication Publication Date Title
TWI536855B (zh) 內容分享方法與裝置
JP4891407B2 (ja) ピアツーピアコンフィグレーションにおけるマルチメディアコンテンツの共有
JP7123594B2 (ja) 通信装置、制御方法、およびプログラム
KR102374855B1 (ko) 통신장치, 통신방법, 및 기억매체
KR20120126803A (ko) 휴대용 단말기에서 주변 디바이스의 데이터를 저장하기 위한 장치 및 방법
JP7336179B2 (ja) 通信装置、通信方法、およびプログラム
KR20190077221A (ko) 통신장치, 제어방법, 기억매체 및 프로그램
JP6701021B2 (ja) 通信装置、通信方法、およびプログラム
JP6873762B2 (ja) 通信装置、通信システム、通信方法、および、プログラム
US11457267B2 (en) Communication apparatus, communication method, and storage medium
US10649723B2 (en) Communication device, control method, and storage medium
JP7118764B2 (ja) 通信装置、制御方法、およびプログラム
JP2019215762A (ja) 通信装置、制御方法、および、プログラム
JP7146473B2 (ja) 通信装置、通信方法、およびプログラム
US10764737B2 (en) Communication apparatus, control method, and storage medium
WO2016070371A1 (zh) 移动终端和web终端之间互连及流传输和流媒体播放的方法
TWI538493B (zh) Multimedia system, cross - platform real - time sharing system and method
JP2019117548A (ja) 通信装置、制御方法、およびプログラム
JP2019169870A (ja) 通信装置、制御方法、およびプログラム
TW201517606A (zh) 在遠端序列分享多媒體訊息的方法及其裝置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210305

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220131

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220208

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220408

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220823

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221017

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230214

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230414

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230821

R151 Written notification of patent or utility model registration

Ref document number: 7336179

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151