【问题标题】:Xuggler Video To Audio conversionXuggler 视频到音频转换
【发布时间】:2014-11-10 22:34:10
【问题描述】:

我正在使用 Java 中的 Xuggler 库将视频转换为音频。程序中没有出现错误或异常,但生成的音频文件为 0 Kb。有人可以解决这个问题吗?

环境:Eclipse Helios,操作系统:Windows 7

添加到项目的外部 JAR 库:

(1)slf4j-api-1.7.7.jar
(2)slf4j-simple-1.7.7.jar
(3)xuggle-xuggler-5.4.jar

用于视频到音频转换的代码 sn-p。

import com.xuggle.mediatool.IMediaReader; 
import com.xuggle.mediatool.IMediaWriter; 
import com.xuggle.mediatool.ToolFactory; 
import com.xuggle.xuggler.ICodec; 

public class VideoToAudio{

    public void convertVideoToAudio(){
        IMediaReader reader = ToolFactory.makeReader("D://vid.mp4");
        IMediaWriter writer = ToolFactory.makeWriter("D://a.mp3",reader);

        int sampleRate = 44100;
        int channels = 1;

        writer.addAudioStream(0, 0, ICodec.ID.CODEC_ID_MP3, channels, sampleRate);
        while (reader.readPacket() == null);
    }

    public static void main(String [] args){
        VideoToAudio vta = new VideoToAudio();
        try{
            vta.convertVideoToAudio();
        }
        catch(Exception e){
            System.out.println("Could not open video file");
        }
    }
}

【问题讨论】:

    标签: java xuggler helios


    【解决方案1】:

    你的程序看起来不错,你只是忘记了一行:)

    public void convertVideoToAudio(){
        IMediaReader reader = ToolFactory.makeReader("D://vid.mp4");
        IMediaWriter writer = ToolFactory.makeWriter("D://a.mp3",reader);
    
        int sampleRate = 44100;
        int channels = 1;
    
        writer.addAudioStream(1, 0, ICodec.ID.CODEC_ID_MP3, channels, sampleRate);
    ->  reader.addListener(writer);
    
        while (reader.readPacket() == null);
    }
    

    【讨论】:

      猜你喜欢
      • 2011-10-17
      • 2012-12-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多