Descreva o erro
O indicador de carregamento girando infinitamente se o vídeo for aberto pela primeira vez. Os erros "Perfil não suportado 2" etc ocorrem apenas na primeira vez que o jogador é exibido.
Reproduzir
Comportamento esperado
O vídeo deve ser reproduzido sempre.
Detalhes técnicos:
Doutor Flutter:
[√] Flutter (Canal estável, v1.17.3, no Microsoft Windows [versão 10.0.18363.959], localidade uk-UA)
[√] Cadeia de ferramentas Android - desenvolver para dispositivos Android (Android SDK versão 30.0.0)
[√] Android Studio (versão 4.0)
[!] IntelliJ IDEA Community Edition (versão 2018.3)
Plugin X Flutter não instalado; isso adiciona a funcionalidade específica do Flutter.
Plugin X Dart não instalado; isso adiciona a funcionalidade específica do Dart.
[√] Dispositivo conectado (1 disponível)
Saída ao inicializar o player pela primeira vez:
I/art (29950): Coleta de cache de código parcial, code=24KB, data=29KB
I/art (29950): Após a coleta do cache de código, code=20KB, data=27KB
I/art (29950): Aumentando a capacidade do cache de código para 128 KB
W/cr_AwContents(29950): onDetachedFromWindow chamado quando já desanexado. Ignorando
I/cr_Ime (29950): ImeThread não está habilitado.
E/libEGL (29950): validate_ display:99 erro 3008 (EGL_BAD_DISPLAY)
W/VideoCapabilities(29950): Perfil/nível não reconhecido 1/32 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 2 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 2 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 2 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 2 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 2 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 2 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 2 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 2 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 4 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 4 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 4 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 4 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 4 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 4 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 4 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 4 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 8 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 8 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 8 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 8 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 8 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 8 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 8 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 8 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 16 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 16 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 16 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 16 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 16 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 16 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 16 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 16 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 32 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 32 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 32 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 32 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 32 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 32 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 32 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 32 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 64 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 64 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 64 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 64 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 64 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 64 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 64 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 64 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 128 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 128 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 128 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 128 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 128 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 128 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 128 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 128 para vídeo/mp4v-es
I/VideoCapabilities(29950): perfil não suportado 256 para vídeo/mp4v-es
W/VideoCapabilities(29950): perfil/nível não reconhecido 0/0 para vídeo/mpeg2
W/VideoCapabilities(29950): Perfil/nível não reconhecido 0/2 para vídeo/mpeg2
W/VideoCapabilities(29950): Perfil/nível não reconhecido 0/3 para vídeo/mpeg2
I/VideoCapabilities(29950): perfil 2 não suportado para vídeo/mpeg2
I/VideoCapabilities(29950): perfil 2 não suportado para vídeo/mpeg2
I/VideoCapabilities(29950): perfil 2 não suportado para vídeo/mpeg2
I/VideoCapabilities(29950): perfil 2 não suportado para vídeo/mpeg2
I/VideoCapabilities(29950): perfil 3 não suportado para vídeo/mpeg2
I/VideoCapabilities(29950): perfil 3 não suportado para vídeo/mpeg2
I/VideoCapabilities(29950): perfil 3 não suportado para vídeo/mpeg2
I/VideoCapabilities(29950): perfil 3 não suportado para vídeo/mpeg2
I/VideoCapabilities(29950): perfil não suportado 4 para vídeo/mpeg2
I/VideoCapabilities(29950): perfil não suportado 4 para vídeo/mpeg2
I/VideoCapabilities(29950): perfil não suportado 4 para vídeo/mpeg2
I/VideoCapabilities(29950): perfil não suportado 4 para vídeo/mpeg2
I/VideoCapabilities(29950): perfil 5 não suportado para vídeo/mpeg2
I/VideoCapabilities(29950): perfil 5 não suportado para vídeo/mpeg2
I/VideoCapabilities(29950): perfil 5 não suportado para vídeo/mpeg2
I/VideoCapabilities(29950): perfil 5 não suportado para vídeo/mpeg2
W/VideoCapabilities(29950): vídeo mime não suportado/vc1
W/Utils (29950): não foi possível analisar o longo alcance '1-'
W/VideoCapabilities(29950): vídeo mime não suportado/wvc1
W/Utils (29950): não foi possível analisar o longo alcance '1-'
W/VideoCapabilities(29950): vídeo mime não suportado/wmv3
W/VideoCapabilities(29950): vídeo mime não suportado/x-ms-wmv
W/VideoCapabilities(29950): vídeo mime não suportado/mjpeg
W/AudioCapabilities(29950): áudio mime não suportado/aac-adif
W/AudioCapabilities(29950): áudio mime não suportado/aac-latm
W/AudioCapabilities(29950): áudio/adts mime não suportados
W/AudioCapabilities(29950): áudio mime não suportado/wma
W/AudioCapabilities(29950): áudio mime não suportado/wmapro
W/AudioCapabilities(29950): áudio mime não suportado/truehd
W/AudioCapabilities(29950): áudio mime não suportado/ffmpeg
W/AudioCapabilities(29950): áudio mime não suportado/ac3
W/AudioCapabilities(29950): áudio mime não suportado/eac3
W/AudioCapabilities(29950): áudio mime não suportado/dtshd
W/AudioCapabilities(29950): áudio mime não suportado/mpeg-L2
W/VideoCapabilities(29950): Nível 16 não reconhecido para vídeo/x-vnd.on2.vp8
W/VideoCapabilities(29950): Nível não reconhecido 32 para vídeo/x-vnd.on2.vp8
W/VideoCapabilities(29950): Nível não reconhecido 64 para vídeo/x-vnd.on2.vp8
W/VideoCapabilities(29950): Nível não reconhecido 128 para vídeo/x-vnd.on2.vp8
W/VideoCapabilities(29950): Nível não reconhecido 256 para vídeo/x-vnd.on2.vp8
W/VideoCapabilities(29950): Nível não reconhecido 512 para vídeo/x-vnd.on2.vp8
W/VideoCapabilities(29950): Nível não reconhecido 1024 para vídeo/x-vnd.on2.vp8
W/VideoCapabilities(29950): Nível não reconhecido 2048 para vídeo/x-vnd.on2.vp8
W/VideoCapabilities(29950): Nível não reconhecido 4096 para vídeo/x-vnd.on2.vp8
W/VideoCapabilities(29950): Nível não reconhecido 8192 para vídeo/x-vnd.on2.vp8
W/VideoCapabilities(29950): Nível não reconhecido 16384 para vídeo/x-vnd.on2.vp8
W/VideoCapabilities(29950): nível não reconhecido 32768 para vídeo/x-vnd.on2.vp8
W/VideoCapabilities(29950): Vídeo mime não suportado/x-vnd.on2.vp6
W/VideoCapabilities(29950): Vídeo mime não suportado/x-vnd.on2.vp6a
W/VideoCapabilities(29950): Vídeo mime não suportado/x-vnd.on2.vp6f
W/VideoCapabilities(29950): vídeo mime não suportado/rm10
W/VideoCapabilities(29950): vídeo mime não suportado/rm20
W/VideoCapabilities(29950): vídeo mime não suportado/rm40
W/VideoCapabilities(29950): vídeo mime não suportado/wmv2
W/VideoCapabilities(29950): vídeo mime não suportado/wmv1
I/VideoCapabilities(29950): perfil não suportado 4 para vídeo/mp4v-es
W/cr_BindingManager(29950): Não é possível chamar determineVisibility() - nunca vi uma conexão para o 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: (){
},
),
),
);
}
}
Você pode testar com o aplicativo de exemplo, se o mesmo problema existe lá?
O problema é que isso nem sempre ocorre em todos os casos. Eu tentei o aplicativo de exemplo. Tentei matar o aplicativo e abriu novamente. Parece que o aplicativo de exemplo está funcionando bem.
Então copiei meu código no aplicativo de exemplo. Substituído seu "_MyHomePageState createState() => _MyHomePageState();" to "PlayerViewState createState() => PlayerViewState();"
Só para verificar se depende do meu aplicativo e de suas libs. E o resultado é o mesmo que no meu app. Após o aplicativo de exemplo ser morto por algumas vezes, ao abri-lo novamente - carregador infinito. Parece que o problema está no próximo código em execução no android 7 tv box.
Exemplo de código alterado do aplicativo:
/// 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,
),
),
);
}
}
também estou enfrentando o mesmo problema no meu smartphone Android 7.1
O mesmo problema aqui, API 22 (Samsung J5), ocorre apenas na primeira vez.
W/ResourceType(14933): Falha ao obter entrada para 0x01080946 (t=7 e=2374) (erro -75)
I/art (14933): Rejeitando a reinicialização na classe com falha anterior java.lang.Class
I/art (14933): Rejeitando a reinicialização na classe com falha anterior java.lang.Class
I/art (14933): Rejeitando a reinicialização na classe com falha anterior java.lang.Class
I/art (14933): Rejeitando a reinicialização na classe com falha anterior java.lang.Class
D/ConnectivityManager(14933): requestNetwork; CallingUid: 10147, CallingPid: 14933
D/ConnectivityManager.CallbackHandler(14933): O manipulador de retorno de chamada do CM recebeu a mensagem 524290
I/art (14933): Rejeitando a reinicialização na classe com falha anterior java.lang.Class
I/art (14933): Rejeitando a reinicialização na classe com falha anterior java.lang.Class
D/Activity(14933): registerForContextMenu com mFeatureContextMenuListener
W/cr_media(14933): Requer permissão BLUETOOTH
D/PhoneWindow(14933): FMB installDecor mIsFloating : false
D/PhoneWindow(14933): FMB installDecor flags: -2139028216
D/PhoneWindow(14933): FMB isFloatingMenuEnabled mFloatingMenuBtn : null
D/PhoneWindow(14933): FMB isFloatingMenuEnabled return false
E/libEGL (14933): validate_ display:255 erro 3008 (EGL_BAD_DISPLAY)
W/AudioCapabilities(14933): áudio mime não suportado/mpeg-L1
W/AudioCapabilities(14933): áudio mime não suportado/mpeg-L2
W/AudioCapabilities(14933): áudio mime não suportado/x-ms-wma
W/AudioCapabilities(14933): áudio mime não suportado/x-ima
W/VideoCapabilities(14933): perfil/nível não reconhecido 32768/2 para vídeo/mp4v-es
W/VideoCapabilities(14933): perfil/nível não reconhecido 32768/2 para vídeo/mp4v-es
W/VideoCapabilities(14933): vídeo mime não suportado/wvc1
W/VideoCapabilities(14933): vídeo mime não suportado/x-ms-wmv
W/VideoCapabilities(14933): vídeo mime não suportado/x-ms-wmv7
W/VideoCapabilities(14933): Vídeo mime não suportado/x-ms-wmv8
W/VideoCapabilities(14933): Vídeo mime não suportado/mp43
I/VideoCapabilities(14933): perfil não suportado 4 para vídeo/mp4v-es
I/VideoCapabilities(14933): perfil não suportado 4 para vídeo/mp4v-es
W/VideoCapabilities(14933): vídeo mime não suportado/sorenson
W/cr_MediaCodecUtil(14933): o codificador HW para vídeo/avc não está disponível neste dispositivo.
E/cromo(14933): [ ERRO:gl_surface_egl.cc (292)] eglChooseConfig falhou com erro EGL_BAD_ATTRIBUTE
Mesmo problema aqui, youtube_player_flutter: ^7.0.0+7, Android 6.0.1
Como corrigi-lo?
Comentários muito úteis
Mesmo problema aqui, youtube_player_flutter: ^7.0.0+7, Android 6.0.1
Como corrigi-lo?