当前位置: 首页 > 知识库问答 >
问题:

如何在xamarin iOS中使用AVPlayerViewController(AVKit)播放视频

李星辰
2023-03-14

如何在xamariniOS中使用AVPlayerLayer和AVPlayerViewController播放视频?

playerItem = new AVPlayerItem(new NSUrl("https://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4"));
        player = new AVPlayer(playerItem);
        AVcontroller.Player = player;
        AVcontroller.View.Layer.Frame = this.View.Bounds;
        this.View.AddSubview(AVcontroller.View);
        //AVcontroller.SetFullscreen(true, true);
        AVcontroller.Player.Play();

共有2个答案

荣俊
2023-03-14

播放视频有两种方法,选择其中一种,就像代码一样:

 public override void ViewDidLoad ()
    {
        //Set the movie file path
        string moviePath = NSBundle.MainBundle.PathForResource ("loadingAnimation", "mov");
        NSUrl movieUrl = NSUrl.FromFilename (moviePath);

        //Using MPMoviePlayerController(using MediaPlayer)
        MPMoviePlayerController mpC = new MPMoviePlayerController (movieUrl);
        mpC.ControlStyle = MPMovieControlStyle.None;
        mpC.View.Frame = new CGRect (50, 50, 200, 200);
        mpC.View.BackgroundColor = UIColor.Clear;
        mpC.ShouldAutoplay = true;
        this.Add (mpC.View);
        mpC.Play ();

        //Using AVPlayer(using AVFoundation)
        AVPlayer avPlayer;
        AVPlayerLayer playerLayer;
        AVAsset asset;
        AVPlayerItem playerItem;
        asset = AVAsset.FromUrl (movieUrl);
        playerItem = new AVPlayerItem (asset);
        avPlayer = new AVPlayer (playerItem);
        playerLayer = AVPlayerLayer.FromPlayer (avPlayer);
        playerLayer.Frame = new CGRect (50, 300, 200, 200);
        View.Layer.AddSublayer (playerLayer);
        avPlayer.Play ();
    }

希望它能帮助你。

淳于昊然
2023-03-14
AVPlayer avp;
AVPlayerViewController avpvc;


var url = NSUrl.FromString(yourURL);
            avp = new AVPlayer(url);
            avpvc = new AVPlayerViewController();
            avpvc.Player = avp;
            AddChildViewController(avpvc);
            View.AddSubview(avpvc.View);
            avpvc.View.Frame = View.Frame;
            avpvc.ShowsPlaybackControls = true;
            avp.Play();

这一切都在viewDidLoad中完成,现在工作正常。

 类似资料:
  • 问题内容: 如何在Swift中使用AV Kit Player View Controller播放视频? 问题答案: 雨燕3.x-5.x 必要: 导入AVKit , 导入AVFoundation 即使使用AVPlayer,也需要AVFoundation框架 如果要使用 AVPlayerViewController : 或只是 AVPlayer : 最好将此代码放入方法中: 覆盖func viewDi

  • 我正在用xamarin开发一个应用程序,用户可以用它来播放电影。我需要应用程序从内存流播放电影,而不是直接从url或文件。是否有一个播放器控件或库,我可以使用它来播放来自mmemory流的电影?

  • 我有一个要求,我需要使用Android media player播放widevine DRM内容。我还听说过一种叫做ExoPlayer的东西,它内置了对widevine DRM内容的支持。 首先,我想知道使用上述任一媒体播放器开始播放此类内容所需的先决条件是什么。

  • 我正在制作RSS阅读器应用程序,我从URL获取RSS数据,RSS数据可以包含到YouTube视频链接。 下面是一个链接到youtube vide的例子: 而当我运行我的应用程序时,没有视频,全是黑色的,我无法播放。

  • 我正在开发一个应用程序,我使用了谷歌的ExoPlayer,它工作起来很有魅力,现在我想在我的应用程序中添加RTSP支持,但使用ExoPlayer我无法播放,请任何人都可以帮我,如果有人有其他选择,请与我分享。 日志 E/ExoPlayerImplInternal:源错误。网蝴蝶电视。rtmp_客户端。RtmpClient$RtmpIOException at net。蝴蝶电视。rtmp_客户端。R

  • 问题内容: 我将n avplayer放置在视图控制器中,以自定义视图控制器的其他一些元素,但是我仍然想要AVPlayerViewController中使用的播放和清理控件。当我不使用AvPlayerViewcontroller时,是否可以为Avplayer启用这些控件? 问题答案: 否。通常的解决方案(Apple明确建议)是将AVPlayerViewController用作嵌入式视图控制器-即,使