再開可能なアップロードを使用しているときに、ビデオをプレイリストに追加する方法を知っている人はいますか?
これを明確にさせてください。以下は私のコードです。
Video newVideo = new Video();
newVideo.Title = fileName.Split(".".ToCharArray())[0];
newVideo.Tags.Add(new MediaCategory("Nonprofit", YouTubeNameTable.CategorySchema));
newVideo.Description = DateTime.Now.ToShortDateString();
newVideo.YouTubeEntry.Private = false;
ResumableUploader m_ResumableUploader = null;
Authenticator YouTubeAuthenticator;
m_ResumableUploader = new ResumableUploader(100); //chunksize 1 MB
m_ResumableUploader.AsyncOperationCompleted += new AsyncOperationCompletedEventHandler(m_ResumableUploader_AsyncOperationCompleted);
m_ResumableUploader.AsyncOperationProgress += new AsyncOperationProgressEventHandler(m_ResumableUploader_AsyncOperationProgress);
YouTubeAuthenticator = new ClientLoginAuthenticator("YouTubeUploader", ServiceNames.YouTube, ConfigurationManager.AppSettings["USERNAME"].ToString(), ConfigurationManager.AppSettings["PASSWORD"].ToString());
YouTubeAuthenticator.DeveloperKey = ConfigurationManager.AppSettings["DEVELOPER_KEY"].ToString();
string contentType = MediaFileSource.GetContentTypeForFileName(fileName);
newVideo.MediaSource = new MediaFileSource(filePath, contentType);
AtomLink link = new AtomLink("http://uploads.gdata.youtube.com/resumable/feeds/api/users/<username>/uploads");
link.Rel = ResumableUploader.CreateMediaRelation;
newVideo.YouTubeEntry.Links.Add(link);
System.IO.FileStream stream = new System.IO.FileStream(filePath, System.IO.FileMode.Open, System.IO.FileAccess.Read);
m_ResumableUploader.InsertAsync(YouTubeAuthenticator, newVideo.YouTubeEntry, new object());
ビデオをプレイリストに直接アップロードしようとしています。
私はこのコードを見ていますが、2 つを接続するのに苦労しています。助けが必要。
https://developers.google.com/youtube/2.0/developers_guide_dotnet
動画をプレイリストに追加する
PlayListMember オブジェクトを使用して、ビデオをプレイリストに追加できます。次のコードは、既知の ID 値を持つ PlayListMember オブジェクトを作成し、それを Playlist オブジェクト (p) に追加します。要求では、動画が再生リストに表示される位置が指定されていないため、新しい動画は再生リストの最後に追加されます。
// For Playlist object p
PlayListMember pm = new PlayListMember();
// Insert <id> or <videoid> for video here
pm.Id = VIDEOID;
request.AddToPlaylist(p, pm);
更新 1 - プレイリストに追加するときに「サポートされていない URI 形式」エラーが表示されます。
YouTubeRequestSettings ys = new YouTubeRequestSettings("YouTubeUploader",
ConfigurationManager.AppSettings["DEVELOPER_KEY"].ToString());
YouTubeRequest ytr = new YouTubeRequest(ys);
Video v = ytr.ParseVideo(e.ResponseStream);
PlayListMember pm = new PlayListMember();
Feed<Playlist> userPlaylists = ytr.GetPlaylistsFeed(ytr.Credentials.Username);
foreach (Playlist p in userPlaylists.Entries)
{
fs.WriteLine(p.Title);
if (p.Title == "Test 2")
{
pm.Id = v.VideoId;
ytr.AddToPlaylist(p, pm);
fs.WriteLine("Added To Playlist ");
}
}