Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

手机视频聊天特别模糊 #2

Open
gengyan2011302978 opened this issue May 9, 2018 · 2 comments
Open

手机视频聊天特别模糊 #2

gengyan2011302978 opened this issue May 9, 2018 · 2 comments

Comments

@gengyan2011302978
Copy link

您好,我想请问下,我按照CallManager里面的配置设置的,设置的参数在下面,为什么手机视频聊天的时候接收到的画面特别模糊,改变这个方法里的参数也没用EMClient.getInstance().callManager().getCallOptions().setVideoResolution(640, 480),还有其他地方需要配置吗?

   // 初始化音频池
    initSoundPool();
    // 音频管理器
    audioManager = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);

    /**
     * SDK 3.2.x 版本后通话相关设置,一定要在初始化后,开始音视频功能前设置,否则设置无效
     */
    // 设置通话过程中对方如果离线是否发送离线推送通知,默认 false,这里需要和推送配合使用
    EMClient.getInstance().callManager().getCallOptions().setIsSendPushIfOffline(true);
    /**
     * 设置是否启用外部输入视频数据,默认 false,如果设置为 true,需要自己调用
     * {@link EMCallManager#inputExternalVideoData(byte[], int, int, int)}输入视频数据
     */
    EMClient.getInstance().callManager().getCallOptions().setEnableExternalVideoData(false);
    // 设置视频旋转角度,启动前和视频通话中均可设置
    //EMClient.getInstance().callManager().getCallOptions().setRotation(90);
    // 设置自动调节分辨率,默认为 true
    EMClient.getInstance().callManager().getCallOptions().enableFixedVideoResolution(true);
    /**
     * 设置视频通话最大和最小比特率,可以不用设置,比特率会根据分辨率进行计算,默认最大        (800), 默认最小(80)
     * 这里的带宽是指理想带宽,指单人单线情况下的最低要求
     * >240p: 100k ~ 400kbps
     * >480p: 300k ~ 1Mbps
     * >720p: 900k ~ 2.5Mbps
     * >1080p: 2M  ~ 5Mbps
     */
    EMClient.getInstance().callManager().getCallOptions().setMaxVideoKbps(800);
    EMClient.getInstance().callManager().getCallOptions().setMinVideoKbps(80);
    // 设置视频通话分辨率 默认是(640, 480)
    EMClient.getInstance().callManager().getCallOptions().setVideoResolution(640, 480);
    // 设置通话最大帧率,SDK 最大支持(30),默认(20)
    EMClient.getInstance().callManager().getCallOptions().setMaxVideoFrameRate(30);
    // 设置音视频通话采样率,一般不需要设置,为了减少噪音,可以讲采集了适当调低,这里默认设置32k
    EMClient.getInstance().callManager().getCallOptions().setAudioSampleRate(32000);
    // 设置录制视频采用 mov 编码 TODO 后期这个而接口需要移动到 EMCallOptions 中
    EMClient.getInstance().callManager().getVideoCallHelper().setPreferMovFormatEnable(true);
@gengyan2011302978
Copy link
Author

手机和电脑视频通话,一开始手机打开的时候还挺清楚的,电脑端摄像头的画面不动没事,手机可以看清楚,只有电脑端画面一动,手机接收的画面就变的特别模糊了,请问是怎么回事

@lzan13
Copy link
Owner

lzan13 commented May 10, 2018

视频通话的分辨率这些都是动态调整的,这些和你当前网络,分辨率,码率这些相关,运动的画面比静止的画面耗费的带宽高

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants