Hello NXP
We have ARC/eARC working basically moving data from xcvr reciever to an I2S output with gst-launch:
gst-launch-1.0 -v alsasrc device=sysdefault:CARD=imxaudioxcvr ! audioconvert ! audio/x-raw,channels=2,format=S24LE ! alsasink device=sysdefault:CARD=i2s_out_card buffer-time=400
This is working in a new product we have gotten very far with. There is a DSP that can detect the samplerate if data is moved directly/correctly from ARC/eARC to I2S/SPDIF.
So, it is working with some constraints:
1) Delay
2) Unknown samplerate
I have following questions:
1. The Gstreamer method introduces approximately 70 ms delay. This is unacceptable for lipsync. Should we try another method like "audmix" or other? Will it work? Can you give some reference example of how you have tested ARC/eARC ?
2. What minimum delay have you achieved with ARC passthrough on the imx8m plus?
3. How do we determine the samplerate of recieved ARC signal - e.g. 44.1 kHz or 48 kHz? Any registers?
We tested above with an "AP 585".
Kind regards Flemming
Thanks for the reply
1. I looked a bit more into audmix.
1.a Is it only compatible with "fsl,imx8qm-audmix" and not imx8m plus?
1.b If it is compatible how would a devicetree example section look like for imx8mp?
1.c And even better, how would it look like with xcvr(ARC) as input; and xcvr(spdif) or sai1(I2S) as output?
2. OK - that might be relevant for others for practical usage of ARC/eARC
3. Great - I will look into that.
Hello,
I apologize, that is correct. i.MX8MP does not have Audio Mixer option, is only present in i.MX8/X devices.
I still thinking that Real-time Edge Software would be a good option if latency is a critical aspect in your design.
Best regards.
Hi Jorge
Thanks for all the information so far:-)
I just grep'ed for IMX8MP_CLK_AUDIOMIX in my linux distro, and there were actually some hits to confuse me. But maybe that covers, something else... ?
"Real-time Edge Software" sound interesting, but maybe also complex to get started with. I will give it a look.
Flemming
Hello,
1. You could try with audmix and check if can reduce the latency. The example of how was tested in our side is in section 8.2 HDMI eARC support of Linux User's Guide. Did you considered use Real-time Edge Software?
2. Unfortunately, there are no available latency benchmarks in our side.
3. The HDMI audio supports the features below:
• Playback sample rate
– 32k, 44.1k, 48k, 88.2k, 96k, 176.4k, 192k
– HDMI sink capability
• Playback Channels:
– 2, 4, 6, 8
– HDMI sink capability
• Playback audio formats:
– SNDRV_PCM_FMTBIT_S16_LE
You could check it in gstreamer.
Best regards.