DIY解决索尼电视光纤输出的音频信号无法调节音量的问题

背景

连线

电视接一根光纤到到解码器,解码器连接到传统的5.1音箱上。然后在电视的音频输出设置里,改为通过音箱播放声音

出现的问题

电视遥控器调节音量,音箱的音量并没有发生变化。搜索发现,一些网友说原因是电视直接将音频信号给了解码器,并没有在其中做任何处理。这个理论是说得通的,除非电视把信号转成PCM再调节振幅,否则音量确实不会被调节。然而音箱调节音量只可以手动扭旋钮,并没有遥控器那么方便

解决思路

  1. 电视切换到音箱输出后,电视本身的扬声器不会再输出声音。但是音量条是可以通过遥控器调节的
  2. 音箱的音量调节旋钮应该是个电位器
  3. 理论上可以写个APP放在电视里,监听电视音量条的变化,然后把音量值通过网络发送到一个单片机中,单片机带动数字电位器,来替代原本的音箱旋钮。

音箱电路分析

音箱上的音量旋钮是一个6脚的B103电位器,实际是两个B103电位器完全并联起来用的

 

解决方案

购买了一个NodeMCU(ESP8266)开发板,两个X9C103S数字电位器。

电视上的程序是监听音量变化,每1S或者音量被调节时发送一次音量数据(因为是广播,防止丢包造成音量调节不成功。每1S发一次,可以确保万一断开连接了,重连后还可以调节到正常音量)

ESP8266的程序是用Arduino写的。收到广播时,如果发生了音量变化,就调节一下数字电位器的阻值

 

遇到的问题

ESP8266重启时,恢复连接特别慢,要几分钟才可以重新连上WiFi。只在我的华硕AC-86U上有问题,换手机热点之类的,都是秒连。

搜索了下相关资料,可能是Espressif FW新版本带来的问题。在Arduino选择开发板的时候,选择Generic ESP8266 Module,并把Espressif FW改成2.2.1(legacy)的版本,就解决问题了。重启之后可以秒连。

 

版权声明:本文为CSDN博主「西红柿炖番茄」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/luhanglei/article/details/121931650

生成海报
点赞 0

西红柿炖番茄

我还没有学会写个人说明!

暂无评论

发表评论

相关推荐

太空人esp32/8266天气时钟学习经验

首先多谢各位大佬开源支持,只是因为某fish标价售卖,严重打击开源的心情,感觉这种真的没必要。 现在已经流行很多个版本:可以直接将库文件不同命名,只有libraries生效&

2WD远程控制小车——程序设计

1. 简介 本文主要包括ESP32开发板的程序和ESP8266开发板的程序。涉及到的内容有OLED显示、DHT22的数据采集、ADC电压测量、TB6612驱动和PS2接收。 2. 电路连接 控制板ESP32的主要电路连接如下图所示&#xf