1. Prefácio
Com a melhoria contínua do ambiente de hardware e software multimídia, atualmente, a maior parte do desenvolvimento de software de computador envolve a aplicação de tecnologia de software multimídia.
Para projetar aplicações multimídia, em princípio, você pode usar vários níveis de ferramentas, desde C até sistemas de desenvolvimento específicos de multimídia (como TOOLBOOK, AUTHORWARE, DIRECTOR). Porém, como um software multimídia envolve mídias complexas e diversas, tem um ciclo de desenvolvimento curto e requer a participação de diversos profissionais, para realizar um desenvolvimento prático e eficiente, é necessário selecionar um software que seja fácil de usar e que tenha alta eficiência de desenvolvimento.
VisualBasic é um software ferramenta de programação do Windows desenvolvido pela Microsoft. Devido às suas ideias de design avançadas, utilização rápida e fácil e meios flexíveis e diversificados de controlar objetos de mídia, atraiu a atenção e o favor de desenvolvedores de software multimídia e, portanto, tornou-se uma ferramenta ideal para o desenvolvimento de aplicações multimídia.
2. Controle multimídia do VisualBasic MCI.OCX
MCI (Media Control Interface) é um padrão de interface de controle de mídia fornecido pela Microsoft para obter independência de dispositivo em sistemas Windows. Os usuários podem facilmente usar o MCI para controlar dispositivos multimídia padrão.
MCI está incluído no módulo MMSYSTEM da Extensão Multimídia do Windows, que é usado para coordenar a comunicação entre eventos e drivers de dispositivo MCI e fornece atributos de interface independentes de dispositivo. Normalmente, os aplicativos distinguem os dispositivos MCI especificando um tipo de dispositivo MCI. O tipo de dispositivo especifica o tipo físico do dispositivo que está sendo usado atualmente. Diferentes tipos de dispositivos são descritos usando diferentes atributos de controle (consulte a Tabela 1 do Apêndice).
Em termos dos métodos de controle utilizados, os equipamentos MCI são divididos em duas categorias: compostos e simples. Um dispositivo MCI simples não requer um elemento de dispositivo. Por exemplo, CDs de áudio e reprodutores de áudio funcionam em um disco rígido já instalado e não exigem que os aplicativos forneçam qualquer informação sobre o conteúdo de mídia em que operam. Mas para dispositivos MCI compostos, o aplicativo precisa fornecer um elemento de dispositivo, ou seja, um arquivo de dados de origem ou arquivo de destino contendo todos os nomes de caminho.
O conceito CustomControl (componente de controle de usuário) da linguagem VisualBasic reflete a tendência de desenvolvimento do design de software atual - a tecnologia orientada a objetos pode incorporar uma variedade de controles de usuário na caixa de ferramentas VisualBasic (Toolbox), e cada componente de controle de usuário possui determinados atributos. e métodos de operação. Os programadores podem completar funções específicas definindo atributos e controlando métodos. Para controlar a multimídia de maneira conveniente, um controle de usuário para fins multimídia - MCI.OCX é fornecido na versão profissional da caixa de ferramentas VisualBasic.
Controle MCI multimídia MCI.OCX é especialmente usado para gravar e reproduzir arquivos de dados multimídia de dispositivos MCI de interface de controle multimídia. Em termos de finalidade e efeito, este controle usa um conjunto de botões para emitir vários comandos de controle de dispositivo para obter controle, como: painel de áudio, controle MIDI de sequenciadores, unidades de CD-ROM, CD players de áudio, reprodução de fitas de vídeo, gravação e reprodução de fitas de áudio e outros equipamentos. Na programação em Visual Basic, ao adicionar o controle MCI multimídia à tabela (clique duas vezes no controle MCI na caixa de ferramentas), aparecerão os seguintes grupos de botões: avançar (PRev), retroceder (Próximo), reproduzir (Play), pausar ( Pausar, Voltar, Passo, Parar, Gravar e Ejetar.
O aplicativo é muito flexível e conveniente para operar este conjunto de botões do MCI. Por exemplo, quando abrimos um dispositivo MCI, podemos selecionar o botão de status apropriado no controle a qualquer momento de acordo com as propriedades do tipo de dispositivo para representar o. estado físico imediato do dispositivo. Todos os controles MCI podem ser programados das seguintes formas: ⑴ visibilidade e habilitação do controle e seus botões; ⑵ redefinição variável ou completa do controle; ⑶ múltiplos dispositivos podem ser controlados simultaneamente em forma de janela;
3. Chamada do componente de controle multimídia MCI.OCX
No Visual Basic 3.0 Professional Edition, o controle de multimídia MCI.OCX (no Visual Basic 3.0 e 4.0, a extensão do controle de multimídia é .VBX) é fornecido como um componente opcional. Para utilizá-lo, você deve primeiro executar o comando de menu Arquivo/Adicionar Arquivo e adicionar MCI.OCX no diretório Windows/sistema à caixa de ferramentas (Caixa de Ferramentas). Neste momento, o ícone MCI.OCX correspondente aparecerá na caixa de ferramentas. Se você estiver usando o Visual Basic versão 4.0 (ou versão 5.0), selecione o menu Ferramentas/CustomControls ou digite Ctrl T diretamente, uma caixa de diálogo será exibida, marque a caixa de seleção ao lado da entrada MicrosoftMultimediaControls na caixa de listagem AvailableControls e ela aparecerá. também aparecem na caixa de ferramentas. O ícone MCI.OCX aparece.
Clique duas vezes no ícone MCI.OCX do controle de multimídia na caixa de ferramentas. Depois de chamar o controle MCI.OCX, uma linha de botões cinza de controle de mídia (nove) aparecerá no formato FORM.
4. Etapas de design de aplicativo multimídia VisualBasic
Controle multimídia MCI.OCX contém um conjunto de comandos de controle avançados independentes de dispositivo. Ao usar este controle multimídia, primeiro use o comando OPEN para abrir o dispositivo MCI (dispositivo multimídia) e criar um arquivo correspondente para realizar operações como gravação ou reprodução (mas os arquivos correspondentes não podem ser usados para CDAudio, VCR e fitas de vídeo). Depois que o dispositivo for aberto com sucesso, vários comandos de operação (consulte comandos de botão na tabela anexa) poderão ser emitidos para ele concluir as tarefas de trabalho especificadas. Finalmente, lembre-se de usar o comando Fechar para fechar dispositivos e arquivos de dados.
É muito conveniente usar MCI.OCX para desenvolver aplicações multimídia porque a maioria das propriedades são fáceis de entender, entre as quais a propriedade Command é particularmente importante. Ela envia comandos para o dispositivo multimídia durante a operação. O formato é:
Formulário.MMcontrol.Command=cmdstring$
Entre eles, a variável cmdstring$ tem o seguinte nome de comando executável: Open, Close, Play, Pause, Stop, Back, Step, Prev, Next, Seek, Record, Eject, Sound e Save. Uma vez que seu comando é definido, ele imediatamente
Execução, o erro ocorrido é armazenado no atributo Error.
A seguir, a reprodução do arquivo DEMO.WAV (arquivo wave) é um exemplo para ilustrar o design de aplicativos multimídia do Visual Basic.
etapa.
Primeiro, crie um formulário (Form) contendo controles de multimídia (MCI.OCX), para que as teclas de controle em forma de gravador sejam exibidas na tela, mas neste momento os componentes de controle de multimídia não podem ser usados imediatamente (as teclas são cinza), deve passar
Altere o estado da chave através do código do programa.
Em segundo lugar, no processo Form_Load, insira o código do programa correspondente. do seguinte modo
SubForm_Load()
'Defina as propriedades do dispositivo multimídia antes de emitir o comando OPEN
Form1.MMControl1.Notify=Falso
Form1.MMControl1.Wait = Verdadeiro
Form1.MMControl1.Shareable=Falso
Form1.MMControl1.DeviceType="WaveAudio"
Form1.MMControl1.FileName = "c:/windowss/
mmdata/demo.wav"
Form1.MMControl1.Command="Abrir"
Fim Sub
Por fim, execute o programa acima e as teclas de controle ficarão pretas. Neste momento, você pode usar as teclas Play, Record e outras teclas para operar o arquivo de dados DEMO.WAV. Por exemplo, clique no botão Play com o mouse para ouvir o efeito sonoro .WAV (o computador deve estar equipado com um dispositivo de som).
A partir da afirmação acima, não é difícil descobrir que o Visual Basic usa o controle multimídia MCI.OCX para projetar aplicativos multimídia fáceis de dominar.
5. Exemplos de design de aplicativos multimídia VisualBasic
1. Reproduza música em CD
Muitos sistemas de software multimídia fornecem software de reprodutor de disco laser. Usando o controle multimídia MCI.OCX, podemos programar facilmente um reprodutor de disco laser simples que atenda aos nossos próprios requisitos.
A Tabela 1 fornece a definição dos principais componentes de controle de um CD player simples, seguida do código-fonte do programa correspondente a cada evento disparador.
A listagem completa do programa fonte é a seguinte:
'Utilitário reprodutor de CD
'Por favor, carregue um disco laser na unidade de CD-ROM antes de executar o programa' O botão "LOAD" aciona o evento
PrivateSubCommand1_Click()
'Carrega gravação do CD
OnErrorGoToMCI_ERROR
MMControl1.Command="Abrir"
OnErrorGoTo0
'Definir formato de hora
MMControl1.TimeFormat=vbMCIFormatTmsf
'Fecha o botão LOAD e exibe a imagem
Command1.Enabled=Falso
Figura1.Imagem=Imagem3.Imagem
'Define o número inicial de faixas
Label1.Caption="1"
SairSub
MCI_ERRO:
DisplayErrorMessageBox
CurrículoMCI_EXIT
MCI_EXIT:
Descarregar CD
Fim Sub
PrivateSubForm_Load()
MMControl1.Wait = Verdadeiro
MMControl1.UpdateInterval=0
'Definir tipo de dispositivo
MMControl1.DeviceType="CDÁudio"
'Define o número da faixa padrão como 0
Label1.Caption="0"
Fim Sub
PrivateSubForm_Unload(CancelAsInteger)
MCITest.Show
Fim Sub
'Botão "Saída" aciona evento
PrivateSubMMControl1_EjectClick(CancelAsInteger)
Command1.Enabled = Verdadeiro
Imagem1.Imagem=Imagem2.Imagem
MMControl1.UpdateInterval=0
OnErrorGoToMCI_ERROR2
MMControl1.Command="Ejetar"
MMControl1.Command="Fechar"
OnErrorGoTo0
Label1.Caption="0"
Label3.BackColor=&H404040
SairSub
MCI_ERROR2:
DisplayErrorMessageBox
CurrículoPróximo
Fim Sub
'Evento de disparo do botão "Avançar"
PrivateSubMMControl1_NextCompleted(ErrorCodeAsLong)
Label1.Caption=Str$(MMControl1.Track)
Fim Sub
'O botão "Pause" aciona o evento
PrivateSubMMControl1_PauseClick(CancelAsInteger)
MMControl1.UpdateInterval=0
Label3.BackColor=&H404040
Fim Sub
'O botão "play" aciona o evento
PrivateSubMMControl1_PlayClick(CancelAsInteger)
MMControl1.UpdateInterval=1000
Label1.Caption=Str$(MMControl1.Track)
Fim Sub
'O botão "Voltar" aciona o evento
PrivateSubMMControl1_PrevCompleted(ErrorCodeAsLong)
Label1.Caption=Str$(MMControl1.Track)
Fim Sub
PrivateSubMMControl1_StatusUpdate()
Label1.Caption=Str$(MMControl1.PositionAnd&HFF)
IfMMControl1.Mode=vbMCIModePlayThen
Label3.BackColor=&H80FF&
Outro
Label3.BackColor=&H404040
FimSe
Fim Sub
'O botão "Parar" aciona o evento
PrivateSubMMControl1_StopClick(CancelAsInteger)
MMControl1.UpdateInterval=0
Label3.BackColor=&H404040
MMControl1.To=MMControl1.Iniciar
MMControl1.Command="Procurar"
MMControl1.Track=1
Label1.Caption="1"
Fim Sub
2. Reproduza arquivos AVI (Interface de Áudio e Vídeo)
Os filmes (incluindo som e imagens) são uma das informações de mídia que mais preocupam a maioria dos trabalhadores de informática, e a tecnologia de processamento de filmes também é uma das principais tecnologias multimídia. Em sistemas multimídia, AVI (AudioVideoInterface, interface de áudio e vídeo
Os arquivos AVI são um formato padrão para armazenamento de filmes (incluindo som e imagens). Esses arquivos AVI geralmente são obtidos pela captura de sinais de vídeo em tempo real. Eles também podem ser obtidos pela obtenção de imagens por meio de um scanner ou por meio de software de produção de animação. Portanto, as operações de áudio e vídeo na janela da tela passam a ser o processamento de arquivos AVI (o sufixo do arquivo é AVI). No trabalho real, existem muitas maneiras de reproduzir arquivos AVI (ou seja, vídeos), entre as quais o método de usar o controle multimídia do Visual Basic é o mais simples e conveniente. A seguir, é usado um exemplo específico para ilustrar como reproduzir um arquivo AVI: Suponha que haja um arquivo de vídeo e áudio chamado DEMO.AVI no diretório atual do usuário e que o uso do VisulBasic para reproduzir o vídeo exija
Siga estas etapas:
(1) Adicione um controle multimídia MMControl, um controle de caixa de imagem PictureBox e dois componentes de botão de comando ComandButton ao formulário Visual Basic;
(2) Defina as propriedades de cada controle, onde o formulário é denominado Form1, o controle de multimídia MMControl é denominado MMControl1, o controle de caixa de imagem PictureBox é denominado Imagem1 e os dois controles de botão de comando ComandButton são denominados Play e Close respectivamente;
(3) Escreva o código-fonte do programa fonte de cada evento acionador e execute-o. O código fonte é:
PrivateSubPlay_Click()
MMControl1.Filename="DEMO.AVI"
MMControl1.DeviceType=="AVIVÍDEO"
MMControl1.hWndDisplay=Imagem1.hWnd
MMControl1.Command="ABRIR"
MMControl1.To=1
MMControl1.Command = "PROCURAR"
MMControl1.Command = "PLAY"
Fim Sub
PrivateSubClose_Click()
MMControl1.Command="PARAR"
MMControl1.Command = "FECHAR"
Fim Sub
É importante notar que antes de reproduzir arquivos AVI, o driver AVI (áudio e vídeo) deve primeiro ser instalado no Windows. O driver AVI é denominado MCIAVI.DRV. Ele deve ser copiado para o diretório /WINDOWS/SYSTEM e adicionado à seção [MCI] do arquivo SYSTEM.INI:
AVIVIDEO=MCIAVI.DRV
Desta forma, ao executar o Windows, o Windows instalará automaticamente o driver AVI.
O texto acima descreve apenas o processo de operação de uso do componente de controle multimídia para reproduzir arquivos de áudio (.WAV), gravações de CD e arquivos de áudio e vídeo (.AVI). Na verdade, você também pode usar componentes de controle multimídia para reproduzir arquivos de animação (.FLI, .FLC), MIDI
arquivos e outras informações de mídia.
6. Conclusão
A partir da discussão anterior, não é difícil ver que usando o componente de controle multimídia MCI.OCX fornecido pelo Visual Basic, a maioria dos usuários de computador pode desenvolver vários aplicativos multimídia de forma conveniente, rápida e eficiente. Mas é preciso ressaltar que ao desenvolver e projetar aplicações multimídia em Visual Basic, além de utilizar componentes de controle multimídia, outros meios também podem ser utilizados, como chamar funções API, etc. aqui). Pode-se ver que o Visual Basic é de fato uma ferramenta de desenvolvimento ideal para desenvolvedores de software multimídia profissionais e não profissionais.
Apêndice 1 Definição do tipo de dispositivo MCI
Tipo de dispositivoDescrição do dispositivo
Equipamento de leitor de disco laser CDAudio
Leitor de áudio de fita digital DAT
Equipamento de imagem de vídeo digital dinâmico DigitalVideo
Equipamento de reprodução de animação de animação
Outros dispositivos MCI para os quais não é fornecida nenhuma definição padrão
Overlay simula dispositivo de sobreposição de imagem de vídeo
Sequenciador MIDI de sequência
Gravador de disco controlado por programa VCR
VideoDisc pode usar reprodutores de disco de vídeo a laser controlados por programa
WaveAudio é um dispositivo que reproduz áudio em forma de onda digitalizada.
Apêndice 2 Lista de eventos exclusivos para componentes de controle multimídia
Descrição do evento
Concluído completa a ação do comando MCI (Notify é verdadeiro)
BotãoClique, clique no botão
Conclusão do comando de execução do botão ButtonCompleted
O botão ButtonGetFocus obtém o foco de entrada
ButtonLostFocusButton perdeu o foco de entrada
StatusUpdate atualiza as informações de status do objeto de controle de mídia->