Youtube_player_flutter: [Android] Carga infinita al abrir video por primera vez

Creado en 17 jul. 2020  ·  5Comentarios  ·  Fuente: sarbagyastha/youtube_player_flutter

Describa el error
El indicador de carga gira infinitamente si el video se abre por primera vez. Los errores "Perfil no compatible 2", etc., ocurren solo la primera vez que se muestra el reproductor.

Reproducir

  1. Abra la aplicación Flutter en Android 7.
  2. Abra la pantalla de vídeo. Carga del indicador. Vídeo no reproducido.
  3. Cierra la pantalla de vídeo.
  4. Abra la misma pantalla. Vídeo cargado y reproduciéndose.

Comportamiento esperado
El video debe reproducirse cada vez.

Detalles técnicos:

  • Dispositivo y SO: Cajas de TV: Android 7.1.2
  • Versión 7.0.0+7

médico aleteo:

[√] Flutter (Canal estable, v1.17.3, en Microsoft Windows [Versión 10.0.18363.959], ubicación uk-UA)
[√] Cadena de herramientas de Android: desarrollo para dispositivos Android (Android SDK versión 30.0.0)
[√] Android Studio (versión 4.0)
[!] IntelliJ IDEA Community Edition (versión 2018.3)
Complemento X Flutter no instalado; esto agrega funcionalidad específica de Flutter.
Complemento X Dart no instalado; esto agrega la funcionalidad específica de Dart.
[√] Dispositivo conectado (1 disponible)

Salida al inicializar el reproductor por primera vez:

