WebRTC-Android边直播边录像

前言

该文章面向对WebRTC有一定基础的码农,如果完全没了解过WebRTC的朋友,可以点赞并私信我进行一对一辅导哦。

WebRTC-Android SDK自带的实现方式

其实WebRTC已经提供了一个org.webrtc.VideoFileRenderer.java的渲染器,专门用于把画面数据存储到本地文件,该渲染器与SurfaceViewRenderer.java一样实现了VideoSink接口。

通过VideoTrack.addSink(VideoSink sink)方法把渲染器添加到画面轨道中,即开始录制画面。
通过VideoTrack.removeSink(VideoSink sink)方法可把渲染器从画面轨道中移除,即停止录制画面。

mStartRecordBtn.setOnClickListener(new View.OnClickListener() {
   
    @Override
    public void onClick(View v) {
   
        // 开始录制
        String filePath = getExternalFilesDir(null).getAbsolutePath() + File.separator + System.currentTimeMillis() + ".y4m";
        try {
   
            mVideoFileRenderer = new VideoFileRenderer(filePath, 480, 640, mEglContext);
        } catch (IOException e) {
   
            e.printStackTrace();
            mVideoFileRenderer = null;
            return;
        }
        mVideoTrack.addSink(mVideoFileRenderer);
    }
});

mStopRecordBtn.setOnClick
  • 5
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值