• Ephera@lemmy.ml
    link
    fedilink
    arrow-up
    39
    ·
    5 months ago

    I actually even made my own bullshit-Spotify. As in, I’ve got a server running on a single-board computer which reads my music folder and serves a small music player as a webpage.

    I didn’t want to install a music player client on my work laptop, but still wanted to listen to my own songs there.

  • JetpackJackson@feddit.de
    link
    fedilink
    arrow-up
    23
    ·
    edit-2
    5 months ago
    #!/usr/bin/env bash
    mpc load $1
    mpc volume 80
    mpc random on
    mpc play
    

    Name it shufflenplay so then you can shufflenplay <playlist name>

    • renzev@lemmy.world
      link
      fedilink
      English
      arrow-up
      11
      ·
      edit-2
      5 months ago

      Oh man are we sharing mpd scripts? I have this one that lets me search through music directory and add anything to the play queue (so I can add a single track or an entire album or whatever):

      #!/bin/bash
      
      MUSIC_DIR=$(grep -m 1 -E '^\s*music_directory\s+' "$XDG_CONFIG_HOME/mpd/mpd.conf" | awk '{printf $2}' | tr -d \" | tr -d \')
      MUSIC_DIR="${MUSIC_DIR/#\~/$HOME}"
      
      cd "$MUSIC_DIR"
      CHOICE="$(find . | cut -c 3- | dmenu)" || exit 1;
      
      mpc insert "$CHOICE"
      mpc play
      

      There’s also this one that lets me save the currently playing song to a playlist of my choice. It’s good if I’m listening to a new album or a new artist and suddenly think “yeah, this song really fits with the mood of X playlist”:

      #!/bin/bash
      
      MUSIC_DIR=$(grep -m 1 -E '^\s*playlist_directory\s+' "$XDG_CONFIG_HOME/mpd/mpd.conf" | awk '{printf $2}' | tr -d \" | tr -d \')
      
      choice="$(mpc lsplaylists | dmenu)" || { echo "No choice." ; exit 1; }
      MUSIC_DIR="${MUSIC_DIR/#\~/$HOME}"
      
      mpc current -f '%file%' >> "$MUSIC_DIR/$choice.m3u"
      

      Here’s my script to shuffle play an existing playlist as well:

      #!/bin/sh
      
      choice="$(mpc lsplaylists | dmenu)"
      mpc clear
      sleep 0.1
      mpc load "$choice"
      sleep 0.1
      mpc shuffle
      sleep 0.1
      mpc play
      

      The sleeps are to prevent Cantata (graphical mpd client) from shitting itself if I run this script while it’s open. Also notice mpc shuffle instead of mpc random on. It shuffles the current playlist, but keeps the linear play order, so that I can add songs to play right after the current one.

      • JetpackJackson@feddit.de
        link
        fedilink
        arrow-up
        4
        ·
        5 months ago

        Oooh those are nice! I’ll have to try mpc shuffle out then, and even though I generate my playlists with beets, I’ll definitely try out the save to playlist one!

      • PlexSheep@infosec.pub
        link
        fedilink
        arrow-up
        7
        ·
        5 months ago

        Really well actually. The mobile app does not support download “caching” of music, but third party apps like synfonium do.

        The jellyfin music experience is really good, not perfect, but still really good.

      • macniel@feddit.org
        link
        fedilink
        arrow-up
        3
        ·
        5 months ago

        For kinda every type of media. I use it as a cloud (private VPN) music repository/library as well.

      • DogWater@lemmy.world
        link
        fedilink
        arrow-up
        3
        ·
        5 months ago

        Yeah I switched to it from Plex. Plex wouldn’t stop forgetting my libraries and revoking permissions.

    • shimdidly@lemmy.worldOP
      link
      fedilink
      arrow-up
      1
      ·
      5 months ago

      So real. I’ve always thought music apps like iTunes/Spotify etc. were superfluous when you already have a file system and sym links.

      • lurch (he/him)@sh.itjust.works
        link
        fedilink
        arrow-up
        5
        ·
        5 months ago

        i used symlinks first, but they break when you rename target files or directories.

        as long as it’s one file system, hard links work better for me. so one day i replaced them all with hard links.

  • FlickeringScreens@lemmy.world
    link
    fedilink
    English
    arrow-up
    7
    ·
    5 months ago

    real. I was using “mpv --shuffle soundcloud-playlist-link-here” for a while because soundcloud’s shuffle literally does not work

          • u/lukmly013 💾 (lemmy.sdf.org)@lemmy.sdf.org
            link
            fedilink
            English
            arrow-up
            4
            ·
            5 months ago

            Shazam what I hear around me and like. Often it’s just bus drivers listening to music, and since I sit in the front if possible, I can discover music. Or just radio, whether it’s FM, DAB+ or internet. AM is usually limited to news and bazillion chinese stations.

            • MonkeMischief@lemmy.today
              link
              fedilink
              arrow-up
              6
              ·
              edit-2
              5 months ago

              Haha so many times I’ve heard stuff playing that sounds catchy in like random sandwich shops, and hunt down where I can get a clear detection on it.

              It’s actually pretty impressive what the average smartphone mic can pick up … For better and worse. =\

              But I’ve found some favorite songs that way. It beats the old days of trying really hard to discern some words in the lyrics and hoping a search engine would help!

              • bitwaba@lemmy.world
                link
                fedilink
                arrow-up
                2
                ·
                5 months ago

                I’m impressed with my pixel’s ability to do it. I forget it’s on sometimes and I’ll walk in a pub. Having only been inside 5 seconds and my phone in my pocket the whole time, it already has the song playing on display on the lock screen. Its almost like it works better when the volume is lower. I have a harder time detecting music with it if I turn the volume up or hold it near a speaker. Put it my pocket and have 30 people talk over it? Probably has a 95%+ successful detection rate in those conditions

        • PlexSheep@infosec.pub
          link
          fedilink
          arrow-up
          1
          ·
          5 months ago

          But can that be automated? I have a yaml file and a glorified crib job that checks my subscriptions and playlists every 8h and downloads new stuff automatically.

        • callyral [he/they]@pawb.social
          link
          fedilink
          arrow-up
          1
          ·
          4 months ago

          I’m so glad I don’t care about/don’t notice audio quality. I could listen to a literal microwave oven and I’d consider it a beautiful, high fidelity song.

    • june (she/her)@lemmy.ml
      link
      fedilink
      arrow-up
      8
      ·
      5 months ago

      Soulseek > Freyr > yt-dlp

      Soulseek is better for more popular tracks and artists and in normally better quality.

      Freyr can be fed a spotify/apple music link, find the highest quality version and pull the file from YouTube music or YouTube. Then it will automatically write the appropriate metadata and cover art to the songs.

      If all else fails, yt-dlp to directly rip from YouTube.

      Or buy it legally. In the past I’ve gotten songs by buying from Artists’ website, bandcamp, and iTunes.

        • june (she/her)@lemmy.ml
          link
          fedilink
          arrow-up
          4
          ·
          5 months ago

          Nicotine+ is a FOSS multi-platform gui for Soulseek and runs on Linux, *BSD, macOS, and Windows.

          Freyr is a CLI tool that can either built manually for Linux I believe or ran in Docker on Linux, macOS, and Windows.

          yt-dlp is a CLI tool that has compiled binaries or can be installed through a package manager on Linux, BSD, macOS, and Windows.

          • macniel@feddit.org
            link
            fedilink
            arrow-up
            1
            ·
            4 months ago

            As an alternative to Nicotine+ I use slskd in a docker hosted in my raspberry pi. That way I can search/download and share files even when my main computer isn’t turned on.

    • cum@lemmy.cafe
      link
      fedilink
      English
      arrow-up
      1
      arrow-down
      1
      ·
      5 months ago

      They don’t, the ppl who do this are probably listening to the same boomer rock albums