首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将带有任意扩展名的文件转换为带FMPEG键的MP4

将带有任意扩展名的文件转换为带FMPEG键的MP4
EN

Stack Overflow用户
提问于 2019-11-15 16:30:00
回答 1查看 4.3K关注 0票数 2

我正在使用youtube-dl和ffmpeg创建一个youtube下载器和转换器(供个人使用)。我正在尝试下载一个视频,并将其转换为MP4。

我遇到的问题是,youtube-dl下载的视频格式多种多样。有没有一种方法可以下载视频,然后告诉FFMPEG转换它,而不知道当前的文件类型?

我尝试使用*通配符,但这导致了错误。

代码语言:javascript
复制
@echo off
title youtube downloader

set /p name= URL: 
echo Select a type. (vid/mp3/mp4)
set /p type=

IF /i "%type%"=="vid" goto vid
IF /i "%type%"=="mp3" goto mp3
IF /i "%type%"=="mp4" goto mp4

:vid
youtube-dl %name%
goto commonexit

:mp3
youtube-dl -x --audio-format mp3 %name%
goto commonexit

:mp4
youtube-dl -o video %name%
ffmpeg -i video.* video.mp4 -hide_banner

:commonexit
pause
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-11-15 22:33:35

youtube-dl在automatically transcode the video to another format中内置了这个功能。

请记住,youtube-dl会合并到MKV,因为下载视频时使用的编解码器不能存储在MP4容器中。因此,转换为"MP4“是一项需要对视频进行代码转换的任务,这是一种有损操作,并且将导致进一步的质量损失。

如果您从YouTube下载,最好选择已经支持多路复用到MP4中的格式(h264/aac,而不是vp9/opus)。例如,如果指定格式字符串"bestvideo[ext=mp4]+bestaudio[ext=m4a]/best[ext=mp4]/best",则会尝试下载MP4容器中允许的最佳质量的视频和音频。有关详细信息,请参阅the format selection examples

如果您正在下载的视频没有可用的必要编解码器(不太可能),youtube-dl支持对视频进行转码。使用选项--recode-video mp4以某种方式将视频和音频转换为适合"MP4“的格式,但请记住,此操作确实会导致质量损失,并且找到最小化质量损失/编码时间的选项更像是一门艺术,而不是一门科学。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58873023

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档