I/art (29950): realizar una recopilación de caché de código parcial, código = 24 KB, datos = 29 KB
I/art (29950): después de la recopilación de caché de código, código = 20 KB, datos = 27 KB
I/art (29950): aumento de la capacidad de caché de código a 128 KB
W/cr_AwContents(29950): onDetachedFromWindow llamado cuando ya está desconectado. Postergación
I/cr_Ime (29950): ImeThread no está habilitado.
E/libEGL (29950): validar_pantalla :99 error 3008 (EGL_BAD_DISPLAY)
W/VideoCapabilities (29950): perfil no reconocido/nivel 1/32 para video/mp4v-es
I/VideoCapabilities (29950): perfil 2 no compatible para video/mp4v-es
I/VideoCapabilities (29950): perfil 2 no compatible para video/mp4v-es
I/VideoCapabilities (29950): perfil 2 no compatible para video/mp4v-es
I/VideoCapabilities (29950): perfil 2 no compatible para video/mp4v-es
I/VideoCapabilities (29950): perfil 2 no compatible para video/mp4v-es
I/VideoCapabilities (29950): perfil 2 no compatible para video/mp4v-es
I/VideoCapabilities (29950): perfil 2 no compatible para video/mp4v-es
I/VideoCapabilities (29950): perfil 2 no compatible para video/mp4v-es
I/VideoCapabilities (29950): perfil 4 no compatible para video/mp4v-es
I/VideoCapabilities (29950): perfil 4 no compatible para video/mp4v-es
I/VideoCapabilities (29950): perfil 4 no compatible para video/mp4v-es
I/VideoCapabilities (29950): perfil 4 no compatible para video/mp4v-es
I/VideoCapabilities (29950): perfil 4 no compatible para video/mp4v-es
I/VideoCapabilities (29950): perfil 4 no compatible para video/mp4v-es
I/VideoCapabilities (29950): perfil 4 no compatible para video/mp4v-es
I/VideoCapabilities (29950): perfil 4 no compatible para video/mp4v-es
I/VideoCapabilities (29950): perfil 8 no compatible para video/mp4v-es
I/VideoCapabilities (29950): perfil 8 no compatible para video/mp4v-es
I/VideoCapabilities (29950): perfil 8 no compatible para video/mp4v-es
I/VideoCapabilities (29950): perfil 8 no compatible para video/mp4v-es
I/VideoCapabilities (29950): perfil 8 no compatible para video/mp4v-es
I/VideoCapabilities (29950): perfil 8 no compatible para video/mp4v-es
I/VideoCapabilities (29950): perfil 8 no compatible para video/mp4v-es
I/VideoCapabilities (29950): perfil 8 no compatible para video/mp4v-es
I/VideoCapabilities (29950): perfil 16 no admitido para video/mp4v-es
I/VideoCapabilities (29950): perfil 16 no admitido para video/mp4v-es
I/VideoCapabilities (29950): perfil 16 no admitido para video/mp4v-es
I/VideoCapabilities (29950): perfil 16 no admitido para video/mp4v-es
I/VideoCapabilities (29950): perfil 16 no admitido para video/mp4v-es
I/VideoCapabilities (29950): perfil 16 no admitido para video/mp4v-es
I/VideoCapabilities (29950): perfil 16 no admitido para video/mp4v-es
I/VideoCapabilities (29950): perfil 16 no admitido para video/mp4v-es
I/VideoCapabilities (29950): perfil no compatible 32 para video/mp4v-es
I/VideoCapabilities (29950): perfil no compatible 32 para video/mp4v-es
I/VideoCapabilities (29950): perfil no compatible 32 para video/mp4v-es
I/VideoCapabilities (29950): perfil no compatible 32 para video/mp4v-es
I/VideoCapabilities (29950): perfil no compatible 32 para video/mp4v-es
I/VideoCapabilities (29950): perfil no compatible 32 para video/mp4v-es
I/VideoCapabilities (29950): perfil no compatible 32 para video/mp4v-es
I/VideoCapabilities (29950): perfil no compatible 32 para video/mp4v-es
I/VideoCapabilities (29950): perfil no compatible 64 para video/mp4v-es
I/VideoCapabilities (29950): perfil no compatible 64 para video/mp4v-es
I/VideoCapabilities (29950): perfil no compatible 64 para video/mp4v-es
I/VideoCapabilities (29950): perfil no compatible 64 para video/mp4v-es
I/VideoCapabilities (29950): perfil no compatible 64 para video/mp4v-es
I/VideoCapabilities (29950): perfil no compatible 64 para video/mp4v-es
I/VideoCapabilities (29950): perfil no compatible 64 para video/mp4v-es
I/VideoCapabilities (29950): perfil no compatible 64 para video/mp4v-es
I/VideoCapabilities (29950): perfil no compatible 128 para video/mp4v-es
I/VideoCapabilities (29950): perfil no compatible 128 para video/mp4v-es
I/VideoCapabilities (29950): perfil no compatible 128 para video/mp4v-es
I/VideoCapabilities (29950): perfil no compatible 128 para video/mp4v-es
I/VideoCapabilities (29950): perfil no compatible 128 para video/mp4v-es
I/VideoCapabilities (29950): perfil no compatible 128 para video/mp4v-es
I/VideoCapabilities (29950): perfil no compatible 128 para video/mp4v-es
I/VideoCapabilities (29950): perfil no compatible 128 para video/mp4v-es
I/VideoCapabilities (29950): perfil no compatible 256 para video/mp4v-es
W/VideoCapabilities (29950): perfil no reconocido/nivel 0/0 para video/mpeg2
W/VideoCapabilities (29950): perfil no reconocido/nivel 0/2 para video/mpeg2
W/VideoCapabilities (29950): perfil no reconocido/nivel 0/3 para video/mpeg2
I/VideoCapabilities (29950): perfil 2 no admitido para video/mpeg2
I/VideoCapabilities (29950): perfil 2 no admitido para video/mpeg2
I/VideoCapabilities (29950): perfil 2 no admitido para video/mpeg2
I/VideoCapabilities (29950): perfil 2 no admitido para video/mpeg2
I/VideoCapabilities (29950): perfil 3 no admitido para video/mpeg2
I/VideoCapabilities (29950): perfil 3 no admitido para video/mpeg2
I/VideoCapabilities (29950): perfil 3 no admitido para video/mpeg2
I/VideoCapabilities (29950): perfil 3 no admitido para video/mpeg2
I/VideoCapabilities (29950): perfil 4 no compatible para video/mpeg2
I/VideoCapabilities (29950): perfil 4 no compatible para video/mpeg2
I/VideoCapabilities (29950): perfil 4 no compatible para video/mpeg2
I/VideoCapabilities (29950): perfil 4 no compatible para video/mpeg2
I/VideoCapabilities (29950): perfil 5 no compatible para video/mpeg2
I/VideoCapabilities (29950): perfil 5 no compatible para video/mpeg2
I/VideoCapabilities (29950): perfil 5 no compatible para video/mpeg2
I/VideoCapabilities (29950): perfil 5 no compatible para video/mpeg2
W/VideoCapabilities (29950): mime video/vc1 no compatible
W/Utils (29950): no se pudo analizar el rango largo '1-'
W/VideoCapabilities (29950): mime video/wvc1 no compatible
W/Utils (29950): no se pudo analizar el rango largo '1-'
W/VideoCapabilities (29950): mime video/wmv3 no compatible
W/VideoCapabilities (29950): mime video/x-ms-wmv no compatible
W/VideoCapabilities (29950): mime video/mjpeg no compatible
Con capacidades de audio (29950): audio mime no compatible/aac-adif
Con capacidades de audio (29950): audio mime no compatible/aac-latm
W/AudioCapabilities (29950): audio/anuncios MIME no admitidos
W/AudioCapabilities (29950): audio mimo/wma no compatible
W/AudioCapabilities (29950): mime audio/wmapro no compatible
W/AudioCapabilities (29950): audio mime no compatible/truehd
W/AudioCapabilities (29950): audio mimo/ffmpeg no compatible
Con capacidades de audio (29950): mime audio/ac3 no compatible
W/AudioCapabilities (29950): audio mimo/eac3 no compatible
Con capacidades de audio (29950): audio mimo/dtshd no compatible
Con capacidades de audio (29950): audio mime no compatible/mpeg-L2
W/VideoCapabilities (29950): nivel 16 no reconocido para video/x-vnd.on2.vp8
W/VideoCapabilities (29950): nivel 32 no reconocido para video/x-vnd.on2.vp8
W/VideoCapabilities (29950): nivel 64 no reconocido para video/x-vnd.on2.vp8
W/VideoCapabilities (29950): nivel 128 no reconocido para video/x-vnd.on2.vp8
W/VideoCapabilities (29950): nivel 256 no reconocido para video/x-vnd.on2.vp8
W/VideoCapabilities (29950): nivel 512 no reconocido para video/x-vnd.on2.vp8
W/VideoCapabilities (29950): nivel no reconocido 1024 para video/x-vnd.on2.vp8
W/VideoCapabilities (29950): nivel no reconocido 2048 para video/x-vnd.on2.vp8
W/VideoCapabilities (29950): nivel no reconocido 4096 para video/x-vnd.on2.vp8
W/VideoCapabilities (29950): nivel no reconocido 8192 para video/x-vnd.on2.vp8
W/VideoCapabilities (29950): nivel no reconocido 16384 para video/x-vnd.on2.vp8
W/VideoCapabilities (29950): nivel no reconocido 32768 para video/x-vnd.on2.vp8
W/VideoCapabilities (29950): mime video/x-vnd.on2.vp6 no compatible
W/VideoCapabilities (29950): mime video/x-vnd.on2.vp6a no compatible
Con capacidades de video (29950): mime video/x-vnd.on2.vp6f no compatible
W/VideoCapabilities (29950): mime video/rm10 no compatible
W/VideoCapabilities (29950): mime video/rm20 no compatible
W/VideoCapabilities (29950): mime video/rm40 no compatible
W/VideoCapabilities (29950): mime video/wmv2 no compatible
W/VideoCapabilities (29950): mime video/wmv1 no compatible
I/VideoCapabilities (29950): perfil 4 no compatible para video/mp4v-es
W/cr_BindingManager(29950): No se puede llamar adeterminatedVisibility() - nunca vi una conexión para el pid: 29950

