Ho scritto un'applicazione WPF che sta acquisendo il display e il suono dalla scheda TV dal codice C#. Posso ottenere il display dalla scheda TV, ma non riesco ad ottenere alcun suono dalla scheda TV. A proposito, sto usando .NET Framework 3.5 con Visual Studio 2010. La mia domanda è: come posso ottenere il suono dalla scheda TV?Cattura di audio dalla scheda TV con C#
Infine, ho provato qualcosa di simile utilizzando la libreria DirectSound di DirectX. Tuttavia, ho ricevuto i seguenti errori.
- Il metodo migliore partita overload per
'Microsoft.DirectX.DirectSound.Device.SetCooperativeLevel(System.Windows.Forms.Control, Microsoft.DirectX.DirectSound.CooperativeLevel)'
ha alcuni validi argomenti. - Argomento 1: non può convertire da
'Wpfvideo.MainWindow'
a'System.Windows.Forms.Control'
Codice:
private DS.Device soundDevice;
private SecondaryBuffer buffer;
private ArrayList soundlist = new ArrayList();
private void InitializeSound()
{
soundDevice = new DS.Device();
soundDevice.SetCooperativeLevel(this, CooperativeLevel.Priority);
BufferDescription description = new BufferDescription();
description.ControlEffects = false;
buffer = new SecondaryBuffer(CaptureDeviceName, description, soundDevice);
buffer.Play(0, BufferPlayFlags.Default);
SecondaryBuffer newshotsound = buffer.Clone(soundDevice);
newshotsound.Play(0, BufferPlayFlags.Default);
}
hai trovato l'errore perché il metodo SetCooperativeLevel si aspetta un controllo Windows Form e si passa una finestra di WPF. –
grazie per la tua risposta. Cosa devo fare? – Selo
Non esiste una "correzione" per cui non è possibile trasformare una finestra wpf in un controllo winforms. –