亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? wavefile.cs

?? dsp6713設計重要資料
?? CS
字號:
using System;
using System.IO;
using System.Drawing;
using System.Windows.Forms;
using System.Runtime.CompilerServices;

using System.Diagnostics;

namespace AudioUtils
{
	/// <summary>
	/// Summary description for WaveFile.
	/// </summary>
	public class WaveFile
	{
		/// <summary>
		/// The Riff header is 12 bytes long
		/// </summary>
		public class RiffBlock
		{
			public RiffBlock()
			{
				m_RiffID = new byte[ 4 ];
				m_RiffFormat = new byte[ 4 ];
			}

			public void ReadRiff( FileStream inFS )
			{
				inFS.Read( m_RiffID, 0, 4 );
				
				Debug.Assert( m_RiffID[0] == 82, "Riff ID Not Valid" );

				BinaryReader binRead = new BinaryReader( inFS );

				m_RiffSize = binRead.ReadUInt32( );

				inFS.Read( m_RiffFormat, 0, 4 );
			}

			public byte[] RiffID
			{
				get { return m_RiffID; }
			}

			public uint RiffSize
			{
				get { return ( m_RiffSize ); }
			}

			public byte[] RiffFormat
			{
				get { return m_RiffFormat; }
			}

			private byte[]			m_RiffID;
			private uint			m_RiffSize;
			private byte[]			m_RiffFormat;
		}

		/// <summary>
		/// The Format header is 24 bytes long
		/// </summary>
		public class FmtBlock
		{
			public FmtBlock()
			{
				m_FmtID = new byte[ 4 ];
			}

			public void ReadFmt( FileStream inFS )
			{
				inFS.Read( m_FmtID, 0, 4 );

				Debug.Assert( m_FmtID[0] == 102, "Format ID Not Valid" );

				BinaryReader binRead = new BinaryReader( inFS );

				m_FmtSize = binRead.ReadUInt32( );
				m_FmtTag = binRead.ReadUInt16( );
				m_Channels = binRead.ReadUInt16( );
				m_SamplesPerSec = binRead.ReadUInt32( );
				m_AverageBytesPerSec = binRead.ReadUInt32( );
				m_BlockAlign = binRead.ReadUInt16( );
				m_BitsPerSample = binRead.ReadUInt16( );

				// This accounts for the variable format header size 
				// 12 bytes of Riff Header, 4 bytes for FormatId, 4 bytes for FormatSize & the Actual size of the Format Header 
				inFS.Seek( m_FmtSize + 20, System.IO.SeekOrigin.Begin );
			}

			public byte[] FmtID
			{
				get { return m_FmtID; }
			}

			public uint FmtSize
			{
				get { return m_FmtSize; }
			}

			public ushort FmtTag
			{
				get { return m_FmtTag; }
			}

			public ushort Channels
			{
				get { return m_Channels; }
			}

			public uint SamplesPerSec
			{
				get { return m_SamplesPerSec; }
			}

			public uint AverageBytesPerSec
			{
				get { return m_AverageBytesPerSec; }
			}

			public ushort BlockAlign
			{
				get { return m_BlockAlign; }
			}

			public ushort BitsPerSample
			{
				get { return m_BitsPerSample; }
			}

			private byte[]			m_FmtID;
			private uint			m_FmtSize;
			private ushort			m_FmtTag;
			private ushort			m_Channels;
			private uint			m_SamplesPerSec;
			private uint			m_AverageBytesPerSec;
			private ushort			m_BlockAlign;
			private ushort			m_BitsPerSample;
		}

		/// <summary>
		/// The Data block is 8 bytes + ???? long
		/// </summary>
		public class DataBlock
		{
			public DataBlock()
			{
				m_DataID = new byte[ 4 ];
			}

			public void ReadData( FileStream inFS )
			{
				inFS.Read( m_DataID, 0, 4 );

				Debug.Assert( m_DataID[0] == 100, "Data ID Not Valid" );

				BinaryReader binRead = new BinaryReader( inFS );

				m_DataSize = binRead.ReadUInt32( );

				m_Data = new Int16[ m_DataSize ];

				inFS.Seek( 40, System.IO.SeekOrigin.Begin );
			
				m_NumSamples = (int) ( m_DataSize / 2 );

				for ( int i = 0; i < m_NumSamples; i++)
				{
					m_Data[ i ] = binRead.ReadInt16( );
				}
			} 

