RSSAmplifier

Blog

Goran Mekić

Recent content on Goran Mekić

meka.rsRSS feed ↗78 posts

Latest posts

Neural and Impulse Blending

The idea of blending is to make two amplifiers and mix them into a single sound. The reason people do that is because different amplifiers have slightly different sound which combined together sounds better than any single one of them. It’s the same like having a single voice vs choir. With sounds it is simple: you just mix them. With neural amp modeler, there are few more steps. First you…

Impulse Response Sweep

There is another way to capture IR, and it is using sweep frequency sound. That means that the file containing the sweep will have 20Hz to 20kHz frequencies, starting with low and increasing the frequency. The idea is to capture how the system, in this case power amp, guitar cabinet and microphone, respond to different frequencies and create IR based on that. For that purpose you can use Carla and…

Impulse Response

DANGER!!! THE FOLLOWING PROCEDURE MIGHT CAUSE DAMAGE TO YOUR EQUIPMENT!!! I have power amp that has limiter, short circuit protection and overheating protection, so I know my gear can handle the procedure, but please don’t assume that every combination of amp/cab is safe to be used! For example, I have no idea how tube amps react to this procedure and you might burn the tubes. Please be…

Neural Amp Modeling

Re-amping Let’s say you’re a guitar player and want to record your track of a song. Typically you would enter the studio with your guitar, amp and cabinet and record what’s needed. But let’s say you decide to record your guitar without any processing by pedals or amps, glue the good takes together and then process that track with pedals and amps. That process is called…

Rust and ioctl

When I explore new programming language, I like to poke audio. Rust is a new language for me and I need a pet project to learn. As I’m also using FreeBSD, that means audio device configuration is done via ioctl . Here is the summary of how to handle ioctl in Rust. Create the project, add nix crate enabling ioctl feature. $ cargo new oss $ cd oss $ cargo add --features ioctl nix For now I…

New Guitar

After 3 years in the making, I finally got my new guitar. I got Seymour Duncan Blackouts Metal for it. That pickup is insanely hot and until my new guitar was done, I used it in my Les Paul, so pickup is the same in both guitars. Here is a riff from our upcoming single with Neural Amp Modeler and Impulse Response instead of guitar amplifier, cabinet and microphone. Gibson Les Paul Custom Signature…

Ratamahatta

I always mumbled Ratamahatta without understanding what’s it about. I did get literal translation from some friends, but I still didn’t understand what was it about. Nowadays I’m lucky that some of my colegues are Brazilians so I could ask for the deeper meaning of the words. The colegue in question is Fernando Seidler . Biboca, garagem, favela Biboca, garagem, favela! Fubanga,…

OpenLDAP

I wanted to achieve 3 things: Ability to enable/disable account and domain Proper groups and membership Authorization for services I personally don’t like OLC or On-Line Config, as I like to do my things using Ansible. So here is the slapd.conf: include /usr/local/etc/openldap/schema/core.schema include /usr/local/etc/openldap/schema/cosine.schema include…

DIY Sound

Sometimes you just hate what industry has don with the sound and start building your own stuff. For one, I didn’t like open source DAW alternatives as all of them are missing something: Arour’s MIDI is terrible for electronic music, loop recording is missing in Muse, ZRythm is stereo only and I couldn’t find how to work with QTractor and DrumGizmo. To learn about audio and DSP, I…

FreeBSD PF and Dummynet

In 14-CURRENT there is now support for dummynet in PF. That means that you can slow down packets based on some criteria. MacOS users probably know how this works as that OS got support for PF+dummynet years ago. For example, you can do the following in /etc/pf.conf: pass in quick inet from 192.168.1.1 to any dnpipe 1 That way all traffic from 192.168.1.1 will go through dummynet pipe. To create…

FreeBSD Dual Stack Firewall

The idea is very simple: everything works. But what is “everything” in this case? I want my host and jails to have IPv4 and IPv6 address, register those addresses in DNS and all to be accessible in the network and via Internet. To make my life easier, I programmed Reggae to initialize rtadvd, jail with isc-dhcpd for IPv4 and IPv6 and DNS, pf with the base configuration. Host If there…

FreeBSD and YubiKey

Install and initialize the services as root: pkg install ccid opensc pcsc-lite sysrc pcscd service pcscd restart Start ssh agent and add provider to it as user: eval $( ssh-agent ) ssh-add -s /usr/local/lib/opensc-pkcs11.so That’s it, SSH should work with YubiKey now.

FreeBSD Linuxulator

