← Back to Show Notes

Transcript: Auphonic - Georg Holzmann

Will Vincent

Hello and welcome to another episode of Django Chat. This week we're joined by Georg Holzman,

the creator of Ophonic, which handles audio processing and uses Django. We'll dive into

all those things, how to scale it, and it should be a great discussion. So Carlton,

Carlton Gibson

how are you doing? I'm very well, Will. Thank you very much. How are you, Georg?

Georg Holzmann

Yeah, thanks. I'm fine. And thanks for the invitation. I'm curious what to speak about

Will Vincent

here. Oh, I think there's too many things to speak about. I guess let's start with how did

you get into programming? And there's so much we can speak about the audio part, but also around

the Django part. So maybe what's your, you know, what's your what's your background? How did you

Georg Holzmann

get into programming? Yeah, so well, I get into programming already quite early. So I think I was

in primary school and my dad always had a old computer and I always managed to destroy the

computer and play around with it and at some point yeah i started programming i don't know why

actually i think some some friend was was showing it to me and the first programming language was

turbo pascal and then i learned c++ and c and all these more low level things and yeah and into

python i came actually quite late it was at the university okay did you study computer science

there then not really i actually started audio engineering okay but this was a lot it was not

really only audio it was more like electrical engineering and computer science and a lot of

signal processing machine learning and all these things and so basically it was computer science

Carlton Gibson

yes okay so you're doing like high low filters and you know all those fancy things there yeah

Georg Holzmann

exactly okay and this is also why i got into python at some point because uh we were using

for for a project numpy and scipy and all these things when they were at the early stage and yeah

so so i came into python and i loved the language a lot and so i got into programming okay and um

Carlton Gibson

this led straight on to old phonic then which we should say is your so tell us about alphonic what

Georg Holzmann

is a phonic yeah a phonic a phonic was was built a little bit later then and yeah this is basically

also about audio processing and some other things so it started as a web service now there's there

are some desktop apps but you can basically upload an audio file and then this file is analyzed on

our servers and then according to the analysis it is processed and encoded into different formats

and then distribute it to other services and things like that.

Carlton Gibson

Right. But this sounds, I mean, this is using exactly the techniques

that you studied at school, right?

The signal processing, the cleaning up.

Yes, exactly.

The sound qualities. Yeah, okay.

And so I guess the question is, is most of that done in Python

or is that done in, you know, other languages?

Georg Holzmann

Yeah, the signal processing and machine learning things

are mainly built in Python.

So we use a lot of NumPy and machine learning libraries, different machine learning libraries.

And, yeah, also some parts are also written in C, which are optimized a little bit.

And for that, we mostly use Cyton, if you know this.

Yeah, yeah, yeah.

Which is basically, I guess everyone on your podcast knows this, but it's basically a compiler from Python to C.

And yeah, then we also had to build a web system around it.

And I think this was 2009 or 2010.

And back then, there was basically everyone was using Ruby on Rails.

And this was very popular.

And I was thinking, yeah, I don't want to get in a whole nother software stack.

And I was looking at what's going on in the Python world as well.

And found Django.

And yeah, since then, I'm a Django user.

Carlton Gibson

Okay, fantastic.

So you've been through the long haul.

You've seen the introduction of, I don't know,

let's say migrations and the big changes around 1.5 and then 1.7.

Georg Holzmann

I started with South.

This was the framework before the migrations were introduced.

Right.

And yeah, but my main focus was never mainly on the web tools.

It was more on the signal processing and machine learning part

and the web tools.

I just discovered them next to the other things.

It was never my main focus.

Carlton Gibson

Yeah, okay.

Georg Holzmann

I just had to learn it because I needed them.

Carlton Gibson

And so, go on, Will.

No, you go ahead, Carlton.

Well, I was going to say, so the main uses for Django here

is to build the API around the data processing pipelines that you have.

Georg Holzmann

Yes, so there are various things in our system.

So, of course, the first thing is the web GUI.

So how you see the website or how you can create these productions, these audio productions.

So this is the client side, front end.

Then there is the server side.

