Now/log

Newest entries[1].

[1] Newest entries

Previous month[2].

[2] Previous month

0731

Nothing

0730

Fixed text mode and special keys handling with repeats in npe's[3] SDL2 reimplementation. `AltGr` is now treated as right Alt.

[3] npe's

uxn[4] and FastTracker II[5] should have keyboard working correctly now.

[4] uxn

[5] FastTracker

II

0729

Even further with rtmp[6]. I got a spec and rewrote parts that were initially based on `librtmp`. So now it's (as most of my code) Public Domain.

[6] rtmp

0728

Got further with rtmp[7]:

[7] rtmp

; ./6.out -d -v /tmp/example.ivf rtmp://live-prg.twitch.tv/app/live_REDACTED
← type=Invoke chan=3 ts=0 sz=264: 'connect' 1 {app:'app/live_REDACTED',
	tcUrl:'rtmp://live-prg.twitch.tv/app/live_REDACTED', fpad:false,
	capabilities:15, audioCodecs:3191, videoCodecs:252, videoFunction:1}
→ type=ServerBW chan=2 ts=0 sz=4
→ type=ClientBW chan=2 ts=0 sz=5
→ type=Control chan=2 ts=0 sz=6
control packet: StreamBegin 0
→ type=ChunkSz chan=2 ts=0 sz=4
new chunk size: 4096 bytes
→ type=Invoke chan=3 ts=0 sz=236: '_result' 1 {fmsVer:'FMS/3,5,7,7009',
	capabilities:31, mode:1}
	{level:'status', code:'NetConnection.Connect.Success',
	description:'Connection accepted.', data:{string:'3,5,7,7009'},
	objectEncoding:0}

0726-0727

RTMP.

0725

A bit of gaming (Quake II).

0724

Live-streamed fixing a crash in FT2 clone port for Plan 9[8] to Twitch[9]. This was done by capturing video with hj264[10] natively, sending the video to `ffmpeg` running in Linux on `vmx`, streaming to Twitch directly using RTMP.

[8] FT2 clone port for Plan

9

[9] Twitch

[10] hj264

Stream A[11].

[11] Stream A

Stream B (continued)[12].

[12] Stream B (continued)

Connection broke in the middle, so it's split into two.

0723

More work on rtmp for Plan 9[13].

[13] rtmp for Plan 9

Fixed a bug in nvi[14] causing fetching of videos from some Peertube instances to fail. Improved usage error.

[14] nvi

Fixed a bug in mp3dec[15]. Non-seekable streams are playing fine now.

[15] mp3dec

0722

More work on rtmp for Plan 9[16].

[16] rtmp for Plan 9

0721

The logic some people produce on Twatter...

facepalms

Thought it should be clear by now, but here we go again:

THERE ARE NO NAZIS IN 9FRONT. Stop spreading this bullshit.

