private void m_browseButton_Click(object sender, RoutedEventArgs e)
        {
            if (null != m_asset)
            {
                var asset = m_asset;
                m_asset      = null;
                DataContext  = null;
                m_img.Source = null;
            }

            OpenFileDialog dlg = new OpenFileDialog();

            dlg.Multiselect     = false;
            dlg.CheckFileExists = true;
            dlg.CheckPathExists = true;
            bool?result = dlg.ShowDialog(this);

            if (result.HasValue && result.Value)
            {
                m_fileTextBox.Text = dlg.FileName;
                m_asset            = MediaAnalyzer.AnalyzeAssetFile(m_fileTextBox.Text);
                DataContext        = m_asset;
                using (MemoryStream ms = new MemoryStream(m_asset.ThumbnailImageBytes))
                {
                    BitmapImage img = new BitmapImage();
                    img.BeginInit();
                    img.CacheOption  = BitmapCacheOption.OnLoad;
                    img.StreamSource = ms;
                    img.EndInit();
                    m_img.Source = img;
                }
            }
        }
Ejemplo n.º 2
0
        private static bool ImportContentFile(IServerSession session, string assetFile, ContentAssetType type)
        {
            Console.Write("Analyzing {0} file \"{1}\"...", type, assetFile);
            AssetInfo imageInfo = MediaAnalyzer.AnalyzeAssetFile(assetFile);

            if (!string.IsNullOrEmpty(imageInfo.ErrorMessage))
            {
                Console.WriteLine("failed: {0}", imageInfo.ErrorMessage);
                return(false);
            }
            else
            {
                Console.WriteLine("success");
            }

            string thumbnailFile = Path.Combine(Path.GetTempPath(), new Oid().ToString() + ".jpg");

            File.WriteAllBytes(thumbnailFile, imageInfo.ThumbnailImageBytes);
            try
            {
                IContent content = session.ModelFactory.CreateContent();
                content.DurationInMilliseconds = 5000;
                content.Format      = ContentFormat.Landscape;
                content.Name        = type.ToString() + " Content";
                content.ResolutionX = imageInfo.Width.Value;
                content.ResolutionY = imageInfo.Height.Value;

                Console.Write("Importing {0} content...", type);
                using (var result = session.DataAccess.Brokers.Content.ImportContentFromAssetFile(assetFile, type, content, thumbnailFile, new ContentImportOptions()))
                {
                    if (result.IsSuccess)
                    {
                        Console.WriteLine("success");
                        return(true);
                    }
                    else
                    {
                        Console.WriteLine("failed: {0}", result.ToString());
                        return(false);
                    }
                }
            }
            finally
            {
                File.Delete(thumbnailFile);
            }
        }