问题标签 [re-encoding]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
437 浏览

ffmpeg - ffmpeg从MAC重新编码flv文件

我已经从 mac 上的网络摄像头录制了一段视频,现在我正在尝试对其重新编码,但 ffmpeg 无法识别音频流:

是否可以让 ffmpeg 支持录制在 MAC 上的 flv 格式的音频流?

0 投票
4 回答
4624 浏览

android - 将 Wav 文件重新编码为 AAC LC、AMR WB/NB

有没有办法使用标准 Android SDK 将 PCM wav 文件重新编码为另一种编码?

我可以看到可以直接从麦克风录制成这些格式,但我正在编写的应用程序必须先以 PCM 录制。由于许可限制,ffmpeg 不是可用选项。


我现在有以下 Jelly bean 代码,但任何媒体播放器都无法读取输出。

来自 aosp 的怯场代码似乎暗示了一个 mpeg4 容器

但是android代码的输出是不可读的。

输入的 wav 文件是 32khz,16 位有符号的单声道。

0 投票
1 回答
3974 浏览

ffmpeg - 如何使用 ffmpeg 重新编码(有限的 x264)

到目前为止,我使用此脚本为我的盒子(电视解码器)重新编码我的 rip:

它适用于我的 ubuntu 和 archlinux 笔记本电脑。但它不在我的桌面上运行fedora。Google 表示 rpmfusion 提供的 x264 软件包不支持 lavf 和 ffms2。而且我无法取消安装它,因为 smplayer(我喜欢的女巫)需要它。

好的,所以我必须编译它。谷歌然后说“你必须构建 ffmpeg, ffms2 tnen x264 确保正确引用标志。” 好吧,没用(ffms2 找不到 LIBAV——即使我告诉我在哪里——而且 x264 没有用 lavf 配置...)

我的问题是:我可以单独使用 ffmpeg 来完成我的脚本所做的事情。我有 ffmpeg 版本 0.8.11、x264 0.116.2048 59cb2eb 和 gcc: 4.6.1 20110804 (Red Hat 4.6.1-7)

