Tutorial C# – Rádio/MP3
Olá a todos. Hoje vou falar-vos de uma pequena aplicação que permite ouvir ficheiros MP3 e rádios online. Criei esta aplicação já há algum tempo para ver como era a interoperabilidade entre as aplicações e o Windows media player.
Esta aplicação está muito simples sem grandes condimentos e serve apenas para exemplificar como podem interagir com o SDK do Windows media player.
Primeiro de tudo e se quiserem desenvolver este tipo de aplicações irão necessitar de instalar o Windows Media Player SDK, que lhes dá referências e os DLL´s necessários para poderem trabalhar.
Podem fazer aqui o download.
Vamos então à aplicação.
Para começar e para simplificar o trabalho vão à toolbox, carregam com o botão direito do rato onde quiserem que fique o componente e fazem choose items, depois escolhem a tab COM e o item Windows Media Player control. Depois destes passos já têm o componente para poder arrastar para a form. Este componente irá disponibilizar-nos vários métodos para usarmos como por exemplo carregar as músicas a partir do disco ou de um URL, próxima faixa, anterior e parar e começar a tocar.
Nesta imagem podem ver na primeira linha como se carrega uma música, neste caso a partir de um URL. Nas outras linhas são os comandos, andar para a frente, trás e parar.
O resto da aplicação está muito simples podem explorar á vontade; outra funcionalidade é o facto de poderem abrir listas de músicas que depois irão ficar numa janela à parte chamada playlist.
Bom por hoje é tudo. Com este tutorial apenas quis demonstrar que não estamos limitados a nada e a Framework .NET nos auxilia em quase tudo, o limite é a imaginação e por falar em imaginação, já estou a ficar sem ideias para o que falar aqui, vocês já sabem tudo!
Por isso gostava que me indicassem um tema para falar para a semana; até poderá ser a repetição de um tema passado e como já referi antes não poderá ser a Entity framework nem WPF porque não me sinto à vontade com essas tecnologias.
Download: Tutorial C# - Rádio/MP3 [1.95MB]
Cumprimentos a todos e boa programação.
Licença: Freeware
Sistemas Operativos: Windows XP/Vista/Win7
Download: Leitor Rádio-Mp3 Peopleware 0.1 [159.36KB]
Homepage: Pplware
Este artigo tem mais de um ano
Boas Henrique,
antes de mais, deixa-me congratular-te pelo excelente trabalho que tens vindo a fazer aqui no Pplware, com a tua rúbrica dos tutoriais em C#.
Aproveitando a tua deixa/convite, sobre assuntos para um próximo tuturial, queria deixar-te a sugestão de te debruçares sobres os tipos de dados BLOB, e como é possível ‘passá-los’ para uma base de dados. Isto é o tratamento/manipulação que têm de sofrer antes de ser enviados para o SQL, Oracle, IBM DB, etc.
Um abraço para toda a equipa do Pplware.
David Manuel Pires
Obrigado,
Parece-me interessante, com BLOB só trabalhei com imagens, mas estava a pensar talvez guardar um video numa BD, é possivel certo? depois é só transformar isso em bytes?
Cumprimentos
O procedimento será exactamente esse. A mneira como se o executa é que pode variar, havendo quem o faça por leitura e e escrita de streams, para posteriormente poder efectuar a conversão para bytes.
O desafio/convite que sugeri seria exactamente esse.
Eu já uma vez trabalhei com esse tipo de dados e encontrei sempre grandes problemas para o SQL Server 2005 me aceitar o parâmetro que lhe estava a passar, após a leitura do stream e a sua conversão para bytes.
Um abraço
David Manuel Pires
@ David Pires
So por curiosidade podes dar uma pequena descricao sobre o k sao dados BLOB ? Obrigado.
Um dos primeiros programas k fiz em VB 6.0 ( kd comecei a programar ) tb foi um leitor de mp3 😛 Olha dp le o post k pus no tutorial anterior acerca do webcast se ainda n leste.
Abracos.
Já respondi á mensagem e enviei-te uma PM com o mail.
Fico a aguardar.
Cumprimentos.
@Shogun,
A definição é ‘binary large object’. Geralmente, e no que a base de dados diz respeito, costumam ser ficheiros de imagem, audio, ou multimédia, que, em virtude de geralmente serem bastante pesados costumam ser guardados em campos próprios, como dados binários.
A questão coloca-se então no tratamento que é necessário fazer em termos de aplicação (conversão dos dados para o tipo byte, por exemplo, através de um StreamReader) antes dos dados serem enviados para a BD. Bem como o processo inverso, ler o BLOB da BD, e convertê-lo então para a aplicação (utilizando por ex. um StreamWriter).
Aquilo a que me refiro é a manipulção dos dados que é necessário então fazer.
Cumprimentos.
David Manuel Pires
Ah ja ouvi falar nisso entao, por acaso era porreiro aprender a mexer nisso dava imenso jeito, pk n fazes um artigo mesmo que basico sobre isso?
Obrigado pela info 😉
Olá Henrique, desde já, parabens pelo trabalho…
Mas tenho um pequeno problema…
Sempre que me quero ligar a uma rádio, passado um pouco o programa encontra um erro e crasha e assim consecutivamente :S
O que posso fazer para solucionar isto?
Cumpz
Obrigado,
quando ao problema, como disse esta aplicação não está muito cuidada, boa oportunidade para vasculhar e corrigir esse bug 🙂
Mas em principio o que podes tentar fazer é ir á pasta bin\debug e copiar todos os dlls para a pasta do executavel, talvés os dois que lá se encontram não sejam suficientes.
Cumprimentos
Sugestão: Podias fazer um cliente para o Twitter!
Uma vez que estamos a falar de integrar com o windows media player, suponho que para reproduzir videos (no disco ou online) seja aplicar a mesma analogia que tens nessa aplicação… ou é algo diferente?
Para ser sincero nem utilizo esse serviço.
Mas seria interessante, o twitter tambem disponibiliza rss?
Cumprimentos.
Henrique,
O Twitter disponibiliza um conjunto de API’s: http://apiwiki.twitter.com/
Talvez ajude mais aqui:
http://apiwiki.twitter.com/Libraries#C/NET
Sei que o Netbeans já trás um cliente Twitter (nunca exprimentei) como aplicação de exemplo.
Não sei se o twitter disponibiliza RSS’s.
Até depois.
Alguém sabe os links das rádios da RFM (rfm, amos80, oceano pacifico)? Eu não consigo apanhar os links válidos
Para conseguires esses links existem varios truques. O que eu uso e se estiver disponivel é carregar na opção ouvir no Windows media player e depois vou as propriedades do ficheiro que está a tocar e está lá o link.
Para a RFM : http://www.rfm.pt/live/streamnew_rfm.asx
Cumprimentos
Obrigado
Mas continuo a não conseguir o link das rádios web, Amos80, Clubbing e Oceano Pacífico. Estivo com o firefox em linux, a tentar aceder através “ver código fonte da página” e nem por aí consigo, o único link que apanhei foi este http://www.rfm.pt/live/newstream_80srfm_ok.asx mas acho que é a publicidade que vê do OK seguros.
Se conseguires encontrar os links das referidas estações agradeço imenso pois gosto de as ter todas no rythmbox, senão agradeço a disponibilidade.
Oceano pacifico:
http://www.rfm.pt/live/stream_rfm_op.asx
Clubbing:
http://www.rfm.pt/live/stream_rfm_clubbing.asx
Anos 80:
http://www.rfm.pt/live/newstream_80srfm_ok.asx
Correcção de erro, não é a publicida da OK teleseguro, é o link da rádio, mas não funciona.
Já estive a experimentar o teu programa sobre o wine, mas ando com uns problemas. Já o enviei para uma pessoa experimentar e depois de direi se corre bem no wine ou não, pois não sei se será problema do meu com as 10,000 alterações que lhe fiz.
Pra galera do pplware, estou gostando MUITO dos tutorials, comecei agora programação na faculdade e estou sendo apresentado a linguagem C. Se puder façam tutoriais para essa linguagem.
Outra coisa que me interessa muito é a confecção de interfaces, gostaria muito de botar interfaces nos meus programas porém não ensinam isso na faculdade por enquanto e só tenho usado o console.
Fastástico Henrique, o teu trabalho é de louvar.
Numa semana destas que tenha uns diazitos livres, pego num PDF de C# e nos teus tutorials e vou dar luz ao C# aqui na massa cinzenta ^^
Até agora só aqui passaram C/C++ e assembly (pouco).
Abraço
Muitos Parabéns Henrique! Andava mesmo à procura de algo assim. E o código está cheio de boas curiosidades.
Parabéns mais uma vez pelos posts frequentes!
Abraço
alguem explica-me como gravar mais radios ou mesmo adicionar estas que estao aqui e que nao sei onde o programa grava a playlis logo nao consigo adicionar as 3 radios referidas no post, ao programa.Como adiciono radios ao programa e as playlist, eu so consigo criar playlist com 1 musica ou 1 link de radio e nem as grava ou qd grava so aparece uma playlist mas deresto esta bom o programa excelente
E que tal fazerem isto em VB.NET?
A MS afirma que ambas as linguagens têm o mesmo poder (o que é verdade pois programam para a .NET Framework). Além disso, VB.NET é mais simples e possui um sistema Intellisense bem melhor.
Já aprendi esta linguagem há tempos e estou contente. Também usei C# e não gostei muito. Prefiro só programar em C e VB.NET.
Há gente que vê o PPLWARE e que é novata e por isso devia haver uma secção sobre Visual Basic .NET
Muito bom mesmo e bastante interessante!
Quanto à aplicação em si até dá bastante jeito para servir como aplicação portable 😉
Caro Henrique Graça,
Tenho seguido atentamente os teus tutoriais e acho-os muito bons. Estou à espera que um dia faças um sobre um tema que me interessa particularmente 🙂 e gostava de saber como te expor a minha ideia a ver se é possível dares-me umas dicas.
Obrigado
Olá a todos….
Tou n último do meu curso e teho que apresentarum projecto final.
Tive a ideia criar um Leitor multimedia em C#.
Mas nao queria usar esse controlo dowindows media player será que alguém pode me dar umas dicas?
Algum componente identico ao MMCI do Vb6.0
Desde de já agradeço..
Caros amigos
Gostaria de saber se me poderam ajudar. Procuro saber como poderei construir uma rádio online, e de preferência, grátis.
Obrigado pela possível ajuda
cara se vc existe mesmo, to presisando de uma força ae..Estou elaborando um projeto de mp3, que faça dawlonload de musicas, e se possivel que de pra fazer uma conexão tipo bluetooth, para passar e receber arquivos, mais nem sei por onde começar sou iniciante e estou, me esforçando pakas é que trampo e trabalho e tenhu uma hora de estudo, em sala de aula o professor explica as matérias. Se der pra ajudar eu agradeço, se não agradeço tabem pelo menos leu..valeu..
ejsb2323
Bem esse é um player de audio,eu estou procurando na internet e não achei ainda os códigos de como criar um sistema para transmitir webrádio como o radioboss ou sam broadcaster por exemplo.Tens alguma idéia de como fazer!!!