16
This commit is contained in:
parent
25301425b5
commit
7fec0fecd7
2
.gitignore
vendored
2
.gitignore
vendored
@ -1,2 +1,4 @@
|
||||
node_modules/
|
||||
bower_components/
|
||||
*.m4v
|
||||
*.wav
|
||||
|
192
16.html
192
16.html
@ -71,12 +71,27 @@
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<p><a href="https://imagemagick.org/index.php">ImageMagick</a>
|
||||
<p><a href="https://imagemagick.org/index.php" target="_blank">ImageMagick</a>
|
||||
<pre><code> sudo apt install imagemagick</code></pre>
|
||||
<ul>
|
||||
<li>convert / mogrify
|
||||
</ul>
|
||||
<pre><code class="bash"> sudo apt install imagemagick
|
||||
|
||||
<pre><code class="bash">convert bild.jpg out.gif </code></pre>
|
||||
<ul>
|
||||
<li>montage</li>
|
||||
</ul>
|
||||
<pre><code>montage *.jpg out.jpg</code></pre>
|
||||
|
||||
<ul>
|
||||
<li>import</li>
|
||||
</ul>
|
||||
<pre><code>import screen.jpg</code></pre>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
|
||||
<pre><code class="bash" contenteditable>
|
||||
# komprimiert ein jpg ohne sichtbare Qualitätsverluste
|
||||
# ( zb für Webseiten Deployment )
|
||||
convert -strip -interlace Plane -sampling-factor 4:2:0 \
|
||||
@ -89,22 +104,7 @@ find . -name "*.jpg" -exec mogrify -strip -interlace Plane \
|
||||
# Bild beschneiden und zentrieren
|
||||
convert input.jpg -crop '1900x1400+0+0'\
|
||||
-gravity Center output.jpg
|
||||
</code></pre></li>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
|
||||
<pre><code class="bash">convert bild.jpg -background black -vignette 5x65000 out.gif
|
||||
</code></pre>
|
||||
<ul>
|
||||
<li>montage</li>
|
||||
</ul>
|
||||
<pre><code>montage *.jpg out.jpg</code></pre>
|
||||
|
||||
<ul>
|
||||
<li>import</li>
|
||||
</ul>
|
||||
<pre><code>import screen.jpg</code></pre>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
@ -141,6 +141,9 @@ convert rose.png -decipher smiley.gif rose.jpg</code></pre>
|
||||
<li>Die Metadaten sollen entfernt werden.</li>
|
||||
<li>Veröffentlicht die Bilder in einer Gallerie auf eurer Wordpress Seite.</li>
|
||||
</ul>
|
||||
|
||||
Hinweis:
|
||||
<pre><code>convert input.jpg -resize '1200x800' output.jpg</code></pre>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
@ -153,17 +156,67 @@ convert rose.png -decipher smiley.gif rose.jpg</code></pre>
|
||||
<section>
|
||||
<h4>Einfacher Videoschnitt</h4>
|
||||
<ul>
|
||||
<li class="fragment">OpenShot</li>
|
||||
<li class="fragment">OpenShot
|
||||
<div><img src="img/openshot-screen.jpg"></div></li>
|
||||
<li class="fragment">Pitivi</li>
|
||||
<li class="fragment">KDEnlive</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section>
|
||||
<h4 class="fragment">Anspruchsvoller Videoschnitt</h4>
|
||||
<ul>
|
||||
<li class="fragment">Blender - eigentl. 3D-Rendering <br><a href="https://peach.blender.org/download/">Big Buck Bunny</a></li>
|
||||
<li class="fragment">Blender - eigentl. 3D-Rendering <ul><li><a href="https://www.youtube.com/watch?v=YE7VzlLtp-4">Big Buck Bunny bei YouTube</a></li>
|
||||
<li><a href="https://www.blenderguru.com/articles/27-inspiring-blender-animations-that-will-make-your-jaw-drop">Blender Videos</a></li></ul>
|
||||
<li class="fragment">Lightworks</li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<h3>Ausflug</h3>
|
||||
Video Container
|
||||
</section>
|
||||
|
||||
<section>
|
||||
Ein Video Container beinhält
|
||||
<ul>
|
||||
<li class="fragment ">Eine Videospur</li>
|
||||
<li class="fragment ">eine oder mehrere Audiospuren</li>
|
||||
<li class="fragment ">Untertitel</li>
|
||||
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
Die Videospur ist meist kodiert mit
|
||||
<ul>
|
||||
<li class="fragment ">mpeg-1</li>
|
||||
<li class="fragment ">mpeg-4</li>
|
||||
<li class="fragment ">mpeg4-part10: h264 / h265</li>
|
||||
<li class="fragment ">vp8 / vp9 </li>
|
||||
<li class="fragment ">theora</li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
Die Audiospur ist meist kodiert mit
|
||||
<p>
|
||||
<ul>
|
||||
<li class="fragment ">mp3</li>
|
||||
<li class="fragment ">aac</li>
|
||||
<li class="fragment ">ogg vorbis</li>
|
||||
<li class="fragment ">opus</li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
Zusammengesetzt ergeben sich Container
|
||||
<ul>
|
||||
<li class="fragment ">mp4 : h264 + mp3 ( <a href="https://de.wikipedia.org/wiki/MP4">Wikipedia</a> )</li>
|
||||
<li class="fragment ">webm : vp9 + opus ( <a href="https://de.wikipedia.org/wiki/WebM">Wikipedia</a> )</li>
|
||||
<li class="fragment ">ogv : theora + ogg ( <a href="https://de.wikipedia.org/wiki/Ogg">Wikipedia</a> )</li>
|
||||
<li class="fragment ">mehr <a href="https://de.wikipedia.org/wiki/Containerformat">Wikipedia</a></li>
|
||||
</ul>
|
||||
</section>
|
||||
<section>
|
||||
<h4>ffmpeg</h4>
|
||||
<h5>Das Schweizer Taschenmesser der Audio / Video Konvertierung</h5>
|
||||
@ -177,7 +230,28 @@ ffmpeg -i snatch_1.vob -f avi -c:v mpeg4 -b:v 800k \
|
||||
|
||||
# h264 kodiertes mp4 zur Darstellung im Browser
|
||||
ffmpeg -i infile.avi -vf scale=1200:800 -b:v 600k \
|
||||
-b:a 128k -c:v libx264 -preset medium
|
||||
-b:a 128k -c:v libx264 -preset medium outfile.mp4
|
||||
|
||||
# mp3 aus wav
|
||||
ffmpeg -i infile.wav -b:a 192k outfile.mp3
|
||||
|
||||
</code></pre>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<pre><code class="bash" contenteditable>
|
||||
# produziert 3 Videos; benötigt für Webseiten
|
||||
# damit alle Browser d. Video abspielen
|
||||
|
||||
# video: h264; audio: aac ( default )
|
||||
ffmpeg -i infile -b:v 600k -b:a 128k -c:v libx264 out.mp4
|
||||
|
||||
# video: vp9; audio: opus ( default )
|
||||
ffmpeg -i infile -b:v 600k -b:a 128k out.webm
|
||||
|
||||
# video: theora; audio: ogg vorbis
|
||||
ffmpeg -i infile -codec:v libtheora -qscale:v 7 \
|
||||
-codec:a libvorbis -qscale:a 5 out.ogv
|
||||
</code></pre>
|
||||
</section>
|
||||
|
||||
@ -188,21 +262,55 @@ ffmpeg -i infile.avi -vf scale=1200:800 -b:v 600k \
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
<section data-transition="slide" data-background="img/trianglify.svg" data-background-transition="convex"> <h3 style="color: lightgrey; text-shadow: 1px 1px black">Audio Production</h3></section>
|
||||
|
||||
<section>
|
||||
<span style="color: orange">Aufgabe:</span>
|
||||
<ul>
|
||||
<li class="fragment ">ardour</li>
|
||||
<li class="fragment ">calf</li>
|
||||
<li class="fragment ">guitarix</li>
|
||||
<li class="fragment ">jack</li>
|
||||
<li>installiert ffmpeg</li>
|
||||
<li>erstellt aus <a href="/beispiele/16/infile.m4v">DIESEM</a> Video einen 10sec langen mp4 Video-Snippet.</li>
|
||||
<li>erstellt aus <a href="/beispiele/16/wav-file.zip">DIESEM</a> Wav ein MP3 mit 192kB Bitrate.</li>
|
||||
<li>erstellt aus der Wav-Datei eine flac Datei.</li>
|
||||
<li>vergleicht die Grössen.</li>
|
||||
<li>Warum ist es nicht sinnvoll aus einem mp3 ein wav zu machen?</li>
|
||||
</ul>
|
||||
|
||||
Hinweis:
|
||||
<pre><code class="bash" contenteditable># 10sec langes video:
|
||||
ffmpeg -t 10 -i ..... </code></pre>
|
||||
</section>
|
||||
|
||||
<section data-transition="slide" data-background="img/Jaromir-Chalabala1.jpg" data-background-transition="convex"> <h3 style="color: lightgrey; text-shadow: 1px 1px black">Audio Production</h3></section>
|
||||
<section>
|
||||
Audio unter Linux ist .... interessant.
|
||||
<p>Meist Kombination aus Pulseaudio / ALSA
|
||||
<p>PulseAudio -> Middleware
|
||||
<p>ALSA -> Treiber
|
||||
<p>Für Echtzeit-Audio-Verarbeitung ( möglichst geringe Latenzen ) muss die Kombination Jack / ALsa konfiguriert werden
|
||||
|
||||
<aside class="notes">alsamixer</aside>
|
||||
</section>
|
||||
|
||||
|
||||
<section>Audacity
|
||||
<div><img src="img/audacity.png"></div></section>
|
||||
|
||||
<section>
|
||||
Ardour - Professionelles Recording
|
||||
<div><img src="img/ardour.jpg"></div>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
Ubuntustudio
|
||||
Guitarix - Virtueller Gitarrenamp
|
||||
<div><img src="img/guitarix.jpg"></div>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<p><a href="http://kxstudio.linuxaudio.org/index.php">Plugins und andere Tools</a>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
Jack
|
||||
<div><img src="img/QjackctlConnectionsForm.png"></div>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<h4>Abspielprgramme</h4>
|
||||
@ -210,9 +318,35 @@ ffmpeg -i infile.avi -vf scale=1200:800 -b:v 600k \
|
||||
<li class="fragment">VLC</li>
|
||||
<li class="fragment">Mplayer</li>
|
||||
<li class="fragment">Rhythmbox</li>
|
||||
<li class="fragment"></li>
|
||||
<li class="fragment">VLC</li>
|
||||
<li class="fragment">mocp</li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<h4>Multimedia Distributionen</h4>
|
||||
<ul>
|
||||
<li><a href="http://www.bandshed.net/avlinux/">avlinux</a></li>
|
||||
<li><a href="http://ubuntustudio.org">UbuntuStudio</a></li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<h4>Gaming</h4>
|
||||
<ul>
|
||||
<li class="fragment ">Steam</li>
|
||||
<li class="fragment ">GOG</li>
|
||||
<li class="fragment ">viele Open Source Spiele
|
||||
<ul>
|
||||
<li>Sauerbraten</li>
|
||||
<li>Assault Cube</li>
|
||||
<li>Zero-K</li>
|
||||
<li>0 A.D.</li>
|
||||
<li>Flightgear</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
</section>
|
||||
</div>
|
||||
</div>
|
||||
|
6
beispiele/16/create-webvideos-defaults.sh
Normal file
6
beispiele/16/create-webvideos-defaults.sh
Normal file
@ -0,0 +1,6 @@
|
||||
#!/bin/bash
|
||||
ffmpeg -t 5 -i infile out-def.mp4
|
||||
|
||||
ffmpeg -t 5 -i infile out-def.webm
|
||||
|
||||
ffmpeg -t 5 -i infile out-def.ogv
|
6
beispiele/16/create-webvideos.sh
Normal file
6
beispiele/16/create-webvideos.sh
Normal file
@ -0,0 +1,6 @@
|
||||
#!/bin/bash
|
||||
|
||||
# 5 sec langes Video
|
||||
ffmpeg -t 5 -i infile -b:v 600k -b:a 128k -c:v libx264 out.mp4
|
||||
ffmpeg -t 5 -i infile -b:v 600k -b:a 128k out.webm
|
||||
ffmpeg -t 5 -i infile -codec:v libtheora -qscale:v 5 -codec:a libvorbis -qscale:a 5 out.ogv
|
20
beispiele/16/file-to-mp3-192k.rb
Normal file
20
beispiele/16/file-to-mp3-192k.rb
Normal file
@ -0,0 +1,20 @@
|
||||
#!/usr/bin/env ruby
|
||||
|
||||
def convert(file,filebase)
|
||||
#`ffmpeg -i '#{file}' -ab 192k '#{filebase}'.mp3`
|
||||
`lame -q 0 -b 192 '#{file}' '#{filebase}'.mp3`
|
||||
end
|
||||
|
||||
dir = Dir.new(".")
|
||||
|
||||
while file = dir.read do
|
||||
reg = /(m4a|ogg|wav)/i
|
||||
puts reg
|
||||
|
||||
if file.match(reg)
|
||||
filebase = File.basename(file, "." + file.match(reg).to_s)
|
||||
convert(file, filebase)
|
||||
else
|
||||
puts "Keine passende Datei gefunden: m4a, ogg, wav. "
|
||||
end
|
||||
end
|
BIN
beispiele/16/wav-file.zip
Normal file
BIN
beispiele/16/wav-file.zip
Normal file
Binary file not shown.
BIN
img/Jaromir-Chalabala1.jpg
Normal file
BIN
img/Jaromir-Chalabala1.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 432 KiB |
BIN
img/QjackctlConnectionsForm.png
Normal file
BIN
img/QjackctlConnectionsForm.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 19 KiB |
BIN
img/ardour.jpg
Normal file
BIN
img/ardour.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 166 KiB |
BIN
img/audacity.png
Normal file
BIN
img/audacity.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 80 KiB |
BIN
img/guitarix.jpg
Normal file
BIN
img/guitarix.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 119 KiB |
BIN
img/openshot-screen.jpg
Normal file
BIN
img/openshot-screen.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 67 KiB |
@ -219,6 +219,9 @@
|
||||
<div class="content">
|
||||
<ul>
|
||||
<li><a href="https://imagemagick.org/index.php" target="_blank">ImageMagick</a></li>
|
||||
<li><a href="http://ubuntustudio.org" target="_blank">UbuntuStudio</a></li>
|
||||
<li><a href="https://deb-multimedia.org" target="_blank">https://deb-multimedia.org</a></li>
|
||||
<li><a href="http://kxstudio.linuxaudio.org/index.php" target="_blank">KX Studio</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
Loading…
Reference in New Issue
Block a user