2016-04-05 15 views
2

C# kullanıyorum, youtube kanalımı başarıyla yükleyebilirim. Şimdi video yüklemek istiyorum küçük resim içerir.Youtube videosunu ve küçük resmini aynı anda yükleyebilir miyim?

private static async Task Upload(FileInfo Vidf) 
    { 
     //2.1 Get credentials 
     UserCredential credentials; 

     //2.1.1 Use https://console.developers.google.com/ to get the json file (Credential section) 
     using (var stream = new FileStream(APIjson, FileMode.Open, FileAccess.Read)) 
     { 
      credentials = await GoogleWebAuthorizationBroker.AuthorizeAsync(
       GoogleClientSecrets.Load(stream).Secrets, 
       new[] { YouTubeService.Scope.YoutubeUpload }, 
       "user", 
       CancellationToken.None); 
     } 

     //2.2 Create a YoutubeService instance using our credentials 
     var youtubeService = new YouTubeService(new BaseClientService.Initializer() 
     { 
      HttpClientInitializer = credentials, 
      ApplicationName = Assembly.GetExecutingAssembly().GetName().Name 
     }); 


     //2.3 Create a video object 
     var video = new Video() 
     { 
      Id = Vidf.Name, 
      Status = new VideoStatus 
      { 
       PrivacyStatus = "private" 
      }, 
      Snippet = new VideoSnippet 
      { 
       Title = "...", 
       Description = "...", 
      } 
     }; 

     var filePath = Vidf.FullName; 
     filesize = Vidf.Length; 
     //2.4 Read and insert the video in youtubeService 
     using (var fileStream = new FileStream(filePath, FileMode.Open)) 
     { 
      var videosInsertRequest = youtubeService.Videos.Insert(video, "snippet,status", fileStream, "video/*"); 
      videosInsertRequest.ProgressChanged += ProgressChanged; 
      videosInsertRequest.ResponseReceived += ResponseReceived; 

      //2.4.1 Wait for the upload process 
      await videosInsertRequest.UploadAsync(); 
     } 


     var tpath = Vidf.FullName.Replace("mp4", "jpg"); 

     using (var tStream = new FileStream(tpath, FileMode.Open)) 
     { 
      var tInsertRequest = youtubeService.Thumbnails.Set(video.Id, tStream, "image/jpeg"); 
      tInsertRequest.ProgressChanged += ProgressChanged; 

      await tInsertRequest.UploadAsync(); 
     } 

    } 

i ilk video yükleyebilir ve videoyu işleme bitmiş youtube beklemek zorunda yapın: Ben hata ayıklama hiçbir hata var ama küçük resim yüklemek vermedi, işte kodudur. Sonra video kimliğini almak ve söz konusu video kimliğine sahip küçük resmi gönderilmesi gerekiyor ResponseReceived fonksiyonu

static void ResponseReceived(Video video) 
    { 
     VidID = video.Id; 
    } 

global var "VidID" ve set değer yaratmak bu bağlantı https://developers.google.com/youtube/v3/docs/thumbnails/set#examples

+0

Bu hatayı aldığım https://picasaweb.google.com/lh/photo/dRjgLlIS1Kyd-cST-h7-jkzD0UGBzob7Vodjzm8Pv-Q. Yani bu ilk önce yüklemeniz gerekir ve youtube tüm görevi tamamladı. sonra küçük resmi yükle, doğru muyum? – Sicay

cevap

1

örnek kodu gibi küçük resimler yükleme.

İlgili konular