2011-04-27 5 views
6

내 앱에서 YouTube에 비디오를 업로드하기 위해 Google의 GData API를 사용하고 있습니다. 업로드는 정상적으로 작동하지만 업로드 된 비디오의 품질은 360p이고 원본 비디오의 품질은 720p입니다.Youtube Upload 품질

의도 한대로 작동합니까? 그렇다면 내 앱이 본사 영화를 업로드 할 수 있도록이 동영상 압축과 관련하여 어떤 방법이 있습니까?

동영상 업로드를 위해 사용하는 코드는 다음과 같습니다.

GDataYouTubeMediaGroup *mediaGroup = [GDataYouTubeMediaGroup mediaGroup]; 
[mediaGroup setMediaTitle:title]; 
[mediaGroup setMediaDescription:desc]; 
[mediaGroup addMediaCategory:category]; 
[mediaGroup setMediaKeywords:keywords]; 
[mediaGroup setIsPrivate:NO]; 

NSString *mimeType = [GDataUtilities MIMETypeForFileAtPath:outputURL.relativePath defaultMIMEType:@"video/quicktime"]; 

GDataEntryYouTubeUpload *entry; 
entry = [GDataEntryYouTubeUpload uploadEntryWithMediaGroup:mediaGroup data:data MIMEType:mimeType slug:filename]; 

SEL progressSel = @selector(ticket:hasDeliveredByteCount:ofTotalByteCount:); 
[service setServiceUploadProgressSelector:progressSel]; 

GDataServiceTicket *ticket; 
ticket = [service fetchEntryByInsertingEntry:entry forFeedURL:url delegate:self didFinishSelector:@selector(uploadTicket:finishedWithEntry:error:)]; 

브렌 튼

+0

마찬가지로 480p 비디오를 업로드했지만 720p를 시도하지 않았습니다. 긴 코드이지만, 코드에서 가장 큰 차이점은'@ "video/mp4"'mime 형식을 사용하고 있다는 것입니다. –

답변

1

YouTube 고객 트랜스 코딩 파이프 라인은 비디오의 HQ/HD 버전을 생성해야하는지 여부를 결정하기 위해 비디오 파일 자체에 보인다. gdata API 호출에서 함께 전달할 내용은 중요하지 않습니다.

트랜스 코딩 파이프 라인에서 찾는 대상은 평균 비트 전송률뿐 아니라 비디오 크기도 포함됩니다. 예를 들어, 비트 전송률이 매우 낮은 720p 비디오는 HD 또는 HQ 인코딩에 적합하지 않을 수 있습니다. 간혹 잘못 인코딩 된 비디오로 인해 잘못된 비디오 크기 나 비트 전송률이 트랜스 코더에서 해석 될 수 있으므로 비디오 인코더가 이상한 일을하지 않도록하십시오.

+0

현재 동일한 문제가 있습니다. 조금 더 확장 할 수 있습니까? UIImagePickerController로 찍은 비디오를 720p로 업로드 할 수있는 방법이 있습니까? – zakdances

+0

오랫동안 YouTube API를 사용 해본 적이 없지만 UIImagePickerController를 설정하여 최고 품질의 비디오를 사용하고 소스 비디오를 720p/1080p 가능 iPhone에서 가져온 것으로 생각합니다. iPhone 4 이상), YouTube는 업로드 된 비디오를 720p (또는 그 이상)에서 재생할 수 있어야합니다. 'imagePicker.videoQuality = UIImagePickerControllerQualityTypeHigh; '를 설정하고 있는지 확인하십시오. – Ziconic