My PC with only SSDs sounds like it has a grinding mechanical hard disk :-0

My self assembled desktop PC has as far as I can remember randomly made an odd grinding and clicking sound. It hasn’t bothered me too much, but as I’m sitting at my desk if I start to pay attention to the grind click (silence) … grind click (silence) … repeating over and over, it’s pretty clear something is up with one of my fans. I did a quick search and found this exact discussion here. I also have and EVGA RTX 2060, so it sounds like this is a common thing with this model. The thought in this thread is that the fans on the GPU are not able to cycle between idle and slow spin speeds, until the GPU gets more active, the fans spin faster and then the issue goes away.

In the thread, it was suggested to change the cooling curve so at a minimum the fans are never below around 35% … and that’s done the job. Problem solved.

Revisiting CD rip quality from early 2000s

In past years I would always buy physical copies of CDs and then rip them to my PC, for transferring to players later. Nowadays I usually only buy digital copies of albums, but I wanted to go back and move my previous mp3 library to my current desktop.

All our prior CD albums had been ripped and uploaded to Google Music, which in recent years is now YouTube Music. With Google Music you could upload and download as you wished, but with YouTube Music there is no download option anymore, the only way to get copies of your uploaded files is to request a Google Takeout request.

After downloading 20x 2GB zips for our entire CD collection, I stumbled across this realization that some of the CDs had been ripped with a shockingly low bit rate:

Luckily most tracks were at least 128kbps (even that’s low by current standards where I wouldn’t normally rip anything less than mp3’s 320kbps maximum rate), but there is still around 400 tracks at various rates below 100kbps, and some as low as these, around 50kbps.

At various points in the past years I had considered selling or just donating all my physical CDs but I never actually got to the point of committing. In this case I’m glad I still have the original discs so I can re-rip them and get better copies. I’m sure most people with large audio collections have gone through the process of comparing bitrates to see if they can tell the difference. The only reason I can think that some of these were ripped at such a low rate was to get the lowest file size possible for playback on a portable mp3 player. Nowadays storage is large and cheap that filesize of music files is really not a concern, even with lossless formats. I’ve bought albums in recent years in hi-res audio formats from HD Tracks, so ripping these again at either 320kbps mp3s or even as lossless flac is definitely an option.

I’ve gone through the exercise of comparing bit rates before in the past to see if I can tell a difference. I can just hear a difference between 128kbps and 320kbps on good headphones (e.g. my current 11 year old Audio Technica M50S), but the files I have here in 50kbps sound incredibly muffled and are lacking any definition at all, so it makes sense to re-rip them again to something better quality.

Reading around it seems Exact Audio Copy is the current ripper of choice. I followed this guide to setup for ripping mp3s, and this guide using flac for lossless.

Comparing the same tracks in 320kbps and flac I can barely tell the difference, there may be some clearer treble on cymbals in flac, but it’s barely noticeable to my ear. At least now these lates rips should be good for another 20 years or so… 🙂

Creating simple GitLab CI pipelines

I needed a simple GitLab CI pipeline to run some tests on my project. It’s been a while since I’ve played with GitLab CI. Here’s some previous posts for future reference:

If you search for ‘gitlab’ I have a few more specific posts on GitLab and related topics, mainly from running my own GitLab server on my HomeLab.

To run my tests against a simple node project, I split the pipeline into 2 jobs, one to install my npm dependencies (and could also add other build related tasks here if needed), and then a test job. It’s worth noting that in order for the results of ‘npm install’ to preserve from the build job to the test job you need to preserve the cache and the node_modules dir as an artifact to be picked up by the following job:

build:
stage: build
image: node:22
script:
- npm install
cache:
paths:
- node_modules/
artifacts:
expire_in: 1 days
when: on_success
paths:
- node_modules/
test:
stage: test
image: node:22
script:
- npm test

This is following tips here.

Running and connecting to different MySQL servers in Docker containers

Running and exposing default MySQL port:

docker run -e MYSQL_ROOT_PASSWORD=mypassword -p 3306:3306 -d mysql
mysql -u root -p

Running with a different exposed port on the host:

docker run -e MYSQL_ROOT_PASSWORD=mypassword -p 3307:3306 -d mysql

Connecting to server on different port : -P option, but also requires -h for host, otherwise seems to connect to whatever is running on 3306 by default:

mysql -h 127.0.0.1 -P 3307 -u root -p