无法在 VideoView 中播放视频 - 为什么?
Can't play video in VideoView - why?
我正在尝试在 android 中播放 VideoView 中的视频,但它总是出现 ( 1 -2147483648 ) 错误。
起初,我尝试从 URL 播放,但没有效果,所以我下载了视频,将其保存在 raw 文件夹中并尝试播放,但仍然无法播放。
当我用谷歌搜索错误 ( 1 -2147483648 ) 时,它说这个错误是由于 URL 不正确或格式不兼容等问题造成的,但视频是 .mp4 和 H264 编解码器。
为了播放视频我还应该考虑什么?
//activity
video_view.setMediaController(MediaController(上下文))
val videoPath="android.resource://" + context!!.packageName+ "/" + R.raw.howappvideo
video_view.setVideoURI(Uri.parse(videoPath))
video_view.requestFocus()
video_view.setOnPreparedListener {
Log.i("SeeAllFragment","video is prepared")
try{
video_view.start()
}catch (e:Exception){
Log.i("SeeAllFragment","error while playing ${e.printStackTrace()}")
}
}
video_view.setOnCompletionListener { mp ->
toast("video completed")
mp!!.release()
}
video_view.setOnErrorListener { mp, what, extra ->
Log.i("SeeAllFragment","error while loading video $what $extra ")
true
}
it says that this error occurs due to issues like incorrect URL or
incompatible format but the video is .mp4 with the H264 codec.
=> 原因是 VideoView
在编解码器和其他功能方面没有那么强大和可扩展。
我建议使用 ExoPlayer 库。
VideoView
无法播放视频有多种原因,其中一个原因是当您使用 iPhone、摄像机等其他设备进行录制时。它们的格式不同可能不支持的视频,也可能不支持编解码器。在这种情况下,当我们开发解决方案并涉及 android/iPhone/TV 或其他媒体时,我们会在后端实施代码以维护单个编解码器,这就是我们保持与所有设备的兼容性的方式。
我正在尝试在 android 中播放 VideoView 中的视频,但它总是出现 ( 1 -2147483648 ) 错误。
起初,我尝试从 URL 播放,但没有效果,所以我下载了视频,将其保存在 raw 文件夹中并尝试播放,但仍然无法播放。 当我用谷歌搜索错误 ( 1 -2147483648 ) 时,它说这个错误是由于 URL 不正确或格式不兼容等问题造成的,但视频是 .mp4 和 H264 编解码器。 为了播放视频我还应该考虑什么?
//activity
video_view.setMediaController(MediaController(上下文))
val videoPath="android.resource://" + context!!.packageName+ "/" + R.raw.howappvideo
video_view.setVideoURI(Uri.parse(videoPath))
video_view.requestFocus()
video_view.setOnPreparedListener {
Log.i("SeeAllFragment","video is prepared")
try{
video_view.start()
}catch (e:Exception){
Log.i("SeeAllFragment","error while playing ${e.printStackTrace()}")
}
}
video_view.setOnCompletionListener { mp ->
toast("video completed")
mp!!.release()
}
video_view.setOnErrorListener { mp, what, extra ->
Log.i("SeeAllFragment","error while loading video $what $extra ")
true
}
it says that this error occurs due to issues like incorrect URL or incompatible format but the video is .mp4 with the H264 codec.
=> 原因是 VideoView
在编解码器和其他功能方面没有那么强大和可扩展。
我建议使用 ExoPlayer 库。
VideoView
无法播放视频有多种原因,其中一个原因是当您使用 iPhone、摄像机等其他设备进行录制时。它们的格式不同可能不支持的视频,也可能不支持编解码器。在这种情况下,当我们开发解决方案并涉及 android/iPhone/TV 或其他媒体时,我们会在后端实施代码以维护单个编解码器,这就是我们保持与所有设备的兼容性的方式。