Archiv der Kategorie: Alltags Probleme

Markdown und Latex kombinieren

Latex ist kompliziert und wirft wilde Fehlermeldungen, die kein Mensch versteht und keiner verstehen will. Die erstellten Formeln sind allerdings unschlagbar schön und erstaunlicherweise relativ komfortabel und eingängig zu erstellen.

Markdown hingegen ist sehr simpel, aber es fehlt die Möglichkeit Formeln einzubinden.

Glücklicherweise kann man Markdown und Latex kombinieren und zwar mit: Pandoc.
Weiterlesen

FAAC-1.28 kompilieren

Wenn man versucht FAAC zu kompilieren bekommt man folgenden Fehler:

In file included from mp4common.h:29,
from atom_avc1.cpp:22:
mpeg4ip.h:126: error: new declaration ‚char* strcasestr(const char*, const char*)‘
/usr/include/string.h:367: error: ambiguates old declaration ‚const char* strcasestr(const char*, const char*)‘
In file included from mp4common.h:29,
from 3gp.cpp:28:
mpeg4ip.h:126: error: new declaration ‚char* strcasestr(const char*, const char*)‘
/usr/include/string.h:367: error: ambiguates old declaration ‚const char* strcasestr(const char*, const char*)‘
In file included from mp4common.h:29,
from atom_amr.cpp:28:
mpeg4ip.h:126: error: new declaration ‚char* strcasestr(const char*, const char*)‘
/usr/include/string.h:367: error: ambiguates old declaration ‚const char* strcasestr(const char*, const char*)‘
atom_avc1.cpp: In constructor ‚MP4Avc1Atom::MP4Avc1Atom()‘:
atom_avc1.cpp:27: warning: deprecated conversion from string constant to ‚char*‘
atom_avc1.cpp:30: warning: deprecated conversion from string constant to ‚char*‘
atom_avc1.cpp:32: warning: deprecated conversion from string constant to ‚char*‘
atom_avc1.cpp:35: warning: deprecated conversion from string constant to ‚char*‘
atom_avc1.cpp:37: warning: deprecated conversion from string constant to ‚char*‘
atom_avc1.cpp:39: warning: deprecated conversion from string constant to ‚char*‘
atom_avc1.cpp:42: warning: deprecated conversion from string constant to ‚char*‘
atom_avc1.cpp:47: warning: deprecated conversion from string constant to ‚char*‘
make[3]: *** [atom_avc1.o] Error 1
make[3]: *** Waiting for unfinished jobs….
make[3]: *** [3gp.o] Error 1
atom_amr.cpp: In constructor ‚MP4AmrAtom::MP4AmrAtom(const char*)‘:
atom_amr.cpp:33: warning: deprecated conversion from string constant to ‚char*‘
atom_amr.cpp:36: warning: deprecated conversion from string constant to ‚char*‘
atom_amr.cpp:38: warning: deprecated conversion from string constant to ‚char*‘
atom_amr.cpp:41: warning: deprecated conversion from string constant to ‚char*‘
atom_amr.cpp:43: warning: deprecated conversion from string constant to ‚char*‘
make[3]: *** [atom_amr.o] Error 1
make[3]: Leaving directory `/root/software/encoding/faac-1.28/common/mp4v2′
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/root/software/encoding/faac-1.28/common‘
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/root/software/encoding/faac-1.28′
make: *** [all] Error 2

Es geht also schlicht nicht, weil es eine Inkompatibilität zwischen Code und Compiler gibt.

Jetzt die gute Nachricht! Es gibt einen Patch.
Diesen findet man hier:
http://www.linuxfromscratch.org/blfs/view/svn/multimedia/faac.html
oder als direkt Link:
http://www.linuxfromscratch.org/patches/blfs/svn/faac-1.28-glibc_fixes-1.patch

Ausführen kann man den Patch folgendermaßen (Im Verzeichnis von faac ausführen):
patch -Np1 -i faac-1.28-glibc_fixes-1.patch

Beim kompilieren werden zwar trotzdem eine Menge Warnings rausgehauen, trotzdem läuft der Codec danach einwandfrei und kann produktiv eingesetzt werden.

Google Chrome aus der sources.list entfernen

Nach der Installation von Google Chrome schreibt sich google in die sources.list ein. Um Google wieder aus der sources.list zu entfernen müssen im Verzeichnis „/etc/apt/sources.list.d“ die Dateien google-chrome.list und google-chrome.list.save gelöscht werden.

Hier die zwei Zeilen die dazu nötig sind:
cd /etc/apt/sources.list.d/
rm google*

Dann einmal apt-get update ausführen und die sources.list ist wieder Google frei 🙂

Mp4 Streaming für jwplayer, flashplayer ermöglichen

Viele Encoder schreiben die MP4-Dateien unsauber und setzen den Index an das Ende der Datei und nicht an den Anfang, daher muss der Flashplayer zunächst die gesamte Datei laden um das Video streamen zu können.

Um diesen Fehler zu reparieren benötigt man das Tool qt-faststart.

Das Tool bekommt man hier:
Klick mich

Einfach via: easy_install qtfaststart installieren.

Wenn das Tool installiert ist, dann müsst ihr qtfaststart nutzen und nicht qt-faststart. Letzteres Tool ist für MOV-Dateien gedacht.

Die Syntax ist selbsterklärend:

Usage: qtfaststart [options] infile [outfile]

Vielen dank an:
http://videoencoding.websmith.de/encoding-praxis/linux-qtfaststart-metadaten.html
und natürlich an
https://github.com/danielgtaylor/qtfaststart