OutputStreams Property (original) (raw)

Summary

Gets the number of output streams available in the current program.

Syntax

public int OutputStreams { get; } 

public: property int OutputStreams { int get(); }

Property Value

A value representing the number of output streams available in the current program.

Example

using Leadtools; using Leadtools.Multimedia; using LeadtoolsMultimediaExamples.Fixtures; public PlayCtrlForm _form = new PlayCtrlForm(); public bool _result = false; public void ResetSourceExample() { // reference the play control PlayCtrl playctrl = _form.PlayCtrl; // input file string inWmvFile = Path.Combine(LEAD_VARS.MediaDir, "MediaInfo_Source.wmv"); string inAviFile = Path.Combine(LEAD_VARS.MediaDir, "MediaInfo_Source.avi"); try { // create a new media info object MediaInfo mi = new MediaInfo(); // get MP3 info mi.SourceFile = inWmvFile; // set the info string with general media information Console.WriteLine("General Info"); Console.WriteLine("Title: " + mi.Title); Console.WriteLine("Author: " + mi.Author); Console.WriteLine("Description: " + mi.Description); Console.WriteLine("Rating: " + mi.Rating); Console.WriteLine("Copyright: " + mi.Copyright); Console.WriteLine(); // reset the source mi.ResetSource(); // get AVI info mi.SourceFile = inAviFile; Console.WriteLine("General Info"); Console.WriteLine("File: " + mi.SourceFile); Console.WriteLine("File Size: " + mi.SourceFileSize); Console.WriteLine("Format: " + mi.SourceFormat + "(" + mi.SourceFormatName + ")"); Console.WriteLine("Duration: " + mi.SourceDuration); Console.WriteLine("Real Bit-rate: " + mi.SourceBitRate); Console.WriteLine("Format Type: " + mi.SourceMediaType.FormatType); Console.WriteLine(); Console.WriteLine("Source Filter Info"); var s = mi.SourceFilter; IntPtr ptr = Marshal.GetIUnknownForObject(s); Console.WriteLine(string.Format("Address of Object Pointer: 0x{0:X}", ptr.ToInt64())); Console.WriteLine("ClassID: " + mi.SourceFilterClassID); Console.WriteLine("Name: " + mi.SourceFilterName); Console.WriteLine("Streams Info"); for ( int streamIndex = 0; streamIndex < mi.OutputStreams; streamIndex++ ) { mi.CurrentStream = streamIndex; Console.WriteLine("Stream Index: " + streamIndex); Console.WriteLine("Type: " + mi.StreamType + "(" + mi.StreamTypeName); Console.WriteLine("Subtype: " + mi.StreamSubtype + "(" + mi.StreamSubtypeName); Console.WriteLine("Format Type: " + mi.StreamMediaType.FormatType); if (mi.StreamTypeName == "Video") { Console.WriteLine("Width: " + mi.VideoWidth + " pixels"); Console.WriteLine("Height: " + mi.VideoHeight + " pixels"); Console.WriteLine("Bit Count: " + mi.VideoBitCount + " bits per pixel"); Console.WriteLine("Frame Count: " + mi.VideoFrames); Console.WriteLine("Frame Rate: " + mi.VideoFrameRate + "frames per second"); Console.WriteLine("Compression: " + mi.VideoCompression); Console.WriteLine("Bit-rate: " + mi.VideoBitRate + "kbps"); Console.WriteLine("Duration: " + mi.StreamDuration + "seconds"); Console.WriteLine(); } else if (mi.StreamTypeName == "Audio") { Console.WriteLine("Format Tag: " + mi.AudioFormatTag); Console.WriteLine("Channels: " + mi.AudioChannels); Console.WriteLine("Frequency: " + mi.AudioSamplesPerSec + " samples per second"); Console.WriteLine("Sample Size: " + mi.AudioBitsPerSample + " bits per sample"); Console.WriteLine("Average Rate: " + mi.AudioAvgBytesPerSec + "bytes per second"); Console.WriteLine("Duration: " + mi.StreamDuration + "seconds"); Console.WriteLine(); } } // media info outputted to console, set result to true _result = true; // reset the source mi.ResetSource(); // set the result to what we expect _result = (mi.SourceFile == null); } catch (Exception) { _result = false; } } static class LEAD_VARS { public const string MediaDir = @"C:\LEADTOOLS23\Media"; }