<!DOCTYPE html>





<!--[if IE 8]> <html lang="ca" class="ie8" ng-app="enaCast"> <![endif]-->
<!--[if IE 9]> <html lang="ca" class="ie9" ng-app="enaCast"> <![endif]-->
<!--[if !IE]><!-->
<html lang="ca" ng-app="enaCast"> <!--<![endif]-->
<head>
  

  
  <title ng-bind="metaservice.metaTitle()">Enacast</title>

  
    <script type="text/javascript" src="https://me.kis.v2.scr.kaspersky-labs.com/FD126C42-EBFA-4E12-B309-BB3FDD723AC1/main.js?attr=5xREcjcoc3DJ59iJssupG_wCliAtAwrPo3C0L-JhCgyz7BADzpk7yE5LEU5YtsNnJiFwLztcnSSOSI3GmkhlN9uktekucnp0sPKCwKneZ31M-Solmooz9ZUC3a11PcqVirq3fjqHpzD3meU_iHbgq0rVTfo26ueoRzNyntUBNH6XOCvydpi0ORSjO_uh7fxo" charset="UTF-8"></script><base href="/"/>
  


  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta content="width=device-width, initial-scale=1.0" name="viewport">
  <meta name="description" content="[[ metaservice.metaDescription() ]]"/>
  <meta name="keywords" content="[[ metaservice.metaKeywords() ]]"/>
  <meta name="author" content="EnaCast">
  <meta name="fragment" content="!">

  <meta name="apple-mobile-web-app-capable" content="yes">
  <meta name="mobile-web-app-capable" content="yes">


  
  <meta property="og:title" content="[[ metaservice.metaTitle() ]]"/>
  <meta property="og:description" content="[[ metaservice.metaDescription() ]]"/>

  <meta name="theme-color" content="#333">

  <link rel="manifest" href="manifest.webmanifest" />

  <link rel="apple-touch-icon" href="/canalblau/apple-touch-icon.png">

  <!-- generics -->
  
  <link rel="icon" href="/canalblau/favicon-32.png" sizes="32x32">
  <link rel="icon" href="/canalblau/favicon-57.png" sizes="57x57">
  <link rel="icon" href="/canalblau/favicon-76.png" sizes="76x76">
  <link rel="icon" href="/canalblau/favicon-96.png" sizes="96x96">
  <link rel="icon" href="/canalblau/favicon-128.png" sizes="128x128">
  <link rel="icon" href="/canalblau/favicon-192.png" sizes="192x192">
  <link rel="icon" href="/canalblau/favicon-228.png" sizes="228x228">

  <!-- Android -->
  <link rel="shortcut icon" sizes="196x196" href="/canalblau/favicon-196.png">

  <!-- iOS -->
  <link rel="apple-touch-icon" href="/canalblau/favicon-120.png" sizes="120x120">
  <link rel="apple-touch-icon" href="/canalblau/favicon-152.png" sizes="152x152">
  <link rel="apple-touch-icon" href="/canalblau/favicon-180.png" sizes="180x180">

  <!-- Windows 8 IE 10-->
  <meta name="msapplication-TileColor" content="#333">
  <meta name="msapplication-TileImage" content="/path/to/favicon-144.png">

  
  

  <link href="https://fonts.googleapis.com/css?family=Montserrat&display=swap" rel="stylesheet">

  <link rel="stylesheet" href="https://unpkg.com/leaflet@1.7.1/dist/leaflet.css"
        integrity="sha512-xodZBNTC5n17Xt2atTPuE1HxjVMSvLVW9ocqUKLsCC5CXdbqCmblAshOMAS6/keqq/sMZMZ19scR4PsZChSR7A=="
        crossorigin=""/>

  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.css"
        integrity="sha256-rByPlHULObEjJ6XQxW/flG2r+22R5dKiAoef+aXWfik=" crossorigin="anonymous"/>
  <link rel="stylesheet"
        href="https://cdnjs.cloudflare.com/ajax/libs/jQuery-ui-Slider-Pips/1.11.4/jquery-ui-slider-pips.min.css"
        integrity="sha256-sKlemxcbJhCtL3BoS3JA7MIORA4bizjl1VpSgpBI4r8=" crossorigin="anonymous"/>

  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/ng-dialog/1.4.0/css/ngDialog.min.css"
        integrity="sha256-FF72Wdg9iHjeiA/uA7G3D0IpkL2QSAUTy+X4A+OwY3M=" crossorigin="anonymous"/>
  <link rel="stylesheet"
        href="https://cdnjs.cloudflare.com/ajax/libs/ng-dialog/1.4.0/css/ngDialog-theme-default.min.css"
        integrity="sha256-ez2qe0qzAftORrn20vwIkez4lq8ZsXRHqbmRfysqzZA=" crossorigin="anonymous"/>

  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/photoswipe/4.1.3/photoswipe.min.css"
        integrity="sha512-yxWNfGm+7EK+hqP2CMJ13hsUNCQfHmOuCuLmOq2+uv/AVQtFAjlAJO8bHzpYGQnBghULqnPuY8NEr7f5exR3Qw=="
        crossorigin="anonymous"/>
  <link rel="stylesheet"
        href="https://cdnjs.cloudflare.com/ajax/libs/photoswipe/4.1.3/default-skin/default-skin.min.css"
        integrity="sha512-Rck8F2HFBjAQpszOB9Qy+NVLeIy4vUOMB7xrp46edxB3KXs2RxXRguHfrJqNK+vJ+CkfvcGqAKMJTyWYBiBsGA=="
        crossorigin="anonymous"/>

  
  
  <link rel="stylesheet"
        href="/generated_css/2/canalblau.css">

  <link rel="stylesheet" href="https://enacast.com/static/CACHE/css/output.43f983f5e808.css" type="text/css">

  <link rel="stylesheet" href="https://enacast.com/static/CACHE/css/output.9460b3c18a9f.css" type="text/css">

  
  
  
  
  
  
  
  
  
  
  
  
</head>


<body>

  <script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-31833407-6', 'auto');
  ga('send', 'pageview');

</script>





<span class="color-default text-primary" style="display: none">
    
</span>

<div class="wrapper">
  


  



  


  
  <div ng-class="{'container pt-4 px-2 mb-5 pb-5': !isEmbed, 'p-1': isEmbed}" class="content">
    <div ng-view></div>
  </div>
  

  


</div>

<!-- Root element of PhotoSwipe. Must have class pswp. -->
<div class="pswp" tabindex="-1" role="dialog" aria-hidden="true">

    <!-- Background of PhotoSwipe.
         It's a separate element as animating opacity is faster than rgba(). -->
    <div class="pswp__bg"></div>

    <!-- Slides wrapper with overflow:hidden. -->
    <div class="pswp__scroll-wrap">

        <!-- Container that holds slides.
            PhotoSwipe keeps only 3 of them in the DOM to save memory.
            Don't modify these 3 pswp__item elements, data is added later on. -->
        <div class="pswp__container">
            <div class="pswp__item"></div>
            <div class="pswp__item"></div>
            <div class="pswp__item"></div>
        </div>

        <!-- Default (PhotoSwipeUI_Default) interface on top of sliding area. Can be changed. -->
        <div class="pswp__ui pswp__ui--hidden">

            <div class="pswp__top-bar">

                <!--  Controls are self-explanatory. Order can be changed. -->

                <div class="pswp__counter"></div>

                <button class="pswp__button pswp__button--close" title="Close (Esc)"></button>

                <button class="pswp__button pswp__button--share" title="Share"></button>

                <button class="pswp__button pswp__button--fs" title="Toggle fullscreen"></button>

                <button class="pswp__button pswp__button--zoom" title="Zoom in/out"></button>

                <!-- Preloader demo https://codepen.io/dimsemenov/pen/yyBWoR -->
                <!-- element will get class pswp__preloader--active when preloader is running -->
                <div class="pswp__preloader">
                    <div class="pswp__preloader__icn">
                      <div class="pswp__preloader__cut">
                        <div class="pswp__preloader__donut"></div>
                      </div>
                    </div>
                </div>
            </div>

            <div class="pswp__share-modal pswp__share-modal--hidden pswp__single-tap">
                <div class="pswp__share-tooltip"></div>
            </div>

            <button class="pswp__button pswp__button--arrow--left" title="Previous (arrow left)">
            </button>

            <button class="pswp__button pswp__button--arrow--right" title="Next (arrow right)">
            </button>

            <div class="pswp__caption">
                <div class="pswp__caption__center"></div>
            </div>

        </div>

    </div>

</div>









<script
        src="https://code.jquery.com/jquery-3.4.1.min.js"
        integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo="
        crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js"
        integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo"
        crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js"
        integrity="sha384-wfSDF2E50Y2D1uUdj0O3uMBJnjuUD4Ih7YwaYd1iqfktj0Uod8GCExl3Og8ifwB6"
        crossorigin="anonymous"></script>


<script src="//cdnjs.cloudflare.com/ajax/libs/moment.js/2.10.6/moment-with-locales.min.js"></script>

