2011-04-27 4 views
6

मैं अपने ऐप से यूट्यूब पर एक वीडियो अपलोड करने के लिए Google की GData API का उपयोग कर रहा हूं। अपलोड ठीक काम करता है हालांकि अपलोड किए गए वीडियो की गुणवत्ता केवल 360 पी है जबकि मूल वीडियो की गुणवत्ता 720 पी है।यूट्यूब अपलोड गुणवत्ता

क्या यह इरादा के रूप में काम कर रहा है? यदि ऐसा है तो इस वीडियो संपीड़न के आसपास कोई तरीका है जो मेरे ऐप को मुख्यालय फिल्में अपलोड करने की अनुमति देगा?

यहां कोड है जिसका उपयोग मैं वीडियो अपलोड को प्राप्त करने के लिए कर रहा हूं यदि यह कोई मदद है।

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

मैंने इसी तरह 480 पी वीडियो अपलोड किए हैं, लेकिन 720p की कोशिश नहीं की है। यह एक लंबा शॉट है, लेकिन मेरे कोड में सबसे बड़ा अंतर यह है कि मैं '@" वीडियो/एमपी 4 "' माइम प्रकार का उपयोग कर रहा था। –

उत्तर

1

यूट्यूब ट्रांसकोडिंग पाइपलाइन केवल वीडियो फ़ाइल में ही लग रहा है निर्धारित करने के लिए एक वीडियो का मुख्यालय/HD संस्करणों उत्पन्न किया जाना चाहिए। इससे कोई फर्क नहीं पड़ता कि आप gdata API कॉल में इसके साथ क्या पास करते हैं।

जो चीजें ट्रांसकोडिंग पाइपलाइन दिखती हैं वे वीडियो आकार के साथ-साथ औसत बिट दर शामिल हैं। एक बहुत ही कम दर वाला एक 720 पी वीडियो, उदाहरण के लिए, एचडी या यहां तक ​​कि एक मुख्यालय एन्कोड के लिए अर्हता प्राप्त नहीं कर सकता है। कभी-कभी गलत तरीके से एन्कोड किए गए वीडियो में उनके ट्रांसकोडर द्वारा गलत वीडियो आकार या बिट रेट का अर्थ हो सकता है, इसलिए सुनिश्चित करें कि आपका वीडियो एन्कोडर कुछ भी अजीब नहीं कर रहा है।

+0

मुझे वर्तमान में एक ही समस्या है। क्या आप इस पर थोड़ा सा विस्तार कर सकते हैं? क्या UIImagePickerController के साथ लिया गया वीडियो 720p में अपलोड किया गया है यह सुनिश्चित करने का कोई तरीका है? – zakdances

+0

मैंने YouTube एपीआई के साथ लंबे समय तक नहीं खेला है, लेकिन मुझे लगता है कि जब तक आप उच्चतम वीडियो गुणवत्ता का उपयोग करने के लिए अपना UIImagePickerController सेट अप कर रहे हैं, और स्रोत वीडियो 720p/1080p-सक्षम iPhone पर लिया गया था (आईफोन 4 और बाद में), यूट्यूब 720p (या उच्चतर) पर अपलोड किए गए वीडियो को वापस चलाने में सक्षम होना चाहिए। बस सुनिश्चित करें कि आप 'imagePicker.videoQuality = UIImagePickerControllerQualityTypeHigh' सेट कर रहे हैं। – Ziconic