Compare commits

..

No commits in common. "4c37c102cfdd20bc7f35a893f0a6d08b5395b0c8" and "66b35b8e09107e112c846bf6fa4ba40e2d45d090" have entirely different histories.

6 changed files with 52 additions and 55 deletions

View file

@ -1,7 +1,7 @@
[package]
name = "spotifyio-downloader"
description = "CLI for downloading music from Spotify"
version = "0.6.0"
version = "0.5.1"
edition.workspace = true
authors.workspace = true
license.workspace = true

View file

@ -441,7 +441,7 @@ impl SpotifyDownloader {
audio_item.track_id
);
let formats = &[AudioFileFormat::MP4_128, AudioFileFormat::MP4_128_DUAL];
let formats = &[AudioFileFormat::MP4_128];
let (format, file_id) = formats
.iter()

View file

@ -18,10 +18,10 @@ message AudioFile {
MP3_160_ENC = 7;
AAC_24 = 8;
AAC_48 = 9;
MP4_128 = 10;
MP4_256 = 11;
MP4_128_DUAL = 12;
MP4_256_DUAL = 13;
AAC_160 = 10;
AAC_320 = 11;
MP4_128 = 12;
OTHER5 = 13;
FLAC_FLAC = 16;
}
}

View file

@ -292,10 +292,10 @@ message AudioFile {
MP3_160_ENC = 7;
AAC_24 = 8;
AAC_48 = 9;
MP4_128 = 10;
MP4_256 = 11;
MP4_128_DUAL = 12;
MP4_256_DUAL = 13;
AAC_160 = 10;
AAC_320 = 11;
MP4_128 = 12;
MP4_256 = 13;
FLAC_FLAC = 16;
UNKNOWN_FORMAT = 255;
}

View file

