Função de nuvem Firebase [Erro: limite de memória excedido. A chamada de função foi interrompida.] No youtube video upload

Eu estava tentando enviar vídeos para o youtube usando a função de nuvem do firebas

O que eu preciso é quando um usuário envia um vídeo para o armazenamento em nuvem da base de firmas, o evento functions.storage.object (). OnFinalize será acionado e, nesse caso, armazeno o arquivo em um local temporário e carrego o arquivo no youtube a partir do local temporário no youtube, após o upload, excluo os dois arquivos.

Funcionará bem para arquivos pequeno

Mas se eu fizer upload de um arquivo grande, a função será encerrada mostrando este erro

Erro: limite de memória excedido. A chamada de função foi interrompida.

Código para upload de vídeo

   var requestData = {
        'params': {
        'part': 'snippet,status'
        },
        'properties': {
        'snippet.categoryId': '22',
        'snippet.defaultLanguage': '',
        'snippet.description': "docdata.shortDesc",
        'snippet.tags[]': '',
        'snippet.title': "docdata.title",
        'status.embeddable': '',
        'status.license': '',
        'status.privacyStatus': 'public',
        'status.publicStatsViewable': ''
        }, 'mediaFilename': tempLocalFile
    };

    insertVideo(tempLocalFile, oauth2Client, requestData);

inserir função de vídeo

function insertVideo( file, oauth2Client, requestData) {
    return new Promise((resolve,reject)=>{
        google.options({ auth: oauth2Client });
        var parameters = removeEmptyParameters(requestData['params']);
        parameters['auth'] = oauth2Client;
        parameters['media'] = { body:  fs.createReadStream(requestData['mediaFilename'])};
        parameters['notifySubscribers'] = false;
        parameters['resource'] = createResource(requestData['properties']);

        console.log("INSERT >>> ");
        let req = google.youtube('v3').videos.insert(parameters,  (error, received)=> {
            if (error) {
                console.log("in error")
                console.log(error);
                try {
                    fs.unlinkSync(file);
                } catch (err) {
                    console.log(err);
                } finally{
                    // response.status(200).send({ error: error })
                }
                reject(error)
            } else {
                console.log("in else")
                console.log(received.data)
                fs.unlinkSync(file);
                resolve();
            }
        }); 
    })

}

code para criar o arquivo local temporário

           bucket.file(filePath).createReadStream()
            .on('error', (err)=> {
                reject(err)
            })
            .on('response', (response)=> {
                console.log(response)
            })
            .on('end', ()=> {
                console.log("The file is fully downloaded");
                resolve();
            })
            .pipe(fs.createWriteStream(tempLocalFile));

Cada arquivo de leitura e gravação é tratado por fluxos, qualquer ideia de por que o problema de memória está acontecendo

questionAnswers(2)

yourAnswerToTheQuestion