修复全志开发板AV输出Overscan问题
之前买了一个Orange Pi Zero,现在是我的智能音响
因为只有av输出没有hdmi,在av日常显示超出范围的情况下,全志居然没有Overscan这种设置
然后研究了一下有了这个教程(调了一晚上)
全志有个叫script.bin和树莓派的config.txt类似,不过这个文件明显不能用编辑器打开的
bin2fex /boot/script.bin ~/script.fex
nano ~/script.fex
按 Ctrl + w 查找:`
fb0_
将```
fb0_width = 0
```修改成```
fb0_width = 658
将`
fb0_height = 0修改成
fb0_height = 548
Ctrl + x 保存
sudo fex2bin ~/script.fex /boot/script.bin
wget https://raw.githubusercontent.com/harshgandhi/linuxScripts/master/devmem2.c
gcc devmem2.c
sudo mv a.out /usr/local/bin/devmem2
nano /etc/rc.local
在文件最后的```
exit 0
devmem2 0x01E00130 w 0x00c003a
如果不能使用以上方法来修改,也可以用:
fbset -g 658 548 658 548 32
然后重启 Enjoy~
发现NTSC在宽屏设备下显示挺不错的…比PAL下的设置要好
screen0_output_mode = 11
这里11是PAL,改成14就是NTSC了
对应的
fb0_width = 660
fb0_height = 470
如果没办法改,也能用
fbset -g 660 470 660 470 32
移动屏幕位置
devmem2 0x01E00130 w 0x0090396
这和上面的配置差不多…只是修改了一些数值
最近换了新的armbain系统,内核是4.14.x的,没有视频输出,Google翻了一下找到一个h3-tve的模块,然后把内核提取出来换掉boot里面的(记得替换那三个软连接),我并不知道怎么在字符界面把输出改成NTSC,PAL虽然分辨率大但是彩边比较严重,NTSC就很清晰。
内核下载: armbain-4.14.21-kernel.zip
在`
/etc/rc.local
devmem2 0x01E00130 w 0x0170048
fbset -g 658 548 658 548 32
修正在PAL下的显示大小和位置
在桌面环境下可以在```
/etc/rc.local
devmem2 0x01E00130 w 0x0120048
在图形界面的开机启动(Startup)中添加
DISPLAY=:0 xrandr --output Composite-1 --mode NTSC --scale 1.454x1.15 --panning 960x540
来修正位置和修改为NTSC(可以差值更高的分辨率,但是真的挺卡的)
我是这样配置的`
/etc/rc.local
如果你不需要图形界面:
PAL
devmem2 0x01E00130 w 0x0170048
fbset -g 658 548 658 548 32
图形界面:
NTSC
su sparkle -c startx&
su -c "sleep 30 && fixav"&
其中的```
/usr/local/bin/fixav
devmem2 0x01E00130 w 0x0120048
su - sparkle -c "DISPLAY=:0 xrandr --output Composite-1 --mode NTSC --scale 1.454x1.15 --panning 960x540"
国产的东西文档总是写的不清不楚的…
如果咩咩的文章对你有帮助,您可以 请我喝牛奶