{ "@context": "https://schema.org", "@type": "PodcastEpisode", "name": "Historias Musicales con Ricardo Montaner", "description": "Escucha el programa 'Historias Musicales' con Ricardo Montaner. Un viaje a través de las canciones y recuerdos musicales más entrañables.", "url": "URL_DEL_EPISODIO", "duration": "PT60M", "audio": { "@type": "AudioObject", "url": "URL_DEL_AUDIO_MP3", "contentUrl": "URL_DEL_AUDIO_MP3" }, "publisher": { "@type": "Organization", "name": "Caricho Podcast", "url": "URL_DE_TU_PODCAST" }, "author": { "@type": "Person", "name": "Ricardo Montaner" }, "image": "URL_DE_IMAGEN_DE_PREVISTA" }

body {
font-family: Arial, sans-serif;
}
.container {
width: 80%;
margin: 0 auto;
text-align: center;
}
.output {
margin-top: 20px;
padding: 20px;
border: 1px solid #ccc;
background-color: #f9f9f9;
word-wrap: break-word;
white-space: pre-wrap;
}
button {
margin-top: 10px;
}

 

Generador de Código de Podcast



 


// Función para generar el código HTML automáticamente document.getElementById('podcastForm').addEventListener('submit', function(event) { event.preventDefault(); // Evitar el envío del formulario // Obtener los valores ingresados const mp3Link = document.getElementById('mp3Link').value; const artistName = document.getElementById('artistName').value; // Generar el código HTML con los valores proporcionados const podcastHTML = `

Podcast de Caricho

"Historias Musicales"

${artistName}

`; // Mostrar el código generado en la sección de salida const outputElement = document.getElementById('output'); outputElement.textContent = podcastHTML; // Hacer visible el botón de copiar document.getElementById('copyButton').style.display = 'inline-block'; // Configurar el botón de copiar document.getElementById('copyButton').onclick = function() { // Crear un elemento de texto temporal para copiar al portapapeles const textarea = document.createElement('textarea'); textarea.value = podcastHTML; document.body.appendChild(textarea); textarea.select(); document.execCommand('copy'); document.body.removeChild(textarea); // Avisar al usuario que el código fue copiado alert('¡Código copiado al portapapeles!'); }; });

 

Caricho Radio Chile – En Vivo body { margin: 0; padding: 0; font-family: "Segoe UI", Arial, sans-serif; background: #f4f6fb url("https://caricho.com/wp-content/uploads/2025/07/ChatGPT-Image-12-jul-2025-17_05_51.png") repeat center center; color: #222; display: flex; justify-content: center; align-items: flex-start; min-height: 100vh; } .player-card { background: #fff; width: 95%; max-width: 760px; border-radius: 16px; box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15); padding: 24px; margin: 40px 10px; text-align: center; animation: fadeIn 1s ease-in-out; } @keyframes fadeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } } .cover { width: 260px; height: 260px; border-radius: 12px; overflow: hidden; margin: 0 auto 20px; box-shadow: 0 4px 12px rgba(0,0,0,0.2); background: #ddd; } .cover img { width: 100%; height: 100%; object-fit: cover; display: block; } h1 { font-size: 1.8em; margin-bottom: 6px; color: #111; } h2 { font-size: 1.1em; font-weight: normal; color: #555; margin-top: 0; } audio { width: 100%; margin-top: 15px; outline: none; } .status { margin-top: 12px; font-size: 0.9em; color: #444; } @media (max-width: 600px) { .cover { width: 200px; height: 200px; } }
Carátula actual

Cargando canción…

Conectando con Caricho Radio Chile

Esperando transmisión…
const audio = document.getElementById("carichoAudio"); const titleEl = document.getElementById("trackTitle"); const artistEl = document.getElementById("trackArtist"); const coverImg = document.getElementById("coverImg"); const statusEl = document.getElementById("statusText"); // 🎧 Cambia el texto según el estado del reproductor audio.addEventListener("play", () => statusEl.textContent = "🎶 Reproduciendo..."); audio.addEventListener("pause", () => statusEl.textContent = "⏸️ Pausado"); audio.addEventListener("error", () => statusEl.textContent = "⚠️ Error al conectar al stream"); // 🔄 Actualiza datos desde la API de Zeno cada 20 segundos async function updateNowPlaying() { try { // 🔹 Endpoint de Zeno con el ID de tu emisora const res = await fetch("https://api.zeno.fm/stations/7t6h99wrxchvv/now_playing"); if (!res.ok) throw new Error("Error de conexión con Zeno"); const data = await res.json(); if (data && data.now_playing) { const np = data.now_playing; // Nombre y artista titleEl.textContent = np.title || "Sin título"; artistEl.textContent = np.artist || "Desconocido"; // Imagen / carátula if (np.image && np.image !== coverImg.src) { coverImg.src = np.image; } } else { titleEl.textContent = "Transmitiendo en vivo"; artistEl.textContent = "Caricho Radio Chile"; } } catch (err) { console.log("No se pudo actualizar metadata:", err); } } // Llama de inmediato y repite cada 20 segundos updateNowPlaying(); setInterval(updateNowPlaying, 20000);