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

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

Info

Publication number
JP2016208215A
JP2016208215A JP2015086481A JP2015086481A JP2016208215A JP 2016208215 A JP2016208215 A JP 2016208215A JP 2015086481 A JP2015086481 A JP 2015086481A JP 2015086481 A JP2015086481 A JP 2015086481A JP 2016208215 A JP2016208215 A JP 2016208215A
Authority
JP
Japan
Prior art keywords
transmission
compression rate
encoded data
data
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2015086481A
Other languages
English (en)
Other versions
JP2016208215A5 (ja
JP6540189B2 (ja
Inventor
劔持 千智
Kazutomo Kenmochi
千智 劔持
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.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2015086481A priority Critical patent/JP6540189B2/ja
Priority to TW105112013A priority patent/TWI739739B/zh
Priority to PCT/JP2016/002110 priority patent/WO2016170778A1/en
Priority to US15/564,871 priority patent/US10959126B2/en
Priority to CN201680021919.6A priority patent/CN107534618B/zh
Priority to EP19163182.9A priority patent/EP3531417B1/en
Priority to EP16722714.9A priority patent/EP3286899B1/en
Priority to KR1020177026592A priority patent/KR102543881B1/ko
Publication of JP2016208215A publication Critical patent/JP2016208215A/ja
Publication of JP2016208215A5 publication Critical patent/JP2016208215A5/ja
Application granted granted Critical
Publication of JP6540189B2 publication Critical patent/JP6540189B2/ja
Priority to US17/190,357 priority patent/US20210195461A1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0278Traffic management, e.g. flow control or congestion control using buffer status reports
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/062Synchronisation of signals having the same nominal but fluctuating bit rates, e.g. using buffers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/30Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/32Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/38Flow control; Congestion control by adapting coding or compression rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/762Media network packet handling at the source 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/06Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • G10L19/24Variable rate codecs, e.g. for generating different qualities using a scalable representation such as hierarchical encoding or layered encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
    • 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)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • Computer Hardware Design (AREA)
  • Environmental & Geological Engineering (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Communication Control (AREA)
  • Quality & Reliability (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)

Abstract

【課題】 通信品質を推定することなく、再生が途切れないように再生の対象とするデータを送信する。【解決手段】 本開示の一側面においては、無線伝送の対象となるデータに符号化処理が行われて符号化データが生成されて複数フレーム分の符号化データから成る、固定サイズの伝送単位に収まる送信符号化データを生成され、無線伝送される前の送信符号化データが一時的に保持され、保持されている無線伝送前の送信符号化データの数を表す送信待ちデータ数に基づき、送信符号化データを生成する際の符号化データのフレームの数を表す格納フレーム数が決定され、決定された格納フレーム数に基づき、符号化処理で採用される圧縮率が決定される。本開示は、例えば、スマートフォンや携帯プレーヤに適用できる。【選択図】 図3

Description

本開示は、送信装置、送信方法、およびプログラムに関し、特に、オーディオデータなどを遅延なく無線送信できるようにした送信装置、送信方法、およびプログラムに関する。
従来、デジタル機器間の近距離無線通信規格としてBluetooth(商標)が知られている。Bluetooth“Advanced Audio Distribution Profile”(A2DP)を用いれば、例えば、スマートフォンやウォークマン(ソニー株式会社の登録商標)に代表される携帯音楽プレーヤなどで再生したオーディオデータをスピーカやヘッドホンにリアルタイムに無線伝送することができる。
ただし、使用環境によっては通信品質の劣化などに起因してデータの伝達が滞ってしまい、いわゆる音切れなどの不具合が発生してしまうことが起こり得る。
そこで従来、通信品質の劣化に伴う音切れを抑止するための方法として、送信装置側で通信品質を推定し、通信品質が劣化している場合には、データ伝送単位のサイズが小さくなるように、データの圧縮率を上げる方法が提案されている(例えば、特許文献1参照)。
特開2003−309541号公報
上述したように、特許文献1に記載されている方法では、送信装置側で通信品質を推定する必要があった。また、Bluetoothのようにデータ伝送単位のサイズが予め何種類かに決まっている場合、変更前後のデータ転送単位のサイズが大きく異なると、圧縮率も大きく変更することになってしまい、音質にも明らかな違いが生じてしまっていた。
さらに、いわゆる音切れは、通信品質の劣化だけが原因ではなく、送信装置側の処理負荷が高い場合などにも発生し得るが、そのような場合、特許文献1に記載されている方法で対処することができなかった。
本開示はこのような状況に鑑みてなされたものであり、通信品質を推定することなく、再生が途切れないように再生の対象とするデータを送信できるようにするものである。
本開示の一側面である送信装置は、無線伝送の対象となるデータに符号化処理を行うことによって符号化データを生成し、複数フレーム分の前記符号化データから成る、固定サイズの伝送単位に収まる送信符号化データを生成する符号化部と、無線伝送される前の前記送信符号化データを一時的に保持する保持部と、前記保持部に保持されている前記送信符号化データを無線伝送する送信部と、前記保持部に保持されている無線伝送前の前記送信符号化データの数を表す送信待ちデータ数に基づき、前記符号化部により前記送信符号化データを生成する際の前記符号化データのフレームの数を表す格納フレーム数を決定する格納フレーム数決定部と、決定された格納フレーム数に基づき、前記符号化処理で採用される圧縮率を決定する圧縮率決定部とを備える。
本開示の一側面である送信装置は、前記送信待ちデータ数を間歇的に取得して蓄積する蓄積部をさらに備えることができ、前記格納フレーム数決定部は、前記蓄積部に蓄積されている前記送信待ちデータ数に基づき、前記格納フレーム数を決定することができる。
前記格納フレーム数決定部は、前記蓄積部に蓄積されている最新の前記送信待ちデータ数が所定の閾値を超えた場合、前記格納フレーム数を増加させることができ、前記圧縮率決定部は、増加された前記格納フレーム数に基づき、前記符号化処理で採用される圧縮率を上げることができる。
前記符号化部は、前記圧縮率が上げられた場合、上げられる前の圧縮率が採用されて符号化処理が行われた前記符号化データが未送信のままで残っているときには、フレーム単位で符号化処理における圧縮率が異なる前記符号化データを混載した前記送信符号化データを生成することができる。
前記格納フレーム数決定部は、前記蓄積部に蓄積されている前記送信待ちデータ数の所定の観測時間の履歴が所定の条件を満たす場合、前記格納フレーム数を減少させることができ、前記圧縮率決定部は、減少された前記格納フレーム数に基づき、前記符号化処理で採用される圧縮率を下げることができる。
本開示の一側面である送信装置は、前記所定の観測時間を延長させるために課すペナルティを設定するペナルティ設定部をさらに備えることができる。
前記ペナルティ設定部は、前記圧縮率の変更履歴に基づいて前記ペナルティを設定または解除することができる。
本開示の一側面である送信方法は、データを無線伝送する送信装置の送信方法において、前記送信装置による、無線伝送の対象となるデータに符号化処理を行うことによって符号化データを生成し、複数フレーム分の前記符号化データから成る、固定サイズの伝送単位に収まる送信符号化データを生成する符号化ステップと、無線伝送される前の前記送信符号化データを一時的に保持する保持ステップと、保持されている前記送信符号化データを無線伝送する送信ステップと、保持されている無線伝送前の前記送信符号化データの数を表す送信待ちデータ数に基づき、前記送信符号化データを生成する際の前記符号化データのフレームの数を表す格納フレーム数を決定する格納フレーム数決定ステップと、決定された格納フレーム数に基づき、前記符号化処理で採用される圧縮率を決定する圧縮率決定ステップとを含む。
本開示の一側面であるプログラムは、コンピュータを、無線伝送の対象となるデータに符号化処理を行うことによって符号化データを生成し、複数フレーム分の前記符号化データから成る、固定サイズの伝送単位に収まる送信符号化データを生成する符号化部と、無線伝送される前の前記送信符号化データを一時的に保持する保持部と、前記保持部に保持されている前記送信符号化データを無線伝送する送信部と、前記保持部に保持されている無線伝送前の前記送信符号化データの数を表す送信待ちデータ数に基づき、前記符号化部により前記送信符号化データを生成する際の前記符号化データのフレームの数を表す格納フレーム数を決定する格納フレーム数決定部と、決定された格納フレーム数に基づき、前記符号化処理で採用される圧縮率を決定する圧縮率決定部として機能させる。
本開示の一側面においては、無線伝送される前の送信符号化データが一時的に保持され、保持されている無線伝送前の前記送信符号化データの数を表す送信待ちデータ数に基づき、前記送信符号化データを生成する際に格納するフレームの数を表す格納フレーム数が決定され、決定された格納フレーム数に基づき、符号化処理で採用される圧縮率が決定される。
本開示の一側面によれば、通信品質を推定することなく、再生が途切れないように再生の対象とするデータを送信できる。
本開示の概要を説明するための図である。 各種パラメータの一例を示す図である。 本開示を適用した送信装置の構成例を示すブロック図である。 データ送信処理を説明するフローチャートである。 符号化制御処理を詳述するフローチャートである。 第1増加フレーム数算出処理を詳述するフローチャートである。 第2増加フレーム数算出処理を詳述するフローチャートである。 符号化制御終端処理を詳述するフローチャートである。 符号化処理を詳述するフローチャートである。 遅延制御を行わない場合の圧縮率の遷移を示す図である。 遅延制御を行った場合の圧縮率の遷移を示す図である。 汎用のコンピュータの構成例を示すブロック図である。
以下、本開示を実施するための最良の形態(以下、実施の形態と称する)について、図面を参照しながら詳細に説明する。
<本開示の概要>
始めに、本開示の概要について説明するが、その前に、本明細書で用いる用語について説明する。
「符号化データのフレーム」とは、例えば、AAC(Advanced Audio Coding)やATRAC(Adaptive TRansform Acoustic Coding)等のオーディオ符号化方式によって規格化されている符号化処理を施す処理単位を指す。
「送信符号化データ」とは、1以上のフレームから成り、無線伝送される際のデータ単位を指す。この送信符号化データは、送信待ちバッファに入れられた段階で送信待ちデータと称される。
「伝送単位」とは、1回の無線通信で伝送されるデータの塊を指す。例えばBluetoothの場合、1つのパケットを指す。伝送単位には1つの送信符号化データが格納されている。以下、伝送単位をパケットとも称する。
本開示では、送信装置側で通信品質を推定することなく、送信待ちバッファに蓄積された送信符号化データの個数(以下、送信待ちデータ数とも称する)を間歇的に確認する。そして、確認した送信待ちデータ数や送信待ちデータ数の履歴(送信待ちデータ数の変化)に基づき、送信単位のサイズを変更することなく、送信符号化データを構成するフレームの数を変更するようになされている。
通常、データをリアルタイムで無線伝送するシステムでは、送信待ちデータは規定時間内に送信が正常に完了した場合、送信待ちバッファから破棄される。ここで、規定時間内とは、例えば、次の送信符号化データが送信待ちバッファに入れられるまでの時間等である。
反対に、送信待ちデータの送信が正常に完了しないと、送信待ちデータの再送が行われて、規定時間内に送信が完了しないことがあり、その送信待ちデータは、送信待ちバッファから破棄されず、送信待ちバッファに蓄積されることにとなる。
なお、送信待ちデータの送信が正常に完了しない要因としては、通信品質が悪いことだけでなく、通信品質が良好な場合でも送信装置の処理負荷が高いことなどより通信処理が滞ることが考えられる。したがって、送信待ちバッファに蓄積されている送信待ちデータ数を確認する方法は、従来では対処できなかった送信装置側の処理負荷が高いことに起因してデータの送信が滞り、音切れが発生している場合にも対処することができる。
より具体的に説明する。データの送信を滞らせずに音切れを防ぐためには、伝送の成功確率を上げることが重要となる。本開示を適用した送信装置では、送信符号化データのサイズを変えずに、送信符号化データを構成するフレーム数を増やすことによって圧縮率を上げて、送信が失敗した場合に再送のための時間を増加させ、伝送の成功確率を向上させる。すなわち、送信符号化データを構成するフレーム数に合わせて圧縮率を段階的に制御する。
さらに、圧縮率制御のタイミングと送信符号化データの切れ目のタイミングの関係で、1個の送信符号化データを圧縮率が異なる符号化データによって構成する場合がある。このような場合、圧縮率の変更内容により、圧縮率制御のタイミングを調整する。
例えば、音切れを回避するために圧縮率を上げる場合(送信符号化データを構成するフレームの数を増やす場合)には、即時性が必要となるので、その判断直後の送信符号化データはフレーム単位で圧縮率が異なる符号化データの混在を許容する。そして、次の送信符号化データからは、圧縮率が統一された符号化データで構成されるように圧縮率を再度制御する。なお、送信符号化データを構成するフレーム数は、圧縮率に応じて変化させてもよい。例えば、圧縮率が所定の閾値よりも低い場合には、一度に2フレーム増加させる等してもよい。反対に、送信待ちデータの減少に応じて圧縮率を下げる場合、即応性は必要ないので、送信符号化データを構成するフレーム数を減らせばよい。
図1は、本開示の概要の具体例として、送信符号化データを無線伝送する際の伝送単位としてBluetoothの2-DH5パケットを採用している場合を示す。なお、同図においては、2-DH5パケットに付加されているヘッダの図示が省略されている。
2-DH5パケットは、そのペイロードに約660バイトの送信符号化データを格納できる。図1の例では、初めに同図Aに示すように、2-DH5パケットに、1フレーム当たり330(=660/2)バイトの2フレーム分の符号化データから成る送信符号化データが格納されている。その後、送信待ちバッファの送信待ちデータ数の増加に応じて、2-DH5パケットに格納する送信符号化データを構成する符号化データのパケット数を3に増加させる判断が行われると、その判断が行われたタイミングで、1フレーム当たり330バイトの符号化データが既に1フレーム分だけ準備できていれば、同図Bに示されるように、送信符号化データは、1フレーム当たり330バイトの1フレーム分の符号化データと、1フレーム当たり165(=330/2)バイトの2フレーム分の符号化データから構成されることになる。
伝送単位の切れ目となる次の2-DH5パケットには、同図Cに示されるように、同じ圧縮率の3フレーム分の符号化データから成る送信符号化データが格納される。この送信符号化データを構成する3フレーム分の符号化データは、1フレーム当たり220(=660/3)バイトとなるように圧縮率を調整して符号化されたものとなる。
この後、送信待ちバッファの送信待ちデータ数の減少に応じて、2-DH5パケットに格納する送信符号化データのフレーム数を2に戻す判断が行われると、伝送単位の切れ目となる次の2-DH5パケットには、同図Aに示された状態、すなわち、1フレーム当たり330バイトの2フレーム分の符号化データから成る送信符号化データが格納される。
ここで、図1に示されたように圧縮率を遷移させた場合における伝送の成功確率を、再送可能な時間を指標として評価する。
ただし、2-DH5パケットの1回の伝送には3.75ミリ秒を要し、Bluetoothで2-DH5パケットの1段階下に設定されている2-DH3パケット(ペイロードのサイズは約350バイト)では、1回の伝送に2.5ミリ秒を要するものとする。オーディオデータが符号化されている1フレーム分の符号化データの再生時間を2.9ミリ秒と仮定する。
この場合、2-DH5パケットに2フレーム分の符号化データから成る送信符号化データを格納して送信することは、再生時間が5.8ミリ秒の符号化データを、3.75ミリ秒を使って送信することになる。したがって、この2-DH5パケットの送信が失敗した場合の再送可能な時間的余裕は、2.05(=5.8-3.75)ミリ秒となり、再送可能回数は0.55(≒2.05/3.75)回となる。
同様に計算すると、2-DH3パケットの場合には再生可能回数は1.32回となり、本開示のように2-DH5パケットに3フレーム分の符号化データから成る送信符号化データを格納して送信する場合には1.32回となる。
したがって、Bluetoothでパケット種別を1段階下げる場合(2-DH5パケットから2-DH3パケットに変更する場合)と、パケットのサイズを変えることなく、格納する送信符号化データを構成するフレーム数を1フレーム増やす場合とで同様の効果を得ることができる。ただし、パケットのサイズを変えずに、送信符号化データを構成するフレームの数をより増やすようにすれば、再送可能な時間(再送可能回数)を増やすことができる。
また、符号化データの圧縮率に着目すると、2-DH3パケットに2フレーム分の符号化データから成る送信符号化データを格納する場合には、1フレーム当たり175バイトであるが、本開示で通常時に採用する、2-DH5パケットに3フレーム分の符号化データから成る送信符号化データを格納する場合は1フレーム当たり220バイトとなる。したがって、音質面でも2-DH3パケットよりも2-DH5パケットを採用した方が有利(高音質)である。
<圧縮率制御の詳細説明>
圧縮率制御の判断方法について詳述する。
圧縮率制御の判断は、送信待ちデータ数(送信待ちバッファに蓄積されている送信待ちデータの数)を解析して行われる。送信待ちデータ数の確認は、送信待ちデータが正常に送信されれば、送信待ちバッファに送信待ちデータが蓄積されないようなタイミングで間歇的に行われる。
なお、送信待ちデータ数を解析する代わりに、送信符号化データを構成するフレーム数を解析し、その解析結果を圧縮率制御の判断に用いるようにしてもよい。
送信待ちデータ数は、FIFO(Fast In Fast Out)から成る蓄積履歴メモリに記録される。蓄積履歴メモリに記録できる数、すなわち、蓄積履歴メモリの容量は、例えば設計時などに決定されていればよい。
圧縮率を上げる判断と下げる判断は、間歇的に行われる送信待ちデータ数の確認と同時に行ってもよい。ただし、圧縮率を下げる判断については、現在の圧縮率に応じて観測時間を長くすれば、より圧縮率を安定させることができる。
例えば、圧縮率を上げる判断は、間歇的に行われる確認動作と同時に、以下に説明する2種類の閾値(音切れ危険閾値と伝送安定閾値)を用いて2段階で行われる。
音切れ危険閾値は、送信待ちデータ数に対する閾値であり、送信待ちデータ数が音切れ危険閾値を超えた場合、音切れが発生する可能性があると判断される。音切れ危険閾値は、圧縮率毎に設定されていてもよいし、同じ圧縮率でも、例えば、緊急用と安全用等、多段階の設定が用意されていてもよい。例えば、圧縮率が低い場合には、再送可能な時間が少ないため、即座に大きく反応するような値と、即座に小さく反応するような値を用意し、反対に圧縮率が高い場合には、再送可能な時間が多いため、多少様子を見るような値に設定してもよい。なお、音切れ危険閾値は、設計時などに予め決定されているが、ユーザが調整できるようにしてもよい。
伝送安定閾値も、送信待ちデータ数に対する閾値であり、送信待ちデータ数が伝送安定閾値以下である場合、圧縮率を下げても安定した伝送が可能であると判断される。伝送安定閾値は、圧縮率に応じて値を設定してもよい。なお、伝送安定閾値は、設計時などに予め決定されているが、ユーザが調整できるようにしてもよい。
圧縮率を上げる判断の1段階目は、確認された送信待ちデータ数と音切れ危険閾値と比較し、送信待ちデータ数が音切れ危険閾値を超えた場合、音切れが発生し得るので、圧縮率を上げるように判断される。圧縮率を上げる判断の2段目は、送信待ちデータ数の履歴(変移)を解析し、予め設定されている条件(所定の観測時間において送信待ちデータ数が徐々に増えている、所定の観測時間における送信待ちデータ数の平均値が所定の閾値以上である等)に該当する場合、圧縮率を上げるように判断される。なお、これらの条件についても、音切れ危険閾値と同様、圧縮率に応じて変更するようにしてもよい。
圧縮率を下げる判断は、蓄積履歴メモリに記録された送信待ちデータ数の履歴が、所定の観測時間分だけ蓄積されるまで行われず、所定の観測時間分だけ蓄積された後、その解析結果に基づいて行われる。例えば、送信待ちデータ数の平均値が伝送安定閾値以下の場合、圧縮率を下げる判断が行われる。なお、所定の観測時間は、現在の圧縮率に応じて変更するようにしてもよい。
ただし、上述したように圧縮率を制御した場合、圧縮率が連続して上げ下げされる可能性がある。圧縮率の上げ下げが連続すると、音質が連続して変化することになるので、ユーザにとっては耳障りと感じる可能性があるので好ましく無い。そこで、本開示では、音切れを抑止し、できだけ高品質なデータ(圧縮率が低いデータ)を送信しつつ、圧縮率が安定するように制御できる送信装置を提案する。
具体的には、圧縮率の変更履歴の変化パターンを観測し、観測結果が所定の条件にあった場合、圧縮率を下げる制御のタイミングを段階的に遅れさせるようにする。これにより、不安定な環境においては圧縮率を下げる制御が実行され難くなるため、圧縮率を安定させることができる。ただし、音切れを防ぐための圧縮率を上げる制御に関しては、遅れさせることなく速やかに制御される。
圧縮率を下げる制御のタイミングを段階的に遅らせる方法は、例えば、圧縮率制御判断の観測時間を段階的に伸ばす、具体的には、基準となる観測時間を2倍、4倍などを倍増させたり、5秒ずつ加算したりするようにすればよい。また、遅延のための観測時間の最大値も適宜設定されていればよい。例えば、基準となる観測時間を倍増させる場合、最大で16倍まで倍増させた後はそれ以上倍率を上げないなどとすればよい。
圧縮率を下げる制御のタイミングを遅延させる圧縮率の変化履歴の変化パターンは、圧縮率の安定を目的としていることから、例えば、以下に示す2種類の変化パターン(第1および第2の変化パターン)を採用する。ただし、例示しない変化パターンであってもよい。
第1の変化パターンは、圧縮率が下げられた直後に圧縮率が上げられた場合を指す。第1の変化パターンが発生した場合、音質が連続して変化し、ユーザにとっては耳障りと感じる可能性がある。
第2の変化パターンは圧縮率が連続して上げられた場合を指す。第2の変化パターンが発生した場合、伝送状況が厳しくなっていることが推測されるため、無理に圧縮率を下げるよりも安定させる方が望ましい。
なお、制御タイミングの遅延を解除するタイミングは、例えば、圧縮率が、遅延が設定されたときの圧縮率に対して1段階以上下がった後、圧縮率が一定期間上がることなく安定した場合に一段階だけ遅延時間を短くする方法、遅延が設定された圧縮率に対して圧縮率が2段階下がって、圧縮率が一定期間上がることなく安定した場合に遅延を解除する方法等を採用すればよい。
<各種パラメータの一例>
次に、図2は、本開示を適用した送信装置に採用される各種パラメータの一例を示している。同図に示されるように、圧縮率は圧縮率ID=0からID=5までの6段階が設けられており、圧縮率ID=0は最も低い圧縮率を表し、圧縮率ID=5は最も高い圧縮率を表す。
格納フレーム数は、1パケットに格納する符号化データのフレーム数、厳密には、1パケットに格納する送信符号化データを構成する符号化データのフレーム数を示している。例えば、圧縮率ID=1における格納フレーム数は3とされ、圧縮率ID=5における格納フレーム数は7とされている。
音切れ危険閾値は、圧縮率ID=0およびID=1に対して緊急用と安全用の2種類が設定されており、圧縮率ID=2からID=5に対しては1種類のみが設定されている。例えば、圧縮率ID=0に対する緊急用の音切れ危険閾値は6、安全用の音切れ危険閾値は3とされている。また例えば、圧縮率ID=2からID=5に対する音切れ危険閾値は6とされている。
増加フレーム数は、送信符号化データ数が音切れ危険閾値を超えたことに対応して、1パケットに格納するフレーム数(1パケットに格納する送信符号化データを構成する符号化データのフレーム数)を増加させる際のパケットの増加数を表している。例えば、現在の圧縮率ID=0において、送信待ちデータ数が緊急用の音切れ危険閾値=6を超えた場合、増加フレーム数は2とされているので、格納フレーム数は現在の2に対して2が加算されて4となる。この場合、圧縮率は格納フレーム数=4に対応して圧縮率ID=2に変更されることになる。また例えば、現在の圧縮率ID=2において、送信待ちデータ数が音切れ危険閾値=6を超えた場合、増加フレーム数は1とされているので、格納フレーム数は現在の4に対して1が加算されて5となる。この場合、圧縮率は格納フレーム数=5に対応して圧縮率ID=3に変更されることになる。
圧縮率下げ観測時間は、圧縮率を下げる判断をするために必要とする観測時間である。例えば、圧縮率ID=1における観測時間は5秒とされている。この場合、圧縮率を下げるか否かの判断は、蓄積履歴メモリに送信待ちデータ数の履歴が5秒間分溜まってから実行されることになる。
なお、圧縮率下げ観測時間は、ペナルティとしての値が係数として乗算されることによって延長される。通常、ペナルティの値は1倍とされているが、圧縮率の変化履歴が上述した第1または第2の変化パターンに当てはまる毎に、ペナルティの値は2倍、2倍、2倍、2倍まで順次増加される。例えば、現在の圧縮率ID=1であってペナルティが2倍である場合の圧縮下げ観測時間は10(=5×2)秒となる。
ペナルティの解除については、例えば、ペナルティが課された時点における圧縮率ID(以下、ペナルティ圧縮率IDと称する)よりも圧縮率が2段階下がる方向に変化し、そのまま所定の時間、圧縮率が上がることが無ければ、ペナルティを解除するようにする。なお、ペナルティ圧縮率IDよりも2段階下の圧縮率IDが存在しない場合には、伝送安定状態勘定変数(後述)が既定値以上であるときにペナルティを解除するようにする。
なお、圧縮率下げ観測時間に対する係数としてのペナルティの値は、2のべき乗に限るものではなく任意である。また、ペナルティの値を係数として圧縮率下げ観測時間に乗算するのではなく、加算値として圧縮率下げ観測時間に加算するようにしてもよい。その場合、ペナルティの値は、5,10,15,20などの値を算用すればよい。もちろん、ペナルティとしての加算値は5の倍数に限るものではなく任意である。
<本開示を適用した送信装置の構成例>
次に、図3は、本開示を適用した送信装置の構成例を示している。この送信装置10は、無線伝送の対象とするデータに符号化処理を行い、その結果得られるフレーム単位の符号化データから送信符号化データを生成し、送信符号化データをパケット化して無線伝送するものであり、符号化処理における圧縮率を上述したように制御する。ここで、無線伝送の対象とするデータは、本実施の形態ではオーディオデータを想定しているが、ビデオデータなどの他の種類のデータを無線伝送する場合にも該送信装置10を用いることができる。
この送信装置10は、制御部11、蓄積履歴メモリ更新部12、増加フレーム数算出部13、タイミング制御部14、圧縮率制御部15、および圧縮率変更履歴メモリ16を備える。さらに、送信装置10は、符号化部17、データバッファ18、符号化データバッファ19、送信待ちバッファ20、通信処理部21、無線通信部22、スイッチ23、および蓄積履歴メモリ24を備える。
制御部11は、上に挙げた送信装置10の構成要素の動作を制御する。具体的には、例えば20ミリ秒間隔などの一定周期毎に、後述するデータ送信処理を実行させる。
蓄積履歴メモリ更新部12は、制御部11からの制御に従い、スイッチ23をオン、オフさせることにより、送信待ちデータ数(送信待ちバッファ20に蓄積されている送信待ちデータの数)を蓄積履歴メモリ24に記録させる。
増加フレーム数算出部13は、蓄積履歴メモリ24に記録されている値(送信待ちデータ数)を取得して解析し、解析結果に応じて増加フレーム数を設定してタイミング制御部14に通知する。
増加フレーム数の設定は、例えば、初めに送信待ちデータ数と音切れ危険閾値との比較に基づいて行われる。すなわち、蓄積履歴メモリ24に記録されている最新の値が、現在の圧縮率に対応する音切れ危険閾値を超えているか否かが判定され、この判定結果が真である場合、図2に示した、現在の圧縮率に対応する増加フレーム数がタイミング制御部14に通知される。例えば、現在の圧縮率ID=0で、蓄積履歴メモリ24に記録されている最新の値が7であった場合、音切れ危険閾値=6を超えているので、増加フレーム数は2とされる。
蓄積履歴メモリ24に記録されている最新の値が、現在の圧縮率に対応する音切れ危険閾値を超えていなかった場合、送信待ちデータ数の変動傾向が判定される。すなわち、蓄積履歴メモリ24に記録されている値が解析され、送信待ちデータ数が徐々に増加傾向にあるか否かが判定される。例えば、送信待ちデータ数の最新の値が、前回の値よりも大きく、且つ、所定の閾値(例えば4)を超える場合には判定結果は真とされる。この条件が満たされない場合、判定結果は偽とされる。
判定結果が真の場合、増加フレーム数算出部13は、増加フレーム数を算出してタイミング制御部14に通知する。判定の結果が偽の場合、増加フレーム数算出部13は、蓄積履歴メモリ24に所定の観測時間分(例えば、500ミリ秒)の記録が蓄積されているか否かを確認し、蓄積されていなかった場合には増加フレーム数を0に設定してタイミング制御部14に通知する。蓄積されていた場合、蓄積されていた値に応じて増加フレーム数を算出、設定してタイミング制御部14に通知する。
例えば、蓄積履歴メモリ24に蓄積されていた送信待ちデータ数の平均値が、圧縮率を上げる判断に用いる所定の閾値(例えば1.5)以上である場合、圧縮率を上げる方向で増加フレーム数が算出されてタイミング制御部14に通知される。また、蓄積履歴メモリ24に蓄積されていた送信待ちデータ数の平均値が0であるか、または伝送安定閾値よりも小さい場合、圧縮率を下げる方向で増加フレーム数が算出されてタイミング制御部14に通知される。なお、蓄積履歴メモリ24に蓄積されていた送信待ちデータ数の平均値が所定の閾値(例えば1.5)以上ではなく、0でもなく、伝送安定閾値よりも小さくない場合、圧縮率を変更しないことを意味する増加フレーム数(例えば、−99)がタイミング制御部14に通知される。
タイミング制御部14は、増加フレーム数算出部13から通知された増加フレーム数が圧縮率を下げることを意味する値であった場合、そのような値が、ペナルティも加味した圧縮率下げ観測時間だけ継続したか否かを判定する。例えば、現在の圧縮率ID=1の場合、ペナルティが1倍であれば観測時間は5秒間であり、圧縮率を下げる判定は500ミリ秒毎に行われるので、増加フレーム数算出部13から圧縮率を下げることを意味する増加フレーム数が10回連続して通知された場合に判定結果を真とする。この判定結果が偽である場合、蓄積履歴メモリ24はクリアされ、タイミング制御部14は、増加フレーム数を0に変更して圧縮率制御部15に通知する。
また、タイミング制御部14は、増加フレーム数算出部13から通知された増加フレーム数が、圧縮率を変更しないことを意味する値(例えば、−99)であった場合、増加フレーム数算出部13から圧縮率を下げることを意味する増加フレーム数が連続して通知された回数を0に初期化し、タイミング制御部14は、増加フレーム数を0に変更して圧縮率制御部15に通知する。
さらに、タイミング制御部14は、増加フレーム数算出部13から通知された増加フレーム数が0であるか、または圧縮率を上げることを意味する値であった場合、通知された増加フレーム数をそのまま圧縮率制御部15に通知する。
圧縮率制御部15は、タイミング制御部14から通知された増加フレーム数に基づき、新たな圧縮率を決定し、それに対応する圧縮率IDを符号化部17に通知するとともに、圧縮率変更履歴メモリ16に新たな圧縮率IDを記録する。また、圧縮率制御部15は、圧縮率変更履歴メモリ16を参照することによってペナルティを更新し、更新後のペナルティをタイミング制御部14に通知する。ペナルティの更新は、以下のように行われる。
新たな圧縮率IDがペナルティ圧縮率IDより大きい場合、圧縮率IDの変更履歴が解析され、今回の圧縮率の変更がペナルティを課す条件に当てはまる場合、ペナルティを更新し、ペナルティ圧縮率IDに今回決定された新たな圧縮率IDが設定される。
新たな圧縮率IDがペナルティ圧縮率IDよりも小さい場合、圧縮率IDの変更履歴が解析され、今回の圧縮率の変更がペナルティを解除する条件に当てはまる場合、ペナルティを1倍とし、ペナルティ圧縮率IDに0を設定する。
符号化部17は、圧縮率制御部15から通知された圧縮率IDに基づき、新しい圧縮率を算出する。さらに符号化部17は、データバッファ18に記録されている、無線伝送の対象とするデータ(本実施の形態ではオーディオデータ)を読み出し、タイミングを調整しながら新たな圧縮率を反映させて符号化処理を行い、その結果得られる符号化データを符号化データバッファ19に格納する。さらに、符号化部17は、符号化データバッファ19に送信符号化データとして送信待ちバッファ20に出力できる規定フレーム分の符号化データを格納した場合、格納されている規定フレーム分の符号化データによって送信符号化データを生成し、生成した送信符号化データを送信待ちバッファ20に出力する。
符号化部17における圧縮率の算出は、以下のように行われる。
圧縮率制御部15から通知された圧縮率IDが、圧縮率を上げる方向に変更するものであり、かつ、符号化データバッファ19に既に符号化データが格納されている場合(例えば、図1Aから図1Bに遷移する場合)、圧縮率の計算は、符号化データバッファ19に格納されている符号データのデータサイズとフレーム数、送信符号化データの伝送容量、および格納フレーム数から算出される。例えば、符号化データバッファ19に1フレーム分の符号化データが格納されており、圧縮率IDが0から2に変更される場合、格納フレーム数は2から4に変更されることになるので、送信符号化データの伝送容量が、既に存在する1フレーム分の符号化データと、新たに符号化する3フレーム分の符号化データによって埋まるように暫定的な圧縮率を設定し、次に符号化データバッファ19が空になったタイミングで、圧縮率ID=2の規定の圧縮率(1つの送信符号化データを格納フレーム数(圧縮率ID=2の場合は4)の符号化データで構成できる圧縮率)を採用する。
圧縮率制御部15から通知された圧縮率IDが、圧縮率を上げる方向に変更するものであり、かつ、符号化データバッファ19が空である場合(例えば、図1Bから図1Cに遷移する場合)、圧縮率の計算は、圧縮率IDに対して既定の圧縮率が設定される。
圧縮率制御部15から通知された圧縮率IDが、圧縮率を下げる方向に変更するものである場合(例えば、図1Cから図1Aに遷移する場合)、符号化データバッファ19が空になったタイミングで、新たな圧縮率IDに対して既定の圧縮率が設定される。
なお、符号化データバッファ19に格納された符号化データのサイズやフレーム数は、適宜、符号化部17が管理しているものとする。
送信待ちバッファ20は、FIFO型メモリであり、符号化部17から入力された送信符号化データを保持し、通信処理部21が送信待ちデータを受け付け可能である場合、保持する送信待ちデータのうちの最も先に入力されたものから順に1つずつ通信処理部21に出力する。通信処理部21に出力した送信符号化データの無線伝送が成功した場合、送信待ちバッファ20は、該送信符号化データを削除する等の更新を行う。
通信処理部21は、送信待ちバッファ20から入力される送信符号化データに対して、例えば、リンク・マネージャ、ベースバンド、およびRFの各層に対応する処理を行い、無線により送信できるベースバンド・パケットとして無線通信部22に出力する。無線通信部22は、例えばBluetoothモジュールから成り、通信処理部21から入力されるベースバンド・パケットを無線により受信側に送信する。
<送信装置10によるデータ送信処理について>
次に、図4は、送信装置10によるデータ送信処理を説明するフローチャートである。
このデータ送信処理は、制御部11によって20ミリ秒間隔で繰り返し実行される。なお、データ送信処理の開始に先行し、各メモリや各バッファ、各パラメータなどは初期化されているものとする。
データ送信処理は、ステップS1における符号化制御処理、ステップS2における符号化処理、およびステップS3における送信処理から成る。
ステップS1の符号化制御処理では、圧縮率の変更の有無が判断されて、その判断結果に基づいて符号化処理における圧縮率が決定される。ステップS2の符号化処理では、ステップS1の符号化制御処理で決定された圧縮率に従ってデータに符号化処理が行われて符号化データが生成され、さらに、圧縮率IDに応じた格納フレーム数の符号化データから成る送信符号化データが生成される。ステップS3の送信処理では、送信符号化データがパケット化されて受信側に無線伝送される。なお、符号化制御処理、および符号化処理の詳細については後述する。
図5は、図4のステップS1における符号化制御処理を詳述するフローチャートである。
ステップS11においては、蓄積履歴メモリ更新部12による、蓄積履歴メモリ更新処理が行われる。具体的には、増加フレーム数算出部13によって増加フレーム数が0に初期化された後、蓄積履歴メモリ更新部12により、スイッチ23がオンとされることにより、送信待ちデータ数が蓄積履歴メモリ24に格納される。このとき、蓄積履歴メモリ24の容量が全て埋まっている場合、最も古い記録が破棄されてから、最新の送信待ちデータ数が格納される。同時に、蓄積履歴メモリ24に格納された送信待ちデータ数の総和が更新される。
次に、ステップS12においては、増加フレーム数算出部13により、第1増加フレーム数算出処理が行われる。第1増加フレーム数算出処理では、送信待ちデータ数と、現在の圧縮率IDに対応する音切れ危険閾値とが比較される。この比較結果に応じて圧縮率を上げると判断された場合には、増加フレーム数の値が変更される。なお、第1増加フレーム数算出処理の詳細は、図6を参照して後述する。
ステップS13においては、制御部11により、ステップS12における第1増加フレーム数算出処理によって増加フレーム数が0に設定されたか否かが判定される。この判定結果が真である場合、処理はステップS14に進められる。反対に、この判定結果が偽である場合、ステップS14はスキップされる。
ステップS14においては、増加フレーム数算出部13により、第2増加フレーム数算出処理が行われる。具体的には、蓄積履歴メモリ24に規定数の履歴が蓄積された際の判定処理が行われる。例えば、蓄積履歴メモリ24に圧縮率下げ観測時間分の履歴が蓄積されると、圧縮率を下げるか否かの判定処理等が行われ、その判定結果に応じて、増加フレーム数が設定される。なお、第2増加フレーム数算出処理の詳細は、図7を参照して後述する。
ステップS15においては、圧縮率制御部15により、設定された増加フレーム数に応じて圧縮率IDやペナルティなどを更新する符号化制御終端処理が行われる。なお、符号化制御終端処理の詳細は、図8を参照して後述する。
図6は、図5のステップS12における第1増加フレーム数算出処理を詳述するフローチャートである。
ステップS21においては、蓄積履歴メモリ24の最新の値(送信待ちデータ数)が、現在の圧縮率IDに対応する音切れ危険閾値を超えているか否かを判定する音切れ危険閾値判定処理が行われる。送信待ちデータ数が現在の圧縮率IDに対応する音切れ危険閾値を超えていた場合、増加フレーム数が算出、設定される。ステップS22においては、ステップS21の音切れ危険閾値判定処理による判定結果の真偽が判断される。ステップS22の判断結果が真である場合(送信待ちデータ数が音切れ危険閾値を超えている場合)には、第1増加フレーム数算出処理を抜けて、処理は図5のステップS13に進められる。反対に、ステップS22の判断結果が偽である場合(送信待ちデータ数が音切れ危険閾値を超えていない場合)、処理はステップS23に進められる。
ステップS23においては、送信待ちデータ数変更傾向判定処理が行われる。具体的には、蓄積履歴メモリ24に蓄積されている値が解析され、送信待ちデータ数が徐々に増加傾向にあるか否かが判定される。例えば、今回の値が前回の値よりも大きく、且つ、所定の閾値(例えば4)を超える場合には判定を真とし、そうでない場合には判定を偽とする。判定が真である場合のみ、増加フレーム数が算出される。この後、第1増加フレーム数算出処理を抜けて、処理は図5のステップS13に進められる。
次に、図7は、図6のステップS14における第2増加フレーム数算出処理を詳述するフローチャートである。
ステップS31においては、蓄積履歴メモリ24に規定数(送信待ちデータ数の確認は20ミリ秒間隔で行われるので、500ミリ秒の間の記録であれば25(=500/20))の履歴が蓄積されているか否かを判定する蓄積履歴メモリ記録数判定処理が行われる。ステップS32では、ステップS31の蓄積履歴メモリ記録数判定処理による判定結果の真偽が判断される。ステップS32で偽と判断された場合(蓄積履歴メモリ24に規定数の履歴が蓄積されていない場合)、第2増加フレーム数算出処理を抜けて、処理は図5のステップS15に進められる。反対に、ステップS32で真と判断された場合(蓄積履歴メモリ24に規定数の履歴が蓄積されている場合)、処理はステップS33に進められる。
ステップS33においては、規定数に達した蓄積履歴メモリ24の記録(送信待ちデータ数)の平均値を算出し、その平均値が所定の閾値(例えば1.5)を超えているか否かを判定する観測時間記録データ平均判定処理が行われる。
ステップS34では、ステップS33の観測時間記録データ平均判定処理による判定結果の真偽が判断される。ステップS34で真と判断された場合(蓄積されている送信符号化データ数の平均値が閾値を超えている場合)、圧縮率を上げる制御のために増加フレーム数に例えば1が設定された後、第2増加フレーム数算出処理を抜けて、処理は図5のステップS15に進められる。反対に、ステップS34で偽と判断された場合(蓄積されている送信符号化データ数の平均値が閾値を超えていない場合)、処理はステップS35に進められる。
ステップS35においては、圧縮率を上げる必要が無い状態が連続した回数を表す伝送安定状態勘定変数の更新を行う伝送安定状態勘定変数更新処理が行われる。具体的には、例えば、伝送安定状態勘定変数が1だけ増加される。なお、伝送安定状態勘定変数は、圧縮率が変更されてから経過した時間を表すものであり、ペナルティを更新する際に参照される。
ステップS36においては、蓄積履歴メモリ24の履歴を解析し、その解析結果が圧縮率を下げるための条件(例えば、蓄積履歴メモリ24に記録されている値(送信待ちデータ数)が全て0)を満たすか否かを判定する圧縮率下げ判定処理が行われる。ステップS37では、ステップS36の圧縮率下げ判定処理による判定結果の真偽が判断される。ステップS37で真と判断された場合(圧縮率を下げるための条件を満たす場合)、圧縮率を下げることが可能と判断されて、処理はステップS38に進められる。
ステップS38においては、蓄積履歴メモリ24の履歴の解析結果が圧縮率を下げるための条件を満たしている時間が、ペナルティが課せられた圧縮率下げ観測時間だけ継続しているか否かを判定する圧縮率下げ観測時間判定処理が行われる。
具体的には、必要となる圧縮率下げ観測時間は、該圧縮率下げ観測時間判定処理が連続して実行されなければならない回数が、事前に変数「圧縮率下げ適用フラグ」に設定され、この圧縮率下げ適用フラグを1減算し、0以下になったら真と判定し、真と判定された場合、実際に圧縮率を下げるために、増加フレーム数に−1を設定し、偽と判定された場合、増加フレーム数を更新しない。
例えば、ステップS31の蓄積履歴メモリ記録数判定処理で、規定数の基準が500ミリ秒とされている場合、現在の圧縮率IDが1であれば圧縮率下げ観測時間は5秒であり(図2参照)、ペナルティを1倍と仮定すれば、連続して該圧縮率下げ観測時間判定処理が実行されなければならない回数は10回となる。すなわち、圧縮率下げ適用フラグには10が初期化時等の規定のタイミングで設定され、該圧縮率下げ観測時間判定処理が実行される毎に、圧縮率下げ適用フラグが1ずつ減算され、圧縮率下げ適用フラグが0以下になると増加フレーム数に−1が設定される。
次にステップS39では、ステップS38の圧縮率下げ観測時間判定処理による判定結果の真偽が判断される。ステップS39で真と判断された場合、第2増加フレーム数算出処理を抜けて、処理は図5のステップS15に進められる。
ステップS39で偽と判断された場合、処理はステップS40に進められる。ステップS40においては、蓄積履歴メモリ24に蓄積されている全ての記録を消去する蓄積履歴メモリリセット処理が行われる。この後、第2増加フレーム数算出処理を抜けて、処理は図5のステップS15に進められる。
なお、ステップS37で偽と判断された場合、圧縮率を下げることが不可能と判断され、処理はステップS41に進められる。ステップS41においては、ステップS38の圧縮率下げ観測時間判定処理に用いられる圧縮率下げ適用フラグに、現在の圧縮率IDに対応する圧縮率下げ観測時間とペナルティに基づいて算出される回数を設定する圧縮率下げ観測時間設定処理が行われる。この後、第2増加フレーム数算出処理を抜けて、処理は図5のステップS15に進められる。
次に、図8は、図5のステップS15における符号化制御終端処理を詳述するフローチャートである。
ステップS51においては、設定された増加フレーム数が0以外であるか否かが判断され、増加フレーム数が0であると判断された場合、符号化制御終端処理を抜けて、処理は図4のステップS2に進められる。増加フレーム数が0以外であると判断された場合、処理はステップS52に進められる。
ステップS52においては、圧縮率制御部15により、現在の圧縮率IDに対応する格納フレーム数と、増加フレーム数とに基づいて新たな圧縮率IDを算出する圧縮率ID決定処理が行われる。例えば、現在の圧縮率ID=1(対応する格納フレーム数は3)であり、増加フレーム数が2であった場合、以降の格納フレーム数は5となるので、新たな圧縮率IDは格納フレーム数=5に対応する3(図2参照)に決定される。
ステップS53においては、圧縮率制御部15により、ステップS52で決定された圧縮率IDに基づいてペナルティを算出するペナルティ更新処理が行われる。
ステップS54においては、伝送安定状態勘定変数を例えば0に初期化する伝送安定状態勘定変数初期化処理が行われる。
ステップS55においては、ステップS52で決定された圧縮率IDに対応する圧縮率下げ観測時間に、ステップS53で更新されたペナルティを乗算し、その乗算結果の時間に基づいて算出される回数を圧縮率下げ適用フラグに設定する圧縮率下げ観測時間設定処理が行われる。
ステップS56においては、上述した図7のステップS40と同様の蓄積履歴メモリリセット処理が行われる。ステップS57においては、圧縮率制御部15により、ステップS52で決定された圧縮率IDを符号化部17に通知する圧縮率設定処理が行われる。この後、符号化制御終端処理を抜けて、処理は図4のステップS2に進められる。
次に、図9は、図4のステップS2における符号化処理を詳述するフローチャートである。
なお、符号化処理が開始されるに際し、先に実行されているステップS1の符号化制御処理で決定された圧縮率IDは、圧縮率変更要求として、これから開始される符号化処理に引き継がれるものとする。
また、符号化処理では、2種類の圧縮率(第1および第2の圧縮率)が算出されるものとする。第1の圧縮率は、圧縮率変更要求に即応するときに採用する圧縮率である。第2の圧縮率は、圧縮率変更要求後の伝送単位の切れ目(次のパケット)、すなわち符号化データバッファ19が空になったタイミングで採用する圧縮率である。なお、第1および第2の圧縮率は、−1に設定されると無効値として扱われる。符号化処理が開始されるとき、第1および第2の圧縮率には無効値(−1)が設定されているものとする。
ステップS61においては、符号化部17により、前段の符号化制御処理から圧縮率変更要求があったか否かが判定される。圧縮率変更要求があった場合、処理はステップS62に進められる。反対に、圧縮率変更要求がなかった場合、ステップS62はスキップされて、処理はステップS63に進められる。
ステップS62においては、符号化部17により、圧縮率変更要求に即した圧縮率を算出する圧縮率算出処理が行われる。例えば、要求された圧縮率IDが、現在の圧縮率IDよりも小さい場合、すなわち、圧縮率を下げる場合、第1の圧縮率に無効値を設定し、第2の圧縮率に要求された圧縮率IDに対応する既定の圧縮率を設定する。反対に、要求された圧縮率IDが現在の圧縮率IDよりも大きい場合、すなわち、圧縮率を上げる場合、第1の圧縮率として、要求された圧縮率IDに対応する格納フレーム数と、既に符号化データバッファ19に保持されている符号化データのデータサイズ、フレーム数と、パケットの伝送容量に格納できる残りのデータ容量から、第1の圧縮率が算出されて設定される。ただし、算出された第1の圧縮率が、採用している符号化方式の適用範囲外であった場合には、第1の圧縮率に無効値が設定される。第2の圧縮率には、要求された圧縮率IDに対応する既定の圧縮率が設定される。
ステップS63においては、符号化部17により、データバッファ18から符号化処理の対象とするデータを取得するデータ取得処理が行われる。取得するデータ量については、例えば、符号化処理の対象とするデータがオーディオデータである場合、データ送信処理が20ミリ秒毎に実行されることから、再生時間20ミリ秒分のオーディオデータを取得すればよい。
ステップS64においては、符号化部17により、取得されたデータを符号化する際に採用する圧縮率を設定する圧縮率更新処理が行われる。具体的には、まず、第1の圧縮率が無効値であるか否かが確認され、無効値ではないと確認された場合、即座に第1の圧縮率を符号化方式に適用してから、第1の圧縮率に無効値を設定する。反対に、第1の圧縮率が無効値であると確認された場合には、さらに、第2の圧縮率が無効値ではなく、且つ、既に符号化データバッファ19に符号化データが無い場合、すなわち符号化データバッファ19が空になったタイミングとなっていれば、第2の圧縮率を符号化方式に適用してから、第2の圧縮率に無効値を設定する。上述した場合に該当しない場合には、圧縮率は変更されない。
ステップS65においては、符号化部17により、ステップS63で取得されたデータに対して、ステップS64で適用された第1または第2の圧縮率、あるいは、変更されていない以前の圧縮率で符号化処理が行われ、その結果得られた符号化データを符号化データバッファ19に記録するデータ符号化処理が行われる。
ステップS66においては、符号化部17により、符号化データバッファ19に記録された規定フレーム数の符号化データからなる送信符号化データを生成して送信待ちバッファ20に出力する符号化データ伝送処理が行われる。
ステップS67においては、符号化部17により、データバッファ18から取得したデータのうち、符号化処理の行われていないデータが残っているか否かが判断される。符号化処理の行われていないデータが残っていると判断された場合、処理はステップS64に戻されて、それ以降が繰り返される。符号化処理の行われていないデータが残っていないと判断された場合、符号化処理を抜けて、処理は図4のステップS3に進められる。
ステップS3では、通信処理部21および無線通信部22により、上述した送信処理が行われる。以上で、データ送信処理の説明を終了する。
<送信装置10による圧縮率の遷移>
次に、送信装置10による圧縮率の遷移について、図10および図11を参照して説明する。
図10は、間歇的に確認される最新の送信待ちデータ数のみに基づき、圧縮率を更新した場合(圧縮率を下げる際の遅延制御を行わない場合)の遷移を示している。図11は、間歇的に確認される最新の送信待ちデータ数だけでなく、圧縮率変更の履歴の解析結果も利用して圧縮率を更新した場合(圧縮率を下げる際の遅延制御を行う場合)の遷移を示している。
なお、図10および図11の縦軸は圧縮率を示し、b0側ほど圧縮率が低く、b5側ほど圧縮率が高い。横軸は時間を示す。実線は圧縮率の遷移を示す。丸印○は、圧縮率を下げる制御判断のタイミングを示し、一定期間分の送信待ちデータ数が蓄積履歴メモリ24に格納されたタイミングを示す。
すなわち、間歇的に行われる送信待ちデータ数の確認は、丸印○と丸印○の間に複数回行われ、圧縮率を上げる制御はこの確認のタイミングに行われる。なお、図10および図11では、図示を簡略化するために、丸印○の間隔は等間隔とされているが、この間隔は圧縮率に応じて調整される。
また、図11に示す遅延制御では、圧縮率を下げる判断のタイミングを、段階的に2回、4回とまとめることにより、圧縮率を下げる判断に要する観測時間を長くし、判断のタイミングを遅延させるようにされている。図11の点線は、判断のタイミングをまとめた範囲を示している。圧縮率を下げる判断のタイミングを段階的にまとめる方法としては、上述したように、判断タイミングの回数を2倍、4倍と指数的に増加させる他、例えば、5秒、10秒等と段階的にその時間を増加させても良い。また、まとめられた判断のタイミングの解除は、段階的に解除するようにされている。
まず、図10に示された圧縮率を下げる際の遅延制御を行わない場合について説明する。時点t0の圧縮率はb1であるが、時点t1では、時点t0以降に圧縮率を1段階上げる判断が行われて圧縮率はb2であった。時点t2では、時点t1以降に圧縮率を1段階上げる判断が行われて圧縮率はb3であった。また、圧縮率を変更する条件が満たされず、この時点では、圧縮率は変更されなかった。
時点t3では、時点t2,t3間の状態を解析した結果、圧縮率を下げる条件を満たしていたため、圧縮率がb2に変更された。時点t4では、時点t3以降に圧縮率を1段階上げる判断が行われて圧縮率はb3であった。また、圧縮率を変更する条件が満たされず、この時点では、圧縮率は変更されなかった。
時点t5では、時点t4,t5間の状態を解析した結果、圧縮率を下げる条件を満たしていたため、圧縮率がb2に変更された。時点t6では、時点t5以降に圧縮率を1段階上げる判断が行われて圧縮率はb3であった。また、圧縮率を変更する条件が満たされず、この時点では、圧縮率は変更されなかった。
時点t7では、時点t6以降に圧縮率を1段階上げる判断が行われて圧縮率はb4であった。また、圧縮率を変更する条件が満たされず、この時点では、圧縮率は変更されなかった。時点t8では、時点t7,t8間の状態を解析した結果、圧縮率を下げる条件を満たしていたため、圧縮率がb3に変更された。
以降の時点t9,t11,t13は、時点t7と同様であり、時点t10,t12,t14は、時点t8と同様に推移したため、圧縮率が不安定な状況が継続した。時点t14以降は、伝送状況が改善し、不安定ながらも、徐々に圧縮率が下げられ、時点t23で圧縮率はb0となった。
図10に示されたように、圧縮率を下げる場合の遅延制御を行わない場合、圧縮率が不安定に遷移する(頻繁に変動する)可能性があることがわかる。
次に、図11に示された圧縮率を下げる際の遅延制御を行う場合について説明する。時点t0で圧縮率はb1であるが、時点t1では、時点t0以降に圧縮率を1段階上げる判断が行われて圧縮率はb2であった。
時点t2では、時点t1以降に圧縮率を1段階上げる判断が行われて圧縮率はb3であった。また、圧縮率を変更する条件が満たされず、この時点では、圧縮率は変更されなかった。また、2回連続して圧縮率を上げる変更パターンは、遅延制御を対象とする変更パターンに該当するため、この時点で遅延制御が有効となり、以降の圧縮率を下げるための判断は、2回連続して条件を満たした場合のみと制限された。また、ペナルティ圧縮率がb3と設定された。
時点t3では、時点t2,t3間の状態を解析した結果、圧縮率を下げる条件を満たしていたが、遅延制御により、時点t2の判断結果も影響し、圧縮率は変更されなかった。時点t4では、時点t3,t4間の状態を解析した結果、圧縮率を下げる条件を満たされず、圧縮率は変更されなかった。
時点t5では、圧縮率を上げる条件を満たしていたが、時点t4では条件を満たしていなかったため、圧縮率は変更されなかった。時点t6では、時点t5以降に圧縮率を1段階上げる判断が行われて圧縮率はb3であった。また、圧縮率を変更する条件が満たされず、この時点で圧縮率は変更されなかった。
時点t7では、時点t6,t7間の状態を解析した結果、圧縮率を下げる条件を満たしていたが、遅延制御により、時点t6の判断結果も影響し、圧縮率は変更されなかった。時点t8では、時点t7,t8間の状態を解析した結果、圧縮率を下げる条件を満たし、さらに遅延制御による時点t7の判断結果も圧縮率を下げる判断がされていたので、圧縮率が下げられてb3となった。
時点t9では、時点t8以降に圧縮率を1段階上げる判断が行われて圧縮率はb4であった。また、圧縮率を変更する条件が満たされず、この時点では、圧縮率は変更されなかった。また、圧縮率が下げられた直後に上げられ、遅延制御の対象パターンに該当するために、遅延が1段階増加し、4回分の判断が条件を満たした場合のみ圧縮率が下げられるように制限された。また、この時点の圧縮率b4は、現在のペナルティ圧縮率であるb3よりも高いので、ペナルティ圧縮率はb4に更新された。
時点t9からt11までは、遅延制御によって圧縮率の変更は制限された。時点t12では、時点t11,t12間の状態を解析した結果、圧縮率を下げる条件を満たしていたが、遅延制御により、区間t9からt11の判断結果により圧縮率は変更されなかった。時点t13,t14も時点t12と同様であった。
時点t15では、区間t12からt15まで4回連続して条件が満たされていたので、圧縮率を下げる判断が行われて圧縮率はb3となった。時点t16では、時点t15,t16間の状態を解析した結果、圧縮率を下げる条件を満たしていたが、遅延制御により圧縮率は変更されなかった。時点t17では、区間t16,t17で共に圧縮率を下げる条件を満たしていた。時点t17まで圧縮率が安定していたことから、ペナルティ圧縮率よりも低い圧縮率で安定したと判断され、遅延制御が1段階緩められ、2回分の判断が条件を満たした場合に圧縮率が下げられるように変更された。そのため、時点t16,t17の2回分の判断結果から、圧縮率が1段階下げられてb2に変更された。また、ペナルティ圧縮率がb4からb3に更新された。
時点t18では、時点t17,t18間の状態を解析した結果、圧縮率を下げる条件は満たさなかったため、圧縮率は変更されなかった。
時点t19では、時点t18,t19と圧縮率が安定しており圧縮率を下げる条件を満たしていた。また、時点t19まで圧縮率が安定していたことから、ペナルティ圧縮率よりも低い圧縮率で安定したと判断され、遅延制御が1段階緩められ、すべての遅延制御が解除された。制限が解除されたことにより、時点t19での圧縮率下げ条件が有効となり、圧縮率は下げられてb1となった。また、ペナルティ圧縮率が例えばb0に初期化された。
これ以降、送信待ちバッファ20に送信待ちデータが蓄積されなくなり、徐々に圧縮率が下げられて、時点t23で圧縮率はb0となった。
図10と図11を比較して明らかなように、図11の場合、時点t2からt17にかけて遅延制御が行われ、これにより圧縮率を下げる制御が制限される。したがって、遅延制御により、圧縮率を安定させる効果を得られていることがわかる。
以上に説明したように、本開示を適用した送信装置10によれば、受信側での再生が途切れることなく、データを無線伝送することができる。特に、無線伝送するデータがオーディオデータである場合には、受信側における音切れや、圧縮率の変化に起因する音質の頻繁な変化も抑止することができる。
なお、送信装置10が無線伝送の対象とするデータはオーディオデータに限られるものではなく、その種類は任意である、例えばビデオデータを無線伝送する場合にも送信装置10は適用できる。
ところで、上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウェアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
図12は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
コンピュータにおいて、CPU(Central Processing Unit)201,ROM(Read Only Memory)202,RAM(Random Access Memory)203は、バス204により相互に接続されている。
バス204には、さらに、入出力インタフェース205が接続されている。入出力インタフェース205には、入力部206、出力部207、記憶部208、通信部209、およびドライブ210が接続されている。
入力部206は、キーボード、マウス、マイクロフォンなどよりなる。出力部207は、ディスプレイ、スピーカなどよりなる。記憶部208は、ハードディスクや不揮発性のメモリなどよりなる。通信部209は、ネットワークインタフェースなどよりなる。ドライブ210は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブルメディア211を駆動する。
以上のように構成されるコンピュータ200では、CPU201が、例えば、記憶部208に記憶されているプログラムを、入出力インタフェース205およびバス204を介して、RAM203にロードして実行することにより、上述した一連の処理が行われる。
なお、コンピュータ200が実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであってもよいし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであってもよい。
本開示の実施の形態は、上述した実施の形態に限定されるものではなく、本開示の要旨を逸脱しない範囲において種々の変更が可能である。
本開示は以下のような構成も取ることができる。
(1)
無線伝送の対象となるデータに符号化処理を行うことによって符号化データを生成し、複数フレーム分の前記符号化データから成る、固定サイズの伝送単位に収まる送信符号化データを生成する符号化部と、
無線伝送される前の前記送信符号化データを一時的に保持する保持部と、
前記保持部に保持されている前記送信符号化データを無線伝送する送信部と、
前記保持部に保持されている無線伝送前の前記送信符号化データの数を表す送信待ちデータ数に基づき、前記符号化部により前記送信符号化データを生成する際の前記符号化データのフレームの数を表す格納フレーム数を決定する格納フレーム数決定部と、
決定された格納フレーム数に基づき、前記符号化処理で採用される圧縮率を決定する圧縮率決定部と
を備える送信装置。
(2)
前記送信待ちデータ数を間歇的に取得して蓄積する蓄積部をさらに備え、
前記格納フレーム数決定部は、前記蓄積部に蓄積されている前記送信待ちデータ数に基づき、前記格納フレーム数を決定する
前記(1)に記載の送信装置。
(3)
前記格納フレーム数決定部は、前記蓄積部に蓄積されている最新の前記送信待ちデータ数が所定の閾値を超えた場合、前記格納フレーム数を増加させ、
前記圧縮率決定部は、増加された前記格納フレーム数に基づき、前記符号化処理で採用される圧縮率を上げる
前記(2)に記載の送信装置。
(4)
前記符号化部は、前記圧縮率が上げられた場合、上げられる前の圧縮率が採用されて符号化処理が行われた前記符号化データが未送信のままで残っているときには、フレーム単位で符号化処理における圧縮率が異なる前記符号化データを混載した前記送信符号化データを生成する
前記(2)または(3)に記載の送信装置。
(5)
前記格納フレーム数決定部は、前記蓄積部に蓄積されている前記送信待ちデータ数の所定の観測時間の履歴が所定の条件を満たす場合、前記格納フレーム数を減少させ、
前記圧縮率決定部は、減少された前記格納フレーム数に基づき、前記符号化処理で採用される圧縮率を下げる
前記(2)から(4)のいずれかに記載の送信装置。
(6)
前記所定の観測時間を延長させるために課すペナルティを設定するペナルティ設定部を
さらに備える前記(5)に記載の送信装置。
(7)
前記ペナルティ設定部は、前記圧縮率の変更履歴に基づいて前記ペナルティを設定または解除する
前記(6)に記載の送信装置。
(8)
データを無線伝送する送信装置の送信方法において、
前記送信装置による、
無線伝送の対象となるデータに符号化処理を行うことによって符号化データを生成し、複数フレーム分の前記符号化データから成る、固定サイズの伝送単位に収まる送信符号化データを生成する符号化ステップと、
無線伝送される前の前記送信符号化データを一時的に保持する保持ステップと、
保持されている前記送信符号化データを無線伝送する送信ステップと、
保持されている無線伝送前の前記送信符号化データの数を表す送信待ちデータ数に基づき、前記送信符号化データを生成する際の前記符号化データのフレームの数を表す格納フレーム数を決定する格納フレーム数決定ステップと、
決定された格納フレーム数に基づき、前記符号化処理で採用される圧縮率を決定する圧縮率決定ステップと
を含む送信方法。
(9)
コンピュータを、
無線伝送の対象となるデータに符号化処理を行うことによって符号化データを生成し、複数フレーム分の前記符号化データから成る、固定サイズの伝送単位に収まる送信符号化データを生成する符号化部と、
無線伝送される前の前記送信符号化データを一時的に保持する保持部と、
前記保持部に保持されている前記送信符号化データを無線伝送する送信部と、
前記保持部に保持されている無線伝送前の前記送信符号化データの数を表す送信待ちデータ数に基づき、前記符号化部により前記送信符号化データを生成する際の前記符号化データのフレームの数を表す格納フレーム数を決定する格納フレーム数決定部と、
決定された格納フレーム数に基づき、前記符号化処理で採用される圧縮率を決定する圧縮率決定部と
して機能させるプログラム。
10 送信装置, 11 制御部, 12 蓄積履歴メモリ更新部, 13 増加フレーム数算出部, 14 タイミング制御部, 15 圧縮率制御部, 16 圧縮率変更履歴メモリ, 17 符号化部, 18 データバッファ, 19 符号化データバッファ, 20 送信待ちバッファ, 21 通信処理部, 22 無線通信部, 23 スイッチ, 24 蓄積履歴メモリ, 200 コンピュータ, 201 CPU

Claims (9)

  1. 無線伝送の対象となるデータに符号化処理を行うことによって符号化データを生成し、複数フレーム分の前記符号化データから成る、固定サイズの伝送単位に収まる送信符号化データを生成する符号化部と、
    無線伝送される前の前記送信符号化データを一時的に保持する保持部と、
    前記保持部に保持されている前記送信符号化データを無線伝送する送信部と、
    前記保持部に保持されている無線伝送前の前記送信符号化データの数を表す送信待ちデータ数に基づき、前記符号化部により前記送信符号化データを生成する際の前記符号化データのフレームの数を表す格納フレーム数を決定する格納フレーム数決定部と、
    決定された格納フレーム数に基づき、前記符号化処理で採用される圧縮率を決定する圧縮率決定部と
    を備える送信装置。
  2. 前記送信待ちデータ数を間歇的に取得して蓄積する蓄積部をさらに備え、
    前記格納フレーム数決定部は、前記蓄積部に蓄積されている前記送信待ちデータ数に基づき、前記格納フレーム数を決定する
    請求項1に記載の送信装置。
  3. 前記格納フレーム数決定部は、前記蓄積部に蓄積されている最新の前記送信待ちデータ数が所定の閾値を超えた場合、前記格納フレーム数を増加させ、
    前記圧縮率決定部は、増加された前記格納フレーム数に基づき、前記符号化処理で採用される圧縮率を上げる
    請求項2に記載の送信装置。
  4. 前記符号化部は、前記圧縮率が上げられた場合、上げられる前の圧縮率が採用されて符号化処理が行われた前記符号化データが未送信のままで残っているときには、フレーム単位で符号化処理における圧縮率が異なる前記符号化データを混載した前記送信符号化データを生成する
    請求項3に記載の送信装置。
  5. 前記格納フレーム数決定部は、前記蓄積部に蓄積されている前記送信待ちデータ数の所定の観測時間の履歴が所定の条件を満たす場合、前記格納フレーム数を減少させ、
    前記圧縮率決定部は、減少された前記格納フレーム数に基づき、前記符号化処理で採用される圧縮率を下げる
    請求項2に記載の送信装置。
  6. 前記所定の観測時間を延長させるために課すペナルティを設定するペナルティ設定部を
    さらに備える請求項5に記載の送信装置。
  7. 前記ペナルティ設定部は、前記圧縮率の変更履歴に基づいて前記ペナルティを設定または解除する
    請求項6に記載の送信装置。
  8. データを無線伝送する送信装置の送信方法において、
    前記送信装置による、
    無線伝送の対象となるデータに符号化処理を行うことによって符号化データを生成し、複数フレーム分の前記符号化データから成る、固定サイズの伝送単位に収まる送信符号化データを生成する符号化ステップと、
    無線伝送される前の前記送信符号化データを一時的に保持する保持ステップと、
    保持されている前記送信符号化データを無線伝送する送信ステップと、
    保持されている無線伝送前の前記送信符号化データの数を表す送信待ちデータ数に基づき、前記送信符号化データを生成する際の前記符号化データのフレームの数を表す格納フレーム数を決定する格納フレーム数決定ステップと、
    決定された格納フレーム数に基づき、前記符号化処理で採用される圧縮率を決定する圧縮率決定ステップと
    を含む送信方法。
  9. コンピュータを、
    無線伝送の対象となるデータに符号化処理を行うことによって符号化データを生成し、複数フレーム分の前記符号化データから成る、固定サイズの伝送単位に収まる送信符号化データを生成する符号化部と、
    無線伝送される前の前記送信符号化データを一時的に保持する保持部と、
    前記保持部に保持されている前記送信符号化データを無線伝送する送信部と、
    前記保持部に保持されている無線伝送前の前記送信符号化データの数を表す送信待ちデータ数に基づき、前記符号化部により前記送信符号化データを生成する際の前記符号化データのフレームの数を表す格納フレーム数を決定する格納フレーム数決定部と、
    決定された格納フレーム数に基づき、前記符号化処理で採用される圧縮率を決定する圧縮率決定部と
    して機能させるプログラム。
JP2015086481A 2015-04-21 2015-04-21 送信装置、送信方法、およびプログラム Active JP6540189B2 (ja)

Priority Applications (9)

Application Number Priority Date Filing Date Title
JP2015086481A JP6540189B2 (ja) 2015-04-21 2015-04-21 送信装置、送信方法、およびプログラム
TW105112013A TWI739739B (zh) 2015-04-21 2016-04-18 傳輸裝置,傳輸方法,及非暫態之電腦可讀取儲存媒體
US15/564,871 US10959126B2 (en) 2015-04-21 2016-04-20 Transmission device, transmission method, and program
CN201680021919.6A CN107534618B (zh) 2015-04-21 2016-04-20 传输装置、传输方法和程序
EP19163182.9A EP3531417B1 (en) 2015-04-21 2016-04-20 Transmission device, transmission method, and computer-readable storage medium
EP16722714.9A EP3286899B1 (en) 2015-04-21 2016-04-20 Transmission device, transmission method, and program
PCT/JP2016/002110 WO2016170778A1 (en) 2015-04-21 2016-04-20 Transmission device, transmission method, and program
KR1020177026592A KR102543881B1 (ko) 2015-04-21 2016-04-20 송신 디바이스, 송신 방법 및 프로그램
US17/190,357 US20210195461A1 (en) 2015-04-21 2021-03-02 Transmission device, transmission method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015086481A JP6540189B2 (ja) 2015-04-21 2015-04-21 送信装置、送信方法、およびプログラム

Publications (3)

Publication Number Publication Date
JP2016208215A true JP2016208215A (ja) 2016-12-08
JP2016208215A5 JP2016208215A5 (ja) 2018-05-17
JP6540189B2 JP6540189B2 (ja) 2019-07-10

Family

ID=55969437

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015086481A Active JP6540189B2 (ja) 2015-04-21 2015-04-21 送信装置、送信方法、およびプログラム

Country Status (7)

Country Link
US (2) US10959126B2 (ja)
EP (2) EP3286899B1 (ja)
JP (1) JP6540189B2 (ja)
KR (1) KR102543881B1 (ja)
CN (1) CN107534618B (ja)
TW (1) TWI739739B (ja)
WO (1) WO2016170778A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019017218A1 (ja) 2017-07-21 2019-01-24 ソニー株式会社 送信装置、送信方法、受信装置、受信方法、及び、プログラム
WO2021111903A1 (ja) * 2019-12-05 2021-06-10 ソニーグループ株式会社 受信端末および方法
CN115174538A (zh) * 2022-06-30 2022-10-11 Oppo广东移动通信有限公司 数据传输方法、装置、电子设备及计算机可读介质

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4055785A1 (en) * 2019-11-08 2022-09-14 Telefonaktiebolaget LM Ericsson (publ) Method and apparatus for transmitting real-time media stream
CN114584956B (zh) * 2020-12-01 2023-01-10 合肥炬芯智能科技有限公司 蓝牙通信方法及系统、蓝牙接收端和发射端的通信方法
TWI783729B (zh) * 2021-10-14 2022-11-11 財團法人資訊工業策進會 分散式資料傳輸容錯系統及其動態資源調整方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07170292A (ja) * 1993-12-15 1995-07-04 Sony Corp 送信装置
JP2002152310A (ja) * 2000-08-28 2002-05-24 Sony Corp 無線送信装置及び方法、無線受信装置及び方法、無線送受信システム、並びに記憶媒体
JP2007519283A (ja) * 2003-11-13 2007-07-12 松下電器産業株式会社 符号化方法及び符号化装置
JP2008118326A (ja) * 2006-11-02 2008-05-22 Sony Corp 送信装置および方法、プログラム、並びに通信システム
JP2012054692A (ja) * 2010-08-31 2012-03-15 Toshiba Corp 情報送信装置、情報送信方法及び情報送信用プログラム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5864678A (en) * 1996-05-08 1999-01-26 Apple Computer, Inc. System for detecting and reporting data flow imbalance between computers using grab rate outflow rate arrival rate and play rate
US20010047359A1 (en) * 2000-04-17 2001-11-29 Peter Videcrantz Method and apparatus for data compression
EP1185038A3 (en) * 2000-08-28 2004-03-17 Sony Corporation Radio transmission/reception device, method, system, and storage medium
JP2003309541A (ja) 2002-04-15 2003-10-31 Sony Corp データ転送システム、データ転送装置及びデータ転送方法、並びにコンピュータ・プログラム
KR20080102322A (ko) * 2004-01-28 2008-11-24 닛본 덴끼 가부시끼가이샤 컨텐츠의 배포 방법, 인코드 방법 및 수신 재생 방법과 장치 그리고 프로그램
JP2008152840A (ja) * 2006-12-15 2008-07-03 Matsushita Electric Ind Co Ltd 記録再生装置
JP4661907B2 (ja) * 2008-05-30 2011-03-30 ソニー株式会社 情報処理システム、情報処理装置及び情報処理方法、並びにプログラム
TWI523541B (zh) * 2012-07-05 2016-02-21 宏碁股份有限公司 無線影音傳輸系統及其方法,及其電腦程式產品

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07170292A (ja) * 1993-12-15 1995-07-04 Sony Corp 送信装置
JP2002152310A (ja) * 2000-08-28 2002-05-24 Sony Corp 無線送信装置及び方法、無線受信装置及び方法、無線送受信システム、並びに記憶媒体
JP2007519283A (ja) * 2003-11-13 2007-07-12 松下電器産業株式会社 符号化方法及び符号化装置
JP2008118326A (ja) * 2006-11-02 2008-05-22 Sony Corp 送信装置および方法、プログラム、並びに通信システム
JP2012054692A (ja) * 2010-08-31 2012-03-15 Toshiba Corp 情報送信装置、情報送信方法及び情報送信用プログラム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019017218A1 (ja) 2017-07-21 2019-01-24 ソニー株式会社 送信装置、送信方法、受信装置、受信方法、及び、プログラム
WO2021111903A1 (ja) * 2019-12-05 2021-06-10 ソニーグループ株式会社 受信端末および方法
DE112020005969T5 (de) 2019-12-05 2022-09-22 Sony Group Corporation Empfangsendgerät und verfahren
CN115174538A (zh) * 2022-06-30 2022-10-11 Oppo广东移动通信有限公司 数据传输方法、装置、电子设备及计算机可读介质

Also Published As

Publication number Publication date
EP3531417A1 (en) 2019-08-28
WO2016170778A1 (en) 2016-10-27
TWI739739B (zh) 2021-09-21
US20210195461A1 (en) 2021-06-24
CN107534618B (zh) 2021-09-28
CN107534618A (zh) 2018-01-02
KR102543881B1 (ko) 2023-06-16
EP3286899A1 (en) 2018-02-28
US10959126B2 (en) 2021-03-23
EP3286899B1 (en) 2019-04-17
EP3531417B1 (en) 2022-10-05
TW201711433A (zh) 2017-03-16
KR20170139513A (ko) 2017-12-19
JP6540189B2 (ja) 2019-07-10
US20180091998A1 (en) 2018-03-29

Similar Documents

Publication Publication Date Title
JP6540189B2 (ja) 送信装置、送信方法、およびプログラム
CN105119755B (zh) 一种抖动缓冲区调整方法及装置
US9113141B2 (en) Wireless channel aware adaptive video bit rate encoding
US20100296525A1 (en) Simple Adaptive Jitter Buffering Algorithm For Network Nodes
TW200849842A (en) Method of regulating the transmission jitter within a reception terminal
CN109495660B (zh) 一种音频数据的编码方法、装置、设备和存储介质
JP5428702B2 (ja) ストリーム通信システム、サーバ装置及びクライアント装置
US10522162B2 (en) Signal processing apparatus, signal processing method, and program
KR102506494B1 (ko) 송신 장치, 송신 방법, 수신 장치, 수신 방법, 및 프로그램
US20150181456A1 (en) Frame transmission method and apparatus for controlling one-way delay
JP2014160911A (ja) パケット処理装置、方法及びプログラム
JPWO2010109752A1 (ja) 通信システム
US20130113874A1 (en) Bit rate control apparatus and method thereof
JP2012060524A (ja) 再生装置、再生方法、及びプログラム
CN118250332A (en) Streaming media data buffer processing method and device and electronic equipment
JPWO2017145781A1 (ja) ペーシング制御装置、ペーシング制御方法、及びプログラム
JP2006135793A (ja) データ配信装置及びその制御方法、プログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180329

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180329

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190219

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190226

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190507

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190527

R151 Written notification of patent or utility model registration

Ref document number: 6540189

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151