视频中的帧速率不正确(Xuggler + MPEG 4 + H.264)

时间:2013-04-10 15:40:02

标签: java video ffmpeg h.264 xuggler

转换后,输出文件中的帧速率值不正确。我做了一个非常简单的例子来描述一个问题:

public static void main(String[] args) {
    // reader
    IMediaReader reader = ToolFactory.makeReader("/tmp/1/i3.avi");
    IMediaWriter writer = ToolFactory.makeWriter("/tmp/1/o3.mp4", reader);
    reader.addListener(writer);

    while (true) {
        try {
            final IError error = reader.readPacket();
            if(error != null) {
                System.err.println("Error decoding packet " + error.getDescription());

                if (!reader.isOpen()) {
                    break;
                }
            }
        } catch (final Exception ex) {
            System.err.println("Error decoding packet " + ex.getMessage());
            if (!reader.isOpen()) {
                break;
            }
        }
    }
}

未配置视频或音频流/编解码器的任何其他参数。

输入视频文件(“/tmp/1/i3.avi”)具有以下功能:

  • 一般
    • 容器:音频视频交错(AVI)
  • 视频
    • 尺寸:624x352
    • 编解码器:XVID MPEG-4
    • 帧率:每秒24帧
    • 比特率:N / A
  • 音频:
    • 编解码器:MPEG-1第3层(MP3)
    • 频道:Stereo
    • 采样率:48000 Hz
    • 比特率:112 kbps

输出视频文件(“/tmp/1/o3.avi”)具有以下功能:

  • 一般
    • 容器:Quicktime
  • 视频
    • 尺寸:624x352
    • 编解码器:H.264
    • 帧率:每秒8帧
    • 比特率:378 kbps
  • 音频:
    • 编解码器:MPEG-4 AAC
    • 频道:Stereo
    • 采样率:48000 Hz
    • 比特率:127 kbps

因此,输出文件中的帧速率是8而不是24.我该如何解决?求你帮帮我..

PS:我已经尝试了Xuggler H264 FPS encoding issue和其他一些解决方案,它没有帮助..


UPD:经过与Xugler的长期战争后,我为avconv编写了自己的纯java界面,它对我来说很好:https://github.com/vbauer/avconv4java

0 个答案:

没有答案