예제 #1
0
 private void pictureBox1_Click(object sender, EventArgs e)
 {
     if (ingresarAfuera == false)
     {
         CL_Biblioteca CANCION = new CL_Biblioteca();
         CANCION.Codigo    = Convert.ToInt16(codigo);
         CANCION.Nombre    = nombre;
         CANCION.Direccion = direccion;
         CANCION.Portada   = portada;
         CANCION.Letra     = letra;
         string path = comboBox1.SelectedValue.ToString();
         GuardarCancionesdeLista(CANCION, path);
         ingresarAfuera = true;
     }
     else
     {
         CL_Biblioteca CANCION = new CL_Biblioteca();
         CANCION.Codigo    = Convert.ToInt16(dataGridView1.CurrentRow.Cells[0].Value.ToString());
         CANCION.Nombre    = dataGridView1.CurrentRow.Cells[1].Value.ToString();
         CANCION.Direccion = dataGridView1.CurrentRow.Cells[2].Value.ToString();
         CANCION.Portada   = dataGridView1.CurrentRow.Cells[3].Value.ToString();
         CANCION.Letra     = dataGridView1.CurrentRow.Cells[4].Value.ToString();
         string path = comboBox1.SelectedValue.ToString();
         GuardarCancionesdeLista(CANCION, path);
     }
 }
예제 #2
0
        private void GuardarBiblioteca(CL_Biblioteca biblioteca) // Guardar Biblioteca
        {
            string       salida = JsonConvert.SerializeObject(biblioteca);
            FileStream   stream = new FileStream("Biblioteca.json", FileMode.Append, FileAccess.Write);
            StreamWriter writer = new StreamWriter(stream);

            writer.WriteLine(salida);
            writer.Close();
        }
예제 #3
0
        private void GuardarJson(CL_Biblioteca p)
        {
            string       salida = JsonConvert.SerializeObject(p);
            FileStream   stream = new FileStream("Biblioteca.json", FileMode.Append, FileAccess.Write);
            StreamWriter writer = new StreamWriter(stream);

            writer.WriteLine(salida);
            writer.Close();
            //limpiar la lista de autores
            MessageBox.Show("Ingresado Exitosamente!!");
        }
예제 #4
0
 private void GuardarCancionesdeLista(CL_Biblioteca biblioteca, string direccion)
 {
     if (comboBox1.SelectedItem == null)
     {
         MessageBox.Show("Por favor seleccione un nombre de la lista");
     }
     else
     {
         string       salida = JsonConvert.SerializeObject(biblioteca);
         FileStream   stream = new FileStream(direccion, FileMode.Append, FileAccess.Write);
         StreamWriter writer = new StreamWriter(stream);
         writer.WriteLine(salida);
         writer.Close();
         MessageBox.Show("Agregado exitosamente");
     }
 }
예제 #5
0
        private void LeerJsonL()
        {
            //List<CL_Biblioteca> A = new List<CL_Biblioteca>();
            FileStream   stream = new FileStream("Biblioteca.json", FileMode.Open, FileAccess.Read);
            StreamReader reader = new StreamReader(stream);

            while (reader.Peek() > -1)
            {
                string        lectura    = reader.ReadLine();
                CL_Biblioteca libroLeido = JsonConvert.DeserializeObject <CL_Biblioteca>(lectura);
                Biblioteca.Add(libroLeido);
            }
            reader.Close();
            //Mostrar la lista de libros en el gridview
            dataGridView1.DataSource = Biblioteca;///Listas_Publicas.Biblioteca;
            dataGridView1.Refresh();
        }
예제 #6
0
        private void LeerJsonCanciones(string path)// Lee las conciones de una lista con su direccion
        {
            PLaylist.Clear();
            FileStream   stream = new FileStream(path, FileMode.Open, FileAccess.Read);
            StreamReader reader = new StreamReader(stream);

            while (reader.Peek() > -1)
            {
                string        lectura    = reader.ReadLine();
                CL_Biblioteca libroLeido = JsonConvert.DeserializeObject <CL_Biblioteca>(lectura);
                PLaylist.Add(libroLeido);
            }
            reader.Close();
            dataGridView1.DataSource = null;
            dataGridView1.DataSource = PLaylist;
            dataGridView1.Refresh();
        }
