HasDialog方法

总结
查询捕获设备配置对话框是否可用。True表示该对话框可用。否则,该值为false。
语法
c#
VB
c++
公共保龄球HasDialog (LiveStreamDlg对话框
公共函数HasDialog (_按值传递对话框作为LiveStreamDlg_作为布尔
公共保龄球HasDialog (LiveStreamDlg对话框

参数

对话框
一个LiveStreamDlg对话框。

返回值

True表示该对话框可用。否则,该值为false。

讲话

您必须锁定捕获设备LockDevices在调用此函数之前。

例子
c#
VB
使用Leadtools;使用Leadtools.MediaStreaming;公共Server _server =公共保龄球_result =LiveStreamDevConfig devconfig;公共DesktopWin: System.Windows.Forms.IWin32Window公共DesktopWin ()公共IntPtr处理得到返回IntPtr.Zero;}公共无效CreateOrReplaceLiveStreamExample ()试一试intStreamIndex = 0;字符串strPath =“生活/ Stream1”//直播的路径查找//视频设备在我的系统上的名称(LEAD RTSP源)字符串strVideoDevice =“@device:西南:{083863 f1 - 70 - de - 11 - d0 bd40 - 00 - a0c911ce86} \ \ {e2b7de48 - 38 - c5 - 11 - d5 - 91 - f6 - 00104 - bdb8ff9}”//系统上的音频设备名称(麦克风(HD Pro Webcam C920))字符串strAudioDevice =“@device:厘米:{33 d9a762 - 90 - c8 - 11 - d0 bd43 - 00 - a0c911ce86} \ \波:{9 d2fbf73 - d543 - 44 - da - 8846 ae780ee65484}”//创建server对象的实例_server =Leadtools.MediaStreaming.Server ();//获取一个实时流的副本Streams = _server.GetLiveStreams();流媒体=//查找已有的流(StreamIndex = 0;StreamIndex < Streams.Count;StreamIndex + +)stream = Streams.GetLiveStream(StreamIndex);如果(流。Path == strPath)打破stream.Dispose ();流=如果(流= =//创建一个新流StreamIndex = -1;stream = Streams.CreateLiveStream();//设置流路径流。路径= strPath;//设置重新压缩,如果你想使用设备内置的压缩,将此更改为true流。UseDeviceEncoding =//选择视频设备Leadtools.MediaStreaming.Devices videodevices;videodevices = stream.VideoDevices;int指数= -1;index = videodevices.IndexOf(strVideoDevice);videodevices。选择=索引;//选择音频设备Leadtools.MediaStreaming.Devices audiodevices;audiodevices = stream.AudioDevices;指数= -1;index = audiodevices.IndexOf(strAudioDevice);audiodevices。选择=索引;/**其他选择方法如果(索引>= 0)Leadtools.MediaStreaming.Device装置;Device = audiodevices.[index];设备。选择=真正的其他的audiodevices。选择= -1;* * ///锁定设备,这样我们就可以编辑它们的属性devconfig = stream.DeviceConfig;devconfig.LockDevices ();DesktopWin win =DesktopWin ();如果可用,显示主视频设备属性页如果(devconfig.HasDialog (LiveStreamDlg.VideoDevice))devconfig.ShowDialog (LiveStreamDlg。VideoDevice,赢得);如果可用,显示主音频设备属性页如果(devconfig.HasDialog (LiveStreamDlg.AudioDevice))devconfig.ShowDialog (LiveStreamDlg。AudioDevice,赢得);//设置输出视频如果(devconfig.IsVideoEncoded)//视频已经被编码,视频输出设置将被忽略流。UseVideoInputSize =真正的//如果UseVideoInputSize为true,那么width和height将被忽略流。VideoWidth = 320;流。VideoHeight = 240;流。UseVideoInputFrameRate =真正的//如果UseVideoInputFrameRate为true,则帧速率被忽略流。VideoFrameRate = 29.97;流。VideoBitRate = 700000;流。QSVAcceleration =真正的流。CUDAAcceleration =真正的//设置输出音频如果(devconfig.IsAudioEncoded)//音频已经被编码,音频输出设置被忽略intnCount = 0;leadtools . mediastream . audiotypes =audiotypes = stream.AudioTypes;nCount = audiotypes.Count;(指数= 0;索引< nCount;指数+ +)Leadtools.MediaStreaming.AudioType audiotype = audiotypes[index];如果(audiotype。通道== 2 && audiotype。BitRate == 192000 && audiotype。SampleRate == 44100)audiotype。选择=真正的//选择的替代方法/ / audiotypes。选择=索引;打破//设置输出片段大小流。MinimumFragmentDuration = 2.0;//添加或替换流如果(StreamIndex < 0)Streams.AddLiveStream(流);其他的流。SetLiveStream (StreamIndex流);_server.SetLiveStreams(流);如果(devconfig ! =devconfig.UnlockDevices ();_result =真正的(异常)如果(devconfig ! =devconfig.UnlockDevices ();_result =
进口Leadtools进口Leadtools。MediaStreaming公共_server作为服务器=没有什么公共_result作为布尔私人devconfig作为LiveStreamDevConfig公共DesktopWin实现了System.Windows.Forms.IWin32Window公共()结束公共只读的财产处理()作为IntPtr实现了IWin32Window。处理得到返回System.IntPtr.Zero结束得到结束财产结束公共CreateOrReplaceLiveStreamExample ()试一试昏暗的StreamCount作为整数= 0昏暗的StreamIndex作为整数= 0昏暗的strPath作为字符串“生活/ Stream1”直播的寻找之路视频设备在我的系统上的名称(LEAD RTSP源)昏暗的strVideoDevice作为字符串“@device:西南:{083863 f1 - 70 - de - 11 - d0 bd40 - 00 - a0c911ce86} \ {e2b7de48 - 38 - c5 - 11 - d5 - 91 - f6 - 00104 - bdb8ff9}”音频设备在我系统上的名称(麦克风(HD Pro Webcam C920))昏暗的strAudioDevice作为字符串“@device:厘米:{33 d9a762 - 90 - c8 - 11 - d0 bd43 - 00 - a0c911ce86} \波:{9 d2fbf73 - d543 - 44 - da - 8846 ae780ee65484}”'创建服务器对象的实例_server =Leadtools.MediaStreaming.Server ()'获取一个实时流的副本昏暗的作为LiveStreams = _server.GetLiveStreams()昏暗的作为liverstream =没有什么'搜索具有相同路径的现有流StreamCount =流。StreamIndex = 0StreamIndex < StreamCountstream = Streams.GetLiveStream(StreamIndex)如果流。Path = strPath然后退出结束如果stream.Dispose ()流=没有什么StreamIndex += 1循环如果没有什么然后'创建一个新流StreamIndex = -1stream = Streams.CreateLiveStream()结束如果'设置流路径流。Path = strPath'设置来重新压缩,如果你想使用设备内置的压缩,将此更改为true流。UseDeviceEncoding ='选择视频设备昏暗的videodevices作为Leadtools.MediaStreaming.Devices视频设备=流。VideoDevices昏暗的指数作为整数= 1index = videodevices.IndexOf(strVideoDevice)videodevices。选择=索引'选择音频设备昏暗的audiodevices作为Leadtools.MediaStreaming.DevicesAudiodevices =流。AudioDevices指数= -1索引= audiodevices.IndexOf(strAudioDevice)audiodevices。选择=索引“另一种选择方法如果索引>= 0那么“Dim device As Leadtools.MediaStreaming.Device'device = audiodevices(索引)的设备。选中= True其他的“audiodevices。选择= -1“如果终结’锁定设备,这样我们就可以编辑它们的属性Devconfig = stream。DeviceConfigdevconfig.LockDevices ()昏暗的赢得作为DesktopWin =DesktopWin ()'显示主视频设备属性页(如果可用)如果devconfig.HasDialog (LiveStreamDlg.VideoDevice)然后devconfig.ShowDialog (LiveStreamDlg。VideoDevice赢)结束如果'显示主音频设备属性页(如果可用)如果devconfig.HasDialog (LiveStreamDlg.AudioDevice)然后devconfig.ShowDialog (LiveStreamDlg。AudioDevice赢)结束如果'设置输出视频如果devconfig。是VideoEncoded然后'视频已经编码,视频输出设置被忽略流。UseVideoInputSize =真正的'如果UseVideoInputSize为true,那么宽度和高度将被忽略流。VideoWidth = 320流。VideoHeight = 240流。UseVideoInputFrameRate =真正的'如果UseVideoInputFrameRate为true,那么帧速率将被忽略流。VideoFrameRate = 29.97流。VideoBitRate = 700000流。QSVAcceleration =真正的流。CUDAAcceleration =真正的结束如果'设置输出音频如果devconfig。是一个udioEncoded然后音频已经被编码,音频输出设置被忽略昏暗的nCount作为整数= 0昏暗的audiotypes作为Leadtools.MediaStreaming.AudioTypes =没有什么Audiotypes =流。AudioTypesnCount = audiotypes。指数= 0index < nCount昏暗的audiotype作为mediastream . audiotype = audiotypes(索引)如果audiotype。通道= 2需要说明audiotype。BitRate = 192000需要说明audiotype。SampleRate = 44100然后audiotype。选择=真正的另一种选择方法“audiotypes。选择=索引退出结束如果指数+= 1循环结束如果'设置输出片段大小流。MinimumFragmentDuration = 2.0'添加或替换流如果StreamIndex < 0然后Streams.AddLiveStream(流)其他的流。SetLiveStream (StreamIndex流)结束如果_server.SetLiveStreams(流)如果devconfig没有什么然后devconfig.UnlockDevices ()结束如果_result =真正的e1作为异常如果devconfig没有什么然后devconfig.UnlockDevices ()结束如果_result =结束试一试结束
需求

目标平台

Leadtools。MediaStreaming组装
188金宝搏的网址客服|支持|联系我们|知识产权公告
©1991 - 2021领德科技有限公司版权所有。