En muchos entornos —como hoteles, restaurantes o comercios— la música ambiental es parte fundamental de la experiencia del cliente. Sin embargo, depender de que alguien recuerde encender o apagar la música cada día puede ser poco práctico e incluso causar inconsistencias en el ambiente sonoro.
En este artículo te mostraré cómo automatizar por completo la reproducción musical utilizando VLC Media Player, scripts por lotes (Batch y PowerShell) y el Programador de tareas de Windows 11.
Con este método, podrás definir horarios para iniciar diferentes listas de reproducción (por ejemplo, música de desayuno, tarde o noche), controlar el volumen de forma progresiva con efectos de fade-in y fade-out, e incluso ajustar el nivel de audio general del sistema automáticamente según la hora del día.

La idea es lograr un sistema confiable y profesional que mantenga siempre la música adecuada en el momento adecuado —sin intervención manual— y aprovechando herramientas gratuitas y nativas del sistema operativo.
Consejo extra: normaliza el volumen de tus pistas
Para obtener una experiencia auditiva equilibrada entre canciones, es recomendable homologar el nivel de volumen de todos los archivos MP3.
Puedes hacerlo fácilmente con herramientas gratuitas como MP3Gain o QtGain, que analizan y ajustan el nivel de ganancia de tus pistas sin pérdida de calidad.
Esto evita los molestos saltos de volumen entre canciones y asegura que la música ambiental suene uniforme durante todo el día.
Estructura de carpetas y preparación del contenido musical
Para mantener un orden lógico y facilitar la automatización, se creó una carpeta principal en la unidad del sistema, específicamente:
C:\Music
Dentro de esta carpeta se colocaron dos subcarpetas con la música organizada por horario:
C:\Music\1Desayuno
C:\Music\2Tarde
En 1Desayuno se incluyen los temas que ambientan la mañana —con un tono más tranquilo y luminoso—, mientras que en 2Tarde están los tracks con otro tipo de energía, ideal para el tipo de lugar y el ambiente que se busca proyectar durante el resto del día.
Antes de automatizar la reproducción, todos los archivos MP3 fueron homologados a un nivel de volumen de 93 decibeles, utilizando herramientas gratuitas como MP3Gain o QtGain.
Esto garantiza que todas las pistas suenen a un volumen uniforme, evitando picos o variaciones molestas cuando cambia una canción.
Automatización del inicio musical con VLC y un script por lotes
Para el arranque automático de la música ambiental se utiliza un archivo .BAT llamado inicia_musica.bat.
Este script ejecuta VLC Media Player y reproduce de forma aleatoria y continua los temas ubicados en la carpeta 1Desayuno.
@echo off
set VLC="C:\Program Files (x86)\VideoLAN\VLC\vlc.exe"
set MUSIC_FOLDER="C:\Music\1Desayuno"
echo Iniciando VLC y aplicando fade-in interno...
start "" %VLC% --loop --random "%MUSIC_FOLDER%"
powershell -NoProfile -ExecutionPolicy Bypass -Command "$wshell = New-Object -ComObject wscript.shell; Start-Sleep -Seconds 2; for ($i=0; $i -lt 25; $i++) {Start-Sleep -Milliseconds 200; $wshell.SendKeys('^{UP}')}"
echo Música iniciada con fade-in interno.
exit
🔹 Qué hace este script:
- Define la ubicación del ejecutable de VLC y de la carpeta con la música.
- Inicia la reproducción con las opciones
--loop(repetición continua) y--random(orden aleatorio). - Utiliza un pequeño bloque en PowerShell para generar un efecto de fade-in, incrementando gradualmente el volumen mediante atajos de teclado (
Ctrl + ↑).
De esta forma, al iniciar la jornada, la música comienza a sonar de manera suave y profesional, evitando que el audio entre de golpe en el ambiente.
Script de cambio musical automatizado (con fade-out y fade-in)
A continuación te muestro un ejemplo de cómo puedes automatizar el cambio de ambiente musical —por ejemplo, al pasar del turno de desayuno al horario de tarde— de forma suave y profesional usando VLC, PowerShell y un simple archivo por lotes (.bat).
Este es el script completo:
@echo off
echo Iniciando cambio de música con fade-out, cierre y fade-in...
REM === FADE-OUT Y CIERRE DE VLC ===
powershell -NoProfile -ExecutionPolicy Bypass -Command "Import-Module AudioDeviceCmdlets; $vol=(Get-AudioDevice -Playback).Volume; for ($i=$vol; $i -ge 0; $i-=5) {Set-AudioDevice -PlaybackVolume $i; Start-Sleep -Milliseconds 200}; Stop-Process -Name vlc -Force -ErrorAction SilentlyContinue"
REM Espera breve para que VLC se cierre
timeout /t 3 /nobreak >nul
REM === INICIO DE REPRODUCCIÓN TARDE ===
set VLC="C:\Program Files (x86)\VideoLAN\VLC\vlc.exe"
set MUSIC_FOLDER="C:\Music\2Tarde"
echo Iniciando VLC y aplicando fade-in interno...
start "" %VLC% --loop --random "%MUSIC_FOLDER%"
powershell -NoProfile -ExecutionPolicy Bypass -Command "$wshell = New-Object -ComObject wscript.shell; Start-Sleep -Seconds 2; for ($i=0; $i -lt 25; $i++) {Start-Sleep -Milliseconds 200; $wshell.SendKeys('^{UP}')}"
echo Música iniciada con fade-in interno.
REM === SUBIR VOLUMEN DE WINDOWS HASTA 60% ===
powershell -NoProfile -ExecutionPolicy Bypass -Command "Import-Module AudioDeviceCmdlets; $vol=(Get-AudioDevice -Playback).Volume; for ($i=$vol; $i -lt 60; $i+=1) {Set-AudioDevice -PlaybackVolume $i; Start-Sleep -Milliseconds 100}"
echo Transición completada correctamente.
exit
🧩 Explicación paso a paso
1️⃣ Fade-out progresivo (bajada de volumen):
El script inicia ejecutando PowerShell para bajar el volumen general del sistema, paso a paso, hasta llegar a 0%.
Esto genera un efecto de “fade-out” que hace que la música del desayuno desaparezca suavemente, en lugar de cortarse abruptamente.
powershell -NoProfile -ExecutionPolicy Bypass -Command "Import-Module AudioDeviceCmdlets; $vol=(Get-AudioDevice -Playback).Volume; for ($i=$vol; $i -ge 0; $i-=5) {Set-AudioDevice -PlaybackVolume $i; Start-Sleep -Milliseconds 200}"
Luego, cierra VLC de forma controlada:
Stop-Process -Name vlc -Force
2️⃣ Pausa técnica:
Se da una pausa de 3 segundos para asegurar que VLC se haya cerrado correctamente antes de continuar.
timeout /t 3 /nobreak >nul
3️⃣ Inicio de la música de la tarde:
Después, el script vuelve a abrir VLC, pero ahora reproduciendo los archivos de la carpeta “2Tarde”, que se encuentra dentro de C:\Music.
start "" %VLC% --loop --random "%MUSIC_FOLDER%"
El parámetro --loop hace que la lista nunca se detenga, y --random reproduce los temas en orden aleatorio.
4️⃣ Fade-in interno (subida suave):
Una vez iniciado VLC, se usa PowerShell para enviar al sistema una serie de combinaciones de teclas Ctrl + ↑, que aumentan progresivamente el volumen interno de VLC.
for ($i=0; $i -lt 25; $i++) {Start-Sleep -Milliseconds 200; $wshell.SendKeys('^{UP}')}
Esto genera un efecto de entrada suave del nuevo ambiente musical.
5️⃣ Ajuste de volumen del sistema:
Finalmente, se asegura que el volumen general de Windows quede estabilizado en 60%, usando nuevamente el módulo AudioDeviceCmdlets.
for ($i=$vol; $i -lt 60; $i+=1) {Set-AudioDevice -PlaybackVolume $i; Start-Sleep -Milliseconds 100}
De esta manera, el volumen general queda nivelado para el resto del día.
🎧 Resultado final
✅ La música del desayuno se desvanece suavemente.
✅ VLC se cierra correctamente.
✅ Se inicia automáticamente la música de la tarde.
✅ El nuevo ambiente entra con un fade-in progresivo.
✅ Windows ajusta su volumen al nivel deseado.
🔻 Script de cierre musical: “fade-out” y apagado suave
El siguiente script automatiza el cierre del ambiente musical al final del día. Su objetivo es bajar gradualmente el volumen antes de detener completamente la reproducción en VLC, evitando cortes bruscos de sonido.
📜 Archivo: cierre_musica.bat
@echo off
echo Iniciando fade-out de volumen...
powershell -NoProfile -ExecutionPolicy Bypass -Command "Import-Module AudioDeviceCmdlets; $vol=(Get-AudioDevice -Playback).Volume; for ($i=$vol; $i -ge 0; $i-=5) {Set-AudioDevice -PlaybackVolume $i; Start-Sleep -Milliseconds 200}; Stop-Process -Name vlc -Force"
echo VLC cerrado y volumen bajado suavemente.
pause
exit
🧠 ¿Qué hace este script paso a paso?
- Mensaje inicial:
Muestra en pantalla el texto “Iniciando fade-out de volumen…” para indicar que se está comenzando la secuencia de cierre. - Llamada a PowerShell:
El comando dentro de PowerShell carga el móduloAudioDeviceCmdlets, el cual permite controlar el volumen del dispositivo de reproducción de audio. - Reducción progresiva del volumen:
La variable$voltoma el volumen actual del sistema (por ejemplo, 60 %).
Luego, un bucleforlo va disminuyendo en pasos de 5 % cada 200 ms, creando el efecto de fade-out o “bajada suave de volumen”. - Cierre del reproductor VLC:
Cuando el volumen llega a 0, el procesovlc.exese cierra automáticamente con el comandoStop-Process.
De este modo, la música se detiene de manera elegante, sin cortes bruscos. - Confirmación visual:
El script muestra el mensaje “VLC cerrado y volumen bajado suavemente.” y se detiene conpause, para que el usuario vea que la tarea se completó correctamente.
🕒 Programar la música automática con el Programador de tareas de Windows
Una vez que los tres scripts (inicia_musica.bat, cambio_tarde.bat y cierre_musica.bat) estén listos y funcionando correctamente, solo resta automatizarlos con el Programador de tareas de Windows.
De esta forma, el sistema reproducirá la música de forma completamente autónoma según los horarios que tú definas.
📅 Ejemplo de programación típica:
- 🕘 9:00 a.m. – Ejecutar
inicia_musica.batpara comenzar la música de la mañana. - 🕐 1:00 p.m. – Ejecutar
cambio_tarde.batpara cambiar automáticamente al ambiente musical de la tarde. - 🕘 9:00 p.m. – Ejecutar
cierre_musica.batpara realizar el fade-out y apagar la música suavemente.
Puedes ajustar estos horarios según tus necesidades — por ejemplo, abrir más temprano, cerrar más tarde o incluso agregar más transiciones si tienes diferentes ambientes musicales durante el día.
💡 Consejo práctico:
Asegúrate de que las tareas se ejecuten con privilegios elevados (modo administrador) y de marcar la opción “Ejecutar aunque el usuario no haya iniciado sesión” para que el sistema mantenga la música funcionando de manera autónoma incluso si nadie ha iniciado sesión en Windows.
🎶 Conclusión
Con estos sencillos scripts y la ayuda del Programador de Tareas de Windows, puedes automatizar por completo el inicio, transición y cierre de la música ambiental de tu negocio, restaurante, hotel o lounge.
Todo funciona de forma fluida: sin intervención manual, con volúmenes nivelados, y transiciones suaves que mantienen la armonía del ambiente durante todo el día.
Recuerda que para obtener una reproducción más homogénea, puedes usar herramientas como MP3Gain o QTGain para normalizar el volumen de tus pistas a unos 93 dB, garantizando una experiencia auditiva más equilibrada.
🎵 Y lo mejor: ¡toda la automatización se logra sin necesidad de software costoso ni complejas configuraciones!
✨ ¡Éxitos en sus proyectos!
Automatizar procesos como este es un gran paso hacia la eficiencia y el control inteligente de los ambientes sonoros.

Excelente!!!