libav und x264 (C/C++, evtl. ARMv7 asm) für Android kompilieren?

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von GrandAdmiralThrawn, 08.11.2011.

  1. GrandAdmiralThrawn, 08.11.2011 #1
    GrandAdmiralThrawn

    GrandAdmiralThrawn Threadstarter Neuer Benutzer

    Beiträge:
    7
    Erhaltene Danke:
    0
    Registriert seit:
    08.11.2011
    Phone:
    Motorola Milestone 2
    Grüß euch!

    Ich habe momentan ein kleines Problem, das ich leider selber momentan nicht zu lösen befähigt bin:

    Ich würd gerne das [libav Codecsystem] mit der [Android NDK] Toolchain bauen, und danach noch [x264] dagegen linken und bauen, und das fertige (hoffentlich statisch gelinkte) x264 Binary dann am Android Phone nutzen. x264 ist ein H.264/AVC Encoder, der sich lässig als Commandlinetool nutzen läßt.

    Bisher habe ich das Zeug erfolgreich auf Linux in x86, x86_64 und 64-Bit Little Endian MIPS (chinesische Loongson-2f CPU) gebaut, aber halt nie als cross-compile, sondern immer direkt auf der Zielplattform, was ja bei Android ned geht, weils kein autoconf/make/gcc System zu geben scheint auf dem System direkt.

    Hat irgendwer damit Erfahrung, wie man C/C++ mit klassischem configure/make Setup mit der Android NDK Toolchain übersetzt? Ich pack diesen cross-compile Wahnsinn gar ned, und die Doku ist.. nicht ganz trivial für einen regulären User, sagen wir's Mal so. Ich habe zwar [diesen Thread] hier bzgl. Makefile-Editing gesehen, aber ich muß mich ja auf Autoconf verlassen, also meine Makefiles würden von configure Skripten erzeugt werden für libav und x264.

    Daher wollte ich Mal nachfragen, ob es hier jemanden gibt, der evtl. etwas Orientierungs-Starthilfe leisten könnte.

    Als Plattform fürn Bau hab ich ein CentOS 6.0 Linux x86_64 (multilib), und halt die neueste Android NDK. SDK auch, brauchts aber wohl ned für den Code. GNU make, autoconf, yasm usw. sind natürlich auch vorhanden.. Ich glaub ja ich bräuchte nur ein entsprechend passendes Setup, sodaß statt den System Tools und Libs halt nur die des NDK genutzt werden mit der korrekten Target Arch und entsprechenden Optimierungen, plus evtl den yasm, um die ARMv7 Assembler Codepfade nutzen zu können, die ja auch vorliegen bei dem Source (Fallback von asm auf reines C/C++ ist möglich im Falle, daß das Assembler nicht gehen würde aus irgendeinem Grund).

    Aber wie das genau aussehen soll, ich durchblicks ned. Es gibt Leute im Netz, die es geschafft haben, aber die fragmentierten und unvollständigen Infos dazu waren nicht sehr hilfreich. Guide gibts keins, und der Market... najo, den kann man in so einem Fall vergessen.. Commandline Tools für Video Encoding gibts da generell ned..

    Ich habe auch versucht, den Code mittels [Openembedded] Build Environment mit [Ångström Distribution] für den OMAP3 zu bauen, aber da ist es mir nicht Mal gelungen, das Build Environment selbst zu kompilieren, zuviele Errors, die sich zum Teil mit meinen Kenntnissen nicht mehr haben fixen lassen..

    Also wenn es hier Experten auf dem Gebiet der Portierung von C/C++ und evtl. asm Code in klassischem autoconf/make Setup auf Android gibt, ich wäre für etwas Hilfe sehr dankbar!

    :)
     

Diese Seite empfehlen