Ejemplo n.º 1
0
        internal static CueList FromChunks(WaveFileReader reader)
        {
            CueList result = null;

            byte[] array  = null;
            byte[] array2 = null;
            foreach (RiffChunk riffChunk in reader.ExtraChunks)
            {
                if (riffChunk.IdentifierAsString.ToLower() == "cue ")
                {
                    array = reader.GetChunkData(riffChunk);
                }
                else if (riffChunk.IdentifierAsString.ToLower() == "list")
                {
                    array2 = reader.GetChunkData(riffChunk);
                }
            }
            if (array != null && array2 != null)
            {
                result = new CueList(array, array2);
            }
            return(result);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Checks if the cue and list chunks exist and if so, creates a cue list
        /// </summary>
        internal static CueList FromChunks(WaveFileReader reader)
        {
            CueList cueList = null;

            byte[] cueChunkData  = null;
            byte[] listChunkData = null;

            foreach (RiffChunk chunk in reader.ExtraChunks)
            {
                if (chunk.IdentifierAsString.ToLower() == "cue ")
                {
                    cueChunkData = reader.GetChunkData(chunk);
                }
                else if (chunk.IdentifierAsString.ToLower() == "list")
                {
                    listChunkData = reader.GetChunkData(chunk);
                }
            }
            if (cueChunkData != null && listChunkData != null)
            {
                cueList = new CueList(cueChunkData, listChunkData);
            }
            return(cueList);
        }
Ejemplo n.º 3
0
 public string Describe(string fileName)
 {
     StringBuilder stringBuilder = new StringBuilder();
     using (WaveFileReader wf = new WaveFileReader(fileName))
     {
         stringBuilder.AppendFormat("{0} {1}Hz {2} channels {3} bits per sample\r\n", 
             wf.WaveFormat.Encoding, wf.WaveFormat.SampleRate,
             wf.WaveFormat.Channels, wf.WaveFormat.BitsPerSample);
         stringBuilder.AppendFormat("Extra Size: {0} Block Align: {1} Average Bytes Per Second: {2}\r\n",
             wf.WaveFormat.ExtraSize, wf.WaveFormat.BlockAlign,
             wf.WaveFormat.AverageBytesPerSecond);
         stringBuilder.AppendFormat("WaveFormat: {0}\r\n",wf.WaveFormat);
         
         stringBuilder.AppendFormat("Length: {0} bytes: {1} \r\n", wf.Length, wf.TotalTime);
         foreach (RiffChunk chunk in wf.ExtraChunks)
         {
             stringBuilder.AppendFormat("Chunk: {0}, length {1}\r\n", chunk.IdentifierAsString, chunk.Length);
             byte[] data = wf.GetChunkData(chunk);
             DescribeChunk(chunk, stringBuilder, data);
         }
     }
     return stringBuilder.ToString();
 }
Ejemplo n.º 4
0
        /// <summary>
        /// Checks if the cue and list chunks exist and if so, creates a cue list
        /// </summary>
        internal static CueList FromChunks(WaveFileReader reader)
        {
            CueList cueList = null;
            byte[] cueChunkData = null;
            byte[] listChunkData = null;

            foreach (RiffChunk chunk in reader.ExtraChunks)
            {
                if (chunk.IdentifierAsString.ToLower() == "cue ")
                {
                    cueChunkData = reader.GetChunkData(chunk);
                }
                else if (chunk.IdentifierAsString.ToLower() == "list")
                {
                    listChunkData = reader.GetChunkData(chunk);
                }
            }
            if (cueChunkData != null && listChunkData != null)
            {
                cueList = new CueList(cueChunkData, listChunkData);
            }
            return cueList;
        }