audioVideoMediaProjectionSingleStreamer

@RequiresApi(value = 29)
suspend fun audioVideoMediaProjectionSingleStreamer(context: Context, mediaProjection: MediaProjection, audioInputMode: StreamerPipeline.AudioInputMode = StreamerPipeline.AudioInputMode.CALLBACK, endpointFactory: IEndpointInternal.Factory = DynamicEndpointFactory(), defaultRotation: Int = context.displayRotation, surfaceProcessorFactory: ISurfaceProcessorInternal.Factory = DefaultSurfaceProcessorFactory(), dispatcherProvider: IDispatcherProvider = DispatcherProvider()): SingleStreamer(source)

Creates a SingleStreamer with the screen as video source and audio playback as audio source.

Parameters

context

the application context

mediaProjection

the media projection. It can be obtained with MediaProjectionManager.getMediaProjection. Don't forget to call MediaProjection.stop when you are done.

audioInputMode

the audio output mode. By default, it is StreamerPipeline.AudioInputMode.CALLBACK.

endpointFactory

the IEndpointInternal.Factory implementation. By default, it is a DynamicEndpointFactory.

defaultRotation

the default rotation in Surface rotation (Surface.ROTATION_0, ...). By default, it is the current device orientation.

surfaceProcessorFactory

the ISurfaceProcessorInternal.Factory implementation. By default, it is a DefaultSurfaceProcessorFactory.

dispatcherProvider

the IDispatcherProvider implementation. By default, it is a DispatcherProvider.