YouTube如何编码我的上传内容以及应该使用哪种编解码器上传?


25

与以下哪种编解码器/格式有关,适用于youtube的全动态视频录制?我想知道我如何期望Youtube处理我的视频。我知道他们有一个非常热心的处理程序,可以生成不同分辨率的多个上载副本。1080p,720p和480p,至少是移动设备。

他们使用什么编解码器?作为制作人,我可以选择将文件下载为MP4。但是,我注意到第三方下载器(极其阴暗和cr脚)将文件压缩为FLV。我基本上想知道我的编解码器是否将被H.264或其他使用的文件保存或覆盖。考虑到它们在设备之间的惊人兼容性,我认为它们对每个视频使用非常通用的标准或多个编解码器。

那么,我可以期望我的视频以什么编解码器输出,并且取决于它,取决于什么?我应该将自己的编码调整为与Youtube的编解码器“玩得开心”吗,或者在质量方面很重要?我知道我可以在YouTube上投放几乎所有东西,而且会用到它,所以我主要关注视频质量。


这是查看视频可用格式的工具:h3xed.com/web-and-internet/…–
akostadinov

Answers:


31

有关所使用格式的一些常规信息:

YouTube使用4种容器格式和4种不同的编解码器。取决于视频的受欢迎程度,视频使用哪种编解码器(请参见下面的原因)。通常,您上传的每个视频都将以h.264进行编码,然后将其复用到.flv和.mp4容器中。这是标准,每个视频都会发生。虽然.flv仅用于720p以下的分辨率。这意味着.flv容器中将仅存在360p和480p。尽管每个720p以下的视频都将提供mp4版本。对于240p,YouTube还使用了3gp,这是一个相当古老的编解码器(基于MPEG-4 Part 2(不要与MPEG4 Part 10 aka h.264混淆)),用于移动设备(早于智能手机时代)。容器.3gpp。

使用的另一个编解码器是VP8,它以WebM容器格式提供。WebM是Google开发的一种格式,是HTML5的标准视频编解码器,到目前为止,在大多数现代浏览器中对WebM的支持都非常好。WebM是YouTube的HTML5版本引入的。YouTube仅在上传某些视频后才在WebM中对它们进行编码,并且大多数情况下仅对流行视频进行编码(按照我在WebM中看到的编码视频进行),因此不确定您的视频会出现在WebM中。尽管随着WebM获得更多支持,这种情况正在改变。

到目前为止,YouTube还支持WebM中的VP9,但到目前为止,只有chrome支持此编解码器(截至06/2015)。借助VP9,他们还引入了对Opus音频编解码器的支持(除了在所有其他容器中使用的AAC之外)。

关于您的链接问题(也许应该合并?)

您应该使用哪种编解码器/容器上载?

这取决于您是否受上传速度的限制/关注,然后将h.264 Level 3.1 / 4.1与SD的Main Profile或HD的High Profile一起使用。YouTube会接受这种做法,并且在YouTube服务器对其进行编码后看起来会很好。我通常会建议720p素材的比特率为〜4-5 Mbit / s,而1080p的比特率则为〜8-9 Mbit / s。对于4k,约15Mbit / s。通常,这是尺寸和质量之间的良好平衡。如果您想获得更高的质量,请选择更高的比特率,如果您选择更小的视频,请选择更低的比特率。

但是请注意,一旦上传了视频,YouTube总是会对您的视频进行编码,无论您使用哪种编解码器和设置都没有关系。因此,如果您希望在理论上为上载提供最佳质量,请选择用于上传的无损编解码器,或者至少选择视觉上无损的编解码器。将YouTube视为交付/消费者格式的最终​​输出,上传到YouTube是制作的最后一步,在制作过程中您要保持无损。但是请注意,这全都只是理论上的事情,实际上我会说这并不重要,因为我们谈论的是YouTube,而不是电视广播或电影院。

