如果有多个通道,则合并然后从音频文件中获取样本长度并将其保存到 s3



我正在使用transloadit从视频文件中提取音频,然后将其保存到S3。这很好用,但我想知道如何:

  1. 检查文件是否有多个通道,然后按照 https://transloadit.com/demos/audio-encoding/merging-multiple-audio-streams/压缩它而不是一个 - 我需要检查这个还是默认使用此机器人?

  2. 从音频文件中提取一个小样本 - 并将其另存为单独的文件。

例如,我有一个 2 小时的音频文件,我想从中获取 5% 的长度并将其保存为样本.mp3

在 ffmpeg 中,我可以剪切:

ffmpeg -ss 0 -t 30 -i original.mp3 sample.mp3

但我不确定如何链接此工作流程,这是我到目前为止所拥有的:

const opts = {
  params: {
    notify_url: `${ process.env.SELF }/services/trans/${ jwToken }`,
    steps:      {
      import: {
        robot:  '/s3/import',
        use:    ':original',
        bucket: process.env.S3_INGEST,
        path:   ingest.key,
        key:    process.env.AWS_ID,
        secret: process.env.AWS_SECRET,
      },
      encode: {
        robot:        '/audio/encode',
        use:          'import',
        ffmpeg_stack: 'v2.2.3',
        preset:       'aac',
        ffmpeg:       {
          ab:  '128k',
        },
      },
      export: {
        robot:   '/s3/store',
        use:     'encode',
        bucket:  s3Export,
        path:    `${ prefix }/${ token }.m4a`,
        headers: {
          'Content-Type': 'audio/mp4',
          'x-amz-server-side-encryption': 'AES256',
        },
        key:    process.env.AWS_ID,
        secret: process.env.AWS_SECRET,
      },
    },
  },
};

在文档中,https://transloadit.com/docs/conversion-robots/我看不到如何做到这一点?

任何建议都非常感谢。

Transloadit 支持注入 ffmpeg 参数。因此,您可以轻松地将参数添加到 ffmpeg 对象中,如下所示。

ffmpeg:{
ab:  '128k',
"ss": "0",
"t": "30"
}

如果您有其他关于 support@transloadit.com 的问题,请告诉我们

相关内容

  • 没有找到相关文章

最新更新