Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

The GUI hangs while watching a stream #603

Closed
2 tasks done
miawgogo opened this issue Nov 1, 2018 · 10 comments
Closed
2 tasks done

The GUI hangs while watching a stream #603

miawgogo opened this issue Nov 1, 2018 · 10 comments

Comments

@miawgogo
Copy link

miawgogo commented Nov 1, 2018

Bug report

  • I understand the difference between Streamlink and Streamlink Twitch GUI.
  • This is a bug report and I have read the contribution guidelines.

Environment details

Operating system and version:
Fedora 29 KDE spin

Streamlink Twitch GUI version:
1.6.0

Streamlink version:
streamlink 0.14.2

Configuration details:
Nothing of note

Description

whilst watching a stream the UI will apper as if it has hanged, but from the bug reporting in Fedora says it has streamlink-twitch-gui killed by SIGABRT, the stream continues. The tool has made this backtrace https://paste.ubuntu.com/p/JYsq9f4dmZ/, and there is a coredump that i can share if needed

Expected / Actual behavior

not causing a SIGABRT to happen

Reproduction steps

  1. launch stream
  2. watch it for a bit
  3. try and use the UI agian

Log output

I will do this as soon as I can as i am currently in class

REPLACE THIS TEXT WITH THE LOG OUTPUT

Additional comments, screenshots, etc.

@bastimeyer
Copy link
Member

bastimeyer commented Nov 1, 2018

Hi, I've seen your messages on Gitter yesterday, but haven't had the time responding yet, sorry about that.

