Advertisement · 728 × 90
#
Hashtag
#Bandcrash
Advertisement · 728 × 90
The state of the fluffy (late December 2025 edition) Time for another proverbial cheese sandwich post1. Thinking about the end of the year and what’s coming up for me. This isn’t my annual aspiration wrap-up post; that’ll come later. ### Mental state I am currently very fatigued. I have a lot of music I’d like to be working on but I’m having trouble gathering the energy to do so. I have so many on-hold backburnered projects and looking at the list of things I want to do is starting to feel pretty overwhelming. I need some sort of spark to ignite the next album’s nucleation. The weather’s been particularly dreadful this winter and that hasn’t helped things at all. Constant flooding and wind and so on has kept me pretty much indoors all the time, aside from the brief respites which allowed me to buy the Corolla and do some work on it. Also, even though the Corolla is fun to drive and work on, I still feel a wave of fatigue hit me when I take it out anywhere. I would still like to figure out where the fatigue comes from. I also get the same fatigue when I ride my ebike, but the ebike at least I don’t worry about killing someone else while riding it (but I do worry about getting killed on it, as the street I take to get anywhere is not _technically_ a stroad but people sure treat it like one). I’m also having my usual chronic pain flareups, which is locked in an eternal spiral with the depression and anxiety. Fun times. My house is also a disaster area and I really need to get organized. I see a lot of spring cleaning in my future, and also ideally selling/donating a _lot_ of shit. ### Music stuff This past weekend I performed at two shows in VRChat, both of which went pretty well for different reasons. The first one, Gilly’s Winter Melodies, was a nice little chill show with a bunch of people just hanging out casually. I just did an acoustic set, which I hadn’t done in a while, and afterwards I hung out with a few musicians I like and wanted to get to know better, and it was great. The other one, VRelium’s Furever Christmas show, was a much bigger deal, and I think I had the largest audience ever for a full set. For this one I did a spectacle with visuals and backing tracks, and during my performance the audience was mostly super great (aside from one jerk who shouted out “When do we start the main act?!” in the middle of it, but everyone around them told them to shut up). During the outro of Safety in Numbers people were **_SINGING ALONG_** with the call-and-response and holy **_fuck_** that felt _amazing_. I don’t think that’s ever happened to me before! Afterwards I had several people come up to me and tell me how much they liked my music (and most of them said they’d seen me a few times before too), and during the whole event I had a lot of other great conversations with folks who were super excited to hear me perform. I feel like that’s a big turning point for me. Both of these are recorded and I’ll be putting them on YouTube and the live shows page as soon as I can get them edited. Gilly’s Winter Melodies I have everything I need (and it’ll just take a few minutes to edit), while VRelium will be a bit longer since I’m waiting for the recorded footage from the show itself. My booking agent has already found a couple of shows for me in January. I’m still waiting on details on those though. #### Song Fight! rumination It’s been about 25 years since I first found Song Fight!. On that note, I have a song in the current fight and sometime today I hope to record one for next week’s. Even though I’ve been feeling pretty divorced from Song Fight! for a while I still want to see it thrive, and really I think it’s the lack of it thriving that’s made me feel this way. I’ve been getting more proactive about trying to get musicians and musician-curious folks I know to join in, but it’s been tough. I think there’s a bunch of issues that get in the way: * Established musicians have no reason to participate * People who aren’t yet “good at music” think that they need to be “good at music” in order to participate (which is very much **_not the case_**) * Too many newcomers to making music think that pushing a button in Suno is enough (when that is one of the few things that is specifically disallowed) * People who don’t make music yet don’t see the value in trying to learn, even if they want to, _because_ of AI and oversaturation and so on I just want to say that if you don’t make music but you want to, the best time to start is right now. ### Car stuff Things I need to do on the car: * Take it to the mechanic for a proper inspection and tune-up (no, I didn’t get it inspected when I bought it, yes I know that’s foolish) * Try to figure out why I can’t get keyfob pairing to work, which mostly means opening up the passenger-side C pillar, and probably finding a new RKE module for it (because either the one that’s there is broken, or there isn’t one at all; both are possible and the latter is more likely) * Figure out if I should repaint the trunk, which has exposed metal on it at this point * Replace the glove box latch * Improve the cable management for the handsfree mic for the head unit (it’s _fine_ but technically a hazard since it could theoretically get tangled around the brake pedal which would be, y'know, _bad_) * Install my dashcam * Maybe install a backup camera as well (although that requires a _lot_ of additional wiring I don’t really want to deal with) * Fix the switch on the dome light * Sticker None of these are big deals but several of them are waiting for parts to arrive and others I’m not super interested in doing with the weather as it is (since it’s cold and wet out and I don’t have a garage). ### Finances Insurance is getting expensive again, groceries and medications continue to be expensive, housing costs are getting more expensive (utilities and property taxes, mostly), and so on. However, assuming there isn’t a massive stock market crash and that my interest income matches inflation (and historically I’ve done a bit better than inflation), my current savings runway is until around 2033, so it isn’t time for me to worry about things just yet. If I manage to get disability that jumps up to 2045, and then after that I’ll be old enough to cash out my retirement accounts which gives me another 14 years (under the same assumptions), and that gets me all the way to 80. So I think I’m doing fine there. It’s much more likely I’ll die in a freak coffee-roasting accident before then. ### So anyway I don’t know how to end this post. Note: I may earn a commission on affiliated product links in this article. 1. I don’t know why I can no longer find this term actually defined anywhere, but back in the 90s this was a derisive term used for Usenet posts where someone was, basically, blogging about their day, e.g. “today I had a cheese sandwich.” ↩

