Example #1
0
        private void tsbOpen_Click(object sender, EventArgs e)
        {
            if (ofdAudio.ShowDialog() == DialogResult.OK)
            {
                string       fileName = ofdAudio.FileName;
                IAudioReader arw      = null;
                switch (Path.GetExtension(fileName.ToLower()))
                {
                case ".avi":
                    arw = new AviReader(File.Open(fileName, FileMode.Open, FileAccess.ReadWrite));
                    if (!((AviReader)arw).HasAudio)
                    {
                        MessageBox.Show(string.Format("'{0}' file is not contains audio data", fileName));
                        return;
                    }
                    break;

                case ".au":
                case ".snd":
                    arw = new AuReader(File.OpenRead(fileName));
                    break;

                case ".wav":
                    arw = new WaveReadWriter(File.Open(fileName, FileMode.Open, FileAccess.ReadWrite));
                    break;

                case ".mp3":
                    arw = new Mp3ReadWriter(File.Open(fileName, FileMode.Open, FileAccess.ReadWrite));
                    break;

                default:
                    arw = new DsReader(fileName);
                    if (!((DsReader)arw).HasAudio)
                    {
                        MessageBox.Show(string.Format("'{0}' file is not contains audio data", fileName));
                        return;
                    }
                    break;
                    //FormatDialog fd = new FormatDialog(false);
                    //if (fd.ShowDialog() == DialogResult.OK)
                    //{
                    //    arw = new RawReadWriter(stream, fd.Format);
                    //    break;
                    //}
                    //else
                    //{
                    //    return;
                    //}
                }
                rp.Open(arw);
            }
        }
Example #2
0
 private void tsbOpen_Click(object sender, EventArgs e)
 {
     if (ofdAudio.ShowDialog() == DialogResult.OK)
     {
         string fileName = ofdAudio.FileName;
         IAudioReader arw = null;
         switch (Path.GetExtension(fileName.ToLower()))
         {
             case ".avi":
                 arw = new AviReader(File.Open(fileName, FileMode.Open, FileAccess.ReadWrite));
                 if (!((AviReader)arw).HasAudio)
                 {
                     MessageBox.Show(string.Format("'{0}' file is not contains audio data", fileName));
                     return;
                 }
                 break;
             case ".au":
             case ".snd":
                 arw = new AuReader(File.OpenRead(fileName));
                 break;
             case ".wav":
                 arw = new WaveReadWriter(File.Open(fileName, FileMode.Open, FileAccess.ReadWrite));
                 break;
             case ".mp3":
                 arw = new Mp3ReadWriter(File.Open(fileName, FileMode.Open, FileAccess.ReadWrite));
                 break;
             default:
                 arw = new DsReader(fileName);
                 if (!((DsReader)arw).HasAudio)
                 {
                     MessageBox.Show(string.Format("'{0}' file is not contains audio data", fileName));
                     return;
                 }
                 break;
             //FormatDialog fd = new FormatDialog(false);
                 //if (fd.ShowDialog() == DialogResult.OK)
                 //{
                 //    arw = new RawReadWriter(stream, fd.Format);
                 //    break;
                 //}
                 //else
                 //{
                 //    return;
                 //}
         }
         rp.Open(arw);
     }
 }