但是,如果您真的想以“完美”的方式进行操作,请使用生产编解码器,而不要使用像h.264这样的消费者编解码器。MJPEG会是一个很好的编解码器,YouTube绝对支持.avi或.mov容器中的编解码器。MJPEG是有损编解码器,但视觉质量将与源相同(如果您选择足够高的质量设置,则实际上是JPEG作为视频编解码器)。我认为,使用真正的无损编解码器会浪费硬盘空间和带宽。

但是,如果您想真正无损地上传视频并且不关心上传时间,我建议您使用标准的QuickTime编解码器,因为YouTube应该几乎支持所有这些编解码器(请注意,并非所有人都无损,h264也是一种标准的QuickTime编解码器)。遗憾的是,尽管YouTube并未说明支持哪些QuickTime编解码器。动画或JPEG2000应该可以工作。两种编解码器都可以100%无损。

在帧速率方面,如果您可以选择在录制/动画时使用25FPS(到目前为止,YouTube还支持50和60FPS视频,因此可能还支持30FPS),那么YouTube最喜欢(每个视频使用的帧速率),但如果您的镜头已经以其他帧速率出现,则坚持使用该帧速率,并且不要上下插值。YouTube会为您处理转换,并且通常会比您的编码器做得更好。他们每天必须处理各种帧速率,并且很好地解决了这个(实际上非​​常复杂的)问题。

音讯:

对于音频,如果您也想保持音频的无损,请使用PCM,但这实际上只是理论上的质量改进。AAC通常会明智地执行相同的工作质量(主观),并且会更小。我建议AAC的比特率至少为192kbps。大小影响通常不如视频编解码器那么大,因此您也可以仅以320kbps传输。YouTube会使用AAC和Opus(仅适用于WebM)编解码器将音频转换为〜24kbps(移动aka 3gp)〜64kbps(240p),〜128kbps(360p / 480p)和〜192kbps(720p +)。


3
我同意这个答案。但是有一个实际的限制:上传速度。您允许多少时间上载?整个周末,一个晚上或几个小时,直到您的工作结束。我本人将10分钟的视频限制为2 GB,就我而言,这需要大约4个小时的上传时间。但这真的限制了质量吗?我的2 GB视频的比特率为30 Mbit / s,YouTube将其转换为3 Mbit / s。无损编码会增加上传时间,但YouTube输出仍将达到3 Mbit / s。请自行设置个人限制。
Fred42vid 2013年

当然,这就是为什么我(很希望)非常清楚地说明了它的理论性和实践性。几乎所有情况下都建议使用H.264。我能想到的唯一的MJPEG实际用例是,色带出现在第一个h.264编码中,而色带出现在第二个YouTube编码中会变得更糟。
PTS

1
Youtube支持h.264高配置文件,因此您应始终使用它。SD内容的主要配置文件很愚蠢。忽略8x8dct总是一个坏主意。在x264中,启用8x8dct是CPU时间最有效的折衷方案,以获得每个文件大小更好的质量(aka rate:distortion或RD)。
彼得·科德斯

2
在相同的比特率下,H.264看起来比MJPEG好得多。如果您想要更好的质量,只需提高比特率(或以恒定质量而不是目标比特率模式设置质量)。如果您不介意上传大文件,则可以一直使用无损h.264。它可能会比无损j2k小。不过,两者都是完美的品质,因为这就是无损的意思。
彼得·科德斯

1
对于音频,如果YouTube是否支持FLAC,则为IDK。如果是这样,那将是您无损选择的选择。否则,是采用优质编码器制作的高比特率AAC。(-c:a libfdk-aac,不是ffmpeg中的默认faac或内置aac编码器。)
Peter Cordes

5

YT输出哪种格式的视频取决于各种因素。对于大多数普通视频,他们使用H264编码的视频流(AAC或MP3音频)以MP4和FLV容器文件的形式。