Saying that as one of the 9front devs, who happens to be an out anti-fascist anarchist queer trans woman (ain't I a cliché?).

I swear to god, we had this as an inside joke, but it really does seem like people see pictures in B/W (or the word "front" anywhere in the text) and instantly assume it has something to do with nazism.

9front

The "two communities", or whatever, is referred to `#cat-v` and the rest (like `9grid`) being a bit separate. That's not about 9front as a project or its devs, although there are the same devs in both. It's about communities, among which I still haven't noticed a single nazi.

0720

Time to try RTMP with hj264[17] and see if it can be made to work with Peertube and Twitch.

[17] hj264

0719

More work on hj264[18]. It now outputs `IVF` format by default, which means any ffmpeg-based player will be able to play it as is.

[18] hj264

0717-0718

Nothing.

0716

I got the only9fans.com[19] domain and directed it to shithub.us[20] for now.

[19] only9fans.com

[20] shithub.us

0715

It's "QUICK PORTING WITH SIGRID" section again! Happy to see y'all.

audio/aacenc[21]. It outputs raw ADTS stream, which means it can be played by audio/aacdec[22] directly, but is not very useful on its own. I'm going to use this encoder along with hj264[23] to capture video AND audio so it can be recorded (or livestreamed, eventually).

[21] audio/aacenc

[22] audio/aacdec

[23] hj264

Both video and audio should probably be wrapped into separate PES[24] and then remuxed into a single contrainer/stream with another tool to be written, don't think I am going to put that logic into mcfs[25].

[24] PES

[25] mcfs

Now, to record the audio on Plan 9, one needs to have a filesystem wrapping `/dev/audio` and providing another file to act as a loopback device, so the audio played on the system can also be recorded. Perhaps even `pipefile` alone would be enough, I will have to find out.

0714

hj264[26]: with some additional work managed to pull out capturing video at 70fps, 1024x768, Quake 1 gameplay. No assembly has been written, still.

[26] hj264

Night biking.

0713

Managed to pull 30fps of 1920x1080 with hj264[27] I'm working on.

[27] hj264

Grabbing `/dev/screen` (or a rio window) continuosly in a separate proc helped. This operation is actually introducing quite a delay on its own. I will need to see if maybe `memimage` stuff can be replaced with something more lightweight if it's slow. Profiling helps too.

Night biking.

0712

Successfully captured frames from a rio window and encoded to H.264, all on Plan 9.

Twitched some ORCA livecoding done on 9front.

0711

Meh.

0710

I set up twitch account[28] where I'm going to be streaming oldschool shooters (Q1, Q2, UT99) and working in 9front as well once I set up `drawterm`.

[28] twitch account

0709

Heh. Heh. Javascript[29] for Plan 9.

[29] Javascript

0708

nvi[30]: fixed a crash if either audio or video stream is not available. `nvi` will leave the file empty in this case.

[30] nvi

Video of yesterday's screen capturing experiment uploaded[31].

[31] Video of yesterday's screen capturing experiment uploaded

0707

nvi[32]: made full URLs work when fetching videos from Youtube, both `youtu.be` (short) and `youtube.com` style.

[32] nvi

Tested screen capturing by `segattach`ing to framebuffer directly. Of course it's not tear-free, but is fast enough to make use of for video capturing, without having to rewrite the whole `devdraw` for userspace. Still, userspace `devdraw` would be REALLY nice to have.

0705-0706

No recollection.

0704

Came back from the hike. I went back on-trail, it was much easier, and I managed to take one good picture[33] on my way.

[33] one good

picture

It would be nice to have some kind of ESP32-based battery-powered terminal with e-ink screen that doesn't do anything besides running an embedded variant of `drawterm` that connects to remote machines. I could use it for hacking AND my full time job while being outside. Perhaps I should build one.

0703

Today I'm going to be hiking alone. I took two film cameras and paper with pencils for some creative fun. Going to stay overnight in a hammock. E-reader and a small music speaker is with me as well.

There it is, my camping spot[34]. As per usual, most of the pics are on my Insta.

[34] There it is, my camping spot

0702

One of my gel 12V batteries seems to be dead (~12mV). The other one is 4.5V :(

Going to see if I can still charge at least one of them.

Started (over) on sndio server for Plan 9[35]. This is mostly to play audio with stuff running in `vmx`, since Linux and OpenBSD both support `sndio` pretty well.

[35] sndio server for Plan 9

0701

Updated Rio theming[36] patch and instructions (no `hg` in 9front anymore).

[36] Rio theming

Same with riow[37].

[37] riow

Patch for "select command and its output with a double click on the rio prompt" patch is now at `/n/ftrv.se/patches/rio-semicolon-prompt.patch`.

All three patches can be (optionally) applied in any order.

Nothing.

Older entries

2021-06-*[38].

[38] 2021-06-*

2021-05-*[39].

[39] 2021-05-*

2021-04-*[40].

[40] 2021-04-*

2021-03-*[41].

[41] 2021-03-*

2021-02-*[42].

[42] 2021-02-*

2021-01-*[43].

[43] 2021-01-*