ytdl now works quite reliably, but...

We still need to handle all errors and possibly handle edge cases of
playlists and non urls better. The UI needs a lot of work too, but
this is a good start of the feature.
This commit is contained in:
Chris Cochrun 2023-04-22 07:17:03 -05:00
parent 666c22ae66
commit 67d7f960ed

View file

@ -35,18 +35,19 @@ mod ytdl {
data_dir.push("librepresenter");
data_dir.push("ytdl");
if !data_dir.exists() {
fs::create_dir(&data_dir);
fs::create_dir(&data_dir).expect("Could not create ytdl dir");
}
println!("{:?}", data_dir);
}
self.as_mut().set_loading(true);
let thread = self.qt_thread();
thread::spawn(move || {
let url = url.to_string();
let output_dirs = "/home/chris/Videos/";
let output_dirs = data_dir.to_str().unwrap();
println!("{output_dirs}");
let ytdl = YoutubeDl::new(url)
.socket_timeout("15")
.output_directory(output_dirs)
.output_template("%(title)s.%(ext)s")
.download(true)
.run()
.unwrap();
@ -63,6 +64,9 @@ mod ytdl {
})
});
true
} else {
false
}
}
}
}