a string of successes

even a loser like me can win sometimes

boondocking

view from the road weekenders

I’m back to boondocking and it does my heart good.

This spot is small and overused but still better than being in the city. In the first pic the van is center-left. There were probably a half-dozen rigs on hese few anchors when I got here. Over the weekend it got quite full (2nd pic) and noisy. :-\

sun

The solar harvest has been terrific. Even on overcast or partly cloudy days I’ve been able to do all my cooking and other duties off solar.

Today has been partly cloudy, I’d say 50% cloud cover. But I hit Vabs by 1300 and made coffee, oatmeal, cornbread, and red beans off excess solar. Must have got some cloud-edge because the controller maxxed at 45A at least once.

VictronConnect-x86

I’d downloaded the Victron Connect app for linux a couple years back but never got it to work right. It could see the devices but crashed consistently when I tried to select one.

Something (linux update? a recent Vic BT update?) changed in the interim because VictronConnect-x86_64-v5.90.AppImage loads and runs correctly now. Coolio. Newest V6 core dumps immediately.

scripting

This is one of those cases where you struggle with something, lay it aside, return later on and things just fall into place.

normalization

I’ve been wrestling with audio normalization on the Myth pi. Challenges:

  • some OTA broadcasts (almost always HD) have very low audio
  • the Pi doesn’t have much grunt so I want to minimize the workload

I started playing with ffmpeg’s speechnorm filter (-filter:a speechnorm) and it’s starting to come together. Single pass, not too heavy, does a decent job with the levels.

It went so well that I wanted to leverage it on my podcasts, yt vid, and movie DLs that are Processed Elsewhere. Took me a while to figure out that the ffmpeg on the box Elsewhere has an older version of ffmpeg that predates speechnorm. Oh. I d/l’ed a new statically-linked version and it’s working well.

Previously I was unpacking all my podcasts to wav so I could compand/normalize and delete silence. Then encoding to ogg. Now with speechnorm and native ogg support it’s a one-liner: -filter:a silenceremove=1:0:-50dB,speechnorm.

UPDATE: the speechnorm processing is quick and tends to increase filesize a bit:

Fri Mar 29 09:01:09 AM MDT 2024
1021638436 16521_20240329135900.ts
1154145724 16521_20240329135900.ts-TEMP.ts
rebuilding seek table for 16521_20240329135900.ts
Fri Mar 29 09:03:43 AM MDT 2024
END

subtitles

My previous movie processing script was not preserving embedded subtitles. It would crash when none were present so I stopped trying. This time around I used ffprobe to check for the presence of subs. If present I define the sub-related command otherwise set it to null:

if [ "$CHECKSUB" = "subtitle" ]                                         
    then SUBS=" -c:s mov_text "
    else SUBS=""                                                    
    fi    

I inject the $SUBS string into the ffmpeg command later on; if it’s null it has no effect on the command. Nothing there.

I use mov_text since that’s mp4’s preferred format. I output mp4 because mp4 with x264 plays back with hardware decoding on the pi.

comments

mastodon comment thread for this post

Updated: