Falls ja, könnte er mir dann ne statische 32bit Version von FLV Extract CL C++ kompilieren?
Source Code (mit VS Projekt) gibt es bei http://www.moitah.net/download/latest/FLVExtractCL_cpp.zip (siehe: http://www.moitah.net/)
Cu Selur
Falls ja, könnte er mir dann ne statische 32bit Version von FLV Extract CL C++ kompilieren?
Source Code (mit VS Projekt) gibt es bei http://www.moitah.net/download/latest/FLVExtractCL_cpp.zip (siehe: http://www.moitah.net/)
Cu Selur
VS 2010 Pro hätte ich in der Firma. Aber was ist Boost?
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++.
kannst ja mal gucken, wenn nicht dann nicht
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:
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:
[size=8]---------------------------
FLVExtractCL_cpp.exe - Fehler in Anwendung
---------------------------
Die Anweisung in "0x00424108" verweist auf Speicher in "0x00000000". Der Vorgang
"written" konnte nicht auf dem Speicher durchgeführt werden.
Klicken Sie auf "OK", um das Programm zu beenden.
Klicken Sie auf "Abbrechen", um das Programm zu debuggen.
---------------------------
OK Abbrechen
---------------------------[/size]
Alles anzeigen
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.
Kann ich bestätigen,... wenn mand das extrahieren des Audiostreams weg lässt, dann crashed es nicht.
Laut CallStack wird MP3Writer::Wrtite VBRHeader
"General::CopyBytes(buff, 0, BitConverterBE::GetBytes(header));"
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:
./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?
ZitatWenn ein Programm wegen einer nicht vorhandenen Komponente meckert, ist es doch eigentlich nicht statisch, oder?
Yup, da ist wohl was beim bauen schief gelaufen,..
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.
ZitatWer's mal testen will...
./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 : FLVExtractCL.zip (ist jetzt mit Boost 1.50 gebaut)
Yo scheint zu gehen.
Nice Danke!
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!