Khadas Docs

Amazing Khadas, always amazes you!

User Tools

Site Tools


Sidebar

products:sbc:vim3:applications:earc

This is an old revision of the document!


VIM3L eARC

Introduction

The eARC (Enhanced Audio Return Channel) is a feature implemented in the latest HDMI 2.1 specification, the biggest advantage is that it exceedingly improves bandwidth and speed. 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 recored audio from eARC.

Only for VIM3L with 5.15 kernel.

TV side setup

In order to use the eARC functuion, you need to make sure your TV supports the eARC function, in generic, if the HDMI port on your TV has a eARC mark,
it means your TV supports eARC function, anyway you need to check with your TV vendor whether it supports or not.

You also need to enable the eARC function on your TV if it supports, you can check with the TV vendor about how to enable it.

VIM3L side setup

You also need to enable the 'eARC' RX function on VIM3L, you can follow the command below to enable 'eARC' RX.

amixer cset name='ARC eARC RX enable' 1

Check enable status:

$ 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 IN port with eARC function.

Check eARC status

You can follow the command below to check the status of eARC.

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
  • values=2 - Device work on eARC
  • values=1 - Device work on ARC
  • values=1 - ARC/eARC not connected

If your setup is correct, it should be values=2 which means work on eARC.

You can also try to unplug/replugin HDMI cable to check.

Record audio from eARC

You can check the record sound devices with arecord -l

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

arecord -D hw:0,6 -f S16_LE -c 2 -r 48000 /tmp/out.wav
Last modified: 2023/11/08 21:29 by nick