【问题标题】:Video is running but shows only black screen in Xamarin视频正在运行,但在 Xamarin 中仅显示黑屏
【发布时间】:2017-03-07 06:39:22
【问题描述】:

我创建了一个名为raw 的文件夹并添加了tutorial.mp4 并尝试在VideoView 上运行它。

我可以看到视频的时长,但视频全黑,不显示实际视频。

我在 Xamarin Android Player 模拟器上运行。我想知道我失踪了吗?

using Uri = Android.Net.Uri;


var videoView = view.FindViewById<VideoView>(Resource.Id.myVideo);
var uri = Uri.Parse("android.resource://" + this.Activity.BaseContext.PackageName  + "/raw/tutorial");
videoView.SetVideoURI(uri);
videoView.Start();

【问题讨论】:

    标签: android xamarin xamarin.android


    【解决方案1】:

    如果视频是黑色的(但您可能真的听到了音频),那么模拟器不支持您的视频使用的编解码器。

    使用真实设备或使用不同的模拟器(Google 的 AVD w/Intel Haxm、Visual Studio 的 Android Player、Genymotion)。

    仅供参考:Xamarin Android Player (XAP) 已被弃用一段时间...

    来自原始资源的VideoView:

    var uri = Uri.Parse("android.resource://" + PackageName + "/" + Resource.Raw.B);
    videoView.SetVideoURI(uri);
    

    【讨论】:

    • 我无法听到视频的音频。我使用的是 Windows 7,因此无法添加 Visual Studio Android Player。
    • 我试过Genymotion,它显示"cannot play this video"
    • 我什至尝试过 Genymotion 上的 youtube 链接,但它仍然显示 "cannot play this video"
    • 如果您收到cannot play this video(假设消息在警报弹出对话框中),请尝试不同的.mp4,而不是全部使用VideoView(我必须重新编码大量正确播放基于 H.264 的视频)。
    • @hotspring youtube 链接?您是从 youtube 视频页面获取原始的 .mp4 链接吗?仅供参考:如果您试图绕过他们的 HTML 播放器,这将违反他们的 TOS。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-29
    • 2013-12-09
    • 1970-01-01
    • 2021-12-22
    • 1970-01-01
    相关资源
    最近更新 更多