简体   繁体   中英

How to play mp4 video file?

I am practicing a project in which i want to play videos of multiple formats. I searched on google so much and got on so many links of so many codes also. I tried so many codes but none of them worked for me

I tried this code from this link but it did n't worked for me So can anyone suggest from where I must study regarding this so that i able to play videos of multiple formats

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".VideoPlayerActivity" >

    <FrameLayout
        android:id="@+id/video_frame"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent" >

        <VideoView
            android:id="@+id/video_player_view"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent" />
    </FrameLayout>

</RelativeLayout>

public class VideoPlayerActivity extends Activity {
    VideoView video_player_view;
    DisplayMetrics dm;
    SurfaceView sur_View;
    MediaController media_Controller;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }

    public void getInit() {
        video_player_view = (VideoView) findViewById(R.id.video_player_view);
        media_Controller = new MediaController(this);
        dm = new DisplayMetrics();
        this.getWindowManager().getDefaultDisplay().getMetrics(dm);
        int height = dm.heightPixels;
        int width = dm.widthPixels;
        video_player_view.setMinimumWidth(width);
        video_player_view.setMinimumHeight(height);
        video_player_view.setMediaController(media_Controller);
        video_player_view.setVideoPath("/sdcard/Bottle.mp4");
        video_player_view.start();
    }
}

First define ProgressDialog mProgressDialog;

Then try this code,it worked for me:

video = (VideoView) findViewById(R.id.VideoView1);
        final MediaController mc = new MediaController(this);
        mc.setAnchorView(video);
        mc.setMediaPlayer(video);
        Uri uri = Uri.parse(path1);
        video.setMediaController(mc);
        System.out.println("!-- uri: "+uri.toString());
        video.setVideoURI(uri);

        video.setOnPreparedListener(new OnPreparedListener() {
            @Override
            public void onPrepared(MediaPlayer mp) {



                   mProgressDialog.dismiss();






            }
        });

        video.start();

        video.setOnCompletionListener(new OnCompletionListener() {

            @Override
            public void onCompletion(MediaPlayer mp) {

            }

        });


    }


    public void showLoaderProgress(){
        mProgressDialog = new ProgressDialog(this);
        mProgressDialog.setMessage("Loading Video\nPlease wait...");
        mProgressDialog.setIndeterminate(true);
        mProgressDialog.setCancelable(false);
        mProgressDialog.show();
    }

where path1 is your video path.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM