AnyChat技术支持论坛

标题: Android横竖屏问题(联想A816)【已解决】 [打印本页]

作者: nightkidfifa    时间: 2015-12-2 14:36
标题: Android横竖屏问题(联想A816)【已解决】
本帖最后由 nightkidfifa 于 2015-12-2 16:22 编辑

helloanychat连接 webmeeting 勾选本地视频跟随设备自动旋转,旋转后方向正常,但是竖屏时候视频显示不全,即web上看到的范围比手机上的少一些我在webmeeting的OnAnyChatVideoSizeChange中设置视频窗口是这样设置的。
// 用户视频分辩率发生变化,dwUserId(INT)表示用户ID号,dwResolution(INT)表示用户的视频分辨率组合值(低16位表示宽度,高16位表示高度)
function OnAnyChatVideoSizeChange(dwUserId, dwResolution) {
    var tmp = document.getElementsByName('div_videoarea' + '_' + dwUserId);
    if (tmp.length == 0) {
        return;
    }
    tmp = tmp[0];

    var width = dwResolution & 0x0000ffff;
    var height = dwResolution >> 16;
    //var w1 = tmp.style.width;
    //var h1 = tmp.style.height;

    //if ((width / height) < (w1 / h1)) {
    //    //tmp.style.width = (width * h1) / height + "px";
    //} else {
    //    //tmp.style.height = (w1 * height) / width + "px";
    //}

    tmp.style.width = "";//这里宽高同时设置成500x500, 问题依旧。  android端返回分辨率已经设置为176x144
    tmp.style.height = "";

    AddLog("OnAnyChatVideoSizeChange(dwUserId=" + dwUserId + ", dwResolution=" + width + "x" + height + ")", LOG_TYPE_EVENT);
}

android手机竖屏拿着,看到的是内容是整个测试手机,但web上面只看到半个,并且anchat字符角度也不对





作者: nightkidfifa    时间: 2015-12-2 14:47
本帖最后由 nightkidfifa 于 2015-12-2 15:01 编辑

修改下,web的看到的少一些,手机上是完整的
三星pad旋转也有问题 显示不全, 横屏有问题 竖屏没问题

作者: 佰锐科技-邵光清    时间: 2015-12-2 15:07
本帖最后由 佰锐科技-邵光清 于 2015-12-2 15:17 编辑
nightkidfifa 发表于 2015-12-2 14:47
修改下,web的看到的少一些,手机上是完整的

您好,web看到android端的视频显示不全,跟视频剪切有关,请在AnyChatVideoHelper.java中将 private float max_cut_imgscale = 1.0f/3;改为 private float max_cut_imgscale = 1.0f/1;
是否可以满足要求?
作者: 佰锐科技-李永星    时间: 2015-12-2 15:31
佰锐科技-邵光清 发表于 2015-12-2 15:07
您好,web看到android端的视频显示不全,跟视频剪切有关,请在AnyChatVideoHelper.java中将 private floa ...

您好,这个跟裁剪模式有关,http://bbs.anychat.cn/forum.php?mod=viewthread&tid=1071。您可以在Demo高级设置,其它设置,视频裁剪模式,选择缩小模式。这样可以看全。
作者: 佰锐科技-邵光清    时间: 2015-12-2 15:31
本帖最后由 佰锐科技-邵光清 于 2015-12-2 15:42 编辑
佰锐科技-邵光清 发表于 2015-12-2 15:07
您好,web看到android端的视频显示不全,跟视频剪切有关,请在AnyChatVideoHelper.java中将 private floa ...

您好,上面这个回复有误,修改这个private float max_cut_imgscale是修改本地的视频显示的剪切大小的。

android竖屏的时候,采集的图像比例是3:4,而web显示视频的div比例是4:3,为了使得图像显示不变形并且填满整个div,内核有对图像进行裁剪。 除了裁剪的方式,还提供了缩小模式,可以不进行裁剪,但有黑边。设置缩小模式的代码为
var iVideoClipMode = 2;
BRAC_SetSDKOption(BRAC_SO_VIDEOSHOW_CLIPMODE, iVideoClipMode);

请参考:开放视频显示、录制过程中的裁剪模式控制接口
作者: nightkidfifa    时间: 2015-12-2 16:21
佰锐科技-李永星 发表于 2015-12-2 15:31
您好,这个跟裁剪模式有关,http://bbs.anychat.cn/forum.php?mod=viewthread&tid=1071。您可以在Demo高 ...

谢谢 已经解决
作者: nightkidfifa    时间: 2015-12-2 16:22
佰锐科技-邵光清 发表于 2015-12-2 15:31
您好,上面这个回复有误,修改这个private float max_cut_imgscale是修改本地的视频显示的剪切大小的。
...

谢谢 以及解决




欢迎光临 AnyChat技术支持论坛 (http://bbs.anychat.cn/) Powered by Discuz! X3