【问题标题】:Convert Webm or m4a file to mp3将 Webm 或 m4a 文件转换为 mp3
【发布时间】:2018-04-02 09:46:13
【问题描述】:

有没有办法在android studio中将webm和m4a文件转换为mp3。 因为更改文件扩展名使其看起来像 mp3 文件,但更改扩展名后无法搜索... webm 和 m4a 文件仅包含音频。

【问题讨论】:

  • 您的意思是使用Java 以编程方式实现此功能吗?如果没有,请检查此convertio.co/m4a-mp3
  • 是的,以编程方式使用 Java..

标签: java android type-conversion mp3 webm


【解决方案1】:

您可以轻松实现https://github.com/adrielcafe/AndroidAudioConverter

您需要将其导入到您的项目中使用

repositories {
  maven {
    url "https://jitpack.io"
  }
}

dependencies {
  compile 'com.github.adrielcafe:AndroidAudioConverter:0.0.8'
}

根据 github 页面,您还需要编译 com.github.hiteshsondhi88.libffmpeg 依赖项。

【讨论】:

  • 我尝试添加依赖项(实现 'com.github.adrielcafe:AndroidAudioConverter:0.0.8')...gradle 同步失败。我实现库错误吗??
  • @AdanNelson 更新了帖子
  • 感谢您的回答,但我使用了 ffmpeg 代替..我应该发布我的代码还是将这个答案标记为已完成?我是新来的,所以我不知道规则..
  • @AdanNelson 您可以发布自己的答案如果它与主题相关,或者将此主题标记为解决方案,如果这对您有帮助,请点赞:-)
【解决方案2】:

这是我使用的ffmpeg的功能.....我只是导入了ffmpeg库..

private void calculate(final String title , final String Type, final int id){
    FFmpeg ffmpeg = FFmpeg.getInstance(getApplicationContext());
    try {
        // to execute "ffmpeg -version" command you just need to pass "-version"
        ffmpeg.execute(new String[]{"-i",Environment.getExternalStoragePublicDirectory(DIRECTORY_MUSIC)+"/"+title+"."+Type, Environment.getExternalStoragePublicDirectory(DIRECTORY_MUSIC)+"/"+title+".mp3"}, new ExecuteBinaryResponseHandler() {

            @Override
            public void onStart() {}

            @Override
            public void onProgress(String message) {
                Log.d("ffmpegevent", "onProgress: "+message);
            }

            @Override
            public void onFailure(String message) {
                Log.d("ffmpegevent", "onProgress: "+message);
                Log.d("ffmpegevent", "onFailure: ");
            }

            @Override
            public void onSuccess(String message) {
                Log.d("ffmpegevent", "onSuccess: ");

            }

            @Override
            public void onFinish() {
                Log.d("ffmpegevent", "onProgress: Finished");
            }
        });
    } catch (FFmpegCommandAlreadyRunningException e) {
        // Handle if FFmpeg is already running
    }

}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-01-07
    • 1970-01-01
    • 2023-03-23
    • 1970-01-01
    • 1970-01-01
    • 2011-12-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多