怎么无损的把一种“有损压缩格式”的视频转成另一种“有损压缩格式”?

2018-09-06 13:42:23 +08:00
 kongque2016
我想剪辑个视频上传到 bilibili,但是手上的素材都是 mpeg 编码的 mp4 格式(大约 720p),premiere 导入不支持。

我现在要先用格式工厂转成 avc h264 格式,但是在配置输出选项时,不知道怎么选?
举个例子,有一个素材是 250 兆,我把输出设定成 1080p,发现转换后的大小约 570 兆。
把输出设定成 720p,发现转换后的大小约 300 兆。
我不知道该怎么选了。

mpeg 编码和 avc h264 编码都是有损的,那两者之间转码的话,是不是必然又有损失?
能不能用一种方法,把我现在 mpeg 编码的素材里的信息,全部用 h264 还原出来?
如果损失是必然的,我怎么尽可能的减少损失,拿上面的例子说,把 720p 的 mpeg 素材转成 avc h264 格式,是不是输出成 1080p 要比输出成 720p 要好一些,不然,那多出的 270 兆是什么呢?

我正在搜索码率,采样率这些东西,小白一只,偷个懒想先请教一下各位。
5821 次点击
所在节点    问与答
23 条回复
InternetExplorer
2018-09-06 13:48:07 +08:00
调一下码率,和原来差不多就行了吧
xmoiduts
2018-09-06 14:00:57 +08:00
不知道原来的视频是什么格式,不过 ffmpeg 应该有更精细的调节方法。就是使用比较复杂。
要求不高可选 1080p,多出的内容是玄学,剪辑完成后再压回去即可。
hhsuan
2018-09-06 14:08:16 +08:00
不可能,绝对做不到
GeruzoniAnsasu
2018-09-06 14:14:09 +08:00
转 yuv 再重新压
kongque2016
2018-09-06 14:29:28 +08:00
@xmoiduts ”多出的内容是玄学“您指的是我例子中 720p mpeg ===> 1080p h264 多出的 270 兆是玄学吗?既然是玄学,那转成 720p h264 怎么样?我看设置成 720p 时,生成的 h264 码率也比原来 mpeg 的码率高。
ynyounuo
2018-09-06 14:31:36 +08:00
不可能。
kokutou
2018-09-06 14:33:16 +08:00
mpeg 的 mp4 我记得是支持的啊?你用的精简版 premiere ?

1、无损转有损格式到有损格式,是不可能的。
2、格式工厂是个很老很挫的软件。建议换 https://handbrake.fr/
3、参数不同,转码后的文件,可能大可能小。根据参数不同,720p 的文件也可以比 1080p 大。根据参数不同,1080p 也可以比 720p 模糊。
4、即使目标码率相同,目标格式相同,源文件相同,但是压制的参数不一样,也会导致清晰度不一样。
KevZhi
2018-09-06 14:34:37 +08:00
解压成 Uncompressed AVI,然后再压制,可以最大限度的达到你的要求(及心理需求)。
一般我们在小型数字电影的剪辑流程中,来自不同设备的素材,统一会转换成理论无损的数字母带的专业格式,如 ProRes、DNxHD,(这个过程是由剪辑软件自动完成的),最后一直到渲染使用的都是这个格式,以这个格式作为母带,为各个发行渠道压制对应的格式,是无损的
KevZhi
2018-09-06 14:52:38 +08:00
另外你可以去参考一下 ffmpeg 的原理流程,源文件压制成另外一种格式,也是要在内存中解压到 YUV 的。就好比让你把五捆每捆六本绑得很紧的书,弄成六捆每捆五本,你必须要把绳子解开,把书拆散,重新打包。所以直接转换,他就会按你的参数要求达到你的格式。

你还可以去了解一下视频编码的原理,MPEG 和 H264 有着本质的区别,你若问是否能将 MPEG 里边的信息无损保留转换到 H264,那么答案就是就像把中文翻译成英文了一样。讲的故事和意思都差不多,但是中文里面的成语和一些东西是永远无法在英文里以完全完整的意思再现的。

想给你说的是需要注意的一点是,正规的剪辑流程中(包括你自己用 pr 也是)所有素材直接转化为母带格式,切忌二次转换压制,我前面也说了,剪辑软件内部都会用解压成无损母带格式(否则剪辑会十分卡顿),你直接解压成 YUV 就行。你的出发点就错误了

