chrippa / livestreamer

Command-line utility that extracts streams from various services and pipes them into a video player of choice. No longer maintained, use streamlink or youtube-dl instead.
http://livestreamer.io/
BSD 2-Clause "Simplified" License
3.88k stars 583 forks source link

What can cause <io.BufferedReader name=8> ValueError? #1245

Closed AleXoundOS closed 8 years ago

AleXoundOS commented 8 years ago

Sometimes a get this error using 1.12.2 version and this command: livestreamer -v --no-version-check --hls-segment-timeout 4 --hls-segment-attempts 2 --hls-timeout 16 --hls-segment-threads 4 --hls-live-edge 4 --http-timeout 16 --rtmp-timeout 13 afreeca.com/psn 1555 best -O

[cli][info] Found matching plugin afreeca for URL afreeca.com/psn1555090.8kbits/s
[cli][info] Available streams: live (best, worst), live_hls bitrate=1091.8kbits/s
[cli][info] Opening stream: live (rtmp) Traceback (most recent call last): 18257kB time=00:02:16.84 bitrate=1092.9kbits/s
File "/usr/bin/livestreamer", line 9, in load_entry_point('livestreamer==1.12.2', 'console_scripts', 'livestreamer')() File "/usr/lib/python3.4/site-packages/livestreamer_cli/main.py", line 886, in main handle_url() File "/usr/lib/python3.4/site-packages/livestreamer_cli/main.py", line 491, in handle_url handle_stream(plugin, streams, stream_name) File "/usr/lib/python3.4/site-packages/livestreamer_cli/main.py", line 378, in handle_stream success = output_stream(stream) File "/usr/lib/python3.4/site-packages/livestreamer_cli/main.py", line 245, in output_stream stream_fd, prebuffer = open_stream(stream) File "/usr/lib/python3.4/site-packages/livestreamer_cli/main.py", line 222, in open_stream stream_fd = stream.open() File "/usr/lib/python3.4/site-packages/livestreamer/stream/rtmpdump.py", line 51, in open self._check_redirect() File "/usr/lib/python3.4/site-packages/livestreamer/stream/rtmpdump.py", line 85, in _check_redirect stderr = stream.stderr() File "/usr/lib/python3.4/site-packages/livestreamer/packages/pbs.py", line 204, in stderr if self.call_args["bg"]: self.wait() File "/usr/lib/python3.4/site-packages/livestreamer/packages/pbs.py", line 210, in wait return str(self) File "/usr/lib/python3.4/site-packages/livestreamer/packages/pbs.py", line 163, in str if IS_PY3: return self.unicode() File "/usr/lib/python3.4/site-packages/livestreamer/packages/pbs.py", line 168, in unicode if self.call_args["bg"]: self.wait() File "/usr/lib/python3.4/site-packages/livestreamer/packages/pbs.py", line 208, in wait self._stdout, self._stderr = self.process.communicate() File "/usr/lib/python3.4/subprocess.py", line 960, in communicate stdout, stderr = self._communicate(input, endtime, timeout) File "/usr/lib/python3.4/subprocess.py", line 1608, in _communicate selector.register(self.stdout, selectors.EVENT_READ) File "/usr/lib/python3.4/selectors.py", line 342, in register key = super().register(fileobj, events, data) File "/usr/lib/python3.4/selectors.py", line 228, in register key = SelectorKey(fileobj, self._fileobj_lookup(fileobj), events, data) File "/usr/lib/python3.4/selectors.py", line 215, in _fileobj_lookup return _fileobj_to_fd(fileobj) File "/usr/lib/python3.4/selectors.py", line 39, in _fileobj_to_fd "{!r}".format(fileobj)) from None ValueError: Invalid file object: <_io.BufferedReader name=8>

livestreamer exits with code 0

AleXoundOS commented 8 years ago

Ignoring SIGCHLD signal in the process that spawned livestreamer causes this. I have a python program that launches livestreamer using Popen. Before launching livestreamer it had this line: signal.signal(signal.SIGCHLD, signal.SIG_IGN).