Android 合并mp4与m4a,在android中使用ffmpeg将mp4转换为m4a
我正在尝试添加在项目中压缩视频文件的功能。但是,我尝试在压缩之前使用FFMPEG Library从原始视频文件中提取音频。命令行是
-i video.mp4 -c:a aac -b:a 160k target.m4a
编码完成后,我注意到输出仍然是视频文件,但大小不同。这给我带来了两个问题,我想知道他们的答案。
1 - 可以将“.m4a”文件视为视频文件吗?
2 - 我可以使用此命令行压缩视频文件吗?
祝你好运
执行命令后记录
success load
started encoding
ffmpeg version n3.0.1 Copyright (c) 2000-2016 the FFmpeg developers
built with gcc 4.8 (GCC)
configuration: --target-os=linux --cross-prefix=/home/vagrant/SourceCode/ffmpeg-android/toolchain-android/bin/arm-linux-androideabi- --arch=arm --cpu=cortex-a8 --enable-runtime-cpudetect --sysroot=/home/vagrant/SourceCode/ffmpeg-android/toolchain-android/sysroot --enable-pic --enable-libx264 --enable-libass --enable-libfreetype --enable-libfribidi --enable-libmp3lame --enable-fontconfig --enable-pthreads --disable-debug --disable-ffserver --enable-version3 --enable-hardcoded-tables --disable-ffplay --disable-ffprobe --enable-gpl --enable-yasm --disable-doc --disable-shared --enable-static --pkg-config=/home/vagrant/SourceCode/ffmpeg-android/ffmpeg-pkg-config --prefix=/home/vagrant/SourceCode/ffmpeg-android/build/armeabi-v7a --extra-cflags='-I/home/vagrant/SourceCode/ffmpeg-android/toolchain-android/include -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fstack-protector-all' --extra-ldflags='-L/home/vagrant/SourceCode/ffmpeg-android/toolchain-android/lib -Wl,-z,relro -Wl,-z,now -pie' --extra-libs='-lpng -lexpat -lm' --extra-cxxflags=
libavutil 55. 17.103 / 55. 17.103
libavcodec 57. 24.102 / 57. 24.102
libavformat 57. 25.100 / 57. 25.100
libavdevice 57. 0.101 / 57. 0.101
libavfilter 6. 31.100 / 6. 31.100
libswscale 4. 0.100 / 4. 0.100
libswresample 2. 0.101 / 2. 0.101
libpostproc 54. 0.100 / 54. 0.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/storage/emulated/0/tempVid.mp4':
Metadata:
major_brand : 3gp4
minor_version : 0
compatible_brands: isom3gp4
creation_time : 2017-11-30 03:22:41
com.android.version: 6.0.1
Duration: 00:00:19.80, start: 0.000000, bitrate: 4246 kb/s
Stream #0:0(eng): Video: h264 (Baseline) (avc1 / 0x31637661), yuv420p, 176x144, 4112 kb/s, SAR 1:1 DAR 11:9, 29.94 fps, 29.97 tbr, 90k tbn, 180k tbc (default)
Metadata:
rotate : 270
creation_time : 2017-11-30 03:22:41
handler_name : VideoHandle
Side data:
displaymatrix: rotation of 90.00 degrees
Stream #0:1(eng): Audio: amr_nb (samr / 0x726D6173), 8000 Hz, mono, flt, 12 kb/s (default)
Metadata:
creation_time : 2017-11-30 03:22:41
handler_name : SoundHandle
[libx264 @ 0xb5bc4400] using SAR=1/1
[libx264 @ 0xb5bc4400] using cpu capabilities: none!
[libx264 @ 0xb5bc4400] profile High, level 1.1
[libx264 @ 0xb5bc4400] 264 - core 148 - H.264/MPEG-4 AVC codec - Copyleft 2003-2015 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=5 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
[aac @ 0xb5bc4c00] Too many bits 20480.000000 > 6144 per frame requested, clamping to max
Output #0, ipod, to '/storage/emulated/0/target.m4a':
Metadata:
major_brand : 3gp4
minor_version : 0
compatible_brands: isom3gp4
com.android.version: 6.0.1
encoder : Lavf57.25.100
Stream #0:0(eng): Video: h264 (libx264) (avc1 / 0x31637661), yuv420p, 144x176 [SAR 1:1 DAR 9:11], q=-1--1, 29.97 fps, 30k tbn, 29.97 tbc (default)
Metadata:
handler_name : VideoHandle
creation_time : 2017-11-30 03:22:41
encoder : Lavc57.24.102 libx264
Side data:
unknown side data type 10 (24 bytes)
Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 8000 Hz, mono, fltp, 48 kb/s (default)
Metadata:
creation_time : 2017-11-30 03:22:41
handler_name : SoundHandle
encoder : Lavc57.24.102 aac
Stream mapping:
Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264))
Stream #0:1 -> #0:1 (amr_nb (amrnb) -> aac (native))
Press [q] to stop, [?] for help
frame= 47 fps=0.0 q=0.0 size= 0kB time=00:00:00.76 bitrate= 0.5kbits/s speed=1.53x
frame= 69 fps= 68 q=29.0 size= 12kB time=00:00:01.79 bitrate= 56.3kbits/s speed=1.77x
frame= 88 fps= 57 q=29.0 size= 22kB time=00:00:02.30 bitrate= 76.5kbits/s speed=1.49x
frame= 110 fps= 54 q=29.0 size= 31kB time=00:00:02.81 bitrate= 89.9kbits/s speed=1.37x
frame= 118 fps= 45 q=29.0 size= 34kB time=00:00:03.84 bitrate= 71.5kbits/s speed=1.47x
frame= 144 fps= 46 q=29.0 size= 44kB time=00:00:03.84 bitrate= 93.7kbits/s speed=1.23x
frame= 150 fps= 41 q=29.0 size= 48kB time=00:00:04.86 bitrate= 80.6kbits/s speed=1.34x
frame= 178 fps= 42 q=29.0 size= 62kB time=00:00:04.86 bitrate= 105.2kbits/s speed=1.16x
frame= 185 fps= 39 q=29.0 size= 67kB time=00:00:05.88 bitrate= 93.4kbits/s speed=1.25x
frame= 206 fps= 40 q=29.0 size= 78kB time=00:00:05.88 bitrate= 108.5kbits/s speed=1.13x
frame= 214 fps= 37 q=29.0 size= 84kB time=00:00:06.91 bitrate= 99.8kbits/s speed=1.21x
frame= 238 fps= 38 q=29.0 size= 100kB time=00:00:06.91 bitrate= 118.0kbits/s speed=1.11x
frame= 249 fps= 37 q=29.0 size= 106kB time=00:00:07.93 bitrate= 109.3kbits/s speed=1.18x
frame= 268 fps= 37 q=29.0 size= 119kB time=00:00:08.19 bitrate= 119.1kbits/s speed=1.13x
frame= 279 fps= 36 q=29.0 size= 127kB time=00:00:08.96 bitrate= 116.4kbits/s speed=1.16x
frame= 298 fps= 36 q=29.0 size= 140kB time=00:00:09.21 bitrate= 124.4kbits/s speed=1.11x
frame= 308 fps= 35 q=29.0 size= 149kB time=00:00:09.98 bitrate= 122.3kbits/s speed=1.14x
frame= 328 fps= 35 q=29.0 size= 162kB time=00:00:10.24 bitrate= 129.5kbits/s speed= 1.1x
frame= 343 fps= 35 q=29.0 size= 172kB time=00:00:10.88 bitrate= 129.2kbits/s speed=1.11x
frame= 358 fps= 35 q=29.0 size= 180kB time=00:00:11.90 bitrate= 124.0kbits/s speed=1.15x
frame= 387 fps= 36 q=29.0 size= 195kB time=00:00:11.90 bitrate= 134.1kbits/s speed=1.09x
frame= 398 fps= 35 q=29.0 size= 202kB time=00:00:12.92 bitrate= 127.9kbits/s speed=1.14x
frame= 418 fps= 35 q=29.0 size= 213kB time=00:00:13.31 bitrate= 131.3kbits/s speed=1.12x
frame= 432 fps= 35 q=29.0 size= 222kB time=00:00:13.95 bitrate= 130.3kbits/s speed=1.13x
frame= 448 fps= 35 q=29.0 size= 230kB time=00:00:14.59 bitrate= 129.0kbits/s speed=1.13x
frame= 469 fps= 35 q=29.0 size= 242kB time=00:00:14.97 bitrate= 132.5kbits/s speed=1.11x
frame= 478 fps= 34 q=29.0 size= 247kB time=00:00:15.87 bitrate= 127.6kbits/s speed=1.14x
frame= 509 fps= 35 q=29.0 size= 259kB time=00:00:16.00 bitrate= 132.8kbits/s dup=1 drop=0 speed=1.11x
frame= 525 fps= 35 q=29.0 size= 266kB time=00:00:17.02 bitrate= 127.8kbits/s dup=1 drop=0 speed=1.13x
frame= 539 fps= 35 q=29.0 size= 271kB time=00:00:17.79 bitrate= 124.5kbits/s dup=1 drop=0 speed=1.15x
frame= 564 fps= 35 q=29.0 size= 285kB time=00:00:18.04 bitrate= 129.4kbits/s dup=1 drop=0 speed=1.13x
frame= 574 fps= 35 q=29.0 size= 290kB time=00:00:19.07 bitrate= 124.8kbits/s dup=1 drop=0 speed=1.15x
frame= 590 fps= 35 q=29.0 size= 297kB time=00:00:19.45 bitrate= 125.2kbits/s dup=1 drop=0 speed=1.14x
frame= 594 fps= 33 q=-1.0 Lsize= 328kB time=00:00:19.84 bitrate= 135.2kbits/s dup=1 drop=0 speed= 1.1x
video:246kB audio:70kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 3.381132%
[libx264 @ 0xb5bc4400] frame I:3 Avg QP:22.61 size: 4103
[libx264 @ 0xb5bc4400] frame P:230 Avg QP:25.04 size: 851
[libx264 @ 0xb5bc4400] frame B:361 Avg QP:28.82 size: 121
[libx264 @ 0xb5bc4400] consecutive B-frames: 1.2% 40.7% 37.9% 20.2%
[libx264 @ 0xb5bc4400] mb I I16..4: 4.0% 49.8% 46.1%
[libx264 @ 0xb5bc4400] mb P I16..4: 0.1% 0.3% 0.2% P16..4: 52.0% 27.1% 15.1% 0.0% 0.0% skip: 5.3%
[libx264 @ 0xb5bc4400] mb B I16..4: 0.0% 0.0% 0.0% B16..8: 43.4% 2.1% 0.3% direct: 1.7% skip:52.5% L0:39.3% L1:55.4% BI: 5.3%
[libx264 @ 0xb5bc4400] 8x8 transform intra:51.7% inter:57.7%
[libx264 @ 0xb5bc4400] coded y,uvDC,uvAC intra: 81.9% 93.5% 80.4% inter: 11.9% 40.0% 17.4%
[libx264 @ 0xb5bc4400] i16 v,h,dc,p: 11% 25% 7% 57%
[libx264 @ 0xb5bc4400] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 7% 20% 16% 6% 11% 5% 20% 6% 9%
[libx264 @ 0xb5bc4400] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 11% 22% 14% 5% 10% 7% 19% 5% 7%
[libx264 @ 0xb5bc4400] i8c dc,h,v,p: 61% 18% 10% 10%
[libx264 @ 0xb5bc4400] Weighted P-Frames: Y:24.3% UV:22.2%
[libx264 @ 0xb5bc4400] ref P L0: 57.6% 14.3% 16.8% 8.9% 2.3%
[libx264 @ 0xb5bc4400] ref B L0: 76.3% 19.1% 4.6%
[libx264 @ 0xb5bc4400] ref B L1: 91.9% 8.1%
[libx264 @ 0xb5bc4400] kb/s:101.58
[aac @ 0xb5bc4c00] Qavg: 64130.668
success ffmpeg
end encoding
ffmpeg version n3.0.1 Copyright (c) 2000-2016 the FFmpeg developers
built with gcc 4.8 (GCC)
configuration: --target-os=linux --cross-prefix=/home/vagrant/SourceCode/ffmpeg-android/toolchain-android/bin/arm-linux-androideabi- --arch=arm --cpu=cortex-a8 --enable-runtime-cpudetect --sysroot=/home/vagrant/SourceCode/ffmpeg-android/toolchain-android/sysroot --enable-pic --enable-libx264 --enable-libass --enable-libfreetype --enable-libfribidi --enable-libmp3lame --enable-fontconfig --enable-pthreads --disable-debug --disable-ffserver --enable-version3 --enable-hardcoded-tables --disable-ffplay --disable-ffprobe --enable-gpl --enable-yasm --disable-doc --disable-shared --enable-static --pkg-config=/home/vagrant/SourceCode/ffmpeg-android/ffmpeg-pkg-config --prefix=/home/vagrant/SourceCode/ffmpeg-android/build/armeabi-v7a --extra-cflags='-I/home/vagrant/SourceCode/ffmpeg-android/toolchain-android/include -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fstack-protector-all' --extra-ldflags='-L/home/vagrant/SourceCode/ffmpeg-android/toolchain-android/lib -Wl,-z,relro -Wl,-z,now -pie' --extra-libs='-lpng -lexpat -lm' --extra-cxxflags=
libavutil 55. 17.103 / 55. 17.103
libavcodec 57. 24.102 / 57. 24.102
libavformat 57. 25.100 / 57. 25.100
libavdevice 57. 0.101 / 57. 0.101
libavfilter 6. 31.100 / 6. 31.100
libswscale 4. 0.100 / 4. 0.100
libswresample 2. 0.101 / 2. 0.101
libpostproc 54. 0.100 / 54. 0.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/storage/emulated/0/tempVid.mp4':
Metadata:
major_brand : 3gp4
minor_version : 0
compatible_brands: isom3gp4
creation_time : 2017-11-30 03:22:41
com.android.version: 6.0.1
Duration: 00:00:19.80, start: 0.000000, bitrate: 4246 kb/s
Stream #0:0(eng): Video: h264 (Baseline) (avc1 / 0x31637661), yuv420p, 176x144, 4112 kb/s, SAR 1:1 DAR 11:9, 29.94 fps, 29.97 tbr, 90k tbn, 180k tbc (default)
Metadata:
rotate : 270
creation_time : 2017-11-30 03:22:41
handler_name : VideoHandle
Side data:
displaymatrix: rotation of 90.00 degrees
Stream #0:1(eng): Audio: amr_nb (samr / 0x726D6173), 8000 Hz, mono, flt, 12 kb/s (default)
Metadata:
creation_time : 2017-11-30 03:22:41
handler_name : SoundHandle
[libx264 @ 0xb5bc4400] using SAR=1/1
[libx264 @ 0xb5bc4400] using cpu capabilities: none!
[libx264 @ 0xb5bc4400] profile High, level 1.1
[libx264 @ 0xb5bc4400] 264 - core 148 - H.264/MPEG-4 AVC codec - Copyleft 2003-2015 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=5 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
[aac @ 0xb5bc4c00] Too many bits 20480.000000 > 6144 per frame requested, clamping to max
Output #0, ipod, to '/storage/emulated/0/target.m4a':
Metadata:
major_brand : 3gp4
minor_version : 0
compatible_brands: isom3gp4
com.android.version: 6.0.1
encoder : Lavf57.25.100
Stream #0:0(eng): Video: h264 (libx264) (avc1 / 0x31637661), yuv420p, 144x176 [SAR 1:1 DAR 9:11], q=-1--1, 29.97 fps, 30k tbn, 29.97 tbc (default)
Metadata:
handler_name : VideoHandle
creation_time : 2017-11-30 03:22:41
encoder : Lavc57.24.102 libx264
Side data:
unknown side data type 10 (24 bytes)
Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 8000 Hz, mono, fltp, 48 kb/s (default)
Metadata:
creation_time : 2017-11-30 03:22:41
handler_name : SoundHandle
encoder : Lavc57.24.102 aac
Stream mapping:
Stream #0:0 -> #0:0 (h26
Android 合并mp4与m4a,在android中使用ffmpeg将mp4转换为m4a相关推荐
- linux保存mp4格式的文件,Linux中利用ffmpeg转换手机支持的mp4格式视频文件
首先当然是需要安装ffmpeg软件包,可以直接从源中进行安装!但我安装后并不能成功执行后面所需要执行的转换命令,所以我只能重新从源码编译安装ffmpeg: (1)下载ffmpeg源码包,注意版本不能太 ...
- 在python中使用ffmpeg实现mp4转wav
有时候我们可能需要在python代码中批处理MP4转wav文件,操作如下: for filepath in files: filepath_no_ext = os.path.splitext(file ...
- python之 ffmpeg给mp4视频添加字幕
目录 ffmpeg给mp4视频加字幕 执行结果: ffmpeg给mp4视频加字幕 前期输入准备: mp4视频 外挂字幕:是一个单独的外部字幕文件,格式类型一般有srt.vtt.ass等等.播放视频时, ...
- python视频格式转换命令_python怎么实现文件格式的转换 批处理使用ffmpeg为mp4批量加入字幕...
ffmpeg怎么批量处理任意类型的视频文件 如何用python实现视频关键帧提取并保存为图片?我想要和你一直在一起.一直到世界的终结.可以看到花开的微笑. import cv2vc = cv2.Vid ...
- Android 音视频配音之音频提取、截断、混音、合并、合成(一)——从视频中提取音频文件
目录 前言 提取前提----了解提取需要用到的工具类:MediaExtractor.MediaCodec 1.MediaExtractor 2.MediaCodec 3.释放 具体提取转码代码 调用 ...
- Android直播开发之旅(17):使用FFmpeg提取MP4中的H264和AAC
最近在开发中遇到了一个问题,即无法提取到MP4中H264流的关键帧进行处理,且保存到本地的AAC音频也无法正常播放.经过调试分析发现,这是由于解封装MP4得到的H264和AAC是ES流,它们缺失解码时 ...
- android 播放视频链接,如何通过Android视频播放器中的直接链接播放MP4视频?
我正在制作一个 Android应用程序,我需要通过直接下载链接在Android默认本机视频播放器中播放mp4视频. 要打开Android视频播放器,我使用以下代码 Intent intent = ne ...
- android多个module打包aar,Android 多 Module 合并打包 AAR
通常来说,我们在项目中引入第三方 SDK 通常有下面几种方式: 添加 JAR 包文件到项目依赖(对应 Java Library): 添加 AAR 包文件到项目依赖(对应 Android Library ...
- Android直播开发之旅(3):AAC编码格式分析与MP4文件封装(MediaCodec+MediaMuxer)
Android直播开发之旅(3):AAC编码格式分析与MP4文件封装(MediaCodec+MediaMuxer) (码字不易,转载请声明出处:http://blog.csdn.net/andrexp ...
最新文章
- python关闭读写的所有的文件-python文件读写操作
- html 横屏内容显示不全_为什么我的文本显示不全?
- oracle 随笔数,Oracle数据库随笔
- POJ 3268:Silver Cow Party 求单点的来回最短路径
- Linux系统管理(11)——linux下jdk的安装及环境变量配置
- Codeforces Round #FF (Div. 2) D. DZY Loves Modification 贪心+优先队列
- CCF NOI1041 志愿者选拔
- Android RecyclerView滑动即可删除和撤消
- IO OutputStreamWriter和InputStreamReader
- 一个网站的诞生- MagicDict开发总结1 [首页]
- 【线性系统】五、稳定性
- STC4054锂电池充电IC
- u盘文件看得见却打不开_u盘可以显示但是打不开怎么办
- 从大数据看直播答题的春节大考,突围方向在哪?
- 《教育学原理》知识框架整理
- 微信小程序使用MQTT远程控制单片机——阿里云物联网平台
- 小飞升值记——(23)
- 我们都一样,不甘平凡又害怕努力
- 中国联通客户端被曝Bug:无密码随便登陆
- 快递这个行业杀价拼量力竭
热门文章
- 百度地图API:如何查询数自己的数据库标注地图并让标注显示在最佳视野内
- 微软发布Win11 build 22616.1,推出Xbox控制器栏功能
- [转载]陌陌上市前夜遭网易声明三宗罪:求丁磊放过唐岩
- 硬盘第一个基本分区c 的 ntfs格式的XP上 安装 windows和linux 双引导 设置grub(安装WINGRUB),
- 外贸业务员怎样能提高自己的工作能力?
- 【Linux命令】查找文件命令
- 钉钉产品策略_如何制定成功的产品策略
- 美丽的白云山白云山自古以来就是广州有名的景点
- DR:SAP FI/CO 知识 浓缩版(中)
- ubuntu 更新 docker 版本