标签: ffmpeg

如何使用 WebM 正确压缩视频?

几年前,当 VP8 编解码器问世时,我在 Ubuntu 上使用一个程序将所有文件转换为 WebM,它会将文件大小减少一半。22 分钟的剧集大小从 300MB 减少到 150MB 以下。

我认为它可能是 Miro Video Converter,但他们现在只提供源 tarball,并且说明没有说明如何编译它。我非常想拥有一个可以运行的 .deb 文件。

现在我尝试用 WinFF、QWinFF、Videomass、FFmpeg 来实现,但没有任何方法可以达到这种效果...不仅奇怪的是单个文件的转换实际上需要几个小时,而且生成的文件甚至比原始 mp4 还要大。 ..它们也只有 640x480。比特率大概是1500。

我究竟做错了什么?我一生似乎都无法在 Linux 上找到任何视频转换器来减小我的超大未压缩 MP4 和 AVI 的文件大小。仅仅是参数吗?我做错了什么吗?有没有可以做得更好的视频转换器?

如果必须的话,我愿意使用命令行,但我知道我提到的几个只是 FFmpeg 的前端。

编辑:示例 - 使用编解码器 mpeg4 aac、2k 比特率、44k 采样率、24 FPS 的 127k 音频输入视频。使用 ffmpeg 转换为 VPx vorbis,相同的音频、1.5k 比特率、相同的帧率、相同的尺寸。并且生成的文件更大?

video codecs ffmpeg webm video-conversion

2
推荐指数
1
解决办法
3866
查看次数

如何在 Ubuntu 13.10 中完全删除 ffmpeg?

我尝试了本指南 来安装 ffmpeg,但现在我想从 Ubuntu 13.10 中完全删除它,但是当我执行该指南进行删除时,ffmpeg 仍然存在!如何准确去除?

删除 ffmpeg 后,我再次看到此输出:

deniz@deniz-Ubuntu:~/Downloads$ ffmpeg
ffmpeg version git-2013-11-15-995f450 Copyright (c) 2000-2013 the FFmpeg developers
  built on Nov 15 2013 18:32:56 with gcc 4.8 (Ubuntu/Linaro 4.8.1-10ubuntu8)
  configuration: --disable-yasm
  libavutil      52. 53.100 / 52. 53.100
  libavcodec     55. 43.100 / 55. 43.100
  libavformat    55. 21.100 / 55. 21.100
  libavdevice    55.  5.100 / 55.  5.100
  libavfilter     3. 91.100 /  3. 91.100
  libswscale      2.  5.101 /  2.  5.101
  libswresample   0. 17.104 /  0. 17.104
Hyper fast Audio …
Run Code Online (Sandbox Code Playgroud)

installation uninstall ffmpeg

1
推荐指数
1
解决办法
1万
查看次数

下载 YouTube 视频后是否可以恢复其原始质量?

我在Xubuntu。两天前,我想从 YouTube 下载一首 mp3 歌曲:这首使用这个 Firefox 扩展或任何其他扩展。大小为 82 MB。它显然不是 mp3 文件;这是一个带有.mp3扩展名的视频。所有的视频数据都还在。

所以我想知道,所有下载器的工作方式都一样吗?例如,我是否可以使用此扩展程序以尽可能低的质量下载此视频以节省带宽,然后使用 ffmpeg 或其他方式将其转换为高清?

我不认为下载器能够转换视频;他们只是更改文件的扩展名以稍微减小其大小。我错了吗?

flash ffmpeg video-conversion

1
推荐指数
1
解决办法
669
查看次数

如何使 ffmpeg 无处不在?

我已经ffmpeg按照trac.ffmpeg.org 上的本教程进行安装

现在,ffmpeg工作,如果我cdbin,并执行它./ffmpeg

我想知道我是否可以ffmpeg通过ffmpeg从任何地方输入终端来执行。

ffmpeg executable

1
推荐指数
1
解决办法
2万
查看次数

如何使用 ffmpeg 对目录中的所有文件进行转码

我想制作一个脚本,将所有无损文件从我的相机转码为 3mb/s,并将编解码器更改为 h.264。我找到了一个命令,它将文件导出为一个大文件,但我想要一些可以保留名称并将输出放在另一个目录中的东西。请注释说明命令的每个部分的作用,以便我可以根据需要对其进行修改。

编辑

这有效:

for file in *.avi; do ffmpeg -i "$file" "${file%.avi}".webm; done
Run Code Online (Sandbox Code Playgroud)

我只想知道每个部分的作用,以便我可以根据需要对其进行修改。

scripts ffmpeg

1
推荐指数
1
解决办法
9015
查看次数

如何剪切视频的一小部分

我想删除长视频(2 小时)的一小部分(大约 10 秒)。我该如何使用 FFMPEG 来做到这一点?

video ffmpeg

1
推荐指数
1
解决办法
987
查看次数

使用 FFMPEG 将 MKV 转换为 MP4

我正在使用以下行进行转换

for f in *.mkv; do ffmpeg -i "$f" -c:v copy -c:a aac -b:a 256k "${f%%mkv}mp4";&& rm "{$f}.mkv"; done
Run Code Online (Sandbox Code Playgroud)

我还需要这个来检查子目录,但我不断收到令牌错误或 bash 错误

完成转换后它也不会删除 mkv 文件

一旦我的线路正常工作,我将如何更进一步并使其自动运行(例如每天一次)以转换任何新添加的 mkv 文件。

xubuntu bash scripts ffmpeg

1
推荐指数
1
解决办法
1040
查看次数

如何在 bash 脚本中转义这个?

我正在尝试完成一批 3 个视频以将其留在那里直到早上处理,但似乎其中有特殊字符......我在终端中尝试“原始”并且它有效但在 bash 脚本中它停止工作

例子:

args1="-r 29.97 -t 00:13:30 -vsync 0 -vpre libx264-medium -i"
args12="-r 29.97 -ss 00:40:30 -vsync 0 -vpre libx264-medium -i"
args2="[in] scale=580:380 [T1],[T1] pad=720:530:0:50 (other arguments with lots of [ and ]"
Run Code Online (Sandbox Code Playgroud)

在输出中它说

无法为 'scale=580:380' 找到合适的输出格式,不知道为什么......就像我说的,该命令在命令行中运行良好,只是不在脚本中

/usr/local/bin/ffmpeg "$args1" "${file}"  -vf "$args2" "$args3" "${args[0]}_${startingfrom}_0001_02.mp4"
Run Code Online (Sandbox Code Playgroud)

command-line bash ffmpeg

0
推荐指数
1
解决办法
1850
查看次数