public string FriendlyName {get;}
Public ReadOnly Property FriendlyName As String
public:
property String^ FriendlyName {
String^ get();
}
A string that represents the renderer's descriptive name
The returned name is not unique. However, it is ideal for presenting a descriptive name in user interfaces.
using Leadtools;
using Leadtools.MediaFoundation;
using LeadtoolsMediaFoundationExamples.Fixtures;
public bool _result = false;
public CaptureCtrlForm _form = new CaptureCtrlForm();
public CaptureCtrl _capturectrl;
public void AudioRenderersExample()
{
// output file
string outFile = Path.Combine(LEAD_VARS.MediaDir, "CaptureCtrl_AudioRenderersExample.avi");
// reference the capture control
_capturectrl = _form.CaptureCtrl;
try
{
// set the source video device, select using your device name here
if (_capturectrl.VideoDevices["USB"] == null)
throw new Exception("No USB video device available");
_capturectrl.VideoDevices["USB"].Selected = true;
// set the target file
_capturectrl.TargetFile = outFile;
// reference the audio renderers collection
AudioRenderers ar = _capturectrl.AudioRenderers;
// get the current selection
int currSelection = ar.Selection;
// loop through the capture control's registered audio renderers
foreach (Renderer r in ar)
{
// select by renderer friendly name
if (r.FriendlyName == "Default DirectSound Device" && r != ar[currSelection])
{
// select it
r.Selected = true;
break;
}
// select by renderer name (device name)
if (r.Name == @"@device:cm:{E0F158E1-CB04-11D0-BD4E-00A0C911CE86}\Default DirectSound Device" && r != ar[currSelection])
{
// select it
r.Selected = true;
break;
}
}
// check the new selection
int newSelection = ar.Selection;
// set the result to what we expect
_result = (currSelection != newSelection);
// set the started event handler
_capturectrl.Started += new EventHandler(CaptureCtrl_Started);
// run the capture
_capturectrl.StartCapture(CaptureMode.Video);
}
catch (Exception)
{
_result = false;
}
// we'll loop on the state and pump messages for this example.
// but you should not need to if running from a Windows Forms application.
while (_capturectrl.State == CaptureState.Running)
Application.DoEvents();
}
public void CaptureCtrl_Started(object sender, EventArgs e)
{
// stop the capture
_capturectrl.StopCapture();
}
static class LEAD_VARS
{
public const string MediaDir = @"C:\LEADTOOLS21\Media";
}
Imports Leadtools
Imports Leadtools.MediaFoundation
Imports LeadtoolsMediaFoundationExamples.Fixtures
Public _result As Boolean = False
Public _form As New CaptureCtrlForm()
Public _capturectrl As CaptureCtrl
Public Sub AudioRenderersExample()
' output file
Dim outFile As String = Path.Combine(LEAD_VARS.MediaDir, "CaptureCtrl_AudioRenderersExample.avi")
' reference the capture control
_capturectrl = _form.CaptureCtrl
Try
' set the source video device, select using your device name here
If _capturectrl.VideoDevices("USB") Is Nothing Then
Throw New Exception("No USB video device available")
End If
_capturectrl.VideoDevices("USB").Selected = True
' set the target file
_capturectrl.TargetFile = outFile
' reference the audio renderers collection
Dim ar As AudioRenderers = _capturectrl.AudioRenderers
' get the current selection
Dim currSelection As Integer = ar.Selection
' loop through the capture control's registered audio renderers
For Each r As Renderer In ar
' select by renderer friendly name
If r.FriendlyName = "Default DirectSound Device" AndAlso Not r Is ar(currSelection) Then
' select it
r.Selected = True
Exit For
End If
' select by renderer name (device name)
If r.Name = "@device:cm:{E0F158E1-CB04-11D0-BD4E-00A0C911CE86}\Default DirectSound Device" _
AndAlso Not r Is ar(currSelection) Then
' select it
r.Selected = True
Exit For
End If
Next
' check the new selection
Dim newSelection As Integer = ar.Selection
' set the result to what we expect
_result = (currSelection <> newSelection)
' set the started event handler
AddHandler _capturectrl.Started, AddressOf CaptureCtrl_Started
' run the capture
_capturectrl.StartCapture(CaptureMode.Video)
Catch generatedExceptionName As Exception
_result = False
End Try
' we'll loop on the state and pump messages for this example.
' but you should not need to if running from a Windows Forms application.
While _capturectrl.State = CaptureState.Running
Application.DoEvents()
End While
End Sub
Public Sub CaptureCtrl_Started(ByVal sender As Object, ByVal e As EventArgs)
' stop the capture
_capturectrl.StopCapture()
End Sub
Public NotInheritable Class LEAD_VARS
Public Const MediaDir As String = "C:\LEADTOOLS21\Media"
End Class
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document