Combine archivos de audio y video sin crear un tercer archivo

si este es el lugar equivocado para publicar esto, hágamelo saber.

Quiero descargar un video muy grande (9,1 GiB) de YouTube en mi dispositivo y tengo ~10 GB de espacio de almacenamiento libre para ello.
Debido a que es youtube, tengo que descargar video y audio por separado y luego combinarlos. Normalmente haría eso usando ffmpeg. Tendría que dejar que cree el video combinado en un nuevo archivo de ~9.1GiB porque no puede sobrescribir su entrada. El archivo de video único de tamaño similar debe existir durante todo el proceso.
El problema es: no puedo almacenar 2 archivos de 9.1GiB, solo uno.

Las posibles soluciones serían editar el archivo de solo video para tener una transmisión de audio o tener un sistema de búfer superinteligente que eliminaría las partes del archivo de solo video que ya se han copiado en el nuevo archivo.

¿Hay algún programa que sea capaz de hacer eso o conoces una solución diferente a este problema?
-atemu

(Lo siento por mi mal alemán)

No hay forma de combinar dos archivos sin crear un tercer archivo, al menos temporalmente. Pero no entiendo por qué crees que necesitas hacer esto. ¿Seguro que puedes descargar un archivo A/V combinado?
Todo lo que esté por encima de 720p 30fps h264 .mp4 y vp8 .webm se almacena como archivos DASH de video y audio únicamente en YouTube. Corre youtube-dl -F someyoutubevideolinksi quieres comprobarlo por ti mismo.
Usando una herramienta como JDownloader 2, parece que puedo transferir cualquier video como un archivo A/V combinado. Tal vez no he encontrado los archivos a los que te refieres: ¿puedes proporcionar un enlace específico?
cualquier video de youtube que esté en Full HD o superior youtube.com/watch?v=iNJdPyoqt8U . Supongo que JDownloader los combina automáticamente
No, funciona bien como está. Hay un enlace directo al archivo .MP4 de 2160p. Tiene un tamaño de 667 MB. Prueba JDownloader 2, es gratis.
jd viene con una copia de ffmpeg y mezcla las transmisiones DASH después de la descarga.

Respuestas (1)

Encontré una solución a mi problema:

Ffmpeg puede usar una transmisión http como entrada:

ffmpeg -i YoutubeVideoOnlyURLHere -i YoutubeAudioOnlyURLHere -c copy -map 0:0 -map 1:0 Path/to/outputFile.mp4

Puede obtener las URL necesarias de
youtube-dl -f bestvideo,bestaudio --get-url https:www.youtube.com/watch?v=XXXXXXXXXXX