Autore Topic: [problema]Riprodurre video mp4 da url remoto  (Letto 1540 volte)

Offline agadir92

  • Nuovo arrivato
  • *
  • Post: 9
  • Respect: 0
    • Mostra profilo
[problema]Riprodurre video mp4 da url remoto
« il: 08 Gennaio 2013, 00:02:18 CET »
0
Salve ho un problema con un applicazione,
Devo permettere lo streaming di alcuni video in remoto.
La riproduzione funziona alla perfezione su alcuni dispositivi come galaxy note e s3 mentre mi genera un errore e mi restituisce un messaggio con scritto "Impossibile riprodurre il video" su altri dispositivi come galaxy next o galaxy mini.
Mi è sembrato di capire leggendo in giro che i codec presenti nelle versioni di android più vecchie non sono in grande di riprodurre alcune tipologie di video, infatti logcat mi restituisce un errore sul mio galaxy next che credo abbia a  che vedere coi codec del dispositivo.
"OMXcodec error 0x8000100a" in allegato è presente lo screen dell'intero logcat.

il codice che utilizzo per la riproduzione è il seguente:

Codice (Java): [Seleziona]
VideoView vd=(VideoView) findViewById(R.id.vd);
vd.setVideoURI(Uri.parse(link));
vd.setMediaController(new MediaController(this));
vd.start();
L'url è sempre un video .mp4
Come posso risolvere per non aver problemi su nessun dispositivo? posso utilizzare una libreria esterna per decodificare il video in entrata? ho cercato di tutto e trovato poche soluzioni in inglese che parlavano di codec ma non ci ho capito un ***!
Spero mi possiate aiutare....grazie.

Offline iceweasel

  • Moderatore globale
  • Utente senior
  • *****
  • Post: 878
  • Respect: +147
    • Mostra profilo
  • Dispositivo Android:
    LGE P990 - Google Nexus 5
  • Sistema operativo:
    Linux Debian Sid
Re:[problema]Riprodurre video mp4 da url remoto
« Risposta #1 il: 08 Gennaio 2013, 00:22:31 CET »
0
In generale è meglio allegare il logcat come testo non come bitmap.

La documentazione ufficiale parla chiaro sui codec, formati contenitore e protocolli di rete sopportati dalle varie versioni di Android:

Android Supported Media Formats | Android Developers

E' possibile utilizzare librerie esterne per gestire i codec non sopportati, ad esempio FFmpeg. Non è facile cross-compilarlo (si usa NDK) e usarlo (bisogna interfacciarsi via JNI).
adb logcat | tee /tmp/logcat | grep TAG

Offline agadir92

  • Nuovo arrivato
  • *
  • Post: 9
  • Respect: 0
    • Mostra profilo
Re:[problema]Riprodurre video mp4 da url remoto
« Risposta #2 il: 08 Gennaio 2013, 00:36:32 CET »
0
Quella tabella non lo capita molto...
dipende penso dalla mia ignoranza video h.263 o h.264 non ci capisco molto non so cosa stanno a significare, però ho estrema necessita di trovare una soluzione potresti darmi maggiori informazioni su quella tabella e sulla soluzione che hai proposto? diciamo che ho un pò di esperienza nella programmazione anche se applicazioni di streaming e manipolazione di file multimediali non ho ben chiaro un pò di cose.
grazie davvero...

Offline iceweasel

  • Moderatore globale
  • Utente senior
  • *****
  • Post: 878
  • Respect: +147
    • Mostra profilo
  • Dispositivo Android:
    LGE P990 - Google Nexus 5
  • Sistema operativo:
    Linux Debian Sid
Re:[problema]Riprodurre video mp4 da url remoto
« Risposta #3 il: 08 Gennaio 2013, 01:09:54 CET »
0
La vedo dura se non capisci quella tabella di Google. Un riassunto è che MPEG4 col profilo Advanced Video Coding è sopportato da Android 3.0 in su'.

Non ho una soluzione per chi non ha sufficientemente conoscenze sui formati multimediali e sulla programmazione di Android via NDK e JNI.
adb logcat | tee /tmp/logcat | grep TAG

Offline agadir92

  • Nuovo arrivato
  • *
  • Post: 9
  • Respect: 0
    • Mostra profilo
Re:[problema]Riprodurre video mp4 da url remoto
« Risposta #4 il: 08 Gennaio 2013, 11:43:57 CET »
0
Gli ho dato un occhiata e hai ragione non sembra una cosa facile, ma ho necessità di permettere lo streaming su tutti i dispositivi android.
L'applicazione è questa:
https://play.google.com/store/apps/details?id=it.animestreaming.agadir
A me serve una soluzione perchè non posso tagliare tutti i dispositivi con android inferiore alla 3.0
Sapresti scrivere queste classi per fare ciò che chiedo?
Sono disposto a offrirti una retribuzione....
Se ti interessa e puoi aiutarmi lasciami il tuo contatto skype o facebook...
« Ultima modifica: 08 Gennaio 2013, 12:17:03 CET da agadir92 »

Offline Nicola_D

  • Utente storico
  • *****
  • Post: 2479
  • SBAGLIATO!
  • Respect: +323
    • Github
    • Google+
    • nicoladorigatti
    • Mostra profilo
  • Dispositivo Android:
    Nexus 6p, Nexus 4, Nexus S, Nexus 7(2012)
  • Sistema operativo:
    Windows 7
Re:[problema]Riprodurre video mp4 da url remoto
« Risposta #5 il: 08 Gennaio 2013, 12:24:58 CET »
0
Gli ho dato un occhiata e hai ragione non sembra una cosa facile, ma ho necessità di permettere lo streaming su tutti i dispositivi android.
L'applicazione è questa:
https://play.google.com/store/apps/details?id=it.animestreaming.agadir
A me serve una soluzione perchè non posso tagliare tutti i dispositivi con android inferiore alla 3.0
Sapresti scrivere queste classi per fare ciò che chiedo?
Sono disposto a offrirti una retribuzione....
Se ti interessa e puoi aiutarmi lasciami il tuo contatto skype o facebook...
se nessuno (o quasi) l'ha mai fatto è proprio perchè non è cosa semplice. Prova a guardare VLC, vedrai che non c'è una soluzione indolore, non bastano le classi, bisogna fare librerie che vanno compilate per i processori disponibili (ARM V6-7, Intel ecc)...
Non è un lavoro di qualche giorno purtroppo
IMPORTANTE:NON RISPONDO A PROBLEMI VIA MESSAGGIO PRIVATO
LOGCAT: Non sai cos'è? -> Android Debug Bridge | Android Developers
               Dov'è in Eclipse? -> Window -> Open Prospective -> DDMS e guarda in basso!
[Obbligatorio] Logcat, questo sconosciuto! (Gruppo AndDev.it LOGTFO) - Android Developers Italia