我想在流媒体模式下从服务器播放mp4格式和大小4-5Mb的视频。我正在使用sdk 2.3版,在模拟器上 只发出声音,但没有任何图片。
我还在设备上测试了三星(android sdk ver 2.1)和LG optimus(android sdk ver 2.2) 并且只获得“无法播放视频:抱歉此视频无法播放到此设备”消息。 我已经搜索了这个,但没有得到任何解决方案,如果有人有任何解决方案,请帮助我。谢谢。提前谢谢。
这是我的代码:
public class ShowVideo extends Activity
{
private static ProgressDialog progressDialog;
public String video_url;
private MediaController mediaController;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.videoalbum);
progressDialog = ProgressDialog.show(ShowVideo.this, "", "Buffering video...", true);
getWindow().setFormat(PixelFormat.TRANSLUCENT);
video_url = "http://www.letumobi.com/videouploads/cd0a4170-1fb2-4fba-b17c-b5d70b2cd2e7.mp4";
try {
final VideoView videoView =(VideoView)findViewById(R.id.video_viewId);
mediaController = new MediaController(ShowVideo.this);
mediaController.setAnchorView(videoView);
// Set video link (mp4 format )
Uri video = Uri.parse(video_url);
videoView.setMediaController(mediaController);
videoView.setVideoURI(video);
videoView.setOnPreparedListener(new OnPreparedListener() {
public void onPrepared(MediaPlayer mp) {
progressDialog.dismiss();
videoView.start();
}
});
}catch(Exception e){
progressDialog.dismiss();
System.out.println("Video Play Error :"+e.getMessage());
}
}
答案 0 :(得分:1)
在模拟器上很难播放视频,因为它需要非常快的电脑。尝试使用此链接进行模拟器。也许你可以获得一些离散的视频观点。
http://commonsware.com/misc/test2.3gp
同样在您的真实设备中,如果您的实施正确,此链接应该有效。
我假设您的视频使用以下链接 “http://www.letumobi.com/videouploads/cd0a4170-1fb2-4fba-b17c-b5d70b2cd2e7.mp4 不适合安全流媒体。
您应该提示该视频或播放其他提示视频。我还没有找到任何其他解决方案来播放未提供的视频。
此链接可能有所帮助。
getting PVMFErrContentInvalidForProgressivePlayback error while playing mp4 files on samsung devices
答案 1 :(得分:1)
您可以尝试这些网址(以.3gp结尾):
http://daily3gp.com/vids/747.3gp
http://daily3gp/www/vids/juggling_while_on_unicycle.3gp
而不是.mp4网址:
video_url = "http://www.letumobi.com/videouploads/cd0a4170-1fb2-4fba-b17c-b5d70b2cd2e7.mp4";