Youtuber123
1
Ro
Verificación en dos pasos activada
Verificado por Binance
¡Usuario popular!
Suscripción a IA
Precio
$3 USD
Formas de pago
Otro
Método de entrega
Sin intermediario
Plazo para pagar
Otro periodo
Plazo de entrega
Otro periodo
Comisiones
No existen
Quiero una extensión qué use yt dtp
Para descargar videos de YouTube y clips
En una carpeta fija 2 archivos
Uno a 720p 60 fps.
Y otra carpeta 1080p 60 fps.
Qué yo entienda el código y este comentado, yo pueda entender
Pago al terminar
No pago 20% adelantado
1 días máximo para hacerlo.
Qué cobre barato por que soy pobre...
¿Te sirvió? Únete a la conversación
Con tu cuenta gratis puedes responder, escribirle al autor por mensaje privado y comprar con Saldo retenido : el pago se libera cuando recibes lo acordado.
Toma 30 segundos · vuelves a este tema al terminar
pedrocastellanos
Delta
Verificado
Verificación en dos pasos activada
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Ramiro2
Curioso
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Youtuber123
1
Ro
Verificación en dos pasos activada
Verificado por Binance
¡Usuario popular!
Suscripción a IA
Llevo esto
Spoiler: Coodigo que llevo
public void DownloadVideoSegment(string videoUrl)
{
string ytDlpPath = "yt-dlp";
string url = videoUrl;
string newTitle = (trackBar2.Value-trackBar1.Value).ToString() + " " + label4.Text;
string ffmpegArguments = "-map 0 -c copy";
string arguments;
string arguments2;
if (!checkBox1.Checked)
{
arguments = $" -f \"bestvideo[ext=mp4][height<=4320]+bestaudio[ext=m4a]/best[ext=mp4]\" --prefer-free-formats --merge-output-format mp4 --external-downloader ffmpeg --merge-output-format mp4 --external-downloader ffmpeg --external-downloader-args \"{ffmpegArguments} -ss {TimeSpan.FromSeconds(trackBar1.Value).ToString(@"hh\:mm\:ss\.ff")} -t {TimeSpan.FromSeconds(trackBar2.Value).ToString(@"hh\:mm\:ss\.ff")}\" --output \"1080/{SanitizeFileName(newTitle)}.%(ext)s\" \"{url}\"";
arguments2 = $" -f \"bestvideo[ext=mp4][height<=720][fps>=60]+bestaudio[ext=m4a]/best[ext=mp4]\" --prefer-free-formats --merge-output-format mp4 --external-downloader ffmpeg --merge-output-format mp4 --external-downloader ffmpeg --external-downloader-args \"{ffmpegArguments} -ss {TimeSpan.FromSeconds(trackBar1.Value).ToString(@"hh\:mm\:ss\.ff")} -t {TimeSpan.FromSeconds(trackBar2.Value).ToString(@"hh\:mm\:ss\.ff")}\" --output \"720/{SanitizeFileName(newTitle)}.%(ext)s\" \"{url}\"";
}
else
{
arguments = $" -f \"bestvideo[ext=mp4][height<=4320][vcodec^=avc1]/best[ext=mp4][vcodec^=avc1]\" -vcodec h264 --acodec copy --merge-output-format mp4 --external-downloader ffmpeg --merge-output-format mp4 --external-downloader ffmpeg --external-downloader-args \"{ffmpegArguments} -ss {TimeSpan.FromSeconds(trackBar1.Value).ToString(@"hh\:mm\:ss\.ff")} -t {TimeSpan.FromSeconds(trackBar2.Value).ToString(@"hh\:mm\:ss\.ff")}\" --output \"1080/{SanitizeFileName(newTitle)}.%(ext)s\" \"{url}\"";
arguments2 = $" -f \"bestvideo[ext=mp4][height<=720][fps>=60][vcodec^=avc1]/best[ext=mp4][vcodec^=avc1]\" -vcodec h264 --acodec copy --merge-output-format mp4 --external-downloader ffmpeg --merge-output-format mp4 --external-downloader ffmpeg --external-downloader-args \"{ffmpegArguments} -ss {TimeSpan.FromSeconds(trackBar1.Value).ToString(@"hh\:mm\:ss\.ff")} -t {TimeSpan.FromSeconds(trackBar2.Value).ToString(@"hh\:mm\:ss\.ff")}\" --output \"720/{SanitizeFileName(newTitle)}.%(ext)s\" \"{url}\"";
// arguments = $" -f \"bestvideo[ext=mp4][height<=4320][vcodec^=avc]/best[ext=mp4][vcodec^=avc]\" -vcodec h264 --acodec copy --prefer-free-formats --merge-output-format mp4 --external-downloader ffmpeg --merge-output-format mp4 --external-downloader ffmpeg --external-downloader-args \"{ffmpegArguments} -ss {TimeSpan.FromSeconds(trackBar1.Value).ToString(@"hh\:mm\:ss\.ff")} -t {TimeSpan.FromSeconds(trackBar2.Value).ToString(@"hh\:mm\:ss\.ff")}\" --output \"{SanitizeFileName(newTitle)}.%(ext)s\" \"{url}\"";
}
Thread downloadThread = new Thread(() =>
{
Process process = new Process();
process.StartInfo.FileName = ytDlpPath;
process.StartInfo.Arguments = arguments;
process.StartInfo.UseShellExecute = false;
process.StartInfo.RedirectStandardOutput = true;
process.StartInfo.RedirectStandardError = true;
process.StartInfo.CreateNoWindow = true;
process.Start();
process.WaitForExit();
});
downloadThread.Start();
Thread downloadThread2 = new Thread(() =>
{
Process process = new Process();
process.StartInfo.FileName = ytDlpPath;
process.StartInfo.Arguments = arguments2 ;
process.StartInfo.UseShellExecute = false;
process.StartInfo.RedirectStandardOutput = true;
process.StartInfo.RedirectStandardError = true;
process.StartInfo.CreateNoWindow = true;
// Manejar stdout en un hilo separado
process.Start();
process.WaitForExit();
});
downloadThread2.Start();
}
Zarfala
Beta
Verificado
Verificación en dos pasos activada
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Última edición: 30 Jun 2023
David Escribe
Alfa
Verificación en dos pasos activada
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!