sshmanko / acestream-armv7

AceStream engine for ARM devices
46 stars 14 forks source link

Stopped working for some streams #10

Open trananhtuan opened 5 years ago

trananhtuan commented 5 years ago

This program has suddenly stopped working for some streams. The latest version on PC works just fine.

acestream-armv7 on Ubuntu 18.04 Raspberry Pi:

$ curl "http://127.0.0.1:6878/webui/api/service?method=get_version"
{"result": {"code": 3013300, "platform": "android", "version": "3.1.33"}, "error": null}
$ curl -v "http://127.0.0.1:6878/ace/getstream?id=485a771d1389af6fcb5fa50e7534c46b9553b6e5"
*   Trying 127.0.0.1...
* TCP_NODELAY set
* Connected to 127.0.0.1 (127.0.0.1) port 6878 (#0)
> GET /ace/getstream?id=485a771d1389af6fcb5fa50e7534c46b9553b6e5 HTTP/1.1
> Host: 127.0.0.1:6878
> User-Agent: curl/7.58.0
> Accept: */*
>
< HTTP/1.1 500 Internal Server Error
< Server: BaseHTTP/0.3 Python/2.7.15
< Date: Mon, 03 Jun 2019 10:16:21 GMT
< Content-Type: text/plain
< Content-Length: 45
<
* Connection #0 to host 127.0.0.1 left intact
Internal Server Error, couldn't find resource

acestream engine on Windows 10 x64:

curl "http://127.0.0.1:6878/webui/api/service?method=get_version"
{"result": {"code": 3013200, "platform": "win32", "version": "3.1.32"}, "error": null}
curl -v "http://127.0.0.1:6878/ace/getstream?id=485a771d1389af6fcb5fa50e7534c46b9553b6e5"
*   Trying 127.0.0.1...
* TCP_NODELAY set
* Connected to 127.0.0.1 (127.0.0.1) port 6878 (#0)
> GET /ace/getstream?id=485a771d1389af6fcb5fa50e7534c46b9553b6e5 HTTP/1.1
> Host: 127.0.0.1:6878
> User-Agent: curl/7.55.1
> Accept: */*
>
< HTTP/1.1 302 Found
< Server: BaseHTTP/0.3 Python/2.7.13
< Date: Mon, 03 Jun 2019 10:24:48 GMT
< Location: http://127.0.0.1:6878/ace/r/d486dfb84106479b5b639c9af312eef6ab77268e/f528764d624db129b32c21fbca0cb8d6
< Access-Control-Allow-Origin: *
* no chunk, no close, no size. Assume close to signal end
<
Redirect to http://127.0.0.1:6878/ace/r/d486dfb84106479b5b639c9af312eef6ab77268e/f528764d624db129b32c21fbca0cb8d6* Closing connection 0

It might relate to the forced ads introduced by Acestream recently.

sshmanko commented 5 years ago

I am using v 3.1.28 on windows and did not notice any new ads (I disabled web link handler in windows so it hides them automatically). I am now hesitant to update to latest version to verify.

I see 3.1.42 version is released for ARM devices, will update this repo in a few days - might fix this issue.

trananhtuan commented 5 years ago

Thanks for your quick response. I'm also reluctant to update acestream because the old versions had worked just fine for years until now. I also have the same problem with an older version of acestream running on Odroid XU4.

No problem with Acestream Engine on Nox Player Android emulator (the stream is not live atm but the response should not be HTTP 5xx). I didn't need to sign in the app to get the stream working.

curl "http://192.168.88.23:6878/webui/api/service?method=get_version"
{"result": {"code": 3013200, "platform": "win32", "version": "3.1.32"}, "error": null}
curl -v "http://192.168.88.23:6878/ace/getstream?id=485a771d1389af6fcb5fa50e7534c46b9553b6e5"
*   Trying 192.168.88.23...
* TCP_NODELAY set
* Connected to 192.168.88.23 (192.168.88.23) port 6878 (#0)
> GET /ace/getstream?id=485a771d1389af6fcb5fa50e7534c46b9553b6e5 HTTP/1.1
> Host: 192.168.88.23:6878
> User-Agent: curl/7.55.1
> Accept: */*
>
< HTTP/1.1 302 Found
< Server: BaseHTTP/0.3 Python/2.7.13
< Date: Tue, 04 Jun 2019 03:10:57 GMT
< Location: http://192.168.88.23:6878/ace/r/d486dfb84106479b5b639c9af312eef6ab77268e/cc6da92ab0a6066fe788307c77c78dca
< Access-Control-Allow-Origin: *
* no chunk, no close, no size. Assume close to signal end
<
Redirect to http://192.168.88.23:6878/ace/r/d486dfb84106479b5b639c9af312eef6ab77268e/cc6da92ab0a6066fe788307c77c78dca* Closing connection 0

Anyway, this is the welcome message when running Acestream Engine on Android, not sure if previous versions have it:

Thank you for using Ace Stream!

For 5 years, we have been developing the basic functions of the application, including the most sophisticated technology of P2P broadcasting, which has no analogues in the world, and, as part of an open beta test, provided this application absolutely free of charge, without any restrictions, and without advertising.

During this period of time, we have achieved high efficiency indicators of the technologies we develop and implement, and now, with the aim of the possibility of further active development of the application, we are moving to the commercial stage, which will include the following:

Display advertising materials in the application, with the ability to disable advertising by purchasing a subscription to the appropriate option or tariff package. The use of third-party players for viewing broadcasts in the P2P Live Stream format will be possible only with the ¡°Proxy Server¡± option. When using the player¡¯s built-in player (Ace Player) or a third-party player that officially supports the playback of Ace Stream advertising shows, the ¡°Proxy Server¡± option is not required. For subscribers of tariff plans in which advertising is turned off, the opportunity is provided (if desired) to connect any acceptable advertising formats in order to receive rewards for viewing advertisements. As a reward, bonuses will be added to the user's balance, which can be used to purchase various paid options and tariff plans, and later on to increase your rating in the Ace Stream system ("Ace Stream rating" is the ratio between received and sent megabytes (DL / UL) will play a very important role in the final implementation of our P2P broadcast technology). Connecting the option ¡°Proxy Server¡± + ¡°NoAds¡± (disabling advertising) + activation of the bonus program can be done directly in the application, for a nominal fee of $ 1

Sale! Save 16% by purchasing the annual plan Select period: 1 month (1$) 1 year (10$) Buy We hope for your understanding and support, as well as your desire to help the further active development of the Ace Stream project.

§°§Ü ENGLISH RUSSIAN more_vert close

Hopefully the latest version will fix this.

L2501 commented 5 years ago

libreelec arm build was updated here https://github.com/lysyiklad/repokodi/tree/master/service.system.acestreammedia https://github.com/AlexELEC/acestream-aml

https://github.com/pepsik-kiev/HTTPAceProxy/issues/39

trananhtuan commented 5 years ago

Thanks for the info. I tried to update using service.system.acestreammedia-1.0.9.zip from https://github.com/lysyiklad/repokodi/tree/master/service.system.acestreammedia (by replacing androidfs folder with the newer one and copying acestream.conf to androidfs/acestream.engine). Acestream fails to start:

2019-06-09 15:34:18,065|MainThread|acestream.guessip|get_wan_ip: status=('Connected', 718067, 'ERROR_NONE') conn_type=IP_Routed
2019-06-09 15:34:18,079|MainThread|acestream.SocketHandler.InterruptSocket|bound on 127.0.0.1:59867
2019-06-09 15:34:18,080|MainThread|acestream.SocketHandler.SocketHandler|bind: socket bound: host=0.0.0.0 port=8621
2019-06-09 15:34:18,081|MainThread|acestream.LM|listen on 8621
2019-06-09 15:34:18,082|MainThread|acestream.localdb|No existing database found. Attempting to creating a new database '/acestream.engine/.ACEStream/sqlite/torrentstream.sdb'
2019-06-09 15:34:18,286|MainThread|acestream.VideoServer|start: addr= port=6878 allow_remote=1 allow_intranet=1
2019-06-09 15:34:18,288|MainThread|acestream|failed to init app
Traceback (most recent call last):
  File "core.c", line 346, in
  File "core.c", line 1362, in
  File "ACEStream/Video/VideoServer.py", line 102, in __init__
  File "/home/pasha/python-for-android/python-build/python_arm/python-ext/python/SocketServer.py", line 420, in __init__
  File "/home/pasha/python-for-android/python-build/python_arm/python-ext/python/BaseHTTPServer.py", line 110, in server_bind
  File "./socket.py", line 84, in getfqdn
UnboundLocalError: local variable 'aliases' referenced before assignment

Looks like it's a problem with the included python version.

Fran008 commented 5 years ago

Just for your information:

I have gone Premium on www.acestream.org and have put my user/password in acestrem.conf file.

It was magic because it worked again!! At least, for one week. It was two weeks ago. Last week it stopped again and my premium user was not a solution any more. I think it was because on 10/06/2019 Acestream started to make use of the Proxy Server option. The week before they performed this change, but it was not definitelly because they permitted to connect via a temporal Proxy Server. This temporal user stopped working on 10/06/2019, as well as my Premium User in acestream.conf

trananhtuan commented 5 years ago

Thanks for your information. There are some major changes underway and while the latest version (3.1.44) works, it's still very buggy on armv7 MOD.

I downloaded 3.1.44 from https://t.me/AceStreamMOD and the guy there was very helpful. The error in my previous message UnboundLocalError: local variable 'aliases' referenced before assignment was caused by lacking of 127.0.0.1 yourhostname in androidfs/acestream.engine/system/etc/hosts (copy of /etc/hosts from local machine).

There are other issues which cause stream to stop after 5 minutes due to failing to detect activity on the stream (inactivity timeout).

We will have to wait for an update.

Fran008 commented 5 years ago

Other thing that may be interesting is that if I put THESE same files in LibreELEC they work!! Using my user/password at acestream.org

The bug is only in Raspbian.

trananhtuan commented 5 years ago

I run Ubuntu Server 18.04 minimal and while I can now view all streams, it's still buggy.

I think many people know about the issues and that's why none of them has updated their repo on github to this version yet.

Fran008 commented 5 years ago

I have an old version of Raspbian. If I update... maybe it will work again. I will try it.

Fran008 commented 5 years ago

sudo apt-get && sudo apt-get dist-upgrade

... and still failing in Raspbian, with latest update

Fran008 commented 5 years ago

One second... updating just did the trick! Using my user/password in acestream.org and with Raspbian updated it works again :)

trananhtuan commented 5 years ago

Your problem has nothing to do with what mentioned above

Fran008 commented 5 years ago

Maybe it's more related to this other issue:

https://github.com/sshmanko/acestream-armv7/issues/11

I'm sorry.

trananhtuan commented 5 years ago

It's okay, I'm glad it works out for you. BTW what version are you using?

Fran008 commented 5 years ago

It works for me in Raspbian Stretch.

When I put these same files in LibreELEC Leia and LibreELEC Krypton, they work too.

trananhtuan commented 5 years ago

I meant Acestream version.

https://github.com/pepsik-kiev/HTTPAceProxy/issues/39

Versions <3.1.42 require a paid subscription to use

It's no surprise you can use older versions with a premium account. I don't have a premium account, in fact, I have never even logged in. But I have no problem on other platforms (Windows and Android) where they have official releases, the problem is only with this ARM mod.

Fran008 commented 5 years ago

3.1.24

I had a free account, you are right because it was mandatory. But it worked until 2 weeks ago. Then, in addition to the free account, I had to pay 10$ to get my account upgraded to Premium.

I have found in the web a package of acestream engine which works now in LibreELEC with no need to login. And the official packages from Acestream.org work ok on 86 Linux and Windows too. But in Raspberry with Raspbian/ARM Linux the only way of playing acestreams now is this beloved repository and using a Premium account, I think.

Fran008 commented 5 years ago

I have tested with the latest version, and my trick just does not work. I put the Premium user and it still says "Proxy Server error". In my case it only works with version 3.1.24

Fran008 commented 5 years ago

Sorry once again. I have tested version 3.1.44 and it works, at least the Proxy Server issue with no login. I didn't use the latest version. I will do more testing.

Fran008 commented 5 years ago

I don't know if its related, but I had a system with version 3.1.24 of acestream working ok. Then I installed version 3.1.44 for some testing and it stopped working. But when I reinstalled version 3.1.24... it just didn't work anymore! Looks like execution of the new version did something to the whole system, not just /opt directory.

I had to reinstall Raspbian with an SD image I had done before the testing. Then, with version 3.1.24 and no traces of 3.1.44, it worked again.

trananhtuan commented 5 years ago

Just a gentle reminder, this is a bug report and not a discussion board. You need to provide more debug information in order to help & get help. If you want to discuss, install Telegram, go to https://t.me/AceStreamMOD and hit on Discuss button to join.

trananhtuan commented 5 years ago

As this repo is not actively maintained, I created acestream-armv7-docker for those interested. This comes with latest acestream v3.1.46 and it no longer has this issue.

I choose docker because configuring and updating container is arguably easier and more secure.

Pre-built images on Docker Hub are available for those who just want to get it running quickly.