Sunday, March 19, 2023

Adventures with FreeBSD Week Three

So on to week three. 

previously I've discussed installation, setup and installing applications.

In this post I will cover some of the issues I encountered and what I did to fix them, or at leased workaround them.


1. Audio.

I noticed that audio playback was not the best, it would pop and stutter when playing audio locally and streaming. I tried a few different media players, audacious, Parole, VLC and also Chromium and Firefox web browsers, they all seem to have the same issue with audio. 

My first thought was the wifi was interfering with audio playback. I've experienced this on Linux, where you are connected to a wired network, but you wifi card is still active and every now and again it pings the network, causing a cpu spike that causes the audio to pop and stutter. 

The solution to this, was to either use wifi instead of wired, or turn wifi off when connected to a wired network.

Since I am running FreeBSD on a laptop I am almost always connected to wifi and rarely connected to a wired network, but I may as well test it, so I connected to a wired network and disabled the wifi. No difference, still the same audio issues.

After a bit of research on the net, I found a few discussions from people with similar audio issues running FreeBSD. 

I found a post on the FreeBSD forums discussing a similar audio issue I was having and the steps taken to fix it. 

These steps involved editing a pulseaudio config file called 'daemon.conf', this file is located in /usr/local/etc/pulse/ 

I needed to uncomment the three lines below and change their values.

* ; avoid-resampling = false 'Uncomment and change to yes'

* ; default-sample-rate = 44100 'Uncomment and change to 48000'

* ; deferred-volume-safety-margin-usec = 8000 'Uncomment this line and change to 1'

Afterwards these lines looked like this.

* avoid-resampling = yes

* default-sample-rate = 48000

* deferred-volume-safety-margin-usec = 1

This fixed my audio problems on FreeBSD apart from audio playback in the Chromium web browser. I still get a few pops and stutters, but definitely an improvement from before.

Note: I only have audio issues with Chromium not Firefox, so this seems to be a Chromium related problem, not so much a FreeBSD audio related problem.


2. Mount and access external devices.

Out of the box FreeBSD doesn't have auto-mounting of devices configured, on a server this is of course understandable, but on a desktop where you are using removable media regularly, it is expected that when you plug in a device, it will be readily available.

Note: I am an advocate for referring to the FreeBSD handbook for configuring your system but, for mounting removable media on an everyday desktop, I was advised not to follow the setup in the handbook, but follow the setup from the following website.
freebsd desktop part 17 automount removable media 

Following 𝚟𝚎𝚛𝚖𝚊𝚍𝚎𝚗,s guide, I was able to setup auto mounting removable media and it works perfectly.

3. Wine.

Hmmm, At the time of writing this, I have not been able to get wine to work on FreeBSD. 

Wine installs fine, you can run the wine config application but when trying to install anything using wine it will result in errors. These are programs that historically install perfectly under wine on Linux based systems.

In defence of FreeBSD here, we must remember some assembly required, and also remembering FreeBSD is predominantly a server orientated OS not an out of the box ready to go desktop.

From what I can see with the Wine on FreeBSD, it's more a configuration issue than a bug and I am sure I will get it to work once I have figured it out. 

At the end of the day these really are the only issues I have had using FreeBSD as an everyday desktop, I'm sure there will be others in the future and I'm sure all can be sorted with a bit of time and configuration.

Next week. will I stay with FreeBSD as a desktop.


R.