Tuya iOS Smart Life App SDK 5.15.0
<ThingSmartCameraDelegate> Protocol Reference

#import <ThingSmartCameraType.h>

Inheritance diagram for <ThingSmartCameraDelegate>:
<ThingSmartWiFiLockDeviceDelegate> <ThingSmartWiFiLockDeviceDelegate>

Instance Methods

(void) - cameraInitFailed:
 
(void) - cameraDidConnected:
 
(void) - cameraDisconnected:
 
(void) - cameraDisconnected:specificErrorCode:
 
(void) - cameraDidConnectPlaybackChannel:
 
(void) - cameraDidBeginPreview:
 
(void) - cameraDidStopPreview:
 
(void) - cameraDidBeginPlayback:
 
(void) - cameraDidPausePlayback:
 
(void) - cameraDidResumePlayback:
 
(void) - cameraDidStopPlayback:
 
(void) - cameraPlaybackDidFinished:
 
(void) - camera:playbackDidFinishedWithStatus:
 
(void) - camera:playbackTimeSlice:didFinishedWithStatus:
 
(void) - camera:didReceiveFirstFrame:
 
(void) - camera:didReceiveFirstFrame:videoExtInfo:
 
(void) - camera:didReceiveLocalVideoFirstFrame:localVideoInfo:
 
(void) - cameraDidBeginTalk:
 
(void) - cameraDidStopTalk:
 
(void) - cameraDidStartVideoTalk:
 
(void) - cameraDidStopVideoTalk:
 
(void) - cameraDidPauseVideoTalk:
 
(void) - cameraDidResumeVideoTalk:
 
(void) - cameraSnapShootSuccess:
 
(void) - cameraDidStartRecord:
 
(void) - cameraDidStopRecord:
 
(void) - camera:didReceiveDefinitionState:
 
(void) - camera:definitionChanged:
 
(void) - camera:didReceiveEventListSiftData:eventIds:
 
(void) - camera:didReceiveRecordDayQueryData:
 
(void) - camera:didReceiveTimeSliceQueryData:
 
(void) - camera:didReceiveMuteState:playMode:
 
(void) - camera:didOccurredError:
 
(void) - camera:didOccurredErrorAtStep:specificErrorCode:
 
(void) - camera:didOccurredErrorAtStep:specificErrorCode:extErrorCodeInfo:
 
(void) - camera:resolutionDidChangeWidth:height:
 
(void) - camera:resolutionDidChangeWithVideoExtInfo:
 
(void) - camera:thing_didReceiveFrameData:dataSize:frameInfo:
 
(void) - camera:thing_didReceiveVideoFrame:frameInfo:
 
(void) - camera:didReceiveLocalVideoSampleBuffer:localVideoInfo:
 
(void) - camera:thing_didRecieveAudioRecordDataWithPCM:length:sampleRate:
 
(void) - camera:thing_didSpeedPlayWithSpeed:
 
(void) - camera:thing_didEventReceivedEventType:errorCode:intValue:strValue:
 
(void) - cameraInitFailed:
 
(void) - cameraDidConnected:
 
(void) - cameraDisconnected:
 
(void) - cameraDisconnected:specificErrorCode:
 
(void) - cameraDidConnectPlaybackChannel:
 
(void) - cameraDidBeginPreview:
 
(void) - cameraDidStopPreview:
 
(void) - cameraDidBeginPlayback:
 
(void) - cameraDidPausePlayback:
 
(void) - cameraDidResumePlayback:
 
(void) - cameraDidStopPlayback:
 
(void) - cameraPlaybackDidFinished:
 
(void) - camera:playbackDidFinishedWithStatus:
 
(void) - camera:playbackTimeSlice:didFinishedWithStatus:
 
(void) - camera:didReceiveFirstFrame:
 
(void) - camera:didReceiveFirstFrame:videoExtInfo:
 
(void) - camera:didReceiveLocalVideoFirstFrame:localVideoInfo:
 
(void) - cameraDidBeginTalk:
 
(void) - cameraDidStopTalk:
 
(void) - cameraDidStartVideoTalk:
 
(void) - cameraDidStopVideoTalk:
 
(void) - cameraDidPauseVideoTalk:
 
(void) - cameraDidResumeVideoTalk:
 
(void) - cameraSnapShootSuccess:
 
(void) - cameraDidStartRecord:
 
(void) - cameraDidStopRecord:
 
(void) - camera:didReceiveDefinitionState:
 
(void) - camera:definitionChanged:
 
(void) - camera:didReceiveEventListSiftData:eventIds:
 
(void) - camera:didReceiveRecordDayQueryData:
 
(void) - camera:didReceiveTimeSliceQueryData:
 
(void) - camera:didReceiveMuteState:playMode:
 
(void) - camera:didOccurredError:
 
(void) - camera:didOccurredErrorAtStep:specificErrorCode:
 
(void) - camera:didOccurredErrorAtStep:specificErrorCode:extErrorCodeInfo:
 
(void) - camera:resolutionDidChangeWidth:height:
 
(void) - camera:resolutionDidChangeWithVideoExtInfo:
 
(void) - camera:thing_didReceiveFrameData:dataSize:frameInfo:
 
(void) - camera:thing_didReceiveVideoFrame:frameInfo:
 
(void) - camera:didReceiveLocalVideoSampleBuffer:localVideoInfo:
 
(void) - camera:thing_didRecieveAudioRecordDataWithPCM:length:sampleRate:
 
(void) - camera:thing_didSpeedPlayWithSpeed:
 
