Prepare for tagging

This commit is contained in:
Nedko 2024-07-01 15:07:12 +03:00
parent 01fc3a0551
commit 21058e5ac4
2 changed files with 17 additions and 20 deletions

View File

@ -96,6 +96,16 @@ int main(int argc, char **argv)
continue;
}
// Download Cover
ok = mcat.download_cover(release.catalog_id, release_folder);
if (!ok)
{
cout << "Could not download cover for release " << release.catalog_id << endl;
continue;
}
// TODO: Resize cover
// Download tracks (1 -- N)
for (Track& track : release.tracks)
{
@ -103,6 +113,7 @@ int main(int argc, char **argv)
// Download MP3
filepath = build_fname(mp3_folder, "", filename);
filepath += ".mp3";
ok = mcat.download_track(release.id, track.id, filepath, FORMAT_MP3);
if (!ok)
{
@ -111,8 +122,11 @@ int main(int argc, char **argv)
continue;
}
// TODO: Tag MP3
// Download FLAC
filepath = build_fname(flac_folder, "", filename);
filepath += ".flac";
ok = mcat.download_track(release.id, track.id, filepath, FORMAT_FLAC);
if (!ok)
{
@ -121,6 +135,8 @@ int main(int argc, char **argv)
continue;
}
// TODO: Tag FLAC
// Download Extended Mix
if (!track.extended_mix_file_id.empty())
{
@ -143,14 +159,6 @@ int main(int argc, char **argv)
}
}
}
// Download Cover
ok = mcat.download_cover(release.catalog_id, release_folder);
if (!ok)
{
cout << "Could not download cover for release " << release.catalog_id << endl;
continue;
}
}
ok = mcat.logout();

View File

@ -502,12 +502,11 @@ bool Monstercat_DL::download_cover(const string& catalog_id, const string& path)
}
bool Monstercat_DL::download_track(const string& release_id,
const string& track_id, const string& path, bool is_mp3)
const string& track_id, const string& filepath, bool is_mp3)
{
CURL_DL& curl = CURL_DL::get_handle();
bool ok;
string url;
string filepath;
stringstream out_data;
ofstream out_file;
@ -537,16 +536,6 @@ bool Monstercat_DL::download_track(const string& release_id,
return false;
}
filepath = path;
if (is_mp3)
{
filepath += ".mp3";
}
else
{
filepath += ".flac";
}
out_file.open(filepath, std::ios::binary);
if (!out_file.is_open())
{