Setting up an Acestream Proxy

Acestream seem to provide the best quality online streams, but as its essentially video over bittorrent, its not really the kind of traffic i want on my home network. This is a rundown on setting up an Acestream proxy on another host. This will output a stream you can just load up in VLC.

Once you have complete this, i would suggest you take a look at my post on scaling up the proxy, available HERE

Pre-requisites (installing acestream)


We need to install several packages and the acestream-engine itself.

So, to start with, lets install the basic packages we need:

jon@stream-origin:~$ sudo apt-get install python-gevent python-psutil git vlc


Once thats complete we need to install the Acestream engine.

 jon@stream-origin:~$ sudo nano /etc/apt/sources.list


#Add the following line

deb http://repo.acestream.org/ubuntu/ trusty main


# Install the publickey for the repo

 jon@stream-origin:~$ sudo wget -O - http://repo.acestream.org/keys/acestream.public.key | sudo apt-key add -


#Update and install

 jon@stream-origin:~$ sudo apt-get update

jon@stream-origin:~$ sudo apt-get install acestream-engine


Thats it for installing acestream and the pre-req's. Next we will configure the proxy itself.

 

Getting the proxy


A nice chap going by the github username - ValdikSS wrote this software, so all thanks go to him.

Now, lets get it downloaded.

jon@stream-origin:~$ git clone https://github.com/ValdikSS/aceproxy.git


Whenever you want to update the proxy, just run "git pull"

 

Configure the proxy


Next we need to go through and configure the proxy. There are a few changes we need to make:

Open up aceconfig.py and set the following

vlcuse = True


It is recommended to also set the following

videodelay = 0

videoobey = False

videopausedelay = 0


That should be all you need to do.

Now onto running the proxy.

 

Running the proxy


Now that the proxy is configured, lets try it out. There are a few programs that need to be started before hand. Id suggest having a couple of terminals up, just while we are testing. Once you are happy they are working you can push them to the background.

First we need to start VLC:

jon@stream-origin:~$ vlc -I telnet --clock-jitter -1 --network-caching -1 --sout-mux-caching 2000 --telnet-password admin


Then we need to start the Acestream-engine

jon@stream-origin:~$ acestream-engine --client-console


Once they are both started, lets start the proxy:

jon@stream-origin:~$ python acehttp.py


That should be it. You can test its running by going to ip of your machine, plus the port set in aceconfig.py then /stat. So for example http://192.168.0.100:8080/stat.

This should then show you the connected clients, and the max concurrent connections.

 

Viewing a stream


Now we get to the actual watching a stream. This is all on your local machine. Not the proxy.

Firstly, you need to know the acestream hash of the stream you want to watch. Im not going to give out links to where you can find them, but google is your friend.

All you need to do is open VLC, go to "Open network Stream" and put in the following

http://ip-of-proxy:port/pid/acestream-hash/stream.mp4


Thats it. The stream will load up in VLC.

 

Using FreeIPA to authenticate OpenVPN users on pfSense

I have been fiddling with multiple different authentication methods to centralise the authentication across all my devices and services. ...… Continue reading

Zen Internet, IPv6 and pfsense

Published on February 19, 2017

Basic Telegraf, InfluxDB and Grafana setup

Published on January 26, 2017