

Show HN: Ampache – Web-based audio/video streaming and file manager - qqwpkao6
https://github.com/ampache/ampache

======
chaffneue
Out of curiosity, how did you handle the mobile web with this project? With my
pet project, Streeme, I had non-stop issues with the music streaming stopping
on lock screens. The root cause was javascript not triggering the next track
unless you unlock the device. I also found that formats/codecs could be
problematic between mobile devices and different software stacks (mobile
firefox, chrome, safari). Is there some alternative interface for this
nowadays that doesn't need javascript? Have they settled on a common codec
yet? I got pretty fed up with iOS fundamentally changing Safari's HTML5 Audio
behaviors with every OS overhaul as it was my main listening device on the bus
and at work. Even though it still works on the desktop, mobile clients really
killed my passion for trying to make a web based media player.

------
joekrill
This has been around for some time. Is this a new version?

Edit: Looks like it's a fork from the original Ampache which is no longer
maintained:
[https://github.com/ampache/ampache/wiki/About](https://github.com/ampache/ampache/wiki/About)

Looks much nicer than last I used it. I'll check it out. I've been working on
building something similar in Node.

------
dewey
Great to see the author posting it here. I submitted it a few days ago but I
guess my timing wasn't that great [0].

I'm pretty happy with Subsonic [1] at the moment but I'll definitely give it a
shot later because Ampache isn't Java based, which is a huge win for me.

[0]
[https://news.ycombinator.com/item?id=7735252](https://news.ycombinator.com/item?id=7735252)

[1] [http://www.subsonic.org/](http://www.subsonic.org/)

~~~
TTPrograms
I also use subsonic - it's great. I have a third party app on my phone that
handles caching really well too, so it's a very easy way to listen to a very
large music library without any manual configuring.

------
ulms
This looks neat.

The common hangup I have with these sorts of things though, is what's the most
reasonable way to host the data? IANAL, but AFAICT I'm prohibited from running
something like this from my residence because my ISP (Verizon) says I can't
run servers or dedicated services from my home connection. So OK, I'll go
ahead and run it on a DO or EC2 or Linode instance - well, provided I feel
like massively overproisioning and thus paying inordinately for ample storage
(what if I have terabytes of media?), or dealing with slow connections
mounting/proxying to S3 (for example). On top of that, for anyone who has
media they did not acquire legally, they are now breaking (more?) laws,
hosting agreements, etc.

Just curious to see how anyone else manages it - because LAN XBMC/UMS/PS3 etc
is always great, but if I want something more available, like this, or a
private Roku channel, etc, it seems less of a real option the more that I
consider it.

~~~
TheCraiggers
I'm a Comcast user, and while I know that I'm breaking the user agreement by
hosting servers, I do it anyway and so far they haven't been bothered by it.
My presumption is that clause is more of a CYA on their part that if you begin
consuming terabytes of bandwidth hosting your own Youtube site or whatever,
they don't need to invent much of a reason to turn you off. Frankly, I'm OK
with ignoring it because it seems totally unreasonable in its current wording.
What is a server? Sure, Apache is pretty cut and dry, but what about hosting a
L4D2 game for three friends? What about that World of Warcraft patcher that
acted as a Bittorrent client? How about those Javascript libraries that "crowd
host" your website? As far as I'm concerned anything that sits on a port
waiting for a connection is a "server" and its almost impossible to do much
online these days without unknowingly running one.

If Verizon is more stringent on this, you do have a few options if you want to
do it anyway. One of the easiest is by only running the server when you intend
to use it. Set up a script that allows you to turn it on/off via email or
tweet or something. Or setup a port knocker script that closes the port, only
opening it for outside connections when you want to watch Archer or whatever.
That will protect you from the usual port scans and such, and is likely all
you need to evade Verizon's ire.

The increased bandwidth usage is a trickier problem that, depending on your
location/ISP, paying for offiste hosting may be your only option if you intend
to stream large amounts of media. This is likely only going to get worse as
infrastructure continues to degrade and ISPs continue to sit on it, so I
envision we'll all be looking for options here in the future.

~~~
ulms
Fair points. Now that you mention it, the CYA rationale makes a bit more
sense. And yup - it's like you said, it's almost impossible to not be
contributing to other Internet users in some regard most of the time, with
peering really being the LCD of those situations. Hell, being the host in a
Halo matchmaking game would be enough for them to nuke your service, by
contract logic. Also, good idea on the tweet/etc - even a simpler option would
be doing something like a text file on S3 that just flags it as on/off, and
let the script poll that every so often. I think I'll do that.

Aside, but as an unreasonably paranoid person, I appreciate the candor WRT
"screw it, I do it anyway" \- this (personal media hosting/availability)
specifically has been a pain point for a while, and with a decent pipe to the
house and plenty of storage, it'd be a shame to let it all go to waste. ;)

------
luxpir
Have been running on the Raspberry Pi for the last year (on lighttpd), but
that version was a little troublesome on the usability front. This looks like
progress, however, with a HTML5 player being a great improvement.

EDIT: Just updated to the latest version (very simple - clone new 'site files'
from Github and copy the previous config, installer does the rest) and can
confirm the experience is much improved with the new web player.

------
SUTJael
Hi guys, Thanks for your comments, really glad to see people are interested in
the new version. We're working hard to release the 3.7 version so keep in
touch!

------
yournemesis
I'm not too familiar with PHP. Are there any tests I can run to make sure this
actually works as expected on my machine?

------
unwind
Ooh, a manag!

Eh. Can someone please fix that glaring error? Thanks.

------
xerophtye
Great work man :D will try it out when i get home