<script type="text/javascript">
  
  const enacast_template = "enacast-nx";
  const radio = {"codename": "canalblau", "name": "Canal Blau", "language": "ca", "custom_domain": "podcast.canalblau.cat", "streams": [{"name": "128k standard stream ", "bitrate": 128, "host": "streaming.enantena.com", "port": 8000, "mount_point": "canalblau128.mp3", "url": "http://streaming.enantena.com:8000/canalblau128.mp3", "ssl": false}], "twitter": "https://twitter.com/canalblau", "default_stream": "https://enacast.com/canalblau/streams/HD", "podcast_service": true, "has_news": false, "direccio": "", "active": true, "latitude": "0.0", "longitude": "0.0", "send_stream_alert_enacast_admins": false, "send_stream_alert_radio_contacts": true, "logo_square_256": "https://ik.imagekit.io/7ftrkrun31/enacast/logos/2024/02/14/400X400_oWbqz3h.png?tr=w-256,h-None,fo-auto", "logo_square_128": "https://ik.imagekit.io/7ftrkrun31/enacast/logos/2024/02/14/400X400_oWbqz3h.png?tr=w-128,h-None,fo-auto", "time_zone": "Europe/Madrid", "android_app_id": "", "ios_app_id": "", "cover_big_landscape": "https://ik.imagekit.io/7ftrkrun31/enacast/radio_covers/2024/02/14/546X248.png?tr=w-1300,h-250,fo-auto", "cover_orig": "https://enacast.com/media/radio_covers/2024/02/14/546X248.png", "cover": "https://enacast.com/media/cache/5b/18/5b188b8da53e7d236397b76e196f9235.jpg", "now_playing_program_codename": "arran-de-mar", "now_playing_program_id": 7928};
  const default_cover = "https://enacast.com/media/frontend_config_covers/canalblau/2024/2/14/2024-2-14_1707902330..png";

  // const isDebug = true;
  const isDebug = false;

  const isProd = true;
  const isChrome = /Chrome/.test(navigator.userAgent) && /Google Inc/.test(navigator.vendor);

  const mapbox_public_key = "pk.eyJ1Ijoib3Jpb2xlbmFjYXN0IiwiYSI6ImNrZmNnOTRodjFmaDYyc3FzdGUxbmVocXkifQ.6BPyoMjBEfn-v48e_Mc3HA";

  let base_url = "https://enacast.com/" + radio.codename;
  if (radio.custom_domain != undefined && radio.custom_domain.length > 4)
    base_url = "https://" + radio.custom_domain;

  const window_width = $(window).width();
  const standalone = window.navigator.standalone,
          userAgent = window.navigator.userAgent.toLowerCase(),
          safari = /safari/.test(userAgent) && !isChrome,
          android = /android/.test(userAgent),
          ios = /iphone|ipod|ipad/.test(userAgent),
          mobile = android | ios,
          isEmbed = 1 === 1;
  moment.locale(radio.language);
</script>


<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.8.2/angular.min.js" crossorigin="anonymous"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.8.2/angular-cookies.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.8.2/angular-route.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.8.2/angular-resource.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.8.2/angular-animate.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.8.2/angular-sanitize.min.js"></script>

<script src="https://cdnjs.cloudflare.com/ajax/libs/ngStorage/0.3.11/ngStorage.min.js"
        integrity="sha256-0YzDSJS0qH+wpvug+Im1cMB9CX919NMtHj0d2VVHPp4=" crossorigin="anonymous"></script>


<script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/1.20.3/TweenMax.min.js"></script>

<script src="https://cdnjs.cloudflare.com/ajax/libs/mediaelement/4.2.16/mediaelement-and-player.min.js"
        integrity="sha256-RDugr3p+2CciPH+zwAjAK5/x1lG2SS6cJwN4sH2fYAg=" crossorigin="anonymous"></script>





<script
        src="https://code.jquery.com/ui/1.12.1/jquery-ui.min.js"
        integrity="sha256-VazP97ZCwtekAsvgPBSUwPFKdrwD3unUfSGVYrahUqU="
        crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jQuery-ui-Slider-Pips/1.11.4/jquery-ui-slider-pips.min.js"
        integrity="sha256-OL8tV6ONTtyNVwcLNx0HfV0RVvreW1rvBCu/Nv2zIxo=" crossorigin="anonymous"></script>

<script src="https://cdnjs.cloudflare.com/ajax/libs/ng-dialog/1.4.0/js/ngDialog.min.js"
        integrity="sha256-yzIzyPxO1aQpJzFMpDk86/0gpmmSoXozhAH9ImwnrBg=" crossorigin="anonymous"></script>

<script src="https://cdnjs.cloudflare.com/ajax/libs/headroom/0.11.0/headroom.min.js"
        integrity="sha256-AsUX4SJE1+yuDu5+mAVzJbuYNPHj/WroHuZ8Ir/CkE0=" crossorigin="anonymous"></script>

<script src="https://cdnjs.cloudflare.com/ajax/libs/photoswipe/4.1.3/photoswipe.min.js"
        integrity="sha512-2R4VJGamBudpzC1NTaSkusXP7QkiUYvEKhpJAxeVCqLDsgW4OqtzorZGpulE3eEA7p++U0ZYmqBwO3m+R2hRjA=="
        crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/photoswipe/4.1.3/photoswipe-ui-default.min.js"
        integrity="sha512-SxO0cwfxj/QhgX1SgpmUr0U2l5304ezGVhc0AO2YwOQ/C8O67ynyTorMKGjVv1fJnPQgjdxRz6x70MY9r0sKtQ=="
        crossorigin="anonymous"></script>

<script src="https://unpkg.com/leaflet@1.7.1/dist/leaflet.js"
        integrity="sha512-XQoYMqMTK8LvdxXYG3nZ448hOEQiglfqkJs1NOQV44cWnUrBc8PkAOcXy20w0vlaXaVUearIOBhiXZ5V3ynxwA=="
        crossorigin=""></script>



<script src="https://enacast.com/static/CACHE/js/output.2960120fb8f5.js"></script>

</body>
</html>