void TryAddAudioMix()
        {
            AVAudioMix audioMix = AudioTapProcessor.AudioMix;

            if (audioMix == null)
            {
                return;
            }

            // Add audio mix with first audio track.
            Player.CurrentItem.AudioMix = audioMix;

            // Enable settings popover button.
            SettingsPopoverButton.Enabled = true;
        }
Example #2
0
            private void RequestAvAssetHandler(AVAsset asset, AVAudioMix audioMix, NSDictionary info)
            {
                var videoUrl = (asset as AVUrlAsset).Url;
                //var temp3 = NSData.FromFile (videoUrl.AbsoluteString);
                var temp4 = NSData.FromUrl(videoUrl);

                string [] paths        = NSSearchPath.GetDirectories(NSSearchPathDirectory.CachesDirectory, NSSearchPathDomain.User);
                string    downloadPath = paths [0];
                var       filePath     = Path.Combine(downloadPath, Path.GetFileName(videoUrl.AbsoluteString));
                NSError   error;
                bool      saveResult = temp4.Save(filePath, NSDataWritingOptions.Atomic, out error);

                if (saveResult)
                {
                    Debug.WriteLine("Save Success");
                    var    url      = NSUrl.FromFilename(filePath);
                    var    avAsset  = AVAsset.FromUrl(url);
                    CMTime duration = asset.Duration;
                }
                else
                {
                    Debug.WriteLine(error);
                }
            }