| |
|
142
|
Programación / .NET (C#, VB.NET, ASP) / Problema con PromptBuilder
|
en: 3 Febrero 2018, 23:21 pm
|
Eh creado este codigo con la finalidad de poder copiar todo lo que hable en un cuadro de texto, pero quiero que se pueda hacer fuera del cuadro de texto. Aqui el codigo que implemente using System.Windows; using System.Speech.Synthesis; using System.Speech.Recognition; namespace Test { public partial class MainWindow : Window { PromptBuilder dictado = new PromptBuilder (); SpeechSynthesizer habla = new SpeechSynthesizer (); SpeechRecognitionEngine escucha = new SpeechRecognitionEngine (); string speech; public MainWindow() { InitializeComponent(); ActivarEscucha(); } private void ActivarEscucha() { escucha.SetInputToDefaultAudioDevice(); escucha .LoadGrammar(new DictationGrammar ()); escucha.RecognizeAsync(RecognizeMode.Multiple); escucha.SpeechRecognized += Escucha_SpeechRecognized; habla.SpeakAsync("Esperando Dictado"); } private void Escucha_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) { speech = e.Result.Text; // dictado.AppendText(speech); textbox.AppendText(speech); <-- si yo coloco esta linea, me escribe lo que hable en el textbox, yo necesito es que lo escriba fuera del textbox } } }
Espero puedan ayudarme a solventar este problema , gracias.
|
|
|
|
|
143
|
Programación / .NET (C#, VB.NET, ASP) / Ayuda con Nuget Descarga Video
|
en: 31 Enero 2018, 01:02 am
|
Hola nuevamente , estoy usando un codigo capaz de bajar videos de youtube y funciona de manera espectacular mi problema es que no se como direccionar el archivo descargado a una carpeta que yo le asigne. Tyrrrz/YoutubeExplode Es ese el codigo que uso, y tome de prueba el codigo que tiene de ejemplo llamado "ConsoleDemo" este se utiliza pegando la direccion del video de youtube pero lo crea en el mismo directorio raiz, si alguien lo ha usado que me pueda ayudar le estare muy agradecido. Aqui el codigo que plantea using System; using System.IO; using System.Threading.Tasks; using Tyrrrz.Extensions; using YoutubeExplode; using YoutubeExplode.Models.MediaStreams; namespace DemoConsole { public static class Program { /// <summary> /// If given a YouTube URL, parses video id from it. /// Otherwise returns the same string. /// </summary> private static string NormalizeId(string input) { if (!YoutubeClient.TryParseVideoId(input, out var id)) id = input; return id; } /// <summary> /// Turns file size in bytes into human-readable string /// </summary> private static string NormalizeFileSize(long fileSize) { string[] units = { "B", "KB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB" }; double size = fileSize; var unit = 0; while (size >= 1024) { size /= 1024; ++unit; } return $"{size:0.#} {units[unit]}"; } private static async Task MainAsync() { // Client var client = new YoutubeClient (); // Get the video ID Console.Write("YouTube URL: "); var id = Console.ReadLine(); id = NormalizeId(id); // Get the video info Console.WriteLine("Cargando..."); var video = await client.GetVideoAsync(id); Console.WriteLine('-'.Repeat(100)); // Print metadata Console.WriteLine($"Id: {video.Id} | Title: {video.Title} | Author: {video.Author}"); // Get media stream info set var streamInfoSet = await client.GetVideoMediaStreamInfosAsync(id); // Get the most preferable stream Console.WriteLine("Buscando la mejor calidad de video..."); var streamInfo = streamInfoSet.Muxed.WithHighestVideoQuality(); var normalizedFileSize = NormalizeFileSize(streamInfo.Size); Console.WriteLine($"Quality: {streamInfo.VideoQualityLabel} | Container: {streamInfo.Container} | Size: {normalizedFileSize}"); // Compose file name, based on metadata var fileExtension = streamInfo.Container.GetFileExtension(); var fileName = $"{video.Title}.{fileExtension}"; // Replace illegal characters in file name fileName = fileName.Replace(Path.GetInvalidFileNameChars(), '_'); // Download video Console.WriteLine($"Descargando [{fileName}]..."); Console.WriteLine('-'.Repeat(100)); var progress = new Progress <double>(p => Console .Title = $ "Gestor de Descarga YouTube [{p:P0}]"); await client.DownloadMediaStreamAsync(streamInfo, fileName, progress); Console.WriteLine("Descarga completa!"); Console.ReadKey(); } public static void Main(string[] args) { // This demo prompts for video ID, gets video info and downloads one media stream // It's intended to be very simple and straight to the point // For a more complicated example - check out the WPF demo Console.Title = "Gestor de Descarga YouTube"; // Main method in consoles cannot be asynchronous so we run everything synchronously MainAsync().GetAwaiter().GetResult(); } } }
|
|
|
|
|
145
|
Programación / .NET (C#, VB.NET, ASP) / Re: Ayuda con Nuget Descarga Mp3
|
en: 30 Enero 2018, 11:21 am
|
|
mira elektro me da el mismo error, creia que era una falla mia, no nunca me ha funcionado solamente lo vi y me parecio interesanta crear un programa para bajar el mp3 de los videos de youtube, voy a revisar la libreria que me recomiendas, aunque en lo personal youtube como que ha tomado sus precauciones para evitar estas descargas con el cuento de copyright y demas. Gracias nuevamente, hay una libreria que si funciona a la perfeccion y creo es la version mas actualizada de este y se llama, Tyrrrz/YoutubeExplode
este si lo eh probado (su ejemplo ya compilado) y funciona solo que no me eh metido con el.
REEDITO: si sirve lo acabod e hacer funcionar , es necesario copiar tambies las dll donde estan los exes, ahora debo asignar la ruta de salida por que como dices tu lo pone en la misma carpeta , creando una nueva llamada OUTPUT y no encuentro donde cambiar eso, gracias nuevamente por ese dato
|
|
|
|
|
147
|
Programación / .NET (C#, VB.NET, ASP) / Re: Ayuda con Nuget Descarga Mp3
|
en: 30 Enero 2018, 00:31 am
|
gracias electro por ese ejemplo , pero no me queda claro como usarlo o implementarlo, fijate este es uno de las opciones que da y me interesa (por que es la que mas puedo entender) n YoutubeMusicDownloader.exe "https://www.youtube.com/watch?v=I7RHr4o7t7E" y cuando bajo elk proyecto no sale por ningun lado ningun exe , a menos... que sea por que no lo eh compilado voy a probar y les cuento y de no ser asi les avisare.
|
|
|
|
|
148
|
Programación / .NET (C#, VB.NET, ASP) / Ayuda con Nuget Descarga Mp3
|
en: 29 Enero 2018, 14:03 pm
|
|
Buenas tengo un problema simple y complicado, y es que quiero implementar este nuget Tyrrrz/YoutubeMusicDownloader y no se como usarlo, sirve para descargar el mp3 del video, la documentacion no la entiendo si hay alguien que ya lo alla usado y me pueda ayudar seria perfecto es, colocar el codigo en un boton y al colocar la direccion en un textbox, ejecute la accion de descargar y convertir el video a mp3 en una direccion especifica donde se guardara , gracias de antemano o que si me peuden explcar de como iniciar a usarlo de forma clara tambien seria gran ayuda.
|
|
|
|
|
149
|
Programación / .NET (C#, VB.NET, ASP) / Cambiar speechRecognition en misma solucion
|
en: 31 Diciembre 2017, 21:01 pm
|
hola amigos, resulta que tengo en una misma solucion 2 hojas xaml distintas, resulta que en la primera (principal) luego de crear el objeto recognizerengine lo puedo usar perfectamente, el problema empieza cuando llamo la segunda hoja, en la primera luego antes de llamar a la segunda hoja desactivo el recognizerc con un stop, la segunda hoja me funciona muy bien el recognizer, logicamente cuando cierro esa ventana regresa a la hoja principal y como anteriormente habia colocado en stop no escucha nada, yo pense en lo siguiente, poder antes de cerrar la ventana dos , reactivar el recognizer de la ventana uno, pero aqui radica mi problema, no se como hacerlo. Podrian ayudarme hacerlo o si tienen una mejor solucion. este es el objeto SpeechRecognitionEngine escucha = new SpeechRecognitionEngine(); trate de colocarlo asi public SpeechRecognitionEngine escucha = new SpeechRecognitionEngine(); pero no se como llamarlo de la otra hoja xaml. Este es la orden en la ventana 1 case "mis carpetas": speechOn = false; menuCarpetas = new Modu2.MenuCarpetas(); menuCarpetas.Show(); escucha.RecognizeAsyncStop(); break; detengo el recognize. ventana dos a la hora de cerrarla if (speechCarpetas == "cerrar ventana") { escuchaCarpetas.RecognizeAsyncStop(); escucha.RecognizeAsync(RecognizeMode.Multiple); (en teoria seria algo asi) Close(); } no se como poner publico el recognizer de la ventana uno para activarlo desde la segunda. QUIERO DESEARLES A TODOS UN FELIZ AÑO!!!!  y dar las gracias a los que me apoyaron este año y espero seguir contando con uds , gracias mas a la paciencia que me han tenido , un abrazo y un beso a tod@s en caso de haber alguna chica, disfruten y pasenla genial con sus amigos y seres queridos. Gracias compañeros.-
|
|
|
|
|
150
|
Programación / .NET (C#, VB.NET, ASP) / Re: Consulta 1
|
en: 29 Diciembre 2017, 01:54 am
|
|
Gracias elektro y claro que habia apretado esa lista desplegable donde uno puede cambiar la propiedad de la setting que se va a guardar , y en efecto es necesario los 20 textbox, claro ya lo habia hecho antes lo que no queria era volverlo hacer, cada textbox cumple una funcion distinta y si debe ser indiviudualizado, termine hace poquito y hace su funcion,no es que no quiera estudiar si lo hago y leo pero en ocasiones la explicacion de una persona con experiencia hace mucho la diferencia
|
|
|
|
|
|
| |
|