为什么播放视频的SurfaceView(Android)最大尺寸为1024×1024?

我使用SurfaceView播放视频.我使用三星Galaxy Tab进行测试.我设定尺寸:

LinearLayout.LayoutParams videoViewParams = new   LinearLayout.LayoutParams(m_mainView.getPictureWidth(), m_mainView.getPictureHeight());       
mPreview = (SurfaceView) videoView.findViewById(R.id.surface); 
mPreview.setLayoutParams(videoViewParams);

当mainView.getPictureWidth()或mainView.getPictureHeight()高于1024时 – 我在logcat中收到消息:

01-12 11:49:15.839: ERROR/SurfaceFlinger(2491): LayerBuffer init temp buff failed with w=1210, h=922, exp max=1024×1024 on 0

我只看到黑屏.

为什么?
在我的应用程序中,我使用视频缩放,有时我需要获得大小超过1024的视频.

最佳答案 怀疑这个限制只针对三星.检查模拟器 – 一切正常!找到一个主题 –

a similar problemt,人们要求他测试媒体播放器(他说,对于所有设备,应用程序正常工作).一个用户在Samsung Galaxy S上是同样的问题.只有他最大= 800×800.即,这里获得的屏幕尺寸的最大值,并形成限制.

有任何想法吗?

点赞