Misc (multimedia): Difference between revisions

From Linuxwiki
Jump to navigation Jump to search
No edit summary
 
(51 intermediate revisions by the same user not shown)
Line 1: Line 1:
== Fotos vom Smartphone übertragen ==
* Geht schnell und stressfrei mit '''jmtpfs'''. Dieses lässt sich als Paket installieren.<br>
* 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

Anmerkung: Sollte unter KDE folgender Fehler auftreten

<pre>
Listing raw device(s)
Device 0 (VID=...) is a Samsung Galaxy models (MTP).
Found 1 device(s):
Samsung: Galaxy models (MTP) (...) @ bus 1, dev 10
Attempting to connect device(s)
libusb_claim_interface() reports device is busy, likely in use by GVFS or KDE MTP device handling already
LIBMTP PANIC: Unable to initialize device
Unable to open raw device 0
</pre>

Kann man folgendes versuchen:
<pre>
killall kiod5
</pre>
bzw.
<pre>
killall gvfs-udisk2
</pre>
unter xfce.

Leider ist es unter xfce offenbar nicht mehr möglich mit o.g. Tools ein Smartphone zu mounten. Eine andere Möglichkeit ist der Android Debugger '''adb'''.<br>
Installieren und sich den Inhalt der Speicherkarte ansehen:
<pre>
sudo apt install adb
adb devices
</pre>
(Es sollte mindestens ein Device angezeigt werden)
<pre>
adb shell
ls /sdcard/DCIM
strg+d
</pre>

Außerdem muss man an seinem Android Gerät noch ein paar Einstellungen vornehmen:
* Developer Mode einschalten (7x auf die Serial tippen)
* USB Debugging einschalten (unter den Developer Options)
* Nach dem Einstecken des USB-Kabels Data Transfer wählen (anstatt nur Aufladen)

Eine ausführliche Anleitung für diese Schritte gibt es hier:<br>
https://droidwin.com/fix-adb-device-not-found-error/

Mit
<pre>
adb pull <source> <destination>
</pre>
lassen sich die Dateien nun herunterziehen.

Man kann der adb Shell auch Argumente mitgeben z.B.
<pre>
adb shell ls /sdcard/DCIM/Camera
</pre>

=== Annotations ===
* Unter xfce4 kann man Fotos am besten mit jmtpfs herunterladen. Davor muss man konkurierende Prozesse mit Zugriff auf die Kamera in einer Endlosschleife abschießen
<pre>
while sleep 0.1; do pkill kiod5; pkill gvfs-udisks2; done
</pre>
und in einer anderen Shell das Device mounten:
<pre>
mkdir /tmp/cam
jmtpfs /tmp/cam
Device 0 (VID=18d1 and PID=4ee2) is a Google Inc Nexus/Pixel (MTP+ADB).
Android device detected, assigning default bug flags
ls /tmp/cam/Interner\ gemeinsamer\ Speicher/DCIM/
Camera PeakLens
</pre>

* Unter kde kann man sich mir dem adb (s.o.) behelfen, indem man kiod+gvfs in einer Endlosschleife abschießt (s.o.):
<pre>
while sleep 0.1; do pkill kiod5; pkill gvfs-udisks2; done
</pre>
* Zu viele Fotos auf einmal herunterladen, bricht irgendwann ab. Hier ein paar Commands, wie man eine Auswahl heruntergeladen bekommt (e.g. Jan. 2024):
<pre>
 adb shell ls /sdcard/DCIM/Camera|grep IMG_2024 >/tmp/img.txt
for IMG in $(grep 202401 /tmp/img.txt) ; do adb pull /sdcard/DCIM/Camera/$IMG CAM/; done
</pre>

== 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.
<br>Zunächst muss dieses installiert werden
$ sudo apt install xorriso


Das Erzeugen des ISO geht dann wie folgt:
$ 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:
# dd if=windows.iso of=/dev/sde
Achtung: '''Keine''' Partition erstellen/angeben !

==Tracks aus Musik-CD extrahieren==
==Tracks aus Musik-CD extrahieren==

