This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] PCM2912A:播放错误

Guru**** 2419030 points
Other Parts Discussed in Thread: PCM2912A

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/1514244/pcm2912a-aplay-error

器件型号:PCM2912A

工具/软件:

“我们开发并生产了一个具有 E3815 CPU 和 Ubuntu 12.04 系统的工业控制设备。 它在内部使用 PCM2912A 作为声卡、后端通过功率放大器驱动客户的扬声器。 在客户现场使用时、出现批处理问题:使用命令“avplay /path/file.wav 执行音频播放操作时、扬声器不产生声音。 输出信息如下所示:

alsa lib pcm_direct.c:980:(snd1_pcm_direct_initialize_slave) 无法安装硬件参数
alsa lib pcm_dmix.c:1030:(snd_pcm_dmix_open) 无法初始化从设备
播放:主:682:音频开路错误:输入/输出错误

此问题的原因可能是什么? 它是否与硬件相关?“

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    您打算记录的采样率是多少? 可以在 i2cdetect 中看到这些器件吗? 您能否提供寄存器转储、并提供 dts 文件? 这些错误可能意味着很多问题、但我想这意味着设备可能正被系统上的另一个进程占用、检查是否可以在 i2cdetect 中看到器件(没有 UU 作为地址)会给出一个提示。 您以前是否能够运行此命令而没有出现任何问题?  

    此致、
    Mir

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    感谢您的回复!

    我们不使用麦克风功能、而只是将 PCM2912A 用作音频解码器件来驱动扬声器。 由于 PCM2912A 是 USB 总线器件、为什么要检查 I2C 总线的连接状态? 关于您关于“设备可能正在被系统上的另一个进程使用“的说法、我们模拟了这种情况、并且`avplay`进程的输出显示“设备繁忙“或“未找到设备“、而不是“输入/输出错误“。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    好的、我看到这是仅 USB、因此没有 I2C、也没有可测量的 I2S 时钟。 您能否附上原理图和 DTS 文件? 我想知道器件是否没有获得所需的输入时钟。

    此致、
    Mir

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    这是声卡电路的电路图! 我们的设备使用 x86 硬件平台、没有设备树文件。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    看起来不错。 可能问题是您的计算机未设置为正确的采样率 — 您能否检查以确保以这些支持的采样率之一以 16 位进行录制?

    您可以在 aplay 命令中设置此设置、如果您在操作系统上运行 Linux 并带有 GUI、则可以检查音频设置以确保速率为 44.1kHz 或 48kHz 以及 16 位。

    此致、
    Mir

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    我们需要播放的音频文件是一个固定文件。 通过使用 soxi 命令检查文件的属性、我们确认它是 16 位、采样率为 44100Hz 且具有 2 个通道。 当我们使用 avplay 命令时、我们不指定采样率;相反、系统会自动识别采样率。 这是否应该不会导致任何其他问题?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    能否运行 aplay -f S16_LE -r 44100?

    此外、您是否可以运行 avplay -l 列出硬件设备? 我们确保正确识别它。

    此致、
    Mir

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    该应用程序是由客户端自己开发的、它们使用的命令是:aplay /path/file.wav. 将它替换为 aplay -f S16_LE -r 44100 会非常麻烦! 下面是命令 aplay -l 和 lsusb 的输出信息。

    此外、该问题不会持续存在。 有时它可能在运行几十天后发生一次、有时可能在几个小时内发生。 一旦发生、它将保留现有状态、除非重新启动器件。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    问题会以随机的时间间隔发生、直到重新启动、听起来更像是电源问题。 我仔细查看了您的原理图、并有一些注意事项、如果您更改这些内容、我希望此问题能够停止:

    -如果您将模拟接地和数字接地分开,请确保它们连接在中心位置,例如在芯片下方
    - VIN 不应连接至 VCCA、这是麦克风信号的模拟输入
    -将 VCOM1 去耦电容更改为 10 μ F、将 VCOM2 去耦电容更改为 0.1 μ F  

    请告诉我、当您更改此设置时会发生什么情况。

    此致、
    Mir

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    感谢您的建议! 我稍后再试一次、并告诉您结果。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好:

    关于你刚才提到的几项建议、我有几个问题:第一、我所报告的问题是否与你提到的建议有关? 第二,虽然这个问题在客户方面多次发生,但我们始终未能在内部重现。 如果我们进行建议的更改但仍然无法重现问题、这将不会帮助我们找到和分析问题的真实原因。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好:

    关于你刚才提到的几项建议、我有几个问题:第一、我所报告的问题是否与你提到的建议有关? 第二,虽然这个问题在客户方面多次发生,但我们始终未能在内部重现。 如果我们进行建议的更改但仍然无法重现问题、这将不会帮助我们找到和分析问题的真实原因。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好:

    关于你刚才提到的建议、我有几个问题:第一、我报告的问题是否与你的建议有关? 其次、虽然客户端多次出现此问题、但我们始终无法在内部重现此问题。

    如果我们实施更改但仍然无法重现问题、这将不会帮助我们找出并分析问题的真正根本原因。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Yang:

    今天是我们在美国的团队的假期。我们将在达拉斯时间的星期二上与您联系。

    此致、感谢您的耐心等待、
    Jeff McPherson

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    我建议进行这些改变,以防出现电源问题 — 有时,如果电源出现尖峰或电压骤降,则芯片可能会出现问题,因此我建议为此改变去耦电容器。 但是,经过一些进一步的研究,我发现,也许有一个问题的默认卡,当你有这个问题 — 是播放的屏幕截图从当设备是错误时,当你尝试玩? 如果 HDMI 音频卡或与 Linux 系统的任何其他音频连接成为卡 0、则它将具有优先级、可能会尝试在该卡上播放。 发生问题时、您能否指定正在使用的卡以及计算机上可用的卡? 请查看这篇文章、了解一些提示: https://askubuntu.com/questions/638978/unable-to-install-hw-params-usb-xmos-and-alsa

    此致、
    Mir

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    在我的设备上、确实有两个声卡设备。 一个是卡 0:HDA Intel PCH、另一个是卡 1:USB 音频编解码器。 为确保系统始终使用卡 1 进行音频播放、我添加了 asound.conf 配置文件。 该文件的内容如下:

    第一次出现问题时、我使用 aplay -l 命令检查了声卡设备、发现没有异常。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您是否看到过其他论坛帖子将此作为 Linux 音频问题? 我想知道这是否是一些 Linux 音频特定的问题,如果其他程序试图同时运行与 ALSA 或其他...  https://forums.gentoo.org/viewtopic-p-3870230.html 这是一个有趣的论坛帖子,我发现,有人说他们卸载了开放源码软件,这有助于,但有许多开放源码软件模块存在,所以他们花了一段时间来缩小它的范围。 也许你可以尝试这个,或者看看你是否有其他音频系统,而不仅仅是在你的计算机上 ALSA ? 通常、您遇到的这种问题是因为时钟被中断或器件的 I2C 线路繁忙、但由于这是仅 USB 器件、计算机的时钟将更低、而不是外部 MCLK/BCLK/WCLK。 因此、可能是某些其他软件/固件级计算机问题、其中某些其他程序或 IO 线路尝试优先于 USB 音频线路。

    此致、
    Mir

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    我搜索了大量的网络资源,确实看到了许多关于类似问题的反馈,但绝大多数都没有产生任何积极的结果。 一方面,这个问题是相对罕见的,不被认为是一个主要问题;另一方面,由于频繁更新 Ubuntu 系统,许多问题在旧的系统没有得到技术支持。 我还遇到了其他音频系统可能会干扰 ALSA 的理论,而 PulseAudio 经常被提及。 但是、我无法成功测试此项、并且在我的设备上、默认情况下不会启动 PulseAudio 服务。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我想知道您是否可以列出正在运行的进程并逐一将它们杀死、直到您没有“无法安装硬件参数“错误。 或者、如果您可以尝试直接插入设备、则没有 USB 集线器或任何其他 USB 设备。 我认为这可能是硬件时钟或进程繁忙问题。 如果您能尝试其中的任何一项、请告诉我。

    此致、
    Mir

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    感谢您的建议! 如果我可以重现故障现象、我会尝试一下!

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您之前提到、“VIN 不应连接到 VCCA、因为它用作麦克风信号的模拟输入。“ 我想问:如果我们在实践中没有使用麦克风功能、应如何处理 VIN? 它应该保持悬空或接地?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    如果 ADC 保持开启、您可以将其悬空或接地、这样有助于避免任何串扰或耦合到器件中。 如果您使用 I2C 关闭 ADC、两种方式都无关紧要。

    如果您有任何其他问题、请告诉我! 您是否让 Aplay 更可靠地工作?

    此致、
    Mir