As some applications are Linux-only, it is very handy to have linuxulator available. In short, I just followed linux browser install and added slack and viber with pulseaudio setup . Although pulseaudio setup contains linux browser install, it is the most important part. Once the browser was installed I copied the scripts to make slack and viber working. After download of .deb file, chroot to…

FreeBSD Dual Stack Jails

There are 3 ways to have IPv6 in VNET jails that I’m going to describe. In terms of IPv4, those would be: private address public address public address behind router Private addresses in IPv6 world are called “unique local”, and they start with “fd” in hexadecimal notation. Please note that there are also site-local addresses, but they are deprecated. Something like a…

FreeBSD Dual Stack Network

Idea is to build dual stack network, which means working IPv4 and IPv6. Support on router and client side is needed for network to work without glitches. For example, switching from ethernet to WiFi should be seamless. On top, as my ISP is not providing IPv6, I’ll show you how tunnels like Hurricane Electric work, which in layman terms means “how to have public IPv6 addresses on all my…

FreeBSD and IPv6 Tunnel

Huricane Electric is one of IPv6 tunnel providers and this post is specifically about setting up FreeBSD router with a tunnel and the configuration for IPv6 autoconfig caller Router Advertisment (RS, on the router) and Router Solisticion (RS, on desktop or laptop). If you know how DHCP for IPv4 works, you will find it a bit weird how IPv6 works. First, in IPv6 world what is called DHCPv6 is closer…

FreeBSD Audio

I started using FreeBSD in 2016 as a dual-boot with Linux. The reason was that at the time Linux provided no support for real-time threads and preemptive scheduling but did provide a wider choice of audio applications. Today, as the FreeBSD audio ecosystem improved a lot, I am a happy single-OS user. You may ask yourself “why is being fast so important to audio” and the answer is…

Ne mogu vise da ćutim

Ne pišem na srpskom iz prostog razloga: želim da me što više ljudi razume. Međutim, ono što me tišti su neki ljudi odavde i ako ikada nabasaju na ovaj post želim da ga dobro razumeju. Pošto nemam plan pisanja, možda će biti o jednoj, možda o više osoba, ali svakako želim da budem iskren sa sobom i sa drugima šta ja o tim osobama mislim i zašto to mislim. Razlog zašto pišem tek sada posle godina…

FreeBSD Upgrade Bootloader

WARNING: Not tested on dual boot machines and probably doesn’t work The recommended partitioning layout is to support BIOS and UEFI. The following is GPT partitioning (could be MBR in this simple example). Notice that the first two partitions are EFI and BIOS boot partitions. The EFI partition is nothing more than a FAT partition in most cases. gpart show = > 40 500118112 ada0 GPT ( 238G )…

Serbia vs Internet

Dear reader, I really wish that you’re somewhere nice and you read this story with “in a land far away” at the beginning, wondering how strange we are. I really wish that place exists, because if we’re all and I mean ALL dealing with this, we screwed up as a global IT community. This story starts 2.5 weeks ago when we decided to switch the Internet package we use. New one…

Freenit Framework

For few years I worked on a startkit to get me faster results, then I started teaching using it, and now it’s a framework. So let me tell you a story. Backend is written in Python and uses Flask and SmoREST, while frontend is composed of React, Material-UI and Axios. What I tried to achieve is “deployment easy / development portable” rule. Yeah, it’s quite some rule, and I…

OpenLDAP Multimaster

One thing I can tell you about email servers is that I’m really dumb to set it up properly. I’m mail admin since 2006 and 14 years later I still don’t know how to do it. I mean, yeah, I do run a mail server and it does work, but it’s far from satisfying, but that’s not what I want to talk about in this post. I want to talk about one part of email server: OpenLDAP. You…

FreeBSD Crossbow

Once I started learning about containers and surrounding technologies, I heard about Solaris Zones and Crossbow. In short, zones are containers, like jails, and crossbow is something like a vnet. They say it’s way more flexible and powerful. One of the things it can do is prevent you from setting up static IP. I thought that’s pretty important thing and I wanted to have that. With…

CBSD Base Upgrade

Upgrade in CBSD means the same as in FreeBSD: increse only in patch version. cbsd baseupdate service cbsd restart For upgrade you need to stop the jail, set it to new base and start the jail. cbsd jstop nginx cbsd jset jname = nginx ver = 12.1 cbsd jstart nginx cbsd etcupdate jname = cbsd mode = update from = 12.0 to = 12.1 mode = diff CBSD will ask you how do you want new base files to be…

FreeBSD Upgrade

Upgrade in FreeBSD world means having a host on version 12.0 and doing similar procedure like in FreeBSD update , but ending up with a major or minor version number incresed, not patch version number. TL;DR env PAGER = /bin/cat freebsd-update upgrade -r 12.1-RELEASE freebsd-version -ku bectl create 12.0.11 freebsd-update install reboot freebsd-update install reboot pkg upgrade freebsd-update…