예제 #7
0
        private void LeerJson()
        {
            FileStream   stream = new FileStream("Biblioteca.json", FileMode.Open, FileAccess.Read);
            StreamReader reader = new StreamReader(stream);

            while (reader.Peek() > -1)
            {
                string        lectura    = reader.ReadLine();
                CL_Biblioteca libroLeido = JsonConvert.DeserializeObject <CL_Biblioteca>(lectura);
                Biblio.Add(libroLeido);
            }
            reader.Close();
            //dataGridView2.DataSource = Agregar;
            //dataGridView2.Refresh();
            //Libro lib = Agregar.OrderBy(al => al.Anio1).First();
            //textBox5.Text = lib.Anio1.ToString();
        }
예제 #8
0
        private async Task MainAsync()
        {
            CL_Biblioteca biblioteca = new CL_Biblioteca();

            biblioteca.Codigo  = i;
            biblioteca.Portada = direccionPortada;
            //Nuevo Cliente de YouTube
            var client = new YoutubeClient();
            //Lee la URL de youtube que le escribimos en el textbox.
            var videoId = NormalizeVideoId(metroTextBox1.Text);

            progres += 10;
            metroProgressBar1.Value = progres;
            var video = await client.GetVideoAsync(videoId);

            var streamInfoSet = await client.GetVideoMediaStreamInfosAsync(videoId);

            //Busca la mejor resolución en la que está disponible el video.
            var streamInfo = streamInfoSet.Muxed.WithHighestVideoQuality();
            //Compone el nombre que tendrá el video en base a su título y extensión.
            var fileExtension = streamInfo.Container.GetFileExtension();
            var fileName      = $"{video.Title}.{fileExtension}";

            //TODO: Reemplazar los caractéres ilegales del nombre
            //fileName = RemoveIllegalFileNameChars(fileName);
            //Activa el timer para que el proceso funcione de forma asincrona
            //tmrVideo.Enabled = true;
            // mensajes indicando que el video se está descargando
            progres += 10;
            metroProgressBar1.Value = progres;
            metroLabel1.Text        = "Descargando el video...";
            //TODO: se pude usar una barra de progreso para ver el avance
            //using (var progress = new ProgressBar());
            //Empieza la descarga.
            progres += 10;
            metroProgressBar1.Value = progres;
            await client.DownloadMediaStreamAsync(streamInfo, fileName);

            //Ya descargado se inicia la conversión a MP3
            var Convert = new NReco.VideoConverter.FFMpegConverter();
            //Especificar la carpeta donde se van a guardar los archivos, recordar la \ del final
            String SaveMP3File = @"C:\Users\Patrick\Documents\Visual Studio 2015\Projects\Reproductor\MP3\" + fileName.Replace(".mp4", ".mp3");

            biblioteca.Direccion = SaveMP3File;
            biblioteca.Nombre    = fileName;
            biblioteca.Letra     = direccionLetra;
            progres += 10;
            metroProgressBar1.Value = progres;
            //Guarda el archivo convertido en la ubicación indicada
            Convert.ConvertMedia(fileName, SaveMP3File, "mp3");
            //Si el checkbox de solo audio está chequeado, borrar el mp4 despues de la conversión
            progres += 10;
            metroProgressBar1.Value = progres;
            File.Delete(fileName);
            progres += 40;
            metroProgressBar1.Value = progres;
            //Indicar que se terminó la conversion
            GuardarJson(biblioteca);
            MessageBox.Show("Vídeo convertido correctamente.");
            metroLabel1.Text        = "";
            metroTextBox1.Text      = "";
            textBox1.Text           = "";
            progres                 = 0;
            metroProgressBar1.Value = progres;
            return;
        }