Android视频推流直播学习【二】

现在已经对spydroid的项目有了大致的了解,接着我会分析一些重要的类。
首先是Session类,这个类主要有两个重要成员:AudioStream和VideoStream,通过该类可以初始化音视频流,停止音视频推流,以及获取相关流媒体信息等。在Spydroid的设计中,Session一般不是直接创建的,而是通过SessionBuilder进行创建的。SessionBuilder是一个单例模式的类,通过SessionBuilder我们创建Session对象,AudioStream和VideoStream对象,并且对AudioStream和VideoStream参数进行了初始化设置。代码如下:

Session mSession = SessionBuilder.getInstance()
                .setContext(getApplicationContext())
                .setAudioEncoder(SessionBuilder.AUDIO_AAC)//音频编码格式
                .setAudioQuality(new AudioQuality(8000,16000))//音频参数 采样率
                .setVideoEncoder(SessionBuilder.VIDEO_H264)//视频编码格式
                //视频参数 分辨率1280*720 帧率15 码率1000*1000
                .setVideoQuality(new VideoQuality(1280, 720, 15, 1000*1000))
                .setSurfaceView(mSurfaceView)//用于进行预览展示的SurfaceView
                .setPreviewOrientation(0)urfaceView//Camera方向
                .setCallback(this)//一些监听回调
                .build();

接下来是RtspClient这个类,这个类主要是负责与流媒体服务器进行RTSP协议会话连接,还是首先来看看相关初始化设置吧,这里我们首先设定我们推送的地址为:rtsp://192.168.1.115:554/live.sdp。代码如下:

RtspClient mClient = new RtspClient();
mClient.setSession(mSession);//设置Session
mClient.setCallback(this);  //回调监听
mClient.setServerAddress("192.168.1.115", 554);//服务器的ip和端口号
//这里算是一个标识符,服务器会在连接后创建一个名为live.sdp的文件,所以这里的名字一定要唯一。
mClient.setStreamPath("/live.sdp");
mClient.startStream();//开始推流

暂时就这样吧,下一节具体分析RTSP的会话过程。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值