/images/profile.jpeg
Richard Audette's Projects, Problems, Solutions, Articles on Computing and Security

Batch Processing in Audacity using Python

I am not an audio person, but I have occasionally had to edit audio, and I’ve always used Audacity - it’s a great tool. Some time ago, I had to normalize sound levels on hundreds of voice recordings. A podcaster asked how I did it, I wrote it up in an email, and, thinking back, I decided it might be useful to others, so I’m posting it here. As I review the problem today, I think I would probably explore Audacity’s macro functionality to solve this type of problem - I don’t know why I jumped to scripting solution at the time. I did try the PyAudacity library, and found it was easier to interface directly though pipes.

Reverse Engineering an Akaso EK7000 Camera

Introduction

My daughter wanted to take photos at camp this summer, which incorporated a multi-day portaging/canoe trip, and no phones allowed. I picked up a cheap action camera on Amazon, an Akaso EK7000: Amazon link, Akaso link. When she got back, she dumped all her photos from its MicroSD card, and then it was available for me to play with!

It has a wi-fi mode, and sets itself up as a wi-fi hot spot - it is designed such that you connect to it with your phone, and control it with the “Akaso Go” app. Connecting to it with my laptop, I could guess some basic controls (192.72.1.1 is its IP, /index.html reveals some basic information). But I can’t see or guess any useful controls. Ultimately, I want to download photos and view live video on my laptop - like I can with the phone app.

Meshtastic Discord Bridge Bot

I built a simple Meshtastic Discord Bridge bot, which enables sending and receiving Meshtastic messages through Discord.

I keep my Meshtastic node on all the time at home. This bot his allows me to exchange messages with the mesh in my neighbourhood using my home node through Discord wherever I am. Never again will I miss a “Can you see this?” message. It’s in a “just got it working” state - pretty primitive, missing message delivery confirmation, but I’ve been using it for a few days and it works as designed.

Meshtastic: A Neighbourhood Mesh Realized

Are you a Meshtastic user in North Toronto? Reach out and I will invite you to a local Meshtastic Discord group.

Background

A mesh network is a network where all participants can communicate with each other, with each participant cooperating with the transmission of information.

I love the idea of mesh networks, where anyone who wants to take part can just jump in, and there’s no dependency on a communications provider for service. In 2016, I attempted to build out a mesh built with wifi technology in my neighbourhood but I was unable to generate interest.

Resolved: Ubuntu Kernel SRU Period had ended error

I have Ubuntu Livepatch running on one of my PCs, and I was getting the following error:

1
*** System restart required. Kernel SRU period has ended ***

It was clear that I needed to update the kernel to continue to receive patches, but an apt-get upgrade wasn’t installing a new one. It wasn’t clear to me how to identify and update to the latest supported kernel, and it took some searching around.

And Now For Something Mildly Different

On October 18th 2023, I migrated this website from WordPress hosted on an AWS EC2 VM, to a static website built with Hugo, now hosted on AWS S3. And this morning (October 21st), I just shut down the VM. I spun up the first version of this VM on February 5th, 2014 - so this setup has served me well for 9 years. It was rebuilt 3 times, starting with Ubuntu 13.04, ending with 20.04. The featured image is a capture of the last time it served up a page.