Example #3
0
        private string[] IntspectFile(string fileName)
        {
            ID3v1 m_id3;
            Dictionary<WaveInfo, string> m_waveTags = null;
            IAudioReader ar = null;
            Stream stream = null;
            string ext = Path.GetExtension(fileName.ToLower());
            m_id3 = null;
            m_waveTags = null;
            switch (ext)
            {
                case ".avi":
                    stream = File.OpenRead(fileName);
                    ar = new AviReader(stream);
                    if (!((AviReader)ar).HasAudio)
                    {
                        return new string[] { string.Format("'{0}' file is not contains audio data", fileName) };
                    }
                    break;
                case ".au":
                case ".snd":
                    ar = new AuReader(File.OpenRead(fileName));
                    break;
                case ".wav":
                    stream = File.OpenRead(fileName);
                    ar = new WaveReader(stream);
                    m_waveTags = (ar as WaveReader).ReadInfoTag();
                    break;
                case ".mp3":
                    stream = File.OpenRead(fileName);
                    ar = new Mp3Reader(stream);

                    Mp3Reader mrID3 = new Mp3Reader(File.OpenRead(fileName));
                    m_id3 = mrID3.ReadID3v1Tag();
                    break;
                default:
                    ar = new DsReader(fileName);
                    if (!((DsReader)ar).HasAudio)
                    {
                        return new string[] { string.Format("'{0}' file is not contains audio data", fileName) };
                    }
                    break;
            }
            IntPtr format = ar.ReadFormat();
            WaveFormat wf = AudioCompressionManager.GetWaveFormat(format);
            List<string> list = new List<string>();
            list.Add(string.Format("Opening {0}", fileName));
            list.Add(string.Format("{0}, {1} Hz, {2} channels, {3} bits per sample", GetFormatTagName(wf.wFormatTag), wf.nSamplesPerSec, wf.nChannels, wf.wBitsPerSample));
            list.Add(string.Format("Block Align: {0}, Average Bytes Per Second: {1}", wf.nBlockAlign, wf.nAvgBytesPerSec ));
            TimeSpan duration = TimeSpan.FromMilliseconds(ar.GetDurationInMS());
            list.Add(string.Format("Duration: {0}", duration));
            if (m_id3 != null)
            {
                list.Add("--------- ID3 -----------");
                list.Add(string.Format("Title: {0}", m_id3.Title));
                list.Add(string.Format("Artist: {0}", m_id3.Artist));
                list.Add(string.Format("Album: {0}", m_id3.Album));
                list.Add(string.Format("Year: {0}", m_id3.Year));
                list.Add(string.Format("Genre: {0}", m_id3.Genre.ToString()));
                list.Add(string.Format("Comment: {0}", m_id3.Comment));

            }
            if (m_waveTags != null)
            {
                list.Add("--------- Wave tags -----------");
                foreach(WaveInfo key in m_waveTags.Keys)
                    list.Add(string.Format("{0}: {1}", key.ToString(), m_waveTags[key]));

            }
            ar.Close();
            return list.ToArray();
        }
Example #4
0
        private string[] IntspectFile(string fileName)
        {
            ID3v1 m_id3;
            Dictionary <WaveInfo, string> m_waveTags = null;
            IAudioReader ar     = null;
            Stream       stream = null;
            string       ext    = Path.GetExtension(fileName.ToLower());

            m_id3      = null;
            m_waveTags = null;
            switch (ext)
            {
            case ".avi":
                stream = File.OpenRead(fileName);
                ar     = new AviReader(stream);
                if (!((AviReader)ar).HasAudio)
                {
                    return(new string[] { string.Format("'{0}' file is not contains audio data", fileName) });
                }
                break;

            case ".au":
            case ".snd":
                ar = new AuReader(File.OpenRead(fileName));
                break;

            case ".wav":
                stream     = File.OpenRead(fileName);
                ar         = new WaveReader(stream);
                m_waveTags = (ar as WaveReader).ReadInfoTag();
                break;

            case ".mp3":
                stream = File.OpenRead(fileName);
                ar     = new Mp3Reader(stream);

                Mp3Reader mrID3 = new Mp3Reader(File.OpenRead(fileName));
                m_id3 = mrID3.ReadID3v1Tag();
                break;

            default:
                ar = new DsReader(fileName);
                if (!((DsReader)ar).HasAudio)
                {
                    return(new string[] { string.Format("'{0}' file is not contains audio data", fileName) });
                }
                break;
            }
            IntPtr        format = ar.ReadFormat();
            WaveFormat    wf     = AudioCompressionManager.GetWaveFormat(format);
            List <string> list   = new List <string>();

            list.Add(string.Format("Opening {0}", fileName));
            list.Add(string.Format("{0}, {1} Hz, {2} channels, {3} bits per sample", GetFormatTagName(wf.wFormatTag), wf.nSamplesPerSec, wf.nChannels, wf.wBitsPerSample));
            list.Add(string.Format("Block Align: {0}, Average Bytes Per Second: {1}", wf.nBlockAlign, wf.nAvgBytesPerSec));
            TimeSpan duration = TimeSpan.FromMilliseconds(ar.GetDurationInMS());

            list.Add(string.Format("Duration: {0}", duration));
            if (m_id3 != null)
            {
                list.Add("--------- ID3 -----------");
                list.Add(string.Format("Title: {0}", m_id3.Title));
                list.Add(string.Format("Artist: {0}", m_id3.Artist));
                list.Add(string.Format("Album: {0}", m_id3.Album));
                list.Add(string.Format("Year: {0}", m_id3.Year));
                list.Add(string.Format("Genre: {0}", m_id3.Genre.ToString()));
                list.Add(string.Format("Comment: {0}", m_id3.Comment));
            }
            if (m_waveTags != null)
            {
                list.Add("--------- Wave tags -----------");
                foreach (WaveInfo key in m_waveTags.Keys)
                {
                    list.Add(string.Format("{0}: {1}", key.ToString(), m_waveTags[key]));
                }
            }
            ar.Close();
            return(list.ToArray());
        }