Acerca de la grabación de CD

[La característica asociada a esta página, Reproductor multimedia de Windows SDK, es una característica heredada. Se ha reemplazado por MediaPlayer. MediaPlayer se ha optimizado para Windows 10 y Windows 11. Microsoft recomienda encarecidamente que el nuevo código use MediaPlayer en lugar de Reproductor multimedia de Windows SDK, siempre que sea posible. Microsoft sugiere que el código existente que usa las API heredadas se reescriba para usar las nuevas API si es posible.

El SDK de Reproductor multimedia de Windows 11 presenta una nueva funcionalidad para crear CD. Este proceso se denomina quema.

Para enumerar las unidades de CD en el equipo del usuario, use la interfaz IWMPCdromCollection . Para recuperar un puntero a esta interfaz, llame a IWMPCore::get_cdromCollection. Mediante el uso de los métodos count y item , puede iterar la colección para recuperar un puntero de interfaz IWMPCdrom para cada unidad de CD del equipo del usuario. La interfaz IWMPCdrom representa una unidad de CD individual.

Antes de empezar a grabar un CD, primero debe llamar a QueryInterface a través de un puntero IWMPCdrom para recuperar un puntero a la interfaz IWMPCdromBurn . Mediante el método isAvailable , puede determinar si una unidad de CD determinada puede grabar cds, si hay un CD en la unidad y cómo se puede usar el CD.

Para especificar los elementos que se van a grabar en CD, debe crear una lista de reproducción. Reproductor multimedia de Windows representa listas de reproducción mediante la interfaz IWMPPlaylist. Puedes crear esta lista de reproducción de la manera que quieras. Por ejemplo, puede simplemente recuperar una lista de reproducción de la biblioteca llamando a IWMPMediaCollection::getByAlbum. Después de crear la lista de reproducción que desea grabar en CD, debe llamar al método IWMPCdromBurn::p ut_burnPlaylist y pasar el puntero de lista de reproducción como argumento. Esto establece la lista de reproducción como la que Reproductor multimedia de Windows copiará en el CD.

Si recupera una lista de reproducción de la biblioteca, los cambios realizados en la lista de reproducción se reflejarán en la biblioteca del usuario. Para evitar esto, llame a IWMPPlaylist::setItemInfo, pasando el nombre de atributo "Temporary" y el valor "true". Esto convierte la instancia de la lista de reproducción en una lista de reproducción temporal, que se puede editar sin cambiar la lista de reproducción original.

Cada vez que establezca una nueva lista de reproducción para grabar o realice cambios en una lista de reproducción de grabación existente, debe llamar a IWMPCdromBurn::refreshStatus para actualizar la información de estado. Esto garantiza que Reproductor multimedia de Windows realice el procesamiento necesario para proporcionarle información de estado precisa para la operación de grabación de CD.

Para especificar el tipo de CD que se va a grabar, llame a IWMPCdromBurn::p ut_burnFormat. Reproductor multimedia de Windows permite grabar dos tipos de CD: CDs de audio y CDs de datos. La enumeración WMPBurnFormat define los tipos de CD.

Puede especificar una etiqueta de volumen para el CD llamando a IWMPCdromBurn::p ut_label.

Cuando esté listo para empezar a grabar el CD, llame a IWMPCdromBurn::startBurn. Puede supervisar el progreso de la operación de quema llamando periódicamente a IWMPCdromBurn::get_burnProgress. Este método recupera un valor de progreso para toda la operación de quema. El valor recuperado es un número que representa el porcentaje de quemado completado. Puede supervisar el estado de la operación de quema controlando el evento IWMPEvents3::CdromBurnStateChange , que usa la enumeración WMPBurnState para indicar el estado actual. Debe tener cuidado de comparar el puntero IWMPCdromBurn (proporcionado por el evento) con el puntero que representa la operación de quema para asegurarse de que la operación ha generado el evento. Puede detener la operación de quema llamando a IWMPCdromBurn::stopBurn.

Hay dos eventos que puede controlar para recibir notificaciones de error sobre la operación de quema. El evento IWMPEvents3::CdromBurnError se genera cuando se produce un error genérico. IWMPEvents3::CdromBurnMediaError se genera cuando un elemento multimedia determinado produce un error durante la grabación. Al igual que el evento CdromBurnStateChange , cada uno de estos eventos proporciona un puntero IWMPCdromBurn que representa la operación de quema que generó el evento. El evento CdromBurnMediaError proporciona un puntero IDispatch que representa el elemento multimedia que generó el evento. Puede llamar a QueryInterface a través de este puntero para recuperar un puntero IWMPMedia .

Acerca del modelo de objetos del reproductor

IWMPCdrom (Interfaz)

IWMPCdromBurn (Interfaz)

IWMPCdromCollection (Interfaz)

Interfaz IWMPEvents3

IWMPMedia (interfaz)

Interfaz IWMPPlaylist

Atributo temporal