Questions tagged «ffmpeg»

媒体工具,支持多个编解码器,过滤器和容器。在询问涉及FFmpeg工具的问​​题时,请包括实际命令和完整的控制台输出。一种简单的方法是在命令中添加`-report`并粘贴生成的日志文件的内容。要获得CLI的帮助,请仅使用ff *二进制文件-ffmpeg,ffprobe,ffplay。有关API使用的帮助,请在Stack Overflow上发布。

2
FFMPEG从.mp3输入添加元数​​据到.mp3?
如果我从.mp3文件开始,我该如何向其中添加元数据?我知道-metadata title="Some Title" -metadata artist="Someone"格式化,但不知道如何将其应用于.mp3文件,特别是如果该文件已经是.mp3。 我在想更像这样的事情: ffmpeg -i input.mp3 -metadata artist="Someone" -f mp3 output.mp3 唯一的事情是,当我使用在Kubuntu 18.04上使用所有库编译的ffmpeg 4执行此操作时,我收到以下错误消息: Automatic encoder selection failed for output stream #0:0. Default encoder for format mp3 (codec mp3) is probably disabled. Please choose an encoder manually. Error selecting an encoder for stream 0:0 编辑0: 当我尝试添加时也会发生这种情况,-acodec libmp3lame尽管错误似乎表明我没有.mp3编解码器 …

1
如何使用geq过滤器设置圆形蒙版
我可以创建矩形蒙版但不创建圆形蒙版。我该如何设置geq过滤器选项? 矩形面具设置 ffplay -f lavfi color,geq='st(0,between(X,W/3,2*W/3)*between(Y,H/3,2*H/3));ld(0)*255:128:128' 圆形蒙版图像样本
1 ffmpeg 


1
如何使用ffmpeg复用两个视频
我正在使用-s选项转换视频以进行多次结果,我希望在视频开头包含一个简短的介绍。但由于某种原因,它会跳过第二个,-i所以我只能Opener_4.mp4通过视频获得介绍hdvd.mkv。 我尝试了什么:(*我尝试过并使用地图选项) ffmpeg -i Opener_4.mp4 -i hdvd.mkv -map 0:0 -map 0:1 -s 1836x1080 -map 0:0 -map 0:1 -vf -vcodec libx264 -acodec aac -strict experimental -movflags faststart hdvd_1080p.mp4 -s 1224x720 -map 0:0 -map 0:1 -vf -vcodec libx264 -acodec aac -strict experimental -movflags faststart hdvd_720p.mp4 -s 816x480 -map 0:0 -map 0:1 -vf …

1
如何让FFMPEG将宽高比从16:9改回到4:3但不是信箱(未拉伸)
这与通常发布的问题相反。许多声称是“重新制作”版本的旧电影的Youtube视频被错误地渲染为16:9而不是4:3并被拉伸以使圆圈看起来像椭圆形。这可以通过将VLC中的宽高比从16:9更改为4:3来纠正,但原始视频如何重新编码或重新编码以使其恢复到正确的原始形状?
1 video  ffmpeg 

