audio - ffmpeg - 合并图像和音频时,音频会缩短

标签 audio video ffmpeg

我正在尝试将 png 图像与 11 秒的音频合并并创建一个 mp4 文件。当我执行 ffmpeg 时,mp4 文件的总持续时间为 10 秒。我正在使用的命令是...

ffmpeg -r 6 -loop 1 -i "image1.png" -i "audio1.wav" out.mp4

更新:这是生成的日志...
FFmpeg version SVN-r15986, Copyright (c) 2000-2008 Fabrice Bellard, et al.
  configuration: --extra-cflags=-fno-common --enable-memalign-hack --enable-pthr
  eads --enable-libmp3lame --enable-libxvid --enable-libvorbis --enable-libtheora
  --enable-libspeex --enable-libfaac --enable-libgsm --enable-libx264 --enable-lib
schroedinger --enable-avisynth --enable-swscale --enable-gpl
      libavutil     49.12. 0 / 49.12. 0
      libavcodec    52. 6. 0 / 52. 6. 0
      libavformat   52.23. 1 / 52.23. 1
      libavdevice   52. 1. 0 / 52. 1. 0
      libswscale     0. 6. 1 /  0. 6. 1
      built on Dec  3 2008 01:59:37, gcc: 4.2.4
Input #0, image2, from 'image1.png':
Duration: 00:00:00.16, start: 0.000000, bitrate: N/A
Stream #0.0: Video: png, rgb32, 400x300,  6.00 tb(r)
Input #1, wav, from 'audio1.wav':
  Duration: 00:00:11.07, bitrate: 88 kb/s
    Stream #1.0: Audio: pcm_u8, 11025 Hz, mono, s16, 88 kb/s
File 'out.mp4' already exists. Overwrite ? [y/N] y
Output #0, mp4, to 'out.mp4':
    Stream #0.0: Video: mpeg4, yuv420p, 400x300, q=2-31, 200 kb/s,  6.00 tb(c)
    Stream #0.1: Audio: libfaac, 11025 Hz, mono, s16, 64 kb/s
Stream mapping:
  Stream #0.0 -> #0.0
  Stream #1.0 -> #0.1
Press [q] to stop encoding
frame=    1 fps=  0 q=4.1 Lsize=      42kB time=0.17 bitrate=2063.7kbits/s
video:14kB audio:26kB global headers:0.kB muxing overhead 4.894235%

我也尝试过使用
ffmpeg -loop 1 -i "image1.png" -i "audio1.wav" -t 11 out.mp4

此命令确实会创建 11 秒的 mp4,但音频仍会在 10 秒时被切断。

为什么音频在 10 秒时被切断?

谢谢,
加里

最佳答案

一种可能的情况是您的音频文件只有 10 秒长。
你确定你会丢失一整秒的音频吗?也许只是几毫秒就可能导致一些舍入问题?您可以通过运行检查这一点

ffprobe "audio1.wav"

接着
ffprobe "out.mp4"

添加一些编解码器/比特率选项(例如 -c:a copy -b:a copy)可能会有所帮助

关于audio - ffmpeg - 合并图像和音频时,音频会缩短,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25490371/

相关文章:

api - 网络音频API:Chrome中没有声音

javascript - RecordRTC产生噪音,无需录制耳机视频

ffmpeg - ffprobe 和 ffmpeg 之间用于关键帧识别的结果不一致

c# - 用于C#的频谱分析仪,类似于Winamp?

android - 使用Google Chromecast从我的Android手机应用程序在电视上启动音频

android - 从用户的声音中获取振幅

ios - AVPlayer:当视频和设备的宽高比不同时,为什么 iPhone 视频不会失真?

c++ - 如何添加编解码器

video - 使用 -ss 和 -to 使用 ffplay 播放视频

swift - 在 Swift 中使用 FFmpeg 库