• Welcome to TechPowerUp Forums, Guest! Please check out our forum guidelines for info related to our community.

Server requirements for mp3 streaming app

izy

Joined
Jun 30, 2022
Messages
1,076 (1.03/day)
Hi , ive created an android app for audiobook steaming that is using subsonic API. The audiobooks are in mp3 format 64kbs - 196kbs / 5 mb to 30 mb in size (per chapter) , most of them are 128kbs / 10mb in size .
After release im expecting like 20 -30 users using it at the same time with a rare peak of maybe 100 (im hopping for more with time ofc). For start i want a cheap solution for the server as the app will be mostly free (maybe with some ads) and after some time a small fee per month (i havent decided yet, i am building it for the blind people in my country that will have access for free all the time but it will be on app store for anyone that wants to use it ).
My options are:
1. Build my own server on a 1 gbit connection / unlimited bandwidth (maybe 5-10 gbit in the future)
2. Rent an vps

What would be a cheap CPU / platform that could handle my streaming server + a small webpage? ( i think ill keep transcoding off because files are small and i can save some cpu power) The app does server requests for mostly everything like saving bookmarks , searching audiobooks etc. (i does not cache all library) and each audiobook has an image + description.
I was looking for a cheap VPS (i think i need at least 4 cores) but with 500+ gb of storage they are expensive ( i need around 1 terabyte of storage ) and they have limited bandwidth, ill need an estimation on how much bandwidth i might need. As an storage workaround i can set the server to get my files over webdav (1 gbit connection)
Can a VPS with arm cpu do the job? (they are cheaper)
What other cheap server options that can do the job do i have? (i want to keep it cheap for few months and see if the app can pay itself or not, im getting paid for the app but not for the server and im not interested to use my own money to pay for the server on the long run)

Edit: I am looking on this VPS - https://contabo.com/en/vps/
 
Last edited:
Contabo doesn't exactly have the best reputation, but for MP3 streaming it should do.

For 30-40 users you'd probably be fine with 1 CPU core, minimal memory. Not sure why you think you need 1 TB storage, I'd start with the cheapest VPS from them and grow from there

Not sure if Arm is the best idea, you'll have to compile a lot of software yourself, which makes things more complicated

64 kbps * 50 listeners = 3.2 mbit/s btw

* 24 * 3600 = 34 GB traffic per month
 
Last edited:
wow, EUR5/mo for 4 vcores and 8 (!) gib of memory?

yeah ... that's dodgy af. like, shared overused vcores - sure, but i thought vps memory's always dedicated?

anyways, i'd have recommended something like DO or linode (or maybe like, vultr), they aren't offering deals as crazy as that but i'd never have bought into such an unrealistic offer to begin w/ since they tend to be scams
 
Contabo doesn't exactly have the best reputation, but for MP3 streaming it should do.

For 30-40 users you'd probably be fine with 1 CPU core, minimal memory. Not sure why you think you need 1 TB storage, I'd start with the cheapest VPS from them and grow from there

Not sure if Arm is the best idea, you'll have to compile a lot of software yourself, which makes things more complicated

64 kbps * 50 listeners = 3.2 mbit/s btw

* 24 * 3600 = 34 GB traffic per month
The audiobooks mp3 collection is about 1TB.
I am guessing that one person will listen about 2 hours (per day).
The first 2 - 3 days after release the server should be able to handle lets say 100+ users at the same time. (people witch is this app mainly intended for will test it for the first time)
I might enable transcoding for everything higher than 128kbs to 128kbs. ( i dont know how much CPU power that can eat)
The server will use Ubuntu (and there is Ubuntu for arm),

At 100kbs/s = 360mbs / hour - per user * 2 hours = 720mbs * 50 per day let say = 36Gbs per day * 30 days = 1Tbs per month (if im not wrong) and thats without the extra traffic that app requests will do + a small website (a simple website with a registration form and some information, not that much traffic).

So i need an VPS that can handle at least double of that (to be on the safe side). I can build my own server over 1Gbs connection (unmetered bandwidth) but im not sure if its worth the trouble. (i have to take care of it at the location and pay the electricity and the internet + ofc the cost of hardware and an UPS)
 
Last edited:
would that be like, colo in an actual datacenter or more like something like a homerack?
in any case, for a project of such scale it wouldn't make much sense financially, not unless you're sure that it like, won't die in a few months time
 
Is there any reason not to use an older PC for this, given a good network card? I don't know too much about the networking side of things, but that definitely doesn't sound like it would take much processing power.
 
I will be a beta tester. I listen to 3-4 books per week. My main requirement is speed control. I usually listen at 1.6x speed. Some others listen much faster.
 