Código:

class PlayerViewState extends ErrorHandlerState<PlayerView> {
  YoutubePlayerController _youtubeController;

  <strong i="7">@override</strong>
  void initState() {
    super.initState();
    SystemChrome.setPreferredOrientations([
      DeviceOrientation.landscapeRight,
      DeviceOrientation.landscapeLeft,
    ]);
    _youtubeController = YoutubePlayerController(initialVideoId: "t99KH0TR-J4");
    _youtubeController.addListener(() {
      print(_youtubeController.value.playerState);
    });
  }

  <strong i="8">@override</strong>
  void dispose() {
    _youtubeController.dispose();
    super.dispose();
  }

  <strong i="9">@override</strong>
  Widget build(BuildContext context) {
    return Scaffold(
      backgroundColor: AppColors.black,
      body: Center(
        child: YoutubePlayer(
          controller: _youtubeController,
          onReady: (){

          },
        ),
      ),
    );
  }
}
bug youtube_player_flutter

Comentario más útil

Mismo problema aquí, youtube_player_flutter: ^7.0.0+7, Android 6.0.1

¿Como arreglarlo?

Todos 5 comentarios

¿Puedes probar con la aplicación de ejemplo, si existe el mismo problema allí?

El problema es que esto no siempre ocurre en todos los casos. Probé la aplicación de ejemplo. Intenté eliminar la aplicación y la volví a abrir. Parece que la aplicación de ejemplo funciona bien.
Entonces copié mi código en la aplicación de ejemplo. Reemplazó su "_MyHomePageState createState() => _MyHomePageState();" a "PlayerViewState createState() => PlayerViewState();"
Solo para comprobar si depende de mi aplicación y sus bibliotecas. Y el resultado es el mismo que en mi aplicación. Después de que la aplicación de ejemplo se cerrara varias veces, al abrirla de nuevo, cargador infinito. Parece que el problema está en el siguiente código que se ejecuta en Android 7 TV Box.

