gpt4 book ai didi

android - 如何从远程 URL 在 Android 模拟器中显示视频?

转载 作者:太空宇宙 更新时间:2023-11-03 12:43:34 24 4
gpt4 key购买 nike

我正在使用以下代码在 android 模拟器中显示视频文件,当视频文件存储在 SD 卡中时它工作正常。但是当我提供视频的任何 URL 时,代码不起作用。

import android.app.Activity;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.view.SurfaceHolder;
import android.view.View;
import android.widget.*;

public class playerActivity extends Activity
{
Button b;
VideoView preview;
SurfaceHolder holder;
MediaPlayer mp;

private String path = "/data/data/payoda.android/funny.mp4";

//private String path = "http://www.daily3gp.com/vids/3.3gp";

public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
preview=(VideoView)findViewById(R.id.surface);
holder=preview.getHolder();
b=(Button)findViewById(R.id.cmd_play);
b.setOnClickListener(new View.OnClickListener()
{
public void onClick(View v)
{
try
{
mp=new MediaPlayer();
mp.setDataSource(path);
mp.setScreenOnWhilePlaying(true);
mp.setDisplay(holder);
mp.prepare();
mp.start();
}
catch(Exception e)
{

}
}
});
}
}

异常thorwn是:

prepare failed:
status=0xC8

LogCat 详细信息是:

09-16 12:16:36.729: ERROR/PlayerDriver(542): Command PLAYER_INIT completed with an error or info PVMFErrContentInvalidForProgressivePlayback
09-16 12:16:36.739: ERROR/MediaPlayer(2867): error (200, -27)

在上面的代码中,如果更改路径变量,模拟器屏幕是黑色的,只有一个按钮。可能我需要做更多的事情来显示来自远程 URL 的视频,我不知道该怎么做。任何人有任何关于这个的想法请帮助我。

最佳答案

首先,不要使用模拟器测试视频播放。它处理视频播放的能力非常有限。使用实际的 Android 设备。

其次,当您遇到多媒体问题时,请始终检查 LogCat(adb logcat、DDMS 或 Eclipse 中的 DDMS 透视图)以获取警告。 OpenCORE——Android 使用的多媒体引擎——倾向于将错误级别的情况记录为警告。

例如,您的视频文件可能未设置为渐进式下载,而这是 HTTP 流式传输所必需的。在 Linux 上,您可以通过安装 MP4Box 并运行 MP4Box -hint <file> 来修补 MP4 视频以进行渐进式下载。 .

关于android - 如何从远程 URL 在 Android 模拟器中显示视频?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1425502/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com