ByteRTCExternalVideoEncoderEventHandler class
- Inheritance
-
- Object
- NativeClass
- NativeObserverClass
- ByteRTCExternalVideoEncoderEventHandler
- Implementers
Properties
-
$instance
↔ dynamic
-
getter/setter pairinherited
-
$resource
→ NativeResource
-
no setterinherited
-
hashCode
→ int
-
The hash code for this object.
no setterinherited
-
ready
→ Future<void>
-
Whether the instance is initialized
no setterinherited
-
runtimeType
→ Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
destroy()
→ void
-
inherited
-
emit(String name, List args)
→ dynamic
-
inherited
-
nativeCall<T>(String method, [List? args, NativeMethodMeta? meta])
→ Future<T>
-
Call instance method
inherited
-
noSuchMethod(Invocation invocation)
→ dynamic
-
Invoked when a nonexistent method or property is accessed.
inherited
-
onActiveVideoLayer$info$withVideoIndex$withActive(NSString streamId, ByteRTCStreamInfo info, NSInteger videoIndex, BOOL active)
→ FutureOr<void>
-
@valid since 3.56
@detail callback
@brief As the sender of a external encoded video stream, you will receive this callback at certain moments.
Based on the hints of this callback, you can selectively encode the video stream that is ready for transmission, in order to reduce the performance impact of video encoding on the local device. This callback is triggered based on a combination of factors, including the performance of the local device, the local network, and whether the stream is subscribed by the remote user.
@param streamId Custom encoded stream ID
@param info Custom encoded stream information. See ByteRTCStreamInfo{@link #ByteRTCStreamInfo}
@param videoIndex Subscript of the corresponding encoded stream.
@param active The active state of the corresponding encoded stream.
@note To receive the callback, call setVideoSourceType:{@link #ByteRTCEngine#setVideoSourceType} to set the input video source to custom encoded video and call setExternalVideoEncoderEventHandler:{@link #ByteRTCEngine#setExternalVideoEncoderEventHandler} to set the callback handler.
-
onRateUpdate$info$withVideoIndex$withFps$withBitRate(NSString streamId, ByteRTCStreamInfo info, NSInteger videoIndex, NSInteger fps, NSInteger bitRateKps)
→ FutureOr<void>
-
@detail callback
@author wangzhanqiang
@brief When the frame rate or bit rate of a custom encoded stream changes, the callback is triggered
@param streamId Remote encoded stream ID
@param info Remote encoded stream information. See ByteRTCStreamInfo{@link #ByteRTCStreamInfo}
@param videoIndex Corresponding to the subscript of the encoded stream
@param fps Changed frame rate, unit: fps
@param bitRateKps Changed bit rate, unit: kbps
-
onRequestKeyFrame$info$withVideoIndex(NSString streamId, ByteRTCStreamInfo info, NSInteger videoIndex)
→ FutureOr<void>
-
@detail callback
@author wangzhanqiang
@brief This callback is used to inform the stream publisher that a keyframe needs to be regenerated.
@param streamId Remote encoded stream ID
@param info Remote encoded stream information. See ByteRTCStreamInfo{@link #ByteRTCStreamInfo}
@param videoIndex The subscript of the corresponding encoded stream
-
onStart$info(NSString streamId, ByteRTCStreamInfo info)
→ FutureOr<void>
-
@detail callback
@author wangzhanqiang
@brief Prompt custom encoded frames to start pushing callbacks.
After receiving this callback, you can call pushExternalEncodedVideoFrame:withEncodedVideoFrame:{@link #ByteRTCEngine#pushExternalEncodedVideoFrame:withEncodedVideoFrame} Push custom encoded video frames to the SDK
@param streamId Custom encoded stream ID
@param info Custom encoded stream information. See ByteRTCStreamInfo{@link #ByteRTCStreamInfo}
-
onStop$info(NSString streamId, ByteRTCStreamInfo info)
→ FutureOr<void>
-
@detail callback
@author wangzhanqiang
@brief When receiving the callback, you need to stop pushing custom encoded video frames to the SDK
@param streamId Custom encoded stream ID
@param info Custom encoded stream information. See ByteRTCStreamInfo{@link #ByteRTCStreamInfo}
-
registerEvent(String name, dynamic method)
→ void
-
inherited
-
sendInstanceGet<T>(String property)
→ Future<T>
-
Get instance property
inherited
-
sendInstancePropertiesGet(dynamic nativeClass)
→ Future<Map<String, dynamic>>
-
Get instance properties
inherited
-
sendInstanceSet(String property, dynamic value)
→ Future<void>
-
Set instance property
inherited
-
toString()
→ String
-
A string representation of this object.
inherited
-
updateInstance(dynamic instance)
→ void
-
inherited
-
updateResource(NativeResource resource)
→ void
-
inherited