【问题标题】:iOS Upload Video with video information GTLServiceYoutubeiOS 上传带有视频信息的视频 GTLServiceYoutube
【发布时间】:2016-07-04 19:09:58
【问题描述】:


我想将视频上传到 youtube 频道。我尝试使用以下代码。下面的代码可以上传视频,但问题是,我无法附加其信息(视频标题、描述和标签)。上传后仅显示视频标题作为“未知”,没有标签或描述。
我见过CodingTofuDev7Dev Blog- iOS Sample Code 和许多其他问答,但我不明白我在哪里犯了错误。

    NSString* title = video.title;
    NSString* description = video.videoDescription;
    NSData* data = video.data;
    NSMutableArray* tags = video.tags.mutableCopy;

    GTLYouTubeVideo *yVideo = [GTLYouTubeVideo object];
    GTLYouTubeVideoSnippet *snippet = [GTLYouTubeVideoSnippet alloc];
    snippet.title = title;
    snippet.descriptionProperty = description;

    [tags addObject:DEFAULT_KEYWORD];
    NSString* tag = [UploadController generateKeywordFromPlaylistId:UPLOAD_PLAYLIST];
    [tags addObject:tag];
    snippet.tags = tags;

    GTLYouTubeVideoStatus *status = [GTLYouTubeVideoStatus alloc];
    status.privacyStatus = @"public";

    GTLUploadParameters *uploadParameters = [GTLUploadParameters uploadParametersWithData:data MIMEType:@"video/*"];
    GTLQueryYouTube *query = [GTLQueryYouTube queryForVideosInsertWithObject:yVideo part:@"snippet,status" uploadParameters:uploadParameters];
    service.uploadProgressBlock = ^(GTLServiceTicket* ticket, unsigned long long totalBytesUploaded, unsigned long long totalBytesExpectedToUpload){
        CGFloat percentage = totalBytesUploaded/totalBytesExpectedToUpload;
        NSLog(@"\nUploaded percentage %%(%0.2f)",percentage);
    };
    [service executeQuery:query completionHandler:^(GTLServiceTicket *ticket, GTLYouTubeVideo *insertedVideo, NSError *error) {
            //[waitIndicator dismissWithClickedButtonIndex:0 animated:YES];
            if (error == nil)
            {
                NSLog(@"File ID: %@", insertedVideo.identifier);

                return;
            }
            else
            {
                NSLog(@"An error occurred: %@", error);

                return;
            }
        }];


如果您需要更多详细信息,请告诉我
谢谢。
对不起,我的英语不好。

【问题讨论】:

    标签: ios objective-c video youtube youtube-data-api


    【解决方案1】:

    我弄错了, 在上面的代码中,我必须添加

    GTLYouTubeVideo *yVideo = [GTLYouTubeVideo object];
    GTLYouTubeVideoStatus *status = [GTLYouTubeVideoStatus alloc];
    GTLYouTubeVideoSnippet *snippet = [GTLYouTubeVideoSnippet alloc];
    *******
    *******
    *******
    yVideo.snippet = snippet;//This part i forgot to add in my code
    yVideo.status = status;//This part i forgot to add in my code
    [service executeQuery........
    

    这可能对面临同样问题的人有所帮助。

    【讨论】:

    • 嗨@Vatsal Shukla,你能告诉我这个任务需要哪些 Pod 库吗?
    猜你喜欢
    • 2017-01-05
    • 1970-01-01
    • 1970-01-01
    • 2016-08-19
    • 1970-01-01
    • 2019-07-07
    • 2011-07-20
    • 1970-01-01
    • 2015-05-05
    相关资源
    最近更新 更多