Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - rigorvzla

#111
muchisimas gracias elektro por tu observacion, ya corregi y aprendi lo del dialogresult , cosa que tenia mala en todo el proyecto , pero tenia uno bien planteado mas no sabia por que me daba error, y era por la referencia que era win32 y no form.

Punto dos : no se como reparar lo del FileRead

Punto tres: este el mas importante y el inicio del post, podrias darme un ejemplo para poderme guiar es que no se en que parte del codigo pasar el parametro ya que lo que eh intentado hasta ahora me genera error.

Gracias nuevamente, por que me toco colocar como dices tu 2 botones y acciones diferentes en el fileDialog y a pesar que me percate y repare eso, crei que bastaba con colocarlo true, pero veo que , no es malo, es incorrecto, la idea es decir que hacer y no dejarlo sobre entenido, corrigeme si me equivoco .

Encontre este ejemplo pero no se como hacerlo util a mi caso
http://csharpexamples.com/zip-and-unzip-files-programmatically-in-c/
#112
si, ya eh visto eso y veo que ahi esta la respuesta, mas no la entiendo si podrias expplicarmelo como a bebe mongolico seria perfecto y disculpa la molestia
#113
Hola amigos, hoy les traigo una inquietud y consulta , actualmente uso la libreria SevenZip para comprimir y descomprimir archivos, eh realizado trabajos interesantes con ella y me han quedado bien (comprimir / descomprimir), ahora tengo una inquietud y es, que al descomprimir archivos con contraseña me da un error, lo que necesito es saber , como puedo validar un archivo que, en caso de tener contraseña lo compare con un textbox y en caso de no tener contraseña seguir su proceso normal como ya lo hace.

mi codigo actual esta asi

Código (csharp) [Seleccionar]
public void metodoExtraccion()
       {
           AvisoDescargas des = new AvisoDescargas();
           des.listaDescargas.Visibility = System.Windows.Visibility.Visible;
           des.lblDescargaTitulo.Content = "EXTRAYENDO ARCHIVOS";
           des.Show();

           Microsoft.Win32.OpenFileDialog ofd = new Microsoft.Win32.OpenFileDialog
           {
               Title = "Archivos a Descomprimir",
               Filter = "Extraer (7z RAR Zip ISO|*.7z; *.rar; *.zip; *.iso",
               Multiselect = true
           };
           if ((ofd.ShowDialog() == true))
           {
               StreamWriter sw = new StreamWriter("listfile.lst");
               foreach (string n in ofd.FileNames)
               {
                   sw.WriteLine(n);
               }
               sw.Close();

               string zipName = ofd.FileName;

               System.Threading.Tasks.Task.Run(() => {
                   using (var tmp = new SevenZipExtractor(
                       
                   File.OpenRead(zipName)))
                   {
                       
                       tmp.FileExtractionStarted += (s, e) =>
                       {
                           Dispatcher.Invoke(() => des.listaDescargas.Items.Add((String.Format("Extrayendo... [{0}%] {1}", e.PercentDone, e.FileInfo.FileName))));
                           
                       };
                       tmp.ExtractionFinished += (s, e) => { Dispatcher.Invoke(() => des.listaDescargas.Items.Add("Proceso Finalizado")); };
                       try
                       {
                           Directory.CreateDirectory(ofd.SafeFileName);
                           string nombre = Path.GetFileNameWithoutExtension(ofd.SafeFileName);
                           string salida = Path.Combine(Settings.Default.directorioExtraidos, nombre);
                           tmp.ExtractArchive(salida);
                           MainWindow.habla.SpeakAsync("Extraccion Finalizada");
                           Directory.Delete(ofd.SafeFileName, true);
                       }
                       catch (Exception)
                       {
                           des.lblPorcentaje.Content = "Necesita Contraseña";
                           MainWindow.habla.Speak("No se puede extraer, archivo dañado o con contraseña");
                       }
                       
                   }
               });
           };
       }


El codigo es totalmente funcional, espero puedan ayudarme con un ejemplo con validacion de contraseña y de ahi partir a adaptarlo a mi codigo , gracias de antemano.
#114
muchisimas gracias como siempre, ya tengo de donde partir y si con este programa se pueden hacer gran cantidad de cosas, yo en lo personal tengo un "catalogo de botonones" donde extraigo el mp3 de cualquier archivo multimedia, convierto cualquier video a mp4 , creo gif de un tiempo a -hasta b, capturo la pantallaescritorio sin sonido, y aunque tengo el de captura de pantalla con sonido (no esta como lo quiero)... y todo esto lo consegui por buscar solamente el progreso en "%" jeje... en fin muchas gracias por la asistencia . Feliz Domingo
#115
 muchas gracias elektro, aunque lo coloque no sirvio,  entre el codigo quizas lo puse mal, lo coloque justo antes de terminar la parte del microfono y probe antes del nombre de salida del archivo y se mantuvo igual, si como dijiste por cada minuto es el valor de megas jeje no vi bien, por ultimo y esto es por lo que eh llegado aqui, (todo lo demas que hice con el archivo fue un extra no previsto pero muy bien todo lo que logre) es que no se cual es el valor stream o el codigo para ver el progreso de conversion de  los archivos, esto tambien eh buscado como loco sin exito, ya que al yo convertir xarchivo.mp4 a xaudio.mp3 no me da referencia de que % va y puedo asumir que se quedo pegado.