So after you upload an audio file, you have to process and analyze it, which takes quite some processing power.

So we need to have a distributed system where we can process all the audio files.

So at DasQ, for that, we use this DJ Celery and RabbitMQ.

Carlton Gibson

Okay, and how have you found working with Celery and scaling RabbitMQ and things like that over the years?

Because, I mean, you've been obviously at this for quite a while now, and so you'll have seen it evolve.

You must have some war stories there.

Will Vincent

Oh, yeah. I'd just like to add, too, I found Ophonic. I've never had an issue with it.

I mean, just last night I was having an issue with our podcast host, which seems far simpler than what you're doing.

So however you're doing it, it's very speedy and I've never had an issue, which is unusual dealing with audio for me online.

Georg Holzmann

Okay, that's great. Well, there were, of course, issues in the past, but not for you.

Nope.

Yeah, so, yeah, for us, RabbitMQ and Celery worked quite well.

I mean, there were some issues at some point.

Also, at some migrations, there were some problems, but no major things.

So I cannot tell anything bad about it.

Carlton Gibson

No, but it's not so much bad.

It's more like as you scale out these things.

Well, Carlton has feelings on Celery.

no and on rabbit on amq you know i've um i've had scars of trying to make that work how i've wanted

to and um yes now i'm a bit for quite a few a while now i've been firmly in the redis camp and

using that and working with that well and finding that's very scalable but um you know rabbit mq is

still there and still has lots of adherence so i'm you know just wondering you know the reason i ask

is to try and draw out your your experience which sounds very positive yeah so our setup is maybe

Georg Holzmann

a bit special because we have only very long running tasks right because because if you

process one audi file so this usually takes it depends on your file but it takes quite long

it's not yeah there are not thousands of small tasks there's just few long running tasks so

So yeah, I think for our use case, it does not matter much if you use Revit MQ or something else.

So it's basically the same, I guess.

Carlton Gibson

Yeah, okay, interesting.

Will Vincent

Do you think that with your setup, it seems like if there was ever a case for potentially serverless, it would be what you have, right?

Because I imagine you have spikes of activity and then inactivity.

I wonder, what does your traffic look like?

Do you have those spikes or is it more kind of level?

How does it look?

Because I know you're global.

Georg Holzmann

yes we have these spikes but um they are not that big i would say so it's the average is

so the the standard deviation is not so big i would say because yeah you know in europe they

are processing now maybe and then in the us it's it's a little bit later so it's it's not such a

problem but of course the the infrastructure so maybe let's speak a bit about the infrastructure

yeah yeah so we we do not use uh amazon aws or things like that so we have um root servers which

are rented because they are much cheaper for our use case because we need a lot of uh a memory and

a lot of processing power yeah therefore of course a lot many root servers don't do much

most of the time but then when we have spikes in processing we need all of them so of course

these these spikes are important and determine how many servers we have to use but in the end

it's still i would say it's still much cheaper compared to to aws or other services and so i

Carlton Gibson

are you managing the actual hardware yourself there or is that hardware managed because this

is one of the sort of selling points that amazon tell us or you know it's not just amazon it's all

these providers they sort of say look that you're not you're not having to go to the data center to

change the hard disk to you know these kind of activities that you had to do back when you were

Georg Holzmann

renting space in the colo yeah no we don't manage the hardware so the hardware is managed but

we have to manage the whole software so from the operating system up to all the stacks you have to

install but the hardware is managed so i mean maybe you know this hostel it's heads now from

germany they are yeah they are very big hostel in germany and very cheap for for their for their

Will Vincent

route service right okay can you give us a sense of how big is the ophonic team and kind of the

sort of traffic you're dealing with now versus i guess 10 years ago or what eight nine years ago

when you when you started because you know to me you're just a service that i've seen recommended

and that works um so i'd love to hear more about yeah it's the company if there are other people

involved and as much as you feel like you can say about that yes sure so uh yes we are about five

Georg Holzmann

people okay and uh i mean you you mean uh the the amount of audio we process sure just how's how has

Will Vincent

traffic um evolved okay how is that how has that changed over time i mean are you this has been

