मैं आसानी से Youtube पर वीडियो अपडेट कर सकता हूं:
var googleapis = require("googleapis");
googleapis.discover("youtube", "v3").execute(function(err, client) {
var metadata = {
snippet: { title:"title", description: "description"},
status: { privacyStatus: "private" }
};
client
.youtube.videos.insert({ part: "snippet,status"}, metadata)
.withMedia("video/mp4", fs.readFileSync("user.flv"))
.withAuthClient(auth)
.execute(function(err, result) {
if (err) console.log(err);
else console.log(JSON.stringify(result, null, " "));
});
});
समस्या यह है कि बड़ी फ़ाइलों के लिए fs.readFileSync
बहुत अन-प्रैक्टिकल है।
प्रत्यक्ष स्पष्ट रूप से यह तय हो गया था लेकिन प्रदान किया गया उदाहरण Google ड्राइव के लिए है:
var fs = require("fs");
var drive = google.drive({ version: "v2", auth: oauth2Client });
drive.files.insert({
resource: {
title: "testimage.png",
mimeType: "image/png"
},
media: {
mimeType: "image/png",
body: fs.createReadStream("awesome.png") // read streams are awesome!
}
}, callback);
मैं एक स्ट्रीम का उपयोग करके Youtube पर कैसे अपलोड करूं?
उत्तर:
जवाब के लिए 2 № 1मेरे मामले में मैं बड़ी फ़ाइल (> 2GB) के लिए इस मॉड्यूल का उपयोग कर अपलोड करने में सक्षम हूं।
var youtube = require("googleapis").youtube("v3");
youtube.videos.insert({
"auth": auth,
"resource": resource,
"part": part,
"media": fs.createReadStream(videoFilePath)
}, callback);