예제 #1
0
        private void ChangeVideo(PHAsset asset, PHImageManager imageManager,
                                 PHVideoRequestOptions options)
        {
            DispatchQueue.DefaultGlobalQueue.DispatchAsync(() =>
                                                           imageManager?.RequestAvAsset(asset, options,
                                                                                        (ass, mix, info) =>
                                                                                        DispatchQueue.MainQueue.DispatchAsync(() =>
            {
                CurrentMediaType = MediaType.Video;
                _albumView.ImageCropView.Hidden = true;
                _albumView.MovieView.Hidden     = false;

                var urlAsset = ass as AVUrlAsset;
                if (urlAsset == null)
                {
                    return;
                }
                _albumView.MoviePlayerController.ContentUrl = urlAsset.Url;
                _albumView.MoviePlayerController.PrepareToPlay();
            })));
        }
예제 #2
0
파일: img.cs 프로젝트: nidaltiti/NetworkApp
        void exration()
        {   //change
            saveFormGrally.Clear();

            // Imagedata.Clear();
            int            icount       = _multiAsset.Assets.Count();
            string         date         = string.Empty;
            UIImageView    imag         = new UIImageView();
            iEbutton       button       = new iEbutton();
            string         endex        = string.Empty;
            PHImageManager imageManager = new PHImageManager();
            // bool isvideo = false;
            UIImage image1 = new UIImage();

            //  byetdata = new List<byte[]>();
            foreach (PHAsset asset in _multiAsset.Assets)
            {
                save_Plus save    = new save_Plus();
                bool      isvideo = false;

                AVPlayer avplayer = new AVPlayer();

                if (asset.MediaType == PHAssetMediaType.Video)
                {
                    isvideo = true;
                    // NSUrl videoUrl = null;

                    imageManager.RequestAvAsset(asset, null, (avsset, avaudio, NsD) =>
                    {
                        //   string UrlConvertString = null;

                        var videoUrl            = ((AVFoundation.AVUrlAsset)avsset).Url;
                        string UrlConvertString = (videoUrl.AbsoluteString);
                        save.Url       = UrlConvertString;
                        save.Extension = "Video";
                        // UrlVideoString.Add(UrlConvertString);
                    });
                }

                imageManager.RequestImageForAsset(asset,
                                                  new CGSize(asset.PixelWidth, asset.PixelHeight),
                                                  PHImageContentMode.Default,
                                                  null,
                                                  (image, info) =>
                {
                    //  endex = image.AccessibilityPath.ToString();

                    //  endex = "jpg";

                    //

                    if (!isvideo)
                    {
                        save.Image     = image;
                        save.Thumbnail = image;
                        save.Extension = "Image";
                        // byte[] myByteArray;
                        // using (NSData imageData = image.AsPNG())
                        // {
                        //     myByteArray = new Byte[imageData.Length];
                        //     System.Runtime.InteropServices.Marshal.Copy(imageData.Bytes, myByteArray, 0, Convert.ToInt32(imageData.Length));


                        // }


                        // string random = GeneratePassword(7);



                        //// Imagedata.Add(image);
                        //   DataSql.process(library.File(2), library.INSERT(2), DataSql_Parameters(random + ".jpg", myByteArray, "image"));
                        //node
                    } // if isvideo
                    else
                    {
                        save.Thumbnail = image;
                    }
                    isvideo = true;

                    // button.creation(i, image);

                    //  date = DateTime.Now.ToString("MMddHHmmss");
                    icount--;
                    saveFormGrally.Add(save);
                    Thread.Sleep(500);
                });
            }
            //button.getText(date);
            //button.click += Button_TouchUpInside; ;
            // isvideo = false;

            //UIbutton.Add(button);
            //  lab.Text = ImageView.Count.ToString();

            // Imagedata.Add(image1);



            //nd foreach}
            _multiAsset = null;
            todatabese();
            finshpluse = 1;
        }
예제 #3
0
      //puls button;
      private void Picker_FinishedPickingAssets(object sender, MultiAssetEventArgs args)
      {
          UrlVideoString.Clear();
          Imagedata.Clear();
          // Imagedata = null;
          bool    isvideo = false;
          int     i       = buttonnumber;
          PHAsset pHAsset = args.Assets[0];

          // imgView.Image= pHAsset.Location

          //    uIImage. = pHAsset.Location();
          //   List<  UIImage> uIImage = new List<UIImage> ();
          PHImageManager imageManager = new PHImageManager();

          foreach (var asset in args.Assets)
          {  //
              string      date   = string.Empty;
              UIImageView imag   = new UIImageView();
              iEbutton    button = new iEbutton();
              string      endex  = string.Empty;


              UIImage  image1   = new UIImage();
              AVPlayer avplayer = new AVPlayer();
              if (asset.MediaType == PHAssetMediaType.Video)
              {
                  isvideo = true;
                  // NSUrl videoUrl = null;

                  imageManager.RequestAvAsset(asset, null, (avsset, avaudio, NsD) =>
                    {
                        //   string UrlConvertString = null;

                        var videoUrl            = ((AVFoundation.AVUrlAsset)avsset).Url;
                        string UrlConvertString = (videoUrl.AbsoluteString);

                        UrlVideoString.Add(UrlConvertString);
                    });
              }

              imageManager.RequestImageForAsset(asset,
                                                new CGSize(asset.PixelWidth, asset.PixelHeight),
                                                PHImageContentMode.Default,
                                                null,
                                                (image, info) =>
                {
                    //  endex = image.AccessibilityPath.ToString();

                    //  endex = "jpg";

                    //

                    if (isvideo == false)
                    {
                        image1 = image;

                        imag.Image = image;
                        Imagedata.Add(image1);
                        // button.creation(i, image);
                    }

                    //  date = DateTime.Now.ToString("MMddHHmmss");

                    Thread.Sleep(1000);
                });

              //button.getText(date);
              //button.click += Button_TouchUpInside; ;
              isvideo = false;

              //UIbutton.Add(button);
              //  lab.Text = ImageView.Count.ToString();

              // Imagedata.Add(image1);
          }  //end foreach

          // finshpluse = 1;

          //  imgView.Image = uIImage[uIImage.Count-1];



          //  scoll = new UIScrollView();
          //if (scoll.Frame.Height > scoll.Frame.Width )
          //{

          //    scoll.ContentSize = new CGSize(uiv.Frame.Width -70, ImageView.Count * 15);
          //    putimage(50,70,14);

          //}

          //else { scoll.ContentSize = new CGSize(ImageView.Count+20, ImageView.Count * 15);


          //    putimage(80, 90, 40);



          //}
          finshpluse = 1;
          todatabese();
      }