mps-youtube / yewtube

yewtube, forked from mps-youtube , is a Terminal based YouTube player and downloader. No Youtube API key required.
GNU General Public License v3.0
8.09k stars 644 forks source link

SDL_Init failed, Error opening/initializing the selected video_out (--vo) device #1144

Closed Kadigan closed 1 year ago

Kadigan commented 3 years ago

Unable to play anything.

Getting a cycle of error: retrying.

Running mpsyt --debug playurl 5qap5aO4i9A nets me:

Playing: (m3u8 url)
 (+) Video --vid=1 (h264 1920x1080 30.000fps)
 (+) Audio --aid=1 (aac 2ch 48000Hz)
[vo/sdl] SDL_Init failed
Error opening/initializing the selected video_out (--vo) device.
Video: no video

Exiting... (Errors when loading file)

This happens in a repeating loop.

The device I have is a devboard using an ARM processor. It has no video card installed, or even available. There is no way to attach a video device to this system, except maybe through USB.

How can I disable video attempts altogether? Google has been very unhelpful in this matter.

Environment

mpsyt --version result:

mpsyt version      : 0.2.8
   notes           : released 17 February 2018
pafy version       : 0.5.5 (youtube-dl backend)
youtube-dl version : 2021.01.24.1
Python version     : 3.7.3 (default, Jul 25 2020, 13:03:44)
[GCC 8.3.0]
Processor          :
Machine type       : aarch64
Architecture       : 64bit, ELF
Platform           : Linux-4.19.68-dirty-aarch64-with-debian-10.7
sys.stdout.enc     : UTF-8
default enc        : utf-8
Config dir         : ~/.config/mps-youtube
env:TERM           : xterm
env:SHELL          : /bin/bash
env:LANG           : en_US.UTF-8
env:LANGUAGE       : en_US:en"
Kadigan commented 3 years ago

From what I can tell (or see), mpsyt uses mpv for playback, so adding --no-video to the launch args should do the trick - but I've no clue where to put that.

darkhz commented 3 years ago

@Kadigan do this in mpsyt: set player mpv set playerargs --no-video

This should do it

Kadigan commented 3 years ago

Yeah, that worked.

For whatever reason, I got quota exceeded on reattempt today, despite feeding it my own API key.

Removing ~/.config/mps-youtube/cache_py_3.7.3 fixed that, but this is the second time in the last 24 hours that I had to delete that file... Can I disable that as well, or do I need to resort to deleting it on each start? :D

darkhz commented 3 years ago

@Kadigan for now you can set a cronjob or a script that deletes the cache on each mpsyt startup, I've done that as a temporary workaround for now.