Fix crash if FFmpeg isn't found

`EncoderFFmpeg()` objects are now initialized while the program is
running, instead on invocation.
This commit is contained in:
Ritiek Malhotra
2020-05-19 00:07:35 +05:30
parent 29b1f31a26
commit 046e7e9d3c
2 changed files with 8 additions and 4 deletions

View File

@@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
The release dates mentioned follow the format `DD-MM-YYYY`.
## [Unreleased]
### Fixed
- Failure on invoking spotdl if FFmpeg isn't found. It should now warn about missing
FFmpeg and move ahead without encoding. [@ritiek](https://github.com/ritiek)
(29b1f31a2622f749df83c3072c4cbb22615bff95)
## [2.0.3] (Hotfix Release) - 18-05-2020
### Fixed

View File

@@ -44,9 +44,9 @@ class Track:
return progress_bar
def download_while_re_encoding(self, stream, target_path, target_encoding=None,
encoder=EncoderFFmpeg(), show_progress=True):
encoder=EncoderFFmpeg, show_progress=True):
total_chunks = self.calculate_total_chunks(stream["filesize"])
process = encoder.re_encode_from_stdin(
process = encoder().re_encode_from_stdin(
stream["encoding"],
target_path,
target_encoding=target_encoding
@@ -80,10 +80,10 @@ class Track:
writer(response, progress_bar, file_io)
def re_encode(self, input_path, target_path, target_encoding=None,
encoder=EncoderFFmpeg(), show_progress=True):
encoder=EncoderFFmpeg, show_progress=True):
stream = self.metadata["streams"].getbest()
total_chunks = self.calculate_total_chunks(stream["filesize"])
process = encoder.re_encode_from_stdin(
process = encoder().re_encode_from_stdin(
stream["encoding"],
target_path,
target_encoding=target_encoding