Khadas Docs

Amazing Khadas, always amazes you!

User Tools

Site Tools


products:sbc:vim3:applications:earc

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
products:sbc:vim3:applications:earc [2023/11/08 20:59]
nick created
products:sbc:vim3:applications:earc [2023/11/08 23:08] (current)
sravan
Line 1: Line 1:
-e+====== VIM3L eARC ====== 
 + 
 +===== Introduction ===== 
 + 
 +eARC is a feature implemented in the latest HDMI 2.1 specification, This allows you to transmit high-quality audio from your TV to your Soundbar or AV receiver and is compatible with the high bitrate formats Dolby Atmos and DTS. 
 + 
 +This documentation will guide you how to record audio from the HDMI eARC channel. 
 + 
 +<WRAP important > 
 +Only for VIM3L with 5.15 kernel. 
 +</WRAP> 
 + 
 + 
 +===== TV side setup ===== 
 + 
 +In order to use the eARC function, you need to make sure your TV is also eARC capable, It is denoted by the eARC label on the HDMI Input. 
 + 
 +You can also check with the TV vendor about how to enable it. 
 + 
 +===== VIM3L side setup ===== 
 + 
 +You also need to enable the eARC Receiver function on VIM3L, you can follow the command below to enable eARC RX. 
 + 
 +```shell 
 +$ amixer cset name='ARC eARC RX enable'
 +``` 
 + 
 +Check its status if it's enabled: 
 + 
 +```shell 
 +$ amixer cget name='ARC eARC RX enable' 
 +numid=41,iface=MIXER,name='ARC eARC RX enable' 
 +  ; type=BOOLEAN,access=rw------,values=1 
 +  : values=on 
 +``` 
 + 
 +''values=on'' means eARC RX is enabled. 
 + 
 +===== Hardware connection ===== 
 + 
 +You need to use a HDMI 2.1 cable to connect VIM3L HDMI port to your TV HDMI Input with eARC function. 
 + 
 +===== Check eARC status ===== 
 + 
 +You can follow the command below to check the status of eARC. 
 + 
 +```shell 
 +khadas@Khadas:~$ amixer cget name='eARC_RX attended type' 
 +numid=24,iface=MIXER,name='eARC_RX attended type' 
 +  ; type=ENUMERATED,access=rw------,values=1,items=3 
 +  ; Item #0 'DISCONNECT' 
 +  ; Item #1 'ARC' 
 +  ; Item #2 'eARC' 
 +  : values=2 
 +``` 
 + 
 +^ Value ^ Status ^ 
 +|''values=2''| Device work on eARC | 
 +|''values=1''| Device work on ARC | 
 +|''values=0''| ARC/eARC not connected | 
 + 
 +If your setup is correct, it should be ''values=2'' which means work on eARC. 
 + 
 +<WRAP tip > 
 +You can also try to unplug/replug HDMI cable to check. 
 +</WRAP> 
 + 
 +===== Record audio from eARC ===== 
 + 
 +You can check the record sound devices with ''arecord -l'' 
 + 
 +```shell 
 +$ arecord -l 
 +**** List of CAPTURE Hardware Devices **** 
 +card 0: AMLAUGESOUND [AML-AUGESOUND], device 0: TDM-B-dummy-alsaPORT-i2s multicodec-0 [] 
 +  Subdevices: 1/1 
 +  Subdevice #0: subdevice #0 
 +card 0: AMLAUGESOUND [AML-AUGESOUND], device 1: TDM-A-dummy-alsaPORT-pcm multicodec-1 [] 
 +  Subdevices: 1/1 
 +  Subdevice #0: subdevice #0 
 +card 0: AMLAUGESOUND [AML-AUGESOUND], device 2: TDM-C-dummy dummy-2 [] 
 +  Subdevices: 1/1 
 +  Subdevice #0: subdevice #0 
 +card 0: AMLAUGESOUND [AML-AUGESOUND], device 3: PDM-dummy-alsaPORT-pdm dummy-3 [] 
 +  Subdevices: 1/1 
 +  Subdevice #0: subdevice #0 
 +card 0: AMLAUGESOUND [AML-AUGESOUND], device 4: SPDIF-dummy-alsaPORT-spdif dummy-4 [] 
 +  Subdevices: 1/1 
 +  Subdevice #0: subdevice #0 
 +card 0: AMLAUGESOUND [AML-AUGESOUND], device 6: EARC/ARC-dummy-alsaPORT-earc dummy-6 [] 
 +  Subdevices: 1/1 
 +  Subdevice #0: subdevice #0 
 +card 0: AMLAUGESOUND [AML-AUGESOUND], device 7: LOOPBACK-A-dummy-alsaPORT-loopback dummy-7 [] 
 +  Subdevices: 1/1 
 +  Subdevice #0: subdevice #0 
 +``` 
 + 
 +The ''card 0, device 6'' device is the eARC device. You can record audio with the command below: 
 + 
 +```shell 
 +arecord -D hw:0,6 -f S16_LE -c 2 -r 48000 /tmp/out.wav 
 +``` 
 + 
Last modified: 2023/11/08 20:59 by nick