标签: ffmpeg

使用 ffmpeg 进行硬件优化

我有一个 Linux 盒子,想用 ffmpeg 编码一些视频。我听说我的 CPU(第二代酷睿 i5 处理器)具有对 h.264 编码的硬件支持。

是否可以让 ffmpeg 使用它,如果可以的话如何?

cpu ffmpeg sandy-bridge

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

ffmpeg - 来自具有(多个)视频叠加的单个图像的视频

我正在使用以下 ffmpeg 命令从单个图像生成(15 秒)视频

ffmpeg -loop 1 -i image.png -c:v libx264 -t 15 -pix_fmt yuv420p -vf scale=1280:720 out.mp4
Run Code Online (Sandbox Code Playgroud)

第二个命令获取视频并添加多个视频叠加。

ffmpeg -i movie.m4v -vf "movie=movie.m4v, scale=140:-1[inner]; movie=movie.m4v, scale=100:-1[inner2]; [in][inner] overlay=70:70 [step1]; [step1][inner2] overlay=300:70 [out]" out.mp4
Run Code Online (Sandbox Code Playgroud)

有谁知道如何将这两行组合成一个命令?

video ffmpeg

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

如何使用 ffmpeg 保持/强制纵横比

我想删除 pt-br 音频并将英语 DTS 转换为 AC3,我正在使用以下命令:

ffmpeg -i input.mkv -c:v copy -c:s copy -c:a ac3 -ac 2 -map 0:0 -map 0:2 -map 0:3 -aspect 16:9 test.mkv

ffmpeg version N-63968-g73d820e Copyright (c) 2000-2014 the FFmpeg developers
  built on Jun 15 2014 00:52:21 with gcc 4.8.3 (GCC)
  configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libcaca --enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack …
Run Code Online (Sandbox Code Playgroud)

video ffmpeg

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

使用 ffmpeg 淡入叠加时如何避免黑色背景?

我正在使用 ffmpeg 从非透明图像(例如没有 Alpha 通道的 JPEG 或 PNG)淡入叠加:

$ ffmpeg -i big_buck_bunny_480p_surround-fix.avi -loop 1 -i logo.png \
-filter_complex "[1:v] fade=t=in:st=3:alpha=1 [logo]; \
[0:v][logo] overlay [outv]" \
-map "[outv]" -map 0:a -pix_fmt yuv420p -f matroska - | ffplay -
Run Code Online (Sandbox Code Playgroud)

输出:

ffmpeg version 2.5.3 Copyright (c) 2000-2015 the FFmpeg developers
  built on Feb 12 2015 19:55:48 with Apple LLVM version 6.0 (clang-600.0.56) (based on LLVM 3.5svn)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/2.5.3 --enable-shared --enable-pthreads --enable-gpl --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-libx264 --enable-libmp3lame --enable-libvo-aacenc --enable-libxvid --enable-libfontconfig …
Run Code Online (Sandbox Code Playgroud)

ffmpeg

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

FFMPEG 视频拼接和叠加

我想将两个ffmpeg命令合并为一个命令。我ffmpeg在我的 Android 应用程序中使用现成的二进制文件。我想连接.ts文件并覆盖图像。

我正在使用以下命令:

  1. 要连接.ts文件:

    String[] ffmpegcommand = {"ffmpeg", "-i","concat:"+input_file_path+"|"+input_file_path1, "-c", "copy", "-bsf:a", "aac_adtstoasc", output_file_path};
    
    Run Code Online (Sandbox Code Playgroud)
  2. 应用图像叠加效果:

    String[] ffmpegcommand = {"ffmpeg","-y" ,"-i", input_file_path,"-strict","experimental", "-vf","movie="+AppStaticData.BASE_FOLDER_PATH + File.separator + "watermarklogo.png"+" [watermark]; [in][watermark] overlay=main_w-overlay_w-10:10 [out]", AppStaticData.BASE_FOLDER_PATH+"/" + output_file_path};
    
    Run Code Online (Sandbox Code Playgroud)

video ffmpeg

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

FFMPEG 最终输出中没有音频

我有以下 FFMPEG 命令正在运行。

ffmpeg -y -i slide.mp4 -f lavfi -i "color=c=black:s=1920x1080:r=25:d=1" -filter_complex "[0:v] setpts=PTS-STARTPTS [main]; \
 [1:v] trim=end=3,setpts=PTS-STARTPTS [pre]; \
 [1:v] trim=end=3,setpts=PTS-STARTPTS [post]; \
 [pre][main][post] concat=n=3:v=1:a=0 [out]" -map "[out]" output.mp4
Run Code Online (Sandbox Code Playgroud)

它在视频的开头和结尾附加黑帧。但是,输出文件不包含输入文件中的音频。

任何针对该问题的指示都将受到高度赞赏。

android ffmpeg video-editing video-encoding

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

无法找到适合“?Çô”的输出格式

我正在尝试对 mpeg dash 流式传输的视频进行编码,我使用了以下命令(我从本文中获取它: http: //blog.streamroot.io/encode-multi-bitrate-videos-mpeg-dash-mse-基于媒体播放器/):

\n\n
cd c:\\ffmpeg\\bin\nset inputFile="C:\\park.mp4"\nset outputFile="C:\\content\\park"\n\nffmpeg -y -i %inputFile% -c:a libfdk_aac -ac 2 -ab 128k -c:v libx264 -r 24 \xe2\x80\x93 g 24 -b:v 1500k -maxrate 1500k -bufsize 1000k -vf "scale=-1:720" %outputFile%_720.mp4\n
Run Code Online (Sandbox Code Playgroud)\n\n

运行命令后出现以下问题:

\n\n
[NULL @ 0000000002f43dc0] Unable to find a suitable output format for \'\xce\x93\xc3\x87\xc3\xb4\' \xce\x93\xc3\x87\xc3\xb4: Invalid argument\n
Run Code Online (Sandbox Code Playgroud)\n\n

我尝试了其他视频,但错误是相同的。

\n\n

我该如何解决这个问题?

\n

video encoding ffmpeg mpeg video-encoding

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

在 FFmpeg 上复制视频质量

我想使用 FFmpeg 添加水印,但我希望视频具有相同的质量。我怎么做?

我尝试使用-vcodec copy -acodec copy但没有水印:

ffmpeg -y -i treino.mp4 -vf "movie=logo.png [watermark]; [in][watermark] overlay=10:main_h-overlay_h-10 [out]" -vcodec copy -acodec copy video2.mp4
Run Code Online (Sandbox Code Playgroud)

video avi ffmpeg video-codecs

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

ffmpeg -- 如何将一个 PNG 覆盖在另一个 PNG 上?

我有A带有 alpha 层的 PNG ,我想将其叠加在另一个 PNG 之上B。我该如何做到这一点ffmpeg

我尝试过ffmpeg -i A.png -i B -filter_complex "[0:v][1:v] overlay=0:0" out.png,但我只看到B

这是命令输出。

> frame=    1 fps=0.0 q=-0.0 Lsize=N/A time=00:00:00.04 bitrate=N/A
> speed=0.0883x video:2169kB audio:0kB subtitle:0kB other streams:0kB
> global headers:0kB muxing overhead: unknown ffmpeg version
> N-83044-g2a293ec Copyright (c) 2000-2017 the FFmpeg developers   built
> with gcc 4.8 (Ubuntu 4.8.4-2ubuntu1~14.04.3)   configuration:
> --prefix=/data/local/ffmpeg_build --pkg-config-flags=--static --extra-cflags=-I/data/local/ffmpeg_build/include
> --extra-ldflags=-L/data/local/ffmpeg_build/lib --bindir=/data/local/bin --enable-gpl --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libtheora …
Run Code Online (Sandbox Code Playgroud)

png ffmpeg alpha-channel

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

Intel i5 Kaby Lake 硬件辅助使用 ffmpeg 将视频和音频转码为 VP9 和 FLAC

我有大约 30 GB 的视频(主要是 MP4、一些 MKV 和 webm),我需要使用 MKV 容器中的免费无损音频编解码器 (FLAC) 音频从各种输入编解码器(AAC 音频;H264、VP8、 H265/HEVC,可能还有其他一些视频编解码器)。在我最强大的系统上,对低分辨率视频进行转码所需的时间是视频长度的两倍。我ffmpeg在 Linux 上使用参数ffmpeg -i input -c:v libvpx-vp9 -lossless 1 -c:a FLAC -preset veryslow output.mkv来转码视频,无需硬件帮助。然而最近,我的一个朋友为他的电脑配备了 Intel i5 Kaby Lake CPU,并主动提出为我转码视频。根据维基百科及其参考资料,新的 Kaby Lake CPU 支持我所有输入编解码器的硬件解码和 8 位 VP9 的编码。所以我有两个问题:

  1. 我的朋友可以使用什么ffmpeg参数将 MKV 容器中的视频转码为 VP9,将音频转码为 FLAC?它们可以与 Windows 一起使用吗?如果没有,那也没关系,因为他有 Windows 10-Linux 双启动。

  2. 是否veryslow仍需要预设才能获得最佳压缩?

我试图在其他地方找到这个问题的答案,但只能找到 H264 和 JPEG 等编码编解码器的示例。

ffmpeg transcode kaby-lake

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