2015-06-15 12 views
8

Sto provando a riprodurre un video 4K nella mia applicazione, ma fino a quando tutti i dispositivi non possono riprodurre video 4K sto avendo qualche problema.Verifica se il dispositivo Android supporta video 4K?

  • Come posso verificare in fase di esecuzione se tale dispositivo lo supporta o meno prima di riprodurre il video?
+0

ho provato R & D su di esso per ore ma non riesco a trovare alcun dato riguardante questo problema ... voglio solo sapere se il telefono lo supporta o no? –

+0

Cosa intendi quando dici che il dispositivo supporta i video 4k? Vuoi dire se il dispositivo ha le risorse per riprodurre il video? – hasan83

+0

@Jordi Castilla minSdkVersion per favore? Alos, fammi sapere se stai utilizzando anche l'API di Camera2API? –

risposta

5

Prima di tutto, devi ricordare che 4k è solo una risoluzione, ma devi anche ricordare il bitrate.

Ecco un metodo per verificare se la risoluzione/combinazione bitrate è realizzabile su un determinato dispositivo:

boolean areSizeAndRateSupported (int width, int height, double frameRate) 

https://developer.android.com/reference/android/media/MediaCodecInfo.VideoCapabilities.html#areSizeAndRateSupported(int,%20int,%20double)

C'è anche:

isSizeSupported(int width, int height) 

L'unico inconveniente di questi metodi è che è supportato dal livello API 21.

È inoltre possibile controllare le capacità del codec con questo metodo:

MediaCodecInfo.VideoCapabilities.getVideoCapabilities() 

https://developer.android.com/reference/android/media/MediaCodecInfo.CodecCapabilities.html#getVideoCapabilities()

Ma per quanto ne so, si può tornare più bassa risoluzione che effettivamente sostenuto.

D'altra parte, nel tuo caso, i dispositivi al di sotto del lecca-lecca Android probabilmente non sono abbastanza veloci per riprodurre video 4K. O anche se possono, la loro risoluzione è troppo bassa per ottenere effettivamente alcun beneficio dalla risoluzione 4K.

Quindi, a mio parere, la soluzione più elegante è supporre che 4k non sia supportato da Android 5.0 e utilizzare un metodo da sopra per verificare se è supportato su Android 5.0 o versioni successive.

Problemi correlati