我正试图用ffmpeg压缩视频。
我的操作系统: Ubuntu 16.04
我的ffmpeg版本(通过ffmpeg -version检索):
ffmpeg version 2.8.15-0ubuntu0.16.04.1 Copyright (c) 2000-2018 the FFmpeg developers built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.10) 20160609
FYI,有关该视频的信息可通过以下方式检索:
ffprobe -show_streams -i "video.mp4"
我得到了:
ffprobe version 2.8.15-0ubuntu0.16.04.1 Copyright (c) 2007-2018 the FFmpeg developers
built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.10) 20160609
configuration: --prefix=/usr --extra-version=0ubuntu0.16.04.1 --build-suffix=-ffmpeg --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --cc=cc --cxx=g++ --enable-gpl --enable-shared --disable-stripping --disable-decoder=libopenjpeg --disable-decoder=libschroedinger --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librtmp --enable-libschroedinger --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxvid --enable-libzvbi --enable-openal --enable-opengl --enable-x11grab --enable-libdc1394 --enable-libiec61883 --enable-libzmq --enable-frei0r --enable-libx264 --enable-libopencv
libavutil 54. 31.100 / 54. 31.100
libavcodec 56. 60.100 / 56. 60.100
libavformat 56. 40.101 / 56. 40.101
libavdevice 56. 4.100 / 56. 4.100
libavfilter 5. 40.101 / 5. 40.101
libavresample 2. 1. 0 / 2. 1. 0
libswscale 3. 1.101 / 3. 1.101
libswresample 1. 2.101 / 1. 2.101
libpostproc 53. 3.100 / 53. 3.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'a2019a_video_2.mp4':
Metadata:
major_brand : mp42
minor_version : 1
compatible_brands: mp41mp42isom
creation_time : 2019-08-28 15:28:45
Duration: 00:03:12.49, start: 0.000000, bitrate: 10884 kb/s
Stream #0:0(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 12 kb/s (default)
Metadata:
creation_time : 2019-08-28 15:28:45
handler_name : Core Media Audio
Stream #0:1(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709), 1280x720 [SAR 1:1 DAR 16:9], 10862 kb/s, 59.94 fps, 59.94 tbr, 60k tbn, 120k tbc (default)
Metadata:
creation_time : 2019-08-28 15:28:45
handler_name : Core Media Video
[STREAM]
index=0
codec_name=aac
codec_long_name=AAC (Advanced Audio Coding)
profile=LC
codec_type=audio
codec_time_base=1/48000
codec_tag_string=mp4a
codec_tag=0x6134706d
sample_fmt=fltp
sample_rate=48000
channels=2
channel_layout=stereo
bits_per_sample=0
id=N/A
r_frame_rate=0/0
avg_frame_rate=0/0
time_base=1/48000
start_pts=0
start_time=0.000000
duration_ts=9242624
duration=192.554667
bit_rate=12469
max_bit_rate=128000
bits_per_raw_sample=N/A
nb_frames=9026
nb_read_frames=N/A
nb_read_packets=N/A
DISPOSITION:default=1
DISPOSITION:dub=0
DISPOSITION:original=0
DISPOSITION:comment=0
DISPOSITION:lyrics=0
DISPOSITION:karaoke=0
DISPOSITION:forced=0
DISPOSITION:hearing_impaired=0
DISPOSITION:visual_impaired=0
DISPOSITION:clean_effects=0
DISPOSITION:attached_pic=0
TAG:creation_time=2019-08-28 15:28:45
TAG:language=eng
TAG:handler_name=Core Media Audio
[/STREAM]
[STREAM]
index=1
codec_name=h264
codec_long_name=H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10
profile=High
codec_type=video
codec_time_base=1/120000
codec_tag_string=avc1
codec_tag=0x31637661
width=1280
height=720
coded_width=1280
coded_height=720
has_b_frames=0
sample_aspect_ratio=1:1
display_aspect_ratio=16:9
pix_fmt=yuv420p
level=32
color_range=tv
color_space=bt709
color_transfer=bt709
color_primaries=bt709
chroma_location=left
timecode=N/A
refs=2
is_avc=1
nal_length_size=4
id=N/A
r_frame_rate=60000/1001
avg_frame_rate=60000/1001
time_base=1/60000
start_pts=0
start_time=0.000000
duration_ts=11549538
duration=192.492300
bit_rate=10862370
max_bit_rate=N/A
bits_per_raw_sample=8
nb_frames=11538
nb_read_frames=N/A
nb_read_packets=N/A
DISPOSITION:default=1
DISPOSITION:dub=0
DISPOSITION:original=0
DISPOSITION:comment=0
DISPOSITION:lyrics=0
DISPOSITION:karaoke=0
DISPOSITION:forced=0
DISPOSITION:hearing_impaired=0
DISPOSITION:visual_impaired=0
DISPOSITION:clean_effects=0
DISPOSITION:attached_pic=0
TAG:creation_time=2019-08-28 15:28:45
TAG:language=und
TAG:handler_name=Core Media Video
[/STREAM]但是,当我试图通过以下命令压缩它时:
ffmpeg -y -i video.mp4 -vcodec h264 -crf 10 output.mp4
这个过程完成得非常快,没有任何错误,但是我得到了一个名为output.mp4的空文件(其维数为0KB)。
编辑:实际上,控制台中出现了一些东西(即使它不是错误)。以下内容:The encoder 'aac' is experimental but experimental codecs are not enabled, add '-strict -2' if you want to use it.
我还尝试使用以下命令(更改编解码器等)
ffmpeg -i video.mp4 output.mp4
ffmpeg -y -i video.mp4 -vcodec copy -crf 10 output.mp4
ffmpeg -i video.mp4 -vcodec libx264 -crf 10 output.mp4
ffmpeg -i video.mp4 -vcodec libx265 -crf 10 output.mp4
但我总是有同样的问题。
发布于 2019-09-01 12:33:34
问题是我犯了一个错误:
The encoder 'aac' is experimental but experimental codecs are not enabled, add '-strict -2' if you want to use it.
它并没有真正显示为错误。这让我明白(也要感谢一些评论),我的ffmpeg版本真的很老了。在更新之前,我通过在命令中添加选项-strict -2来压缩视频
但是,我强烈建议将FFmpeg更新为最新版本(我遵循了此链接)。
我希望这篇文章能帮助遇到同样麻烦的人。
https://stackoverflow.com/questions/57745978
复制相似问题