I want add a progress bar during FFMPEG
execution android.
When i start FFMPEG
command then progress bar start with percentage progress.
I added a ProgressDialog using the video time
final int msec = MediaPlayer.create(this, Uri.fromFile(new File(path))).getDuration();
final ProgressDialog dialog = new ProgressDialog(this);
dialog.setMax(msec);
dialog.setMessage("Progress");
dialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
dialog.setProgress(0);
then in the OnStart
Method of ExecuteBinaryResponseHandler
call dialog.show()
and update the Progress in the onProgress(String message)
Method
@Override
public void onProgress(String message) {
int start = message.indexOf("time=");
int end = message.indexOf(" bitrate");
if (start != -1 && end != -1) {
String duration = message.substring(start + 5, end);
if (duration != "") {
try {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
sdf.setTimeZone(TimeZone.getTimeZone("UTC"));
dialog.setProgress((int)sdf.parse("1970-01-01 " + duration).getTime());
}catch (ParseException e)
{
e.printStackTrace();
}
}
}
}
dismiss the dialog in the OnFinish() method
@Override
public void onFinish() {
String s = System.currentTimeMillis() - MainActivity.this.startTime + "";
dialog.dismiss();
}