Formater, oppløsninger og manipulasjon av mediafiler
Dette notatet er en liten samling diverse «one-liners» (noen ganger flere) for å gjøre ulik type behandling av feks video, bilde og lyd.
Som vanlig foretrekker jeg å skrive små programmer for å gjøre enkle, repetative oppgaver på datamaskinen, og disse er ofte mye raskere enn å gjøre det samme med tunge desktopverktøy.
Det er alltid en sjanse for å gjøre noe man ikke kan ta tilbake, så hold tunga rett i munnen.
All bruk skjer på eget ansvar.
Formater og oppløsninger
På https://formats.iff.ninja/ ligger det en tabell som automatisk koverterer til de ulike oppløsningene. Her har jeg lagt in tabellen manuelt.
Format | Størrelse i mm | Piksler (300ppt/118.11ppcm) | Piksler (+ 3mm bleed) |
---|---|---|---|
A2 | 594 × 420 | 7016 × 4961 | 7087 × 5032 |
Maksikort | 125 × 235 | 1477 × 2776 | 1548 × 2847 |
A6 (lite postkort) | 148.5 × 105 | 1754 × 1241 | 1825 × 1312 |
Større enn pocket | 125 × 210 | 1477 × 2481 | 1548 × 2552 |
100 × 180 | 1182 × 2126 | 1252 × 2197 |
Dokumentbehandling med Pandoc
pandoc input.docx -f docx -t markdown --wrap=none output.md
Konvertere et Word-dokument til Markdown. --wrap=none
passer på at tekstene ikke blir «brukket om» til 80 tegn per linje.
Referanser
https://pandoc.org/MANUAL.html#reader-options
https://ronn-bundgaard.dk/blog/convert-docx-to-markdown-with-pandoc/
Bildebehandling med ImageMagick
convert -units PixelsPerInch image.png -density 300 image.tif
Gjør om image.png
fra 72 til 300 ppt. Det beholder sine dimensjoner i piksler, men den fysiske størrelsen i mm endres.
Dette er spesielt hendig der du genererer bilder i canvas som senere skal trykkes.
convert -units PixelsPerCentimeter image.png -density 120 -flatten image.tif
Gjør om image.png
med alpha (gjennomsiktighet) til 120 ppcm (litt høyere enn 300 ppt) image.tif
med hvit bakgrunn (flatten
). Det beholder sine dimensjoner i piksler, men den fysiske størrelsen i mm endres.
Dette er spesielt hendig der du genererer bilder i canvas som senere skal trykkes.
convert image.png -flatten -set colorspace Gray image.tif
Gjør om image.png
i RGB eller CMYK colorspace til Grayscale.
Sort hvitt / gråtone
convert image.tif -colorspace cmyk -separate channel_%d.tif
Separererer image.tif
i CMYK til 4 indivudelle bilder i Grayscale
convert image.tif -colorspace cmyk -channel c -negate -separate channel_c.png
Separererer valgt kanal -channel c
fra image.tif
, inverterer det med -negate
og lagrer det som channel_c.png
convert image.png image.jpg
convert image.png image.tif
Gjør om image.png
til ønsket format uten spesielle endringer.
Hvis du konverterer til JPEG/MIFF/PNG kan du bruke -quality 80
på slutten for å kontrollere komprimeringen.
convert -density 140 input.pdf -rotate "$([ $((RANDOM % 2)) -eq 1 ] && echo -)0.$(($RANDOM % 4 + 5))" -attenuate 0.1 +noise Multiplicative -flatten -attenuate 0.01 +noise Multiplicative -sharpen 0x1.0 -colorspace Gray output.pdf
Få en PDF til å se scannet ut. Noen ganger bare nekter folk å ta imot en PDF som ikke er fysisk scannet inn. ;)
convert -delay 10 -loop 0 *.jpg animation.gif
Lag en enkel gif-animasjon av alle .jpg-bilder i en mappe. 10ms per frame, loop uendelig mange ganger (0)
convert *.jpg multipage.pdf
Lag en enkel flersidig PDF av alle .jpg-bilder i en mappe.
convert input.png -crop 1080x1080 output-%02d.png
Del opp et bilde i X antall crops (split into grid). For eksempel et kvadrat på 3240px blir til 9 kvadrater på 1080px. Hendig for platecover på instagram.
convert input.jpg -colors 32 -define histogram:unique-colors=true -format "%c" histogram:info: > color-histogram.txt
Reduser bildet til 32 farger og print disse til en txt
-fil. Hendig hvis du trenger de dominerende fargene. Dette kan også ses i stdout
ut med identify
-funksjonen
convert input.jpg -colors 32 output.png
convert input.jpg +dither -colors 32 output.png
Reduser bildet til 32 farger. Alternativ med dithering (fungerer bedre for lavere oppløsninger).
Video og bildebehandling med FFmpeg
ffmpeg -i input.mp4 -filter:v "crop=494:848:192:20" output.mp4
ffmpeg crop video "crop=w:h:x:y"
ffmpeg -i input.mp4 -vf "transpose=1" ouput.mp4
ffmpeg roter video
Hvor transpose=1
er 90˚, transpose=2
er 180˚, og transpose=3
er 270˚/-90˚
ffmpeg -f concat -safe 0 -i list_of_files_to_concat.txt -c copy output.mp4
ffmpeg sette sammen videoklipp med FFmpeg Concatenate
ffmpeg -framerate 12 -pattern_type glob -i '*.png' -f mp4 -vcodec libx264 -pix_fmt yuv420p output.mp4
ffmpeg lage videofil av serie med bilder
ffmpeg -i input.mp4 -vf negate output.mp4
ffmpeg inverter farger på video
ffmpeg -i video.mp4 -vcodec copy -an output.mp4
ffmpeg fjerne lydspor fra en videofil
ffmpeg -itsscale 0.016667 -i input.mov output.mov
ffmpeg minke/øke hastighet eller gjøre saktere/raskere en film (speed up)
1/60 = 0.016667
, gjør 60 ganger raskere
60/1 = 60
, gjør 60 ganger tregere
ffmpeg -i input.mov -vf tmix=frames=16:weights="1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1" output.mov
frames=16
er antall frames som skal blandes
weights
kan styre vekten per frame som skal blendes
Kan gjerne kombineres med -itsscale
for å blende og øke/sakke hastigheten smooth
ffmpeg -i animated.gif -movflags faststart -pix_fmt yuv420p -vf "scale=trunc(iw/2)*2:trunc(ih/2)*2" video.mp4
Konverter en animert gif til en mp4 som kan spilles i nettleseren.
-vf "scale=trunc(iw/2)*2:trunc(ih/2)*2"
passer på at GIFens oppløsning er delbar på 2.
Se referanse på Stack overflow
Lydbehandling med ffmpeg
ffmpeg -i track_1.wav -i track_2.wav -filter_complex amerge output.wav
Legge to lydspor oppå hverandre/kombinere lyd. Bra hvis man bruker zoom med intern og ekstern mic men bare trenger én stereofil.
ffmpeg -i stereo.wav -ac 1 mono.wav
Miks høyre og venstre ned til én kanal. Se ffmpeg for Audio channel manipulation
ffmpeg -i input.wav -filter:a "volume=1.5" output.wav
Øk volumet på lydkanalene med 150% prosent
Filbehandling med shell scripts
for file in *.mp4; do mv "$file" "`echo $file | sed 's/regex\ to\ remove\ from\ filename//'`"; done
Fjerne en del av et filnavn.
Se Sending files with similar names
Nyttige lenker
Modulering av farger med en lineær matrise http://www.imagemagick.org/Usage/color_mods/#modulate_colorspace
Kvantisering av farger og konvertering mellom fargerom http://www.imagemagick.org/Usage/quantize/#quantize
Color Reduction Introduction http://www.imagemagick.org/Usage/quantize/#intro