Show newer

More encode times (5m0s source video) using SVT-AV1 encoder of 480p video at fixed bitrate depending on preset (ignoring visual samples for now, just to get a feel):

p12 - 0m14s, 20.6x
p11 - 0m19s, 15.7x
p10 - 0m25s, 11.7x
p9 - 0m34s, 8.85x
p8 - segfault
p7 - 1m22, 3.65x
p6 - 2m, 2.5x
p5 - 4m20s, 1.15x
p4 - 10m22s, 0.48x
p3 - 18m8s, 0.27x
p2 - 46m40s, 0.1x
p1 - 82m, 0.061x
p0 - 155m, 0.032x

It felt like my computer burned a dinosaur when doing preset 0 conversion. No it was not worth it.

Mission accomplished

As soon as I connected the Odroid-GO to the "broken" Odroid-C2, the C2 decided to cooperate and booted normally 🤦

But hey, at least I now have a handheld serial monitor!

Ah, the joys of embedded software development.

The provided graphics library is a fork-but-heavily-modified of Adafruit_GFX but incompatible in key ways.

Rendering text is too slow for real-time display updates. Double-buffering might be a solution, but standard malloc() does not have access to enough memory, one has to use PSRAM

However trying to include the real Adafruit_GFX library to make use of GFXcanvas16 breaks the build...

I guess it's DIY all the way down...

Show thread

I'm on a quest to turn my GO with a 320x240 screen into a hand-held serial (UART) monitor, with full xterm-color256 support. is good as a PoC, but it's bulky, requires a laptop anyway, why when you already have a screen?

Brothers: Tale of Two Sons looksd like such a nice co-op adventure gsme to play with the kids.

Until we had to chop off a giant's leg, bathe in blood river, get seduced by a girl-turned-spider attempting to eat us, tear her legs off, watch one of the brothers die, having to bury him in the ground and ending the game mourning above family graves.

I should have read the plot on Wikipedia beforehand. This is going to take many but-I-can't-fall-asleep nights to recover...

And apparently "dead internet theory" is a thing:

Like every conspiracy theory, there are gems of unpleasant truth in it: "Large proportions of the supposedly human-produced content on the internet are actually generated by artificial intelligence"

Even the eshop I usually buy things from switched from "specs tables" to "blurbs of text" like: "The company chose HDMI and DisplayPort as the connector. The display resolution is set at FullHD, that is 1920 by 1080 pixels"..

Show thread

TIL that "helpful content" is to blame:

Unfortunately today it's too easy to sprinkle keywords and let GPT-3 generate the rest of the "helpful content".

Show thread
Michal boosted

Linux SBCs (single board computers) are fun, but damn, why is the latest supported kernel 3.16 and no updates since 2018?

And no way to simply replace with a more recent kernel version due to various necessary non-mainline patches, curious custom u-boot configuration etc...

I hate these SEO content dump websites that pollute search results with downright absurd gems like:

"It is possible to use ext4 as a remote component. Unfortunately, not all Linux system drivers support it."

How does compressed image look (and how big it is) based on selected quality?

A picture is worth a thousand words and video is worth $LENGTH * $FPS pictures, so here it is:

single-user instance cleanup/decluttering

I've decided to unfollow all bot/project/brand accounts from this "main" account. However I set up a separate account, which is now subscribed to all of them instead of my main account.

This way in "Home" view I see just *people* (and their boosts). I can also still see other stuff in the "Federated timeline" view (since "someone on my server" follows them).

near-full memory handling is a joke. I've been writing to tmpfs when suddenly I lost SSH connection couldn't reconnect. Eventually Wireguard gave up too

From [1] "If you oversize your tmpfs instances the machine will deadlock since the OOM handler will not be able to free that memory"

The problem is OOM handler won't kick in. Who cares if userspace is fucked if kernel is happily chugging along. All this while hundreds of km away from physical access.


Trying out to encode a 10s sample, encode times with various presets at fixed low bitrate:

0 - 06:03
1 - 03:28
2 - 01:57
3 - 00:44 - first artifacts visible
4 - 00:24
5 - 00:14 - degradation at keyframes
6 - 00:08.9
7 - 00:05.5
8 - 00:03.3 - artifacts smeared out while panning
9 - 00:02.4
10 - 00:02.2 - artifacts remain for whole duration between keyframes
11 - 00:01.7
12 - 00:01.5 - blocky & blurry image
13 - 00:01.5 - "usable but not worth it" - this is the ffmpeg default BTW

Michal boosted
Michal boosted

JPEG vs. JpegXL vs. AVIF

256x192 image targeting ~1500 bytes

Show thread
Michal boosted

"We all know that the best programming language in the world is Qbasic 4.5. It's where many of us learned. It's what hooked me as a tender fellow."

submitted by LostWithInsanity

It turns out selecting AOM codec for AVIF allows to use some "secret" flags [1], which can bring the AVIF size down to 500 bytes.

Obviously the image is unusable, but allows size-for-size comparisons


Show thread
Show older

The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!