全志A10 android平台CVBS效果调试

全志平台CVBS效果调试

 

      最近在调试一款面向中低端市场车载后座娱乐产品,在输出方面只有CVBS输出。在车载方面,CVBS输入输出使用得还是非常频繁的,目前还是用得比较多的,特别是在中低端市场。

笔者使用的是全志A10平台,做过A10的同志们都知道A10的CVBS效果输出是比较差的,相比mstar的芯片那不是差一点半点,当然A10也还是有很多优点的,不多说了,那怎么在这个芯片的基础上相对的把效果调试好一些呢?

     首先还是从A10的datasheet着手,看了一下手册,只有一个TV Encoder的描述,上面只写了一个TV Encoder。笔者把TV
Encoder的全部寄存器大概看了一遍,大概有十个寄存器跟效果比较相关,具体是TVE_00C\ TVE_00C TVE_020\ TVE_00C TVE_024\ TVE_10C TVE_118\ TVE_11C\ TVE_120\ TVE_128等。都是一下调黑白电平level,CB\CR
gain,色饱和度的gain,还是就是Y/C的delay。

开始调,直接修改寄存器值。还是使用sunxi-reg.ko这个ko,加载后就可以操作任何寄存器,这个非常不错。调了上面这些可以的寄存器,真的很郁闷,按照手册上的地址、说明敲进去没有什么效果,这个真郁闷。手册上明明这么写得,怎么没起作用呢?

      笔者暂时放下手册,潜心研究一下DE-TVE的代码,从代码上看有两个TVE存在。但是在全志释放出来的datasheet上描述只有一个。真的很抓狂,全志你想干嘛吗?你做得很好了,不释放出来就不释放出来,又没做好,效果那么差,还要对我们留一手,真的要批判一下。

       言归正传,另外一个TVE的base地址是1c1b000。笔者CVBS使用的标准NTSC输出,按照这个基址修改00C、128两个寄存器就能达到更好一点的效果。当然,这个硬件要配套的改一下小电路,也就是外围电路的一些电阻电容。知道了这一点后,整个效果调试还是比较快的。事实证明啊,全志平台要提高得东西还有不少,给客户的手册详细点吧!不然做你们平台真的很累,还会误导人!

截一点调试后的代码共享一下:

	case DISP_TV_MOD_NTSC:
	case DISP_TV_MOD_NTSC_SVIDEO:
		TVE_WUINT32(sel,TVE_004, 0x07030000);
		TVE_WUINT32(sel,TVE_014, 0x00760020);
		TVE_WUINT32(sel,TVE_01C, 0x0016020d);
		TVE_WUINT32(sel,TVE_114, 0x0016447e);
		TVE_WUINT32(sel,TVE_124, 0x000005a0);
		TVE_WUINT32(sel,TVE_130, 0x000e000c);
		TVE_WUINT32(sel,TVE_13C, 0x00000000);
		TVE_WUINT32(sel,TVE_00C, 0x00000122);//0x120-->0x122
		TVE_WUINT32(sel,TVE_020, 0x00f0011a);
		TVE_WUINT32(sel,TVE_10C, 0x0000004f);
		TVE_WUINT32(sel,TVE_110, 0x00000000);
		TVE_WUINT32(sel,TVE_118, 0x0000a0a0);
		TVE_WUINT32(sel,TVE_11C, 0x001000f0);
		TVE_WUINT32(sel,TVE_128, 0x00000000);//0x2-->0x0
		TVE_WUINT32(sel,TVE_12C, 0x00000101);//
		break;

 

 

时间: 2024-09-16 21:15:33

全志A10 android平台CVBS效果调试的相关文章

基于avd7181c解决视频输入效果差的问题<四>---android显示相关实现调试手记

基于avd7181c解决视频输入效果差的问题<四>---android显示相关实现调试手记            笔者在前几篇文章中提到的都是AVD7181C的信号通过CSI的数据通道,然后给camera APK来显示,就可以看到YPBPR\CVBS的输入信号了.利用camera apk调试AVD7181C也是为了加快调试进度,笔者在实践中确实感觉很有益.通过它,我们可以先把AVD7181C以及CSI的驱动先调试稳定下来,调试正确,确保数据到应用之前是正确的,但是最终我们是要作产品,总不能用c

Freeline - Android平台上的秒级编译方案

