Skip to content

Instantly share code, notes, and snippets.

@coldcue
coldcue / encode_dji_oa4_dlogm_hdr_video.sh
Created August 12, 2026 07:20
DJI Osmo Action 4 D-Log M (10-bit) to HDR (HLG/BT.2020) batch encoder - outputs MP4s recognized as HDR on iPhone/QuickTime/TVs
#!/bin/bash
# Batch re-encode DJI Osmo Action 4 D-Log M (10-bit) footage to HEVC
# (libx265, crf 30, slow preset) as HDR .mp4 files that iPhones, QuickTime,
# Photos, Apple TV and HDR TVs recognize and play as HDR (HLG).
#
# Source format (Osmo Action 4, "10-bit D-Log M" color mode):
# 4K 29.97 fps HEVC ~90 Mbps, yuv420p10le, container/VUI tagged plain
# BT.709 limited range, AAC-LC stereo audio, plus DJI extra tracks
# (djmd/dbgi telemetry, tmcd timecode, embedded cover-art/preview JPEGs).
#
@coldcue
coldcue / encode_dji_oa5pro_video.sh
Last active August 11, 2026 19:33
Batch re-encode DJI Osmo Action 5 Pro footage to HEVC (libx265, HLG-safe, metadata transfer)
#!/bin/bash
# Batch re-encode DJI action-camera footage to HEVC (libx265, crf 24, medium
# preset). Developed and tested with DJI Osmo Action 5 Pro recordings:
# 4K 29.97 fps HEVC ~56 Mbps, 10-bit HLG HDR (BT.2020 / ARIB STD-B67),
# AAC-LC stereo audio, plus DJI extra tracks (djmd/dbgi telemetry with
# per-frame accelerometer, shutter speed and color temperature; a tmcd
# timecode track; embedded cover-art/preview JPEGs).
#
# What it does per file:
# - keeps only the main video + audio streams; audio is copied untouched
///// TODO : Replace <<LAN_INTERFACE>> with internal bridge or lan interface, replace <<<PPPOE_DIGI_INTERFACE>>> with the pppoe-digi interface
/ipv6 nd
set [ find default=yes ] disabled=yes
add advertise-dns=yes interface=<<LAN_INTERFACE>>
/ipv6 dhcp-client
add add-default-route=yes interface=<<<PPPOE_DIGI_INTERFACE>>> pool-name=pool6 request=address,prefix script=":del\
ay 5s;\
\n/ipv6 address remove [find advertise=yes]\
@coldcue
coldcue / pokemons.js
Last active February 5, 2017 05:57
Pokemons
[{id:1,name:'Bulbasaur'},
{id:2,name:'Ivysaur'},
{id:3,name:'Venusaur'},
{id:4,name:'Charmander'},
{id:5,name:'Charmeleon'},
{id:6,name:'Charizard'},
{id:7,name:'Squirtle'},
{id:8,name:'Wartortle'},
{id:9,name:'Blastoise'},
{id:10,name:'Caterpie'},
#include <stdio.h>
/* The struct of the rectangles */
typedef struct {
float x;
float y;
float width;
float height;
char* fill;
#include <iostream>
#include <thread>
#include <ctime>
using namespace std;
void calc(unsigned long iterations) {
unsigned long n = 0;
for (unsigned long i = 0; i < iterations; i++) {
n = n + n * (i % 5);
//Process started
reg started;
//////////////
// States
// 0: load
// 1: start bit
// 2..8: data
// 9: parity bit
// 10..11: stop bits
module rategen(
input clk,
input rst,
output cy
);
reg [25:0] cntr;
assign cy = (cntr == 4);
//assign cy = (cntr == 49999999);
module shr_4(
input clk,
input ce,
input rst,
output [3:0] out
);
reg [3:0] shr;
assign out = shr;
#include "Wifi.h"
#include "Arduino.h"
//Wifi beallitas
void Wifi::init() {
char buf[256];
Serial1.begin(9600);
Serial1.setTimeout(250);
Serial.println("WIFI: Command mode ON");