直播云

  • 直播云 > 常见问题 > Android 知识库 >Android 推流-录屏状态时获取推流信息

    Android 推流-录屏状态时获取推流信息

    最近更新时间: 2017-03-27 16:44:52

    Q:如何获取录屏推流时的推流信息

    A:在普通推流(MediaStreamingManager)或者连麦推流(RTCMediaStreamingManager),都有 setStreamStatusCallback 方法, 在使用其回调方法 notifyStreamStatusChanged 中的 streamStatus 可以获得帧率码率信息;

    然而录屏推流 ScreenStreamingManager 没有设置该回调的方法,但是根据以上信息我们知道状态信息存在 streamStatus 对象中,而 streamStatus 是 StreamingProfile 的内部类, 所以可以通过以下方法在录屏状态获取推流信息:

    1,将推流配置对象 streamingProfile 设为录屏 Activity 的成员变量,这样在录屏各个生命周期都可以访问该对象;

    2,在推流状态回调的 STREAMING case 中,获取 streamingProfile 的 streamStatus 对象来获得录屏的推流状态。

    public void onStateChanged(StreamingState streamingState, Object extra) {
        Log.i(TAG, "streamingState:" + streamingState);
        switch (streamingState) {
            case STREAMING:
            Log.e(TAG,"bitrate:" + 
            streamingProfile.getStreamStatus().totalAVBitrate / 1024 + " kbps" + 
            "\naudio:" + streamingProfile.getStreamStatus().audioFps + " fps" + 
            "\nvideo:" + streamingProfile.getStreamStatus().videoFps + " fps");
            break;
        }
    }
    
    以上内容是否对您有帮助?
  • Qvm free helper
    Close