full_name hai 11 meses
pai
achega
a6ceed6bfa
Modificáronse 4 ficheiros con 123 adicións e 71 borrados
  1. 1 0
      index.md
  2. 1 1
      linux-servers/applications.md
  3. 42 0
      media/gopro.md
  4. 79 70
      media/image-basics.md

+ 1 - 0
index.md

@@ -100,6 +100,7 @@ Random collection of config notes and Miscellanea. _Technically not a wiki._
 - [Audio Basics](/media/audio-basics/)
 - [Behringer X32](/media/behringer-x32/)
 - [FFmpeg](/media/ffmpeg/)
+- [GoPro](/media/gopro/)
 - [Image Basics](/media/image-basics/)
 - [Network Device Interface (NDI)](/media/ndi/)
 - [Open Broadcaster Software (OBS)](/media/obs/)

+ 1 - 1
linux-servers/applications.md

@@ -571,7 +571,7 @@ Note: Anonymous users have read-only access to everything.
     - Many OpenSSL default options are insecure and must be specified.
     - Specifying `-noout -text` prints the data as formatted text instead of raw Base64.
 - Inspect certificate file: `openssl x509 -in <cert-file> [-inform der] -noout -text`
-- Inspect online certificate: `openssl s_client -connect <site>:443 </dev/null | openssl x509 -noout -text`
+- Inspect online certificate: `openssl s_client -servername <host> -connect <site>:443 </dev/null | openssl x509 -noout -text`
 - Decrypt and unpack PKCS:
     - Extract the cert chain (specify enc. pass. again): `openssl pkcs12 -in hon.wtf.pfx -clcerts -nokeys -out hon.wtf.key-2023`
     - Extract key file (specify the enc. pass. and a new tmp. key pass.): `openssl pkcs12 -in hon.wtf.pfx -nocerts -out hon.wtf.key.enc-2023`

+ 42 - 0
media/gopro.md

@@ -0,0 +1,42 @@
+---
+title: GoPro
+breadcrumbs:
+- title: Media
+---
+{% include header.md %}
+
+## GoPro HERO5 Black
+
+- The phone app is really useful for display preview, control, settings etc.
+- Supports clean HDMI out:
+    - Go to the settings (pull down) and set "HDMI output" to "live".
+    - The back display turns off.
+    - The FOV is really wide and it doesn't support dark environments too well.
+
+## GoPro HERO10 Black
+
+- Needs the Media Mod (physical frame with mic, connectors and accessory rail) for HDMI output. This started with HERO8.
+- Can not record with both the battery inserted and a charger connected (impractical for e.g. timelapses).
+- Requires a proper phone charger, if not it will simply refuse to charge/stay on.
+- The phone app is really useful for display preview, control, settings etc.
+- Supports clean HDMI out:
+    - Must use the Media Mod for the actual HDMI port.
+    - The back display turns off.
+    - The FOV is really wide and it doesn't support dark environments too well.
+    - Other recommended settings:
+        - Video mode: Highest Quality (for more appropriate resolutions etc.)
+        - Resolution/etc.: Doesn't actually matter for live output.
+        - Lens/FOV: Whatever fits, but narrower means digital zoom and reduced quality.
+        - HyperSmooth: Standard or off
+        - White balance: Auto
+        - Color: Natural
+        - Media mod: Front (capture audio in front, using media mod mic)
+    - When connecting HDMI (without Labs):
+        - It starts in the gallery meny, press mode two times and capture once to exit.
+        - To hide the HUD, press mode four (ish) times to mark the blind eye, then capture to select it.
+    - Labs variant:
+        - Go to [gopro.com/labs](gopro.com/labs) and follow the instructions for how to install the Labs firmware on the camera.
+        - If the app asks to upgrade the firmware, don't. It will overwrite the Labs firmware with the normal firmware.
+    - **TODO** Clean output?
+
+{% include footer.md %}

+ 79 - 70
media/image-basics.md

@@ -5,75 +5,84 @@ breadcrumbs:
 ---
 {% include header.md %}
 