Nota: Disculpa por haber puesto en el otro foro mi consulta no sabia que se relacionaba a cosas generales. Procurare no se repita. Y Gracias nuevamente por tu asistencia.
#116
Programación General / ffmpeg Consult a(1)
15 Abril 2018, 07:30 AM
Buenas noches amigos, estoy con una consulta y espero puedan ayudarme como en ocasiones anteriores, que mas que eso han sido respuestas con un gran valir educativo.

El asunto es el siguiente, usando el programa ffmpeg eh hecho muchas cosas y en este caso el poder capturar el sonido del microfono y la pantalla del escritorio en un video.
Este codigo es totalmente funcional, el unico detalle es que el video va a una velocidad muy rapida no acorde a la voz del microfono asi que no se reproduce como debe ser se corta antes de  tiempo, eh buscado mucho y no eh encontrado nada relacionado a eso, espero alguien pueda ayudarme.


    string input = "salida";
            string audio = Settings.Default.micDefault;
            string destFile = Path.Combine(Settings.Default.directorioVideo, Path.GetFileNameWithoutExtension(input) + ".mp4");
            string args = string.Format(@"-y -rtbufsize 200M -f gdigrab -thread_queue_size 1024 -probesize 10M -r 30 -draw_mouse 1 -i desktop -f dshow -channel_layout stereo -thread_queue_size 1024 -i audio=""{0}"" -c:v libx264 -r 30 -preset ultrafast -tune zerolatency -crf 25 -pix_fmt yuv420p -c:a aac -strict -2 -ac 2 -b:a 128k  ""{1}", audio, destFile);

            System.Threading.Tasks.Task.Run(() =>
            {
                System.Diagnostics.Process Conversor = new System.Diagnostics.Process();
                Conversor.StartInfo.FileName = "ffmpeg";
                Conversor.StartInfo.Arguments = args;
                Conversor.Start();
                Conversor.WaitForExit();
                Conversor.Close();
            });


Nota: Como un extra , si alguien sabe como bajar el peso del archivo seria fantastico ya que con solo 2 segundos ya son 2 Mb aproximadamente... (muy alto).

Nota 2 : La  Settings.Default.micDefault; es donde se guarda un microfono (nombre exactamente)

Settings.Default.directorioVideo; Ruta de salida odnde se guarda el archivo.

Muchas Gracias
#117
COMO SIEMPRE!!!! GRACIAS!! elektro si tenia la ruta de salida solo que cuando copie aqui el post , borre unas cosas que no estaban como debia ser y las deje mal puesta al "corregirlas" (mi error en el post) mas , mataste 2 pajaros de un tiro al darme tu respuesta incluso me di cuenta que hay planteamientos que aunque teoricamente esten bien , logicamente no es asi.

"Ya estás encerrando entre comillas dobles la ruta del archivo indiferentemente de si contiene espacios en blanco o sin ellos, por ende no hay problema con respecto a eso."

Codigo Sin Error

string destFile = Path.Combine(@"C:\", Path.GetFileNameWithoutExtension(ofd.FileName) + ".mp3");


               System.Threading.Tasks.Task.Run(() =>
               {
                   System.Diagnostics.Process Conversor = new System.Diagnostics.Process();
                   Conversor.StartInfo.FileName = "ffmpeg";
                   Conversor.StartInfo.Arguments = $"-i {ofd.FileName} -b:a 320k {destFile}";
                   Conversor.Start();
                   Conversor.WaitForExit();
                   Conversor.Close();


No es problema solo es para aclara esa duda que me surgio porfavor, nuevamente gracias por que es la solucion correcta. Gracias!

porque esto no sirvio?   string entrada = "\"" + ofd.FileName + "\"";
#118
Hola muchachos, tengo un pequeño problema y es que en c# no logro colocar en la linea de argumentos las dobles comillas " " para archivos con espacio, me explico mejor.

esta es la linea para convertir archivos : "ffmpeg -i entrada.mp4 salida.mp3"

Pero cuando intento esto "ffmpeg -i entrada dos.mp4 salida.mp3" me genera un error el cual para corregirlo debo colocar, "ffmpeg -i "entrada dos.mp4" salida.mp3" y me convierte el archivo todo esto desde una ventana de "Dos".

El problema es que en C# , wpf no encuentro para hacer esta linea "ffmpeg -i "entrada dos.mp4" salida.mp3"

el codigo esta en un boton(openfiledialog)


                string entrada = "\"" + ofd.FileName + "\"";

                    System.Diagnostics.Process Conversor = new System.Diagnostics.Process();
                    Conversor.StartInfo.FileName = "ffmpeg";
                    Conversor.StartInfo.Arguments = $"-i {entrada} -b:a 320k {@"C:\"}";
                    Conversor.Start();
                    Conversor.WaitForExit();           
                    Conversor.Close();


es funcional para archivos sin espacio, espero puedan ayudarme
#119
Gracias me pondrea  ello, esta madrugada la falta de sueño no me ayudaba a organizar las ideas jaja
#120
gracias elektro, correccion uso es "SevenZipSharp" me acabo de serciorar y es la ultima actualmente... solucione el asunto pero aun hay unos extraños, resulta que los metodos de comprimir no me los dirige a donde yo pido , pero si los comprime en la misma carpeta y con el nombre que tiene el archivo, esto es algo bueno a pesar que no lo planeaba asi, y el de comprimir si esta bien osea donde yo pido se descomprime... el unico detalle es q no crea un subdirectorio y complica un poco las cosas por que esparece los archivos por donde esta, este detalle si seria bueno que me indicaras por que ni idea y eso que busque... por cierto gracias nuevamente elektro por que ya hoy dia entiendo el primer post que hice y en el cual me ayudaste.

Mas en ese momento no entendi