Básicos do controlo Windows Media Player
Introdução
Para as necessidades multimédia mais básicas, o método mais simples, mas também menos próprio, de ler conteúdo multimédia é através do controlo Windows Media Player, que todos à partida temos pré-instalado nos nossos sistemas. A sua utilização é deveras simples. Com muito pouca configuração conseguimos ler multimédia num instante. Vamos dar uma olhadela às funções básicas da multimédia, e como chegar até lá.
Funções básicas
Função | No controlo | Descrição |
---|---|---|
Apontar ficheiro | WindowsMediaPlayer.URL | Apontar um ficheiro multimédia para a leitura |
Play | WindowsMediaPlayer.Ctlcontrols.play | Inicia a leitura |
Stop | WindowsMediaPlayer.Ctlcontrols.stop | Para a leitura |
Pause | WindowsMediaPlayer.Ctlcontrols.pause | Pausa a leitura |
Volume | WindowsMediaPlayer.settings.volume | Define o volume do som |
Tirar/Dar som | WindowsMediaPlayer.settings.mute | Tira completamente o som e volta a restituir |
Balanço | WindowsMediaPlayer.settings.balance | Define o balanço do som (L-R) |
Duração | WindowsMediaPlayer.currentMedia.duration | Devolve a duração do conteúdo multimédia |
Posição actual | WindowsMediaPlayer.Ctlcontrols.currentPosition | Determina a posição actual, na duração |
Nome da media actual | WindowsMediaPlayer.currentMedia.name | Devolve o nome da media actual |
Ideia: Posição actual e duração são dadas num valor não inteiro. A parte inteira representa o minuto e a flutuante a fracção do minuto. Por exemplo: 1,2344 é igual a 01:13 onde 1 é o minuto e 13 corresponde a 23% dos 60 segundos totais. Se desejar não efectuar estes cálculos, durationstring e currentPositionstring devolvem uma string formatada.
Importante: Ctlcontrols torna-se Controls se instanciada de WMP As WMPLib.WindowsMediaPlayer.
Configuração básica
Propriedade | Descrição |
---|---|
WindowsMediaPlayer.enableContextMenu |
True /False . Permite ou não o aparecimento do menu de contexto |
WindowsMediaPlayer.fullScreen |
True /False . Define se usa ecrã inteiro |
WindowsMediaPlayer.openState |
Devolve o estado da abertura de média |
WindowsMediaPlayer.playState |
Devolve o estado da reprodução |
WindowsMediaPlayer.status |
Devolve o estado do reprodutor |
WindowsMediaPlayer.uiMode |
String. Determina o aspecto do controlo: invisible (invisível), none (apenas a janela do video), mini (janela de video mais controlos essenciais) e full (janela do video e interface completo) |
Exemplo prático de utilização
Um exemplo extremamente básico da aplicação do controlo. Substitua todo o código da sua form pelo seguinte:
Public Class Form1
Private WMP As New WMPLib.WindowsMediaPlayer
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Carregar()
End Sub
Private Sub Carregar()
Dim OFD As New OpenFileDialog
OFD.Filter = "Musica|*.mp3;*.wma"
OFD.ShowDialog()
WMP.URL = OFD.FileName
WMP.settings.volume = 100
WMP.settings.balance = 50
Tocar()
End Sub
Private Sub Tocar()
WMP.controls.play()
Me.Text = WMP.currentMedia.name
End Sub
End Class
Mas eu não tenho esse controlo na toolbox
Se tem o Windows Media Player instalado no seu sistema, pode não ter o controlo na toolbox, mas tem o controlo com toda a certeza.
- Faça um clique com o botão direito do rato em cima da toolbox e do menu de contexto escolha: "Choose items"
- Nos separadores, em cima, seleccione "COM Components"
- Procure na lista (ordenada alfabeticamente) o item que tenha como nome "Windows Media Player"
- Marque na caixa de selecção e carregue em "OK"
- Já o deverá ter na toolbox.
Ideia: Também é possível instanciar um Windows Media Player programaticamente: WMP As WMPLib.WindowsMediaPlayer
.
Ir mais além
Existe muito mais funcionalidade no controlo, como a possibilidade de criar playlists ou ir buscar informação aos tags ID3, mas vamos considerar todas essas possibilidades como não básicas, logo inválidas para o artigo. Para saber mais, consultar a Windows Media Player SDK