-- Color models:
-    - Color models are generally applied per pixel and per frame if video.
-- List of color models:
-    - RGB:
-        - Contains red (R), green (G), and blue (B) components. Often as RGB, sometimes as BGR.
-        - It uses additive primary colors, giving white when all three components are max and black when all three components are min.
-        - Used mainly for displays and image formats.
-        - Often uses a color depth of 8 bits per component (24 bits total, aka RGB24 or RGB888), although other depths are also used.
-        - Often considered a "raw" model since e.g. LED and CRT displays use physical red, green and blue components/signals.
-        - If gamma correction needs to be emphasised, it may be written as R'G'B' (with primes).
-    - RGBA:
-        - Like RGB, but includes an alpha/opacity (A) component. Often as RGBA, sometimes as ARGB or ABGR.
-        - Often using 8 bits per component (32 bits total, aka RGBA32 or RGBA8888).
-        - Alternatively as ARGB, with the alpha component first.
-    - CMY:
-        - Contains cyan (C), magenta (M), and yellow (Y) components.
-        - It uses subtractive primary colors, giving black when all three components are max and white when all three components are min.
-        - Used e.g. in printers and light fixture color wheels.
-    - CMYK:
-        - Like CMY, but contains a key/black (K) component.
-        - Since CMY is in practice not very effective for mixing greyscale and deep black (e.g. in printers), the black component is added.
-    - HSL & HSV:
-        - Contains hue (H), saturation (S) and either lightness (L) or value/brightness (V).
-        - Alternative representations to RGB, where the color is represented as a point within a cylinder with hue as the angle, saturation as the radius and lightness/value as the height. Often represented as a 2D slice for a given lightness/value, as a 2D rectangle for a given saturation, or as a 2D rectangle for a given hue.
-        - Difference between HSL (w/ lightness L) and HSV (w/ value/brightness V):
-            - Both L at 0 and V at 0 gives black.
-            - L at 1 gives white.
-            - V at 1 gives the equivalent of L at 0.5 (i.e. the most saturated color for a given saturation value).
-        - A saturation of 0 gives greyscale only, while a saturation of -1 gives the complement color for the specific hue.
-        - The hue is continuous and sometimes represented using degrees.
-        - The concept of "saturation" in these models is a bit confusing.
-    - Y'CbCr (and Y'PbPr):
-        - Alternatively written as YCbCr or Y'C<sub>r</sub>C<sub>b</sub>. Often confused with Y'UV.
-        - Contains luma/luminance (Y'/Y), blue-difference (Cb) and red-difference (Cr).
-        - "Y'" (Y prime) is the luma component, i.e. the gamma compressed luminance "Y".
-        - The blue- and red-difference is simply blue/red minus luminance (or luma?).
-        - While RGB is more appropriate for low-level color (e.g. within displays), Y'CbCr allows for more flexibility wrt. transmission efficiency, e.g. for reducing color depth while keeping luma depth.
-        - Y'CbCr is designed for digital video, using only a single digital link for electrical transmission (e.g. SDI). YPbPr is the analog counterpart of Y'CbCr, using separate analog cabling for electrical transmission (e.g. component video) (unlike composite video which multiplexes the analog signals).
-        - Chroma subsampling is commonly used to reduce chroma resolution (see the section about the J:a:b notation). Y'CbCr 4:4:4 uses no chroma subsampling but is less commonly used. Y'CbCr 4:2:2 uses 1/4 the number of "color pixels", without significant perceived quality reduction.
-    - Y'UV:
-        - Alternatively written YUV. Often confused with Y'CbCr and Y'PbPr.
-        - Previously used for analog encoding, although now it mainly refers to a the color format.
-        - Contains luma/luminance (Y'/Y), blue-luminance (U) and red-luminance (V) (for arbitrary variable names U and V).
-        - While not directly compatible with Y'CbCr, the Y-Y, U-Cb and V-Cr pairs are pairwise linearly related.
-- Color spaces:
-    - Used to reproducably represent colors from a color model by mapping color model values to/from absolute color space.
-    - While devices are often labeled for a certain color space, they're often not actually calibrated for it. E.g. for displays, special calibration devices are typically required (if accurate color representation is actually required).
-    - Generally includes a transfer function (gamma or non-gamma).
-- List of color spaces:
-    - sRGB (for RGB):
-        - The default standard (s) for RGB-derived color models.
-        - Created by HP and Microsoft in 1996 and standardized by the IEC.
-        - Uses 8-bit color components (RGB24/RGBA32), giving a somewhat limited gamut.
-        - Uses a ~2.2 gamma function (not exactly a power function).
-    - Adobe RGB (for RGB):
-        - Similar to sRGB, but uses a wider gamut appropriate for high-end printing (utilising the full CMYK space).
-        - Created by Adobe in 1998.
-    - Rec. 601 (for Y'CbCr video):
-        - For 525-line 60Hz and 625-line 50Hz video, with Y'CbCr 4:2:2 color encoding, standardized by the ITU.
-    - Rec. 709 (aka HDTV video) (for RGB):
-        - For FHD, standardized by the ITU.
-        - Very similar to sRGB, being created shortly before it.
-    - Rec. 2020 (aka UHDTV video) (for RGB):
-        - For 8K UHD, standardized by the ITU.
-    - Rec. 2100 (aka HDR-TV video) (for RGB):
-        - Extension of Rec. 2020 with HDR support.
-        - Supports 10-bit and 12-bit RGB.
-    - sYCC (for Y'CbCr):
-        - Defined in amendments to the sRGB standard.
+## Color Models
+
+- Color models are generally applied per pixel and per frame if video.
+
+### List of Color Models
+
+- RGB:
+    - Contains red (R), green (G), and blue (B) components. Often as RGB, sometimes as BGR.
+    - It uses additive primary colors, giving white when all three components are max and black when all three components are min.
+    - Used mainly for displays and image formats.
+    - Often uses a color depth of 8 bits per component (24 bits total, aka RGB24 or RGB888), although other depths are also used.
+    - Often considered a "raw" model since e.g. LED and CRT displays use physical red, green and blue components/signals.
+    - If gamma correction needs to be emphasised, it may be written as R'G'B' (with primes).
+- RGBA:
+    - Like RGB, but includes an alpha/opacity (A) component. Often as RGBA, sometimes as ARGB or ABGR.
+    - Often using 8 bits per component (32 bits total, aka RGBA32 or RGBA8888).
+    - Alternatively as ARGB, with the alpha component first.
+- CMY:
+    - Contains cyan (C), magenta (M), and yellow (Y) components.
+    - It uses subtractive primary colors, giving black when all three components are max and white when all three components are min.
+    - Used e.g. in printers and light fixture color wheels.
+- CMYK:
+    - Like CMY, but contains a key/black (K) component.
+    - Since CMY is in practice not very effective for mixing greyscale and deep black (e.g. in printers), the black component is added.
+- HSL & HSV:
+    - Contains hue (H), saturation (S) and either lightness (L) or value/brightness (V).
+    - Alternative representations to RGB, where the color is represented as a point within a cylinder with hue as the angle, saturation as the radius and lightness/value as the height. Often represented as a 2D slice for a given lightness/value, as a 2D rectangle for a given saturation, or as a 2D rectangle for a given hue.
+    - Difference between HSL (w/ lightness L) and HSV (w/ value/brightness V):
+        - Both L at 0 and V at 0 gives black.
+        - L at 1 gives white.
+        - V at 1 gives the equivalent of L at 0.5 (i.e. the most saturated color for a given saturation value).
+    - A saturation of 0 gives greyscale only, while a saturation of -1 gives the complement color for the specific hue.
+    - The hue is continuous and sometimes represented using degrees.
+    - The concept of "saturation" in these models is a bit confusing.
+- Y'CbCr (and Y'PbPr):
+    - Alternatively written as YCbCr or Y'C<sub>r</sub>C<sub>b</sub>. Often confused with Y'UV.
+    - Contains luma/luminance (Y'/Y), blue-difference (Cb) and red-difference (Cr).
+    - "Y'" (Y prime) is the luma component, i.e. the gamma compressed luminance "Y".
+    - The blue- and red-difference is simply blue/red minus luminance (or luma?).
+    - While RGB is more appropriate for low-level color (e.g. within displays), Y'CbCr allows for more flexibility wrt. transmission efficiency, e.g. for reducing color depth while keeping luma depth.
+    - Y'CbCr is designed for digital video, using only a single digital link for electrical transmission (e.g. SDI). YPbPr is the analog counterpart of Y'CbCr, using separate analog cabling for electrical transmission (e.g. component video) (unlike composite video which multiplexes the analog signals).
+    - Chroma subsampling is commonly used to reduce chroma resolution (see the section about the J:a:b notation). Y'CbCr 4:4:4 uses no chroma subsampling but is less commonly used. Y'CbCr 4:2:2 uses 1/4 the number of "color pixels", without significant perceived quality reduction.
+- Y'UV:
+    - Alternatively written YUV. Often confused with Y'CbCr and Y'PbPr.
+    - Previously used for analog encoding, although now it mainly refers to a the color format.
+    - Contains luma/luminance (Y'/Y), blue-luminance (U) and red-luminance (V) (for arbitrary variable names U and V).
+    - While not directly compatible with Y'CbCr, the Y-Y, U-Cb and V-Cr pairs are pairwise linearly related.
+## Color Spaces
+
+- Used to reproducably represent colors from a color model by mapping color model values to/from absolute color space.
+- While devices are often labeled for a certain color space, they're often not actually calibrated for it. E.g. for displays, special calibration devices are typically required (if accurate color representation is actually required).
+- Generally includes a transfer function (gamma or non-gamma).
+
+### List of Color Spaces
+
+- sRGB (for RGB):
+    - The default standard (s) for RGB-derived color models.
+    - Created by HP and Microsoft in 1996 and standardized by the IEC.
+    - Uses 8-bit color components (RGB24/RGBA32), giving a somewhat limited gamut.
+    - Uses a ~2.2 gamma function (not exactly a power function).
+- Adobe RGB (for RGB):
+    - Similar to sRGB, but uses a wider gamut appropriate for high-end printing (utilising the full CMYK space).
+    - Created by Adobe in 1998.
+- Rec. 601 (for Y'CbCr video):
+    - For 525-line 60Hz and 625-line 50Hz video, with Y'CbCr 4:2:2 color encoding, standardized by the ITU.
+- Rec. 709 (aka HDTV video) (for RGB):
+    - For FHD, standardized by the ITU.
+    - Very similar to sRGB, being created shortly before it.
+- Rec. 2020 (aka UHDTV video) (for RGB):
+    - For 8K UHD, standardized by the ITU.
+- Rec. 2100 (aka HDR-TV video) (for RGB):
+    - Extension of Rec. 2020 with HDR support.
+    - Supports 10-bit and 12-bit RGB.
+- sYCC (for Y'CbCr):
+    - Defined in amendments to the sRGB standard.
+
+## Miscellanea
+
 - Color range:
     - The numerical range actually used for each color component.
     - Typically "partial"/"limited" or "full". While full gives a bigger range and might be better internally, it uses more bandwidth during transmission.
@@ -87,7 +96,7 @@ breadcrumbs:
     - Serves two purposes:
         - For correcting gamma characteristics of cameras or displays.
         - For "smoothing" the perceived brightness over an integer range to reduce the number of required bits to represent a certain perceived bit depth of an image, since human perception also follows a power function for brightness perception.
-    - Basic function: $V_{out} = AV_{in}^{\gamma}$, where $V_{in}$ is mapped to $V_{out}$ using gamma exponent $\gamma$ and constant coefficient $A$.
+    - Basic function: `$V_{out} = AV_{in}^{\gamma}$`, where `$V_{in}$` is mapped to `$V_{out}$` using gamma exponent `$\gamma$` and constant coefficient `$A$`.
     - Gamma correction is typically chained (e.g. one gamma for the camera, one for the file format and one for the display), meaning the gamma exponents may simply be multiplied together for the full chain to get the resulting gamma value.
     - The desired resulting gamma is around 1.0–1.5, with higher gammas for dim viewing environments (gives a darker and "shady" image) and lower gammas for bright viewing environments (gives a brighter and "washed" image).
     - The gamma for file formats are typically encoded either in the format itself (e.g. for PNG) or in Exif metadata (e.g. for JPEG). For cameras and displays, it's often specified and sometimes configurable.