如何从FFmpegStream获取视频大小

时间:2018-08-14 10:21:13

标签: java video ffmpeg ffprobe

我正在尝试使用ffmpeg从视频中获取视频元数据。我正在使用以下依赖项,

<dependency>
   <groupId>net.bramp.ffmpeg</groupId>
   <artifactId>ffmpeg</artifactId>
   <version>0.6.2</version>
</dependency>

我无法使用以下代码段获取视频大小,

        FFprobe ffprobe = new FFprobe();
        FFmpegProbeResult metadata = ffprobe.probe("/tmp/" + filename);
        List<FFmpegStream> streams = metadata.getStreams();

        for (FFmpegStream stream : streams) {
            videoProperties.put("bitrate", stream.bit_rate);
            videoProperties.put("frameRate", stream.avg_frame_rate.toString());
            videoProperties.put("size", stream.nal_length_size);
            videoProperties.put("resolution", stream.width + "X" + stream.height);
            videoProperties.put("duration", new Double(stream.duration).toString());
            videoProperties.put("codec", stream.codec_name);
            videoProperties.put("CodecType", stream.codec_type.name());
        }

stream.nal_length_size始终返回null。请提供您的输入以获取视频大小。

这里的任何输入都非常感谢!

1 个答案:

答案 0 :(得分:0)

您只需使用Java的java.io.File

long fileSize = new File("/tmp/" + filename).length();