Misc (multimedia)
Fotos vom Smartphone übertragen
- Geht schnell und stressfrei mit jmtpfs. Dieses lässt sich als Paket installieren.
- Das Smartphone an den Micro-USB-Port anschließen und die Art der Datenübertragung wählen:
"Daten übertragen (mtp)"
- Daten z.B. nach /mnt mounten:
jmtpfs /mnt
und von dort kopieren
Bootbaren USB-Stick erstellen
Voraussetzung: Ein Ordner namens ISO, in dem sich bootbare Dateien (z.B. für ein Windows-Image) befinden
Ein ISO-Image lässt sich sehr einfach mit dem Tool xorrisofs erstellen.
Zunächst muss dieses installiert werden
root ##i## $ sudo apt install xorriso
Das Erzeugen des ISO geht dann wie folgt:
root ##i## $ xorrisofs -r -J -o ./windows10.iso ./ISO
Das ISO-Image kann man dann mit "dd" auf den USB-Stick kopiert werden. Je nachdem, um welches Device es sich handelt, kann das dann so aussehen:
root ##i## # dd if=windows.iso of=/dev/sde
Achtung: Keine Partition erstellen/angeben !
Tracks aus Musik-CD extrahieren
# cdda2wav -D <devicename> /dev/hda -t 1 song1.wav
also z.B.
# cdda2wav -D /dev/cdrom -t 2 song2.wav # cdda2wav -D /dev/cdrom0 -t 3+4 mixed.wav
(macht aus Nr. 3 u. 4 eine große Datei)
Musik-CD brennen
Für eine Musik-CD wird KEIN Isoimge erzeugt!
Stattdessen alle wav-Dateien in einem Ordner speichen, dort hineinwechseln und
ausführen:
# cdrecord -dao *.wav
cdrecord wird in neueren Debian-Releases durch wodim ersetzt. Beispiel:
$ /usr/bin/wodim -v gracetime=2 dev=/dev/sr0 speed=4 -sao driveropts=burnfree -data
DVD brennen
# growisofs -R -J -Z /dev/dvd /path/to/file-or-directory
wobei -R=Rockridge, -J=Joliet und -Z=device (kann von System zu System variieren). Wer sich nicht sicher ist, kann mit -dry-run den Brennvorgang erstmal simulieren.
Eine sehr schöne Übersicht über DVDs allg. und unter Linux gibt es hier
http://www.rakekniven.de/linux/k-base/dvd-brennen.php
ffmpeg
Das Tool zum Filme (und Sound) bearbeiten. Hier ein paar Beispiele
- Sound entfernen:
$ ffmpeg -i MVI_1747.MOV -vcodec copy -an MVI_1747_mute.MOV
- Bild um 180° drehen:
$ ffmpeg -i input.mp4 -vf "transpose=2,transpose=2" output.mp4
- Sound extrahieren (als mp3 abspeichern):
# ffmpeg -i MVI_1751.MOV MVI_1751.mp3
- Lautstärke verändern (z.B. 1.5fach)
# ffmpeg -i input.wav -af "volume=1.5" output.wav
- 2 Sounddateien mergen:
# ffmpeg -i "concat:MVI_1751.mp3|MVI_1753.mp3" -c copy MVI_1752.mp3
(Bei größeren Dateimengen ist sox eine gute Alternative:
# sox file1.wav file2.wav ... filen.wav newfile.wav
)
- Ab Position n den Rest abschneiden:
# ffmpeg -i MVI_1752.mp3 -to 00:00:27 MVI_1752_short.mp3
- Ausschnitt rausschneiden und gleichzeitig als mp3 abspeichern
# ffmpeg -i Buena_Vista_Social_Club.mp4 -ss 00:04:16 -to 00:09:16 bvsc2.mp3
- Audio zu Video zufügen:
# ffmpeg -i MVI_1747_mute.MOV -i MVI_1752a.mp3 -codec copy -shortest MVI_1747_sound.MOV
- Film um 180° drehen:
# ffmpeg -i input.mp4 -vf "transpose=2,transpose=2" output.mp4
- Beispiel für 2 Videodateien zusammenmergen:
#!/bin/bash F1=MVI_1869.MOV F2=MVI_1870.MOV RESULT=MVI_1871.mp4 # sound #ffmpeg -i $F1 intermediate.mp3 #ffmpeg -i $F2 intermediate.mp3 # movie ohne sound # ffmpeg -i $F1 -c copy -bsf:v h264_mp4toannexb -f mpegts intermediate1.ts # ffmpeg -i $F2 -c copy -bsf:v h264_mp4toannexb -f mpegts intermediate2.ts # ffmpeg -f mpegts -i "concat:intermediate1.ts|intermediate2.ts" -c copy -bsf:a aac_adtstoasc $RESULT # rm intermediate{1,2}.ts # movie mit Sound ffmpeg -i $F1 -i $F2 \ -filter_complex "[0:v:0] [0:a:0] [1:v:0] [1:a:0] concat=n=2:v=1:a=1 [v] [a]" \ -map "[v]" -map "[a]" $RESULT
Soundtest mit arecord
Manchmal ist es hilfreich, Headset und Lautsprecher zu testen. So geht das:
$ arecord -f S16_LE -r 3000 | aplay -vvv
.wav Dateien mit xine abspielen
Wenn eine Fehlermeldung missing plugin kommt...
- xine-lib-<aktuelle Versionnummer> kompilieren
- w32codecs-qt6 installieren
Java Plugin im Browser
Stand für Squeeze/Wheezy
Iceweasel
a) Von der oracle-Website (empfohlen)
Nach dem neuesten Plugin suchen
http://www.oracle.com/technetwork/java/javase/downloads
und die jre-Verson wählen also z.B.
http://www.oracle.com/technetwork/java/javase/downloads/jre7u7-downloads-1836441.html
Je nach Architektur jre-7u7-linux-i586.tar.gz oder jre-7u7-linux-x64.tar.gz wählen. tar.gz nach /usr/lib/jvm entpacken (wer versucht, mit alien und den rpms zu operieren, macht sich nur unglücklich).
Richtigen Java-Pfad auswählen:
# /usr/lib/mozilla/plugins$ update-alternatives --config java
Selection Path Priority Status ------------------------------------------------------------ 0 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 auto mode 1 /usr/bin/gij-4.4 1044 manual mode 2 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 manual mode 3 /usr/lib/jvm/java-6-sun/jre/bin/java 63 manual mode * 4 /usr/lib/jvm/jre1.7.0_07/bin/java 1 manual mode
Folgende Verlinkung erstellen, wenn nicht vorhanden:
/usr/lib/mozilla/plugins/libjavaplugin.so -> /etc/alternatives/mozilla-javaplugin.so /etc/alternatives/mozilla-javaplugin.so -> /usr/lib/jvm/jre1.7.0_07/plugin/i386/ns7/libjavaplugin_oji.so
Im Browser unter "about:addons" kontrollieren, ob das Java-Plugin aktiviert ist. Falls noch Probleme auftreten, Browsercache löschen, Browser neu starten.
Hint: KEINE JAVA_HOME, PLUGIN_HOME Variablen setzen (wird in vielen Foren geraten und macht mehr kaputt als es nützt, weil man die Dinger vergisst, sie nach dem nächsten Update eh nicht mehr stimmen und man sich totsucht nach dem Fehler)
b) Aus den Java-Paketen der aktuellen Distribution
(nicht empfohlen, da meist nicht sehr aktuell (v.a. bei stable/oldstable))
- default-jre 1:1.6-40
- openjdk-6-jre 6b18-1.8.13-0+squeeze2
- sun-java6-jre 6.26-0squeeze1
- openjdk-6-jdk 6b18-1.8.13-0+squeeze2
- openjdk-6-jre 6b18-1.8.13-0+squeeze2
- java-common 0.40
- sun-java6-bin 6.26-0squeeze1
- sun-java6-jre 6.26-0squeeze1
- icedtea6-plugin 6b18-1.8.13-0+squeeze2
Richtigen Java-Pfad auswählen
/usr/lib/mozilla/plugins$ update-alternatives --config java There are 3 choices for the alternative java (providing /usr/bin/java). Selection Path Priority Status ------------------------------------------------------------ 0 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 auto mode 1 /usr/bin/gij-4.4 1044 manual mode * 2 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 manual mode 3 /usr/lib/jvm/java-6-sun/jre/bin/java 63 manual mode
folgende Verlinkung erstellen, wenn nicht vorhanden
/usr/lib/mozilla/plugins/libjavaplugin.so -> /etc/alternatives/mozilla-javaplugin.so /etc/alternatives/mozilla-javaplugin.so -> /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
Falls vorher Fehlversuche stattfanden, icedteacache löschen
rm -r .icedteaplugin/cache/http/* rm -r .icedteaplugin/cache/https/*
Und Browsercache löschen. Browser neu starten.
Hint: KEINE JAVA_HOME, PLUGIN_HOME Variablen setzen (wird in vielen Foren geraten und macht mehr kaputt als es nützt, weil man die Dinger vergisst, sie nach dem nächsten Update eh nicht mehr stimmen und man sich totsucht nach dem Fehler)
Opera
- Java herunterladen und installieren wie oben beschrieben.
- passenden Symlink ins Plugin-Verzeichnis setzen.
cd /usr/lib/opera/plugins/ ln -sf /usr/lib/jvm/jre1.7.0_07/lib/i386/libnpjp2.so
- Hint: nicht jede Opera-Version passt zu jeder Java-Version. Momentaner Stand (2013-03):
Version 12.14 + Jre 7.0_07 (Die neuen matchen nicht - "Plugin crashed")
Testseite
http://www.java.com/de/download/testjava.jsp
Image::Magick
Perlmodul, mit dem man Massenbearbeitung von Bildern (verkleinern, vergrößern,
...) durchführen kann.
Beispielscript resizeXpercent.pl:
Alle Bilder eines bestimmten Ordners werden um X Prozent verkleinert und in
einen anderen Ordner gespeichert.
Image Magick mit jpeg-Support benutzen
libjpeg-dev installieren
Iceweasel-Schriften vergrößern (obsolete)
War unter Etch mal notwendig, aber falls es nochmal gebraucht wird...
Über die fonts in "settings" passiert nicht viel.
Ins chrome-Verzeichnis wechseln, z.B.
# cd .mozilla/firefox/80m7rboa.default/chrome # cp userChrome-example.css userChrome.css
Folgende Einträge in der userChrome.css vornehmen:
/* Global UI font */ * { font-size: 11pt !important; * font-family: Verdana !important; * } /* Menu font */ menu, menulist, menuitem { font-family: Arial !important; font-size: 8pt !important; }