tgorgdotcom / locast2plex

A very simple script to connect locast to Plex's live tv/dvr feature.
MIT License
234 stars 43 forks source link

Unable to Play content. Error log: No such file or directory ffmpeg #261

Open luhem opened 3 years ago

luhem commented 3 years ago

Hi. I'm running this on a Mac. I have everything configured and locast2plex successfully stars w/o any errors. In Plex, its able to find the tuner and add the EPG data. When I attempt to play a channel, I get "Could not tune channel" I've included my log below. I have also installed ffmpeg from homebrew. Is there a specific location where the ffmpeg file should be? I'm novice at cli but I can run command lines if they are given to me :). Also, I've included my $PATH config below as well. Thanks again

echo $PATH -bash: echo/Library/Frameworks/Python.framework/Versions/3.9/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Applications/Server.app/Contents/ServerRoot/usr/bin:/Applications/Server.app/Contents/ServerRoot/usr/sbin: No such file or directory

Python 3.9.5 (v3.9.5:0a7dcbdb13, May 3 2021, 13:17:02) [Clang 6.0 (clang-600.0.57)] on darwin Type "help", "copyright", "credits" or "license()" for more information.

================== RESTART: /usr/local/bin/locast2plex/main.py ================= Initiating Locast2Plex v0.6.5 Opening and Verifying Configuration File. /usr/local/bin/locast2plex/config/config.ini /usr/local/bin/locast2plex/config.ini Loading Configuration File: /usr/local/bin/locast2plex/config.ini Tuner count set to 3 Server is set to run on 127.0.0.1:6077 UUID set to: imlqslvq... Getting user location... Getting location via provided lat\lon coordinates. Got location as Philadelphia - DMA 504 - Lat\Lon xxxx\xxxx Logging into Locast using username xxxxxxxx@gmail.com... Validating User Info... User Info obtained. User didDonate: True User donationExpire: 2021-07-04 16:05:08 Starting First time Stations refresh... Checking FCC facilities database for updates. Online facilities database is newer. Downloading the latest FCC facilities database... Unzipping FCC facilities database... Reading and formatting FCC database... Found 5945 stations. Getting list of stations based on DMA... Found 63 stations for DMA 504 Starting Stations thread... Starting device server on 127.0.0.1:6077 Now listening for requests. Starting SSDP server... Starting First time EPG refresh... FROM CACHE: /usr/local/bin/locast2plex/cache/504_epg/06-06-2021.json FROM CACHE: /usr/local/bin/locast2plex/cache/504_epg/06-07-2021.json FROM CACHE: /usr/local/bin/locast2plex/cache/504_epg/06-08-2021.json FROM CACHE: /usr/local/bin/locast2plex/cache/504_epg/06-09-2021.json FROM CACHE: /usr/local/bin/locast2plex/cache/504_epg/06-10-2021.json FROM CACHE: /usr/local/bin/locast2plex/cache/504_epg/06-11-2021.json Starting EPG thread... Locast2Plex is now online. 127.0.0.1 - - [06/Jun/2021 14:54:32] "GET /discover.json HTTP/1.1" 200 - 127.0.0.1 - - [06/Jun/2021 14:54:32] "GET /lineup.json HTTP/1.1" 200 - 127.0.0.1 - - [06/Jun/2021 14:54:32] "GET /lineup_status.json HTTP/1.1" 200 - Getting station info for 574... Determining best video stream for 574... Found 3 Playlists 574 will use 1280x720 resolution at 2700000bps 127.0.0.1 - - [06/Jun/2021 14:54:32] "GET /watch/574 HTTP/1.1" 200 -

Exception occurred during processing of request from ('127.0.0.1', 50184) Traceback (most recent call last): File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/socketserver.py", line 316, in _handle_request_noblock self.process_request(request, client_address) File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/socketserver.py", line 347, in process_request self.finish_request(request, client_address) File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/socketserver.py", line 360, in finish_request self.RequestHandlerClass(request, client_address, self) File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/socketserver.py", line 747, in init self.handle() File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/http/server.py", line 427, in handle self.handle_one_request() File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/http/server.py", line 415, in handle_one_request method() File "/usr/local/bin/locast2plex/lib/tuner_interface.py", line 109, in do_GET self.do_tuning(contentPath.replace('/watch/', '')) File "/usr/local/bin/locast2plex/lib/tuner_interface.py", line 347, in do_tuning ffmpeg_proc = subprocess.Popen(ffmpeg_command, stdout=subprocess.PIPE) File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/subprocess.py", line 951, in init self._execute_child(args, executable, preexec_fn, close_fds, File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/subprocess.py", line 1821, in _execute_child raise child_exception_type(errno_num, err_msg, err_filename) FileNotFoundError: [Errno 2] No such file or directory: 'ffmpeg'

Getting station info for 574... Determining best video stream for 574... Found 3 Playlists 574 will use 1280x720 resolution at 2700000bps 127.0.0.1 - - [06/Jun/2021 14:54:34] "GET /watch/574 HTTP/1.1" 200 -

