#encoding

。゚・\m\(>Д<#)/m/・゚。dada78641
2026-02-06

Someone joined -talk on the OBS server to ask about a nonexistent x264 setting that came from a fully LLM generated guide. Of course, since it has a source, Google's AI summary believes it's a real thing too.

This sort of thing is getting more and more common. We all have to develop a whole new sense of skepticism to avoid falling in this trap.

Short discussion on the OBS Discord. Someone is asking what the effect of trellis=3 is on the encoding output. People are confused because trellis=3 shouldn't be a thing.Confirmation that trellis=3 is not a real value according to the x264 code, and a screenshot of Google's AI summary believing that it's a real thing when googling the phrase from the fake AI generated guide.
2026-01-29

Having trouble with my container, seems like it's using the incorrect version of the `SvtAv1EncApp` which is really annoying. Went ahead and just slammed the `psyex` version into `/usr/bin` and now everything is happy.

#encoding #av1an #svtAv1Psyex

The `av1an` output showing an in-progress encode via the logs.  Things are looking good....
2026-01-28

Final optimizations for the Dockerfile, and the new image is now under 500MB which is a heluva-lot better than the original 1.3GB. The results are good, images are now in Forgejo, and even better: they work.

#homelab #encoding #docker #containerd

A screenshot of the Docker container for the Sisyphus client coming in at 493MB.
2026-01-27

So, decided to make the `sisyphus-client` Docker image a multi-stage build because it was a really large image. Ended up taking it from 1.3GB to 708MB which isn't too shabby. Unfortunately, that's about as small as I'm gonna be able to get it with all of the encoding binaries/libraries that I have to install.

Still, pretty solid reduction in container size.

#homelab #encoding #sisyphus

The new 1.6.3 Docker image for the Sisyphus client.  It is now much smaller than the old one which is from the multi-stage build.
2026-01-27

Wooo, now have Docker images for the `sisyphus-client`! Still not happy with the overall size of the images or how I'm versioning them, but they do make things easier to deploy.

#docker #sisyphus #encoding #forgejo

A screenshot of the new Sisyphus Client image in my personal Forgejo package repository.  Even managed to get some of the LABELs right on the fourth try.
2026-01-27

My 4K Blurays of Westworld arrived in the mail today. I started copying and re-encoding episode 1 of season 2, because I have already watched all of season 1. It's estimated to take 17 hours. Most episodes are going to take about the same amount of time. 4K video is rough to work with! 😅

I guess it will slow down how fast I watch them ...

#Video #Encoding #x265 #4K #SciFi

2026-01-15

Off-label uses of pandoc: conversion between text encodings.

E.g., UTF-8 to UTF-16:

echo 'X' | pandoc lua -e 'io.write(pandoc.text.toencoding(io.read"a", "utf-16"))'

Other direction:

echo 'X' | pandoc lua -e 'io.write(pandoc.text.fromencoding(io.read"a", "utf-16"))'

The set of supported encodings is platform dependent, but always includes UTF-8, UTF-16, UTF-32, and latin1.

#pandoc #Unicode #encoding #conversion

2026-01-12

After what can only be considered mean to the hardware, the Sisyphus encoding client version 1.6.3 is released with full support for Av1an. While I won't guarantee it won't eat your pets, I can say that I've encoded enough using the Av1an module that I'm confident you'll at least get some nice videos in return.

The documentation has also been updated as well on the main site along with the README.md with some better directions on getting it up and running.

Link: git.jamesthebard.net/jweatherl

#programming #python #encoding #av1an

2026-01-11

So, the last two days of ripping/encoding went well, very happy with the new encoder module and the overall results. The `svt-av1-psyex` encoder did awesome work, and there's nothing like seeing a 6.5GB file get reduced down to 190MB without a noticeable loss of quality.

The last show took about 1.5 to 2 hours to encode per episode, thankful that I had more than one encoder running at the same time. Gonna call everything a success.

#encoding #av1 #homelab #sisyphus

@philcowans

You're right, this is weird and I'm not entirely sure what's going on. I was able to get it to fail with some combinations, pass with others, and thought I had it figured out until I tried some other cases and those contradicted what I thought I'd established.

As to what's going on - I have a guess, but I'm not confident about it. I think it might be triggering only when an #rfc2047 -encoded segment of the header field value either exceeds the message's policy's line length limit, or in some way crosses over that boundary (such as having leading unencoded ASCII without a whitespace break that would allow the line to fold before the encoded segment).

If this is the case, it looks like a bug to me, too. If it's still happening with the most recent version of Python, I'd say it needs fixing. I haven't tried anything past 3.11.x right now.

Only showing up using the EmailMessage class vs Message class is explainable; there are slight differences, and one is for legacy code compatibility.

Weird.

#Python #email #EmailModule #EmailMessage #encoding #encoded

2026-01-10

One of the things that is interesting doing mass encodes is verifying all of the little things that can just mess everything up. If you're pulling in stuff like 3rd-party subtitles, then you have to verify the timing of the subtitles and adjust as necessary. Even better, if those are SubStation Alpha subtitles, you have to verify if the style fonts get added as attachments to the MKV file.

And if it's across something like a TV show, you definitely need to do this for every episode. If there _is_ an issue, you get to fire up Aegisub and try to track down the exact offset you'll need and either correct that via Aegisub or when you inevitably have to remux via `mkvmerge`/MkvToolnix.

#encoding #matroska #subtitles

2026-01-10

Oh yeah, this is gonna take a long while. Time to let it do its thing and enjoy some beers outside for a nice Saturday.

#sisyphus #av1 #encoding #homelab

A screenshot of the current status of all the encoding nodes from the Sisyphus front-end.
2026-01-10

Nothing like a quiet Saturday abusing the homelab with video encoding.

#encoding #av1 #homelab

A screenshot of `btop` showing the VM being completely swamped from a video encode via SvtAv1EncApp.
2026-01-06

Discovered a way to obfuscate an image. Using color fills, one can generate something that looks like noise, when the vector paths can describe a whole different scene. #penplotter #vectorart #encoding

2026-01-05

I've got initial `av1an` support into the Sisyphus encoding system. Updated the Dockerfile for `av1an`, added `svt-av1-psyex` with HDR10+ and Dolby Vision support, and even installed the `lsmash` Vapoursynth plugin for fast scene detection/chunking. I still need to get `ffmpeg` compiled with support for `svt-av1-psyex`, but I'll deal with that in the future once I get encodes running and working.

Repo: git.jamesthebard.net/jweatherl

#av1an #encoding #sisyphus #docker

A screenshot of VSCodium showing part of the Dockerfile.  Lots of compiling from source, but it works and I'm not poking it with a stick.
2026-01-05

Alright, started work on the `av1an` module for my distributed encoding server. First up, getting a proper JSON format to set the command-line options. The schema is about 320 lines long, but it does lend itself to some nice data formatting. A basic encode "job" block looks like this and actually generates the appropriate command-line arguments.

```json
{
"source": "video.mkv",
"destination": "test.mkv",
"general": {
"proxy": "test.pyv",
"log-file": "/home/jweatherly/ffmpeg-test/output.txt"
},
"encoding": {
"video-parameters": [
"--preset 2",
"--crf 25",
"--noise-adaptive-filtering 4"
],
"audio-params": [
"-c:a libopus",
"-b:a 128k"
],
"chunk-method": "lsmash"
}
}
```

#av1an #encoding #sisyphus

2026-01-03

Final tests in and the quality is outstanding. Going from the stock `svt-av1` encoder to the `svt-av1-psyex` encoder is already a nice bump in quality, and the encodes are faster using `av1an` due to using every ounce of the CPU. The `lsmash` speedup is nice as well as the stock method for chunking took a bit longer post-detection.

Also, can't say enough about the Ryzen 9 HX 370: did a great job with the encodes and only burned through ~24W during the encodes along with the Thinkpad that kept the temps around 68C.

#svtav1 #encoding #av1 #av1an

The resulting encodes showing an original file size of 7.4GB and post-encode sizes ranging between 340MB (profile 3, CRF 30) and 267MB (profile 2, CRF 25, NAF).
2026-01-03

Doing a test with `av1an` and `SvtAv1EncApp` (`svt-av1-psyex`). This poor laptop is absolutely getting hammered at the moment...lol

#svtav1 #encoding #av1an

A screenshot of btop showing all of the cores at around 100% as the encode encodes.
Python PeakPythonPeak
2026-01-02

Unicode Encoding Corrupts 2.3M Customer Names Permanently?!

UNICODE DISASTER! Latin1 to UTF-8 deletes special characters! José becomes Jos! 2.3M names corrupted! Cannot contact customers! €2.7M GDPR fine! Data engineer FIRED!

youtube.com/watch?v=MqtjSdp85uY

2026-01-01

RE: social.linux.pizza/@BigHeadMod

Afternoon crew please check out my 85x64 pixel encode of a 100 minute #PublicDomain movie that fits within Discord's 10 MB limit. #encoding #video #videoencoding #compression #AV1

Client Info

Server: https://mastodon.social
Version: 2025.07
Repository: https://github.com/cyevgeniy/lmst