FreeBSD Update

As you might be comming from Linux background, like I am, you might not be familiar with the FreeBSD update procedure. The main difference is that FreeBSD has base system as one big component which is updated as a whole, plus it has packages like any other Unix. TL;DR env PAGER = /bin/cat freebsd-update fetch freebsd-version -ku bectl create 12.0.3 freebsd-update install reboot Check if…

Videos

DaFED #61 - Kako automatizacija procesa pomaže u razvoju sigurnijih aplikacija FOSDEM 2023 - Reggae: cool way of managing jails/VMs on FreeBSD EuroBSD 2022 - FreeBSD audio in amateur and professional setups FOSDEM 2021 - Managing virtual resources with CBSD, and beyond BSidesLjubljana 2019 - How Did We Teach (Ourselves) Security FOSDEM 2019 - FreeBSD in Audio Studio BSidesLjubljana 2018 - Modern…

IT Feels Like Constant Failure

Do you remember when any operating system just worked? Me neither, and I hate it. I mean, Windows was always just a joke. Just think about it, Microsoft said their git repository is 300GB in size. How do you compile, let alone read? One will probably think of Linux, but what about systemd and Richard Stallman? Honestly, I’m not sure what is more revolting: shitty system software, or the most…

HardenedBSD Install Over Serial

If you have APU or similar router, it’s a big chance you’ll need serial console install procedure. You’ll have to mount install image before booting and change /boot/loader.conf so it includes the lines to use serial console: boot_multicons = 'YES' boot_serial = 'YES' comconsole_speed = '115200' console = 'comconsole,vidconsole' When the machine boots, it will ask you for…

CBSD Reggae

If you didn’t get it by now, I’m huge CBSD fan. Actually, I’m CBSD developer now. :o) One of the things I play with is Reggae, and some people asked me to describe it and make a demo. So here goes the explanation why I created it, how to use it and what are my plans for it in the future. As CBSD is used for almost everything in Reggae, I won’t discuss that part. So, besides…

Getting Started with Digital Audio

It’s bad to start your post with an apology, but I must: this one won’t deal with FreeBSD as much as set some foundation for the posts to come. The base for a good digital audio workstation, or DAW for short is audio interface. That is the piece of equipment that will do the most demanding task of converting from analog to digital and vice versa. As audio we hear is, after all, analog…

FreeBSD Cloud and DevOps 3

By now you know how to manage jails with Makefile . It’s nice, but I took it a bit further this past few months. I realized that Makefile can effectively replace Vagrant, so I created program called Reggae : REGister Globaly Access Everywhere. In short it consists of few scripts that (de)register jail in/from Consul . As Consul acts as DNS, too, that means that when your jail is up, other…

NuttX and Clang

I am proud owner of a home audio studio, but it has a big flaw: hardware is not open source. You may think it’s not a big deal, but once you want to alter something, you realize you’re stuck. Let me explain. My mixer is digital and you control it over some other device (computer, or android based device). It’s a nice feature, and it has USB connection, so it can act as an audio…

FreeBSD and USB MIDI

The problem I was having was that I could record MIDI, but not send it to hardware output. For impatient, just run chmod o+rw /dev/umidi* . Yes, it was that stupid and it took me few days to realize what’s the problem, so let’s go through my setup and debug process. It will be fun, I promice. I never used hardware MIDI before, although I used software MIDI for various things for years,…

Arduino Due and Clang

Since October last year I’ve been trying to get my FreeBSD box compile working binary for Arduino Due. For some reason, GCC produced binary is missing a section which I observed through readelf. I tried to debug this, but I’m not even novice kernel developer, let alone bare metal embeded programmer. All that changed tonight (or should I say in the 4am today) when I stumbled upon just…

FreeBSD Cloud and DevOps 2

So you have all the pieces installed and configured. Let’s do something on top of that. I don’t like Vagrant, now that CBSD and Jails are around, but it’s perfect for DevOps jobs. I remember a friend of mine using Makefile for DevOps, even if under it is Docker or Vagrant. It’s small, portable and available on every OS worth mentioning. Nice way to keep everything low on…

Sing, beastie, sing!

FreeBSD digital audio workstation, or DAW for short, is now possible. At this very moment it’s not user friendly that much, but you’ll manage. What I want to say is that I worked on porting some of the audio apps to FreeBSD, met some other people interested in porting audio stuff and became heavily involved with DrumGizmo - drum sampling engine. Let me start with the basic setup.…