Exception occurred during processing of request from ('127.0.0.1', 50187) Traceback (most recent call last): File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/socketserver.py", line 316, in _handle_request_noblock self.process_request(request, client_address) 127.0.0.1 - - [06/Jun/2021 14:54:35] "GET /discover.json HTTP/1.1" 200 - File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/socketserver.py", line 347, in process_request self.finish_request(request, client_address) 127.0.0.1 - - [06/Jun/2021 14:54:35] "GET /lineup_status.json HTTP/1.1" 200 - File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/socketserver.py", line 360, in finish_request self.RequestHandlerClass(request, client_address, self) File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/socketserver.py", line 747, in init self.handle() File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/http/server.py", line 427, in handle self.handle_one_request() File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/http/server.py", line 415, in handle_one_request method() File "/usr/local/bin/locast2plex/lib/tuner_interface.py", line 109, in do_GET self.do_tuning(contentPath.replace('/watch/', '')) File "/usr/local/bin/locast2plex/lib/tuner_interface.py", line 347, in do_tuning ffmpeg_proc = subprocess.Popen(ffmpeg_command, stdout=subprocess.PIPE) File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/subprocess.py", line 951, in init self._execute_child(args, executable, preexec_fn, close_fds, File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/subprocess.py", line 1821, in _execute_child raise child_exception_type(errno_num, err_msg, err_filename) FileNotFoundError: [Errno 2] No such file or directory: 'ffmpeg'

Getting station info for 574... Determining best video stream for 574... Found 3 Playlists 574 will use 1280x720 resolution at 2700000bps 127.0.0.1 - - [06/Jun/2021 14:54:38] "GET /watch/574 HTTP/1.1" 200 -

Exception occurred during processing of request from ('127.0.0.1', 50196) Traceback (most recent call last): 127.0.0.1 - - [06/Jun/2021 14:54:38] "GET /discover.json HTTP/1.1" 200 - 127.0.0.1 - - [06/Jun/2021 14:54:38] "GET /lineup_status.json HTTP/1.1" 200 - File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/socketserver.py", line 316, in _handle_request_noblock self.process_request(request, client_address) File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/socketserver.py", line 347, in process_request self.finish_request(request, client_address) File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/socketserver.py", line 360, in finish_request self.RequestHandlerClass(request, client_address, self) File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/socketserver.py", line 747, in init self.handle() File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/http/server.py", line 427, in handle self.handle_one_request() File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/http/server.py", line 415, in handle_one_request method() File "/usr/local/bin/locast2plex/lib/tuner_interface.py", line 109, in do_GET self.do_tuning(contentPath.replace('/watch/', '')) File "/usr/local/bin/locast2plex/lib/tuner_interface.py", line 347, in do_tuning ffmpeg_proc = subprocess.Popen(ffmpeg_command, stdout=subprocess.PIPE) File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/subprocess.py", line 951, in init self._execute_child(args, executable, preexec_fn, close_fds, File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/subprocess.py", line 1821, in _execute_child raise child_exception_type(errno_num, err_msg, err_filename) FileNotFoundError: [Errno 2] No such file or directory: 'ffmpeg'

127.0.0.1 - - [06/Jun/2021 14:54:41] "GET /discover.json HTTP/1.1" 200 - 127.0.0.1 - - [06/Jun/2021 14:54:41] "GET /lineup_status.json HTTP/1.1" 200 - Getting station info for 574... Determining best video stream for 574... Found 3 Playlists 574 will use 1280x720 resolution at 2700000bps 127.0.0.1 - - [06/Jun/2021 14:54:43] "GET /watch/574 HTTP/1.1" 400 - 127.0.0.1 - - [06/Jun/2021 14:54:44] "GET /discover.json HTTP/1.1" 200 - 127.0.0.1 - - [06/Jun/2021 14:54:44] "GET /lineup_status.json HTTP/1.1" 200 - 127.0.0.1 - - [06/Jun/2021 14:54:47] "GET /discover.json HTTP/1.1" 200 - 127.0.0.1 - - [06/Jun/2021 14:54:47] "GET /lineup_status.json HTTP/1.1" 200 - Getting station info for 574... Determining best video stream for 574... Found 3 Playlists 127.0.0.1 - - [06/Jun/2021 14:54:51] "GET /discover.json HTTP/1.1" 200 - 574 will use 1280x720 resolution at 2700000bps127.0.0.1 - - [06/Jun/2021 14:54:51] "GET /lineup_status.json HTTP/1.1" 200 -

127.0.0.1 - - [06/Jun/2021 14:54:51] "GET /watch/574 HTTP/1.1" 400 - 127.0.0.1 - - [06/Jun/2021 14:54:54] "GET /discover.json HTTP/1.1" 200 - 127.0.0.1 - - [06/Jun/2021 14:54:54] "GET /lineup_status.json HTTP/1.1" 200 - 127.0.0.1 - - [06/Jun/2021 14:54:57] "GET /discover.json HTTP/1.1" 200 - 127.0.0.1 - - [06/Jun/2021 14:54:57] "GET /lineup_status.json HTTP/1.1" 200 -

rocky4546 commented 3 years ago

simple issue. You are running in a non-windows OS. locast2plex will assume the PATH variable includes the location of the ffmpeg executable. All you need is to update the PATH variable to include the path to ffmpeg folder before starting the app. Normally in the linux world, typing which ffmpeg will either tell you it can find it and where it is located or not find it.