Ejemplo de código - ¿Cómo seleccionar dispositivos de captura de video y audio?¶
Código de ejemplo para Delphi, C++ MFC y VB6
Seleccionar fuente de video¶
Obtener una lista de dispositivos de captura de video disponibles¶
for i := 0 to VideoCapture1.Video_CaptureDevices_GetCount - 1 do
cbVideoInputDevice.Items.Add(VideoCapture1.Video_CaptureDevices_GetItem(i));
// C++ MFC
for (int i = 0; i < m_VideoCapture.Video_CaptureDevices_GetCount(); i++)
m_cbVideoInputDevice.AddString(m_VideoCapture.Video_CaptureDevices_GetItem(i));
' VB6
For i = 0 To VideoCapture1.Video_CaptureDevices_GetCount - 1
cbVideoInputDevice.AddItem VideoCapture1.Video_CaptureDevices_GetItem(i)
Next i
Seleccionar el dispositivo de entrada de video¶
// C++ MFC
CString strDevice;
m_cbVideoInputDevice.GetLBText(m_cbVideoInputDevice.GetCurSel(), strDevice);
m_VideoCapture.put_Video_CaptureDevice(strDevice);
Obtener una lista de formatos de video disponibles¶
VideoCapture1.Video_CaptureDevice_Formats_Fill;
for I := 0 to VideoCapture1.Video_CaptureDevice_Formats_GetCount - 1 do
cbVideoInputFormat.Items.Add(VideoCapture1.Video_CaptureDevice_Formats_GetItem(i));
// C++ MFC
m_VideoCapture.Video_CaptureDevice_Formats_Fill();
for (int i = 0; i < m_VideoCapture.Video_CaptureDevice_Formats_GetCount(); i++)
m_cbVideoInputFormat.AddString(m_VideoCapture.Video_CaptureDevice_Formats_GetItem(i));
' VB6
VideoCapture1.Video_CaptureDevice_Formats_Fill
For i = 0 To VideoCapture1.Video_CaptureDevice_Formats_GetCount - 1
cbVideoInputFormat.AddItem VideoCapture1.Video_CaptureDevice_Formats_GetItem(i)
Next i
Seleccionar formato de video¶
// C++ MFC
CString strFormat;
m_cbVideoInputFormat.GetLBText(m_cbVideoInputFormat.GetCurSel(), strFormat);
m_VideoCapture.put_Video_CaptureFormat(strFormat);
o
Elegir automáticamente el mejor formato de video¶
// C++ MFC
m_VideoCapture.put_Video_CaptureFormat_UseBest(m_cbUseBestVideoInputFormat.GetCheck() == BST_CHECKED);
Obtener una lista de tasas de fotogramas disponibles¶
VideoCapture1.Video_CaptureDevice_FrameRates_Fill;
for I := 0 to VideoCapture1.Video_CaptureDevice_FrameRates_GetCount - 1 do
cbFrameRate.Items.Add(VideoCapture1.Video_CaptureDevice_FrameRates_GetItem(i));
// C++ MFC
m_VideoCapture.Video_CaptureDevice_FrameRates_Fill();
for (int i = 0; i < m_VideoCapture.Video_CaptureDevice_FrameRates_GetCount(); i++)
m_cbFrameRate.AddString(m_VideoCapture.Video_CaptureDevice_FrameRates_GetItem(i));
' VB6
VideoCapture1.Video_CaptureDevice_FrameRates_Fill
For i = 0 To VideoCapture1.Video_CaptureDevice_FrameRates_GetCount - 1
cbFrameRate.AddItem VideoCapture1.Video_CaptureDevice_FrameRates_GetItem(i)
Next i
Seleccionar tasa de fotogramas¶
// C++ MFC
CString strFrameRate;
m_cbFrameRate.GetLBText(m_cbFrameRate.GetCurSel(), strFrameRate);
m_VideoCapture.put_Video_FrameRate(_wtof(strFrameRate));
Seleccione la entrada de video necesaria (configure crossbar) si es necesario.
Seleccionar fuente de audio¶
Usar dispositivo de captura de video como fuente de audio¶
o
Obtener una lista de dispositivos de captura de audio disponibles¶
for I := 0 to VideoCapture1.Audio_CaptureDevices_GetCount - 1 do
cbAudioInputDevice.Items.Add(VideoCapture1.Audio_CaptureDevices_GetItem(i));
// C++ MFC
for (int i = 0; i < m_VideoCapture.Audio_CaptureDevices_GetCount(); i++)
m_cbAudioInputDevice.AddString(m_VideoCapture.Audio_CaptureDevices_GetItem(i));
' VB6
For i = 0 To VideoCapture1.Audio_CaptureDevices_GetCount - 1
cbAudioInputDevice.AddItem VideoCapture1.Audio_CaptureDevices_GetItem(i)
Next i
Seleccionar el dispositivo de entrada de audio¶
// C++ MFC
CString strAudioDevice;
m_cbAudioInputDevice.GetLBText(m_cbAudioInputDevice.GetCurSel(), strAudioDevice);
m_VideoCapture.put_Audio_CaptureDevice(strAudioDevice);
Obtener una lista de formatos de audio disponibles¶
VideoCapture1.Audio_CaptureDevice_Formats_Fill;
for I := 0 to VideoCapture1.Audio_CaptureDevice_Formats_GetCount - 1 do
cbAudioInputFormat.Items.Add(VideoCapture1.Audio_CaptureDevice_Formats_GetItem(i));
// C++ MFC
m_VideoCapture.Audio_CaptureDevice_Formats_Fill();
for (int i = 0; i < m_VideoCapture.Audio_CaptureDevice_Formats_GetCount(); i++)
m_cbAudioInputFormat.AddString(m_VideoCapture.Audio_CaptureDevice_Formats_GetItem(i));
' VB6
VideoCapture1.Audio_CaptureDevice_Formats_Fill
For i = 0 To VideoCapture1.Audio_CaptureDevice_Formats_GetCount - 1
cbAudioInputFormat.AddItem VideoCapture1.Audio_CaptureDevice_Formats_GetItem(i)
Next i
Seleccionar el formato¶
// C++ MFC
CString strAudioFormat;
m_cbAudioInputFormat.GetLBText(m_cbAudioInputFormat.GetCurSel(), strAudioFormat);
m_VideoCapture.put_Audio_CaptureFormat(strAudioFormat);
o
Elegir automáticamente el mejor formato de audio¶
// C++ MFC
m_VideoCapture.put_Audio_CaptureFormat_UseBest(m_cbUseBestAudioInputFormat.GetCheck() == BST_CHECKED);
Obtener una lista de entradas de audio (líneas) disponibles¶
VideoCapture1.Audio_CaptureDevice_Lines_Fill;
for I := 0 to VideoCapture1.Audio_CaptureDevice_Lines_GetCount - 1 do
cbAudioInputLine.Items.Add(VideoCapture1.Audio_CaptureDevice_Lines_GetItem(i));
// C++ MFC
m_VideoCapture.Audio_CaptureDevice_Lines_Fill();
for (int i = 0; i < m_VideoCapture.Audio_CaptureDevice_Lines_GetCount(); i++)
m_cbAudioInputLine.AddString(m_VideoCapture.Audio_CaptureDevice_Lines_GetItem(i));
' VB6
VideoCapture1.Audio_CaptureDevice_Lines_Fill
For i = 0 To VideoCapture1.Audio_CaptureDevice_Lines_GetCount - 1
cbAudioInputLine.AddItem VideoCapture1.Audio_CaptureDevice_Lines_GetItem(i)
Next i
Seleccionar entrada de audio¶
// C++ MFC
CString strAudioLine;
m_cbAudioInputLine.GetLBText(m_cbAudioInputLine.GetCurSel(), strAudioLine);
m_VideoCapture.put_Audio_CaptureLine(strAudioLine);
Por favor contacte con soporte para obtener ayuda con este tutorial. Visite nuestra página de GitHub para obtener más ejemplos de código.