FreeBSD Cloud and DevOps 1

The reason I tried FreeBSD in August, after 11 years of being happy with Gentoo then Debian was the article about Docker on FreeBSD. I knew about PF, ZFS and DTrace from the past, but ability to run Linux images was just too good to be true. To the extent, it is too good, and the reason is that ABI Linux support is not complete. If you happen to need that missing bit in ABI, it’s a show…

Lost Passport

My wife and I went from Hamburg to Belgrade on 31st December. We had connected flights and from Hamburg we went to Zurich. In Zurich we realized my wife lost her passport. The situation is hilarious looking back, but totally not fun while it’s happening. So, her passport fell from her pocket in the plane and we noticed that on our way to the customs. What happens next is hell breaking loose,…

FreeBSD WiFi and Ethernet Bridging and Aggregation

The title is cumbersome but the topic is quite ordinary life, to be honest. Idea is to have WiFi and Ethernet cards unified. On the router that means that whether you’re getting your address over Wifi or Ethernet, you get the same range. On the client (usually laptop) we want to not be able to distinguish if we’re on Wifi or Ethernet connection, but we do prefer Ethernet. Router…

FreeBSD Network Optimization and CCC Tickets

Today was the first day of presale tickets for people without voucher. Let me be precise, today at 20:00 started the DDoS on ticket servers . So, let me put things into perspective. Because CCC is more and more popular, they had to do something to limit the number of tickets. They decided to give vouchers to hackerspaces and alikes. As we heard of that too late (or were too lazy, pick your…

FreeBSD In Two Months

My last post was about CCC and it’s almost the time for a new one. I was so bussy hacking things that I forgot I have a blog. Huge amount of new things happened to me, but I’ll focus on the FreeBSD. I installed BETA1 of 11.0 as soon as it came out as I really wanted to see how good is the Docker support. Now I don’t even use Docker, and FreeBSD is my main OS on laptop and…

32C3

We got in Hamburg few days before Christmas so we had enough time to see the city, this time. I had a feeling that people in Hamburg are depressed which was a drag as I got there not too happy about the recent development of my life. To be honest, first few days I thought I would be better at home, or anywhere else. But then the congress started and it got a bit better, but the feeling of…

I am a hacker

What is a hacker? Who the hell knows? On top of that, I’m clamming I’m one of them. What gives me the right? I’m not sure, but in short, I know one thing: hackers are smart and they never give up. Once I heard the smartest man I’ve ever met saying to a developer: “OK, make something, then Meka will do the magic”. That’s the best compliment I’ve ever…

OpenBSD WiFi

I’m a proud owner of APU . I’m currently running OpenBSD on it. It’s pretty simple config . Everything was “working” until I decided to tighten the screws on the device, as I purchased a new screwdriver. Since then, WiFi is terribly slow. I had ~2s delay between pressing a key and seeing character when logged in over ssh from laptop to desktop. So, I’ve…

Guitar Pickups

When I was searching for my guitar, I read a lot of articles about pickups, too. In Tilda Center we have at least two guys who play guitar beside me, and once we had discussion about this exact topic, which made me believe that there are not enough articles about pickups, types, usages, electronics behind them etc. Or, maybe, the articles are not clear enough. I’ll try to explain. First,…

Tilda Center Summer

As my plans for summer festivals and beaches are ruined, my activity in Tilda Center increased. Pure action-reaction physics at work. :o) We got two new tables and weekly meetings on Mondays and Thursdays. On Mondays is a general discussion or gathering to just hang out. On Thursdays, theme of the meeting is One Love , project a few of us are contributing to. In future, we’re hoping to fund…

Dockerize Everything

Often I hear the “Dockerize Everything” phrase. To be honest, when ever there’s a new technology, people praise it as “it fixes everything”. I don’t believe that’s the truth about any technology, not even docker. It’s not that I think docker is a bad thing. Hell, I wrote series of blog posts about docker . I just think docker is used where it’s…

pfSense Community

Few days ago I wrote about pfsense vs openbsd and twitted about it . As you can see, it triggered a flamewar, which was never my intention. The reason I continued that flamewar (and one more with the same person on other thread) was the I had nothing better to do, to be honest. I was away from home with my laptop, and I was tired of programming and administration projects. I’ve noticed that…

pfSense vs OpenBSD

I’ve had pfSense on my router for some time now. To be honest, about a year. The reason I decided to switch to OpenBSD should be obvious, but I’ll write about it anyway. Let me introduce you to the background of the two choices. PfSense is based on FreeBSD. To be more precise, version 2.1 which was latest stable release up to few months ago, is based on FreeBSD 8, while 2.2 is based on…