busybee: fluffy rambles: The state of the fluffy (late December 2025 edition) beesbuzz.biz/blog/5701-The-state-of-t... #MentalHealth #Bandcrash #Blogging #Finances #NewYear #Music #Blog #Publ #Car

0 0 0 0
The state of the fluffy (late December 2025 edition) Time for another proverbial cheese sandwich post1. Thinking about the end of the year and what’s coming up for me. This isn’t my annual aspiration wrap-up post; that’ll come later. ### Mental state I am currently very fatigued. I have a lot of music I’d like to be working on but I’m having trouble gathering the energy to do so. I have so many on-hold backburnered projects and looking at the list of things I want to do is starting to feel pretty overwhelming. I need some sort of spark to ignite the next album’s nucleation. The weather’s been particularly dreadful this winter and that hasn’t helped things at all. Constant flooding and wind and so on has kept me pretty much indoors all the time, aside from the brief respites which allowed me to buy the Corolla and do some work on it. Also, even though the Corolla is fun to drive and work on, I still feel a wave of fatigue hit me when I take it out anywhere. I would still like to figure out where the fatigue comes from. I also get the same fatigue when I ride my ebike, but the ebike at least I don’t worry about killing someone else while riding it (but I do worry about getting killed on it, as the street I take to get anywhere is not _technically_ a stroad but people sure treat it like one). I’m also having my usual chronic pain flareups, which is locked in an eternal spiral with the depression and anxiety. Fun times. My house is also a disaster area and I really need to get organized. I see a lot of spring cleaning in my future, and also ideally selling/donating a _lot_ of shit. ### Music stuff This past weekend I performed at two shows in VRChat, both of which went pretty well for different reasons. The first one, Gilly’s Winter Melodies, was a nice little chill show with a bunch of people just hanging out casually. I just did an acoustic set, which I hadn’t done in a while, and afterwards I hung out with a few musicians I like and wanted to get to know better, and it was great. The other one, VRelium’s Furever Christmas show, was a much bigger deal, and I think I had the largest audience ever for a full set. For this one I did a spectacle with visuals and backing tracks, and during my performance the audience was mostly super great (aside from one jerk who shouted out “When do we start the main act?!” in the middle of it, but everyone around them told them to shut up). During the outro of Safety in Numbers people were **_SINGING ALONG_** with the call-and-response and holy **_fuck_** that felt _amazing_. I don’t think that’s ever happened to me before! Afterwards I had several people come up to me and tell me how much they liked my music (and most of them said they’d seen me a few times before too), and during the whole event I had a lot of other great conversations with folks who were super excited to hear me perform. I feel like that’s a big turning point for me. Both of these are recorded and I’ll be putting them on YouTube and the live shows page as soon as I can get them edited. Gilly’s Winter Melodies I have everything I need (and it’ll just take a few minutes to edit), while VRelium will be a bit longer since I’m waiting for the recorded footage from the show itself. My booking agent has already found a couple of shows for me in January. I’m still waiting on details on those though. #### Song Fight! rumination It’s been about 25 years since I first found Song Fight!. On that note, I have a song in the current fight and sometime today I hope to record one for next week’s. Even though I’ve been feeling pretty divorced from Song Fight! for a while I still want to see it thrive, and really I think it’s the lack of it thriving that’s made me feel this way. I’ve been getting more proactive about trying to get musicians and musician-curious folks I know to join in, but it’s been tough. I think there’s a bunch of issues that get in the way: * Established musicians have no reason to participate * People who aren’t yet “good at music” think that they need to be “good at music” in order to participate (which is very much **_not the case_**) * Too many newcomers to making music think that pushing a button in Suno is enough (when that is one of the few things that is specifically disallowed) * People who don’t make music yet don’t see the value in trying to learn, even if they want to, _because_ of AI and oversaturation and so on I just want to say that if you don’t make music but you want to, the best time to start is right now. ### Car stuff Things I need to do on the car: * Take it to the mechanic for a proper inspection and tune-up (no, I didn’t get it inspected when I bought it, yes I know that’s foolish) * Try to figure out why I can’t get keyfob pairing to work, which mostly means opening up the passenger-side C pillar, and probably finding a new RKE module for it (because either the one that’s there is broken, or there isn’t one at all; both are possible and the latter is more likely) * Figure out if I should repaint the trunk, which has exposed metal on it at this point * Replace the glove box latch * Improve the cable management for the handsfree mic for the head unit (it’s _fine_ but technically a hazard since it could theoretically get tangled around the brake pedal which would be, y'know, _bad_) * Install my dashcam * Maybe install a backup camera as well (although that requires a _lot_ of additional wiring I don’t really want to deal with) * Fix the switch on the dome light * Sticker None of these are big deals but several of them are waiting for parts to arrive and others I’m not super interested in doing with the weather as it is (since it’s cold and wet out and I don’t have a garage). ### Finances Insurance is getting expensive again, groceries and medications continue to be expensive, housing costs are getting more expensive (utilities and property taxes, mostly), and so on. However, assuming there isn’t a massive stock market crash and that my interest income matches inflation (and historically I’ve done a bit better than inflation), my current savings runway is until around 2033, so it isn’t time for me to worry about things just yet. If I manage to get disability that jumps up to 2045, and then after that I’ll be old enough to cash out my retirement accounts which gives me another 14 years (under the same assumptions), and that gets me all the way to 80. So I think I’m doing fine there. It’s much more likely I’ll die in a freak coffee-roasting accident before then. ### So anyway I don’t know how to end this post. Note: I may earn a commission on affiliated product links in this article. 1. I don’t know why I can no longer find this term actually defined anywhere, but back in the 90s this was a derisive term used for Usenet posts where someone was, basically, blogging about their day, e.g. “today I had a cheese sandwich.” ↩
0 1 0 0
Bandcrash: Not just for self-publishing If you’ve poked around this website you probably know that I wrote and use Bandcrash to build the embedded players for the music previews. You might also be aware of it as the tool that I use to publish my albums to my itch.io page as an alternative to Bandcamp. But I also use it as a tool for a bunch of other things in my music — including part of how I publish things to Bandcamp and other storefronts. Here’s some ways in which I use it. ### Improving my production workflow By maintaining my albums in Bandcrash as I work on them, it gives me a nice local player that lets me preview how the music is going to sound in context, since it can help me maintain my track ordering without having to do a lengthy/slow upload process or deal with playlists and libraries in VLC or iTunes or the like. It also gives me a place to edit and preview the liner notes and lyrics sheets. ### Improving distribution to other platforms When it’s time to upload to the various services, it acts as a force-multiplier in a few ways: * I can encode the whole album as FLAC and then easily drag-and-drop the files to the mirlo uploader, which then parses all of the tags and gives me the correct track ordering, genre tags, and lyrics * I already have edited plaintext lyrics and liner notes that I can easily copy-paste into the Bandcamp editor * The FLAC version is also much faster to upload than the WAV version to Bandcamp, and since I already have my track order set, I don’t need to think about things a whole bunch * The butler integration with itch.io automatically uploads all versions there with no real effort on my part * The pre-built .zip files are super easy to sell or distribute on other platforms, such as Patreon, Ko-Fi, and Gumroad ### Mastering and uploading CDs for manufacturing Kunaki’s standard album uploader is a pain to work with and results in albums with forced 2-second gaps between songs. With the brand-new CD authoring flow that I released yesterday, it is now much, much easier to publish an album to Kunaki, as now there are only two files to upload (the .bin and the .cue), and everything turns out exactly as it does when played in the local player with gapless transitions. Any service that can take .bin and .cue files would be able to use this, and even if you just want to burn a bunch of CDs on your own, you can use these files with cdrdao or ImgBurn or any number of other tools that take bin/cue files, and not have to worry about setting up a bunch of stuff. And, as a bonus, you’ll get CD-TEXT, so your titles and genres and such will Just Work™ on fancier CD players and peoples' computers. ### Game OST workflow I compose music for games and this usually means producing both BGM (looping backgroud music) and OST (downloadable soundtrack) versions of things. While I work on the soundtrack for a game, I maintain separate Banddcrash projects for each of these, and then I use Bandcrash to encode the looping versions into .ogg format so that I can share them with the game designers easily. In some rare cases I also use Bandcrash’s “itch channel prefix” functionality to simultaneously upload both versions to the itch page, so that both versions are separately available. ### [ADVANCED] Maintaining this website This website runs Publ, a blogging platform I designed a while back. When I do a release, I run a few scripts to populate the information onto this website: 1. A script that converts Bandcamp’s JSON-LD data to Publ pages for the album, tracks, and lyrics (so that my URL structure matches the Bandcamp structure and uses the same slug generation), using Bandcamp’s embedded player 2. Another script that runs Bandcrash on the album, uploads the preview player to my CDN, and then switches my own embedded players over to the Bandcrash player Also, for the spots where my liner notes had more advanced Markdown in them than what Bandcamp can display, I can also copy-paste the Markdown from my Bandcrash liner notes, and this would be super easy to automate as well. These scripts are super specific to my own setup, somewhat janky, and probably wouldn’t be super useful for others, but at some point I’ll probably opensource them along with the Publ templates for this website, because it’s nice to provide people with more options for how to maintain their online presence. Even if it can be a bit technical. ### In conclusion Bandcrash is a pretty useful tool, and since its file format is just JSON files you can probably come up with some even more interesting use cases for it as a data editor. It’s also pretty rough and could use a lot of improving; fortunately, it’s open source, as is its player component, and of course I welcome contributions, in both the “code and issues” sense as well as the financial sense. Anyway, if you’re someone who makes music and publishes it online or on CD, check it out. Maybe you’ll find it useful too!

