Android 使用自带的MediaCodec 框架进行本地视频压缩

原文出自
这是之前的项目
因为找不到原文作者 只是找到了一个转载的文章 所以就把链接放了进来 这个项目个人亲测是可以用的 速度也比较快 但是有一点点小问题 简单的做了一个说明
1.我把项目重新Fock了一下适配到了Androidx
2.经个人测试 当视频文件放到/storage/emulated/0/Android/data/xxx/file/xxx的时候压缩是不成功的 具体原因个人猜测可能是因为系统对data文件夹有限制 而放到/storage/emulated/0/Download/xxx/storage/emulated/0/Android/media/xxx/xxx下项目可以正常压缩
至于具体的原理学艺不精确实说不太明白 只能说这个压缩还是比较快的 压缩率大概是50%左右 比FFmpeg的上手难度要小 毕竟不需要再去集成so文件
最主要的代码其实就是这一块

 VideoCompress.compressVideoMedium(tv_input.getText().toString(), destPath, new VideoCompress.CompressListener() {
                    @Override
                    public void onStart() {
                    //开始压缩      
                    }

                    @Override
                    public void onSuccess() {
                      //压缩成功
                    }

                    @Override
                    public void onFail() {
                        //应该是压缩失败 但是我没触发过
                    }

                    @Override
                    public void onProgress(float percent) {
                       //压缩的进度条
                    }
                });

使用方法 可以直接把项目里面的videocompress这个module拿出来复制到自己的项目里 剩下的看下demo就好了
新的Demo地址
如果哪里写的不对 希望大佬予以指正

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Museeeeeee丶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值