gpt4 book ai didi

java - "Can' t 播放此视频 "using VideoView on Android Studio...tried many things and it still doesn' t 工作

转载 作者:行者123 更新时间:2023-11-30 00:12:51 25 4
gpt4 key购买 nike

您好,我正在尝试在 Android Studio 应用程序上使用框架布局中的相对布局播放 432x320 .mp4 视频(我已将其手动转换为 .mp4 H.264 格式)。我不断收到“无法播放此视频错误”。

这是我的 .xml 文件(请注意,我在此处的帖子中省略了许多按钮/图像按钮,因为它们无关紧要并且占用了大量空间)...

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.kenneth.alphieii.AlphieII">

<ImageView
android:id="@+id/Robot"
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:src="@drawable/alphie_robot1"
android:scaleType="fitCenter"/>

<TextView android:id="@+id/mytexttester"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello World!"
android:layout_marginTop="19dp"
android:visibility="gone"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true" />


...a bunch of buttons here including Yellowb0...this is not an error

<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">

<VideoView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/videoView"
android:layout_width="250dp"
android:layout_height="150dp"

android:layout_above="@+id/Yellowb0"
android:layout_centerHorizontal="true"
android:visibility="visible" />



</RelativeLayout>

</FrameLayout>

我在这里发布了实际的视频,可以轻松下载...

! https://streamable.com/y01zy

并且我有一张当前界面的图片(注意videoview大小需要调整)

我已经尝试了很多事情,例如...

 mVideoView.setVideoPath("android.resource://com.example.s3project/raw/" +
R.raw.alphie_vidprompt);
mVideoView.start();

和...

    String uriPath = "android.resource://" +
"com.android.engineersdream.ed_video/" + R.raw.alphie_vidprompt;
Uri uri = Uri.parse(uriPath);
mVideoView.setVideoURI(uri);
mVideoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mp) {

mVideoView.start();
}
});

尽管我尝试了向在使用 videoview 视频时遇到类似问题的人提出的建议,但我仍然无法使任何东西正常工作。还有其他建议我可能会失踪吗?我的视频格式不正确吗?在 Android Studio 上是否有另一种更简单的播放视频的方法?谢谢。

编辑:我尝试按照建议将视频 .mp4 文件复制到 SD 卡,但它仍然不起作用。我已将它们放在 Android Manifest.xml 文件中:android.permission.READ_EXTERNAL_STORAGE 和 android.permission.WRITE_EXTERNAL_STORAGE。

这是我对 OnCreate...

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.alphie_ii);
mVideoView = (VideoView)findViewById(R.id.videoView);
push = (ImageButton) findViewById(R.id.On);
//imgButton.setOnClickListener(imgButtonHandler);
final int[] mvids = new int[] { R.raw.alphie_vidprompt, R.raw.alphie_vidcorrect };
for (int i = 0; i < mvids.length; i++) {
try {
String path = Environment.getExternalStorageDirectory() + "/Alphie";
File dir = new File(path);
if (dir.mkdirs() || dir.isDirectory()) {
String str_song_name = i + ".mp4";
CopyRAWtoSDCard(mvids[i], path + File.separator + str_song_name);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}

private void CopyRAWtoSDCard(int id, String path) throws IOException {
InputStream in = getResources().openRawResource(id);
FileOutputStream out = new FileOutputStream(path);
byte[] buff = new byte[1024];
int read = 0;
try {
while ((read = in.read(buff)) > 0) {
out.write(buff, 0, read);
}
} finally {
in.close();
out.close();
}
}

这就是我以前给视频起的名字...

 Uri vidFile = Uri.parse(
Environment.getExternalStorageDirectory().getAbsolutePath()
+ "alphie/alphie_vidprompt");

mVideoView.setVideoURI(vidFile);
mVideoView.start();

我仍然收到相同的消息“无法播放此视频”虽然我还有很多东西要学习,但我仍然不明白为什么必须将视频复制到 SD 卡中。我希望从 res/raw 目录运行它会很容易。

最佳答案

您提供了错误的包名称(com.example.s3projectcom.android.engineersdream.ed_video)。您应该是 com.example.kenneth.alphieiicom.example.kenneth,由您的布局给出。但是您应该使用上下文中的包名称,例如:

getPackageName();

所以在你的情况下你应该使用

"android.resource://".concat(getPackageName()).concat("/raw/").concat(R.raw.alphie_vidprompt);

关于java - "Can' t 播放此视频 "using VideoView on Android Studio...tried many things and it still doesn' t 工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47878282/

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