Android旧API升级至新API
[TOC]
一、旧API删除,请用新API代替
旧API | 新API |
---|---|
Camera.registerIOTCListener | Camera.TK_registerIOTCListener |
Camera.getIOTCamerVersion | Camera.TK_getIOTCameraVersion |
Camera.SearchLAN | Camera.TK_LanSearch |
Camera.connect | Camera.TK_connect |
Camera.start | Camera.TK_start |
Camera.disconnect | Camera.TK_disconnect |
Camera.stop | Camera.TK_stop |
Camera.isSessionConnected | Camera.TK_isSessionConnected |
Camera.isChannelConnected | Camera.TK_isChannelConnected |
Camera.startShow | Camera.TK_startShow |
Camera.startShowWithYUV | Camera.TK_startShow |
Camera.startShowWithRGB | Camera.TK_startShow |
Camera.stopShow | Camera.TK_stopShow |
Camera.getVideoCodecId | Camera.TK_getVideoCodecId |
Camera.startSpeaking | Camera.TK_startSoundToDevice |
Camera.stopSpeaking | Camera.TK_stopSoundToDevice |
Camera.startListening | Camera.TK_startSoundToPhone |
Camera.stopListening | Camera.TK_stopSoundToPhone |
Camera.startAcousticEchoCanceler | Camera.TK_startAcousticEchoCanceler |
Camera.stopAcousticEchoCanceler | Camera.TK_stopAcousticEchoCanceler |
Camera.setAudioInputCodecId | Camera.TK_setAudioInputCodecId |
Camera.getAudioInputCodecId | Camera.TK_getAudioInputCodecId |
Camera.getAudioOutputCodecId | Camera.TK_getAudioOutputCodecId |
Camera.startRecording | Camera.TK_startRecording |
Camera.startRecordingWithoutAudio | Camera.TK_startRecording |
Camera.stopRecording | Camera.TK_stopRecording |
Camera.sendIOCtrl | Camera.TK_sendIOCtrlToChannel |
Camera.removeAllCmd | Camera.TK_removeAllCmd |
Camera.getAVChannelCount | Camera.TK_getAVChannelCount |
Camera.getChannelServiceType | Camera.TK_getServiceTypeOfChannel |
Camera.getMSID | Camera.getSID |
Camera.TK_playAecAudio | Camera.TK_playAudio |
Camera.TK_sendAecAudio | Camera.TK_sendAudio |
Camera.TK_isAudioOutput | Camera.TK_setAudioOutput |
二、初始化API修改
请使用TK_initIOTC(Context context, String privateKey, String sdkLicenseKey, TK_Listener listener)进行sdk的初始化,请使用TK_unInitIOTC()进行sdk的反初始化。 删除了其它初始化api,具体修改如下:
- 删除init(Context context)
- 删除init(Context context, String company)
- 删除TK_initIOTC()
- 删除TK_initIOTC(String company)
- 删除TK_initIOTC(Context context, String privateKey, TK_Listener listener)
- 删除TK_initIOTCWithLicenseKey(Context context, String privateKey, String sdkLicensekey, TK_Listener listener)
- 删除TK_initIOTC(String company)
- 删除uninit()
三、连线API修改
请使用Camera.TK_connect进行设备连线,使用Camera.TK_start进行AV通道的连线。与旧API相比,新API修改参数,单独连线仅需UID,开通道才需要password。 具体修改如下:
- 修改参数,Camera.TK_connect(String uid, String viewAccount, String viewPasswd) ====> Camera.TK_connect(String uid) 或者 Camera.TK_connect(String uid, String authKey)
- 修改参数,Camera.TK_start(int avChannel) ====> Camera.TK_start(int avChannel, String password)
- 修改参数,Camera.TK_start(int avChannel, int authType) ====> Camera.TK_start(int avChannel, String password, String account, Camera.AuthType type, Camera.SecurityMode mode)
- 删除Camera.TK_setDtls,若想使用Dtls方式进行连线,请使用Camera.TK_start(int avChannel, String password, String account, Camera.AuthType type, Camera.SecurityMode mode)
四、视频流API修改
请使用TK_startShow(int avChannel)开启视频流。 若想获取视频数据,请使用Camera.TK_registerMediaDataListener。 具体修改如下:
- 删除Camera.TK_startShowWithYUV,若想获取解码后的yuv数据,请使用TK_startShow(int avChannel, boolean runSoftwareDecode, boolean isDropFrame, boolean isRender, Camera.RenderType type)代替
- 删除Camera.TK_startShowWithRGB,若想获取解码后的rgb数据,请使用TK_startShow(int avChannel, boolean runSoftwareDecode, boolean isDropFrame, boolean isRender, Camera.RenderType type)代替
- 删除Camera.TK_startRecvFrame/Camera.TK_stopRecvFrame,若想仅获取设备视频流,无需进行解码渲染,请使用TK_startShow(int avChannel, boolean runSoftwareDecode, boolean isDropFrame, boolean isRender, Camera.RenderType type)代替
五、音频流API修改
请使用TK_startSoundToPhone(int avChannel)开启音频流。与旧API相比,新API将isListener参数更改为isDecodeAndPlay。 若想获取音频数据,请使用Camera.TK_registerMediaDataListener。 具体修改如下:
- 修改参数,Camera.startSoundToPhone(int avChannel, boolean isListener) ====> Camera.startSoundToPhone(int avChannel, boolean isDecodeAndPlay),底层自动判断音频是否需要播放,isListener参数更改为isDecodeAndPlay,表示是否需要进行解码播放
- 删除Camera.TK_startRecvAudio/Camera.TK_stopRecvAudio。若想仅获取设备传过来的音频,无需进行解码播放,请使用Camera.startSoundToPhone(int avChannel, boolean isDecodeAndPlay)代替
六、截图API修改
请使用Camera.TK_snapshot(int channel, String filePath, long bitmapPixels)进行截图。 具体修改如下:
- 删除Camera.setSnapshot/Camera.SetCameraListener
- 删除Camera.TK_setSnapshot/Camera.TK_setCameraListener
- 删除Camera.TK_snapshotByCurrentBitmap
七、录像API修改
请使用 Camera.TK_startRecording(int channel, String path)进行录像,底层不再限制录像时长,并自动判断是否需要录制音频。 具体修改如下:
- 删除Camera.TK_startRecordingForChannel
- 删除Camera.TK_startRecordingWithoutAudio
八、播放器修改
请使用软/硬解码请统一使用com.tutk.IOTC.VideoMonitor,旧播放器将被删除。 使用TK_setMonitorListener来获取播放器的事件回调。 具体修改如下:
- 删除com.tutk.IOTC.Monitor
- 删除com.tutk.IOTC.MediaCodecMonitor
- 删除com.tutk.IOTC.MediaCodecMonitor_MPEG4
- 删除com.tutk.IOTC.NewMediaCodecMonitor
九、音视频数据接口修改
新增Camera.TK_registerMediaDataListener/Camera.TK_unregisterMediaDataListener来获取音视频数据,删除其它获取音视频数据的Api。 删除API如下:
-
获取视频接收原始数据回调 Camera.TK_registerVideoDataListeners/Camera.TK_unregisterVideoDataListeners
-
获取视频接收原始数据回调 Camera.registerVideoDataListeners/Camera.unregisterVideoDataListeners
-
获取音频接收原始数据回调 Camera.TK_registerAudioListener/Camera.TK_unregisterAudioListener
-
获取音频接收原始数据回调 Camera.registerAudioListener/Camera.unregisterAudioListener
-
硬解码视频接收原始数据回调 Camera.TK_registerFrameInfoListener/Camera.TK_unRegisterFrameInfoListener Camera.registerFrameInfoListener/Camera.unRegisterFrameInfoListener
-
视频解码信息回调 Camera.setOnDecodeListener Camera.TK_setOnDecodeListener
-
YUV数据获取 Camera.TK_registerYuvListener/Camera.TK_unRegisterYuvListener
-
RGB数据获取 Camera.TK_registerRgbListener/Camera.TK_unRegisterRgbListener
-
软/硬解码数据回调 InterfaceCtrl.IRegisterIOTCListener.receiveFrameData InterfaceCtrl.IRegisterIOTCListener.receiveFrameDataForMediaCodec InterfaceCtrl.IOTCListener.receiveFrameData InterfaceCtrl.IOTCListener.receiveFrameDataForMediaCodec
- 视频帧率(fps)、比特率(bps)等调试信息回调 InterfaceCtrl.IRegisterIOTCListener.receiveFrameInfo InterfaceCtrl.IOTCListener.receiveFrameInfo
十、IOTC回调接口修改
> 原IRegisterIOTCListener,现IOTCListener
修改接口名称,修改接口中的参数,删除debug回调。具体修改如下:
- 修改名称,IRegisterIOTCListener ====> 修改为 IOTCListener
- 修改名称,SimpleIRegisterIOTCListener ====> 修改为 SimpleIOTCListener
- 修改回调参数,receiveSessionInfo(Camera camera, int resultCode) ====> receiveSessionInfo(Camera camera, int resultCode, int p2pCode)
- 修改回调参数,receiveChannelInfo(Camera camera, int avChannel, int resultCode) ====> receiveChannelInfo(Camera camera, int avChannel, int resultCode, int p2pCode)
- 删除debugSessionInfo,请使用receiveSessionInfo代替
- 删除debugChannelInfo,请使用receiveChannelInfo代替
- 修改回调名称, receiveIOCtrlData ====> sendIOCtrlData, 更能符合API意义
- 修改回调名称, receiveJsonIOCtrlData ====> sendJsonIOCtrlData, 更能符合API意义
- 修改回调名称, retStartListen ====> receiveSoundToPhone, 更能符合API意义
- 修改回调名称, retStartChannel ====> receiveSoundToDevice, 更能符合API意义