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

[BUG] Windows: FileNotFoundError: [WinError 2] The system cannot find the file specified #306

Open
RecursiveFunctions opened this issue Dec 29, 2023 · 1 comment

Comments

@RecursiveFunctions
Copy link

Describe the bug
After downloading a song with yt-dlp, the song never plays. Error messages suggest it can't find the file.

PS C:\Users\Ray\Documents\GitHub\pikaraoke> .\pikaraoke.bat --headless
C:\Users\Ray\Documents\GitHub\pikaraoke\app.py:617: SyntaxWarning: invalid escape sequence '\S'
  return os.path.join(os.path.dirname(__file__), ".venv\Scripts\yt-dlp.exe")
C:\Users\Ray\Documents\GitHub\pikaraoke\app.py:642: SyntaxWarning: invalid escape sequence '\p'
  legacy_directory = os.path.expanduser("~\pikaraoke\songs")
C:\Users\Ray\Documents\GitHub\pikaraoke\app.py:646: SyntaxWarning: invalid escape sequence '\p'
  return "~\pikaraoke-songs"
[2023-12-28 22:32:41] INFO: Fetching available songs in: C:\Users\Ray\pikaraoke-songs/
[28/Dec/2023:22:32:41] ENGINE Bus STARTING
[2023-12-28 22:32:41] INFO: [28/Dec/2023:22:32:41] ENGINE Bus STARTING
[28/Dec/2023:22:32:42] ENGINE Serving on http://0.0.0.0:5555
[2023-12-28 22:32:42] INFO: [28/Dec/2023:22:32:42] ENGINE Serving on http://0.0.0.0:5555
[28/Dec/2023:22:32:42] ENGINE Bus STARTED
[2023-12-28 22:32:42] INFO: [28/Dec/2023:22:32:42] ENGINE Bus STARTED
[2023-12-28 22:32:42] INFO: Starting PiKaraoke!
[2023-12-28 22:32:42] INFO: Connect the player host to: http://x:5555/splash
[2023-12-28 22:32:47] INFO: Song ending: None
[2023-12-28 22:32:54] INFO: 'Ray' is adding song to queue: C:/Users/Ray/pikaraoke-songs/Welbilt - Evrything's Alright Karaoke---S5XIoTHjczQ.mp4
[2023-12-28 22:32:57] INFO: Playing file: C:/Users/Ray/pikaraoke-songs/Welbilt - Evrything's Alright Karaoke---S5XIoTHjczQ.mp4 transposed 0 semitones
Traceback (most recent call last):
  File "C:\Users\Ray\Documents\GitHub\pikaraoke\app.py", line 872, in <module>
    k.run()
  File "C:\Users\Ray\Documents\GitHub\pikaraoke\karaoke.py", line 649, in run
    self.play_file(self.queue[0]["file"], self.queue[0]["semitones"])
  File "C:\Users\Ray\Documents\GitHub\pikaraoke\karaoke.py", line 411, in play_file
    self.ffmpeg_process = output.run_async(pipe_stderr=True, pipe_stdin=True)
                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\Ray\Documents\GitHub\pikaraoke\.venv\Lib\site-packages\ffmpeg\_run.py", line 284, in run_async
    return subprocess.Popen(
           ^^^^^^^^^^^^^^^^^
  File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.12_3.12.496.0_x64__qbz5n2kfra8p0\Lib\subprocess.py", line 1026, in __init__
    self._execute_child(args, executable, preexec_fn, close_fds,
  File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.12_3.12.496.0_x64__qbz5n2kfra8p0\Lib\subprocess.py", line 1538, in _execute_child
    hp, ht, pid, tid = _winapi.CreateProcess(executable, args,
                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
FileNotFoundError: [WinError 2] The system cannot find the file specified

PS C:\Users\Ray\Documents\GitHub\pikaraoke> .\pikaraoke.bat --headless
C:\Users\Ray\Documents\GitHub\pikaraoke\app.py:617: SyntaxWarning: invalid escape sequence '\S'
  return os.path.join(os.path.dirname(__file__), ".venv\Scripts\yt-dlp.exe")
C:\Users\Ray\Documents\GitHub\pikaraoke\app.py:642: SyntaxWarning: invalid escape sequence '\p'
  legacy_directory = os.path.expanduser("~\pikaraoke\songs")
C:\Users\Ray\Documents\GitHub\pikaraoke\app.py:646: SyntaxWarning: invalid escape sequence '\p'
  return "~\pikaraoke-songs"
[2023-12-28 22:48:07] INFO: Fetching available songs in: C:\Users\Ray\pikaraoke-songs/
[28/Dec/2023:22:48:07] ENGINE Bus STARTING
[2023-12-28 22:48:07] INFO: [28/Dec/2023:22:48:07] ENGINE Bus STARTING
[28/Dec/2023:22:48:08] ENGINE Serving on http://0.0.0.0:5555
[2023-12-28 22:48:08] INFO: [28/Dec/2023:22:48:08] ENGINE Serving on http://0.0.0.0:5555
[28/Dec/2023:22:48:08] ENGINE Bus STARTED
[2023-12-28 22:48:08] INFO: [28/Dec/2023:22:48:08] ENGINE Bus STARTED
[2023-12-28 22:48:08] INFO: Starting PiKaraoke!
[2023-12-28 22:48:08] INFO: Connect the player host to: http://x:5555/splash
[2023-12-28 22:48:12] INFO: Song ending: None
[2023-12-28 22:48:26] INFO: Searching YouTube for: Sugar karaoke
[2023-12-28 22:48:30] INFO: Downloading video: https://www.youtube.com/watch?v=PqX8aA6w4bM
[youtube] Extracting URL: https://www.youtube.com/watch?v=PqX8aA6w4bM
[youtube] PqX8aA6w4bM: Downloading webpage
[youtube] PqX8aA6w4bM: Downloading ios player API JSON
[youtube] PqX8aA6w4bM: Downloading android player API JSON
[youtube] PqX8aA6w4bM: Downloading m3u8 information
[info] PqX8aA6w4bM: Downloading 1 format(s): 22
[download] Destination: C:\Users\Ray\pikaraoke-songs\Maroon 5 - Sugar (Karaoke Version)---PqX8aA6w4bM.mp4
[download] 100% of    5.77MiB in 00:00:01 at 5.06MiB/s
[2023-12-28 22:48:34] INFO: Fetching available songs in: C:\Users\Ray\pikaraoke-songs/
[2023-12-28 22:48:34] INFO: 'Ray' is adding song to queue: C:/Users/Ray/pikaraoke-songs/Maroon 5 - Sugar (Karaoke Version)---PqX8aA6w4bM.mp4
[2023-12-28 22:48:37] INFO: Playing file: C:/Users/Ray/pikaraoke-songs/Maroon 5 - Sugar (Karaoke Version)---PqX8aA6w4bM.mp4 transposed 0 semitones
Traceback (most recent call last):
  File "C:\Users\Ray\Documents\GitHub\pikaraoke\app.py", line 872, in <module>
    k.run()
  File "C:\Users\Ray\Documents\GitHub\pikaraoke\karaoke.py", line 649, in run
    self.play_file(self.queue[0]["file"], self.queue[0]["semitones"])
  File "C:\Users\Ray\Documents\GitHub\pikaraoke\karaoke.py", line 411, in play_file
    self.ffmpeg_process = output.run_async(pipe_stderr=True, pipe_stdin=True)
                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\Ray\Documents\GitHub\pikaraoke\.venv\Lib\site-packages\ffmpeg\_run.py", line 284, in run_async
    return subprocess.Popen(
           ^^^^^^^^^^^^^^^^^
  File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.12_3.12.496.0_x64__qbz5n2kfra8p0\Lib\subprocess.py", line 1026, in __init__
    self._execute_child(args, executable, preexec_fn, close_fds,
  File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.12_3.12.496.0_x64__qbz5n2kfra8p0\Lib\subprocess.py", line 1538, in _execute_child
    hp, ht, pid, tid = _winapi.CreateProcess(executable, args,
                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
FileNotFoundError: [WinError 2] The system cannot find the file specified
PS C:\Users\Ray\Documents\GitHub\pikaraoke> .\pikaraoke.bat --headless -l 1
C:\Users\Ray\Documents\GitHub\pikaraoke\app.py:617: SyntaxWarning: invalid escape sequence '\S'
  return os.path.join(os.path.dirname(__file__), ".venv\Scripts\yt-dlp.exe")
C:\Users\Ray\Documents\GitHub\pikaraoke\app.py:642: SyntaxWarning: invalid escape sequence '\p'
  legacy_directory = os.path.expanduser("~\pikaraoke\songs")
C:\Users\Ray\Documents\GitHub\pikaraoke\app.py:646: SyntaxWarning: invalid escape sequence '\p'
  return "~\pikaraoke-songs"
[2023-12-28 22:59:13] DEBUG:
    http port: 5555
    ffmpeg port 5556
    hide URL: False
    prefer IP: False
    url override: None
    hide RaspiWiFi instructions: False
    headless (hide splash): True
    splash_delay: 3
    screensaver_timeout: 300
    high quality video: False
    download path: C:\Users\Ray\pikaraoke-songs/
    default volume: 0.85
    youtube-dl path: C:\Users\Ray\Documents\GitHub\pikaraoke\.venv\Scripts\yt-dlp.exe
    logo path: C:\Users\Ray\Documents\GitHub\pikaraoke\logo.png
    log_level: 1
    hide overlay: False

[2023-12-28 22:59:13] DEBUG: IP address (for QR code and splash screen): 192.168.1.120
[2023-12-28 22:59:13] INFO: Fetching available songs in: C:\Users\Ray\pikaraoke-songs/
[2023-12-28 22:59:13] DEBUG: adding song: Maroon 5 - Sugar (Karaoke Version)---PqX8aA6w4bM.mp4
[2023-12-28 22:59:13] DEBUG: adding song: Welbilt - Evrything's Alright Karaoke---S5XIoTHjczQ.mp4
[2023-12-28 22:59:14] DEBUG: Generating URL QR code
[28/Dec/2023:22:59:14] ENGINE Bus STARTING
[2023-12-28 22:59:14] INFO: [28/Dec/2023:22:59:14] ENGINE Bus STARTING
[28/Dec/2023:22:59:14] ENGINE Serving on http://0.0.0.0:5555
[2023-12-28 22:59:14] INFO: [28/Dec/2023:22:59:14] ENGINE Serving on http://0.0.0.0:5555
[28/Dec/2023:22:59:14] ENGINE Bus STARTED
[2023-12-28 22:59:14] INFO: [28/Dec/2023:22:59:14] ENGINE Bus STARTED
[2023-12-28 22:59:14] INFO: Starting PiKaraoke!
[2023-12-28 22:59:14] INFO: Connect the player host to: http://x:5555/splash
[2023-12-28 22:59:34] INFO: 'Ray' is adding song to queue: C:/Users/Ray/pikaraoke-songs/Maroon 5 - Sugar (Karaoke Version)---PqX8aA6w4bM.mp4
[2023-12-28 22:59:38] INFO: Playing file: C:/Users/Ray/pikaraoke-songs/Maroon 5 - Sugar (Karaoke Version)---PqX8aA6w4bM.mp4 transposed 0 semitones
[2023-12-28 22:59:38] DEBUG: COMMAND: ffmpeg -i C:/Users/Ray/pikaraoke-songs/Maroon 5 - Sugar (Karaoke Version)---PqX8aA6w4bM.mp4 -map 0:a -map 0:v -f mp4 -b:v 5M -acodec copy -listen 1 -movflags frag_keyframe+default_base_moof -vcodec copy http://0.0.0.0:5556/1703833178
[2023-12-28 22:59:38] DEBUG: Killing ffmpeg process
Traceback (most recent call last):
  File "C:\Users\Ray\Documents\GitHub\pikaraoke\app.py", line 872, in <module>
    k.run()
  File "C:\Users\Ray\Documents\GitHub\pikaraoke\karaoke.py", line 649, in run
    self.play_file(self.queue[0]["file"], self.queue[0]["semitones"])
  File "C:\Users\Ray\Documents\GitHub\pikaraoke\karaoke.py", line 411, in play_file
    self.ffmpeg_process = output.run_async(pipe_stderr=True, pipe_stdin=True)
                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\Ray\Documents\GitHub\pikaraoke\.venv\Lib\site-packages\ffmpeg\_run.py", line 284, in run_async
    return subprocess.Popen(
           ^^^^^^^^^^^^^^^^^
  File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.12_3.12.496.0_x64__qbz5n2kfra8p0\Lib\subprocess.py", line 1026, in __init__
    self._execute_child(args, executable, preexec_fn, close_fds,
  File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.12_3.12.496.0_x64__qbz5n2kfra8p0\Lib\subprocess.py", line 1538, in _execute_child
    hp, ht, pid, tid = _winapi.CreateProcess(executable, args,
                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
FileNotFoundError: [WinError 2] The system cannot find the file specified

To Reproduce
Steps to reproduce the behavior:
run pikaraoke.bat --headless
download a song from youtube and add it to the queue

Expected behavior
The song should queue up normally.

Platform (please complete the following information):
Edition Windows 11 Home
Version 22H2
Installed on ‎6/‎23/‎2023
OS build 22621.2861
Experience Windows Feature Experience Pack 1000.22681.1000.0

Browser: Brave

Processor AMD Ryzen Z1 Extreme 3.30 GHz
Installed RAM 16.0 GB (11.7 GB usable)
System type 64-bit operating system, x64-based processor
Pen and touch Touch support with 10 touch points

Additional context
The hardware is an ROG Ally. Comes with Windows 11 by default.
There are some syntax warnings in the error messages like invalid escape sequence /S /p
I'm using version 1.2 for pikaraoke main branch

@vicwomg
Copy link
Owner

vicwomg commented Dec 29, 2023 via email

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

No branches or pull requests

2 participants