就好比你打开 adobe audition 剪一段音频,你会清楚的看到他有一个提示框,正在打开 mp3 文件,这就是在把 mp3 转成 wav,只不过视频流程中大部分情况不用无压缩作为母带,因为太不经济了,ProRes 和 DNxHD 就好比 FLAC 一样,既无损,空间占用也小。
kongque2016
2018-09-06 15:01:10 +08:00
@kokutou 我从新浪共享下载的 premiere pro 2,好像有点儿老旧了。但新的又找不到。我也买不起正版的,你们不要打我。
KevZhi
2018-09-06 15:05:14 +08:00
另外 720 转成 1080 纯属脱裤子放屁
msg7086
2018-09-06 15:05:20 +08:00
「有损」压缩格式就是在压缩的过程中有损。不存在既无损又有损的压缩方式。
AVC 并不一定是有损的,AVC 和 HEVC 都有无损编码方式,x264 中使用--qp 0,x265 中使用--lossless,可以保证输出结果与原始输入完全一致。我们编码一部片的时候,有时候需要输出 720P 和 1080P 两个版本,这时候如果前期处理时间很长,我们就会先输出到无损文件,再解码并重新编码到目标参数。

最近在做的一部 DVDRip,原档是 24 分钟的 NTSC DVD,1.5G ,waifu2x 完的 720p 用 x265 压缩到无损后是 14G,再次 x265 转压到发布用参数,成 180M。

720p 转换成 1080p 会变大只是因为二次压缩效率变低了。
比如 24fps/1.001 的 720p YUV420P8 的码率是 253mbps,你的素材如果是 24 分钟 250M 的话,差不多是 1.4mbps。

所以你前后做的工作是:
1.4mbps (素材) -> 253mbps (解码后的素材) -> 569mbps (拉伸到 1080p 后的素材) -> 3.2mbps (压缩完的 h264 1080p)。

你这里的 3.2mbps,这「多出来的 270M 」,和素材的码率其实并没有太大的关系。
msg7086
2018-09-06 15:13:13 +08:00
如果你用商业工具剪辑,一般是用 ProRes 编码。
如果你要导入视频进商业工具,除了 x264 的无损以外,也可以试试 Lagarith。我不确定 x264 的无损编码(需要 High444 )那些商业工具能不能正常解码,你都可以试试看。
fnscar
2018-09-06 15:14:44 +08:00
视频格式转换分两种:
封装格式的转换,比如 mp4 转为 mkv,只是换个 container,这种是无损的。
编码格式的转换,比如 mpeg2 转为 avc,需要先把 mpeg2 解码为无压缩的 yuv 再重新编码为 avc,除非编码 avc 的时候用 loseless 否则一定是有损的。
请卸载格式工厂。建议用 ffmpeg:
ffmpeg -i input.mp4 -c:v libx264 -preset slower -crf 18-c:a copy output.mp4
menhood
2018-09-06 16:09:27 +08:00
你可能只是需要最新版的 Pr …… http://www.lookae.com/pr-cc-2018/
digimoon
2018-09-06 16:26:46 +08:00
建议直接用碾压级别的码率来尽量达到“无损”的效果,毕竟 lz 目的只是给人看的只要看不出来就行了
简单 x264 用 crf 10 转一个就是了,我平时用 15 都觉得足够了
BFDZ
2018-09-06 16:28:29 +08:00
了解一下视频封装格式的概念,您需要就是把视频转封装格式。先提取出视频和音轨,再用目标格式的封装工具做封装,这个过程中视频信息是无损的,或者用 ffmpeg 也可以转。

格式工厂默认是转码。
imn1
2018-09-06 16:37:00 +08:00
综合 LZ 的所述,不像是专业的视频编辑,而且目的只是上传 web
建议#7 所说的 handbrake,里面可选 bitrate 和 web 优化等等,基本足够了,里面也有些预设模板可选
另外,这样做建议保留原文件,这个转码后的文件肯定没有源文件高质量,适合 web 播放而已,以后再有类似需求还应从原文件处理

如果需要很细致的编辑,就需要把原文件优质解码到 raw,然后用可按帧编辑的工具,加增益滤镜等等,复杂多了
hehe520347
2018-09-06 17:15:27 +08:00
下个 ffmpeg 前几天刚做的 mkv 转 mp4 基本支持所有格式互相转换 无损的
一行命令搞定
ffmpeg -i C:\Users\user08\Desktop\aria2\downloads\1.mkv -cKv copy -c:a copy 01.mp4

还能去水印
ffmpeg -i C:\Users\user\Desktop\2.mp4 -b:v 548k -vf delogo=x=1070:y=25:w=175:h=55 C:\Users\user\Desktop\delogo2.mp4
timonwong
2018-09-06 17:17:33 +08:00
容器格式互相转可以「无损」
音视频的 codec 转换不能

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/486718

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX