wtorek, marca 31, 2009

Odtwarzanie muzyki z linii komend

Bardzo często zdarza mi się odtwarzać muzykę mplayerem. Jest to odtwarzacz konsolowy, co sprawia pewne kłopoty. Brakuje mu także opcji odtwarzania wszystkich utworów z danego katalogu i podkatalogów.

Oto rozwiązanie tego problemu za pomocą narzędzia find:

$ find -type f -printf "`pwd`/%p\n" | shuf > /tmp/pls && mplayer -playlist /tmp/pls

Kilka uwag:
- używam komendy "shuf" aby zrandomizować listę odtwarzanych utworów. mplayer posiada opcję -shuffle, ale powoduje ona losowanie przy każdej zmianie utworu. shuf ustala jedną permutację listy, dzięki czemu można się cofnąć do odegranego już utworu
- lista tworzona jest w /tmp/pls. Można uprościć polecenie find jeżeli zapiszemy ją w aktualnym katalogu:

$ find -type f | shuf > pls && mplayer -playlist pls
Ja nie chcę jednak sobie zaśmiecać katalogów playlistami.

Można wreszcie nie używać pliku pomocniczego, a korzystać z przekierowania strumieni:

$ find -type f | shuf | mplayer -playlist -

Wtedy jednak nie można sterować mplayerem, np. zmniejszając głośność lub zmieniając utwór. W tym momencie shuf staje się zbędny.

$ find -type f | mplayer -shuffle -playlist -

Na dobrą sprawę możemy pominąć także parametr "-type f" który mówi find by wyświetlał jedynie pliki, a pomijał katalogi.

$ find | mplayer -shuffle -playlist -

W ostateczności można też słuchać plików w kolejności podawanej przez find:

$ find | mplayer -playlist -

I tak wygląda komenda od której zacząłem :-)

8 komentarzy:

  1. Nie lepiej używac zdemonizowanego xmms'a? Natywnie obsługuje listy, szuflowanie, informacje. Można nawet na OSD wyświetlać dane.

    OdpowiedzUsuń
  2. xmms chyba nie potrafi działać bez X-ów. A ja np. teraz uruchamiam zdalnie mplayera po to, by zadziałał za parę godzin jako budzik...

    OdpowiedzUsuń
  3. Aha, wiem, że można przez ssh tunelować grafikę do X-ów. Ale jest to dość wolna metoda... a ja lubię interfejs konsoli. xmms wymaga odrywania rąk od klawiatury w kierunku touchpada, a tego wolę unikać :-)

    OdpowiedzUsuń
  4. Ja polecam mp3blaster do odtwarzania muzyki w konsoli.

    OdpowiedzUsuń
  5. Z tego co zdołałem wyczytać na forum programu (bo niestety nie ma jednej strony z podsumowaniem ficzerów) nie wspiera on MPC ani FLAC, więc niestety odpada.

    OdpowiedzUsuń
  6. kobylecki10:18 AM

    Ja też kiedyś korzystałem z mplayera jako odtwarzacza muzyki, teraz używam MOC'a. Polecam wypróbować.

    OdpowiedzUsuń
  7. Anonimowy2:01 PM

    Podstawy. Absolutne podstawy. Nie ma się czym szczycić.
    Tylko shuff z tego nie znałem.

    Choć ja jak odtwarzam muzykę z konsoli to jest to albo mpeg123 -Z muzyka/*/* albo mpd+ncmpc

    OdpowiedzUsuń
  8. > Podstawy. Absolutne podstawy. Nie ma się czym szczycić.
    A czy ja się czymś tutaj szczycę? Ktoś tutaj ma problem i nie jestem to ja.
    > Tylko shuff z tego nie znałem.
    shuf nie shuff.

    OdpowiedzUsuń