ExoPlayer запускает видео с черным экраном на 0,3 секунды в Compose ⇐ Android
-
Гость
ExoPlayer запускает видео с черным экраном на 0,3 секунды в Compose
У меня есть ExoPlayer с Compose, и он работает:
val context = LocalContext.current val exoPlayer = помните { ExoPlayer.Builder(context).build().apply { val defaultDataSourceFactory = DefaultDataSource.Factory(контекст) val dataSourceFactory: DataSource.Factory = DefaultDataSource.Factory( контекст, по умолчаниюDataSourceFactory ) val packageName = context.applicationContext.packageName val uri = Uri.parse("android.resource://${packageName}/${R.raw.xeal_tutorial_compressed}") val source = ProgressiveMediaSource.Factory(dataSourceFactory) .createMediaSource(MediaItem.fromUri(uri)) setMediaSource (источник) подготовить() playWhenReady = правда режим повторения = REPEAT_MODE_ONE } } АндроидВью( фабрика = {контекст -> PlayerView(контекст).apply { игрок = экзоплеер } } ) Проблема в том, что первые 0,3 секунды при первом запуске я вижу черный экран. Я думаю, что это проблемы с рендерингом. Если бы я использовал файл XML с VideoView, я бы установил
videoView.setZOrderOnTop(true) который я использовал до эпохи создания. Как решить эту проблему в Compose ExoPlayer?
У меня есть ExoPlayer с Compose, и он работает:
val context = LocalContext.current val exoPlayer = помните { ExoPlayer.Builder(context).build().apply { val defaultDataSourceFactory = DefaultDataSource.Factory(контекст) val dataSourceFactory: DataSource.Factory = DefaultDataSource.Factory( контекст, по умолчаниюDataSourceFactory ) val packageName = context.applicationContext.packageName val uri = Uri.parse("android.resource://${packageName}/${R.raw.xeal_tutorial_compressed}") val source = ProgressiveMediaSource.Factory(dataSourceFactory) .createMediaSource(MediaItem.fromUri(uri)) setMediaSource (источник) подготовить() playWhenReady = правда режим повторения = REPEAT_MODE_ONE } } АндроидВью( фабрика = {контекст -> PlayerView(контекст).apply { игрок = экзоплеер } } ) Проблема в том, что первые 0,3 секунды при первом запуске я вижу черный экран. Я думаю, что это проблемы с рендерингом. Если бы я использовал файл XML с VideoView, я бы установил
videoView.setZOrderOnTop(true) который я использовал до эпохи создания. Как решить эту проблему в Compose ExoPlayer?
Мобильная версия