2016-07-22 25 views
1

ich in meiner android app bin mit ijkplayer, die ichAndroid lib ijkplayer Last https-URL

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

kompilieren mit perfekt funktioniert Laden http-URLs, aber wenn ich versuche, https-URLs zu laden erhalte ich diesen Fehler

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

und kann mein Video nicht laden. Ich weiß nicht, ob es einen Unterschied macht, aber die URL, die ich zu laden versuche, ist eine .m3u8, aber wenn es http ist, funktioniert es gut.

Wie kann ich ffmpeg in dieser lib neu kompilieren?

Antwort

3

Hallo Petro ich bin nicht professionell, aber hoffe, dieses Tutorial würde helfen.

Sie haben mit OpenSSL-Unterstützung zu kompilieren ijkplayer Links zu öffnen, https, zu, dass diese Schritte zu tun:

Schnappen neueste Version von IjkPlayer von Github:

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

Öffnen gerade heruntergeladen Ordner ijkplayer Entfernen Sie Symlinks zu module.sh und erstellen Sie Symlink zu modullite.sh

Do Initialisierung von OpenSSL (fertig openssl herunterladen und kompilieren zuerst)

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

sicher, dass Sie für Ihre SDK und NDK Pfad hingewiesen haben.

(NDK r10e preffered - Ich bin nicht sicher, ob SDK aber nur für den Fall benötigt wird, habe ich es exportierte)

Hinweis: Stellen Sie sicher, dass Sie Ihren Weg richtig das ist nur Beispiel Pfade geändert, was ich verwendet habe .

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

öffnen IjkPlayer/android/contrib Ordner und feuern compile-openssl.sh sauber und alle Befehl (das wird openssl für alle Prozessoren kompilieren).

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

Die Kompilierung kann eine Weile dauern 10 min.

Compile FFMpeg mit OPENSSL für alle Prozessoren:

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

Schließlich IjkPlayer als liblary mit allen oben kompilieren.

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

Nach all diesen Schritten Sie liblaries in diesen Ordnern (Three * .so-Dateien) haben sollte:

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

Versuchen zu importieren gradle Projekt auf Ihr Android-Studio und Run IJK-Beispiel für das Testen .

+0

Vielen Dank!Ich könnte die lib neu kompilieren und https jetzt arbeiten lassen! –