SSブログ

HDMIダミープラグ HDMIの音声を分離してHi-Res出力 [Stereo]

HDMIオーディオコンバーターFX-AUDIO- HAC-02JはHDMIの音声を分離してRCAアナログ端子や光/同軸のデジタル端子に出力できる。
HAC-02JをHDMIでつないだのみでは,最大24bit 48kHz に制限されたが,HDMIダミープラグのEDIDエミュレーターで,24bit 192kHzまでのハイレゾオーディオソースが出力できるようになった。
hdmi2k


foobar 2000 では,Output – device でwasapi(event),Output format を24bitにして,ハイレゾオーディオソースを再生している。
ただし,エミュレーターのEDIDのオーディオサポート情報を以下のとおり再編集して,再書き込みしている。

Linuxで動作するプログラム edid-rw を使用して,HDMI接続でEDIDを読み書きできる。

Linuxは,Kali Linux 2017.1 (Debian)

apt-get install python-smbus edid-decode
apt-get install i2c-tools
git clone https://github.com/bulletmark/edid-rw
modprobe i2c-dev

エミュレーター(HDMIダミープラグ)をPCのHDMI出力端子に直接接続する。
約5秒で画面が切り替わるので,i2cバスの何番にエミュレーターが接続されているか調べる。

i2cdetect –l
cd edid-rw
./edid-rw 0  | edid-decode | more
./edid-rw 1 | edid-decode  | more
:
/edid-rw 5 | edid-decode | more

Extracted contents:
header:          00 ff ff ff ff ff ff 00
serial number:   19 9f 01 27 00 00 00 00 03 1b
version:         01 03
basic params:    80 3e 22 78 ea
chroma info:     1e c5 ae 4f 34 b1 26 0e 50 54
established:     2f cf 00
standard:        d1 00 d1 c0 b3 00 a9 c0 95 00 81 81 81 00 71 40
descriptor 1:    02 3a 80 18 71 38 2d 40 58 2c 35 00 e0 0e 11 00 00 1a
descriptor 2:    e2 68 00 a0 a0 40 2e 60 30 20 36 00 80 90 21 00 00 1a
descriptor 3:    56 5e 00 a0 a0 a0 29 50 30 20 36 00 80 68 21 00 00 1a
descriptor 4:    00 00 00 fc 00 48 44 4d 49 32 4b 0a 20 20 20 20 20 20
extensions:      01
checksum:        df

Manufacturer: FL_ Model 2701 Serial Number 0
Made week 3 of 2017
EDID version: 1.3

:

自分のケースでは,5番につながっていたので,エミュレーターのEDIDをバックアップする。

./edid-rw 5 > edid_orig.bin

Windowsを起動して AW EDID Editor で edid_orig.binを編集する。
オーディオサポート情報は,CEA Extension,Audio,
サポートするフォーマットやサンプリング周波数を変更追加する。

aw edid editor

更新したEDID情報 edid_upd.bin をLinuxにコピーする。

edid-decodeコマンドで内容を確認する。

edid-decode edid_upd.bin

エミュレーターのEDIDを更新する。

./edid-rw -w 5 < edid_upd.bin

更新内容を確認する。

./edid-rw 5 | edid-decode

EDIDは,256バイトのバイナリで,モニターやオーディオのサポート情報が記録されている。
当初は,EDIDをエディターで直接編集していたが,Windowsのソフト AW EDID EditorDeltacast E-EDID EditorではGUIで編集できる。
直接EDIDをviのバイナリーモードで編集する場合は,

vi -b edid_upd.bin
:%!xxd -> viで編集 -> :%!xxd -r -> :wq!

オーディオフォーマットのサポートは以下のとおり。

1 = Linear Pulse Code Modulation (LPCM)
  2 = AC-3
  3 = MPEG1 (Layers 1 and 2)
  4 = MP3
5 = MPEG2
  6 = AAC
  7 = DTS
  8 = ATRAC
  0, 15: Reserved
  9 = One-bit audio aka SACD
10 = DD+
11 = DTS-HD
12 = MLP/Dolby TrueHD
13 = DST Audio
14 = Microsoft WMA Pro

FX-AUDIO- HAC-02Jの DA コンバーター IC は PCM5102A であり,標準オーディオ(PCM)/圧縮オーディオ(AC3・DTS)対応なので,オーディオフォーマットのサポートは以下のとおりとした。

CE audio data (formats supported)
  LPCM    2-channel, 16/20/24 bit depths at 32/44/48/88/96/176/192 kHz
  LPCM    6-channel, 16/20/24 bit depths at 32/44/48/88/96/176/192 kHz
  AC-3    6-channel,  640k max. bit rate at 32/44/48 kHz
  DTS     6-channel, 1536k max. bit rate at 44/48 kHz

CE speaker allocation data
  Channel configuration.... 5.1
  Front left/right......... Yes
  Front LFE................ Yes
  Front center............. Yes
  Rear left/right.......... Yes
  Rear center.............. No
  Front left/right center.. No
  Rear left/right center... No
  Rear LFE................. No