Georg Holzmann

linear have you spiking uh well that's interesting uh it's not linear i mean it is a little bit

linear as well of course but then there are always spikes if some other user groups find out about

this service and then they bring in a lot of more people, then there is a spike.

And, but then it just was linear.

So, so it's.

Will Vincent

it spikes and linear and yeah it will sorry i was going to ask because i know that um

so when we when we started using this podcast we started using a service called zencaster

which i found out uses you so i'm curious how is there what's sort of the mix of services that

use ophonic versus people like us who do it directly do you have a sense of what that

that mixes kind of companies versus individuals using it directly okay yeah this is maybe half

Georg Holzmann

half so we have an api where for the other listeners we have an api where other services

can integrate our services and algorithms so that the users of the third-party services don't have

to know that there is a phonic inside like you did with zancaster for example right and so there

are some companies which are integrating our services into their systems and yeah then there

is our website and direct interface

like you are using now, I guess.

And so, yeah, the share is half-half, I would say.

Will Vincent

What's your sense of how people find you?

Because I think the only reason I found you

is because I think I saw Tim Ferriss mention

that he used you directly.

And I thought, oh, that sounds like

what we're using with Zencastr.

And then Carlton and I had a number of issues

with doing it web-based.

And so it was really kind of circumstantial

that I even found Ophonic itself.

is there a standard path for how clients kind of find you no i i don't know so there's basically

Georg Holzmann

we don't make any marketing or things like that so usually it's it's word of mouth especially in

Carlton Gibson

the bottom it's kind of like the classic if you build it they'll come you built it and they came

Georg Holzmann

yeah so so at the beginning so at the beginning we had um so all all started with a podcaster

from germany because he i was listening to his podcast and he always told yeah everything is

so complicated all the audio things and generating all the file formats and then i thought well

that's actually quite easy so let's build something and it started with some small scripts

and this is really one of the famous podcasters here in germany so after we released it a lot of

Carlton Gibson

people used us already right okay so you got you had a kind of critical mass to begin yeah this was

Georg Holzmann

and and we got a lot of good feedback of course and lots of training data and test data and yeah

and then we got a grant from the government here in austria to so we got some money basically and

could build a prototype or continue to build the system and with this money i could hire someone

who helped to build the system and then actually another one as well and then after after this this

grant already some some other podcasters got to know our system i don't know why but somehow it

spread over the ocean to the us and there there were other people which were playing around with

it and yeah afterwards after this grant we had to to introduce a pricing model so in the beginning

everything was free for everyone right and then we had to to introduce some pricing because

otherwise we could not live from it anymore yeah because you initially you were funded by the

Will Vincent

government grant yes exactly right okay fine and that but that seems like that maybe lets you

take a i mean you seem to have a long-term approach to this whereas i mean i used to be

out in san francisco and if you take venture capital money you pretty much within 18 months

and really 12 months you have some very high goals you need to hit you're not allowed to

um take your time yeah really it sounds like that's that's fantastic that you you had that

ability instead of being pressured to introduce things faster before they were ready yeah sure

Georg Holzmann

and um well the the nice thing we we had in our situation is that we did not have to do any fancy

marketing or other kind of strategies how to get more users i mean that's that's good to do if

you're interested in these things but we were all engineers based kelly and we did not know anyone

who can do this these other things so we just try to to avoid them well this is marketing now i've

Will Vincent

seen you've been on a couple of podcasts um so that that's marketing of course um that's yeah

that's amazing well so my a question i had is are there um when you create this were there any

competing services that do that and kind of what do you see in terms of competition because it

seems i'm not aware of any but it seems like such a now that we have it as part of our post-production

flow i can't imagine doing our podcast without it there are no direct competitors which which

Georg Holzmann

build the same because we are of course very very specialized into this podcasting use case or

also other spoken word recordings i would say like conference recordings and lectures and things like

that i mean there are of course other audio software companies like isotope which which

more built their tools for for editing so so basically there is no such automated way like

like we do it so that's that's why we try to focus on this automation and workflow aspect

and and not to not try to build an editor which would be of course also very useful

but it's of course a lot of work if you want to build it right and and then you get in the

direct competition to audition or isotope or other companies yeah and those tools those tools

Carlton Gibson

are super um super powerful but super complicated and yes you know i consider myself an audio

beginner and there's just no way i can apply the right filters and you know in anything like a time

efficient way like so for me to be able to upload the file and it comes back and the with the

noticeable difference in sound quality you think yeah that's amazing that's just brilliant yeah so

Georg Holzmann

this is yeah of course also disadvantages so in our system basically you get uh this is exactly

the the initial this was exactly the initial goal when we started the system so that users which

don't have a lot of audio knowledge or also users which have a lot really lots of audio which cannot

be handled manually so that they can just use this tool and get out audio which is okay but of course

if you have very specialized use cases and you want to get out every detail then these

this editorial tools are of course much more powerful because you you can really work on

every detail but of course it needs more time and knowledge yeah um but i guess one thing they always

Carlton Gibson

talk about in product development is to focus on your particular niche and yes don't worry about

trying to serve the other niche so you know that you don't have these features is it's a selling

Will Vincent

point right yes yeah it's very clear what you do well so maybe we can talk about some of those

features because um there's a lot that are awesome i wonder what would you say what are the main

features that people kind of come to you with i mean i mean for us i mean when i'm doing the audio

files I love that you have the presets just in terms of the web base that's great that you know

because we do the same thing for every podcast so I can just load our presets and then we usually do

you know basically go for almost everything so the compression leveling normalization noise hum

I guess that's a broad question but as you think of the features that you have now on the site what

do you think are the core features and then we can get into some of the more advanced ones because I

know you have some new features you've just launched yes so i would say the most important

Georg Holzmann

feature where everything started is our leveler so what does it do it levels out the audio which

means that if you have multiple speakers like like we are having a conversation now then all

these speakers can have different levels and loudness values and some you have to balance

them so otherwise you would always have to to to use your volume control and adjust for the levels

but this is actually a very complicated task because it is it is easy if you just have speakers

but in audio you also have then bigger parts where there is for example just background noise

then of course you should not amplify this background noise like you would do with the

speakers or then there are also music parts which should be handled quite differently because music

in music you want to have more inner dynamics and if you have speakers you want to sound them

equally loud but music should have some differences of course and therefore you you have to analyze

the audio first and see there are different speakers where music parts there are just

background noises and things like that so basically like an audio engineer would do it and then

you have to balance these different parts and use compressors and limiters and things like that so

Carlton Gibson

you said you're using machine learning for a lot of this so i when you're talking about the different

parts i'm imagining you know my machine learning thinking and think okay so are you using are you

tagging particular parts as this this kind of this is speech this is music this is you know some other

category and then you'll apply a different filter or set of filters depending on what gets tagged by

Georg Holzmann

the machine learning algorithm yes exactly so we we analyze the audio and and classify various

things like different speakers music bands and different noise parts or if the background noise

changes for example this yes this is another algorithm we we have a noise it's called noise

reduction so basically this algorithm first analyzes the audio and sees where are different

background noise scenarios for example if you record in a room and then we go outside

then there is another background noise scenario outside so we have to segment the audio first in

these parts and then do noise reduction in the first part and then the second one right and

Carlton Gibson

there's no there's no tooling to do that in something like audacity you'd have to you'd

have to do it by hand you'd have to sort of manually identify the the segments yes in in

Georg Holzmann

most of the editors you do this by hand and basically we we always try to automate these

steps you have to do by hand we try to automate these these things by machine learning and then

just apply the algorithms like you would do it in an audio editor for example okay okay fantastic

Will Vincent

wow and then you also have i mean there's um chapter marks which i believe is that's that's

something you had before the sort of Apple Podcasts and stuff had as a feature.

Is that right?

Georg Holzmann

Yes, I think in Apple Podcasts, it's, no, that's not really true.

So this is a very complicated topic because there is so much confusion about it.

So what this chapter marks, a chapter mark is basically just a timestamp and a title.

So you say at this time, this chapter starts like video does, it's quite long already.

