# Reproductores de música en CLI

## 🎵 Guía de Instalación, Configuración y Uso de **MOC (Music On Console)**

### ¿Qué es MOC?

**MOC (Music On Console)** es un reproductor de música basado en terminal para sistemas Unix/Linux. Usa una interfaz tipo ncurses, y es muy ligero, rápido y estable. Ideal para equipos antiguos o para quienes aman trabajar en la consola. Algunas de las características son:

* Puedes correrlo como daemon de música mientras haces otras tareas.
* Puedes usarlo en un servidor sin entorno gráfico.

Documentación: <https://moc.daper.net/>

### Instalación y configuración

Vamos a probar esto sobre una maquina virtual Ubuntu Desktop, para instalarlo, vamos con:

```bash
sudo apt update
sudo apt install moc moc-ffmpeg-plugin
```

Una vez instalado, MOC se puede configurar mediante su archivo:

```bash
~/.moc/config
```

Si no existe, puedes copiar el archivo base desde:

```bash
cp /usr/share/doc/moc/examples/config.example ~/.moc/config
```

#### &#x20;Opciones útiles en el archivo `config`:

Configuraremos algunos parámetros de la configuración:

* **MusicDir** — Cambiamos el directorio por defecto:

  ```ini
  MusicDir = /home/tu_usuario/Música
  ```
* **SoundDriver** — Backend de audio (auto detectado en la mayoría de casos):

  ```ini
  SoundDriver = JACK,ALSA,OSS
  ```
* **ShowHiddenFiles** — Ocultar o mostrar archivos ocultos:

  ```ini
  ShowHiddenFiles = no
  ```
* **Theme** — Cambiar el tema visual:

  ```ini
  Theme = darkdot_theme
  ```

***

### 🎨 Temas (Opcional)

Los temas suelen estar en:

```bash
/usr/share/moc/themes/
```

Puedes probarlos añadiendo a tu archivo `~/.moc/config`:

```ini
Theme = nombre_del_tema
```

Ejemplo:

```ini
Theme = transparent-background
```

***

### ▶️ Uso Básico

#### 🔹 Iniciar MOC:

```bash
mocp
```

#### 🔹 Navegación:

* Flechas → para moverte por carpetas y archivos
* Enter → para reproducir una canción
* Q → salir del navegador, pero **la música sigue**
* q → salir completamente (y detener la música)

#### 🔹 Controles rápidos:

* `p` → Pausar/Reanudar
* `n` → Siguiente pista
* `b` → Pista anterior
* `s` → Detener
* `a` → Agregar archivo/carpeta a la playlist
* `r` → Alternar repetición
* `R` → Alternar reproducción aleatoria

#### 🔹 Desde consola (sin abrir MOC):

* Pausar:

  ```bash
  mocp -P
  ```
* Reanudar:

  ```bash
  mocp -U
  ```
* Siguiente:

  ```bash
  mocp -f
  ```
* Anterior:

  ```bash
  mocp -r
  ```
* Ver canción actual:

  ```bash
  mocp -i
  ```

***

### 📂 Soporta formatos como:

* MP3, OGG, WAV, FLAC, AAC (con plugin `moc-ffmpeg-plugin`)
* Playlists `.m3u`, `.pls`, `.cue`

***

### 🧼 Salir de MOC

Presiona `q` para cerrar la interfaz (la música sigue),\
y `q` nuevamente para salir completamente y parar la reproducción.

***

###

***

## 🎵 Guía Completa de MPD (Music Player Daemon)

***

### 🧩 ¿Qué es MPD?

**MPD** es un servidor de reproducción de música que corre en segundo plano y puede ser controlado local o remotamente mediante clientes (como `ncmpcpp`, apps móviles, etc.).\
No tiene interfaz propia, sino que depende de clientes para interactuar.

Documento: <https://www.musicpd.org/>

***

### 🛠️ 1. Instalación

#### 🔹 En Debian/Ubuntu:

```bash
sudo apt update
sudo apt install mpd mpc ncmpcpp
```

