Flex com SHOUTcast Streaming

Um dos melhores sistema para rádio On-line é o SHOUTcast. Estou estudando ele bastante agora, descobri coisas muito bacana dele com o Flex.

Então ao invés de só usar o Windows Media Player, podes também disponibilizar um player em Flash para seus ouvintes ouvirem diretamente da Web se a necessidade deste plug-in da M$.

Veja abaixo como é simples a sua utilização no Flex, mostrado em um player.

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
                layout="absolute"
                creationComplete="soundPlay()"
                width="174"
                height="86">
  <mx:Script>
    <![CDATA[
      private var sound:Sound
      private var channel:SoundChannel

      private function soundPlay():void
      {
        // Ativa o Pause
        btPause.enabled=true
        // Desativa o Play
        btPlay.enabled=false
        Security.allowDomain("http://seuServidorSHOUTcast.com/;stream.nsv");
        // Nova instancia da classe Sound
        sound=new Sound()
        sound.load(new URLRequest("http://seuServidorSHOUTcast.com/;stream.nsv"))
        // O play() é reaizado sobre um canal, pois é no canal que
        // podemos alterar o volume
        channel=sound.play()
      }

      private function soundPause():void
      {
        // Desativa o botão Pause
        btPause.enabled=false
        // Ativa o botão Play
        btPlay.enabled=true
        sound.close()
      }

      private function setVolume():void
      {
        // divide por 10, pois o Slider vái até 10 e
        // a propriedade volume deve receber no máximo 1
        channel.soundTransform.volume=volume.value / 10
      }
    ]]>
  </mx:Script>
  <mx:Button x="10"
           y="10"
           label="Play &gt;"
           id="btPlay"/>
  <mx:Button y="10"
             label="Pause ||"
             x="90"
             id="btPause"
             enabled="false"/>
  <mx:HSlider labels="Volume"
              minimum="0"
              maximum="10"
              value="6"
              snapInterval="0.1"
              allowTrackClick="true"
              liveDragging="true"
              right="10"
              left="10"
              y="40"
              id="volume"
              change="setVolume()"/>
</mx:Application>

O Código esta bem comentado e se precisar de mais detalhes, entre em contato.

Fique por dentro de nossas novidades, ideias e atualizações