Metadata is now being written to
This commit is contained in:
36
src/main.rs
36
src/main.rs
@@ -227,9 +227,12 @@ pub async fn apply_metadata(
|
||||
let types = song_io::metadata_types().await;
|
||||
|
||||
for t in types {
|
||||
// let meta_type = icarus_meta::types::
|
||||
// icarus_meta::meta::metadata::set_meta_value(t, &s_path, meta_type);
|
||||
match t {
|
||||
icarus_meta::types::Type::Album => {
|
||||
match icarus_meta::meta::metadata::set_meta(t, &s_path, &metadata.album) {
|
||||
let meta_type = icarus_meta::types::MetadataType::from_string(metadata.album.clone());
|
||||
match icarus_meta::meta::metadata::set_meta_value(t, &s_path, meta_type) {
|
||||
Ok(_) => {}
|
||||
Err(_err) => {
|
||||
return Err(_err);
|
||||
@@ -237,7 +240,8 @@ pub async fn apply_metadata(
|
||||
}
|
||||
}
|
||||
icarus_meta::types::Type::AlbumArtist => {
|
||||
match icarus_meta::meta::metadata::set_meta(t, &s_path, &metadata.album_artist) {
|
||||
let meta_type = icarus_meta::types::MetadataType::from_string(metadata.album_artist.clone());
|
||||
match icarus_meta::meta::metadata::set_meta_value(t, &s_path, meta_type) {
|
||||
Ok(_) => {}
|
||||
Err(_err) => {
|
||||
return Err(_err);
|
||||
@@ -245,7 +249,8 @@ pub async fn apply_metadata(
|
||||
}
|
||||
}
|
||||
icarus_meta::types::Type::Artist => {
|
||||
match icarus_meta::meta::metadata::set_meta(t, &s_path, &metadata.artist) {
|
||||
let meta_type = icarus_meta::types::MetadataType::from_string(metadata.artist.clone());
|
||||
match icarus_meta::meta::metadata::set_meta_value(t, &s_path, meta_type) {
|
||||
Ok(_) => {}
|
||||
Err(_err) => {
|
||||
return Err(_err);
|
||||
@@ -254,7 +259,8 @@ pub async fn apply_metadata(
|
||||
}
|
||||
icarus_meta::types::Type::Date => {
|
||||
// TODO: Do something about this discrepancy
|
||||
match icarus_meta::meta::metadata::set_meta(t, &s_path, &metadata.year.to_string())
|
||||
let meta_type = icarus_meta::types::MetadataType::from_string(metadata.year.to_string());
|
||||
match icarus_meta::meta::metadata::set_meta_value(t, &s_path, meta_type)
|
||||
{
|
||||
Ok(_) => {}
|
||||
Err(_err) => {
|
||||
@@ -263,7 +269,8 @@ pub async fn apply_metadata(
|
||||
}
|
||||
}
|
||||
icarus_meta::types::Type::Disc => {
|
||||
match icarus_meta::meta::metadata::set_meta(t, &s_path, &metadata.disc.to_string())
|
||||
let meta_type = icarus_meta::types::MetadataType::from_int(metadata.disc);
|
||||
match icarus_meta::meta::metadata::set_meta_value(t, &s_path, meta_type)
|
||||
{
|
||||
Ok(_) => {}
|
||||
Err(_err) => {
|
||||
@@ -272,7 +279,8 @@ pub async fn apply_metadata(
|
||||
}
|
||||
}
|
||||
icarus_meta::types::Type::Genre => {
|
||||
match icarus_meta::meta::metadata::set_meta(t, &s_path, &metadata.genre) {
|
||||
let meta_type = icarus_meta::types::MetadataType::from_string(metadata.genre.clone());
|
||||
match icarus_meta::meta::metadata::set_meta_value(t, &s_path, meta_type) {
|
||||
Ok(_) => {}
|
||||
Err(_err) => {
|
||||
return Err(_err);
|
||||
@@ -280,7 +288,8 @@ pub async fn apply_metadata(
|
||||
}
|
||||
}
|
||||
icarus_meta::types::Type::Title => {
|
||||
match icarus_meta::meta::metadata::set_meta(t, &s_path, &metadata.title) {
|
||||
let meta_type = icarus_meta::types::MetadataType::from_string(metadata.title.clone());
|
||||
match icarus_meta::meta::metadata::set_meta_value(t, &s_path, meta_type) {
|
||||
Ok(_) => {}
|
||||
Err(_err) => {
|
||||
return Err(_err);
|
||||
@@ -288,7 +297,8 @@ pub async fn apply_metadata(
|
||||
}
|
||||
}
|
||||
icarus_meta::types::Type::Track => {
|
||||
match icarus_meta::meta::metadata::set_meta(t, &s_path, &metadata.track.to_string())
|
||||
let meta_type = icarus_meta::types::MetadataType::from_int(metadata.track);
|
||||
match icarus_meta::meta::metadata::set_meta_value(t, &s_path, meta_type)
|
||||
{
|
||||
Ok(_) => {}
|
||||
Err(_err) => {
|
||||
@@ -297,10 +307,11 @@ pub async fn apply_metadata(
|
||||
}
|
||||
}
|
||||
icarus_meta::types::Type::TrackCount => {
|
||||
match icarus_meta::meta::metadata::set_meta(
|
||||
let meta_type = icarus_meta::types::MetadataType::from_int(metadata.track_count);
|
||||
match icarus_meta::meta::metadata::set_meta_value(
|
||||
t,
|
||||
&s_path,
|
||||
&metadata.track_count.to_string(),
|
||||
meta_type
|
||||
) {
|
||||
Ok(_) => {}
|
||||
Err(_err) => {
|
||||
@@ -309,10 +320,11 @@ pub async fn apply_metadata(
|
||||
}
|
||||
}
|
||||
icarus_meta::types::Type::DiscCount => {
|
||||
match icarus_meta::meta::metadata::set_meta(
|
||||
let meta_type = icarus_meta::types::MetadataType::from_int(metadata.disc_count);
|
||||
match icarus_meta::meta::metadata::set_meta_value(
|
||||
t,
|
||||
&s_path,
|
||||
&metadata.disc_count.to_string(),
|
||||
meta_type
|
||||
) {
|
||||
Ok(_) => {}
|
||||
Err(_err) => {
|
||||
|
Reference in New Issue
Block a user