Media discoverer doesn't find video capture devices in this code :
Core.Initialize();
using var libvlc = new LibVLC();
foreach (MediaDiscovererCategory val in Enum.GetValues(typeof(MediaDiscovererCategory)))
{
Console.WriteLine($"===== {val} ======");
var mds = libvlc.MediaDiscoverers(val);
Console.WriteLine($" number of mds: {mds.Count()}");
foreach (var dm in mds)
{
Console.WriteLine($"{dm.Category} {dm.Name} {dm.LongName}");
//display only disc
}
if (mds.Any(x => x.LongName == "Video capture"))
{
var devices = mds.First(x => x.LongName == "Video capture");
var md = new MediaDiscoverer(libvlc, devices.Name);
md.Start();
foreach (var media in md.MediaList)
{
Console.WriteLine($" _ {media.Mrl}");
}
}
}
Console.ReadKey();
in response i should get 3 webcams or video grabbers connected to my machine, but there i get only this:
result:
===== Devices ====== number of mds: 1
Devices disc Discs
===== Lan ====== number of mds: 3 Lan microdns mDNS Network Discovery Lan sap Network streams (SAP) Lan upnp Universal Plug'n'Play
===== Podcasts ====== number of mds: 3
Podcasts podcast Podcasts
Podcasts lua{sd='jamendo'} Jamendo Selections
Podcasts lua{sd='icecast'} Icecast Radio Directory
===== Localdirs ====== number of mds: 3
Localdirs video_dir My Videos
Localdirs audio_dir My Music
Localdirs picture_dir My Pictures