编辑:好的,我发现: ffmpeg -i input file -acodec copy -vcodec libx264 -preset veryfast -tune animation [that part I didn't have] output

0 投票
1 回答
593 浏览

audio - 使用 FFmpeg 重新编码为 mp4 会导致音量显着降低

由于某种原因,我重新编码的 mp4 的音量非常低。

我添加了一些标志来保持音频同步等。

0 投票
1 回答
875 浏览

lame - Decode to raw and reencode to mp3

I have the following mp3 file

http://peterspace.de/speek.wav now I call this script

but now the speek.new.mp3 plays to fast.. it seems that the raw pcm is not 44khz, but 22khz because

gets a result witrh the right speed. Why isn't the raw format 44khz? even when i define "--resample 44" at decoding

0 投票
2 回答
3337 浏览

bash - ffmpeg 使用子文件夹批量重新编码

我正在尝试将几百个视频重新编码为 X265,但有许多目录在文件名中有空格,一些文件也是如此。我查看了一堆脚本,正在努力寻找一个适用于空间和不同目录级别的脚本。

只要没有子目录,这个就可以工作:

我一直在尝试使用这个 bash 脚本,但它失败了,因为我猜是空格。

在这个线程上,它看起来是 Windows 用户的一个很好的解决方案,但不是 linux。 FFMPEG - 批量转换子文件夹

FOR /r %%i in (*.mp4) DO ffmpeg32 -i "%%~fi" -map 0:0 -map 0:1 -map 0:1 -c:v copy -c:a:0 aac -b:a 128k -ac 2 -strict -2 -cutoff 15000 -c:a:1 copy "%%~dpni(2)%%~xi"

如果您能指出适合 bash 的正确解决方案,我将不胜感激。

0 投票
2 回答
778 浏览

ffmpeg - 重新编码 vlc 创建的 mpeg2 .ts 文件会产生 20 秒的文件;又名:具有隐藏流的多流文件

我正在使用vlcoff v4l2 录制一些东西(以防万一),我刚刚选择了第一种有效的格式,即使用 TS 容器的 mpeg2。文件导致 .ts 扩展名,由 vlc 自动选择。然后,当我尝试将视频文件放入我的视频编辑器时,它说视频长达 19,884 小时,而它应该是大约 6 分钟(大小约为 80mb)。当我尝试在 xine 中播放它时,它会正确显示持续时间(vlc 没有),以及当我使用时ffprobe

特别注意这一行:

我查了一下,似乎缺少持续时间与容器有关。但是我尝试了一些重新编码的东西(我尝试了 -vcodec copy、mpeg2、libx264...),我所能得到的只是 20 秒的 1.1mb - 1.8mb 文件。

那么如何重新编码此文件以显示持续时间,并获得完整的 6 分钟,而不仅仅是前 20 秒?

0 投票
1 回答
2922 浏览

video - 如何重新编码视频以完全匹配另一个编解码器?

当我在度假时,我通常使用我们的摄像机来录制视频。由于它们都是相同的格式,我可以使用 ffmpeg 将它们连接成一个大而流畅的视频,而无需重新编码。

但是,有时我会使用手机或其他相机录制视频(如果摄像机用完空间/电池或被留在酒店)。

我想确定我的摄像机使用的编解码器、帧速率等,并使用这些参数将手机视频转换为相同的格式。这样,我将能够连接所有视频,而无需重新编码摄像机视频。

使用 ffprobe,我发现我的摄像机具有以下编码:

手机(iPhone 5s)编码为:

我假设 ffmpeg 会自动采用任何可接受的视频格式,并且我只需要弄清楚输出设置。我想我需要使用-s 1920x1080and -pix_fmt yuv420p作为输出,但是为了使手机视频与摄像机视频的编码相同,我还需要哪些其他标志?

我能否获得一些关于如何将 ffprobe 输出转换为我需要提供给 ffmpeg 的标志的指示?

编辑:为两个媒体文件添加了整个 Input #0。

0 投票
2 回答
6305 浏览

audio - 是否可以在不使用 ffmpeg 重新编码的情况下更改音量?

我刚刚有这个问题,因为我在 ffmpeg 中使用了以下命令:

遵循此处的文档:https ://trac.ffmpeg.org/wiki/AudioVolume

但是,当我创建新文件时,输出的大小是输入的一半,并且音轨的比特率也降低了。

所以我的问题是:

  1. 比特率是否应该像这样随着音量的减少和增加而降低?
  2. 是否可以在不使用 ffmpeg 重新编码的情况下更改音量?
0 投票
0 回答
33 浏览

audio - 从电影中删除一个音轨会在复制时导致音频不同步,但在重新编码时不会 - 为什么?

我正在尝试从电影文件中删除多余的音轨。具体来说,这部电影archive.org第 2 轨是原始音频,第 1 轨似乎是斯拉夫语(俄罗斯语?)的画外音。我想摆脱后者。

我发现这个问题建议我应该执行以下操作:

ffmpeg -i Benjamín\ dúfa.avi -map 0 -map -0:a:0 -c copy Benjamín\ dúfa\ \(aðeins\ íslenskt\ tal\).avi

但这不起作用:删除第一个音轨后,音频和视频在生成的文件中不再同步(在 VLC 中播放时)。现在,我能够通过重新编码沿途剩余的音轨来克服这个问题使用

ffmpeg -i Benjamín\ dúfa.avi -map 0 -map -0:a:0 -c:v copy Benjamín\ dúfa\ \(aðeins\ íslenskt\ tal\).avi

但是,虽然这可行,但我想了解为什么复制音轨不起作用。我想这是一个有点哲学的问题——把它看作是一个求知欲的问题,再加上对不必要的有损重新编码的厌恶。

因此,如果有人可以向我解释这一点,我将不胜感激。谢谢!

编辑:根据 Gyan 的要求,这里是第一个命令的 ffmpeg 输出:

还有第二个,为了比较: