Nutzt wer Boost&Visual Studio 10?

  • Soweit ich erfahren habe, braucht man für das Compilieren von Boost das beigelieferte Tool bjam; das sollte dann je nach vorhandenem Compiler das Einbinden erledigen.

    Ich kann dir nicht versprechen, dass ich das hinkriege, ich hab nicht wirklich Erfahrung mit C++.

  • gucke mir gerade https://www.youtube.com/watch?v=5AmwIwedTCM an und werde mal in ner VM gucken ob ich das zum Laufen bringe :)
    anders als im Tutorial muss man nicht nur link=static sondern link=static runtime-link=static angeben.
    -> im Anhang die hoffentlich statisch kompilierte Version :)

  • Es scheint erst mal zu tun, was es soll:

    Code
    FLVExtractCL_cpp.exe -v -a -t -d X y.flv

    entpackt Video (z.B. als AVI oder 264), Audio (z.B. als MP3 oder AAC) und Timecodeliste aus y.flv in Verzeichnis X; danach aber stürzt es leider ab:

    Zumindest bei zwei getesteten FLV mit FLV1 und MP3. Scheint also noch eine Unsauberkeit drin zu sein. In diesem Fall wurden True und Average Framerate nicht mehr angezeigt.

  • Laut CallStack wird MP3Writer::Wrtite VBRHeader
    "General::CopyBytes(buff, 0, BitConverterBE::GetBytes(header));"

    Code
    namespace General {
        void CopyBytes(std::vector<byte> & dst, int dstOffset, std::vector<byte> const & src)
        {
          memcpy(reinterpret_cast<void*>(&dst[0] + dstOffset), reinterpret_cast<void const*>(&src[0]), src.size()); #hier fliegt es
        }


    aufgerufen, was einem dann um die Ohren fliegt

  • Noch mal kurz drauf geguckt, irgendwo verpointert sich der Code wenn es darum geht die Datei zu schließen,... da ich aber eigentlich nur am Timecode extrahieren interessiert bin, werde ich dem nicht genauer nachgehen,... werde moitah mal ne Email schreiben, da ja leider keine Kontaktdaten zu 'TheProphet' angegeben sind,...

  • Selur: Kommt der Fehler vielleicht von Deiner etwas "altbackenen" Boost-Version? ;) Du hast zum compilieren v1.40 verwendet, was bei mir diese Meldung bringt:

    Code
    ./FLVExtractCL: error while loading shared libraries: libboost_filesystem.so.1.40.0: cannot open shared object file: No such file or directory


    Da ich unter Sueeze nativ Boost v1.42 nutze, hab ich's dann mal damit gebaut schon lassen sich auch Audio-Spuren extrahieren. Wer's mal testen will...
    FLVExtractCL.zip
    PS.: Wenn ein Programm wegen einer nicht vorhandenen Komponente meckert, ist es doch eigentlich nicht statisch, oder?

  • komisch ein "ldd -v LFVExtractCL" sagt bei meiner Version 'das Programm ist nicht dynamisch gelinkt' weshalb ich gedacht hatte das mit dem statischen Linken hätte geklappt.
    Grummel,... (boost 1.4 wurde verwendet weil ich unter Ubuntu 10.04 compiliert hatte :()
    Unter Windows wo der Crash auftritt hatte ich aber die aktuelle 1.52 verwendet.

    Zitat

    Wer's mal testen will...

    Code
    ./FLVExtractCL: error while loading shared libraries: libboost_filesystem.so.1.42.0: cannot open shared object file: No such file or directory


    -> statisch ist die anscheinend auch nicht :/
    (hab jetzt bei mir erst mal die library in die zip dazu gepackt, bis ich oder jemand anders Zeit&Lust hat FLVExtract irgendwie statisch zu kompilieren,..)

  • -> statisch ist die anscheinend auch nicht :/


    Nein, natürlich nicht. Ich hab es nur mit 'nem einfachen 'make' gebaut. Wirklich richtig statisch bauen ist unter Linux so eine Sache... Das hieße ja im Klartext, daß die Runtimes der nötigen Komponenten in das jeweilige Programm mit eingebaut werden. Diese können dann aber wiederum von irgendwelchen Komponenten abhängen, die ebenfalls mit rein müßten und so geht das dann immer weiter. Im ungünstigsten Fall hat man es mit einem ganzen Rattenschwanz von Abhängigkeiten zu tun, was die Sache dann schwierig macht.
    Aber in diesem Fall könnte es klappen. Probiere mal diese hier, die ist zumindest schon mal deutlich größer :D : FLVExtractCL.zip (ist jetzt mit Boost 1.50 gebaut)

    2 Mal editiert, zuletzt von pintcat (24. November 2012 um 18:26)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!