जब भी मैं यूट्यूब एपीआई का उपयोग कर डायरेक्ट अपलोड के माध्यम से एक बड़ा वीडियो अपलोड करने का प्रयास करता हूं। मुझे आउटऑफमेमरी अपवाद मिलता है। क्या इससे छुटकारा पाने के लिए मैं कुछ कर सकता हूं? यूट्यूब एपीआई प्रत्यक्ष अपलोड का उपयोग कर वीडियो आकार सीमा के बारे में कुछ भी नहीं कहता है।यूट्यूब डायरेक्ट अपलोड - आउटऑफमेमरी अपवाद
मैंने डायरेक्ट अपलोड पर छोड़ दिया। अब मैं पुनः अपलोड करने योग्य अपलोड करने की कोशिश कर रहा हूं। मेरा कोड नीचे है।
YouTubeRequest request;
YouTubeRequestSettings settings = new YouTubeRequestSettings("YouTube Upload", Client Key, "Username", "Password");
request = new YouTubeRequest(settings);
Video newVideo = new Video();
ResumableUploader m_ResumableUploader = null;
Authenticator YouTubeAuthenticator;
m_ResumableUploader = new ResumableUploader(256); //chunksize 256 kilobyte
m_ResumableUploader.AsyncOperationCompleted += new AsyncOperationCompletedEventHandler(m_ResumableUploader_AsyncOperationCompleted);
m_ResumableUploader.AsyncOperationProgress += new AsyncOperationProgressEventHandler(m_ResumableUploader_AsyncOperationProgress);
YouTubeAuthenticator = new ClientLoginAuthenticator("YouTubeUploader", ServiceNames.YouTube, "[email protected]", "password");
//AtomLink link = new AtomLink("http://uploads.gdata.youtube.com/resumable/feeds/api/users/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);
byte[] chunk = new byte[256000];int count = 1;
while (true) {
int index = 0;
while (index < chunk.Length) {
int bytesRead = stream.Read(chunk, index, chunk.Length - index);
if (bytesRead == 0) {
break;
}
index += bytesRead;
}
if (index != 0) { // Our previous chunk may have been the last one
newVideo.MediaSource = new MediaFileSource(new MemoryStream(chunk), filePath, "video/quicktime");
if (count == 1) {
m_ResumableUploader.InsertAsync(YouTubeAuthenticator, newVideo.YouTubeEntry, new MemoryStream(chunk));
count++;
}
else
m_ResumableUploader.ResumeAsync(YouTubeAuthenticator, new Uri("http://uploads.gdata.youtube.com/resumable/feeds/api/users/uploads"), "POST", new MemoryStream(chunk), "video/quicktime", new object());
}
if (index != chunk.Length) { // We didn't read a full chunk: we're done
break;
}
}
क्या कोई मुझे बता सकता है कि क्या गलत है? मेरा 2 जीबी वीडियो अपलोड नहीं हो रहा है।
आपका कोड क्या है? आपने क्या प्रयास किया? आपका त्रुटि कोड क्या है? –
अपवाद फेंक कहां है? शायद केवल stacktrace –
लाइन प्रदान करें: m_ResumableUploader.InsertAsync (...) त्रुटि: System.Net.WebException: दूरस्थ सर्वर ने एक त्रुटि लौटा दी: (403) निषिद्ध। System.Net.HttpWebRequest.GetResponse (0) पर –