Untitled
unknown
plain_text
2 years ago
2.7 kB
5
Indexable
package com.sangdev.miniproject;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.os.AsyncTask;
import android.os.Bundle;
import android.view.View;
import android.widget.ProgressBar;
import android.widget.TextView;
import androidx.appcompat.app.AppCompatActivity;
import java.io.IOException;
public class MainActivity extends AppCompatActivity {
private ProgressBar progressBar;
private TextView outputTextView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
progressBar = findViewById(R.id.progressBar);
outputTextView = findViewById(R.id.outputTextView);
// Example usage
Uri videoUri = Uri.parse("content://path/to/video");
String outputPath = getExternalFilesDir(null) + "/output_video.mp4";
new RemoveAudioTask(this, videoUri, outputPath).execute();
}
private class RemoveAudioTask extends AsyncTask<Void, Void, Boolean> {
private Context context;
private Uri inputUri;
private String outputPath;
public RemoveAudioTask(Context context, Uri inputUri, String outputPath) {
this.context = context;
this.inputUri = inputUri;
this.outputPath = outputPath;
}
@Override
protected void onPreExecute() {
super.onPreExecute();
progressBar.setVisibility(View.VISIBLE);
outputTextView.setVisibility(View.GONE);
}
@Override
protected Boolean doInBackground(Void... voids) {
try {
VideoUtils.removeAudioFromVideo(context, inputUri, outputPath);
return true;
} catch (IOException e) {
e.printStackTrace();
return false;
}
}
@Override
protected void onPostExecute(Boolean result) {
super.onPostExecute(result);
progressBar.setVisibility(View.GONE);
if (result) {
outputTextView.setText("Output file: " + outputPath);
outputTextView.setVisibility(View.VISIBLE);
// Play the output video
Uri outputUri = Uri.parse(outputPath);
Intent intent = new Intent(Intent.ACTION_VIEW, outputUri);
intent.setDataAndType(outputUri, "video/mp4");
startActivity(intent);
} else {
outputTextView.setText("Failed to remove audio.");
outputTextView.setVisibility(View.VISIBLE);
}
}
}
}
Editor is loading...
Leave a Comment