ChinaFFmpeg

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 11547|回复: 8

[Android] FFmpeg 执行-filter_complex指令 会降低视频指令

[复制链接]
发表于 2018-7-12 19:34:47 | 显示全部楼层 |阅读模式
在手机上执行-filter_complex fade命令 图像质量会下降很多 视频大小也缩减了

这是我的编译文件

#!/bin/bash
NDK=/root/ff/android-ndk-r14b
SYSROOT=$NDK/platforms/android-21/arch-arm/
CPU=armv7-a
TOOLCHAIN=$NDK/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64
PREFIX=./android/$CPU
ADDI_CFLAGS="-marm"
OPTIMIZE_CFLAGS="-mfloat-abi=softfp -mfpu=vfp -marm -march=$CPU "

function build_android
{
./configure \
--prefix=$PREFIX \
--enable-neon \
--enable-hwaccels \
--enable-shared \
--enable-jni \
--enable-mediacodec \
--enable-decoder=h264_mediacodec \
--disable-static \
--disable-doc \
--enable-ffmpeg \
--disable-ffplay \
--disable-ffprobe \
--enable-avdevice \
--disable-doc \
--disable-symver \
--cross-prefix=$TOOLCHAIN/bin/arm-linux-androideabi- \
--target-os=android \
--arch=arm \
--cpu=armv7-a \
--enable-cross-compile \
--sysroot=$SYSROOT \
--extra-cflags="-Os -fpic $ADDI_CFLAGS" \
--extra-ldflags="$ADDI_LDFLAGS" \
$ADDITIONAL_CONFIGURE_FLAG
}
build_android

同一个视频
手机执行结果 10M -> 1M              

官方EXE执行结果 10M->4M
回复

使用道具 举报

发表于 2018-7-13 10:19:51 | 显示全部楼层
ffmpeg里面用到filter就会重新编码,需要自己设置编码参数才可以,否则就是用默认的参数编码了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-7-13 12:08:11 | 显示全部楼层
感谢 大师兄
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-7-13 12:08:55 | 显示全部楼层
那设置默认编码 是需要在编译时候设置吗 还是执行命令的时候设置呢?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-7-16 11:15:10 | 显示全部楼层
自己研究明白了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-7-16 11:17:00 | 显示全部楼层
ffmpeg -i /sdcard/ffmpegtest/back_1.mp4 -filter_complex fade=t=in:st=0:d=3:color=green /sdcard/ffmpegtest/output.mp4
普通指令加上-c:v mpeg4 -q:v 5就好了 mpeg4是编码方式 -q:v n代表生成质量 1代表最好
ffmpeg -i /sdcard/ffmpegtest/back_1.mp4 -filter_complex fade=t=in:st=0:d=3:color=green -c:v mpeg4 -q:v 5 /sdcard/ffmpegtest/output.mp4
填了1之后生成的文件大小比源文件还大。。。
回复 支持 反对

使用道具 举报

发表于 2018-7-16 11:30:38 | 显示全部楼层
lqk1990 发表于 2018-7-16 11:17
ffmpeg -i /sdcard/ffmpegtest/back_1.mp4 -filter_complex fade=t=in:st=0:d=3:color=green /sdcard/ffmpe ...

为啥不试试h264编码,比如libx264
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-7-28 11:15:55 | 显示全部楼层
孙悟空 发表于 2018-7-16 11:30
为啥不试试h264编码,比如libx264

感谢大师兄的回帖~
再次请教个问题,
在android上执行这个filter指令会对视频整体进行重新编码,一个9秒5M的视频处理时间长达到30秒
有没有什么指令可以缩短这个执行时间到5秒以内呢
我只想在片头加个fade,能不能只处理开始的2秒,其他部分不要再重新编码可以吗?
回复 支持 反对

使用道具 举报

发表于 2018-8-18 11:14:09 | 显示全部楼层
lqk1990 发表于 2018-7-28 11:15
感谢大师兄的回帖~
再次请教个问题,
在android上执行这个filter指令会对视频整体进行重新编码,一个9秒5 ...

分割后再合并?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|Archiver|ChinaFFmpeg

GMT+8, 2024-4-26 03:55 , Processed in 0.093226 second(s), 14 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表