#### 🔹 En Arch/Manjaro:

```bash
sudo pacman -S mpd mpc ncmpcpp
```

#### 🔹 En Fedora:

```bash
sudo dnf install mpd mpc ncmpcpp
```

#### 📦 ¿Qué es cada cosa?

* `mpd`: el servidor
* `mpc`: cliente básico de línea de comandos
* `ncmpcpp`: cliente interactivo en terminal (estilo `ncmpc`, más bonito)

***

### 📁 2. Estructura recomendada de carpetas

```bash
~/Music/          # Tu música
~/.config/mpd/    # Configuración de MPD
~/.local/share/mpd/  # Archivos internos de MPD
```

***

### ⚙️ 3. Configuración básica de MPD

Crea estructura de configuración:

```bash
mkdir -p ~/.config/mpd ~/.local/share/mpd/playlists
touch ~/.config/mpd/mpd.conf
```

#### 📄 Contenido de `~/.config/mpd/mpd.conf`:

```ini
music_directory     "~/Music"
playlist_directory  "~/.local/share/mpd/playlists"
db_file             "~/.local/share/mpd/database"
log_file            "~/.local/share/mpd/log"
pid_file            "~/.local/share/mpd/pid"
state_file          "~/.local/share/mpd/state"
sticker_file        "~/.local/share/mpd/sticker.sql"

bind_to_address     "localhost"
port                "6600"

audio_output {
    type        "pulse"
    name        "Pulseaudio"
}

auto_update "yes"
```

> ✅ Cambia `"pulse"` por `"alsa"` si no usas PulseAudio.

***

### 🚀 4. Iniciar MPD

Primero asegurate de **parar el servicio global (si existe)**:

```bash
systemctl --user disable mpd
systemctl --user stop mpd
```

Luego inicia tu instancia local:

```bash
mpd
```

Para verificar:

```bash
mpc status
```

***

### 🎧 5. Uso básico con `ncmpcpp`

Ejecuta:

```bash
ncmpcpp
```

Atajos útiles:

* `u` → Actualiza la biblioteca
* `1-7` → Cambia de pestaña
* `Enter` → Reproducir canción
* `q` → Salir

***

### 🧹 6. Actualizar tu biblioteca

Cada vez que agregues música nueva:

```bash
mpc update
```

También desde `ncmpcpp` con la tecla `u`.

***

### 📱 7. Conexión desde el móvil

#### 🔐 Paso 1: Permitir conexión externa

Edita `mpd.conf` y cambia:

```ini
bind_to_address "any"
```

Y añade esto si quieres que otros dispositivos se conecten:

```ini
port "6600"
```

🔐 **Opcional (pero recomendado):** Agrega control de acceso con una contraseña:

```ini
password "tu_clave@permitido"
```

***

#### 🌐 Paso 2: Abrir el puerto

Si usas firewall:

```bash
sudo ufw allow 6600
```

***

#### 📱 Paso 3: Instalar cliente móvil

**Android:**

* **MPDroid**
* **MAFA (Material Audio Player for MPD)**
* **Symfonium (moderno y potente)**

**iOS:**

* **M.A.L.P.**
* **MPDluxe**

***

#### 📲 Paso 4: Conectar desde el móvil

En la app, configura:

* **Host**: IP de tu PC con MPD (ej: `192.168.1.10`)
* **Puerto**: `6600`
* **Contraseña**: si la usas

Asegúrate de que ambos estén en la **misma red Wi-Fi**.

***

### 🧠 Extra: Consejos útiles

* MPD **no transfiere audio por red**, solo controla reproducción.
* Puedes usar un cliente web (`Rompr`, `ympd`, `Iris`) para controlar MPD desde el navegador.
* Puedes automatizar el arranque de MPD al inicio con:

  ```bash
  echo 'mpd' >> ~/.bashrc
  ```

#### EXTRA

Con el siguiente github puedes escuchar tu musica de spotify desde CLI:&#x20;

{% embed url="<https://github.com/aome510/spotify-player>" %}
