update: extract audio track

pull/209/head
xufuji456 3 years ago
parent fefefe8028
commit afda7391a8
  1. 5
      app/src/main/java/com/frank/ffmpeg/util/FFmpegUtil.java
  2. 8
      doc/FFmpeg_command_line.md
  3. 9
      doc/JNI_develop_practice.md

@ -242,8 +242,9 @@ public class FFmpegUtil {
* @return demux audio success or not
*/
public static String[] extractAudio(String inputPath, String outputPath) {
//-vn: disable video
String extractAudioCmd = "ffmpeg -i %s -acodec copy -vn %s";
// -vn: disable video
// multi audio track: ffmpeg -i input.mp4 -map 0:1 -vn output.mp3
String extractAudioCmd = "ffmpeg -i %s -vn %s";
extractAudioCmd = String.format(extractAudioCmd, inputPath, outputPath);
return extractAudioCmd.split(" ");
}

@ -109,8 +109,12 @@ ffmpeg -i input.mp3 -af silencedetect=noise=0.0001 -f null -<br>
ffmpeg -i input.mp3 -af volume=0.5 volume.mp3<br>
### 2.10 抽取音频
从视频抽取音频,也就是disable视频流、拷贝音频流:<br>
ffmpeg -i input.mp4 -acodec copy -vn out.mp3<br>
从视频抽取音频,直接disable视频流:<br>
ffmpeg -i input.mp4 -vn out.mp3<br>
从视频抽取音频,disable视频流,音频进行转码:<br>
ffmpeg -i input.mp4 -acodec aac -vn out.m4a<br>
从视频抽取音频,如果存在多音轨,可指定某个音轨:<br>
ffmpeg -i input.mp4 -map 0:1 -vn out.mp3<br>
## 3、视频常见操作
### 3.1 视频剪切

@ -2,8 +2,9 @@
JNI是Java本地接口,定义Android从应用代码(以Java或kotlin编程语言编写)到本地代码(C/C++编写)交互编译成字节码的一种方式。</br>
文档[Java Native Interface Specification](https://docs.oracle.com/javase/7/docs/technotes/guides/jni/spec/jniTOC.html)</br>
# NDK编译脚本
### [Android.mk与CMake编译](https://github.com/xufuji456/FFmpegAndroid/blob/master/doc/NDK_compile_shell.md)
### NDK编译脚本
[Android.mk与CMake编译](https://github.com/xufuji456/FFmpegAndroid/blob/master/doc/NDK_compile_shell.md)
# 相关介绍文章如下:
### [JNI开发规范](https://blog.csdn.net/u011686167/article/details/81784979)
### 相关介绍文章如下:
[NDK编译脚本](https://blog.csdn.net/u011686167/article/details/106458899)
[JNI开发规范](https://blog.csdn.net/u011686167/article/details/81784979)
Loading…
Cancel
Save