Example #1
0
        public karaokeTimerW(mainW mW,AVStoDirectSound avs2ds,AviSynthClip avsaudio, IntPtr af)
        {
            InitializeComponent();
            this.mW = mW;
            this.avs2ds = avs2ds;
            this.avsaudio = avsaudio;
            this.AudioFull = af;

            //this.MaximumSize = new Size(0,this.Height);

            this.Resize += new EventHandler(karaokeTimerW_Resize);
            sliceTextBox.KeyPress += new KeyPressEventHandler(sliceTextBox_KeyPress);
            sliceTextBox.KeyDown += new KeyEventHandler(sliceTextBox_KeyDown);
            zoomKaraokeTrackBar.ValueChanged += new EventHandler(zoomKaraokeTrackBar_ValueChanged);
            KaraokeAudioBox.MouseMove += new MouseEventHandler(KaraokeAudioBox_MouseMove);
            KaraokeAudioBox.MouseDown += new MouseEventHandler(KaraokeAudioBox_MouseDown);
            KaraokeAudioBox.MouseUp += new MouseEventHandler(KaraokeAudioBox_MouseUp);
            KaraokeAudioBox.MouseClick += new MouseEventHandler(KaraokeAudioBox_MouseClick);
            KaraokeAudioBox.KeyDown += new KeyPictureBox.OnKeyPress(KaraokeAudioBox_KeyDown);
            KaraokeAudioBox.LostFocus += new EventHandler(KaraokeAudioBox_LostFocus);

            AudioActualPosition_Refresh.Tick += new EventHandler(AudioActualPosition_Refresh_Tick);

            //this.Width = 800;
        }
Example #2
0
 public T_LoadFullAudio(AviSynthClip a, AVStoDirectSound a2, IntPtr p, mainW m)
 {
     avs = a;
     avs2ds = a2;
     puntero = p;
     mw = m;
 }
Example #3
0
        private void unmanagedMemoryAudioLoad(AviSynthClip avs, AVStoDirectSound avs2ds)
        {
            AudioLoad_Progress = new progress2W(this);
            AudioLoad_Progress.Show();
            AudioLoad_Progress.Focus();

            AudioBytesMax = (int)avs.SamplesCount * avs.ChannelsCount * avs.BytesPerSample;
            AudioLoad_Progress.progressBar.Maximum = AudioBytesMax;

            try
            {
                mainW.AudioLoad_isCancelled = false;
                AudioFull = Marshal.AllocHGlobal(AudioBytesMax);
                T_LoadFullAudio load = new T_LoadFullAudio(avs, avs2ds, AudioFull, this);
                AudioLoad = new Thread(new ThreadStart(load.LoadAudio));
                AudioLoad.Priority = ThreadPriority.Lowest;

                progressBarUpdater.Interval = 2000;
                progressBarUpdater.Tick += new EventHandler(progressBarUpdater_Tick);
                AudioLoad.Start();
                progressBarUpdater.Enabled = true;

            }
            catch (OutOfMemoryException)
            {
                errorMsg("No hay suficiente memoria RAM disponible. OperaciĆ³n cancelada.");
                mainW.AudioLoad_isCancelled = true;
            }
        }
Example #4
0
        //private void loadAudio(AviSynthClip avs)
        private void loadAudio()
        {
            if (AudioFull != IntPtr.Zero)
            {
                try
                {
                    Marshal.FreeHGlobal(AudioFull);
                }
                catch { }
            }

            // OpenSourceType == VideoSourceType.FFVideoSource

            if (avsaudio.SamplesCount == 0) // si no hay samples cargados tenemos que cargarlos como sea
            {
                throw new PerrySubException("El audio contiene 0 muestras. Cambia el filtro prioritario de audio si tienes problemas.");
            }

            avsaudio.AviSynthInvoke(avsaudio.GetAVS(), 0, "ConvertAudioTo16bit", true, "Nulo");
            avsaudio.AviSynthInvoke(avsaudio.GetAVS(), 0, "ConvertToMono", true, "Nulo");
            //avs.AviSynthInvoke(avs.GetAVS(), 0, "ResampleAudio", true, "22050"); // excepcion en vista, a saber pq

            double rseg = (double)avsaudio.SamplesCount / (double)avsaudio.AudioSampleRate;
            hSliderBar.Maximum = (int)(rseg * 10);

            //avsaudio = avs;
            avs2ds = new AVStoDirectSound(this, avsaudio);

            unmanagedMemoryAudioLoad(avsaudio, avs2ds);

            //updateAudioGrid();
            AudioActualPosition_Refresh.Tick += new EventHandler(AudioActualPosition_Refresh_Tick);
            AudioActualPosition_Refresh_500.Tick += new EventHandler(AudioActualPosition_Refresh_500_Tick);
        }