예제 #1
0
파일: Form1.cs 프로젝트: daisy/obi
        private void btnInsert_Click(object sender, System.EventArgs e)
        {
            AudioClip       ob_AudioClip = new AudioClip("c:\\atest\\a\\a.wav", 3000, 9000);
            AudioMediaAsset am           = new AudioMediaAsset(ob_AudioClip.Channels, ob_AudioClip.BitDepth, ob_AudioClip.SampleRate);

            am.AddClip(ob_AudioClip);

            AudioClip ob_AudioClip1 = new AudioClip("c:\\atest\\a\\a.wav", 3000, 6000);

            am.AddClip(ob_AudioClip1);

            AudioClip ob_AudioClip2 = new AudioClip("c:\\atest\\a\\a.wav", 6000, 9000);

            am.AddClip(ob_AudioClip2);

            //AudioClip  ob_AudioClip3   = new AudioClip ( "c:\\atest\\a\\Alpha.wav" , 9000 , 12000) ;
            //am.AddClip (ob_AudioClip3) ;

            double BeginTime  = 3000;
            double EndTime    = 8000;
            double InsertTime = 3000;

            MessageBox.Show(" ");
            CreateAsset();

            InsertAudioAssetCommand ComInsert = new InsertAudioAssetCommand(am0, am, InsertTime);

            ComInsert.Do();
//ComInsert.Undo () ;
            //am.InsertAsset (am0 , InsertTime);
            //am.InsertAsset (am.GetChunk(BeginTime , EndTime ) , InsertTime);
            Display(am);
            MessageBox.Show(am.LengthInMilliseconds.ToString());
        }
예제 #2
0
파일: Form1.cs 프로젝트: daisy/obi
        private void btnDeleteAsset_Click(object sender, System.EventArgs e)
        {
            AudioClip       Clip1    = new AudioClip("c:\\atest\\a\\Delete.wav", 0, 1000);
            AudioClip       Clip2    = new AudioClip("c:\\atest\\a\\Delete.wav", 1000, 2000);
            AudioMediaAsset amdelete = new AudioMediaAsset(Clip1.Channels, Clip1.BitDepth, Clip1.SampleRate);

            amdelete.AddClip(Clip1);
            amdelete.AddClip(Clip2);
//amdelete.Delete () ;
            MessageBox.Show("done");
        }
예제 #3
0
파일: Form1.cs 프로젝트: daisy/obi
        private void btnDetectPhrases_Click(object sender, System.EventArgs e)
        {
            AudioClip       ob_AudioClip = new AudioClip("c:\\s\\sil22-8-2.wav", 0, 2000);
            AudioMediaAsset am           = new AudioMediaAsset(ob_AudioClip.Channels, ob_AudioClip.BitDepth, ob_AudioClip.SampleRate);

            am.AddClip(ob_AudioClip);
            long Sil = am.GetSilenceAmplitude(am);

            Sil = Sil + 3;
            MessageBox.Show(Sil.ToString());

            ArrayList al = new ArrayList();
//AudioClip ob_AudioClip1 = new AudioClip ("c:\\s\\Detect22-8-2-new.wav" ) ;
//al.Add (ob_AudioClip1 ) ;

            //al.Add(ob_AudioClip) ;
            AudioClip ob_AudioClip2 = new AudioClip("c:\\s\\Detect22-8-2.wav");

            al.Add(ob_AudioClip2);
            AudioMediaAsset amd = new AudioMediaAsset(al);

            a.AddAsset(amd);
            double dLength = 500;
            double dBefore = 100;
//ArrayList alAsset =  amd.ApplyPhraseDetection (Sil , dLength , dBefore) ;
            PhraseDetectionCommand ob_PhraseDetectionCommand = new PhraseDetectionCommand(amd, Sil, dLength, dBefore);

            ob_PhraseDetectionCommand.Do();
            ArrayList alAsset = ob_PhraseDetectionCommand.AssetList;

            am0 = alAsset   [1] as AudioMediaAsset;
//MessageBox.Show (alAsset.Count.ToString ()) ;
            MessageBox.Show("Done");
            AudioMediaAsset DisplayAsset;

            for (int i = 0; i < alAsset.Count; i++)
            {
                DisplayAsset = alAsset  [i] as AudioMediaAsset;
                MessageBox.Show(DisplayAsset.LengthInMilliseconds.ToString());
            }
        }
예제 #4
0
        private void btnOpen_Click(object sender, System.EventArgs e)
        {
            OpenFileDialog ofd = new OpenFileDialog();

            ofd.Filter = "wave files(*.wav|*.wav";
            ofd.ShowDialog();
            AudioClip ob_AudioClip;

            if (textBox1.Text == "" && textBox2.Text == "")
            {
                ob_AudioClip = new AudioClip(ofd.FileName);
            }
            else
            {
                ob_AudioClip = new AudioClip(ofd.FileName, Convert.ToDouble(textBox1.Text), Convert.ToDouble(textBox2.Text));
            }


            if (am == null)
            {
                am = new AudioMediaAsset(ob_AudioClip.Channels, ob_AudioClip.BitDepth, ob_AudioClip.SampleRate);
            }

            am.AddClip(ob_AudioClip);
            textBox1.Clear();
            textBox2.Clear();



            ofd.Dispose();

/*
 *                      ofd.ShowDialog();
 *                      textBox2.Text = ofd.FileName;
 */
        }