android 直播推流sdk,大牛直播Android推流端SDK说明

1 集成说明

确保SmartPublisherJni.java放到com.daniulive.smartpublisher包名下;

Smartavengine.jar加入到工程;

libSmartPublisher.so加入到工程:

static {

System.loadLibrary("SmartPublisher");

}

如需集成到自己系统测试,请用大牛直播的app name:

strings.xml做以下修改:

SmartPublisherSDKDemo

2 调用时序

SmartPublisherInit():初始化SDK:

参数设置:

ctx:上下文信息;

Audio_opt:

0:不发布audio;

1:发布audio;

2:对接外部编码后的audio数据(AAC)

video_opt:

0:不发布video;

1:发布video;

2:对接外部编码后的video数据(H.264)

宽高信息。

2.【Event回调】SetSmartPublisherEventCallback(),设置event callback;

3.【硬编码】SetSmartPublisherVideoHWEncoder(),检测是否支持硬编码,如果返回0,则支持,否则自动采用软编码;

4.【水印】SmartPublisherSetFontWatermark(),设置文字水印;

5.【水印】SmartPublisherSetPictureWatermark(),设置图片水印;

6.【视频配置】SmartPublisherSetGopInterval,设置推送端GOP间隔,一般建议在帧率的1~3倍,如不设置,用底层计算的默认值;

7.【视频配置】SmartPublisherSetSWVideoBitRate,设置software encode video bit-rate,最大码流一般是平均码流的2倍,如不设置,用底层计算的默认值;

8.【视频配置】SmartPublisherSetFPS,设置fps,如不设置,用底层计算的默认值;

9.【视频配置】SmartPublisherSetSWVideoEncoderProfile,设置软编码模式下的video encoder profile,默认baseline profile;

10.【视频裁剪】SmartPublisherSetClippingMode,设置裁剪模式(仅用于640*480分辨率, 裁剪主要用于移动端宽高适配),如不设置,默认裁剪模式;

11.【音频配置】SmartPublisherSetAudioCodecType,设置编码类型,默认AAC编码,type设置为2时,启用speex编码(码流更低);

12.【音频配置】SmartPublisherSetSpeexEncoderQuality,设置speex编码质量,数值越大,质量越高,范围(0,10),默认8;

13.【音频配置】SmartPublisherSetNoiseSuppression,设置噪音抑制,噪音抑制开启后,去除采集端背景杂音;

14.【音频配置】SmartPublisherSetAGC,设置自动增益控制,保持声音稳定;

15.【视频镜像】SmartPublisherSetMirror,镜像模式: 播放端和推送端本地回显方向显示一致;

16.【实时静音】SmartPublisherSetMute(),设置实时静音、取消静音;

17.【录像】SmartPublisherSetRecorder(),设置是否本地录像;

18.【录像】如需本地录像,调用SmartPublisherCreateFileDirectory(),创建录像文件目录;

19.【录像】SmartPublisherSetRecorderDirectory(),设置录像文件目录;

20.【录像】SmartPublisherSetRecorderFileMaxSize(),设置每个录像文件的大小,比如100M,超过这个大小后,会自动生成下一个录像文件;

21.【快照】SmartPublisherSaveImageFlag,设置是否启用快照;

22.【快照】SmartPublisherSaveCurImage,推送或录像过程中,根据设置路径和文件名,实时快照;

23.SetRtmpPublishingType(), 设置rtmp publisher类型,0:live,1:record。

24.SmartPublisherStartPublish(),开始推流;

25.SmartPublisherOnCaptureVideoData(),传递实时采集的video数据;

26.【第三方编码前数据】SmartPublisherOnCaptureVideoI420Data(),第三方YUV(I420)接口;

27.【第三方编码前数据】SmartPublisherOnCaptureVideoRGBAData(),第三方RGBA接口;

28.【第三方编码前数据】SmartPublisherOnCaptureVideoABGRFlipVerticalData(), 设置ABGR flip vertical(垂直翻转) data;

29.【第三方编码后数据】SmartPublisherOnReceivingVideoEncodedData(),第三方编码后视频数据接口;

30.【第三方编码后数据】SmartPublisherSetAudioSpecificConfig(),第三方音频参数设置接口;

31.【第三方编码后数据】SmartPublisherOnReceivingAACData(),第三方编码后视频数据接口;

32.SmartPublisherStopPublish():停止推流;

/* 增加新接口是为了把推送和录像分离, 老的接口依然可用(SmartPublisherStart, SmartPublisherStop),

* 但是不要老接口和新接口混着用,这样结果是未定义的

*/

33.【录像和推流分离接口】SmartPublisherStartPublisher,只推流;

34.【录像和推流分离接口】SmartPublisherStopPublisher,关闭推流;

35.【录像和推流分离接口】SmartPublisherStartRecorder,只录像;

36.【录像和推流分离接口】SmartPublisherStopRecorder,停止录像。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值