foobar 2000 の wasapi(event)で,192kHzまでのハイレゾソースが再生できている。
HDMIダミープラグのエミュレーターはHDMI出力がないので,モニターが接続できない。
同じFUERANの製品で,HDMI出力もできそうなタイプのプラグもある。
FUERAN HDMI拡張表示標識データエミュレーターを通す、ビデオスプリッタ、スイッチとストレッチャーに用いられる


nice!(2)  コメント(7) 

nice! 2

コメント 7

BB

はじめまして。人柱情報提供です。
記事を参考に、「HDMI出力もできそうなタイプのプラグ」

https://www.amazon.co.jp/dp/B0711LLSFM?tag=atc500-22&camp=1027&creative=7407&linkCode=as4&creativeASIN=B0711LLSFM&adid=0V6A4X1BDJBKC0EG065T&

を試しましたが、EDIDの書き換えは不可でした。

by BB (2017-12-10 17:35) 

atc-500

pcのhdmiに直挿ししたのでしょうか。
i2cでeepromに書き込みます。
i2cdetectで認識したのでしょうか。
もしかしたらプロテクトされているのかもしれません。
液晶モニター等のeepromはプロテクトされてます。
by atc-500 (2017-12-19 18:57) 

BB

こんにちは。

ノートPCのHDMIポートに直挿しして書き換えを試みました。
i2cdetectでは認識していました。
edid-rw でEDIDも読み込めましたが、編集したEDIDを書き込もうと
edid-rw -w しましたが、書き換わらなかったです。
(エラーは出ませんでしたが・・・)

「HDMI出力もできそうなタイプのプラグ」は返品して、記事で使用されている
と思われるプラグ

https://www.amazon.co.jp/dp/B06Y534LH2?tag=atc500-22&camp=1027&creative=7407&linkCode=as4&creativeASIN=B06Y534LH2&adid=0GD7KFFABEQ9ZZPRBSWV&

でも試しましたが、同じ結果でした。
OSはUbuntu16.04 LTS、Kali Linux 2017.3 どちらもダメでした・・・

マイナーチェンジでプロテクトされているだろうか・・・

by BB (2017-12-20 20:02) 

atc-500

プロテクトされている液晶モニターにedid-rw -w でライトした時は,エラーが出ました。
いろいろお試しになっているのでご存知かと思いますが,スーパーユーザーで実行する必要があります。

わたしも理解できてないところがあります。
EDIDエミュ無装着のFX-AUDIO- HAC-02Jに,edid-rw -w を実行したら,エラー無く終了しましたが,書きかわりませんでした。
また,EDIDエミュにdts-hd,TrueHD等フォーマットを追記したバイナリを書き込んで,PCで結果(追加フォーマット)を確認後,HAC-02JにEDIDエミュを装着してPCをつなぐと,その変更が反映されてなかった といった理解できない現象もありました。
参考ページ
https://www.chalk-elec.com/?p=1905

by atc-500 (2017-12-22 23:54) 

MIMI

初めまして
わたしもBBさんと同じ状況で「HDMI出力もできそうなタイプのプラグ」のEDIDの書きかえはできませんでした
edid-rw -wでエラーは出ないが書き換え出来ず
Ubuntu16.04LTS

ただ、
[PC] --- [FX-AUDIO HAC-02J+(去年11月発売)] --- [TV(48kHzまで)]
で接続してPCからEDIDを確認すると
192kHzまで対応していることを確認しました

[PC] --- [TV] や [PC] --- [FX-AUDIO HAC-02J+] の接続だと48kHzでした
[PC]と[TV]との間に[HAC-02J+]を挟むことで対応するオーディオフォーマットが書き換わってPCには見えているようです


わたしの手持ちの環境では
[HAC-02J+]の光デジタル端子から96kHz以上のハイレゾ音源が本当に出力されているか確認することができないのですが、もし参考になったらと思いコメントさせていただきました


by MIMI (2018-01-08 07:44) 

お名前(必須)

MINIさん

うまくいきました!
情報ありがとうございます。
[PC] --- [FX-AUDIO HAC-02J+(去年11月発売)] --- [TV(48kHzまで)]
で接続して24bit192Hzのハイレゾ音源が出力されているのを確認できました。
(アンプ側の入力信号確認機能で確認できました)

目から鱗というか、難しいことを考えずに普通の使い方をすればいいってことですね。

FX-AUDIO HAC-02J+もバージョンアップして、EDID関係の挙動が変わっているのでしょうね。

ハイレゾ音源の感想は・・・微妙というか私の耳では大きな違いがわからない・・・空気感??がかわったような、かわらないような・・・
by お名前(必須) (2018-01-11 00:19) 

MIMI

お役に立てたようで良かったです!

同じ時期に同じものを購入して
全く同じことで悩んでいたので
コメントを見たときびっくりしました


わたしもハイレゾ音源の違いは。。。です
ただ、データをすべてアンプに入力することができたので
その点は大満足です



by MIMI (2018-01-11 23:49) 

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

Facebook コメント

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。