aome510 / spotify-player

A Spotify player in the terminal with full feature parity
MIT License
3.37k stars 146 forks source link

My wezterm does not render high res cover image as it suppose to be #500

Closed moooooser999 closed 1 month ago

moooooser999 commented 1 month ago

Describe the bug I just install the spotify-player on my macOS with the command:

cargo install spotify_player --features image,notify,lyric-finder

To Reproduce open spotify-player

spotify_player

Expected behaviour As shown in #74 , wezterm is able to render high res cover image Log and backtrace 2024-07-09T11:19:25.179812Z INFO spotify_player: Configurations: Configs { app_config: AppConfig { theme: "gruvbox", client_id: "cabd585985f64a5a90de8b3170e9477d", client_port: 12239, player_event_hook_command: None, playback_format: "{status} {track} • {artists}\n{album}\n{metadata}", notify_format: NotifyFormat { summary: "{track} • {artists}", body: "{album}" }, notify_timeout_in_secs: 0, tracks_playback_limit: 50, proxy: None, ap_port: None, app_refresh_duration_in_ms: 32, playback_refresh_duration_in_ms: 0, page_size_in_rows: 20, play_icon: "▶", pause_icon: "▌▌", liked_icon: "♥", border_type: Plain, progress_bar_type: Rectangle, playback_window_position: Top, cover_img_length: 12, cover_img_width: 5, cover_img_scale: 1.0, playback_window_width: 6, enable_media_control: false, enable_streaming: Always, enable_notify: true, enable_cover_image_cache: false, default_device: "spotify-player", device: DeviceConfig { name: "spotify-player", device_type: "speaker", volume: 70, bitrate: 320, audio_cache: false, normalization: false, autoplay: false }, notify_streaming_only: false, seek_duration_secs: 5 }, keymap_config: KeymapConfig { keymaps: [Keymap { key_sequence: KeySequence { keys: [None(Char('n'))] }, command: NextTrack }, Keymap { key_sequence: KeySequence { keys: [None(Char('p'))] }, command: PreviousTrack }, Keymap { key_sequence: KeySequence { keys: [None(Char('.'))] }, command: PlayRandom }, Keymap { key_sequence: KeySequence { keys: [None(Char(' '))] }, command: ResumePause }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('r'))] }, command: Repeat }, Keymap { key_sequence: KeySequence { keys: [Alt(Char('r'))] }, command: ToggleFakeTrackRepeatMode }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('s'))] }, command: Shuffle }, Keymap { key_sequence: KeySequence { keys: [None(Char('+'))] }, command: VolumeUp }, Keymap { key_sequence: KeySequence { keys: [None(Char('-'))] }, command: VolumeDown }, Keymap { keysequence: KeySequence { keys: [None(Char(''))] }, command: Mute }, Keymap { key_sequence: KeySequence { keys: [None(Char('>'))] }, command: SeekForward }, Keymap { key_sequence: KeySequence { keys: [None(Char('<'))] }, command: SeekBackward }, Keymap { key_sequence: KeySequence { keys: [None(Enter)] }, command: ChooseSelected }, Keymap { key_sequence: KeySequence { keys: [None(Char('r'))] }, command: RefreshPlayback }, Keymap { key_sequence: KeySequence { keys: [None(Char('/'))] }, command: Search }, Keymap { key_sequence: KeySequence { keys: [None(Char('z'))] }, command: Queue }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('z'))] }, command: AddSelectedItemToQueue }, Keymap { key_sequence: KeySequence { keys: [None(Char('Z'))] }, command: AddSelectedItemToQueue }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char(' '))] }, command: ShowActionsOnSelectedItem }, Keymap { key_sequence: KeySequence { keys: [None(Char('g')), None(Char('a'))] }, command: ShowActionsOnSelectedItem }, Keymap { key_sequence: KeySequence { keys: [None(Char('a'))] }, command: ShowActionsOnCurrentTrack }, Keymap { key_sequence: KeySequence { keys: [None(Char('R'))] }, command: RestartIntegratedClient }, Keymap { key_sequence: KeySequence { keys: [None(Tab)] }, command: FocusNextWindow }, Keymap { key_sequence: KeySequence { keys: [None(BackTab)] }, command: FocusPreviousWindow }, Keymap { key_sequence: KeySequence { keys: [None(Char('T'))] }, command: SwitchTheme }, Keymap { key_sequence: KeySequence { keys: [None(Char('D'))] }, command: SwitchDevice }, Keymap { key_sequence: KeySequence { keys: [None(Char('u')), None(Char('p'))] }, command: BrowseUserPlaylists }, Keymap { key_sequence: KeySequence { keys: [None(Char('u')), None(Char('a'))] }, command: BrowseUserFollowedArtists }, Keymap { key_sequence: KeySequence { keys: [None(Char('u')), None(Char('A'))] }, command: BrowseUserSavedAlbums }, Keymap { key_sequence: KeySequence { keys: [None(Char('g')), None(Char(' '))] }, command: CurrentlyPlayingContextPage }, Keymap { key_sequence: KeySequence { keys: [None(Char('g')), None(Char('t'))] }, command: TopTrackPage }, Keymap { key_sequence: KeySequence { keys: [None(Char('g')), None(Char('r'))] }, command: RecentlyPlayedTrackPage }, Keymap { key_sequence: KeySequence { keys: [None(Char('g')), None(Char('y'))] }, command: LikedTrackPage }, Keymap { key_sequence: KeySequence { keys: [None(Char('g')), None(Char('L'))] }, command: LyricPage }, Keymap { key_sequence: KeySequence { keys: [None(Char('l'))] }, command: LyricPage }, Keymap { key_sequence: KeySequence { keys: [None(Char('g')), None(Char('l'))] }, command: LibraryPage }, Keymap { key_sequence: KeySequence { keys: [None(Char('g')), None(Char('s'))] }, command: SearchPage }, Keymap { key_sequence: KeySequence { keys: [None(Char('g')), None(Char('b'))] }, command: BrowsePage }, Keymap { key_sequence: KeySequence { keys: [None(Backspace)] }, command: PreviousPage }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('q'))] }, command: PreviousPage }, Keymap { key_sequence: KeySequence { keys: [None(Char('O'))] }, command: OpenSpotifyLinkFromClipboard }, Keymap { key_sequence: KeySequence { keys: [None(Char('?'))] }, command: OpenCommandHelp }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('h'))] }, command: OpenCommandHelp }, Keymap { key_sequence: KeySequence { keys: [None(Char('q'))] }, command: Quit }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('c'))] }, command: Quit }, Keymap { key_sequence: KeySequence { keys: [None(Esc)] }, command: ClosePopup }, Keymap { key_sequence: KeySequence { keys: [None(Char('j'))] }, command: SelectNextOrScrollDown }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('n'))] }, command: SelectNextOrScrollDown }, Keymap { key_sequence: KeySequence { keys: [None(Down)] }, command: SelectNextOrScrollDown }, Keymap { key_sequence: KeySequence { keys: [None(Char('k'))] }, command: SelectPreviousOrScrollUp }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('p'))] }, command: SelectPreviousOrScrollUp }, Keymap { key_sequence: KeySequence { keys: [None(Up)] }, command: SelectPreviousOrScrollUp }, Keymap { key_sequence: KeySequence { keys: [None(PageUp)] }, command: PageSelectPreviousOrScrollUp }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('b'))] }, command: PageSelectPreviousOrScrollUp }, Keymap { key_sequence: KeySequence { keys: [None(PageDown)] }, command: PageSelectNextOrScrollDown }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('f'))] }, command: PageSelectNextOrScrollDown }, Keymap { key_sequence: KeySequence { keys: [None(Char('g')), None(Char('g'))] }, command: SelectFirstOrScrollToTop }, Keymap { key_sequence: KeySequence { keys: [None(Home)] }, command: SelectFirstOrScrollToTop }, Keymap { key_sequence: KeySequence { keys: [None(Char('G'))] }, command: SelectLastOrScrollToBottom }, Keymap { key_sequence: KeySequence { keys: [None(End)] }, command: SelectLastOrScrollToBottom }, Keymap { key_sequence: KeySequence { keys: [None(Char('s')), None(Char('t'))] }, command: SortTrackByTitle }, Keymap { key_sequence: KeySequence { keys: [None(Char('s')), None(Char('a'))] }, command: SortTrackByArtists }, Keymap { key_sequence: KeySequence { keys: [None(Char('s')), None(Char('A'))] }, command: SortTrackByAlbum }, Keymap { key_sequence: KeySequence { keys: [None(Char('s')), None(Char('d'))] }, command: SortTrackByDuration }, Keymap { key_sequence: KeySequence { keys: [None(Char('s')), None(Char('D'))] }, command: SortTrackByAddedDate }, Keymap { key_sequence: KeySequence { keys: [None(Char('s')), None(Char('r'))] }, command: ReverseTrackOrder }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('k'))] }, command: MovePlaylistItemUp }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('j'))] }, command: MovePlaylistItemDown }, Keymap { key_sequence: KeySequence { keys: [None(Char('N'))] }, command: CreatePlaylist }], actions: [] }, theme_config: ThemeConfig { themes: [Theme { name: "default", palette: Palette { background: None, foreground: None, black: Color { color: Black }, blue: Color { color: Blue }, cyan: Color { color: Cyan }, green: Color { color: Green }, magenta: Color { color: Magenta }, red: Color { color: Red }, white: Color { color: Gray }, yellow: Color { color: Yellow }, bright_black: Color { color: DarkGray }, bright_white: Color { color: White }, bright_red: Color { color: LightRed }, bright_magenta: Color { color: LightMagenta }, bright_green: Color { color: LightGreen }, bright_cyan: Color { color: LightCyan }, bright_blue: Color { color: LightBlue }, bright_yellow: Color { color: LightYellow } }, component_style: ComponentStyle { block_title: None, border: None, playback_status: None, playback_track: None, playback_artists: None, playback_album: None, playback_metadata: None, playback_progress_bar: None, current_playing: None, page_desc: None, playlist_desc: None, table_header: None, selection: None, secondary_row: None } }] }, cache_folder: "/Users/morrischang/.cache/spotify-player" } 2024-07-09T11:19:25.180260Z INFO spotify_player::state::data: Loading Playlists data from /Users/morrischang/.cache/spotify-player/Playlists_cache.json... 2024-07-09T11:19:25.185086Z INFO spotify_player::state::data: Successfully loaded Playlists data! 2024-07-09T11:19:25.185132Z INFO spotify_player::state::data: Loading FollowedArtists data from /Users/morrischang/.cache/spotify-player/FollowedArtists_cache.json... 2024-07-09T11:19:25.185713Z INFO spotify_player::state::data: Successfully loaded FollowedArtists data! 2024-07-09T11:19:25.185737Z INFO spotify_player::state::data: Loading SavedAlbums data from /Users/morrischang/.cache/spotify-player/SavedAlbums_cache.json... 2024-07-09T11:19:25.188231Z INFO spotify_player::state::data: Successfully loaded SavedAlbums data! 2024-07-09T11:19:25.188289Z INFO spotify_player::state::data: Loading SavedTracks data from /Users/morrischang/.cache/spotify-player/SavedTracks_cache.json... 2024-07-09T11:19:25.707592Z INFO spotify_player::state::data: Successfully loaded SavedTracks data! 2024-07-09T11:19:25.888633Z INFO spotify_player::auth: Successfully used the cached credentials to create a new session! 2024-07-09T11:19:25.893522Z INFO spotify_player::token: Getting new authentication token... 2024-07-09T11:19:25.927813Z INFO spotify_player::token: Got new token: Token { access_token: "BQAoBkmXSxQjdjNpUPrgoiXtRiUE1606LeLMOPBc_6FYbbBGmGi-QGhO6dmOhhFLVVNmaWAjMPL6PB61tj3LUs-L4vnlTilLdaEAoeEuQarALb_CT4q5o41aEWxFJlfOAtW5qa5RLOyfN6_RDt_m8SOs0UaTLMthMLoY3W_29MNZziGoX2W9W1Sv8b4BM9HytuVE2HNMCnTPtAUdS9NPeDKRuCKWFKTLESRxeRGU10WzzI_V2jQ-0AnIcy9EkbyVrN339PZXEdY0vWZ3S01tjeeU5iYZy9GpAjq6l5QuNg", expires_in: TimeDelta { secs: 3600, nanos: 0 }, expires_at: Some(2024-07-09T12:19:25.927809Z), refresh_token: None, scopes: {} } 2024-07-09T11:19:25.927880Z INFO spotify_player::streaming: Application's connect configurations: ConnectConfig { name: "spotify-player", device_type: Speaker, initial_volume: Some(45875), has_volume_ctrl: true, autoplay: false } 2024-07-09T11:19:25.927913Z INFO spotify_player::streaming: Initializing a new integrated player with device_id=d77aa66e-63e1-42c0-8efa-bc72f4725d80 2024-07-09T11:19:25.927974Z INFO spotify_player::streaming: Starting an integrated Spotify player using librespot's spirc protocol 2024-07-09T11:19:26.192915Z INFO spotify_player::client: Retrieving image from url: https://i.scdn.co/image/ab67616d0000b2732abcc266597eb46f897a8666 2024-07-09T11:19:26.509844Z INFO spotify_player: Starting a client socket at 127.0.0.1:12239 2024-07-09T11:19:26.675431Z INFO client_request{request=GetCurrentUser}: spotify_player::client: Successfully handled the client request, took: 165ms 2024-07-09T11:19:26.693324Z INFO client_request{request=GetUserFollowedArtists}: spotify_player::client: Successfully handled the client request, took: 183ms 2024-07-09T11:19:26.829370Z INFO client_request{request=GetUserPlaylists}: spotify_player::client: Successfully handled the client request, took: 319ms 2024-07-09T11:19:27.152888Z INFO client_request{request=GetUserSavedAlbums}: spotify_player::client: Successfully handled the client request, took: 642ms 2024-07-09T11:19:27.812358Z INFO client_request{request=GetCurrentUserQueue}: spotify_player::client: Successfully handled the client request, took: 300ms 2024-07-09T11:19:35.779405Z INFO client_request{request=GetUserSavedTracks}: spotify_player::client: Successfully handled the client request, took: 9269ms

Please refer to this URL for more details.

Screenshots Screen shot from spotify_player CleanShot 2024-07-09 at 19 19 29@2x

Environment

moooooser999 commented 1 month ago

My bad, it turns out to be the issue of tmux not wezterm.