コグノスケ


2016年5月1日

残念エミュレータ

Linux 4.4系がLongtermの仲間入りをしたので、自作ARMエミュレータememuでLinux 4.4.8を動かしてみたのですが、未定義の領域(ハードウェア仕様にはあるけど、エミュレータで未実装の領域)にアクセスしてクラッシュしてしまい動かず…。

他のLongterm(Linux 4.1.23)は元気に動くんだけどな。何かドライバが変わったんだろうなあ。

メモ: 技術系の話はFacebookから転記しておくことにした。

編集者:すずき(2016/05/22 15:00)

コメント一覧

  • コメントはありません。
open/close この記事にコメントする



2016年5月22日

オーディオレイテンシ

Androidの10ms問題:Androidオーディオパスレイテンシ解説 - POSTD を読んで。

1年前の記事。アプリ経由(In → アプリ → Out)で35.8msなら、かなり優秀な方だと思っていたので、10ms以上はクソみたいな書き方がされていてショック。

私は50msのレイテンシだと全くわからなかったけど、プロの方々は50ms以下でも区別付くのか。すげーな…。

メモ: 技術系の話はFacebookから転記しておくことにした。

編集者:すずき(2016/05/22 15:02)

コメント一覧

  • hdkさん(2016/05/22 23:30)
    区別というか、音ゲーをエミュレーターでやると 50ms でもつらくないですか?
  • すずきさん(2016/05/24 00:21)
    >hdk さん
    音ゲーやらないので、ピンと来てないところもありますけど、50ms だと 3〜4 フレームズレちゃうので、タイミング命のゲームだとちょっとキツいですね。
open/close この記事にコメントする



2016年5月29日

In to Outのレイテンシ - Windows編

目次: ALSA

先日(2016年5月22日の日記参照)の続き。オシロスコープを引っ張り出してきて、測ってみました。

Windows側でサウンドデバイスの設定は特にせず、オシロの目盛が振り切れない程度に音量を調節したのと、録音デバイス側の「このデバイスを聴く」のチェックをつけ(=ループバック再生)るだけに留めました。

下記のように接続して、オシロスコープのCh1に単発トリガを掛けて、どれだけ遅れて音が鳴るかを調べました。スプリッタと格好良く書いていますが、単にステレオで出力して、赤白ケーブルの赤と白に分けているだけです…。


In to Outのレイテンシ測定

ちょっとした工夫として、入力信号の周波数を低め(100Hz)にして、波長の整数倍(今回は0.05s、つまり5波形分)のパルスにしています。

周波数を低くするのは、オシロの時間軸を長めに取ったときでもグラフが潰れず波形をカウントしやすいためです。

パルスを波長の整数倍にするのは、入力と出力の一致を見るためです。たまに無音状態から出音すると先頭の音が欠けてしまう(ポップノイズ防止のため、ボリュームにフェードを掛けて出す)デバイスがあります。その手のデバイスに当たると、フェードの分だけ遅れているように見えるため、不当に悪く評価してしまうからです。

最初はCreativeのSound Blaster X-Fi Go! Pro(約4,000円)です。


In to Outのレイテンシ - Creative SoundBlaster Go! Pro

約100msですね。

次は、同じくCreativeのSound Blaster Play(約1,000円)です。


In to Outのレイテンシ - Creative SoundBlaster Play!

わずかに早い、約90msです。

最後はONKYO SE-U33GXV2(約13,000円)です。このデバイスは内部で直結されているらしく「このデバイスを聴く」をチェックしなくてもループバック再生されていました。


In to Outのレイテンシ - ONKYO SE-U33GXV2

これは0msと言っても過言では無いです。あまりにも同時に鳴ってしまい、グラフが重なって見えないので、グラフを上下にずらしています。

しかしWindowsの設定なんて完全に無視してくれるので、ループバック再生できているとは言えないような。。。


In to Outのレイテンシ - ONKYO SE-U33GXV2「このデバイスを聴く」

ちなみに「このデバイスを聴く」にチェックを入れると、同じ音が二回鳴ってしまいます…。レイテンシはやはり100msくらいです。Windowsはこんなもんなのかなあ?

編集者:すずき(2023/09/24 14:11)

コメント一覧

  • コメントはありません。
open/close この記事にコメントする



2016年5月30日

In to Outのレイテンシ - Linux編

目次: ALSA

昨日(2016年5月29日の日記参照)の続き。Linuxでも測ってみました。

Windowsで測ったときと同様に、オシロの目盛が振り切れない程度に音量を調節しました。Linuxはループバック再生のやり方は特にありませんので、下記のようにarecordとaplayをパイプで繋いでみました。

arecord -D plughw:1 -f dat -B 10000 | aplay -D plughw:1 -f dat -B 10000

バッファはデフォルトだと500ms近かったので、arecord側もaplay側も10msに設定しています。パイプの分もバッファがあるので、最大で20ms + α 程度のレイテンシになると思われます。

まずCreativeのSound Blaster Play! を測ってみました。


In to Outのレイテンシ(Linux) - Sound Blaster Play!

おお、結構良いじゃないか。と思ったのですが、なぜか入力より出力が遅いようで、しばらく放っておくとレイテンシが変わってしまいます。


In to Outのレイテンシ(Linux) - Sound Blaster Play! その2

同じ機器なのに、録音と再生の速度が違うのは妙です。録音側をplugで変換しているからでしょうか。良く分からんな…。

編集者:すずき(2023/09/24 14:11)

コメント一覧

  • コメントはありません。
open/close この記事にコメントする



こんてんつ

open/close wiki
open/close Linux JM
open/close Java API

過去の日記

open/close 2002年
open/close 2003年
open/close 2004年
open/close 2005年
open/close 2006年
open/close 2007年
open/close 2008年
open/close 2009年
open/close 2010年
open/close 2011年
open/close 2012年
open/close 2013年
open/close 2014年
open/close 2015年
open/close 2016年
open/close 2017年
open/close 2018年
open/close 2019年
open/close 2020年
open/close 2021年
open/close 2022年
open/close 2023年
open/close 2024年
open/close 過去日記について

その他の情報

open/close アクセス統計
open/close サーバ一覧
open/close サイトの情報