			public byte[] DataID
			{
				get { return m_DataID; }
			}

			public uint DataSize
			{
				get { return m_DataSize; }
			}

			public Int16 this[ int pos ]
			{
				get { return m_Data[ pos ]; }
			}

			public int NumSamples
			{
				get { return m_NumSamples; }
			}

			private byte[]			m_DataID;
			private uint			m_DataSize;
			private Int16[]			m_Data;
			private int				m_NumSamples;
		}

		public WaveFile( String inFilepath )
		{
			m_Filepath = inFilepath;
			m_FileInfo = new FileInfo( inFilepath );
			m_FileStream = m_FileInfo.OpenRead( );

			m_Riff = new RiffBlock( );
			m_Fmt = new FmtBlock( );
			m_Data = new DataBlock( );
		}

		public void Read( )
		{
			m_Riff.ReadRiff( m_FileStream );
			m_Fmt.ReadFmt( m_FileStream );
			m_Data.ReadData( m_FileStream );
		}

		public DataBlock Data
		{
			get { return m_Data; }
		}

		public FmtBlock Format
		{
			get { return m_Fmt; }
		}

		public RiffBlock Riff
		{
			get { return m_Riff; }
		}

		private string			m_Filepath;
		private FileInfo		m_FileInfo;
		private FileStream		m_FileStream;

