Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/199.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android VideoView无法在某些设备上播放视频_Android_Android Videoview - Fatal编程技术网

Android VideoView无法在某些设备上播放视频

Android VideoView无法在某些设备上播放视频,android,android-videoview,Android,Android Videoview,在从三星Galaxy S4录制了.mp4视频并将其上传到服务器后,我尝试在Nexus 5设备的视频视图中对其进行流式传输,但失败了,Logcat显示了这一点 E/MediaPlayer﹕ Error (1,-2147483648) D/MediaPlayer﹕ Couldn't open file on client side, trying server side 视频大小约为4.82mb,通过intents录制 //VIDEO CAMERA Intent cameraIntent = ne

在从三星Galaxy S4录制了
.mp4
视频并将其上传到服务器后,我尝试在Nexus 5设备的
视频视图中对其进行流式传输,但失败了,Logcat显示了这一点

E/MediaPlayer﹕ Error (1,-2147483648)
D/MediaPlayer﹕ Couldn't open file on client side, trying server side
视频大小约为
4.82mb
,通过intents录制

//VIDEO CAMERA
Intent cameraIntent = new Intent( MediaStore.ACTION_VIDEO_CAPTURE);
cameraIntent.putExtra( MediaStore.EXTRA_DURATION_LIMIT, 20);
cameraIntent.putExtra( MediaStore.EXTRA_VIDEO_QUALITY, 1 );
startActivityForResult( cameraIntent, TAKE_VIDEO_REQUEST_CODE );
录制的视频在三星设备上正常播放,并且当我将文件从服务器下载到PC时,它也正常播放。我曾尝试将文件下载到我的Nexus设备,但它仍然无法播放,尝试在
VideoView
中对其进行流式传输,但每次都失败,出现上述错误。我试过从Nexus5上传一段视频,三星设备可以正常播放。我不知道为什么会发生这种情况,有没有人遇到过类似的问题并找到了解决办法,或者我做错了什么

编辑 它无法在任何系统视频播放器中播放,但仍能在三星原装设备上播放。
我还测试了一个较低的分辨率,然后它就可以工作了,所以现在我想我需要找到一种方法,在视频捕获后改变分辨率,或者如果可能的话,发送一条使用特定分辨率的指令。这方面有什么帮助吗?

这些消息并不表示有错误:

E/MediaPlayer﹕ Error (1,-2147483648)
D/MediaPlayer﹕ Couldn't open file on client side, trying server side
因为流媒体内容只能在服务器端打开,所以您可以获得这些信息。在这些错误之后,您应该会得到另一个错误,例如错误(1,-1001)。S4很可能使用Nexus 5不支持的配置文件

至于分辨率,您使用的intent API仅支持2种质量设置(高和低)。低意味着真的低,并且依赖于设备

要更好地控制视频捕获,可以使用摄像头和MediaRecorder界面。有一个导游在

对于更高级的示例,有一个示例项目位于