0
Exiftool的“-tagsfromfile”无法恢复所有元数据(#iphone)
这是一个长期存在的实际问题(超过一年)。我总想完成它,但每次尝试我都失败了。我为它咨询了几个主题。 我有一堆日常生活视频,我用iphone制作更多。在我的macbook充满视频之前,我真的想要以干净和系统的方式压缩和组织它们。 TL; DR 对象:我想压缩我的视频而不丢失元数据,或者至少保留最少量的元数据,以便我的iPhone可以随时随地呈现视频。 障碍:Exiftool的“-tagsfromfile”不会完全复制和覆盖元数据。我甚至尝试了一些变化:-all,-all:all,-overwrite_original ...... 背景 我使用ffmpeg压缩和exiftool重新标记,然后 如何使用ffmpeg减小视频的大小? 看到这个答案。以下引用为方便起见: ffmpeg -i input.mp4 -vcodec libx264 -crf 20 output.mp4 但是,ffmpeg的压缩会杀死几乎所有的元数据,所以我转向exiftool EXIF数据可以完全从一个图像复制到另一个图像吗? 我建议使用Phil Harvey的优秀exiftool: exiftool -TagsFromFile fromImage.jpg toImage.jpg 问题 主要问题是-TagsFromFile会复制/覆盖一些元数据,但它不能完全完成,至少对于我的视频而言。我也试过了 exiftool −overwrite_original -r -TagsFromFile from.MOV -all to.MOV 和其他一些品种,例如替换-all到-all:all,但没有任何作用。 也许我最关心的是标签-CreationDate和-GPS(见附录)因为我想跟踪拍摄照片和视频的时间和地点,因为我希望这些数据至少能够在我的iPhone中显示。 以下是我的iPhone中的.MOV(原创)和.MOV(压缩)视频的预览。 from.MOV(位置隐藏): to.MOV(没有显示地址/位置!): 显然,缺少某些东西,因此压缩后无法显示位置。 问题 我该怎么办才能让我的iPhone显示压缩视频原始文件的拍摄地点? 有没有办法复制和覆盖所有元数据?是否可以使元数据相同? 旁边的问题:当我玩exiftool的-TagsFromFile函数时,我用它来尝试将图像的元数据覆盖到另一个(由iPhone拍摄)。然而,这种情况比视频的情况更糟糕:不仅没有覆盖位置,也没有时间!再次,我尝试了一些品种替换-all到-all:all。那么有办法解决这个问题吗? 附录 在本附录中,我列出了原始视频和压缩视频的日期/时间和GPS相关元数据。 from.MOV(原创): File …

2
使用FFMPEG转换目录中的所有文件
我正在尝试编写一个脚本来将目录中的所有文件转换为m4v,同时尝试保持相似(如果不是相同)的质量并压缩文件以减小整体大小。 我拼凑了一个小批量脚本,但它不会运行。谁能伸出援助之手/建议如何最好地压缩和保持质量? #!/bin/bash #Convert files using ffmpeg DIR="/Volumes/Misc/To Convert 2" for i in $DIR; do ffmpeg -i "$i" -c:v libx264 -crf 19 -preset slow -c:a aac -strict experimental -b:a 192k -ac 2 "/Volumes/Misc/Converted/${i%.*}.m4v" done 编辑:输出 这是我尝试运行shell脚本时得到的输出 ffmpeg version 2.6.1-tessus Copyright (c) 2000-2015 the FFmpeg developers built with Apple LLVM version …

1
我能以某种方式将这两个命令组合成一个吗?
我有MP4格式的视频文件。我需要将这些转换为MP2。但是,当它们超过MP2格式的某个文件大小时,我还需要将它们剪切成较小的文件。 为此,我目前有两个命令: 转换命令 ffmpeg -i INPUTfile -codec:v mpeg2video -qscale:v 0 OUTPUTfile 切割命令(时间值仅用于示例) ffmpeg -ss 00:00:00.00 -i INPUTfile -to 00:10:00.00 -c copy -copyts OUTPUTfile 目前,我转换视频文件,检查文件大小。如果它太大,我会先剪切原始视频文件,然后将'部件'转换为MP2。 我是ffmpeg的新手,想知道我是否可以将这两个命令合二为一。同样,我需要做的是转换MP4文件并将其删除。如果我先进行转换并稍后进行切换,或者反过来对我来说并不重要。 我需要多次运行切割命令,因为我会以编程方式决定切割文件的“部分”数量。最终结果需要在MP2中,无论我最终有多少'部分'。
1 ffmpeg 

0
ffmpeg可以容纳子像素渲染吗?
我从一个带有精确插值的x,y位置的大型ffmpeg命令中取出了一个小样本(drawtext为简单起见仅显示一个)。 我遇到了ffmpeg无法容纳子像素移动的问题,因此我的drawtext滤镜上的运动看起来并不平滑。有没有可以帮助我的设置? ffmpeg -i %04d.png -filter_complex "drawtext=fontfile=font.ttf:text='my string':fontsize=32:fontcolor=#333333@0:x=736.347:y=622.713:enable='eq(n\,0)'" -c:v libx264 -pix_fmt yuv420p -s hd1080 -r 30 -crf 20 output.mp4
1 ffmpeg 


1
如果我有显卡,ffmpeg编码会更快吗?
也许天真的问题; 我手机上有3gp格式的视频。我的意图是在将它们转换为AVI / FLV后将它们保存到光盘 我不知道这种编码所需的时间; 但我想知道......如果我的电脑上有512MB到1GB的显卡,那么编码速度会更快吗?

1
ffmpeg:库配置不匹配
在尝试整理旧文件时,sudo apt-get autoremove我已经搞砸了我在Ubuntu 17.10上安装的ffmpeg。我试图删除ffmpeg使用sudo apt-get remove ffmpeg然后重新安装一个干净的版本使用sudo apt-get install ffmpeg但我仍然得到以下错误当我使用ffmpeg运行一个shell脚本 - 它曾经工作正常。 警告:库配置不匹配 9867分段错误(核心转储)ffmpeg -y -i“$ file”-vcodec libx264 -level 41 -crf 20 -acodec aac -ab 128k -ar 48000“$ {file%.avi} .mp4” 我猜我已经删除了一些关键的依赖项,有人能帮助我让ffmpeg再次工作吗?谢谢。 这是完整的输出: ffmpeg version 3.3.4-2 Copyright (c) 2000-2017 the FFmpeg developers built with gcc 7 (Ubuntu 7.2.0-8ubuntu2) configuration: --prefix=/usr --extra-version=2 …
1 linux  ubuntu  video  ffmpeg 

1
如何根据帧列表自动分割mp4视频
我有一个长达7小时的h.264视频,由1600个较短的视频组成,我有一个带有帧列表的csv文件,我需要在其中剪切更长的视频。 是否有任何方法可以根据csv中帧的位置自动将较长的视频分割成许多较小的视频(以便每个视频可单独观看),然后使用诸如video1.mp4之类的名称命名这些单个文件,video2.mp4等?我已经读过这很可能会使用FFmpeg,但我不确定如何编写脚本来自动执行此操作。 我可以访问Windows和Mac机器。(如果需要可以安装linux)

0
用于场景变换的FFmpeg滤镜
刚进入FFmpeg,并希望使用过滤器进行一些长时间的视频质量/稳定性测试。我必须将场景变换滤波器设置为非常低的差值(0,000005),以从不包含其他已知运动的视频序列中检测单帧已知的小伪像。我在多个不同位置的几个帧的每一个中插入了一个2像素×8像素的小人工制品,以提供检测确实起作用的控制。可以通过被测系统在一小时的循环内容中成功检测到未压缩视频中的少数插入帧,但必须对捕获的文件进行批量过滤。轻微压缩的内容也可以,比如ProRes - 但是任何长GOP序列都会淹没我们想要确保的小工件(除了我们为“控制”目的而插入的那些......) 我的问题是: 有没有一种简单的方法可以自动化这个想法来处理连续视频而不是批量过滤捕获的文件? 现在我捕获每个检测到的错误承载框架的.png,以确保我检测到的是我插入的内容 - 不多也不少...... 提前感谢任何指针 更新:我们设计了一个基于流的测试,使用Decklink INPUT端口(HDMI one ...)将原始视频采集到检测场景变化的FFMPEG滤波器中。检测器的阈值设置得相当低(0.000005),这允许其绝对差值和滤波器捕获少至一帧持续时间和仅几个像素的小图像伪像。我们在HyperDeck上运行的ProRes循环播放非运动蓝色场图像序列,每帧有一到五个白点或黑点,并且这种已知异常帧的注入仅在每一小时长的循环中发生一次,作为验证过滤器的控件正在按预期工作。该流通过我们的测试产品,然后通过Decklink和FFMPEG过滤器组合进行分析。我们当然正在观察我们知道注入的任何缺失的参考异常帧,和/或任何其他检测到的帧指示我们的测试系统中的处理错误。我们可以仔细检查存储的.png帧以查看任何异常的性质。 一切都正常运行,并且对于长时间的测试运行是稳定的,但是如果我们停止分析并尝试重新启动似乎存在问题。也许Decklink中的某些东西没有正确初始化。目前,唯一的解决方法是关闭包含Decklink的工作站,等待电源完全放电,然后重新上电并重新启动FFMPEG过滤应用程序。 有谁知道这个起始值是如何初始化的?它是在Decklink中设置还是在FFMPEG中设置? 这是ffmpeg中的命令窗口在我们尝试在没有断电步骤的情况下再次启动该过程时显示的内容: C:\ Users \ cvandusen> ffmpeg -f dshow -video_size 1280x720 -rtbufsize 702000k -framerate 60 -i video =“Decklink Video Capture”-vf“select = gt(scene \,0.000005)” - vsync vfr test2%03d.png ffmpeg版本N-89803-g856b7cae9f版权所有(c)2000-2018 FFmpeg开发人员使用gcc 7.2.0(GCC)配置构建:--enable-gpl --enable-version3 --enable-sdl2 --enable-bzlib --enable-fontconfig --enable-gnutls --enable-iconv …
1 video  ffmpeg 

1
为什么FFMPEG会为视频增加额外的比特率?
我使用FFMPEG(命令行输入)将我的视频转换为特定的输出格式。我面临的问题是当我尝试将恒定比特率(700 kbps)传递给FFMPEG时,结果是具有不同比特率(例如1000 kbps)的输出视频。所有视频都会出现这种现象。为什么会发生这种情况?我需要保持恒定的比特率。谁能帮我吗。 我的FFMPEG版本是0.5 我传递给FFMPEG的命令行参数是, -i {inputfile} -b 700k -ab 64k -vcodec libx264 -acodec libfaac -ac 2 -ar 44100 -y -s 320x240 {outputfile} 编辑: 当我使用以下参数时,我能够强制CBR的波动为+/- 3%。 ffmpeg -i myfile.avi -b 4000k -minrate 4000k -maxrate 4000k -bufsize 1835k out.m2v 但是当我使用-maxrate和 - minrate以及我的参数集时,我无法强制CBR。我的参数设置如下, -i {inputfile} -b 1200k -minrate 1200k -maxrate 1200k -bufsize …
1 ffmpeg  bitrate 

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.