and the problem is with audio that there are many file formats like mp3 mp4 or opus or whatever

and usually these this chapter marks were only defined for video so in the mp4 container

everything was defined quite well it is still very complicated but at least it was defined

and usually at the beginning apple was mostly using mp4 audio so aac audio in an mp4 container

And the Apple podcast app always, or since very long, supported chapter marks in MP4 files.

But most podcasters use MP3 files, so they did not recognize chapters in MP3 files.

And there was a very old specification for MP3, so actually for ID3, which is the metadata standard for MP3,

how to put chapter marks also in MP3 files, but nobody used this specification.

and yeah then we just implemented the specification basically and then more and more podcatchers added

support for it and i think now since last year also the apple podcast app supports mp3 chapters

Carlton Gibson

as well right good because if if enough files they're using it then they'll have to support it

Will Vincent

yes it seems so yeah fine yeah well speaking of mobile apps i mean you have i'm so impressed by

I keep finding new features that you have.

I mean, you have mobile apps as well, right?

For Auphonic, for Android and iOS.

And so what's the, how recently was that?

How did that come about, right?

Because that's another thing to build

and maintain on top of everything else.

Georg Holzmann

Yes, well, the thing, basically we started the mobile app

because a friend of the first developer at Auphonic

wanted to do a project with us

and he's a web and mobile developer

and yeah now he works at facebook so he's quite quite good in these things so he he said yes he

wants to build a ios app for us and the problem in ios was was long that you cannot upload audio

files in in a web site i think they changed it now but for a long time you could not select

audio files and upload them to a phonic for example so the so the idea was uh to build just

simple recorder and then use our API in the mobile app so that you can basically export files from

your phone to to aphonic and yeah this this was the start basically and then we also did an android

version and on android the situation was even more complicated because there is no usable audio

editor on android and then we thought well we could also build a little audio editor right

Carlton Gibson

brilliant and yes how does that go with device compatibility because that's the great that's

the great challenge on android right is it works on your samsung that you've got in the office but

not on you know yeah device out there in the street yeah but actually there are not so many

Georg Holzmann

problems but of course that's that's that's more difficult okay interesting and so you talk about

Carlton Gibson

your api there and i i guess that's built with django and django rest framework yes okay yeah

Georg Holzmann

so if you have problems talk to carlton ah you are developing this yeah he's the co-maintainer

Carlton Gibson

okay very nice so thanks a lot i don't do too much but um if you um so you've been using that

from i mean rest framework for well it wasn't quite around in 2010 but like 2012 2013 i think

Georg Holzmann

yeah i would i have to look when we released the exact date right when you think of all these

Will Vincent

technologies that you're juggling is the i assume the the web piece just sort of follows the

the audio part or how much time do you spend on just scaling up the the web part because that's

sort of the front door for everything um i'm just curious of you know where you where you spend your

time now given that you're a scale and you're still interested we can talk about i know you

Georg Holzmann

just introduced um a new a new leveling algorithm yeah i mean this is always different so sometimes

we work more on the web part or other parts and sometimes more on the algorithms but yeah i mean

scaling scaling was not so much of an issue i would say so well basically we always build some

we always have to fix some things if if you see uh it will get very hot but but yeah actually i

mean you know if the traffic goes up we just rent some more servers so basically that's not so

complicated right because in our case i mean the website itself does not need much scaling because

we don't have hundred thousands of users every minute of course yeah so i'm imagining you could

Carlton Gibson

run the website on you know a medium-sized server and it would chug away quite happily

and give you lots of spare capacity.

And then the need to scale is the back-end processing units.

Georg Holzmann

Exactly.

So the database or all the web front-end and things,

they are just on one big root server.

And then we have various other servers for the audio processing

and for the long-running tasks.

Carlton Gibson

Okay.

Will Vincent

Processed audio files, I believe, is it 30 days that you store it

and then it goes away?

Is that correct now?

Yes, 21 days.

I assume that came about because you looked around

and said, oh my God, we have all this data.

Or did you have that from the beginning,

sort of a limit on how long you would host processed audio?

Georg Holzmann

I think we had this quite early

because otherwise you would need a lot of storage.

Yeah.

And yet, there are, of course, also data protection reasons.

Carlton Gibson

Can I ask there, do you store on disks, physical disks on your rented servers, or are you using cloud storage?

Georg Holzmann

No, we store on our root servers, on the disks.

Carlton Gibson

Right, okay.

So it really is all hardware in the data center.

Yes, exactly.

Fantastic.

Will Vincent

I always like to ask this question.

So if you could just wave a magic wand and add a new feature to Ophonic, what would it be?

Oh.

Because I assume you have, I mean, obviously, I don't have a sense of what is truly challenging or what you think your customers are demanding.

I mean, but yeah, I'm curious where you see that need or, you know, if you had all this time, you would spend it.

Georg Holzmann

Well, that's difficult to say.

Our future feature list is very long.

Will Vincent

Okay, yeah, sure.

Or maybe there's something that you don't even know how to tackle it, but it's sort of an unresolved problem in processing audio.

Because, again, Carlton and I don't know that space at all.

Georg Holzmann

Yeah, okay, into this direction.

What would be really cool is if you have, let's say,

you have very bad audio like Ampli3 with 32 kilobits,

so everything is compressed already completely

and you can't hear anything about it anymore.

And then one could build an algorithm

which makes the audio as the original again.

right okay this would be great yeah that really is a magic wand but yeah at some point you you

will lose information and then it's difficult to restore the information again but there are um

Carlton Gibson

there are um you do see these kind of ai or ml applications where they kind of guess

what the missing data is and interpret like that and they you know sometimes come up with good

Georg Holzmann

results yes so there are of course also people which are trying exactly that with

badly encoded audio but yeah this is of course not possible for every situation

Will Vincent

unfortunately one of the features among the existing features you have that actually we're

not using which people have asked for is you you link in with speech recognition right where

someone can link up a third-party transcription so this this service that does use so a perfect

speech recognition system yeah what and was that something that you had again from the beginning

or something that users asked for um that integration because it looks it looks really

nice because that is another step in the tool chain of producing a podcast where do the leveling

and then transcription um i mean it's something we should we should add yes this this was not from

Georg Holzmann

the beginning so but this was always very interesting for us because especially for

podcasting you know podcasting are not search podcasts are not search able so if you would

have a transcript then you can search within the podcast so that's of course perfect but

yeah some years ago there were no services which produced a reasonable output for a reasonable

price well said yes it was actually i think two years ago or three years ago when

the first api was the no it was not the first one but one one of the first ones

was the the google cloud speech api which which had an acceptable quality and also a reasonable

price and yeah now there are some there are various others other apis as well which can do that

So and back to the beginning. So actually, we wanted to build our own speech recognition system. But then we thought we cannot do everything. Because it's really very time consuming, especially if you want to build that for multiple languages. So you have to have specialists for every language and a lot of data for every language.

That's why we decided to integrate various third-party services for speech recognition.

So we still do our own pre-processing and slice the audio into small parts,

so cut out the music parts and take out only the speakers,

and then send these slices to the external services, to the speech recognition services,

and then combine it again so that you have the time codes in the transcript

and so that you know at which time who is speaking what.

Carlton Gibson

We should be using this, Will.

Why aren't we using this?

This sounds amazing.

Will Vincent

Use the royal we, Carlton.

You're welcome to hop on that.

Yeah, I think it's so brilliant

how you've stayed kind of within your lane

yet still expanding features

because, I mean, podcasts in general

are going through quite a bit of consolidation right now.

But it seems like what you're doing is so much better

and so hard to do well, that it's not really as maybe appealing for Spotify or someone

to say, oh, we'll just do Ophonic. Or perhaps maybe, or is that an existential threat? Do

you think down the line that one of these places will say, we'll just scoop that part

in because again unless you really know what you're doing i don't it seems very difficult to

have a high quality podcast without using a tool like ophonic well that's not true if you're an

Georg Holzmann

auto engineer you can just do it yourself of course yeah sure sure sure but most but that

Will Vincent

you know that's what one percent if that you know everyone else who's um you know because yeah yeah

Georg Holzmann

thanks but uh to your question um yeah i think our our service is just very specialized and

there is just a lot of time already put into it how to how to really optimize it for this use case

i mean of course someone else can build similar things but it's it's of course a lot of work and

you would need i think quite a bigger team than than we are if you don't build it for yourself

and sure and yeah i don't think that there is so much money in it that you will throw a

20 people team on it but i don't know right so it's a nice niche and that if you as long as you

Carlton Gibson

stay the right size and don't don't scale up too big yeah maybe you can you you can survive in that

Will Vincent

space can you give us a sense of how many what metric do you use for for size is it um the size

the files processed is it you know hours what when you internally look at your metrics what are the

how do you manage growth because i think that there's a number of different ways to potentially

Georg Holzmann

measure that you usually usually we take i mean also for our users the the important thing is the

the length of of the audio file so in our system you you have you need so two hours of audio is

free for everyone in our system and uh if you process more audio then you can buy additional

credits and the credits are in in hours of audio so if you have one hour of credits you can process

one hour of audio file so therefore therefore of course the most important measure i would say is

Will Vincent

the hours of audio we process maybe well because i guess yeah because audio files can be one hour

can be i mean yeah very different in size was was that uh yes so that seems smart from a marketing

perspective but i as you know for someone like you who really knows the audio i mean the costs

could be wildly different for one hour of um you know one file versus another so yes the size of

Georg Holzmann

the audio file itself does not say much because if you have an mp3 file compared to an uh wave file

with a very big bit size,

then the MP3 file is very small, of course.

But then if you process the file,

you have to decode the file again to get the raw data.

And then it doesn't matter if it was an MP3 or WAV file

because you need the same processing amount

or processing power for it.

Will Vincent

Oh, interesting.

So I'm curious, because you went to university

for audio engineering,

what did you think you were going to be doing

at this point in your career

And kind of what are your friends from university doing?

Because I'm sure they're not all doing startups.

Georg Holzmann

No, it's very different.

So, well, actually, after university, I started, so I did my master's studies here in Austria.

And then I started a PhD in Germany, in Berlin, also about machine learning and audio.

It was, it is called, this field is called music information retrieval.

so where you try to extract information out of audio with machine learning techniques but yeah

then i did not finish this phd because basically i was the only one there which did these things

and then i started the job at the web company and get to know all these web things also django

so they also use django there and yeah then i thought okay i can also build something for

myself and i also get to know this podcaster which always had this problem with audio processing and

encoding and i just tried to build these these things myself yeah no i mean it sounds like the

Carlton Gibson

perfect pipeline you know you've you've done the signal processing you've done the machine learning

you've done you you're into the audio stuff you've done the web programming it's like you've got all

the parts together and you've just created this awesome business out of it that's exactly i still

Georg Holzmann

had no idea about doing business but but yeah that's okay well yeah that's not the lesson

Will Vincent

so did you go to a web place that was doing audio stuff or did you just separately um go to a web

place and then later said oh i can combine these these two no it was not about audio it was

Georg Holzmann

something completely else but at that time i was interested in in web things because i did never do

to big web projects so i just wanted to get into this topic and yeah for that it was quite well

Will Vincent

yeah well it's still the case in the certainly in the u.s that you can't it's very difficult to

learn web uh in school uh there's sure some some efforts on it but basically it has to be hands-on

and even something like django is largely not taught at all and if it is taught it's by an

adjunct and it's sort of an elective so that's hopefully that will change but it's it's hard to

get a backbone in web technologies even though the majority of uh undergraduate computer science

graduates probably go work on something web related so there's definitely a uh yeah educational

Georg Holzmann

mismatch there right in the end you just have to do it because all the resources are out in the web

of course and you just have to do it and and learn it by yourself yes spoken like an engineer

Will Vincent

So what are you working on right now?

Georg Holzmann

Yeah, so as I said in the beginning, so Afonik started as a web service with this Django

part and et cetera.

But we also have a desktop application with our algorithms.

So they don't include all the features of the web service.

