Skip to content

Learning pieces

Color Theory

Adobe Color Tool

Harmony groups

  • Analagous
  • Monochromatic
  • Complementary

Color terms

Hue, Satural, Lightness

  • Hue: The pure color (angle with the vertical axis in the color cube).
  • Saturation: How vivid the color it is (distance from the vertical axis). Fully saturated is the pure color itself. Zero saturated is gray.
  • Lightness: How bright the color it is (distance from the horizontal axis). Fully bright is white. Zero bright is black.
  • Temperature: Cool is in the blue range; warm is in the orange range.

The color level curve

It is a diagram to make color adjustments in images. It is a 2D graph in which the horizontal axis represent the color values of the input image and the vertical axis represent colors values of the output image.

The initial diagram is a diagonal line, meaning that the pixels colors in the input and output images are equal.

If I move a point of this curve up, that means that in the output image, all the pixels having the color corresponding to the x-coordinate will now be colorized as the color in the y-coordinate.

Instagram video quality

You should respect the ratio resolution 9:16. Check this (calculator)[https://calculateaspectratio.com/] if in doubt.

The reference for Instagram is: 1080x1920.

I usually record my videos as 4K 16:9 (3840x2160). If I opt to not resize the video I can crop the frames to have a 1215x2160 crop.

Shotcut configurations

Same quality as gopro

  • Codec: libx264
  • Qualité: 100%
  • Plage de couleurs: Complet (JPEG) instead of Difussion limitéé (MPEG)
  • Désentrelacement: BDWIF (meilleur)
  • Interpolation: Lanczos (best) instead of Bilinéaire (bon).

Unnoticed loss of quality but 10x smaller

  • Codec: h264_vaapi

IPhone not recognizing videos

Non-standard resolutions

It seems that the IPhone has a problem with non-standard resolutions. When I execute the stabilization algorithm, I further apply a crop operation in the video frames, resulting in non-standard resolutions.

I was able to execute the videos when the output was coming from the video-edit cli application, but not with FlowBlade. With FlowBlade I need to use a standard profile in order to correctly run in IPhone.

  • For 4K videos:
  • For 2.7K videos: 2.5K QHD 1440p
Danger

It is very important that I select Lossless MPEG4 as the coded.

This problem happens when I record the video in the vertical position. Therefore, to avoid this to happen, I have to add the videos in the FlowBlade application as they were recorded, that is, rotated. I should edit the video like this and then use the transpose function in the IPhone to put it in the correct orientation. This was the only way I found it in order to not loose quality due to resizing.

VidGear Stabilization Algorithm Side-Effects

Staircase effect

I noticed that effect in the following recordings:

  • 2023-08-20 arc-de-triomphe
  • 2023-02-20 eiffel-tour

I took one frame from the raw and stabilized video to do the comparison. I used the following ffmpeg command:

ffmpeg -i arc-de-triomphe-50s.mp4 -ss 00:00:21 -vframes 1 frame-from-stabilized.png
ffmpeg -i arc-de-triomphe-50s-stabilized.mp4 -ss 00:00:21 -vframes 1 frame-from-original.png

The arc-du-triomphe example is located at Videos/stabilize-example. Unfortunatelly, for the eiffel-tour example I don't have the raw video anymore, but the stair case effect in the sky is very nitid in the stabilized video.

Bright reduction

I also noticed that the video resulting from the stabilized algorithm is less bright than the original. I believe this is a trick used by the algorithm to hide the imperfections created during the stabilization process.

About the raw video

Analysing the videos we notice that the raw videos has a mix of very nitid frames with very blurry ones. In this sense, the stabilization algorithm creates a video in which the quality of each frame is better than the original, in average.