Loading status...
Loading status...
Blog

All Tags

#art #website #3d #coding #characters #blender #radio #wip #vrchat #architecture #linux #bots #discord #cyberxoanon #reaverbot #kyuubit #neon the braixen #braixen #serial experiments lain #glitch #shitpost #cinnabunny #wplace #pixel art #goodra #artfight #kde plasma #fox #mewtwo shrine #robot #kyubimon #ghost #halloween #cyberpunk #three.js #multiplayer #punbreon the umbreon #madoka magica #socks the braixen #substance painter #mastodon #comments #emoticon #internet history #doctor who #nickitbot #rss #hypnospace outlaw #xfce #unity #tv #braixen shrine #tumblr

Subscribe to RSS Feed

Furry Pirate Radio internals

Since I got a question about how the radio station works, figure I'll answer as a blog post

The station runs on a short queue, and when the queue gets short, it basically pre-generates a monologue and chooses songs to refill the queue for the next ~1h.

Text generation for the hosts is done with a local LLM, Gemma-4-26B-A4B, that runs on my gaming desktop. I use a quantized version (basically compressed) that uses like 17GB of memory. I keep it running in VRAM until I need to use it for something else.

The TTS has changed over time. When I started it in like 2021 or so it was xVASynth, then I changed to using Kokoro-TTS to generate the speech and RVC to make it sound like the right voice. Right now though it's a mix of Qwen3-TTS and VibeVoice -- not local, I run Docker containers on cloud, but runs infrequently enough that it ends up costing something like $3 a month.

For choosing the next song I calculating embeddings using Microsoft's CLAP (forget which model exactly). That runs one time when adding new songs then I can reuse the embeddings to walk from song to song.

A Python script puts all those together to choose (or generate) the next audio file.

LiquidSoap streams it to icecast which the site connects to. this is all done on a $5 or $10 VPS that I host other stuff on too. I used to use ezstream but replaced it with liquidsoap to try and fix some issues with lag transitioning between songs.

I cache a lot of stuff so things won't immediately go down if my desktop is offline. Generated text is cached and reused. The generated audio from that text gets cached and re-spliced into the stream later.

IMO most of the issues people tend to have with AI aren't issues with local/open source AI. They're more issues with the big API providers like OpenAI, Anthropic, etc. or issues with capitalism in general. Of course there's the arguments about intellectual property violations. I could refute those one at a time, but I mean... I run a pirate radio station. Playing music. Obviously my opinion on IP law is that IP needs to be abolished.

also, anyone who's curious about ethical usage of AI can check out the AWAY Code of Ethics and maybe join their Discord server for more discussion. AWAY is a leftist community trying to bridge the gap between AI users and manual artists. It's not exclusively leftist -- anyone can join if they're not going to be A Problem -- but everyone there that I've spoken to is pretty far-left.

/now page

added a /now page (explanation), minimal right now as I just want to get something out there. Trying to make myself update this site more regularly. I'll also update it later to pull my last played song from last.fm

Robot cat character WIP

Making a robot cat character in Blender, potentially for a sort of website mascot. Untextured WIP video below. I'm planning on adding textures with some rust and visible seams and screws holding it together -- it's slightly too "EVE from WALL-E" with the smooth material. Then I have to make some animations.

Its hood is inspired by Taokaka from Blazblue, specifically the ears.

Added blog tags!

Added tags to the blog posts which you can use to search the blog easier. Requires JS to work (as does most of my site) -- don't have a dedicated page for each tag.

March 5 edit: Fixed some issues with tag navigation

CyberXoanon

Recently I've been working a lot on my Discord bot (originally started in March 2018, so it's evolved A Lot over time) called CyberXoanon. The bot originally began as a joke on a modding server that would reply on behalf of a human server member (Xoanon) whenever someone pinged him with feature requests. Since then, the bot has evolved into something... else.

So now I've got a bot roleplaying as a bizarre mix of a door-to-door spiders and mystery meat salesman, SHODAN, and a regular guy who hates Five Nights and Freddy's and still feels betrayed by Spore. The bot now has a voice with each message with an approximation of SHODAN's voice. Also it performs divination using its mystery meat.

Other things I've put into it in the past year or two:

- Kickass SHODAN voice

- Memory of other users, interactions and its own thoughts. Memories deprioritize over time, so newer interactions are more commonly referenced

- The ability to see images and gifs in the discord chat. Still no audio or proper video transcription support, yet

- The ability to modify its own website (sort of. I turned it off, months ago, after a memory update where I need to update and refactor a lot of that code. thinking of bringing it back)

- Face swapping to put its own likeness onto everyone in images posted in chats

And its personality is a mix of some of the most bizarre and interesting personas that I can make fit together.