Freeline 技术揭秘 Freeline是什么? Freeline是蚂蚁金服旗下一站式理财平台蚂蚁聚宝团队15年10月在Android平台上的量身定做的一个基于动态替换的编译方案,5月阿里集团内部开源,稳定性方面:完善的基线对齐,进程级别异常隔离机制.性能方面:内部采用了类似Facebook的开源工具buck的多工程多任务并发思想:端口扫描,代码扫描,并发编译,并发dx,并发merge dex等策略,在多核机器上有明显加速效果,另外在class及dex,resources层面作了相应缓存策略

快速解决Android平台移植ffmpeg的一些问题_Android

IT行业是一个踩在巨人肩膀上前进的行业,否则做的事情不一定有意义,所以我也是基于havlenapetr移植的ffmpeg基础上做了些改进,他做的主要贡献有: 1. 移植了ffmpeg并将与媒体相关的结构体在java层重新进行了封装,方便应用程序在java层直接操作ffmpeg API,如各种媒体格式转码及播放,如图1所示 2. 模仿Android的MediaPlayer类实现了ffmpeg的播放接口,如setDataSource(),setDisplay(),start(), stop(),pa

cocos2dx-3.0 移植android平台

    网上3.0的教程真心少,可以说没有吧,大多都是2.x 或者 3.0测试版之类的,由于我心大,没有照着2.x去搞,后来搞完后总结了一下,发觉其实3.0的移植android平台很简单了,也不需要照着2.x搞,下面记录一下一个"超级苦比的小煞笔"在完全不知道怎么搞的情况下横冲直创去移植android平台遇到的问题                   1..首先你的环境要配好         先看下面的图片,图片里是你需要的东西                   看图说话      

Android平台Qt开发入门教程

     很多人会问,Android平台可以不使用Java开发应用程序??      我做Android平台native开发之前,也有这么想过,但是我又想,底层系统全是c/c++代码,用c/c++开发Android平台程序是可能的,只是需要使用系统非公开的API(就是android源代码,而非NDK里面提供的头文件),比如libui和skia.       好了,由于我的工作是把C++中间件移植到Android平台,所以会对Qt for android这个项目比较了解,毕竟国内做这些的还比较少,

Android平台下利用zxing实现二维码开发

现在走在大街小巷都能看到二维码,而且最近由于项目需要,所以研究了下二维码开发的东西,开源的二维码扫描库主要有zxing和zbar,zbar在iPos平台上应用比较成熟,而在Android平台上主流还是用zxing库,因此这里主要讲述如何利用zxing进行二维码开发. 1.如何将zxing的Android源码导入工程. 在导入zxing的android源码之前,先去官方下载zxing的源码:http://code.google.com/p/zxing/downloads/list. 我这里下载的是

Android平台利用ZXING生成二维码图片

zxing是google的一个开源二维码项目,目前基本上和二维码打交道的东西,都会用到它. 最近项目中用到了android手机需要根据提供的字符串生成二维码图片,之前用zxing做过二维码解码,编码还没做过,看了一些demo都是用到了zxing的j2se包的内容,这个在android或者其他平台上显然无法实现,所以我们要利用zxing生成二维矩阵,然后根据android平台的提供的api来生成图片. /** * 用字符串生成二维码 * @param str * @author zhouzhe@l

Android平台进入数字家庭领域

8月6日消息, 业界标准处理器架构与内核厂商MIPS科技公司(MIPS Technologies, Inc) 今天宣布,为推动 Android?平台进入手机以外应用领域所做的努力实现了重要里程碑进展.就在宣布将 Android 平台移植到 MIPS? 架构两个月后,MIPS 科技已开始对大众公开源代码,同时也已针对少数重要客户启动了一项"早期使用计划"(Early Access Program),让他们能够在正式公开前,先使用特定硬件和程序代码优化.这些客户将与 MIPS 科技的工程团

Android系统移植与调试之-------&amp;gt;如何修改开机动画的两种方式剖析

首先,我们先来分析一下源码: frameworks/base/cmds/bootanimation/BootAnimation.cpp 首先看一下定义的常量: BootAnimation::readyToRun() 进入一个if判断语句 BootAnimation::threadLoop() ==> BootAnimation::Android()会加载"images/android-logo-mask.png"和"images/android-logo-shine.p