Удалите запятую из вывода ffmpeg в лямбда-слое AWS - PullRequest
0 голосов
/ 08 марта 2019

Я использую лямбда-слой ffmpeg, чтобы получить длительность и каналы из аудиофайла. Затем я выводю эти данные в переменные, чтобы использовать их позже в моем коде?

Может ли кто-нибудь определить / привести в порядок этот код, чтобы он выводил только действительное значение, а не одно с запятой

enter image description here

const { spawnSync } = require("child_process");
var fs = require('fs');
const https = require('https');


exports.handler = async (event) => {
    const source_url = 'https://upload.wikimedia.org/wikipedia/commons/b/b2/Bell-ring.flac';
    const target_path = '/tmp/test.flac';

    async function downloadFile()  {
        return new Promise((resolve, reject) => {
            const file = fs.createWriteStream(target_path);
            const request = https.get(source_url, function(response) {
            response.pipe(file);
            console.log('file_downloaded!');
            resolve();
            });
        });
    }

    await downloadFile();

    const duration = spawnSync(
        "/opt/bin/ffprobe",
        [
            target_path,
            "-show_entries",
            "stream=duration", 
            "-select_streams",
            "a",
            "-of",
            "compact=p=0:nk=1",
            "-v",
            "0"
        ]
        );

        const channel = spawnSync(
        "/opt/bin/ffprobe",
        [
            target_path,
            "-show_entries",
            "stream=channels",
            "-select_streams",
            "a",
            "-of",
            "compact=p=0:nk=1",
            "-v",
            "0"
        ]
        );

    var durations = duration.output.toString('utf8');
    console.log(durations);
    var channels = channel.output.toString('utf8');
    console.log(channels);

    /*const response = {
        statusCode: 200,
        //body: JSON.stringify([channel.output.toString('utf8')])
        body: 'Complete'
    };
    return response;*/
};

Просто не уверен, откуда эти значения запятых, и мне нужно их как числовые значения для функций сравнения позже в коде.

Используется этот простой лямбда-слой без необходимости использования внешних модулей

https://github.com/serverlesspub/ffmpeg-aws-lambda-layer

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...