@ -59,11 +59,11 @@ pub fn audio_format_extension(format: AudioFileFormat) -> Option<&'static str> {
| AudioFileFormat::MP3_160_ENC
| AudioFileFormat::MP3_256
| AudioFileFormat::MP3_320 => Some(".mp3"),
AudioFileFormat::AAC_24 | AudioFileFormat::AAC_48 => Some(".aac"),
AudioFileFormat::MP4_128
| AudioFileFormat::MP4_128_DUAL
| AudioFileFormat::MP4_256
| AudioFileFormat::MP4_256_DUAL => Some(".m4a"),
AudioFileFormat::AAC_24
| AudioFileFormat::AAC_48
| AudioFileFormat::AAC_160
| AudioFileFormat::AAC_320 => Some(".aac"),
AudioFileFormat::MP4_128 | AudioFileFormat::MP4_256 => Some(".m4a"),
AudioFileFormat::FLAC_FLAC => Some(".flac"),
AudioFileFormat::UNKNOWN_FORMAT => None,
}
@ -79,11 +79,11 @@ pub fn audio_format_mime(format: AudioFileFormat) -> Option<&'static str> {
| AudioFileFormat::MP3_160_ENC
| AudioFileFormat::MP3_256
| AudioFileFormat::MP3_320 => Some("audio/mp3"),
AudioFileFormat::AAC_24 | AudioFileFormat::AAC_48 => Some("audio/aac"),
AudioFileFormat::MP4_128
| AudioFileFormat::MP4_128_DUAL
| AudioFileFormat::MP4_256
| AudioFileFormat::MP4_256_DUAL => Some("audio/mp4"),
AudioFileFormat::AAC_24
| AudioFileFormat::AAC_48
| AudioFileFormat::AAC_160
| AudioFileFormat::AAC_320 => Some("audio/aac"),
AudioFileFormat::MP4_128 | AudioFileFormat::MP4_256 => Some("audio/mp4"),
AudioFileFormat::FLAC_FLAC => Some("audio/flac"),
AudioFileFormat::UNKNOWN_FORMAT => None,
}
@ -94,13 +94,14 @@ pub fn audio_format_bitrate(format: AudioFileFormat) -> Option<u32> {
match format {
AudioFileFormat::OGG_VORBIS_96 | AudioFileFormat::MP3_96 => Some(96000),
AudioFileFormat::OGG_VORBIS_160
| AudioFileFormat::AAC_160
| AudioFileFormat::MP3_160
| AudioFileFormat::MP3_160_ENC => Some(160000),
AudioFileFormat::OGG_VORBIS_320 | AudioFileFormat::MP3_320 => Some(320000),
AudioFileFormat::MP4_128 | AudioFileFormat::MP4_128_DUAL => Some(128000),
AudioFileFormat::MP3_256 | AudioFileFormat::MP4_256 | AudioFileFormat::MP4_256_DUAL => {
Some(256000)
AudioFileFormat::OGG_VORBIS_320 | AudioFileFormat::AAC_320 | AudioFileFormat::MP3_320 => {
Some(320000)
}
AudioFileFormat::MP4_128 => Some(128000),
AudioFileFormat::MP3_256 | AudioFileFormat::MP4_256 => Some(256000),
AudioFileFormat::AAC_24 => Some(24000),
AudioFileFormat::AAC_48 => Some(48000),
AudioFileFormat::FLAC_FLAC | AudioFileFormat::UNKNOWN_FORMAT => None,
@ -116,13 +117,13 @@ pub fn audio_format_available(format: AudioFileFormat, is_premium: bool) -> bool
| AudioFileFormat::MP3_160_ENC
| AudioFileFormat::AAC_24
| AudioFileFormat::AAC_48
| AudioFileFormat::MP4_128
| AudioFileFormat::MP4_128_DUAL => true,
| AudioFileFormat::AAC_160
| AudioFileFormat::MP4_128 => true,
AudioFileFormat::OGG_VORBIS_320
| AudioFileFormat::MP3_256
| AudioFileFormat::MP3_320
| AudioFileFormat::AAC_320
| AudioFileFormat::MP4_256
| AudioFileFormat::MP4_256_DUAL
| AudioFileFormat::FLAC_FLAC => is_premium,
AudioFileFormat::UNKNOWN_FORMAT => false,
}
@ -130,11 +131,5 @@ pub fn audio_format_available(format: AudioFileFormat, is_premium: bool) -> bool
/// Return true if the audio format uses Widevine
pub fn audio_format_widevine(format: AudioFileFormat) -> bool {
matches!(
format,
AudioFileFormat::MP4_128
| AudioFileFormat::MP4_128_DUAL
| AudioFileFormat::MP4_256
| AudioFileFormat::MP4_256_DUAL
)
matches!(format, AudioFileFormat::MP4_128 | AudioFileFormat::MP4_256)
}

View file

@ -28,11 +28,11 @@ pub fn audio_format_extension(format: AudioFileFormat) -> Option<&'static str> {
| AudioFileFormat::MP3_160_ENC
| AudioFileFormat::MP3_256
| AudioFileFormat::MP3_320 => Some(".mp3"),
AudioFileFormat::AAC_24 | AudioFileFormat::AAC_48 => Some(".aac"),
AudioFileFormat::MP4_128
| AudioFileFormat::MP4_128_DUAL
| AudioFileFormat::MP4_256
| AudioFileFormat::MP4_256_DUAL => Some(".m4a"),
AudioFileFormat::AAC_24
| AudioFileFormat::AAC_48
| AudioFileFormat::AAC_160
| AudioFileFormat::AAC_320 => Some(".aac"),
AudioFileFormat::MP4_128 | AudioFileFormat::MP4_256 => Some(".m4a"),
AudioFileFormat::FLAC_FLAC => Some(".flac"),
AudioFileFormat::UNKNOWN_FORMAT => None,
}
@ -48,11 +48,11 @@ pub fn audio_format_mime(format: AudioFileFormat) -> Option<&'static str> {
| AudioFileFormat::MP3_160_ENC
| AudioFileFormat::MP3_256
| AudioFileFormat::MP3_320 => Some("audio/mp3"),
AudioFileFormat::AAC_24 | AudioFileFormat::AAC_48 => Some("audio/aac"),
AudioFileFormat::MP4_128
| AudioFileFormat::MP4_128_DUAL
| AudioFileFormat::MP4_256
| AudioFileFormat::MP4_256_DUAL => Some("audio/mp4"),
AudioFileFormat::AAC_24
| AudioFileFormat::AAC_48
| AudioFileFormat::AAC_160
| AudioFileFormat::AAC_320 => Some("audio/aac"),
AudioFileFormat::MP4_128 | AudioFileFormat::MP4_256 => Some("audio/mp4"),
AudioFileFormat::FLAC_FLAC => Some("audio/flac"),
AudioFileFormat::UNKNOWN_FORMAT => None,
}
@ -66,8 +66,8 @@ pub fn audio_format_bitrate(format: AudioFileFormat) -> Option<u32> {
| AudioFileFormat::MP3_160
| AudioFileFormat::MP3_160_ENC => Some(160000),
AudioFileFormat::OGG_VORBIS_320 | AudioFileFormat::MP3_320 => Some(320000),
AudioFileFormat::MP4_128 | AudioFileFormat::MP4_128_DUAL => Some(128000),
AudioFileFormat::MP3_256 | AudioFileFormat::MP4_256 | AudioFileFormat::MP4_256_DUAL => {
AudioFileFormat::MP4_128 | AudioFileFormat::AAC_160 => Some(128000),
AudioFileFormat::MP3_256 | AudioFileFormat::MP4_256 | AudioFileFormat::AAC_320 => {
Some(256000)
}
AudioFileFormat::AAC_24 => Some(24000),
@ -85,13 +85,13 @@ pub fn audio_format_available(format: AudioFileFormat, is_premium: bool) -> bool
| AudioFileFormat::MP3_160_ENC
| AudioFileFormat::AAC_24
| AudioFileFormat::AAC_48
| AudioFileFormat::MP4_128
| AudioFileFormat::MP4_128_DUAL => true,
| AudioFileFormat::AAC_160
| AudioFileFormat::MP4_128 => true,
AudioFileFormat::OGG_VORBIS_320
| AudioFileFormat::MP3_256
| AudioFileFormat::MP3_320
| AudioFileFormat::AAC_320
| AudioFileFormat::MP4_256
| AudioFileFormat::MP4_256_DUAL
| AudioFileFormat::FLAC_FLAC => is_premium,
AudioFileFormat::UNKNOWN_FORMAT => false,
}
@ -102,8 +102,10 @@ pub fn audio_format_widevine(format: AudioFileFormat) -> bool {
matches!(
format,
AudioFileFormat::MP4_128
| AudioFileFormat::MP4_128_DUAL
| AudioFileFormat::MP4_256
| AudioFileFormat::MP4_256_DUAL
| AudioFileFormat::AAC_160
| AudioFileFormat::AAC_320
| AudioFileFormat::AAC_24
| AudioFileFormat::AAC_48
)
}