Aplicación de ejemplo cambió el código:

/// Homepage
class MyHomePage extends StatefulWidget {
  <strong i="10">@override</strong>
  PlayerViewState createState() => PlayerViewState();
}

class PlayerViewState extends State<MyHomePage> {
  YoutubePlayerController _youtubeController;

  <strong i="11">@override</strong>
  void initState() {
    super.initState();
    SystemChrome.setPreferredOrientations([
      DeviceOrientation.landscapeRight,
      DeviceOrientation.landscapeLeft,
    ]);
    _youtubeController = YoutubePlayerController(initialVideoId: "t99KH0TR-J4");
    _youtubeController.addListener(() {
      print(_youtubeController.value.playerState);
    });
  }

  <strong i="12">@override</strong>
  void dispose() {
    _youtubeController.dispose();
    super.dispose();
  }

  <strong i="13">@override</strong>
  Widget build(BuildContext context) {
    return Scaffold(
      body: Center(
        child: YoutubePlayer(
          controller: _youtubeController,
        ),
      ),
    );
  }
}

También estoy enfrentando el mismo problema en mi teléfono inteligente Android 7.1

El mismo problema aquí, API 22 (Samsung J5), solo ocurre la primera vez.

W/ResourceType (14933): error al obtener la entrada para 0x01080946 (t = 7 e = 2374) (error -75)
I/art (14933): Rechazo de reinicio en una clase fallida anteriormente java.lang.Class
I/art (14933): Rechazo de reinicio en una clase fallida anteriormente java.lang.Class
I/art (14933): Rechazo de reinicio en una clase fallida anteriormente java.lang.Class
I/art (14933): Rechazo de reinicio en una clase fallida anteriormente java.lang.Class
D/Administrador de conectividad (14933): solicitud de red; CallingUid: 10147, CallingPid: 14933
D/ConnectivityManager.CallbackHandler(14933): el controlador de devolución de llamada de CM recibió el mensaje 524290
I/art (14933): Rechazo de reinicio en una clase fallida anteriormente java.lang.Class
I/art (14933): Rechazo de reinicio en una clase fallida anteriormente java.lang.Class
D/Actividad (14933): registrarse para el menú contextual con mFeatureContextMenuListener
W/cr_media(14933): requiere permiso BLUETOOTH
D/PhoneWindow(14933): FMB installDecor mIsFloating: falso
D/PhoneWindow(14933): Banderas FMB installDecor: -2139028216
D/PhoneWindow(14933): FMB isFloatingMenuEnabled mFloatingMenuBtn: nulo
D/PhoneWindow(14933): FMB isFloatingMenuEnabled devuelve falso
E/libEGL (14933): validar_pantalla :255 error 3008 (EGL_BAD_DISPLAY)
W/AudioCapabilities (14933): audio mime no compatible/mpeg-L1
W/AudioCapabilities (14933): audio mime no compatible/mpeg-L2
W/AudioCapabilities (14933): audio MIME no compatible/x-ms-wma
Con capacidades de audio (14933): audio mimo/x-ima no compatible
W/VideoCapabilities (14933): perfil no reconocido/nivel 32768/2 para video/mp4v-es
W/VideoCapabilities (14933): perfil no reconocido/nivel 32768/2 para video/mp4v-es
W/VideoCapabilities (14933): mime video/wvc1 no compatible
W/VideoCapabilities (14933): mime video/x-ms-wmv no compatible
W/VideoCapabilities (14933): mime video/x-ms-wmv7 no compatible
W/VideoCapabilities (14933): mime video/x-ms-wmv8 no compatible
W/VideoCapabilities (14933): Mime video/mp43 no compatible
I/VideoCapabilities (14933): perfil 4 no compatible para video/mp4v-es
I/VideoCapabilities (14933): perfil 4 no compatible para video/mp4v-es
W/VideoCapabilities (14933): Sorenson/video mimo no compatible
W/cr_MediaCodecUtil(14933): el codificador HW para video/avc no está disponible en este dispositivo.
E/chromium(14933): [ ERROR:gl_surface_egl.cc (292)] eglChooseConfig falló con el error EGL_BAD_ATTRIBUTE

Mismo problema aquí, youtube_player_flutter: ^7.0.0+7, Android 6.0.1

¿Como arreglarlo?

¿Fue útil esta página
0 / 5 - 0 calificaciones