Android – 无法播放任何视频(mp4 / mov / 3gp /等)?

前端之家收集整理的这篇文章主要介绍了Android – 无法播放任何视频(mp4 / mov / 3gp /等)?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我很难让我的 Android应用程序播放SD卡中的视频.无论大小,比特率​​,视频格式或我能想到的任何其他设置都无关紧要,模拟器和我的G1都不会播放我尝试编码的任何内容.我也尝试了一些来自网络的视频(各种视频格式,比特率,有和没有音频轨道等),但这些都没有.

我不断得到的是一个对话框,上面写着:

“无法播放视频”

“抱歉,这部影片无法播放.”

在LogCat中报告了错误,但我不理解它们,我试图在互联网上搜索没有任何运气的进一步解释.见下文:

03-30 05:34:26.807: ERROR/QCOmxcore(51): OMXCORE API :  Free Handle 390d4
03-30 05:34:26.817: ERROR/QCOmxcore(51):  Unloading the dynamic library for OMX.qcom.video.decoder.avc
03-30 05:34:26.817: ERROR/PlayerDriver(51): Command PLAYER_PREPARE completed with an error or info PVMFErrNoResources
03-30 05:34:26.857: ERROR/MediaPlayer(14744): error (1,-15)03-30 05:34:26.867: ERROR/MediaPlayer(14744): Error (1,-15)

有时我也得到这个:

03-30 05:49:49.267: ERROR/PlayerDriver(51): Command PLAYER_INIT completed with an error or info PVMFErrResource
03-30 05:49:49.267: ERROR/MediaPlayer(19049): error (1,-17)
03-30 05:49:49.347: ERROR/MediaPlayer(19049): Error (1,-17)

这是我正在使用的代码(在我的onCreate()方法中):

this.setContentView(R.layout.main);
//just a simple VideoView loading files from the SD card
VideoView myIntroView = (VideoView) this.findViewById(R.id.VideoView01);
MediaController mc = new MediaController(this);
myIntroView.setMediaController(mc);
myIntroView.setVideoPath("/sdcard/test.mp4");
myIntroView.requestFocus();
myIntroView.start();

请帮忙!

解决方法

好的,这里有.我一直在Adobe Premiere上工作的视频应该是480×800(WxH),但是我有Adobe Media Encoder使用“UYVY”视频编解码器输出序列作为“未压缩的Microsoft AVI”,帧速率为24fps,渐进式,方形像素和尺寸:720×800(WxH).这会在视频内容的两侧输出一个相当大的文件,其中包含120px黑色边框.然后我将视频带入Handbrake 0.9.4并使用以下设置(我从Regular-> Normal预设开始):
Container: MP4 File
Large file size: [un-Checked]
Web-optimized: [un-Checked]
iPod 5G support: [un-Checked]

Width: 320 (this is key,any higher than 320 and it won’t work)
Height: 528
Keep Aspect Ratio: [Checked]
Anamorphic: None

Crop Left: 120
Crop Right: 120

Everything under the "Video Filter" tab set to "Off"

Video Codec: H.264(x264)
Framerate: same as source
2-Pass Encoding: [Checked]
Turbo first pass: [un-Checked]
Avg Bitrate: 384

Create chapter markers: [un-Checked]

Reference Frames: 2
Mixed References: [un-Checked]
B-Frames: 0
Motion Estimation Method: Uneven Multi-Hexagon
Sub-pixel Motion Estimation: 9
Motion Estimation Range: 16
Analysis: Default
8x8 DCT: [un-Checked]
CABAC Entropy Coding: [un-Checked]
No Fast-P-Skip: [un-Checked]
No DCT-Decimate: [un-Checked]
Deblocking: Default,Default
Psychovisual Rate Distortion: [MAX]

我的主要问题是我试图输出480×800(WxH)尺寸的mp4文件.将宽度更改为320(更高的值不起作用),但保持正确的宽高比后,输出视频现在可以正常播放.我希望这可以帮助其他有类似问题的人.

旁注:我希望Android视频限制得到更好的记录.

猜你在找的Android相关文章