首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >安卓: TextureView中的视频

安卓: TextureView中的视频
EN

Stack Overflow用户
提问于 2015-05-22 12:45:53
回答 1查看 2.4K关注 0票数 2

我开始知道我们可以在纹理视图中播放视频。但我只看到了如何播放摄像头捕获的视频,但我想在其中播放可用的视频来执行任何动画。

我已经尝试过这个代码,但是我不知道把video.mp4放在哪里

代码语言:javascript
运行
复制
public class MainActivity extends Activity implements
        TextureView.SurfaceTextureListener {

    @Override
    public void onCreate(Bundle icicle) {
        super.onCreate(icicle);
        setContentView(R.layout.activity_main);

        TextureView textureView = (TextureView) findViewById(R.id.textureView1);
        textureView.setSurfaceTextureListener(this);
    }

    public void onSurfaceTextureAvailable(SurfaceTexture surface, int width,
            int height) {
        MediaPlayer mediaPlayer = new MediaPlayer();
        mediaPlayer.setSurface(new Surface(surface));

        try {
            mediaPlayer.setDataSource("video.mp4");
            mediaPlayer.prepare();
            mediaPlayer.start();
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

    @Override
    public boolean onSurfaceTextureDestroyed(SurfaceTexture arg0) {
        // TODO Auto-generated method stub
        return false;
    }

    @Override
    public void onSurfaceTextureSizeChanged(SurfaceTexture arg0, int arg1,
            int arg2) {
        // TODO Auto-generated method stub

    }

    @Override
    public void onSurfaceTextureUpdated(SurfaceTexture arg0) {
        // TODO Auto-generated method stub

    }
}

请给我任何工作代码帮助我。或者如果我的是正确的,那么在文件夹中放置video.mp4的位置。

先谢谢你...

EN

回答 1

Stack Overflow用户

发布于 2015-05-22 15:08:23

把它放在raw文件夹中,试试下面的那个,看看是否有帮助。

代码语言:javascript
运行
复制
public void onSurfaceTextureAvailable(SurfaceTexture surface, int width, int height) {
    MediaPlayer mediaPlayer = new MediaPlayer();
    mediaPlayer.setSurface(new Surface(surface));
    try {
        Uri video = Uri.parse("android.resource://" + getPackageName() + "/" + R.raw.your_raw_file);
        mediaPlayer.setDataSource(this, video);
        mediaPlayer.prepare();
        mediaPlayer.start();
    } catch (Exception e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30388534

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档