这些只是保存编码视频数据的容器-尽管FLV文件(或理论上MP4文件)不能保证H264编码格式,因为它们还可以保存Sorenson Spark,On2 VP6和其他文件(尤其是较旧的视频) )。

之所以使用FLV,是因为它们保证可以与Flash播放器一起播放。

真正确定格式的并不是下载软件,他们只是使用itag“内部”视频URL(而不是浏览器中的URL)来下载可用的内容,以识别选项。如果他们选择转换视频,那将是一项功能,但与YouTube的格式无关。

除这些格式外,还有其他格式,例如3GP,WEBM以及3D电影。其中一些针对手机和新的Html5标准(如我们所说的那样实现),该标准可以直接使用html播放视频(即没有Flash播放器)。

回到最常见的格式:质量方面,这并不重要。如果FLV包含H264,则可以使用f.ex VideoLAN的VLC Player播放与MP4容器文件一样好的文件。如果FLV不包含H264,并且您希望将其用作保存H264的MP4容器,则需要对其进行重新编码,这将降低质量。

由于YT当前似乎更喜欢H264,因此我建议您也以这种格式上传(请参阅其有关大小和比特率的信息,以避免重新编码以获得最佳分辨率)。



0

您的问题是“ YouTube如何编码我的上传内容,我应该使用哪种编解码器上传内容?”。

在深入探讨您的问题时,我看到:“我应该将自己的编码调整为与Youtube的编解码器“玩得开心”吗,或者从质量角度来说这很重要吗?我知道我可以在Youtube上投入很多东西,而且会用到它,所以我最关心的是视频质量。”

答案是YouTube使用Lavf57.25.100对新视频进行编码,而使用已久的视频则使用专有的编码器(其ID中未嵌入“ Lavf57.25.100”,但使用了这样的句子)编码:由Google,2011年5月11日”)。更改算法后,旧视频未重新编码。

可以使用许多不同的编解码器,YouTube建议使用H.264-参见此处:https : //support.google.com/youtube/answer/1722171?hl=zh_CN

出于某种原因,您选择不询问有关Container的问题(这与Codec不同)。您还假定1080P将可用,并且不询问最重要的事情-比特率(紧随其后的是分辨率)。

如果您以60FPS的速度上传1080P分辨率的视频,则可用的最大分辨率为720P(在支持1080P的移动设备上为60 FPS的情况),以29.97 FPS的速度上传1080P的视频可以在移动设备上观看1080P的视频。

如果“质量”是您的目标,那么重要的是比特率和分辨率。由于YouTube会执行“压缩测试”来确定他们可以将视频以最低的降级幅度压碎的程度,因此您无法进行升级或使用无损作弊功能-上载糊状信号将被高度压缩,上载高分辨率和高比特率,然后YouTube可以避免粉碎,并提供更好的观看体验。

请参阅:https : //support.google.com/youtube/answer/1722171?hl=zh-CN

请注意,不同的分辨率和“质量期望”。对于期望值较低的4K视频,您可以上传比特率为35-45 Mbps的视频,但是如果您是“制作人”,并且质量是您的目标,则既需要更高的帧率,又要使用至少66-85 Mbps的视频相机比特率(在非常轻柔地压缩之前)。

如果您升级低分辨率视频并使用未压缩的编解码器,希望获得最佳质量,您将被抓到(减少到糊状)。

使用生产质量的摄像头,高帧率和比特率视频进行录制,并进行非常缓慢的压缩(Ffmpeg Q = <10)以获得最佳效果-“编解码器”(您的文字)不是唯一的决定因素(尽管我建议不要这样做)旧的)。

Ffmpeg支持.MP4容器和H.264编解码器,因此请使用它们。

人们经常抱怨YouTube毁了他们的视频,问题在于他们一开始上传的质量不够高,无法“跳开开关”,并导致YouTube的Compressor在您的Upload上轻踩。可以偷看像素的完美视频。GIGO规则适用。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.