Example #1
0
    public async Task UploadToYouTube(HttpPostedFile postedFile, string title)
    {
        UploadingDispatcher.SetProgress(uploadId, 2);
        Video video = new Video();

        video.Title = title;
        video.Tags.Add(new MediaCategory("Autos", YouTubeNameTable.CategorySchema));
        video.Private     = false;
        video.MediaSource = new MediaFileSource(postedFile.InputStream, postedFile.FileName, postedFile.ContentType);

        var link = new AtomLink("http://uploads.gdata.youtube.com/resumable/feeds/api/users/default/uploads");

        link.Rel = ResumableUploader.CreateMediaRelation;
        video.YouTubeEntry.Links.Add(link);

        var youtubeApiKey    = ConfigurationManager.AppSettings["youtubeApiKey"];
        var applicationName  = ConfigurationManager.AppSettings["applicationName"];
        var youtubeUserName  = ConfigurationManager.AppSettings["youtubeUserName"];
        var youtubePassword  = ConfigurationManager.AppSettings["youtubePassword"];
        var youtubeChunksize = int.Parse(ConfigurationManager.AppSettings["youtubeChunksize"]);

        var resumableUploader = new ResumableUploader(youtubeChunksize);

        resumableUploader.AsyncOperationCompleted += resumableUploader_AsyncOperationCompleted;
        resumableUploader.AsyncOperationProgress  += resumableUploader_AsyncOperationProgress;


        var youTubeAuthenticator = new ClientLoginAuthenticator(applicationName, ServiceNames.YouTube, youtubeUserName, youtubePassword);

        youTubeAuthenticator.DeveloperKey = youtubeApiKey;

        resumableUploader.InsertAsync(youTubeAuthenticator, video.YouTubeEntry, uploadId);
    }
Example #2
0
 private void resumableUploader_AsyncOperationCompleted(object sender, AsyncOperationCompletedEventArgs e)
 {
     try
     {
         var   request = GetRequest();
         Video video   = request.ParseVideo(e.ResponseStream);
         videoId     = video.VideoId;
         videoStatus = video.Status;
         UploadingDispatcher.SetProgress(uploadId, 100);
     }
     catch (Exception ex)
     {
         //Upload has been disturbed.
     }
 }
Example #3
0
    private void resumableUploader_AsyncOperationProgress(object sender, AsyncOperationProgressEventArgs progress)
    {
        var uploadProgess = progress.ProgressPercentage;

        UploadingDispatcher.SetProgress(uploadId, uploadProgess);
    }