I wrote a node-js api, with node-js and fluent-ffmpeg :
'use strict';
require('babel-register');
const path = require('path');
const ffmpeg = require('fluent-ffmpeg');
[...]
var infs = new ffmpeg
infs.addInput(doc.data().url).outputOptions([
'-preset slow', '-g 48', '-sc_threshold 0',
'-map 0:0', '-map 0:1', '-map 0:0', '-map 0:1',
'-s:v:0 1280x720', '-c:v:0 libx264', '-b:v:0 2000k',
// "-var_stream_map", "'v:0,a:0 v:1,a:1'",
'-master_pl_name ./' + req.params.id + '/master' + req.params.id + '.m3u8',
'-f hls', '-hls_time 6', '-hls_list_size 0',
'-hls_segment_filename ./' + req.params.id + '/fileSequence|' + req.params.id + '|%d|v%v.ts',
'-max_muxing_queue_size 1024',
]).output('./' + req.params.id + '/video' + req.params.id + '.m3u8')
.on('start', function (commandLine) {
console.log('Spawned Ffmpeg with command: ' + commandLine);
})
.on('error', function (err, stdout, stderr) {
console.log('An error occurred: ' + err.message, err, stderr);
})
.on('progress', function (progress) {
console.log('Processing: ' + progress.percent + '% done')
})
.on('end', function (err, stdout, stderr) {
console.log('Finished processing!' /*, err, stdout, stderr*/)
})
.run()
res.status(200).send('GG').end();
}
});
[...]
That work with
node app.js
on my macbook pro, but when i do
gcloud app deploy
and I call the public url, I have this logs :
Processing: undefined% done
An error occurred: ffmpeg was killed with signal SIGABRT Error: ffmpeg was killed with signal SIGABRT
Here is my app.yaml :
# Copyright 2017, Google, Inc.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# [START gae_flex_quickstart_yaml]
runtime: nodejs
env: flex
# This sample incurs costs to run on the App Engine flexible environment.
# The settings below are to reduce costs during testing and are not appropriate
# for production use. For more information, see:
# https://cloud.google.com/appengine/docs/flexible/nodejs/configuring-your-app-with-app-yaml
manual_scaling:
instances: 1
resources:
cpu: 1
memory_gb: 6
disk_size_gb: 30
# [END gae_flex_quickstart_yaml]
How can I do to deploy correctly my node-js api on google app engine ?
Thank's in advance.
Jérémy.
from Deploying on google App Engine : An error occurred: ffmpeg was killed with signal SIGABRT Error: ffmpeg was killed with signal SIGABRT
No comments:
Post a Comment