1. Prefacio
Con la mejora continua del entorno de hardware y software multimedia, actualmente, la mayor parte del desarrollo de software implica la aplicación de tecnología de software multimedia.
Para diseñar aplicaciones multimedia, en principio, puede utilizar múltiples niveles de herramientas, desde C hasta sistemas de desarrollo específicos de multimedia (como TOOLBOOK, AUTHORWARE, DIRECTOR). Sin embargo, dado que el software multimedia involucra medios complejos y diversos, tiene un ciclo de desarrollo corto y requiere la participación de una variedad de profesionales, para llevar a cabo un desarrollo práctico y eficiente, es necesario seleccionar un software que sea fácil de usar y tenga alta eficiencia de desarrollo.
VisualBasic es un software de herramienta de programación de Windows desarrollado por Microsoft. Debido a sus ideas de diseño avanzadas, uso rápido y sencillo y medios flexibles y diversos para controlar objetos multimedia, ha atraído la atención y el favor de los desarrolladores de software multimedia y, por lo tanto, se ha convertido en una herramienta ideal para el desarrollo de aplicaciones multimedia.
2. Control multimedia de VisualBasic MCI.OCX
MCI (Interfaz de control de medios) es un estándar de interfaz de control de medios proporcionado por Microsoft para lograr la independencia del dispositivo en sistemas Windows. Los usuarios pueden utilizar MCI fácilmente para controlar dispositivos multimedia estándar.
MCI se incluye en el módulo MMSYSTEM de Windows Multimedia Extension, que se utiliza para coordinar la comunicación entre eventos y controladores de dispositivos MCI y proporciona atributos de interfaz independientes del dispositivo. Por lo general, las aplicaciones distinguen los dispositivos MCI especificando un tipo de dispositivo MCI. El tipo de dispositivo especifica el tipo físico del dispositivo que se utiliza actualmente. Los diferentes tipos de dispositivos se describen utilizando diferentes atributos de control (consulte la Tabla 1 del Apéndice).
En cuanto a los métodos de control utilizados, los equipos MCI se dividen en dos categorías: compuestos y simples. Un dispositivo MCI simple no requiere ningún elemento de dispositivo. Por ejemplo, los reproductores de audio y CD funcionan en un disco duro ya instalado y no requieren que las aplicaciones proporcionen información sobre el contenido multimedia en el que operan. Pero para los dispositivos MCI compuestos, la aplicación debe proporcionar un elemento de dispositivo, es decir, un archivo de datos de origen o un archivo de destino que contenga todos los nombres de ruta.
El concepto CustomControl (componente de control de usuario) del lenguaje VisualBasic refleja la tendencia de desarrollo del diseño de software actual: la tecnología orientada a objetos los programadores pueden incorporar una variedad de controles de usuario en la caja de herramientas de VisualBasic (Caja de herramientas), y cada control de usuario Los componentes tienen ciertos atributos. y métodos de operación. Los programadores pueden completar funciones específicas estableciendo atributos y métodos de control. Para controlar multimedia cómodamente, se proporciona un control de usuario para fines multimedia: MCI.OCX en la versión profesional de la caja de herramientas VisualBasic.
Control MCI multimedia MCI.OCX se utiliza especialmente para grabar y reproducir archivos de datos multimedia de dispositivos MCI con interfaz de control multimedia. En términos de propósito y efecto, este control utiliza un conjunto de botones para emitir varios comandos de control de dispositivos para lograr control como: panel de audio, control MIDI de secuenciadores, unidades de CD-ROM, reproductores de CD de audio, reproducción de cintas de vídeo, grabación y reproducción de cintas de audio y otros equipos. En programación Visual Basic, al agregar el control MCI multimedia a la tabla (haga doble clic en el control MCI en la caja de herramientas), aparecerán los siguientes grupos de botones: adelante (PRev), atrás (Next), reproducir (Play), pausa ( Pausa, Atrás, Paso, Detener, Grabar y Expulsar.
La aplicación es muy flexible y conveniente para operar este conjunto de botones de MCI. Por ejemplo, cuando abrimos un dispositivo MCI, podemos seleccionar el botón de estado apropiado desde el control en cualquier momento de acuerdo con las propiedades del tipo de dispositivo para representarlo. estado físico inmediato del dispositivo. Todos los controles MCI se pueden programar de las siguientes maneras: ⑴ visibilidad y habilitación del control y sus botones; ⑵ redefinición variable o completa del control; ⑶ se pueden controlar múltiples dispositivos simultáneamente en forma de ventana.
3. Llamada del componente de control multimedia MCI.OCX
En Visual Basic 3.0 Professional Edition, el control multimedia MCI.OCX (en Visual Basic 3.0 y 4.0, la extensión del control multimedia es .VBX) se proporciona como un componente opcional. Para usarlo, primero debe ejecutar el comando de menú FileAddFile y agregar MCI.OCX en el directorio del sistema Windows a la caja de herramientas (Caja de herramientas). En este momento, el icono MCI.OCX correspondiente aparecerá en la caja de herramientas. Si está utilizando Visual Basic versión 4.0 (o versión 5.0), seleccione el menú oolsCustomControls o escriba Ctrl T directamente, aparecerá un cuadro de diálogo, seleccione la casilla de verificación junto a la entrada MicrosoftMultimediaControls en el cuadro de lista Controles disponibles y también aparecerá MCI. en la caja de herramientas icono .OCX.
Haga doble clic en el icono del control multimedia MCI.OCX en la caja de herramientas. Después de llamar al control MCI.OCX, aparecerá una fila de botones grises de control de medios (nueve) en el formulario FORM.
4. Pasos de diseño de aplicaciones multimedia VisualBasic
Control multimedia MCI.OCX contiene un conjunto de comandos de control avanzados independientes del dispositivo. Cuando use este control multimedia, primero use el comando OPEN para abrir el dispositivo MCI (dispositivo multimedia) y cree un archivo correspondiente para realizar operaciones como grabación o reproducción (pero los archivos correspondientes no se pueden usar para CDAudio, VCR y cintas de video). Una vez que el dispositivo se abre correctamente, se le pueden emitir varios comandos de operación (consulte los comandos de los botones en la tabla adjunta) para completar las tareas de trabajo especificadas. Finalmente, recuerde usar el comando Cerrar para cerrar dispositivos y archivos de datos.
Es muy conveniente utilizar MCI.OCX para desarrollar aplicaciones multimedia porque la mayoría de las propiedades son fáciles de entender, entre las cuales la propiedad Comando es particularmente importante. Envía comandos al dispositivo multimedia durante la operación. El formato es:
Formulario.Mmcontrol.Command=cmdstring$
Entre ellos, la variable cmdstring$ es el siguiente nombre de comando ejecutable: Abrir, Cerrar, Reproducir, Pausa, Detener, Atrás, Paso, Anterior, Siguiente, Buscar, Grabar, Expulsar, Sonido y Guardar. Una vez que se establece su comando, se ejecuta inmediatamente y cualquier error que ocurra se almacena en el atributo Error.
A continuación se reproduce el archivo DEMO.WAV (archivo de forma de onda) como ejemplo para ilustrar los pasos de diseño de la aplicación multimedia VisualBasic.
Primero, cree un formulario (Formulario) que contenga controles multimedia (MCI.OCX), de modo que las teclas de control con forma de grabadora se muestren en la pantalla, pero en este momento los componentes de control multimedia no se pueden usar de inmediato (las teclas son grises). el estado de la clave debe cambiarse mediante el código del programa.
En segundo lugar, en el proceso Form_Load, inserte el código de programa correspondiente. como sigue
SubForm_Load()
'Establece las propiedades del dispositivo multimedia antes de emitir el comando ABRIR
Form1.MMControl1.Notify=Falso
Form1.MMControl1.Wait=Verdadero
Form1.MMControl1.Shareable=Falso
Formulario1.MMControl1.DeviceType="WaveAudio"
Form1.MMControl1.FileName="c:windows
Mmdatademo.wav"
Form1.MMControl1.Command="Abrir"
FinSub
Finalmente, ejecute el programa anterior y las teclas de control estarán en negro. En este momento, puede usar las teclas Reproducir, Grabar y otras para operar el archivo de datos DEMO.WAV. Por ejemplo, haga clic en el botón Reproducir con el mouse para escuchar el efecto de sonido .WAV (la computadora debe estar equipada con un dispositivo de sonido).
A través de la declaración anterior, no es difícil encontrar que VisualBasic usa el control multimedia MCI.OCX para configurar un programa que es fácil de dominar.
5. Ejemplos de diseño de aplicaciones multimedia VisualBasic
1. Reproducir música en CD
Muchos sistemas de software multimedia proporcionan software de reproducción de discos láser. Utilizando el control multimedia MCI.OCX, podemos programar fácilmente un reproductor de discos láser sencillo que cumpla con nuestros propios requisitos.
La Tabla 1 proporciona la definición de los principales componentes de control de un reproductor de CD simple, seguida del código fuente del programa correspondiente a cada evento desencadenante.
La lista completa del programa fuente es la siguiente:
`Utilidad de reproductor de CD
`Cargue un disco láser en la unidad de CD-ROM antes de ejecutar el programa' El botón "LOAD" activa el evento
PrivadoSubCommand1_Click()
`Cargar el registro del CD
OnErrorGoToMCI_ERROR
MMControl1.Command="Abrir"
EnErrorGoTo0
`Establecer formato de hora
MMControl1.TimeFormat=vbMCIFormatTmsf
`Cierra el botón LOAD y muestra la imagen.
Command1.Enabled=Falso
Imagen1.Imagen=Imagen3.Imagen
`Establecer el número inicial de pistas
Etiqueta1.Caption="1"
SalirSub
MCI_ERROR:
Mostrar cuadro de mensaje de error
ReanudarMCI_EXIT
MCI_SALIDA:
DescargarCD
FinSub
PrivadoSubForm_Load()
MMControl1.Esperar=Verdadero
MMControl1.UpdateInterval=0
`Establecer tipo de dispositivo
MMControl1.DeviceType="CDAudio"
`Establece el número de pista predeterminado en 0
Etiqueta1.Caption="0"
ndSub
PrivateSubForm_Unload(CancelarAsInteger)
MCITest.Mostrar
FinSub
'El botón "Salida" activa el evento
PrivateSubMMControl1_EjectClick(CancelarAsInteger)
Command1.Enabled=Verdadero
Imagen1.Imagen=Imagen2.Imagen
MMControl1.UpdateInterval=0
OnErrorGoToMCI_ERROR2
MMControl1.Command="Expulsar"
MMControl1.Command="Cerrar"
EnErrorGoTo0
Etiqueta1.Caption="0"
Etiqueta3.BackColor=&H404040
SalirSub
MCI_ERROR2:
Mostrar cuadro de mensaje de error
ReanudarSiguiente
FinSub
'Evento de activación del botón "Adelante"
PrivateSubMMControl1_NextCompleted(ErrorCodeAsLong)
Etiqueta1.Caption=Str$(MMControl1.Track)
FinSub
'El botón "Pausa" activa el evento
PrivateSubMMControl1_PauseClick(CancelAsInteger)
MMControl1.UpdateInterval=0
Etiqueta3.BackColor=&H404040
FinSub
'El botón "reproducir" activa el evento
PrivateSubMMControl1_PlayClick(CancelAsInteger)
MMControl1.UpdateInterval=1000
Etiqueta1.Caption=Str$(MMControl1.Track)
FinSub
'El botón "Volver" activa el evento
PrivateSubMMControl1_PrevCompleted(ErrorCodeAsLong)
Etiqueta1.Caption=Str$(MMControl1.Track)
FinSub
PrivadoSubMMControl1_StatusUpdate()
Etiqueta1.Caption=Str$(MMControl1.PositionAnd&HFF)
IfMMControl1.Mode=vbMCIModePlayEntonces
Etiqueta3.BackColor=&H80FF&
Demás
Etiqueta3.BackColor=&H404040
Fin si
FinSub
'El botón "Detener" activa el evento
PrivateSubMMControl1_StopClick(CancelAsInteger)
MMControl1.UpdateInterval=0
Etiqueta3.BackColor=&H404040
MMControl1.To=MMControl1.Inicio
MMControl1.Command="Buscar"
MMControl1.Pista=1
Etiqueta1.Caption="1"
FinSub
2. Reproducir archivos AVI (Interfaz de audio y vídeo)
Las películas (incluidos el sonido y las imágenes) son uno de los medios de información que más preocupan a la mayoría de los trabajadores informáticos, y la tecnología de procesamiento de películas también es una de las tecnologías multimedia clave. En los sistemas multimedia, los archivos AVI (Audio Video Interface) son un formato estándar para almacenar películas (incluidos sonidos e imágenes). Estos archivos AVI generalmente se obtienen capturando señales de video en tiempo real, o las imágenes se pueden obtener a través de un escáner o mediante un escáner. software de animación. Por lo tanto, las operaciones de audio y video en la ventana de la pantalla se convierten en el procesamiento de archivos AVI (el sufijo del archivo es AVI). En el trabajo real, existen muchas formas de reproducir archivos AVI (es decir, vídeos), entre las cuales el método de utilizar el control multimedia de Visual Basic es el más sencillo y conveniente. A continuación se utiliza un ejemplo específico para ilustrar cómo reproducir un archivo AVI: supongamos que hay un archivo de video y audio llamado DEMO.AVI en el directorio actual del usuario y que usar VisulBasic para reproducir el video requiere los siguientes pasos:
(1) Agregue un control multimedia MMControl, un control de cuadro de imagen PictureBox y dos componentes de botón de comando ComandButton al formulario de Visual Basic;
(2) Establezca las propiedades de cada control, donde el formulario se denomina Form1, el control multimedia MMControl se denomina MMControl1, el control del cuadro de imagen PictureBox se denomina Imagen1 y los dos controles del botón de comando ComandButton se denominan Reproducir y Cerrar respectivamente;
(3) Escriba el código fuente del programa de cada evento desencadenante y ejecútelo. El código fuente es:
PrivadoSubPlay_Click()
MMControl1.Filename="DEMO.AVI"
MMControl1.DeviceType=="AVIVIDEO"
MMControl1.hWndDisplay=Imagen1.hWnd
MMControl1.Command="ABIERTO"
MMControl1.A=1
MMControl1.Command="BUSCAR"
MMControl1.Command="REPRODUCIR"
FinSub
PrivadoSubClose_Click()
MMControl1.Command="PARAR"
MMControl1.Command="CERRAR"
FinSub
Vale la pena señalar que antes de reproducir archivos AVI, primero se debe instalar el controlador AVI (audio vídeo) en Windows. El nombre del controlador AVI es MCIAVI.DRV. Debe copiarse al directorio WINDOWS SYSTEM y agregarse a la sección [MCI] del archivo SYSTEM.INI:
AVIVIDEO=MCIAVI.DRV
De esta forma, al ejecutar Windows, Windows instalará automáticamente el controlador AVI.
Lo anterior solo describe el proceso operativo de uso del componente de control multimedia para reproducir archivos de audio (.WAV), registros de CD y archivos de audio y video (.AVI). De hecho, el componente de control multimedia también se puede utilizar para reproducir archivos de animación (.FLI, .FLC), archivos MIDI y otra información multimedia.
6. Conclusión
De la discusión anterior, no es difícil ver que utilizando el componente de control multimedia MCI.OCX proporcionado por Visual Basic, la mayoría de los usuarios de computadoras pueden desarrollar diversas aplicaciones multimedia de manera conveniente, rápida y eficiente. Pero es necesario enfatizar que al desarrollar y diseñar aplicaciones multimedia de Visual Basic, además de usar componentes de control multimedia, también se pueden usar otros medios, como llamar a funciones API, etc. (en vista de la extensión, esto no se analiza aquí). Se puede ver que Visual Basic es de hecho una herramienta de desarrollo ideal para desarrolladores de software multimedia tanto profesionales como no profesionales.
Apéndice 1 Definición del tipo de dispositivo MCI
Tipo de dispositivoDescripción del dispositivo
Equipo reproductor de discos láser CDAudio
Reproductor de audio de cinta digital DAT
Equipos de imagen de vídeo digital dinámico DigitalVideo
Equipo de reproducción de animación.
Otros dispositivos MCI para los que no se proporciona una definición estándar
Overlay simula un dispositivo de superposición de imágenes de vídeo
Secuenciador MIDI
Grabador de disco controlado por programa VCR
VideoDisc puede utilizar reproductores de discos de vídeo láser controlados por programas
¿WaveAudio es un dispositivo que reproduce audio de forma de onda digital?
Apéndice 2 Lista de eventos únicos para componentes de control multimedia
Descripción del evento
Listo completa la acción del comando MCI (Notificar es verdadero)
BotónHaga clic en el botón
Finalización del comando de ejecución del botón ButtonCompleted
El botón ButtonGetFocus obtiene el foco de entrada
ButtonLostFocusButton perdió el foco de entrada
StatusUpdate actualiza la información de estado del objeto de control de medios->