-
Notifications
You must be signed in to change notification settings - Fork 34
Description
I don't know if it's my python install, or something to do with the PATH variable or what, but this happens whenever I try a Play URL such as http://localhost:5000/youtube/direct/dQw4w9WgXcQ
[2025-12-22 23:04:28,456] ERROR in app: Exception on /youtube/direct/dQw4w9WgXcQ [GET]
Traceback (most recent call last):
File "C:\Users\User\AppData\Local\Programs\Python\Python310\lib\site-packages\flask\app.py", line 2528, in wsgi_app
response = self.full_dispatch_request()
File "C:\Users\User\AppData\Local\Programs\Python\Python310\lib\site-packages\flask\app.py", line 1825, in full_dispatch_request
rv = self.handle_user_exception(e)
File "C:\Users\User\AppData\Local\Programs\Python\Python310\lib\site-packages\flask\app.py", line 1823, in full_dispatch_request
rv = self.dispatch_request()
File "C:\Users\User\AppData\Local\Programs\Python\Python310\lib\site-packages\flask\app.py", line 1799, in dispatch_request
return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)
File "C:\ProgramData\ytdlp2STRM\plugins\youtube\routes.py", line 16, in youtube_direct
return direct(youtube_id, request.remote_addr)
File "C:\ProgramData\ytdlp2STRM\plugins\youtube\youtube.py", line 900, in direct
full_info_json_str = w.worker(command).output()
File "C:\ProgramData\ytdlp2STRM\clases\worker\worker.py", line 22, in output
process = subprocess.run(
File "C:\Users\User\AppData\Local\Programs\Python\Python310\lib\subprocess.py", line 503, in run
with Popen(*popenargs, **kwargs) as process:
File "C:\Users\User\AppData\Local\Programs\Python\Python310\lib\subprocess.py", line 971, in __init__
self._execute_child(args, executable, preexec_fn, close_fds,
File "C:\Users\User\AppData\Local\Programs\Python\Python310\lib\subprocess.py", line 1456, in _execute_child
hp, ht, pid, tid = _winapi.CreateProcess(executable, args,
FileNotFoundError: [WinError 2] The system cannot find the file specified
Exception in thread Thread-2:
Traceback (most recent call last):
File "C:\Users\User\AppData\Local\Programs\Python\Python310\lib\threading.py", line 1016, in _bootstrap_inner
self.run()
File "C:\ProgramData\ytdlp2STRM\clases\cron\cron.py", line 42, in run
self.watch_config()
File "C:\ProgramData\ytdlp2STRM\clases\cron\cron.py", line 97, in watch_config
schedule.run_pending()
File "C:\Users\User\AppData\Local\Programs\Python\Python310\lib\site-packages\schedule\__init__.py", line 854, in run_pending
default_scheduler.run_pending()
File "C:\Users\User\AppData\Local\Programs\Python\Python310\lib\site-packages\schedule\__init__.py", line 101, in run_pending
self._run_job(job)
File "C:\Users\User\AppData\Local\Programs\Python\Python310\lib\site-packages\schedule\__init__.py", line 173, in _run_job
ret = job.run()
File "C:\Users\User\AppData\Local\Programs\Python\Python310\lib\site-packages\schedule\__init__.py", line 691, in run
ret = self.job_func()
File "C:\ProgramData\ytdlp2STRM\cli.py", line 64, in main
r = eval("{}.{}.{}".format("plugins",method,"to_strm"))(*params)
File "C:\ProgramData\ytdlp2STRM\plugins\youtube\youtube.py", line 674, in to_strm
videos = yt.get_results()
File "C:\ProgramData\ytdlp2STRM\plugins\youtube\youtube.py", line 143, in get_results
self.channel_name = self.get_channel_name()
File "C:\ProgramData\ytdlp2STRM\plugins\youtube\youtube.py", line 398, in get_channel_name
channel_name = w.worker(command).output().strip().replace('"', '')
File "C:\ProgramData\ytdlp2STRM\clases\worker\worker.py", line 22, in output
process = subprocess.run(
File "C:\Users\User\AppData\Local\Programs\Python\Python310\lib\subprocess.py", line 503, in run
with Popen(*popenargs, **kwargs) as process:
File "C:\Users\User\AppData\Local\Programs\Python\Python310\lib\subprocess.py", line 971, in __init__
self._execute_child(args, executable, preexec_fn, close_fds,
File "C:\Users\User\AppData\Local\Programs\Python\Python310\lib\subprocess.py", line 1456, in _execute_child
hp, ht, pid, tid = _winapi.CreateProcess(executable, args,
FileNotFoundError: [WinError 2] The system cannot find the file specified
also whenever i hit run on the youtube card in the dashboard the console process looks like it's doing something but nothing ever happens. It always starts with the first channel in the list even though I had run it seconds before which tells me there's a loop and it isn't working due to some underlying problem. I searched around all the open and closed issues to learn clues and what to expect and it's more than this:
$ python cli.py --media youtube --params direct
[2025-12-22 23:13:57.815494] CLI : Running youtube with ['direct'] params
[2025-12-22 23:13:57.815494] youtube : ---------------
[2025-12-22 23:13:57.816501] youtube : Working https://www.youtube.com/@REDACTED
also the cron job never seems to run even though i changed it to once a minute.
looks like it's trying to run a binary called yt-dlp but i don't think i have that installed. looking into it now
FIXED!
Had to install yt-dlp and now it's coming to life!
in powershell I ran this, then restarted the scheduled task
winget install yt-dlp.yt-dlp
so I guess this is just a remark about the documentation file, that it needs the dependency listed under ffmpeg and python (btw it is broken under the newest version of python, so the documentation should be more specific than just python 3 for its breaking changes within the major version
my only quesion now is how does the jellyfin integration setup besides generating a key and copying it and setting the library name and jellyfin url, etc. and set jellyfin integration it to True, all the obvious things I guessed ok, but it's still not working. I tried making a library, do i have to point the library at some folder containing the playlists files generated? it would be nice if this were added to the documentation.
I see now that the deal is that the strm_output_folder points to the location where media is stored, and that jellyfin should probably point to it as well. But, it would be nice to know that right off the bat, apologies if i missed it