2016-07-22 12 views
1

J'utilise ijkplayer dans mon application Android que je Compile en utilisantAndroid charge lib ijkplayer https URL

compile 'tv.danmaku.ijk.media:ijkplayer-java:0.4.5' 
compile 'tv.danmaku.ijk.media:ijkplayer-armv7a:0.4.5' 

Il fonctionne parfaitement chargement http urls mais si je tente de charger https urls je reçois cette erreur

https protocol not found, recompile FFmpeg with openssl, gnutls, or securetransport enabled. 

et ne peut pas charger ma vidéo. Je ne sais pas si cela fait une différence, mais l'url que j'essaie de charger est un .m3u8 mais si c'est http fonctionne très bien.

Comment est-ce que je peux recompiler ffmpeg dans cette lib?

Répondre

3

Salut Petro je ne suis pas proffesional mais j'espère que ce tutoriel aiderait.

Vous devez compiler ijkplayer avec le soutien de OpenSSL pour ouvrir https liens, à faire suivre les étapes suivantes:

Grab dernière version de IjkPlayer de github:

$ git clone https://github.com/Bilibili/ijkplayer.git 

Ouvrir le dossier seulement téléchargé ijkplayer Supprime les liens symboliques vers module.sh et crée un lien symbolique vers module-lite.sh

Do initialisation de OpenSSL (se prépare à télécharger et compiler OpenSSL premier)

$ cd .. 
$ ./init-android-openssl.sh 

Assurez-vous que vous avez fait pour votre SDK et le chemin NDK.

(NDK r10e preffered - Je ne sais pas si SDK est nécessaire, mais juste au cas où je l'ai fait exporté)

REMARQUE: assurez-vous que vous avez changé votre chemin correctement qui est seul exemple de chemin que je l'ai utilisé .

export ANDROID_SDK="/home/ZiomusGorliczanin/SDK" 
export ANDROID_NDK="/home/ZiomusGorliczanin/NDK" 

Ouvrir IjkPlayer/android/dossier contrib et lancez la commande compile-openssl.sh propre et tout (qui compilera OpenSSL pour tous les processeurs).

$ cd android/contrib 
$ ./compile-openssl.sh clean 
$ ./compile-openssl.sh all 

La compilation peut durer 10 min.

Compile FFMPEG avec OpenSSL pour tous les processeurs:

$ cd android/contrib 
$ ./compile-ffmpeg.sh clean 
$ ./compile-ffmpeg.sh all 

Enfin compilez IjkPlayer avec tous ci-dessus comme liblary.

$ cd .. 
$ ./compile-ijk.sh all 

Après toutes ces étapes, vous devriez avoir liblaries dans ces dossiers (trois fichiers * .so):

ijkplayer/ijkplayer-armv5/src/main/libs 
ijkplayer/ijkplayer-armv7a/src/main/libs 
ijkplayer/ijkplayer-arm64/src/main/libs 
ijkplayer/ijkplayer-x86/src/main/libs 

Essayez d'importer projet gradle à votre Android Studio Run IJK-exemple pour les tests .

+0

Merci beaucoup!Je pourrais recompiler la lib et faire fonctionner https maintenant! –