(void) - camera:thing_didEventReceivedEventType:errorCode:intValue:strValue:
 

Detailed Description

Definition at line 53 of file ThingSmartCameraType.h.

Method Documentation

◆ camera:definitionChanged: [1/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
definitionChanged: (ThingSmartCameraDefinition)  definition 
optional

◆ camera:definitionChanged: [2/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
definitionChanged: (ThingSmartCameraDefinition)  definition 
optional

◆ camera:didOccurredError: [1/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
didOccurredError: ("Use camera:didOccurredErrorAtStep:specificErrorCode: instead")  __deprecated_msg 
optional

[^en] the control of camera has occurred an error [$en]

[^zh] camera控制出现了错误 [$zh]

Parameters
cameracamera
errCode[^en]reference the ThingCameraErrorCode[$en] [^zh]具体参考ThingCameraErrorCode[$zh]

◆ camera:didOccurredError: [2/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
didOccurredError: ("Use camera:didOccurredErrorAtStep:specificErrorCode: instead")  __deprecated_msg 
optional

[^en] the control of camera has occurred an error [$en]

[^zh] camera控制出现了错误 [$zh]

Parameters
cameracamera
errCode[^en]reference the ThingCameraErrorCode[$en] [^zh]具体参考ThingCameraErrorCode[$zh]

◆ camera:didOccurredErrorAtStep:specificErrorCode: [1/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
didOccurredErrorAtStep: (ThingCameraErrorCode errStepCode
specificErrorCode: (NSInteger)  errorCode 
optional

[^en] the control of camera has occurred an error with specific reason code [$en]

[^zh] camera 控制出现了一个错误,附带错误码 [$zh]

Parameters
cameracamera
errStepCode[^en]reference the ThingCameraErrorCode[$en] [^zh]具体参考 ThingCameraErrorCode [$zh]
errorCode[^en]errorCode reference ThingCameraSDK.framework/ThingDefines[$en] [^zh]具体参考ThingCameraSDK.framework/ThingDefines[$zh]

◆ camera:didOccurredErrorAtStep:specificErrorCode: [2/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
didOccurredErrorAtStep: (ThingCameraErrorCode errStepCode
specificErrorCode: (NSInteger)  errorCode 
optional

[^en] the control of camera has occurred an error with specific reason code [$en]

[^zh] camera 控制出现了一个错误,附带错误码 [$zh]

Parameters
cameracamera
errStepCode[^en]reference the ThingCameraErrorCode[$en] [^zh]具体参考 ThingCameraErrorCode [$zh]
errorCode[^en]errorCode reference ThingCameraSDK.framework/ThingDefines[$en] [^zh]具体参考ThingCameraSDK.framework/ThingDefines[$zh]

◆ camera:didOccurredErrorAtStep:specificErrorCode:extErrorCodeInfo: [1/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
didOccurredErrorAtStep: (ThingCameraErrorCode errStepCode
specificErrorCode: (NSInteger)  errorCode
extErrorCodeInfo: (id< ThingSmartCameraExtErrorCodeInfo >)  extErrorCodeInfo 
optional

[^en] the control of camera has occurred an error with specific reason code, add detail codes,First priority. [$en]

[^zh] camera 控制出现了一个错误,附带错误码, 补充详细错误码,优先执行 [$zh]

Parameters
cameracamera
errStepCode[^en]reference the ThingCameraErrorCode[$en] [^zh]具体参考 ThingCameraErrorCode [$zh]
errorCode[^en]errorCode reference ThingCameraSDK.framework/ThingDefines[$en] [^zh]具体参考ThingCameraSDK.framework/ThingDefines[$zh]
extErrorCodeInfo[^en]ext error code info contains the detail error code, see https://developer.tuya.com/cn/docs/app-development/errors?id=Ka5vox6hitq8d[$en] [^zh]具体参考https://developer.tuya.com/cn/docs/app-development/errors?id=Ka5vox6hitq8d[$zh]

◆ camera:didOccurredErrorAtStep:specificErrorCode:extErrorCodeInfo: [2/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
didOccurredErrorAtStep: (ThingCameraErrorCode errStepCode
specificErrorCode: (NSInteger)  errorCode
extErrorCodeInfo: (id< ThingSmartCameraExtErrorCodeInfo >)  extErrorCodeInfo 
optional

[^en] the control of camera has occurred an error with specific reason code, add detail codes,First priority. [$en]

[^zh] camera 控制出现了一个错误,附带错误码, 补充详细错误码,优先执行 [$zh]

Parameters
cameracamera
errStepCode[^en]reference the ThingCameraErrorCode[$en] [^zh]具体参考 ThingCameraErrorCode [$zh]
errorCode[^en]errorCode reference ThingCameraSDK.framework/ThingDefines[$en] [^zh]具体参考ThingCameraSDK.framework/ThingDefines[$zh]
extErrorCodeInfo[^en]ext error code info contains the detail error code, see https://developer.tuya.com/cn/docs/app-development/errors?id=Ka5vox6hitq8d[$en] [^zh]具体参考https://developer.tuya.com/cn/docs/app-development/errors?id=Ka5vox6hitq8d[$zh]

◆ camera:didReceiveDefinitionState: [1/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
didReceiveDefinitionState: ("Use camera:definitionChanged: instead")  __deprecated_msg 
optional

[^en] did receive definition state. will call when 'getHD' success or the definition has changed. [$en]

[^zh] 收到视频清晰度状态,方法会在 'getHD' 成功 或者清晰度改变的时候被调用 [$zh]

Parameters
cameracamera
isHd[^en]is high definition[$en] [^zh]是否为高清[$zh]

◆ camera:didReceiveDefinitionState: [2/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
didReceiveDefinitionState: ("Use camera:definitionChanged: instead")  __deprecated_msg 
optional

[^en] did receive definition state. will call when 'getHD' success or the definition has changed. [$en]

[^zh] 收到视频清晰度状态,方法会在 'getHD' 成功 或者清晰度改变的时候被调用 [$zh]

Parameters
cameracamera
isHd[^en]is high definition[$en] [^zh]是否为高清[$zh]

◆ camera:didReceiveEventListSiftData:eventIds: [1/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
didReceiveEventListSiftData: (NSArray< NSString * > *)  titles
eventIds: (NSArray< NSNumber * > *)  eventIds 
optional

[^en] called when query data of the playback event list sift success. [$en]

[^zh] 方法会在请求回放事件筛选列表成功后调用 [$zh]

Parameters
cameracamera
titles[^en]the array of title,ex: [@(Message left), "Call"]; [$en] [^zh]标题的数组, ex: [@"有人留言", @"有人呼叫";[$zh] @param eventIds [^en]the array of eventIds,ex: [@(1), @"2"]; [$en] [^zh]事件id的数组, ex: [@(1), @(2)];[$zh]

◆ camera:didReceiveEventListSiftData:eventIds: [2/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
didReceiveEventListSiftData: (NSArray< NSString * > *)  titles
eventIds: (NSArray< NSNumber * > *)  eventIds 
optional

[^en] called when query data of the playback event list sift success. [$en]

[^zh] 方法会在请求回放事件筛选列表成功后调用 [$zh]

Parameters
cameracamera
titles[^en]the array of title,ex: [@(Message left), "Call"]; [$en] [^zh]标题的数组, ex: [@"有人留言", @"有人呼叫";[$zh] @param eventIds [^en]the array of eventIds,ex: [@(1), @"2"]; [$en] [^zh]事件id的数组, ex: [@(1), @(2)];[$zh]

◆ camera:didReceiveFirstFrame: [1/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
didReceiveFirstFrame: (UIImage *)  image 
optional

[^en] receive first video frame this method will call when every 'startPreview/startPlayback/resumePlayback' sucess. [$en] 收到的第一帧视频 此方法将会在每一次 'startPreview/startPlayback/resumePlayback' 成功时被调用 [^zh]

[$zh]

Parameters
cameracamera
image[^en]fisrt frame image[$en] [^zh]第一帧图片[$zh]

◆ camera:didReceiveFirstFrame: [2/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
didReceiveFirstFrame: (UIImage *)  image 
optional

[^en] receive first video frame this method will call when every 'startPreview/startPlayback/resumePlayback' sucess. [$en] 收到的第一帧视频 此方法将会在每一次 'startPreview/startPlayback/resumePlayback' 成功时被调用 [^zh]

[$zh]

Parameters
cameracamera
image[^en]fisrt frame image[$en] [^zh]第一帧图片[$zh]

◆ camera:didReceiveFirstFrame:videoExtInfo: [1/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
didReceiveFirstFrame: (UIImage *)  image
videoExtInfo: (id< ThingSmartVideoExtInfo >)  videoExtInfo 
optional

◆ camera:didReceiveFirstFrame:videoExtInfo: [2/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
didReceiveFirstFrame: (UIImage *)  image
videoExtInfo: (id< ThingSmartVideoExtInfo >)  videoExtInfo 
optional

◆ camera:didReceiveLocalVideoFirstFrame:localVideoInfo: [1/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
didReceiveLocalVideoFirstFrame: (UIImage *)  image
localVideoInfo: (id< ThingSmartLocalVideoInfoType >)  localVideoInfo 
optional

[^en] local camera receive first video frame this method will call when 'startLocalVideoCaptureWithVideoInfo' sucess. [$en] 收到的本地摄像头的第一帧视频 此方法将会在 'startLocalVideoCaptureWithVideoInfo' 成功时被调用 [^zh]

[$zh]

Parameters
cameracamera
image[^en]fisrt frame image[$en] [^zh]第一帧图片[$zh]
localVideoInfo[^en] local video info [$en] [^zh]本地视频信息[$zh]

◆ camera:didReceiveLocalVideoFirstFrame:localVideoInfo: [2/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
didReceiveLocalVideoFirstFrame: (UIImage *)  image
localVideoInfo: (id< ThingSmartLocalVideoInfoType >)  localVideoInfo 
optional

[^en] local camera receive first video frame this method will call when 'startLocalVideoCaptureWithVideoInfo' sucess. [$en] 收到的本地摄像头的第一帧视频 此方法将会在 'startLocalVideoCaptureWithVideoInfo' 成功时被调用 [^zh]

[$zh]

Parameters
cameracamera
image[^en]fisrt frame image[$en] [^zh]第一帧图片[$zh]
localVideoInfo[^en] local video info [$en] [^zh]本地视频信息[$zh]

◆ camera:didReceiveLocalVideoSampleBuffer:localVideoInfo: [1/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
didReceiveLocalVideoSampleBuffer: (CMSampleBufferRef)  sampleBuffer
localVideoInfo: (id< ThingSmartLocalVideoInfoType >)  localVideoInfo 
optional

[^en] the device's local camera capture video streams [$en]

[^zh] 手机摄像头捕捉的视频 [$zh]

Parameters
cameracamera
sampleBuffer[^en]video frame YUV data[$en] [^zh]YUV 视频帧数据[$zh]
localVideoInfo[^en] local video info [$en] [^zh]本地视频信息[$zh]

◆ camera:didReceiveLocalVideoSampleBuffer:localVideoInfo: [2/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
didReceiveLocalVideoSampleBuffer: (CMSampleBufferRef)  sampleBuffer
localVideoInfo: (id< ThingSmartLocalVideoInfoType >)  localVideoInfo 
optional

[^en] the device's local camera capture video streams [$en]

[^zh] 手机摄像头捕捉的视频 [$zh]

Parameters
cameracamera
sampleBuffer[^en]video frame YUV data[$en] [^zh]YUV 视频帧数据[$zh]
localVideoInfo[^en] local video info [$en] [^zh]本地视频信息[$zh]

◆ camera:didReceiveMuteState:playMode: [1/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
didReceiveMuteState: (BOOL)  isMute
playMode: (ThingSmartCameraPlayMode)  playMode 
optional

[^en] did receive mute state. will call when 'enableMute:' success. default is YES. [$en]

[^zh] 收到静音状态,方法会在 'enableMute:' 成功之后被调用,默认为 YES [$zh]

Parameters
cameracamera
isMute[^en]is muted[$en] [^zh]是否为静音[$zh]

◆ camera:didReceiveMuteState:playMode: [2/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
didReceiveMuteState: (BOOL)  isMute
playMode: (ThingSmartCameraPlayMode)  playMode 
optional

[^en] did receive mute state. will call when 'enableMute:' success. default is YES. [$en]

[^zh] 收到静音状态,方法会在 'enableMute:' 成功之后被调用,默认为 YES [$zh]

Parameters
cameracamera
isMute[^en]is muted[$en] [^zh]是否为静音[$zh]

◆ camera:didReceiveRecordDayQueryData: [1/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
didReceiveRecordDayQueryData: (NSArray< NSNumber * > *)  days 
optional

[^en] called when query date of the playback record success. [$en]

[^zh] 方法会在按日期查询回放视频数据成功后被调用 [$zh]

Parameters
cameracamera
days[^en]the array of days,ex: [@(1), @(2), @(5), @(6), @(31)]; express in this month, 1,2,5,6,31 has video record.[$en] [^zh]日期的数组, ex: [@(1), @(2), @(5), @(6), @(31)]; 代表这个月中的 1,2,5,6,31 号有视频录制数据[$zh]

◆ camera:didReceiveRecordDayQueryData: [2/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
didReceiveRecordDayQueryData: (NSArray< NSNumber * > *)  days 
optional

[^en] called when query date of the playback record success. [$en]

[^zh] 方法会在按日期查询回放视频数据成功后被调用 [$zh]

Parameters
cameracamera
days[^en]the array of days,ex: [@(1), @(2), @(5), @(6), @(31)]; express in this month, 1,2,5,6,31 has video record.[$en] [^zh]日期的数组, ex: [@(1), @(2), @(5), @(6), @(31)]; 代表这个月中的 1,2,5,6,31 号有视频录制数据[$zh]

◆ camera:didReceiveTimeSliceQueryData: [1/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
didReceiveTimeSliceQueryData: (NSArray< NSDictionary * > *)  timeSlices 
optional

[^en] called when query video record slice of one day success. [$en]

[^zh] 方法将会在查询一天内视频回放片段数据成功后被调用 [$zh]

Parameters
cameracamera
timeSlices[^en]the array of playback video record information. the element is a NSDictionary, content like this: kThingSmartPlaybackPeriodStartDate : startTime(NSDate) kThingSmartPlaybackPeriodStopDate : stopTime(NSDate) kThingSmartPlaybackPeriodStartTime : startTime(NSNumer, unix timestamp) kThingSmartPlaybackPeriodStopTime : stopTime(NSNumer, unix timestamp)[$en] [^zh]回放视频数据信息数组,数组内元素为NSDictionary类型,如下: kThingSmartPlaybackPeriodStartDate : startTime(NSDate) kThingSmartPlaybackPeriodStopDate : stopTime(NSDate) kThingSmartPlaybackPeriodStartTime : startTime(NSNumer, unix timestamp) kThingSmartPlaybackPeriodStopTime : stopTime(NSNumer, unix timestamp)[$zh]

◆ camera:didReceiveTimeSliceQueryData: [2/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
didReceiveTimeSliceQueryData: (NSArray< NSDictionary * > *)  timeSlices 
optional

[^en] called when query video record slice of one day success. [$en]

[^zh] 方法将会在查询一天内视频回放片段数据成功后被调用 [$zh]

Parameters
cameracamera
timeSlices[^en]the array of playback video record information. the element is a NSDictionary, content like this: kThingSmartPlaybackPeriodStartDate : startTime(NSDate) kThingSmartPlaybackPeriodStopDate : stopTime(NSDate) kThingSmartPlaybackPeriodStartTime : startTime(NSNumer, unix timestamp) kThingSmartPlaybackPeriodStopTime : stopTime(NSNumer, unix timestamp)[$en] [^zh]回放视频数据信息数组,数组内元素为NSDictionary类型,如下: kThingSmartPlaybackPeriodStartDate : startTime(NSDate) kThingSmartPlaybackPeriodStopDate : stopTime(NSDate) kThingSmartPlaybackPeriodStartTime : startTime(NSNumer, unix timestamp) kThingSmartPlaybackPeriodStopTime : stopTime(NSNumer, unix timestamp)[$zh]

◆ camera:playbackDidFinishedWithStatus: [1/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
playbackDidFinishedWithStatus: (NSInteger)  status 
optional

[^en] the record video in the SD card playback finished [$en]

[^zh] 摄像头SD卡视频回放结束时状态 [$zh]

Parameters
cameracamera
statusfinished status

◆ camera:playbackDidFinishedWithStatus: [2/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
playbackDidFinishedWithStatus: (NSInteger)  status 
optional

[^en] the record video in the SD card playback finished [$en]

[^zh] 摄像头SD卡视频回放结束时状态 [$zh]

Parameters
cameracamera
statusfinished status

◆ camera:playbackTimeSlice:didFinishedWithStatus: [1/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
playbackTimeSlice: (NSDictionary *)  timeSlice
didFinishedWithStatus: (NSInteger)  status 
optional

◆ camera:playbackTimeSlice:didFinishedWithStatus: [2/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
playbackTimeSlice: (NSDictionary *)  timeSlice
didFinishedWithStatus: (NSInteger)  status 
optional

◆ camera:resolutionDidChangeWidth:height: [1/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
resolutionDidChangeWidth: (NSInteger)  width
height: (NSInteger)  height 
optional

[^en] the definition of the video did chagned [$en]

[^zh] 视频清晰度已经修改 [$zh]

Parameters
cameracamera
widthvideo width
heightvideo height

◆ camera:resolutionDidChangeWidth:height: [2/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
resolutionDidChangeWidth: (NSInteger)  width
height: (NSInteger)  height 
optional

[^en] the definition of the video did chagned [$en]

[^zh] 视频清晰度已经修改 [$zh]

Parameters
cameracamera
widthvideo width
heightvideo height

◆ camera:resolutionDidChangeWithVideoExtInfo: [1/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
resolutionDidChangeWithVideoExtInfo: (id< ThingSmartVideoExtInfo >)  videoExtInfo 
optional

◆ camera:resolutionDidChangeWithVideoExtInfo: [2/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
resolutionDidChangeWithVideoExtInfo: (id< ThingSmartVideoExtInfo >)  videoExtInfo 
optional

◆ camera:thing_didEventReceivedEventType:errorCode:intValue:strValue: [1/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
thing_didEventReceivedEventType: (NSInteger)  event
errorCode: (NSInteger)  error
intValue: (long long)  intValue
strValue: (NSString *)  strValue 
optional

◆ camera:thing_didEventReceivedEventType:errorCode:intValue:strValue: [2/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
thing_didEventReceivedEventType: (NSInteger)  event
errorCode: (NSInteger)  error
intValue: (long long)  intValue
strValue: (NSString *)  strValue 
optional

◆ camera:thing_didReceiveFrameData:dataSize:frameInfo: [1/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
thing_didReceiveFrameData: (const char *)  frameData
dataSize: (unsigned int)  size
frameInfo: (ThingSmartVideoStreamInfo frameInfo 
optional

[^en] if 'isRecvFrame' is true, and p2pType is "1", the video data will not decode in the SDK, and could get the orginal video frame data through this method. [$en]

[^zh] 如果 'isRecvFrame' 是true,并且 'p2pType' 是 1, 视频数据将不会在SDK中解码,通过此方法可以获取到原始视频帧数据 [$zh]

Parameters
cameracamera
frameData[^en]original video frame data[$en] [^zh]原始视频帧数据[$zh]
size[^en]video frame data size[$en] [^zh]视频帧数尺寸[$zh]
frameInfo[^en]frame header info[$en] [^zh]视频帧头信息[$zh]

◆ camera:thing_didReceiveFrameData:dataSize:frameInfo: [2/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
thing_didReceiveFrameData: (const char *)  frameData
dataSize: (unsigned int)  size
frameInfo: (ThingSmartVideoStreamInfo frameInfo 
optional

[^en] if 'isRecvFrame' is true, and p2pType is "1", the video data will not decode in the SDK, and could get the orginal video frame data through this method. [$en]

[^zh] 如果 'isRecvFrame' 是true,并且 'p2pType' 是 1, 视频数据将不会在SDK中解码,通过此方法可以获取到原始视频帧数据 [$zh]

Parameters
cameracamera
frameData[^en]original video frame data[$en] [^zh]原始视频帧数据[$zh]
size[^en]video frame data size[$en] [^zh]视频帧数尺寸[$zh]
frameInfo[^en]frame header info[$en] [^zh]视频帧头信息[$zh]

◆ camera:thing_didReceiveVideoFrame:frameInfo: [1/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
thing_didReceiveVideoFrame: (CMSampleBufferRef)  sampleBuffer
frameInfo: (ThingSmartVideoFrameInfo frameInfo 
optional

[^en] if 'isRecvFrame' is true, and p2pType is greater than 2, could get the decoded YUV frame data through this method. [$en]

[^zh] 如果 'isRecvFrame' 为true,并且 'p2pType' 大于 2,可以通过此方法j获得解码后的 YUV 帧数据 [$zh]

Parameters
cameracamera
sampleBuffer[^en]video frame YUV data[$en] [^zh]YUV 视频帧数据[$zh]
frameInfo[^en]frame header info[$en] [^zh]数据帧头信息[$zh]

◆ camera:thing_didReceiveVideoFrame:frameInfo: [2/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
thing_didReceiveVideoFrame: (CMSampleBufferRef)  sampleBuffer
frameInfo: (ThingSmartVideoFrameInfo frameInfo 
optional

[^en] if 'isRecvFrame' is true, and p2pType is greater than 2, could get the decoded YUV frame data through this method. [$en]

[^zh] 如果 'isRecvFrame' 为true,并且 'p2pType' 大于 2,可以通过此方法j获得解码后的 YUV 帧数据 [$zh]

Parameters
cameracamera
sampleBuffer[^en]video frame YUV data[$en] [^zh]YUV 视频帧数据[$zh]
frameInfo[^en]frame header info[$en] [^zh]数据帧头信息[$zh]

◆ camera:thing_didRecieveAudioRecordDataWithPCM:length:sampleRate: [1/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
thing_didRecieveAudioRecordDataWithPCM: (const unsigned char *)  pcm
length: (int)  length
sampleRate: (int)  sampleRate 
optional

[^en] if p2pType is greater than 2, could get audio record data when talking through this method. if yout want change the audio data, must keep the audio data length same,and synchronize,and then call 'sendAudioDataWithPCM:length:sampleRate:' to send custom audio data to the device. [$en]

[^zh] p2p2 以上的设备,如果 p2pType 大于 2, 此方法会返回开启对讲时的音频。如果你需要修改音频数据,务必不要改变音频数据的长度,并在修改操作需要在代理方法中同步进行,然后调用'sendAudioDataWithPCM:length:sampleRate:'把自定义数据回传给设备 [$zh]

Parameters
cameracamera
pcm[^en]audio data[$en] [^zh]音频数据[$zh]
length[^en]date length[$en] [^zh]数据长度[$zh]
sampleRate[^en]audio sample rate[$en] [^zh]音频样本比率[$zh]

◆ camera:thing_didRecieveAudioRecordDataWithPCM:length:sampleRate: [2/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
thing_didRecieveAudioRecordDataWithPCM: (const unsigned char *)  pcm
length: (int)  length
sampleRate: (int)  sampleRate 
optional

[^en] if p2pType is greater than 2, could get audio record data when talking through this method. if yout want change the audio data, must keep the audio data length same,and synchronize,and then call 'sendAudioDataWithPCM:length:sampleRate:' to send custom audio data to the device. [$en]

[^zh] p2p2 以上的设备,如果 p2pType 大于 2, 此方法会返回开启对讲时的音频。如果你需要修改音频数据,务必不要改变音频数据的长度,并在修改操作需要在代理方法中同步进行,然后调用'sendAudioDataWithPCM:length:sampleRate:'把自定义数据回传给设备 [$zh]

Parameters
cameracamera
pcm[^en]audio data[$en] [^zh]音频数据[$zh]
length[^en]date length[$en] [^zh]数据长度[$zh]
sampleRate[^en]audio sample rate[$en] [^zh]音频样本比率[$zh]

◆ camera:thing_didSpeedPlayWithSpeed: [1/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
thing_didSpeedPlayWithSpeed: (ThingSmartCameraPlayBackSpeed)  playBackSpeed 
optional

◆ camera:thing_didSpeedPlayWithSpeed: [2/2]

- (void) camera: (id< ThingSmartCameraType >)  camera
thing_didSpeedPlayWithSpeed: (ThingSmartCameraPlayBackSpeed)  playBackSpeed 
optional

◆ cameraDidBeginPlayback: [1/2]

- (void) cameraDidBeginPlayback: (id< ThingSmartCameraType >)  camera
optional

[^en] the camera did began playback record video in the SD card. [$en]

[^zh] 摄像头SD卡视频回放已开始 [$zh]

Parameters
cameracamera

◆ cameraDidBeginPlayback: [2/2]

- (void) cameraDidBeginPlayback: (id< ThingSmartCameraType >)  camera
optional

[^en] the camera did began playback record video in the SD card. [$en]

[^zh] 摄像头SD卡视频回放已开始 [$zh]

Parameters
cameracamera

◆ cameraDidBeginPreview: [1/2]

- (void) cameraDidBeginPreview: (id< ThingSmartCameraType >)  camera
optional

[^en] the camera did began play live video. [$en]

[^zh] 摄像头已经开始播放实时视频 [$zh]

Parameters
cameracamera

◆ cameraDidBeginPreview: [2/2]

- (void) cameraDidBeginPreview: (id< ThingSmartCameraType >)  camera
optional

[^en] the camera did began play live video. [$en]

[^zh] 摄像头已经开始播放实时视频 [$zh]

Parameters
cameracamera

◆ cameraDidBeginTalk: [1/2]

- (void) cameraDidBeginTalk: (id< ThingSmartCameraType >)  camera
optional

[^en] begin talk to the device. will call when 'startAudioTalk' success. [$en]

[^zh] 开始与设备进行对讲,方法会在 'startAudioTalk' 成时被调用 [$zh]

Parameters
cameracamera

◆ cameraDidBeginTalk: [2/2]

- (void) cameraDidBeginTalk: (id< ThingSmartCameraType >)  camera
optional

[^en] begin talk to the device. will call when 'startAudioTalk' success. [$en]

[^zh] 开始与设备进行对讲,方法会在 'startAudioTalk' 成时被调用 [$zh]

Parameters
cameracamera

◆ cameraDidConnected: [1/2]

- (void) cameraDidConnected: (id< ThingSmartCameraType >)  camera
optional

[^en] the p2p channel did connected. [$en]

[^zh] p2p 通道已连接 [$zh]

Parameters
cameracamera

◆ cameraDidConnected: [2/2]

- (void) cameraDidConnected: (id< ThingSmartCameraType >)  camera
optional

[^en] the p2p channel did connected. [$en]

[^zh] p2p 通道已连接 [$zh]

Parameters
cameracamera

◆ cameraDidConnectPlaybackChannel: [1/2]

- (void) cameraDidConnectPlaybackChannel: (id< ThingSmartCameraType >)  camera
optional

[^en] the playback channel did connected. [$en]

[^zh] 回放通道已经连接 [$zh]

Parameters
cameracamera

◆ cameraDidConnectPlaybackChannel: [2/2]

- (void) cameraDidConnectPlaybackChannel: (id< ThingSmartCameraType >)  camera
optional

[^en] the playback channel did connected. [$en]

[^zh] 回放通道已经连接 [$zh]

Parameters
cameracamera

◆ cameraDidPausePlayback: [1/2]

- (void) cameraDidPausePlayback: (id< ThingSmartCameraType >)  camera
optional

[^en] the camera did pause playback record video in the SD card. [$en]

[^zh] 摄像头SD卡视频回放已暂停 [$zh]

Parameters
cameracamera

◆ cameraDidPausePlayback: [2/2]

- (void) cameraDidPausePlayback: (id< ThingSmartCameraType >)  camera
optional

[^en] the camera did pause playback record video in the SD card. [$en]

[^zh] 摄像头SD卡视频回放已暂停 [$zh]

Parameters
cameracamera

◆ cameraDidPauseVideoTalk: [1/2]

- (void) cameraDidPauseVideoTalk: (id< ThingSmartCameraType >)  camera
optional

[^en] The two-way video talk has paused. [$en]

[^zh] 双向视频通话已暂停 [$zh]

Parameters
cameracamera

◆ cameraDidPauseVideoTalk: [2/2]

- (void) cameraDidPauseVideoTalk: (id< ThingSmartCameraType >)  camera
optional

[^en] The two-way video talk has paused. [$en]

[^zh] 双向视频通话已暂停 [$zh]

Parameters
cameracamera

◆ cameraDidResumePlayback: [1/2]

- (void) cameraDidResumePlayback: (id< ThingSmartCameraType >)  camera
optional

[^en] the camera did resume playback record video in the SD card. [$en]

[^zh] 摄像头SD卡视频回放已恢复播放 [$zh]

Parameters
cameracamera

◆ cameraDidResumePlayback: [2/2]

- (void) cameraDidResumePlayback: (id< ThingSmartCameraType >)  camera
optional

[^en] the camera did resume playback record video in the SD card. [$en]

[^zh] 摄像头SD卡视频回放已恢复播放 [$zh]

Parameters
cameracamera

◆ cameraDidResumeVideoTalk: [1/2]

- (void) cameraDidResumeVideoTalk: (id< ThingSmartCameraType >)  camera
optional

[^en] The two-way video talk has resumed [$en]

[^zh] 双向视频通话已恢复 [$zh]

Parameters
cameracamera

◆ cameraDidResumeVideoTalk: [2/2]

- (void) cameraDidResumeVideoTalk: (id< ThingSmartCameraType >)  camera
optional

[^en] The two-way video talk has resumed [$en]

[^zh] 双向视频通话已恢复 [$zh]

Parameters
cameracamera

◆ cameraDidStartRecord: [1/2]

- (void) cameraDidStartRecord: (id< ThingSmartCameraType >)  camera
optional

[^en] video recording did start success. [$en]

[^zh] 视频录制已成功开始 [$zh]

Parameters
cameracamera

◆ cameraDidStartRecord: [2/2]

- (void) cameraDidStartRecord: (id< ThingSmartCameraType >)  camera
optional

[^en] video recording did start success. [$en]

[^zh] 视频录制已成功开始 [$zh]

Parameters
cameracamera

◆ cameraDidStartVideoTalk: [1/2]

- (void) cameraDidStartVideoTalk: (id< ThingSmartCameraType >)  camera
optional

[^en] The two-way video talk has started. [$en]

[^zh] 双向视频通话已开启 [$zh]

Parameters
cameracamera

◆ cameraDidStartVideoTalk: [2/2]

- (void) cameraDidStartVideoTalk: (id< ThingSmartCameraType >)  camera
optional

[^en] The two-way video talk has started. [$en]

[^zh] 双向视频通话已开启 [$zh]

Parameters
cameracamera

◆ cameraDidStopPlayback: [1/2]

- (void) cameraDidStopPlayback: (id< ThingSmartCameraType >)  camera
optional

[^en] the camera did stop playback record video in the SD card. [$en]

[^zh] 摄像头SD卡视频回放已中止 [$zh]

Parameters
cameracamera

◆ cameraDidStopPlayback: [2/2]

- (void) cameraDidStopPlayback: (id< ThingSmartCameraType >)  camera
optional

[^en] the camera did stop playback record video in the SD card. [$en]

[^zh] 摄像头SD卡视频回放已中止 [$zh]

Parameters
cameracamera

◆ cameraDidStopPreview: [1/2]

- (void) cameraDidStopPreview: (id< ThingSmartCameraType >)  camera
optional

[^en] the camera did stop live video. [$en]

[^zh] 摄像头实时视频已停止 [$zh]

Parameters
cameracamera

◆ cameraDidStopPreview: [2/2]

- (void) cameraDidStopPreview: (id< ThingSmartCameraType >)  camera
optional

[^en] the camera did stop live video. [$en]

[^zh] 摄像头实时视频已停止 [$zh]

Parameters
cameracamera

◆ cameraDidStopRecord: [1/2]

- (void) cameraDidStopRecord: (id< ThingSmartCameraType >)  camera
optional

[^en] video recording did stop sucess, and the video has saved in photo album success. [$en]

[^zh] 视频录制已经成功停止,视频已成功保存到相册 [$zh]

Parameters
cameracamera

◆ cameraDidStopRecord: [2/2]

- (void) cameraDidStopRecord: (id< ThingSmartCameraType >)  camera
optional

[^en] video recording did stop sucess, and the video has saved in photo album success. [$en]

[^zh] 视频录制已经成功停止,视频已成功保存到相册 [$zh]

Parameters
cameracamera

◆ cameraDidStopTalk: [1/2]

- (void) cameraDidStopTalk: (id< ThingSmartCameraType >)  camera
optional

[^en] talk to the device did stop. will call when 'stopAudioTalk' success. [$en]

[^zh] 与设备对讲已经结束,方法会在 'stopAudioTalk' 成功时被调用 [$zh]

Parameters
cameracamera

◆ cameraDidStopTalk: [2/2]

- (void) cameraDidStopTalk: (id< ThingSmartCameraType >)  camera
optional

[^en] talk to the device did stop. will call when 'stopAudioTalk' success. [$en]

[^zh] 与设备对讲已经结束,方法会在 'stopAudioTalk' 成功时被调用 [$zh]

Parameters
cameracamera

◆ cameraDidStopVideoTalk: [1/2]

- (void) cameraDidStopVideoTalk: (id< ThingSmartCameraType >)  camera
optional

[^en] The two-way video talk has stopped [$en]

[^zh] 双向视频通话已停止 [$zh]

Parameters
cameracamera

◆ cameraDidStopVideoTalk: [2/2]

- (void) cameraDidStopVideoTalk: (id< ThingSmartCameraType >)  camera
optional

[^en] The two-way video talk has stopped [$en]

[^zh] 双向视频通话已停止 [$zh]

Parameters
cameracamera

◆ cameraDisconnected: [1/2]

- (void) cameraDisconnected: ("Use cameraDisconnected:specificErrorCode: instead")  __deprecated_msg
optional

[^en] the p2p channel did disconnected. [$en]

[^zh] p2p 通道已断开 [$zh]

Parameters
cameracamera

◆ cameraDisconnected: [2/2]

- (void) cameraDisconnected: ("Use cameraDisconnected:specificErrorCode: instead")  __deprecated_msg
optional

[^en] the p2p channel did disconnected. [$en]

[^zh] p2p 通道已断开 [$zh]

Parameters
cameracamera

◆ cameraDisconnected:specificErrorCode: [1/2]

- (void) cameraDisconnected: (id< ThingSmartCameraType >)  camera
specificErrorCode: (NSInteger)  errorCode 
optional

[^en] the new p2p channel did disconnected. [$en]

[^zh] 新p2p 通道已断开 [$zh]

Parameters
cameracamera
errorCode[^en]errorCode reference ThingCameraSDK.framework/ThingDefines[$en] [^zh]具体参考ThingCameraSDK.framework/ThingDefines[$zh]

◆ cameraDisconnected:specificErrorCode: [2/2]

- (void) cameraDisconnected: (id< ThingSmartCameraType >)  camera
specificErrorCode: (NSInteger)  errorCode 
optional

[^en] the new p2p channel did disconnected. [$en]

[^zh] 新p2p 通道已断开 [$zh]

Parameters
cameracamera
errorCode[^en]errorCode reference ThingCameraSDK.framework/ThingDefines[$en] [^zh]具体参考ThingCameraSDK.framework/ThingDefines[$zh]

◆ cameraInitFailed: [1/2]

- (void) cameraInitFailed: (ThingSmartCameraErrorCode errorCode
optional

[^en] camera init failed. [$en]

[^zh] camera 初始化失败 [$zh]

Parameters
errorCodeerrorCode

◆ cameraInitFailed: [2/2]

- (void) cameraInitFailed: (ThingSmartCameraErrorCode errorCode
optional

[^en] camera init failed. [$en]

[^zh] camera 初始化失败 [$zh]

Parameters
errorCodeerrorCode

◆ cameraPlaybackDidFinished: [1/2]

- (void) cameraPlaybackDidFinished: (id< ThingSmartCameraType >)  camera
optional

[^en] the record video in the SD card playback finished. [$en]

[^zh] 摄像头SD卡视频回放已结束 [$zh]

Parameters
cameracamera

◆ cameraPlaybackDidFinished: [2/2]

- (void) cameraPlaybackDidFinished: (id< ThingSmartCameraType >)  camera
optional

[^en] the record video in the SD card playback finished. [$en]

[^zh] 摄像头SD卡视频回放已结束 [$zh]

Parameters
cameracamera

◆ cameraSnapShootSuccess: [1/2]

- (void) cameraSnapShootSuccess: (id< ThingSmartCameraType >)  camera
optional

[^en] the video screenshot has saved in the photo album. [$en]

[^zh] 视频截图已成功保存到相册 [$zh]

Parameters
cameracamera

◆ cameraSnapShootSuccess: [2/2]

- (void) cameraSnapShootSuccess: (id< ThingSmartCameraType >)  camera
optional

[^en] the video screenshot has saved in the photo album. [$en]

[^zh] 视频截图已成功保存到相册 [$zh]

Parameters
cameracamera

The documentation for this protocol was generated from the following files: