【问题标题】:coral dev board hdmi arc Input/output error珊瑚开发板 hdmi arc 输入/输出错误
【发布时间】:2021-09-27 14:47:58
【问题描述】:

我正在尝试让 Coral 开发板通过 HDMI ARC 从我的电视接收音频。我很确定我在电视端启用了 ARC,但我认为 Coral Linux 端缺少一些东西。谁能帮我搞定这个工作?其他人有这个工作吗?

我修改了 phanbell 设备树以启用 spdif2 和 sound-hdmi-arc。

sound-hdmi-arc {
    compatible = "fsl,imx-audio-spdif";
    model = "imx-hdmi-arc";
    spdif-controller = <&spdif2>;
    spdif-in;
};

&spdif2 {
    assigned-clocks = <&clk IMX8MQ_CLK_SPDIF2>;
    assigned-clock-parents = <&clk IMX8MQ_AUDIO_PLL1_OUT>;
    assigned-clock-rates = <24576000>;
    status = "okay";
};

arc 设备出现在 Linux 中,但当我尝试从中记录时收到错误消息。

arecord -D hw:CARD=imxhdmiarc,DEV=0 -r 48000 -f S24_LE -c 2 -d 3 ~/arc.wav
Recording WAVE '/home/mendel/arc.wav' : Signed 24 bit Little Endian, Rate 48000 Hz, Stereo
arecord: pcm_read:2145: read error: Input/output error

如果我连接 Coral 开发板和一些音频测试设备,我会收到相同的错误消息。如果我将音频设备设置设置为禁用 ARC 链接协商并强制打开音频,该命令确实有效。这让我相信 Coral Linux 方面缺少某种链接协商。

如果有人可以提供帮助,请告诉我。谢谢。

【问题讨论】:

    标签: linux automatic-ref-counting hdmi google-coral hdmi-cec


    【解决方案1】:

    我想通了。

    # install the cec-ctl and read-edid utilities
    sudo apt install cec-utils read-edid
    # find our physical address reported by the TV
    read-edid /devices/platform/display-subsystem/drm/card0/card0-HDMI-A-1/edid | grep physical
    # set the logical address
    cec-clt --audio
    # set the physical address
    cec-ctl -p 1.0.0.0
    # send the command
    cec-ctl --to 0 --initiate-arc
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多