本文整理汇总了C#中WaveFormat.ToString方法的典型用法代码示例。如果您正苦于以下问题:C# WaveFormat.ToString方法的具体用法?C# WaveFormat.ToString怎么用?C# WaveFormat.ToString使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类WaveFormat
的用法示例。
在下文中一共展示了WaveFormat.ToString方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: FlacFile
public FlacFile(Stream stream, FlacPreScanMethodMode? scanFlag, Action<FlacPreScanFinishedEventArgs> onscanFinished)
{
if (stream == null)
throw new ArgumentNullException();
if (!stream.CanRead)
throw new ArgumentException("Stream is not readable.", "stream");
_stream = stream;
//skip ID3v2
Tags.ID3.ID3v2.SkipTag(stream);
int read = 0;
//read fLaC sync
byte[] beginSync = new byte[4];
read = stream.Read(beginSync, 0, beginSync.Length);
if (read < beginSync.Length)
throw new EndOfStreamException("Can not read \"fLaC\" sync.");
if (beginSync[0] == 0x66 && beginSync[1] == 0x4C &&
beginSync[2] == 0x61 && beginSync[3] == 0x43)
{
//read metadata
var metadata = FlacMetadata.AllDataFromStream(stream);
Metadata = metadata;
if (metadata == null || metadata.Count <= 0)
{
throw new FlacException("No Metadata found.", FlacLayer.Metadata);
}
FlacMetadataStreamInfo streamInfo = metadata.Where(x => x.MetaDataType == FlacMetaDataType.StreamInfo).First() as FlacMetadataStreamInfo;
if (streamInfo == null)
new FlacException("No StreamInfo-Metadata found.", FlacLayer.Metadata);
_streamInfo = streamInfo;
_waveFormat = new WaveFormat(streamInfo.SampleRate, (short)streamInfo.BitsPerSample, (short)streamInfo.Channels, AudioEncoding.Pcm);
Debug.WriteLine("Flac StreamInfo found -> WaveFormat: " + _waveFormat.ToString());
Debug.WriteLine("Flac-File-Metadata read.");
}
else
{
throw new FlacException("Invalid Flac-File. \"fLaC\" Sync not found.", FlacLayer.Top);
}
//prescan stream
if (scanFlag != null)
{
FlacPreScan scan = new FlacPreScan(stream);
scan.ScanFinished += (s, e) =>
{
if (onscanFinished != null)
onscanFinished(e);
};
scan.ScanStream(_streamInfo, (FlacPreScanMethodMode)scanFlag);
_scan = scan;
}
}