コード例 #1
0
ファイル: YoutubeUploader.cs プロジェクト: Suzumebati/RecMove
        /// <summary>
        /// アップロードを行う
        /// </summary>
        /// <param name="youtubeService"></param>
        /// <param name="item"></param>
        /// <param name="index"></param>
        /// <returns></returns>
        private async Task UploadFile(YouTubeService youtubeService, YoutubeUploadItem item, int index)
        {
            var video = new Video
            {
                Snippet = new VideoSnippet
                {
                    Title       = item.GetFormatedTitle(this.uploadTitleFormat, index),
                    Description = item.GetFormatedTitle(this.uploadTitleFormat, index),
                    CategoryId  = "20"  //ゲームカテゴリ
                },
                Status = new VideoStatus
                {
                    PrivacyStatus = "unlisted"
                }
            };

            using (var fileStream = new FileStream(item.FilePath, FileMode.Open))
            {
                var videosInsertRequest = youtubeService.Videos.Insert(video, "snippet,status", fileStream, "video/*");
                videosInsertRequest.ProgressChanged  += VideosInsertRequest_ProgressChanged;
                videosInsertRequest.ResponseReceived += VideosInsertRequest_ResponseReceived;
                // 実際のアップロードを実行する
                await videosInsertRequest.UploadAsync();
            }
        }
コード例 #2
0
        /// <summary>
        /// コンストラクタ
        /// </summary>
        /// <param name="srcFiles"></param>
        public YoutubeUploadWindow(IEnumerable <string> srcFiles)
        {
            InitializeComponent();

            var data = new ObservableCollection <YoutubeUploadItem>();

            foreach (var file in srcFiles)
            {
                var fileInfo = new System.IO.FileInfo(file);
                var item     = new YoutubeUploadItem()
                {
                    IsUpload       = true,
                    FilePath       = file,
                    FileUpdateTime = fileInfo.LastWriteTime,
                    FileSize       = fileInfo.Length,
                    FileSizeMByte  = Convert.ToInt32(fileInfo.Length / 1024 / 1024)
                };
                data.Add(item);
                uploadItemList.Add(item);
            }

            // グリッドにバインド
            MovieList.ItemsSource = data;
        }