QuickRTCMediaRenderer constructor
const
QuickRTCMediaRenderer({
- Key? key,
- MediaStream? stream,
- LocalStream? localStream,
- RemoteStream? remoteStream,
- bool mirror = false,
- RTCVideoViewObjectFit objectFit = RTCVideoViewObjectFit.RTCVideoViewObjectFitCover,
- bool? isAudioEnabled,
- bool? isVideoEnabled,
- String? participantName,
- bool isLocal = false,
- bool showAudioIndicator = true,
- bool showVideoIndicator = false,
- bool showName = true,
- bool showLocalLabel = true,
- OverlayPosition? audioIndicatorPosition,
- OverlayPosition? videoIndicatorPosition,
- OverlayPosition? namePosition,
- CustomPosition? audioCustomPosition,
- CustomPosition? videoCustomPosition,
- CustomPosition? nameCustomPosition,
- Widget audioIndicatorBuilder(
- BuildContext context,
- bool isEnabled
- Widget videoIndicatorBuilder(
- BuildContext context,
- bool isEnabled
- Widget nameOverlayBuilder(
- BuildContext context,
- String name,
- bool isLocal
- Widget placeholderBuilder(
- BuildContext context,
- String? name
- Widget loadingBuilder(
- BuildContext context
- Widget overlayBuilder(
- BuildContext context,
- QuickRTCMediaRendererState state
- BoxDecoration? containerDecoration,
- BorderRadius? borderRadius,
- EdgeInsets overlayPadding = const EdgeInsets.all(8),
- VoidCallback? onTap,
- VoidCallback? onDoubleTap,
- VoidCallback? onLongPress,
- void onStateChanged()?,
Implementation
const QuickRTCMediaRenderer({
super.key,
// Stream input
this.stream,
this.localStream,
this.remoteStream,
// Video options
this.mirror = false,
this.objectFit = RTCVideoViewObjectFit.RTCVideoViewObjectFitCover,
// State
this.isAudioEnabled,
this.isVideoEnabled,
// Participant info
this.participantName,
this.isLocal = false,
// Overlay visibility
this.showAudioIndicator = true,
this.showVideoIndicator = false,
this.showName = true,
this.showLocalLabel = true,
// Positions
this.audioIndicatorPosition,
this.videoIndicatorPosition,
this.namePosition,
this.audioCustomPosition,
this.videoCustomPosition,
this.nameCustomPosition,
// Custom builders
this.audioIndicatorBuilder,
this.videoIndicatorBuilder,
this.nameOverlayBuilder,
this.placeholderBuilder,
this.loadingBuilder,
this.overlayBuilder,
// Styling
this.containerDecoration,
this.borderRadius,
this.overlayPadding = const EdgeInsets.all(8),
// Callbacks
this.onTap,
this.onDoubleTap,
this.onLongPress,
this.onStateChanged,
});