Sockpuppet: Blog: Bandcrash: Not just for self-publishing sockpuppet.band/blog/3367-Bandcrash-Not-... #Bandcrash #Software #Tools #Blog

0 0 0 0
Preview
More IndieRadio(?) progress You can always tell when I’ve been deep into a project when my feed reader stats go off-kilter: Anyway yeah I’m working on the radio thing! So far I’ve been focusing on the publishing side of things. In particular, I finally have a very basic end-to-end music feed. (This is a work in progress and I have a few things I want to change about the protocol. I will also be embedding a player onto that page!) The technical details of this are fun, for me, anyway. First, I’d improved camptown (the player component for bandcrash) so that it could generate embeds that look decent on my music website; this took the form of figuring out a fun CSS hack that lets you put basic layout options into the fragment of the embed URL. The short version of that is at the top level I have a bunch of empty `div`s like: <div id="foo"></div> <div id="bar"></div> <div id="baz"></div> and then I have CSS rules that basically treat their `:target` pseudo-elements like media queries: #foo:target ~ main { display: none; } I also built a script that let me quickly re-encode my albums, upload them to my static web hosting, and then ingest the data into my website, using the new `#compact` layout so that it doesn’t present redundant data. For example, on the page for Transitions. The ingested data also includes metadata about each individual track’s stream URL, and then I use _that_ to build the radio feed! Not all of my albums are in the feed yet, and also the feed format needs some love (like I’ve come to realize that it really needs an optional album/track nesting), but this will be a nice proof of concept. ### Next steps My upcoming plan for this is to build the following: 1. A JSON feed syntax because that would be a lot easier for folks to support, I think 2. A basic radio (i.e. feed subscription and playback engine), as described in the previous thing (just using Authl for authentication) 3. A script to ingest my purchased music collection into a private feed My plan is to make all this stuff public, including making a public instance for folks to use, and then try to get other music platform creators to add radio feed support. Faircamp is an obvious choice, for example. I also know that the folks behind Mirlo are interested in potentially joining in. ### JSON feed format This would probably be easier to ingest and support than the html+mf2 concept. { "artist": "Sockpuppet", "links": { "homepage": "https://sockpuppet.band/", "support": "https://sockpuppet.band/support", "blog": "https://sockpuppet.band/blog/", "bandcamp": "https://sockpuppet.bandcamp.com/", "mirlo": "https://mirlo.space/sockpuppet" }, "images": { "band": "https://sockpuppet.band/static/_img/4b/9af2/band-photo_ecda7e6b14_q60.jpg", "icon": "https://sockpuppet.band/static/sockpuppet-icon.png", "thumbnail": "https://sockpuppet.band/static/_img/3c/b7c4/sockpuppet-band_a8816c25b3_480x480_0-0-2384-2384.jpg" }, "releases": [{ "title": "The War Machine", "url": "https://sockpuppet.band/track/the-war-machine", "releaseDate": "2025-08-01", "stream": "https://cdn.sockpuppet.band/the-war-machine/2a2346e1c910a39b891eb5b36d3266ec.mp3", "artwork": "https://sockpuppet.band/static/_img/48/7a98/the-war-machine_b3fee9285d.jpg" }, { "title": "Transitions", "url": "https://sockpuppet.band/album/transitions", "releaseDate": "2024-11-20", "artwork": "https://sockpuppet.band/static/_img/d5/d6a8/a1931562590_10_54907a6d53.jpg", "tracks": [{ "title": "I LOVE YOU", "url": "https://sockpuppet.band/track/i-love-you", "stream": "https://cdn.sockpuppet.band/transitions/93885817fb568d29e1dacbe8a865f0d2.mp3" }, { "title": "Repair My Heart", "url": "https://sockpuppet.band/track/repair-my-heart", "stream": "https://cdn.sockpuppet.band/transitions/7024fdae392583e7606eba821ba934f1.mp3" }] }, { "title": "We Did Everything We Could", "artist": "The Richard Donner Party", "releaseDate": "2021-09-02", "stream": "https://www.songfight.org/music/we_did_everything_we_could/richarddonnerparty_wdewc.mp3", "artwork": "http://www.songfight.org/pix/we_did_everything_we_could/cover400.jpg" }] } I also think that the protocol itself needs a name and an appropriate `<link rel>` for the feed discovery, e.g. `<link rel="indieradio" href="https://sockpuppet.band/radio">` or something. I am very much open to suggestions.

