android video, hear sound but no video

前端 未结 6 1827
情书的邮戳
情书的邮戳 2020-12-07 01:52

I have tried several different examples but I cannot get any video to show. I hear sound but no video. I thought maybe I just had a incorrect video format so I downloaded a

6条回答
  •  醉话见心
    2020-12-07 02:41

    You class must implement SurfaceHolder.Callback and call methods setDisplay, prepare and etc only after you get in surfaceCreated. Also you may need to change type of surface holder to SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS. Like this:

    import android.view.SurfaceHolder.Callback;
    
    public class TestActivity extends Activity implements Callback {
    
    // ...
    
        @Override
        public void onCreate(Bundle savedInstanceState) {
            // ...
            mSurfaceView = (SurfaceView)findViewById(R.id.yousurfaceview); 
            holder = mSurfaceView.getHolder();
            holder.addCallback(this);
            holder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
        }
    
    @Override
    public void surfaceCreated(SurfaceHolder holder) {
        try {
            mp.setDisplay(holder);
            mp.setDataSource(somesource);
            mp.prepare();
            mp.start();
            // etc...
        } catch (IOException e) {
            } catch (IllegalArgumentException e) {
            } catch (IllegalStateException e) {
        }
    
    }
    
    // ...
    }
    

    If you try it in OnCreate you got nothing as result, because Surface is not yet created...

提交回复
热议问题