0

我有一个要转换为 HEVC (H265)的视频 ( https://www.dropbox.com/s/01rg7rgarqfruy3/Spore%20-%20Assymetrical%20Creatures%2C%20excerpt.mov?dl=0 )。

当我使用 Handbrake 对其进行转换时,它会生成一个输出视频,然后我可以将其包含在 Keynote 的演示文稿中。

当我自己在命令行上使用 ffmpeg 转换它时,输出不能包含在 Keynote 演示文稿中;我收到的错误消息是“无法完成操作”。不过,ffmpeg 版本在 Quicktime Player 中运行良好。我已经用谷歌搜索了,但找不到解决这个谜团的方法。另外,我已经查看了 Handbrake 的活动日志,但找不到实质性差异。我已经尝试更改一些我通常用于运行 ffmpeg 的选项和参数,但无济于事。

问题是:我必须如何运行 ffmpeg,我应该使用哪些选项,以便输出始终包含在 Keynote 中?

请注意,可以在 Keynote 中插入一些 ffmpeg 输出视频。我知道我当然可以总是使用 Handbrake 来手动转换视频,但我宁愿在命令行上使用 ffmpeg,这样我就可以批量转换很多视频。

重现问题的步骤:

使用 H265 编解码器使用 Handbrake转换此视频 https://www.dropbox.com/s/01rg7rgarqfruy3/Spore%20-%20Assymetrical%20Creatures%2C%20excerpt.mov?dl=0 。

也使用 ffmpeg 转换它。我的命令行是: /opt/local/bin/ffmpeg -loglevel level+info -hide_banner -nostats -nostdin -i "Spore - Assymetrical Creatures, excerpt copy.mov" -map 0 -map -0:v:1 -c:s copy -map_metadata 0 -map_metadata:s:v 0:s:v -dn -map_metadata:s:a 0:s:a -c:a aac -b:a 128k -filter:v crop=in_w-mod(in_w\,2):in_h-mod(in_h\,2) -codec:v hevc -tag:v hvc1 -max_muxing_queue_size 1024 -preset faster -crf 25 -x265-params me=umh:subme=5:ref=4:aq-mode=2:aq-strength=1.0:psy-rd=2.0:psy-rdoq=1.0:rd=6:profile=main:log-level=2 -ignore_unknown -f mp4 "Spore - Assymetrical Creatures, excerpt copy.h265.mp4_converting"

转到 Keynote / Insert / Choose .. ,选择视频(Handbrake 或 ffmpeg 版本)。

我的 HandBrake 版本(例如 1.0.0):
版本 1.2.0 (2018122200)

我的 ffmpeg 版本:

  built with Apple LLVM version 10.0.0 (clang-1000.11.45.5)
  configuration: --prefix=/opt/local --enable-swscale --enable-avfilter --enable-avresample --enable-libmp3lame --enable-libvorbis --enable-libopus --enable-librsvg --enable-libtheora --enable-libopenjpeg --enable-libmodplug --enable-libvpx --enable-libsoxr --enable-libspeex --enable-libass --enable-libbluray --enable-lzma --enable-gnutls --enable-fontconfig --enable-libfreetype --enable-libfribidi --disable-libjack --disable-libopencore-amrnb --disable-libopencore-amrwb --disable-libxcb --disable-libxcb-shm --disable-libxcb-xfixes --disable-indev=jack --enable-opencl --disable-outdev=xv --enable-audiotoolbox --enable-videotoolbox --enable-sdl2 --disable-securetransport --mandir=/opt/local/share/man --enable-shared --enable-pthreads --cc=/usr/bin/clang --arch=x86_64 --enable-x86asm --enable-libx265 --enable-gpl --enable-postproc --enable-libx264 --enable-libxvid --enable-version3 --enable-libsmbclient --enable-nonfree --enable-libfdk-aac
  libavutil      56. 22.100 / 56. 22.100
  libavcodec     58. 35.100 / 58. 35.100
  libavformat    58. 20.100 / 58. 20.100
  libavdevice    58.  5.100 / 58.  5.100
  libavfilter     7. 40.101 /  7. 40.101
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale      5.  3.100 /  5.  3.100
  libswresample   3.  3.100 /  3.  3.100
  libpostproc    55.  3.100 / 55.  3.100

操作系统和版本:
macOS 10.14.3 (Mojave)

手刹日志: https ://www.dropbox.com/s/4zsn7b2agwwyu1x/Spore%20-%20Assymetrical%20Creatures%2C%20Excerpt%201%202019-04-29%2014-44-28.txt?dl=0

CLI ffmpeg 日志: https ://www.dropbox.com/s/qx2wf1h5svbrjbc/Spore%20-%20Assymetrical%20Creatures%2C%20Excerpt%201%20-%20ffmpeg%20cli.txt?dl=0

Console.app 的输出,发生在我尝试插入视频的 ffmpeg 版本时,由“keynote”过滤: https ://www.dropbox.com/s/2oam7cp3az9kp34/Console-keynote-output.txt ?dl=0

以下是我ffmpeg -i ... 在 ffmpeg 输出的视频上运行时的 ffmpeg 日志,以及 Handbrake 输出的视频(如 Gyan 所建议):
https://www.dropbox.com/s/kddpit4sbq8vdhp/log_on_ffmpeg_result.txt? dl=0
https://www.dropbox.com/s/v8n1ihgsp4tdwvp/log_on_handbrake_result.txt?dl=0

任何提示、建议或见解都将受到高度赞赏。

最好的问候,加布里埃尔

4

0 回答 0