would that be like, colo in an actual datacenter or more like something like a homerack?
in any case, for a project of such scale it wouldn't make much sense financially, not unless you're sure that it like, won't die in a few months time
The blind association paid me to build an streaming app for audiobooks (they got some donation with that purpose from witch they pay me).They have some kind of program to encourage its members to listen books and get used with the new technology (touch screen mobil phones in this case)
The content ( the audiobooks ) is coming from them but i have full control over it (in the way that i can use the audiobooks in commercial purpose as long i keep it free for them)
Server location can be at a friend of mine that is hosting multiple servers for his own things, so i wont have to much per month , something like 10$ - 15$. I can host it at the association location but if ill add some sort of subscriber fee or ads for others i prefer to have it in a location of my own.
There are maybe 1k to 5k+ blind people (android users) that could use it but not everyone is fan of books so from what i can estimate at start is 50 users per day + whoever takes the app from the playstore.

I will be a beta tester. I listen to 3-4 books per week. My main requirement is speed control. I usually listen at 1.6x speed. Some others listen much faster.
The audiobooks are not in english and most of the books (80%) are from year 1995 and older .
 
Last edited:
i see.
you could just rent a dedicated server somewhere (there's good, cheap ryzen dedis these days) that'd clock you like $50/mo, which'd give you plenty of resources to grow into, and is usually much cheaper than a comparable vps of the same/similar specs, if you want to save yourself the headache of that part of a sysadmins duty

otherwise, if you wouldn't mind it, you might asw do a full DIY server; it'd be a lot of upfront investment but should come out cheaper on the long(-er/-ish) run, if you're willing to stick w/ old, outdated and then obsolete hardware sometimes in like 5-7 years
(you'd also have more control over everything, but yeah)
 
Oh well, old doesn't matter, but English does. If I can help, either way, let me know.

Edit...the blind folks are the users i mentioned that will listen at much faster speed.
 
  • Like
Reactions: izy
Is there any reason not to use an older PC for this, given a good network card? I don't know too much about the networking side of things, but that definitely doesn't sound like it would take much processing power.
I dont have any PC that i can use for this at the moment but i could buy one if it can handle the job with low power consumption.

Oh well, old doesn't matter, but English does. If I can help, either way, let me know.

Edit...the blind folks are the users i mentioned that will listen at much faster speed.
Thank you , the app is like at 80% at the moment , i need to add few more features then getting the screen reader (talkback) to work nice with it and after that i need to take care the server. The app will probably be free to use with ads (not for the association members) and for a small monthly fee you will be able to remove the adds. ( i hate ads but there is no other way i can make the app to pay for the servers and my time)
If everything works nice i will consider to covert it to IOS but i never touched IOS before so yeah , thats just a thought.
 
I dont have any PC that i can use for this at the moment but i could buy one if it can handle the job with low power consumption.
An used business pc might be a cheap way to get into that.
 
i see.
you could just rent a dedicated server somewhere (there's good, cheap ryzen dedis these days) that'd clock you like $50/mo, which'd give you plenty of resources to grow into, and is usually much cheaper than a comparable vps of the same/similar specs, if you want to save yourself the headache of that part of a sysadmins duty

otherwise, if you wouldn't mind it, you might asw do a full DIY server; it'd be a lot of upfront investment but should come out cheaper on the long(-er/-ish) run, if you're willing to stick w/ old, outdated and then obsolete hardware sometimes in like 5-7 years
(you'd also have more control over everything, but yeah)
Thats my dilemma at the moment :) If i just want to keep the app private (only for the association members) , take my money for building the app and thats it i could just ask them for a bit more money to buy a cheap server , install it at their location and done. What im looking for is for a cheap way to make this available for everyone without investing too much upfront or high monthly cost (i dont want to pay the server from my pocket if it cant pay itself, i dont want to make money with app , i would be happy just to make money to pay the server and somehow to pay for my time administrating it).

An used business pc might be a cheap way to get into that.
Any minimum specs you have in mind?
 
yeah id rent a server then, either vps or dedi up2you tbh, both have their pros and cons
vps pros: start out really cheap, can be scaled upwards
vps cons: get really expensive really soon, more sensible to move to a ryzen dedi past that point

dedi pros: ryzen dedis are the pricebreakers we've been waiting for, you're getting an awesome bang-for-the-buck
dedi cons: not scaleable, will incur setup fees (about a monthly charge, give or take), likely very overkill at the very least for the time being

ie: if you start w/ a vps and the app does pop off, you might want to move it to a dedi anyways since that'd be cheaper, but yeah
 
yeah id rent a server then, either vps or dedi up2you tbh, both have their pros and cons
vps pros: start out really cheap, can be scaled upwards
vps cons: get really expensive really soon, more sensible to move to a ryzen dedi past that point

dedi pros: ryzen dedis are the pricebreakers we've been waiting for, you're getting an awesome bang-for-the-buck
dedi cons: not scaleable, will incur setup fees (about a monthly charge, give or take), likely very overkill at the very least for the time being

ie: if you start w/ a vps and the app does pop off, you might want to move it to a dedi anyways since that'd be cheaper, but yeah
What i have in mind for cheap is this (the 800GB ssd storage option):
or this: (it has normal hdd and not sure if it can do the job but its cheap and 1.4 TB of space)
Storage VPS is a virtual server with a standard hard disk (HDD) and an additional SSD swap to boost server performance. Consequently with this product, you receive a lot of storage space for your data and at the same time the SSD boost ensures that your VPS operating system works faster than on HDD alone.

Do you think its a bad idea? (both 32 TB Traffic , Unlimited Incoming)
 
Last edited:
I wouldn’t trust that company at all with prices like that, but maybe you know something I don’t. I don’t think I’ve ever used a VPS with 8 cores for less than $100.

Honestly, if I were you, I’d wait until the app is finished and then run performance tests and optimize from there. From there I’d consider a provider that charges by usage rather than a flat rate.
 
I wouldn’t trust that company at all with prices like that, but maybe you know something I don’t. I don’t think I’ve ever used a VPS with 8 cores for less than $100.

Honestly, if I were you, I’d wait until the app is finished and then run performance tests and optimize from there. From there I’d consider a provider that charges by usage rather than a flat rate.
Thats what im worried about , the prices are too good to be true but im thinking even the cores are shared they should do the job (6 cores..) anyway i can move from them after a few months if they are really bad. Getting something with ~1TB of storage (i could work with 800GB maybe) its way too expensive for what im trying to achieve from what ive seen.

"Contabo GmbH has been established in spring of 2003 in the city of Munich, capital of Bavaria, in southern Germany. Giga-International - as it was know at that time - has been steadily growing from just one single server in the data center to more than 15,000 servers today."

Edit: I am not sure what limitation they might have on their VPS, i havent found any terms of use yet.

Storage VPS is a virtual server with a standard hard disk (HDD) and an additional SSD swap to boost server performance. Consequently with this product, you receive a lot of storage space for your data and at the same time the SSD boost ensures that your VPS operating system works faster than on HDD alone. <== is this gonna be fast enough? or i should better go for SDD for a few more $.

18Euro + 19% VAT - 1.2TB sdd 8 vCPU (15Euro + 19% VAT for 800GB ssd that can upgraded) vs 13Euro + 19% VAT - 1.4TB HDD with SSD swap 6 vCPU ( i think ill just try the 18E for a month and ill see how it goes but it just sounds too cheap :) )
 
Last edited:
yeah, i would just buy from like DO (digitalocean) or linode. those contabo summerhost fantasyprices aren't sustainable, you're just setting yourself up for disaster there.
 
  • Like
Reactions: izy
If you’re up for it, I’d use AWS or Google or similar, especially given your storage needs. It should be a lot cheaper than bundled providers. I’d also go ahead and encode the originals to 128 rather than having your server transcode, even if you want a paid hi-fi option.

The reason I raised finishing and testing your app before getting to this question is in part because of things like storage needs, but also because I can’t imagine a basic mp3 streaming app needing 8-cores. Before I started offloading media to s3 I hosted a few Wordpress based podcast sites on dual-cores with 2GB and a few other sites sharing resources on them with no issues. You should be able to get away with a much cheaper host until you start seeing real traffic.
 
  • Like
Reactions: izy
If you’re up for it, I’d use AWS or Google or similar, especially given your storage needs. It should be a lot cheaper than bundled providers. I’d also go ahead and encode the originals to 128 rather than having your server transcode, even if you want a paid hi-fi option.

The reason I raised finishing and testing your app before getting to this question is in part because of things like storage needs, but also because I can’t imagine a basic mp3 streaming app needing 8-cores. Before I started offloading media to s3 I hosted a few Wordpress based podcast sites on dual-cores with 2GB and a few other sites sharing resources on them with no issues. You should be able to get away with a much cheaper host until you start seeing real traffic.
Last time ive used AWS for a project i think i messed something up and i ended up with a higher bill than planed and as far as i remember storage over 100GB was very expensive but ill check it again.
Yes ofc i dont need 8 cores , i'd be happy with 4 or 6 but i was looking at the 8 core because was bundled with more storage. What is a CPU intensive task on my server is the scanning / indexing all the mp3s , i have around 65k files and sometimes ill have to rescan all the files if something goes wrong.
I was thinking to transcode everything to a fixed bitrate but i am not sure what bitrate would be best without losing quality (thow audiobooks dont have to be high bitrate for a decent quality). Half of my library is 64kbs and the other half is from 128kbs to 256kbs ( only a few at 256kbs , more at 196kbs and the rest at 128kbs). If i transcode everything to 128kbs i end up with more used space , if im going for 64kbs i think ill lose quality on the files with 196kbs+ (some audiobooks have some music on the background). I think the best way i can do this is to leave the 64kbs to 64kbs and transcode everything else to 128kbs (i think they will sound just fine at 128kbs).
The way im thinking to monetize the app is with ads and with a monthly subscription for who wants to get rid of ads and support the free audiobooks app.(this can change but thats the plan for now) The problem with ads is that in an audiobook streaming app it wont make much money (if anything) from "pay per view / click" because people will just search for what they want to listen and play it, they dont have to interact too much with the app (and i dont like my app to be full of ads , i want even the free users to have a pleasant experience)
 
Seems that google is charging 0.1$+ /GB only for storage and like 30$ per core. (i think amazon does around the same)
 
Last edited:
Back
Top