busybee: fluffy rambles: More IndieRadio(?) progress https://beesbuzz.biz/blog/1322-More-IndieRadio-progress #Bandcrash #Streaming #Music #Blog #HTML #CSS

0 1 0 0
Preview
More IndieRadio(?) progress You can always tell when I’ve been deep into a project when my feed reader stats go off-kilter: Anyway yeah I’m working on the radio thing! So far I’ve been focusing on the publishing side of things. In particular, I finally have a very basic end-to-end music feed. (This is a work in progress and I have a few things I want to change about the protocol. I will also be embedding a player onto that page!) The technical details of this are fun, for me, anyway. First, I’d improved camptown (the player component for bandcrash) so that it could generate embeds that look decent on my music website; this took the form of figuring out a fun CSS hack that lets you put basic layout options into the fragment of the embed URL. The short version of that is at the top level I have a bunch of empty `div`s like: <div id="foo"></div> <div id="bar"></div> <div id="baz"></div> and then I have CSS rules that basically treat their `:target` pseudo-elements like media queries: #foo:target ~ main { display: none; } I also built a script that let me quickly re-encode my albums, upload them to my static web hosting, and then ingest the data into my website, using the new `#compact` layout so that it doesn’t present redundant data. For example, on the page for Transitions. The ingested data also includes metadata about each individual track’s stream URL, and then I use _that_ to build the radio feed! Not all of my albums are in the feed yet, and also the feed format needs some love (like I’ve come to realize that it really needs an optional album/track nesting), but this will be a nice proof of concept. ### Next steps My upcoming plan for this is to build the following: 1. A JSON feed syntax because that would be a lot easier for folks to support, I think 2. A basic radio (i.e. feed subscription and playback engine), as described in the previous thing (just using Authl for authentication) 3. A script to ingest my purchased music collection into a private feed My plan is to make all this stuff public, including making a public instance for folks to use, and then try to get other music platform creators to add radio feed support. Faircamp is an obvious choice, for example. I also know that the folks behind Mirlo are interested in potentially joining in. ### JSON feed format This would probably be easier to ingest and support than the html+mf2 concept. { "artist": "Sockpuppet", "links": { "homepage": "https://sockpuppet.band/", "support": "https://sockpuppet.band/support", "blog": "https://sockpuppet.band/blog/", "bandcamp": "https://sockpuppet.bandcamp.com/", "mirlo": "https://mirlo.space/sockpuppet" }, "images": { "band": "https://sockpuppet.band/static/_img/4b/9af2/band-photo_ecda7e6b14_q60.jpg", "icon": "https://sockpuppet.band/static/sockpuppet-icon.png", "thumbnail": "https://sockpuppet.band/static/_img/3c/b7c4/sockpuppet-band_a8816c25b3_480x480_0-0-2384-2384.jpg" }, "releases": [{ "title": "The War Machine", "url": "https://sockpuppet.band/track/the-war-machine", "releaseDate": "2025-08-01", "stream": "https://cdn.sockpuppet.band/the-war-machine/2a2346e1c910a39b891eb5b36d3266ec.mp3", "artwork": "https://sockpuppet.band/static/_img/48/7a98/the-war-machine_b3fee9285d.jpg" }, { "title": "Transitions", "url": "https://sockpuppet.band/album/transitions", "releaseDate": "2024-11-20", "artwork": "https://sockpuppet.band/static/_img/d5/d6a8/a1931562590_10_54907a6d53.jpg", "tracks": [{ "title": "I LOVE YOU", "url": "https://sockpuppet.band/track/i-love-you", "stream": "https://cdn.sockpuppet.band/transitions/93885817fb568d29e1dacbe8a865f0d2.mp3" }, { "title": "Repair My Heart", "url": "https://sockpuppet.band/track/repair-my-heart", "stream": "https://cdn.sockpuppet.band/transitions/7024fdae392583e7606eba821ba934f1.mp3" }] }, { "title": "We Did Everything We Could", "artist": "The Richard Donner Party", "releaseDate": "2021-09-02", "stream": "https://www.songfight.org/music/we_did_everything_we_could/richarddonnerparty_wdewc.mp3", "artwork": "http://www.songfight.org/pix/we_did_everything_we_could/cover400.jpg" }] } I also think that the protocol itself needs a name and an appropriate `<link rel>` for the feed discovery, e.g. `<link rel="indieradio" href="https://sockpuppet.band/radio">` or something. I am very much open to suggestions.
0 2 0 0