FFmpeg allows interesting video manipulation. This includes inverting the colours of video files.
The example below will invert the colours of a video file.
┌──[jason@192.168.1.2]─[~/Videos/titles] └──╼ ╼ $ ffmpeg -i zombiestrain.avi -vf lutrgb="r=negval:g=negval:b=negval" zomby.avi |
This is an example of what this filter will give you.
This example is changing the gamma value of the red channel.
┌──[jason@192.168.1.2]─[~/Videos/titles] └──╼ ╼ $ ffmpeg -i boom-nosound.webm -vf lutrgb="r=gammaval(0.5):g=negval:b=negval" expl3.webm |
This makes the red channel stand out a bit more interestingly.
And finally, this is a way of modifying the blue channel as well, this makes for interesting colours.
┌──[jason@192.168.1.2]─[~/Videos/titles] └──╼ ╼ $ ffmpeg -i boom-nosound.webm -vf lutrgb="r=gammaval(0.5):g=negval:b='bitand(val, 128+64+32)'" expl4.webm |
Normal colours, but a garish red effect over the video.
┌──[jason@192.168.1.2]─[~/Videos/titles] └──╼ ╼ $ ffmpeg -i boom-nosound.webm -vf lutyuv=u='(val-maxval/2)*2+maxval/2':v='(val-maxval/9)*2+negval/2' expl5.webm |
Make the video spin around whilst it plays. This is awesome.
┌──[jason@192.168.1.2]─[~/Videos/titles] └──╼ ╼ $ ffmpeg -i boom-nosound.webm -vf "rotate=1.9178*PI*t:ow='min(iw,ih)/sqrt(0.997)':oh=ow:c=none" me.webm |