But the advantage here is, of course, that you don't have to do the processing in the

cloud and you don't have to upload files.

So the processing is just done on your computer, which needs, of course, processing, but you don't have to upload, download.

And, yeah, we also have a different pricing model for this desktop app.

So it's just a one time purchase.

There is in the web service, you have to pay credits.

So based on how much you process.

But, yeah, what I wanted to tell is that we are working on a new version of the desktop software at the moment.

because it was very difficult to get all these

Python and machine learning tools to desktop computers.

And especially difficult was the GUI part

because we used in the desktop apps,

we used this WX widgets framework with their Python bindings.

And it was so frustrating and so difficult.

And now we did rewrite everything with web-based tools.

So we use now Electron and...

Okay, so it's Electron.

...combined with Python.

But yeah, Electron is still a very big framework

and not so nice to handle,

but at least now everything is HTML-based,

the whole user interface,

and the backend is all done in Python.

And so as a long-term goal,

we could maybe use the same interface

for the web and for the desktop version

and just reuse all the components

Carlton Gibson

and use python as the processing engine and are you bundling python in the application yes

Georg Holzmann

so you're using like the pyb project there or something similar no we are using well there

are various ways how you can do that first we are compiling everything to c with titan and and all

these tools and we are using this tool is called by installer which which creates such a bundle

with Python and all the dependencies you have.

And then this is bundled into one binary

and you can afterwards distribute this binary.

Carlton Gibson

Okay, fantastic.

And then because that's Electron-based,

that will be on Windows and Mac and Linux as well?

Georg Holzmann

Yes, exactly.

Okay.

And then the Electron app just also takes this Python binary

and includes it in their framework.

Carlton Gibson

Wow.

Georg Holzmann

Yeah.

Carlton Gibson

That's really cool.

Georg Holzmann

Too many tools.

Carlton Gibson

yeah i mean python doesn't really have a good story for i mean it's good on the command line

it's good for building application it doesn't have this story about desktop integration or

Georg Holzmann

even front-end web integration so yeah well it has it is good for desktop i think but

the missing part is the gui part yeah yeah awesome well well thank you so much for coming on and

Will Vincent

and sharing this story, we love using Ophonic. And I actually, what I love in a way too,

is that the only reason I thought that maybe use Django is I saw your, the signup page and

you're using slash accounts and username, email, password. And I thought, Oh, that looks,

that looks like Django. And I just sent you an email. It's like, Oh yeah, it is Django.

So there's all these, there's all these, you know, a big thing for us in this podcast is try to

highlight all the different ways Django is being used in all these different realms, which are

largely kind of hidden because it's you know for you it's a sort of a secondary thing but still a

key part of your you know pipeline of your process yeah and and what i find quite uh important is

Georg Holzmann

that jenga is now already quite old and it still evolves and it's still a good choice if you would

start today i would say that is the perfect end this is of course very important if you are a

small company like we are so you cannot rebuild everything from scratch after five years or yeah

Carlton Gibson

Yeah, no, but also as well, you need to know that Django is going to continue working.

You know, the next release isn't going to totally change the API or, you know.

Exactly.

All the such things.

And those stability guarantees and the deprecation policy are important.

Will Vincent

Yeah.

Well, actually, maybe one last one.

If there's something you could change about Django, what would that be?

Or do you have thoughts on maybe how the future async wave, would that impact Ophonic at all?

Or is that not so much?

Georg Holzmann

i don't know i i did not do so much with it uh since now because i mean the thing is our

processing is done in a different stage so it's done offline basically in the queue so here we

don't would not need this async thing but yeah i think for for user interface improvements it's

of course very very very interesting but i have to to play with around with it a little bit more i

Will Vincent

think um so if listeners want to use ophonic should they just go to the the main website or

Georg Holzmann

where where should they be directed yes sure so our website is aphonic.com and yeah just try our

system so two hours per month for free and if you have any questions or feedback we are always very

very happy to to get feedback and also error reports and whatever great okay well thank you

Will Vincent

so much for coming on and giving us the time for your time really interesting georg thank you bye

Georg Holzmann

bye thank you ciao