# cdda2wav -D <devicename> /dev/hda -t 1 song1.wav
$ icedax -D <devicename> -t 1 song1.wav
also z.B.
also z.B.
# cdda2wav -D /dev/cdrom -t 2 song2.wav
$ icedax -D /dev/cdrom -t 2 song2.wav
# cdda2wav -D /dev/cdrom0 -t 3+4 mixed.wav
$ icedax -D /dev/cdrom0 -t 3+4 mixed.wav
(macht aus Nr. 3 u. 4 eine große Datei)
(macht aus Nr. 3 u. 4 eine große Datei)

Wer lieber mp3s hat, kann '''cdda2mp3''' verwenden.


==Musik-CD brennen==
==Musik-CD brennen==
Line 11: Line 118:
ausführen:
ausführen:
# cdrecord -dao *.wav
# 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==
==DVD brennen==
Line 18: Line 129:
Eine sehr schöne Übersicht über DVDs allg. und unter Linux gibt es hier<br>
Eine sehr schöne Übersicht über DVDs allg. und unter Linux gibt es hier<br>
http://www.rakekniven.de/linux/k-base/dvd-brennen.php
http://www.rakekniven.de/linux/k-base/dvd-brennen.php

== Von DVD extrahieren ==
Als brauchbar für die Erstellung eines mp4 von DVD hat sich im Test handbrake herausgestellt. Lässt sich als Paket installieren. Nur der Sound kommt etwas leise. Dieser lässt sich mit [[#ffmpeg|ffmpeg]] aufbessern (s.u.).

== Monitor kalibrieren ==

Sehr empfehlenswert ist das Tool DisplayCAL [https://displaycal.net/], das gängige Kalibrierungsgeräte wie z.B. Spyder, unterstützt.<br>
Verwendete Hardware:<br>
[https://www.dpreview.com/articles/3856869836/spyder3 Spyder 3]

Hier gibt es eine umfassende Anleitung:

https://www.reallinuxuser.com/how-to-color-calibrate-your-monitor-in-linux/

=== Anmerkung ===

Die Originalversion benutzt Python2 und wird daher auf den gängigen Linux-Distributionen nicht mehr unterstützt. Es gibt aber ein Nachfolgeprojekt: https://github.com/eoyilmaz/displaycal-py3
und darauf basierend ein Debianpaket:
$ sudo apt install displaycal

Unten genanntes wurde mit der alten Version und python2 getestet.

=== Protipp ===

* Wer keine guten/farbstichige Ergebnisse erzielt, kann als Whitepoint 5300K versuchen.

[[File:Screenshot 2021-02-23 19-55-44.png|800px]]

* Am Ende wird ein '''Profil''' (.icc Datei) erzeugt. Laden lässt sich dieses mit xcalib:

$ xcalib <profilname>

(und ein bisschen Theorie zu den konfigurierbaren Parametern:

https://displaycal.net/#colorimeter-corrections )


== ffmpeg ==
== ffmpeg ==
'''Das''' Tool zum Filme bearbeiten. Hier ein paar Beispiele
'''Das''' Tool zum Filme (und Sound) bearbeiten. Hier ein paar Beispiele:

* Bild um 180° drehen:
$ ffmpeg -i input.mp4 -vf "transpose=2,transpose=2" output.mp4

* Sound entfernen:
* Sound entfernen:
# ffmpeg -i MVI_1747.MOV -vcodec copy -an MVI_1747_mute.MOV
$ ffmpeg -i MVI_1747.MOV -vcodec copy -an MVI_1747_mute.MOV
* Sound extrahieren (als mp4 abspeichern):
* Sound extrahieren (als mp3 abspeichern):
# ffmpeg -i MVI_1751.MOV MVI_1751.mp3
# 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:
== .wav Dateien mit xine abspielen ==
# ffmpeg -i "concat:MVI_1751.mp3|MVI_1753.mp3" -c copy MVI_1752.mp3
Wenn eine Fehlermeldung missing plugin kommt...
(Bei größeren Dateimengen ist sox eine gute Alternative:<br>
*xine-lib-<aktuelle Versionnummer> kompilieren
# sox file1.wav file2.wav ... filen.wav newfile.wav
*w32codecs-qt6 installieren
)
* 2 Videodateien mergen
Falls auf Grund unterschiedlicher Codierung sich das obige Beispiel nicht aus Videos übertragen lässt:
$ ffmpeg -ifile1.mp4 -i file2.mp4 -filter_complex "[0:v][0:a][1:v][1:a] concat=n=2:v=1:a=1 [outv] [outa]" -map "[outv]" -map "[outa]" out.mp4


Beispiel für das Zusammenmergen von 3 Videos incl. Sound:
==Java Plugin im Browser==
$ ffmpeg -i VID_20241225_part1.mp4 -i VID_20241225_part2.mp4 -i VID_20241225_142603~2.mp4 -filter_complex "[0:v:0][0:a:0][1:v:0][1:a:0][2:v:0][2:a:0] concat=n=3 :v=1:a=1[outv][outa]" -map "[outv]" -map "[outa]" output.mp4
Stand für Squeeze/Wheezy<br>


Beispiel für das Zusammenmergen von 4 Videos zu 1 großen:
=== Iceweasel ===
$ ffmpeg -i part1.mp4 -i part2.mp4 -i MVI_0309.MP4 -i MVI_0310.MP4 -filter_complex "[0:v:0][0:a:0][1:v:0][1:a:0][2:v:0][2:a:0][3:v:0][3:a:0]concat=n=4:v=1:a=1[outv][outa]" -map "[outv]" -map "[outa]" bigmovie.mp4
==== a) Von der oracle-Website (empfohlen) ====


Alternative:<br>
Nach dem neuesten Plugin suchen<br>
Datei erstellen mit dem Inhalt der Videodateien:
http://www.oracle.com/technetwork/java/javase/downloads
cat > myfile.txt<<EOF
und die jre-Verson wählen also z.B.<br>
file 'MVI_1547.mp4'
http://www.oracle.com/technetwork/java/javase/downloads/jre7u7-downloads-1836441.html
file 'MVI_1610.mp4'
EOF


$ ffmpeg -f concat -i myfile.txt -c copy output.mp4
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).


Sollte das Video nicht sauber durchlaufen, mit avidemux öffnen und die Schnittstelle rausschneiden.
Richtigen Java-Pfad auswählen:
# /usr/lib/mozilla/plugins$ update-alternatives --config java


(wer noch immer nicht genug hat: https://trac.ffmpeg.org/wiki/Concatenate )
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


* Ab Position n den Rest abschneiden:
Folgende Verlinkung erstellen, wenn nicht vorhanden:
# ffmpeg -i MVI_1752.mp3 -to 00:00:27 MVI_1752_short.mp3
/usr/lib/mozilla/plugins/libjavaplugin.so -> /etc/alternatives/mozilla-javaplugin.so
* Ausschnitt rausschneiden und gleichzeitig als mp3 abspeichern
/etc/alternatives/mozilla-javaplugin.so -> /usr/lib/jvm/jre1.7.0_07/plugin/i386/ns7/libjavaplugin_oji.so
# 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
Im Browser unter "about:addons" kontrollieren, ob das Java-Plugin aktiviert ist.
Falls noch Probleme auftreten, Browsercache löschen, Browser neu starten.
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


* Zeitraffer/Zeitlupe
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)


https://medium.com/@sekhar.rahul/creating-a-time-lapse-video-on-the-command-line-with-ffmpeg-1a7566caf877


* Untertitel zufügen
==== b) Aus den Java-Paketen der aktuellen Distribution ====
(nicht empfohlen, da meist nicht sehr aktuell (v.a. bei stable/oldstable))


Wenn die Untertitel als srt Datei vorliegen , muss man sie erst ins ass Format umwandeln:
* 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


$ ffmpeg -i subtitles.srt subtitles.ass
====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


[[Subtitles_example.srt | Hier]] gibt es ein Beispiel für ein .srt file im Format
====folgende Verlinkung erstellen, wenn nicht vorhanden====
<fortlaufende nr.>
/usr/lib/mozilla/plugins/libjavaplugin.so -> /etc/alternatives/mozilla-javaplugin.so
<time range HH:MM:SS,mmm --> HH:MM:SS,mmm>
/etc/alternatives/mozilla-javaplugin.so -> /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
<text>


Video mit Untertiteln erzeugen:
====Falls vorher Fehlversuche stattfanden, icedteacache löschen====
rm -r .icedteaplugin/cache/http/*
rm -r .icedteaplugin/cache/https/*


$ ffmpeg -i input.mp4 -vf ass=subtitles.ass output.mp4
Und Browsercache löschen. Browser neu starten.


Wer immer noch nicht genug hat:
'''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)


https://img.ly/blog/ultimate-guide-to-ffmpeg/
=== 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 ===
==Soundtest mit arecord ==
Manchmal ist es hilfreich, Headset und Lautsprecher zu testen. So geht das:
http://www.java.com/de/download/testjava.jsp

$ arecord -f S16_LE -r 3000 | aplay -vvv

== avidemux ==
Nettes Videoschnitttool. Leider nicht mehr als Debianpaket verfügbar. Kann aber hier heruntergeladen werden:<br>
https://www.fosshub.com/Avidemux.html

Am besten das Appimage herunterladen und verlinken z.B.
# ln -s /usr/local/bin/3rdparty/avidemux_2.8.1.appImage /usr/local/bin/avidemux

== Bildbetrachter ==

=== irfanview ===
https://www.irfanview.net/faq.htm

Gibt es generisch nur für Windows. Lässt sich aber auf (mindestens) 2 Arten auch für Linux installieren:

==== 1. Snap ====
https://snapcraft.io/install/irfanview/debian
$ sudo apt install snapd
$ sudo snap install irfanview
$ type -a irfanview
<i>irfanview is /snap/bin/irfanview</i>

==== 2. Wine ====
Unbedingt darauf achten, die 64bit-Version herunterzuladen!
$ wine iview460_x64_setup.exe
Danach kommt ein Windows-Installer-Fenster.
$ type -a irfanview
<i>irfanview is aliased to `wine /home/kathrin/.wine/drive_c/Program\ Files/IrfanView/i_view64.exe'</i>

=== gwenview ===
Hat ein paar nette Eigenschaften, z.B. mehrere Bilder gleichzeitig anzeigen lassen zum Vergleich. Kommt mit KDE oder als gleichnamiges Paket.

== .wav Dateien mit xine abspielen ==
Wenn eine Fehlermeldung missing plugin kommt...

* libxine2-misc-plugins installieren


==Image::Magick==
==Image::Magick==
Line 129: Line 310:
==Image Magick mit jpeg-Support benutzen==
==Image Magick mit jpeg-Support benutzen==
libjpeg-dev installieren
libjpeg-dev installieren

==Iceweasel-Schriften vergrößern (obsolete)==
War unter Etch mal notwendig, aber falls es nochmal gebraucht wird...<br>
Ü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;
}

Latest revision as of 20:56, 5 March 2025

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

Anmerkung: Sollte unter KDE folgender Fehler auftreten

Listing raw device(s)
Device 0 (VID=...) is a Samsung Galaxy models (MTP).
Found 1 device(s):
Samsung: Galaxy models (MTP) (...) @ bus 1, dev 10
Attempting to connect device(s)
libusb_claim_interface() reports device is busy, likely in use by GVFS or KDE MTP device handling already
LIBMTP PANIC: Unable to initialize device
Unable to open raw device 0

Kann man folgendes versuchen:

 killall kiod5

bzw.

killall gvfs-udisk2

unter xfce.

Leider ist es unter xfce offenbar nicht mehr möglich mit o.g. Tools ein Smartphone zu mounten. Eine andere Möglichkeit ist der Android Debugger adb.
Installieren und sich den Inhalt der Speicherkarte ansehen:

sudo apt install adb
adb devices

(Es sollte mindestens ein Device angezeigt werden)

adb shell
ls /sdcard/DCIM
strg+d

Außerdem muss man an seinem Android Gerät noch ein paar Einstellungen vornehmen:

  • Developer Mode einschalten (7x auf die Serial tippen)
  • USB Debugging einschalten (unter den Developer Options)
  • Nach dem Einstecken des USB-Kabels Data Transfer wählen (anstatt nur Aufladen)

Eine ausführliche Anleitung für diese Schritte gibt es hier:
https://droidwin.com/fix-adb-device-not-found-error/

Mit

adb pull <source> <destination> 

lassen sich die Dateien nun herunterziehen.

Man kann der adb Shell auch Argumente mitgeben z.B.

adb shell ls /sdcard/DCIM/Camera

Annotations

  • Unter xfce4 kann man Fotos am besten mit jmtpfs herunterladen. Davor muss man konkurierende Prozesse mit Zugriff auf die Kamera in einer Endlosschleife abschießen
while sleep 0.1; do pkill kiod5; pkill gvfs-udisks2; done

und in einer anderen Shell das Device mounten:

mkdir /tmp/cam
jmtpfs /tmp/cam
Device 0 (VID=18d1 and PID=4ee2) is a Google Inc Nexus/Pixel (MTP+ADB).
Android device detected, assigning default bug flags
ls /tmp/cam/Interner\ gemeinsamer\ Speicher/DCIM/
Camera  PeakLens
  • Unter kde kann man sich mir dem adb (s.o.) behelfen, indem man kiod+gvfs in einer Endlosschleife abschießt (s.o.):
 while sleep 0.1; do pkill kiod5; pkill gvfs-udisks2; done
  • Zu viele Fotos auf einmal herunterladen, bricht irgendwann ab. Hier ein paar Commands, wie man eine Auswahl heruntergeladen bekommt (e.g. Jan. 2024):
 adb shell ls /sdcard/DCIM/Camera|grep IMG_2024 >/tmp/img.txt 
 for IMG in $(grep 202401 /tmp/img.txt) ; do adb pull /sdcard/DCIM/Camera/$IMG CAM/; done

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

$ sudo apt install xorriso


Das Erzeugen des ISO geht dann wie folgt:

$ 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:

# dd if=windows.iso of=/dev/sde

Achtung: Keine Partition erstellen/angeben !

Tracks aus Musik-CD extrahieren

$  icedax -D <devicename> -t 1 song1.wav

also z.B.

$ icedax -D /dev/cdrom -t 2 song2.wav
$ icedax -D /dev/cdrom0 -t 3+4 mixed.wav

(macht aus Nr. 3 u. 4 eine große Datei)

Wer lieber mp3s hat, kann cdda2mp3 verwenden.

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

Von DVD extrahieren

Als brauchbar für die Erstellung eines mp4 von DVD hat sich im Test handbrake herausgestellt. Lässt sich als Paket installieren. Nur der Sound kommt etwas leise. Dieser lässt sich mit ffmpeg aufbessern (s.u.).

Monitor kalibrieren

Sehr empfehlenswert ist das Tool DisplayCAL [1], das gängige Kalibrierungsgeräte wie z.B. Spyder, unterstützt.
Verwendete Hardware:
Spyder 3

Hier gibt es eine umfassende Anleitung:

https://www.reallinuxuser.com/how-to-color-calibrate-your-monitor-in-linux/

Anmerkung

Die Originalversion benutzt Python2 und wird daher auf den gängigen Linux-Distributionen nicht mehr unterstützt. Es gibt aber ein Nachfolgeprojekt: https://github.com/eoyilmaz/displaycal-py3 und darauf basierend ein Debianpaket:

$ sudo apt install displaycal

Unten genanntes wurde mit der alten Version und python2 getestet.

Protipp

  • Wer keine guten/farbstichige Ergebnisse erzielt, kann als Whitepoint 5300K versuchen.

Screenshot 2021-02-23 19-55-44.png

  • Am Ende wird ein Profil (.icc Datei) erzeugt. Laden lässt sich dieses mit xcalib:
$ xcalib <profilname>

(und ein bisschen Theorie zu den konfigurierbaren Parametern:

https://displaycal.net/#colorimeter-corrections )

ffmpeg

Das Tool zum Filme (und Sound) bearbeiten. Hier ein paar Beispiele:

  • Bild um 180° drehen:
$ ffmpeg -i input.mp4 -vf "transpose=2,transpose=2" output.mp4
  • Sound entfernen:
$ ffmpeg -i MVI_1747.MOV -vcodec copy -an MVI_1747_mute.MOV
  • 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

)

  • 2 Videodateien mergen

Falls auf Grund unterschiedlicher Codierung sich das obige Beispiel nicht aus Videos übertragen lässt:

$ ffmpeg -ifile1.mp4 -i file2.mp4 -filter_complex "[0:v][0:a][1:v][1:a] concat=n=2:v=1:a=1 [outv] [outa]" -map "[outv]" -map "[outa]" out.mp4

Beispiel für das Zusammenmergen von 3 Videos incl. Sound:

$ ffmpeg -i VID_20241225_part1.mp4 -i VID_20241225_part2.mp4 -i VID_20241225_142603~2.mp4 -filter_complex "[0:v:0][0:a:0][1:v:0][1:a:0][2:v:0][2:a:0] concat=n=3 :v=1:a=1[outv][outa]" -map "[outv]" -map "[outa]" output.mp4

Beispiel für das Zusammenmergen von 4 Videos zu 1 großen:

$ ffmpeg -i part1.mp4 -i part2.mp4 -i MVI_0309.MP4 -i MVI_0310.MP4 -filter_complex "[0:v:0][0:a:0][1:v:0][1:a:0][2:v:0][2:a:0][3:v:0][3:a:0]concat=n=4:v=1:a=1[outv][outa]" -map "[outv]" -map "[outa]" bigmovie.mp4

Alternative:
Datei erstellen mit dem Inhalt der Videodateien:

cat > myfile.txt<<EOF
file 'MVI_1547.mp4'
file 'MVI_1610.mp4'
EOF
$ ffmpeg -f concat -i myfile.txt -c copy output.mp4

Sollte das Video nicht sauber durchlaufen, mit avidemux öffnen und die Schnittstelle rausschneiden.

(wer noch immer nicht genug hat: https://trac.ffmpeg.org/wiki/Concatenate )

  • 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
  • Zeitraffer/Zeitlupe

https://medium.com/@sekhar.rahul/creating-a-time-lapse-video-on-the-command-line-with-ffmpeg-1a7566caf877

  • Untertitel zufügen

Wenn die Untertitel als srt Datei vorliegen , muss man sie erst ins ass Format umwandeln:

$ ffmpeg -i subtitles.srt subtitles.ass

Hier gibt es ein Beispiel für ein .srt file im Format

<fortlaufende nr.>

Video mit Untertiteln erzeugen:

$ ffmpeg -i input.mp4 -vf ass=subtitles.ass output.mp4

Wer immer noch nicht genug hat:

https://img.ly/blog/ultimate-guide-to-ffmpeg/

Soundtest mit arecord

Manchmal ist es hilfreich, Headset und Lautsprecher zu testen. So geht das:

$ arecord -f S16_LE -r 3000 | aplay -vvv

avidemux

Nettes Videoschnitttool. Leider nicht mehr als Debianpaket verfügbar. Kann aber hier heruntergeladen werden:
https://www.fosshub.com/Avidemux.html

Am besten das Appimage herunterladen und verlinken z.B.

# ln -s /usr/local/bin/3rdparty/avidemux_2.8.1.appImage /usr/local/bin/avidemux

Bildbetrachter

irfanview

https://www.irfanview.net/faq.htm

Gibt es generisch nur für Windows. Lässt sich aber auf (mindestens) 2 Arten auch für Linux installieren:

1. Snap

https://snapcraft.io/install/irfanview/debian

$ sudo apt install snapd
$ sudo snap install irfanview
$ type -a irfanview

irfanview is /snap/bin/irfanview

2. Wine

Unbedingt darauf achten, die 64bit-Version herunterzuladen!

$ wine iview460_x64_setup.exe

Danach kommt ein Windows-Installer-Fenster.

$ type -a irfanview

irfanview is aliased to `wine /home/kathrin/.wine/drive_c/Program\ Files/IrfanView/i_view64.exe'

gwenview

Hat ein paar nette Eigenschaften, z.B. mehrere Bilder gleichzeitig anzeigen lassen zum Vergleich. Kommt mit KDE oder als gleichnamiges Paket.

.wav Dateien mit xine abspielen

Wenn eine Fehlermeldung missing plugin kommt...

  • libxine2-misc-plugins installieren

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