public bool UseDeviceEncoding { get; set; }
if true then the device encoding should be used. if false it will not be used.
If a selected device outputs the proper encoding, then setting it to true will not recompress the output. In this case, all the output encoding parameters will be ignored. Not every device outputs data that performs well with all the streaming protocols, hence evaluate the use of this option on a per device basis.
using Leadtools;
using Leadtools.MediaStreaming;
public Server _server = null;
public bool _result = false;
public void PrintLiveStreamsExample()
{
try
{
string strLiveStreams = "";
// create an instance of the server object
_server = new Leadtools.MediaStreaming.Server();
// retrieve a copy of the Live Streams
LiveStreams Streams = _server.GetLiveStreams();
strLiveStreams += string.Format("--- Live Streams (count = {0}) ---\n\n", Streams.Count.ToString());
// print the all live streams properties to a string
for (int nIndex = 0; nIndex < Streams.Count; nIndex++)
{
LiveStream stream = Streams.GetLiveStream(nIndex);
strLiveStreams += string.Format("Live Stream[{0}]: Path = \"{1}\".\n", nIndex.ToString(), stream.Path);
int nSelection = stream.VideoDevices.Selection;
string strDevice = "";
if (nSelection < 0)
strDevice = "<none selected>";
else
strDevice = stream.VideoDevices[nSelection].FriendlyName;
strLiveStreams += string.Format("Video Device = \"{0}\".\n", strDevice);
nSelection = stream.AudioDevices.Selection;
strDevice = "";
if (nSelection < 0)
strDevice = "<none selected>";
else
strDevice = stream.AudioDevices[nSelection].FriendlyName;
strLiveStreams += string.Format("Audio Device = \"{0}\".\n", strDevice);
strLiveStreams += string.Format("Video Width = \"{0}\".\n", stream.VideoWidth.ToString());
strLiveStreams += string.Format("Video Height = \"{0}\".\n", stream.VideoHeight.ToString());
if (stream.UseVideoInputSize)
strLiveStreams += string.Format("Use Video Input Size = \"true\".\n");
else
strLiveStreams += string.Format("Use Video Input Size = \"false\".\n");
strLiveStreams += string.Format("Video Frame Rate = \"{0}\".\n", stream.VideoFrameRate.ToString());
if (stream.UseVideoInputFrameRate)
strLiveStreams += string.Format("Use Video Input Frame Rate = \"true\".\n");
else
strLiveStreams += string.Format("Use Video Input Frame Rate = \"false\".\n");
strLiveStreams += string.Format("Video Bit Rate = \"{0}\".\n", stream.VideoBitRate.ToString());
if (stream.QSVAcceleration)
strLiveStreams += string.Format("QSVAcceleration = \"true\".\n");
else
strLiveStreams += string.Format("QSVAcceleration = \"false\".\n");
if (stream.CUDAAcceleration)
strLiveStreams += string.Format("CUDAAcceleration = \"true\".\n");
else
strLiveStreams += string.Format("CUDAAcceleration = \"false\".\n");
nSelection = stream.AudioTypes.Selection;
string strType = "";
if (nSelection < 0)
strType = "<none selected>";
else
strType = stream.AudioTypes[nSelection].FriendlyName;
if (stream.UseDeviceEncoding)
strLiveStreams += string.Format("Use Device Encoding = \"true\".\n");
else
strLiveStreams += string.Format("Use Device Encoding = \"false\".\n");
strLiveStreams += string.Format("Minimum Fragment Duration = \"{0}\".\n", stream.MinimumFragmentDuration.ToString());
if (stream.Enable)
strLiveStreams += string.Format("Enable = \"true\".\n");
else
strLiveStreams += string.Format("Enable = \"false\".\n");
if (stream.ActivateOnDemand)
strLiveStreams += string.Format("ActivateOnDemand = \"true\".\n");
else
strLiveStreams += string.Format("ActivateOnDemand = \"false\".\n");
strLiveStreams += string.Format("IdleTimeOut = \"{0}\".\n", stream.IdleTimeOut.ToString());
if (stream.CUDADecoding)
strLiveStreams += string.Format("CUDADecoding = \"true\".\n");
else
strLiveStreams += string.Format("CUDADecoding = \"false\".\n");
if (stream.QSVDecoding)
strLiveStreams += string.Format("QSVDecoding = \"true\".\n");
else
strLiveStreams += string.Format("QSVDecoding = \"false\".\n");
if (stream.HasVideoDeviceURL)
{
strLiveStreams += string.Format("VideoDeviceURL = \"{0}\".\n", stream.VideoDeviceURL);
}
}
// display a message contains the Live Streams information string
MessageBox.Show(strLiveStreams, "LEADTOOLS Media Streaming Examples", MessageBoxButtons.OK, MessageBoxIcon.Information);
_result = true;
}
catch (Exception)
{
_result = false;
}
}