		private RiffBlock			m_Riff;
		private FmtBlock			m_Fmt;
		private DataBlock			m_Data;
	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品国产一区二区国模嫣然| 日韩av中文在线观看| 夜夜精品浪潮av一区二区三区| 亚洲成a人片在线不卡一二三区| 欧美aaa在线| 日韩在线a电影| 91婷婷韩国欧美一区二区| 91精品国产黑色紧身裤美女| 综合电影一区二区三区| 蜜桃av一区二区在线观看 | 中文字幕在线不卡一区| 亚洲第一福利一区| 99久久99久久精品免费看蜜桃| 91精品国产福利| 亚洲午夜精品17c| 91蜜桃传媒精品久久久一区二区| 欧美精品一区二区三区高清aⅴ | 一区二区三区免费网站| 国产精品一区二区无线| 91精品国产美女浴室洗澡无遮挡| 一区二区三区在线视频播放| 国产二区国产一区在线观看| 日韩美女视频在线| 天天综合色天天| 欧美日韩黄色影视| 亚洲午夜日本在线观看| 欧美亚洲综合另类| 一区二区三区鲁丝不卡| 一本色道久久综合亚洲精品按摩| 久久精品亚洲精品国产欧美kt∨| 麻豆成人在线观看| 日韩女优av电影| 久久精品国产免费| 精品国产亚洲在线| 国产精品亚洲成人| 国产婷婷色一区二区三区四区 | 不卡区在线中文字幕| 国产色综合久久| 国产成人一级电影| 久久久久久久久久久久久久久99 | 高清不卡在线观看| 欧美国产日韩一二三区| 成人高清伦理免费影院在线观看| 国产精品久久久久影视| av成人老司机| 午夜精品一区二区三区电影天堂| 欧美精品在线观看播放| 美女网站在线免费欧美精品| 欧美mv日韩mv亚洲| 国产69精品一区二区亚洲孕妇| 欧美高清在线精品一区| 91一区二区在线观看| 亚洲国产sm捆绑调教视频| 欧美一区二区三区爱爱| 精品一区二区免费在线观看| 国产欧美日韩一区二区三区在线观看| 国产成人在线视频播放| 亚洲美女区一区| 91精品国产欧美一区二区成人| 精品一区二区三区av| 中文字幕在线不卡国产视频| 欧美日韩在线亚洲一区蜜芽| 麻豆国产精品官网| 亚洲欧洲99久久| 91精品国产黑色紧身裤美女| 国产黄色91视频| 亚洲精品成人在线| 日韩久久精品一区| 91麻豆精品视频| 日本欧美一区二区三区乱码 | 亚洲精品乱码久久久久| 欧美一区二区三区公司| 91丝袜国产在线播放| 美国十次了思思久久精品导航| 1区2区3区精品视频| 日韩一区二区三区视频在线 | 久久超级碰视频| 亚洲另类一区二区| 精品国产乱码久久久久久蜜臀 | 国产99久久久久久免费看农村| 一区二区三区日本| 国产日韩欧美精品电影三级在线| 在线这里只有精品| 成人免费av在线| 久久99精品久久久久久动态图 | 一本大道久久精品懂色aⅴ| 青青青伊人色综合久久| 亚洲精品国产第一综合99久久| 精品av综合导航| 欧美福利视频一区| 91国偷自产一区二区三区成为亚洲经典 | 成人av免费在线观看| 日本亚洲天堂网| 艳妇臀荡乳欲伦亚洲一区| 中文字幕欧美区| 精品美女一区二区| 欧美一三区三区四区免费在线看| 91免费国产在线观看| 国产成人欧美日韩在线电影| 日本特黄久久久高潮| 亚洲国产精品欧美一二99| 中文字幕一区免费在线观看| 国产人成亚洲第一网站在线播放| 日韩午夜电影av| 在线成人av影院| 在线观看亚洲精品视频| 91美女视频网站| 99免费精品在线观看| 成人黄色小视频| 成人h动漫精品一区二区| 韩日精品视频一区| 激情图片小说一区| 国内国产精品久久| 国产专区综合网| 国产福利不卡视频| 成人免费看视频| www.亚洲国产| 99国产精品久久久久久久久久久| 成人综合在线视频| 不卡av在线免费观看| 91丨九色porny丨蝌蚪| 99久久精品国产麻豆演员表| 99久久国产综合精品女不卡| av福利精品导航| 欧美专区在线观看一区| 欧美日韩另类一区| 日韩欧美国产午夜精品| 2022国产精品视频| 国产精品视频免费看| 亚洲欧美综合网| 亚洲二区在线观看| 久久丁香综合五月国产三级网站| 国产一区二区在线观看免费| 丰满白嫩尤物一区二区| 91最新地址在线播放| 欧美视频完全免费看| 欧美电影免费观看高清完整版在线 | 美女一区二区久久| 国产精品羞羞答答xxdd| 99久久久久久| 91麻豆精品国产综合久久久久久| 精品卡一卡二卡三卡四在线| 欧美国产成人在线| 亚洲国产视频在线| 国产主播一区二区三区| 91在线精品一区二区| 69p69国产精品| 亚洲国产精品精华液2区45| 一区二区三区精品在线| 久久超碰97中文字幕| 91在线一区二区三区| 欧美一区二区私人影院日本| 国产欧美一区二区三区在线看蜜臀| 亚洲欧美日韩国产一区二区三区 | 国产精品对白交换视频| 天堂成人国产精品一区| 懂色中文一区二区在线播放| 欧美亚洲自拍偷拍| 国产拍欧美日韩视频二区| 亚洲午夜久久久久久久久电影院| 狠狠色综合日日| 欧美午夜免费电影| 国产清纯白嫩初高生在线观看91 | 国产成人h网站| 欧美日韩精品三区| 国产精品传媒入口麻豆| 蜜臀av性久久久久蜜臀aⅴ| 一本大道久久精品懂色aⅴ| 国产亚洲欧美中文| 无码av免费一区二区三区试看| 成人性生交大片免费| 日韩精品在线网站| 亚洲国产日韩在线一区模特| 国产v综合v亚洲欧| 欧美一区二区三区思思人| 亚洲视频在线一区| 高清视频一区二区| 久久免费视频色| 日韩精品乱码av一区二区| 91久久香蕉国产日韩欧美9色| 久久久久久久久岛国免费| 日韩成人一级大片| 欧美日韩精品一区二区三区蜜桃 | 亚洲精品乱码久久久久久日本蜜臀| 精品综合免费视频观看| 欧美性大战久久久| 中文字幕制服丝袜一区二区三区| 国产一区二区在线电影| 久久午夜老司机| 久热成人在线视频| 日韩女优av电影在线观看| 男人操女人的视频在线观看欧美| 欧美亚洲丝袜传媒另类| 亚洲欧美日韩国产一区二区三区 | 国产中文字幕精品| 久久久久久久久岛国免费| 狠狠色丁香婷婷综合久久片| 精品捆绑美女sm三区| 狠狠久久亚洲欧美| 国产午夜精品一区二区|