Comment ajouter des effets audio ou vidéo

[MFPlay peut être utilisé dans les systèmes d’exploitation spécifiés dans la section Configuration requise. Il sera peut-être modifié ou indisponible dans les versions ultérieures. ]

Cette rubrique explique comment utiliser des effets audio/video avec MFPlay.

Pour utiliser un effet avec MFPlay, l’effet doit être implémenté en tant que transformation de Media Foundation (MFT). Pour plus d’informations, consultez Media Foundation transformations.

Pour ajouter un effet audio ou vidéo

  1. Créez une instance de la table MFT qui implémente l’effet.
  2. Appelez IMFPMediaPlayer :: InsertEffect.

Appelez InsertEffect avant d’ouvrir le fichier multimédia pour la lecture. MFPlay détermine automatiquement si l’effet est un effet vidéo ou audio.

La méthode InsertEffect prend également un paramètre booléen qui spécifie si l’effet est facultatif ou obligatoire. Si MFPlay ne peut pas ajouter un effet requis (par exemple, parce que le format de flux est incompatible), une erreur de lecture se produit. Dans la plupart des cas, il est préférable de définir un effet comme facultatif.

MFPlay continue à utiliser l’effet pour la lecture suivante. Pour supprimer l’effet, appelez IMFPMediaPlayer :: RemoveEffect ou IMFPMediaPlayer :: RemoveAllEffects.

HRESULT AddPlaybackEffect(REFGUID clsid, IMFPMediaPlayer *pPlayer)
{
    IMFTransform *pMFT = NULL;

    HRESULT hr = CoCreateInstance(clsid, NULL, CLSCTX_INPROC_SERVER, 
        IID_PPV_ARGS(&pMFT));

    if (SUCCEEDED(hr))
    {
        hr = pPlayer->InsertEffect(pMFT, TRUE); // Set as optional.
    }

    SafeRelease(&pMFT);
    return hr;
}

Configuration requise

MFPlay requiert Windows 7.

Utilisation de MFPlay pour la lecture audio/vidéo