电视上显示的画面不全,边上画面被截掉了
0赞[DESCRIPTION]
当连上wifi Display之后,发现有些TV端的画面显示不全(但有些电视又是正常的)
这时由于 TV Overscan 导致:
Overscanis extra image area around the four edges of avideoimage that may not be seen reliably by the
viewer. It exists becausetelevisionsets in the 1930s through 1970s were highly variable in how the video
image was framed within thecathode ray tube(CRT).
http://en.wikipedia.org/wiki/Overscan
HDMI协议里面是可以发送一个“TV是否做Overscan”的package给TV,那么TV收到过这个Package的话,就不会去做
Overscan,但也有一些电视不会去看这个Package。
[SOLUTION]
在画面送给Encoder之前将Down Scale(Resize)的目标大小调整为原尺寸的90% ~ 100%.
1. 若采用的SW Version早于下面这两个版本,则需要先申请Patch:ALPS00459254
ALPS.JB2.MP (V1.19)
ALPS.JB2.TDD.MP (V1.26)
因为不同的电视Overscan的比例不一样(不过一般都是5%),所以需要Fine tune这个宏WFD_DISPLAY_ZOOM_OUT_FACTOR的
值,默认是不做Down Scale的。
alps/mediatek/kernel/drivers/hdmitx/wfd.c
#define WFD_DISPLAY_ZOOM_OUT_FACTOR 0
若这个宏的将修改为5,则表示Resize成(100-5)% = 95%.
2. KK之后的版本Patch情况。
KK1.MP2 —— Patch ID: ALPS01440736
同样,默认是不做Down Scale的,拿到Patch之后需要修改根据实际情况antI_OVERSCAN_RATIO的值,比如
0.95
php?mod=tag&id=6090" target="_blank" class="relatedlink">Frameworks/base/services/java/com/android/server/display/LogicalDisplay.ja
va
private static final double ANTI_OVERSCAN_RATIO = 1.0;
来源:一牛网论坛