Regarding your issue, unfortunately I can't tell you why the Twitch GUI is freezing on your system and then is getting killed via SIGABRT by libc. Remember that it is an NW.js application and just a launcher for Streamlink/Python. If there's an issue regarding system libraries, this have to be solved on the NW.js side and can only be fixed here (if it's indeed an issue) by upgrading the NW.js platform to a newer version.

If you launch the Twitch GUI with the --loglevel debug parameter, you can see the generated Streamlink launch parameters in stdout or ${XDG_DATA_HOME:-${HOME}/.local/share}/streamlink-twitch-gui/logs/.

Since you only seem to encounter this freezing issue while watching streams, did you consider that it might be a memory or GPU related problem because of the player process? The Twitch GUI has nothing to do with watching streams or even launching the player...

So, which player are you using? Please try out MPV with the custom --no-video or --no-video --force-window parameters and see if this causes it to freeze, too.
Other than that, you can try launching the Twitch GUI without GPU acceleration. As I've said, it's a NW.js application, therefore all Chromium parameters are available. See the --disable-gpu{,-*} parameters here:
https://peter.sh/experiments/chromium-command-line-switches/

@miawgogo
Copy link
Author

miawgogo commented Nov 1, 2018

i dont think its stream dependent, its just frose and returned this

/home/iloosley/.local/bin/streamlink-twitch-gui/streamlink-twitch-gui[7439]: ../../third_party/node-nw/src/node_crypto_bio.h:103:static node::crypto::NodeBIO *node::crypto::NodeBIO::FromBIO(BIO *): Assertion `(bio->ptr) != (nullptr)' failed.
 1: node::Abort() [/home/iloosley/.local/bin/streamlink-twitch-gui/lib/libnode.so]
 2: 0x7f1ec1ad713c [/home/iloosley/.local/bin/streamlink-twitch-gui/lib/libnode.so]
 3: 0x7f1ec1b86e7d [/home/iloosley/.local/bin/streamlink-twitch-gui/lib/libnode.so]
 4: 0x7f1ed16542e3 [/lib64/libcrypto.so.1.1]
 5: BIO_write [/lib64/libcrypto.so.1.1]
 6: node::crypto::NodeBIO::NewFixed(char const*, unsigned long) [/home/iloosley/.local/bin/streamlink-twitch-gui/lib/libnode.so]
 7: 0x7f1ec1b6dfc6 [/home/iloosley/.local/bin/streamlink-twitch-gui/lib/libnode.so]
 8: node::crypto::SecureContext::AddRootCerts(v8::FunctionCallbackInfo<v8::Value> const&) [/home/iloosley/.local/bin/streamlink-twitch-gui/lib/libnode.so]
 9: 0x7f1ed55e2016 [/home/iloosley/.local/bin/streamlink-twitch-gui/lib/libnw.so]

@bastimeyer
Copy link
Member

bastimeyer commented Nov 1, 2018

streamlink-twitch-gui/lib/libnode.so

As I've said, I can't do anything here other than upgrade the currently used NW.js version (0.26.6).

I've pushed a new branch nwjs-upgrade as an upgrade of the previous nwjs-0.31 branch to the repo. Please see if this works for you. Build instructions can be found in CONTRIBUTING.md.

The previous upgrade attempt had some issues which was the reason I didn't merge it. Those issues seem to have been fixed or at least reverted. However, there are a couple of new issues, like the smooth scrolling. Make sure to back-up ${XDG_CONFIG_HOME:-${HOME}/.config}/streamlink-twitch-gui or use the --user-data-dir=DIR launch parameter when switching between non-master NW.js versions of Streamlink Twitch GUI.

Edit:
Oh, and the start.sh bash wrapper has been removed, since it's not needed anymore. So if you've created a menu entry, you should remove it first before upgrading.

@OlliC
Copy link

OlliC commented Nov 22, 2018

Same problem here. Random hangs while playing a stream and random crashes while doing nothing in the background.

Crashlog:

$ /opt/streamlink-twitch-gui/start.sh 
[6482:6482:1122/182547.983393:ERROR:browser_main_loop.cc(292)] GLib-GObject: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
/opt/streamlink-twitch-gui/streamlink-twitch-gui[6549]: ../../third_party/node-nw/src/node_crypto_bio.h:103:static node::crypto::NodeBIO *node::crypto::NodeBIO::FromBIO(BIO *): Assertion `(bio->ptr) != (nullptr)' failed.
 1: node::Abort() [/opt/streamlink-twitch-gui/lib/libnode.so]
 2: 0x7fc12c69b13c [/opt/streamlink-twitch-gui/lib/libnode.so]
 3: 0x7fc12c74ae7d [/opt/streamlink-twitch-gui/lib/libnode.so]
 4: 0x7fc13c4972e3 [/lib64/libcrypto.so.1.1]
 5: BIO_write [/lib64/libcrypto.so.1.1]
 6: node::crypto::NodeBIO::NewFixed(char const*, unsigned long) [/opt/streamlink-twitch-gui/lib/libnode.so]
 7: 0x7fc12c731fc6 [/opt/streamlink-twitch-gui/lib/libnode.so]
 8: node::crypto::SecureContext::AddRootCerts(v8::FunctionCallbackInfo<v8::Value> const&) [/opt/streamlink-twitch-gui/lib/libnode.so]
 9: 0x7fc140429016 [/opt/streamlink-twitch-gui/lib/libnw.so]

@bastimeyer
Copy link
Member

Yes, I am aware that you can't run the currently used NW.js build on the latest Fedora release. See my post above and follow the instructions. You need to build the app from the nwjs-upgrade branch, which uses a more recent NW.js build that should work on the latest Fedora release.
#603 (comment)

@OlliC
Copy link

OlliC commented Dec 27, 2018

So i have built this version now and indeed it seems to be fixed. Any idea when this will be in the regular version?

@bastimeyer
Copy link
Member

I haven't had the time and motivation to work on Streamlink Twitch GUI in the past weeks.

A couple of things have to be fixed and changed first before I'll be able to publish a new release. The new NW.js version which you are using right now has a few issues which have to be resolved (or they'll have to be ignored for now) and I'm also waiting for the Streamlink 1.0 release.

@OlliC
Copy link

OlliC commented Dec 28, 2018

No problem. Thank you anyway. I will then just use my own compiled version until there is a new release.

@bastimeyer
Copy link
Member

#615 has just been merged.

There are still a couple of things for me to do before I'll be able to publish a new release. I'll keep this thread open until then. So if someone has issues running the current release, please build from the master branch.

@bastimeyer
Copy link
Member

v1.7.0 has just been released:
https://github.com/streamlink/streamlink-twitch-gui/releases/latest

It uses the latest NW.js stable version based on Chromium 73

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants