How to use the beamcoder.makeStreams function in beamcoder

To help you get started, we’ve selected a few beamcoder examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github Streampunk / beamengine / lib / workers / makeMP4.js View on Github external
],
      out: {
        formatName: 'mp4',
        url: 'file:temp.mp4'
      }
    };
  
    params.video.forEach(p => p.sources.forEach(src => src.format = fmt));
    params.audio.forEach(p => p.sources.forEach(src => src.format = fmt));
  
    params.video.forEach(p => p.sources.forEach(src =>
      src.stream = genToStream({ highWaterMark : 2 }, srcPktsGen(src.url, src.ms, src.streamIndex))));
    params.audio.forEach(p => p.sources.forEach(src =>
      src.stream = genToStream({ highWaterMark : 2 }, srcPktsGen(src.url, src.ms, src.streamIndex))));
  
    await beamcoder.makeStreams(params);

    const mp4File = fs.readFileSync('temp.mp4');
    fs.unlinkSync('temp.mp4');

    job.data.body = {
      blobKey: await redisio.storeBlob(mp4File),
      blobType: 'video/mp4'
    };
    job.data.success = true;
    console.log(`Finished ${job.id} - ${Date.now() - start}ms`);
    return job.data;
  } catch (err) {
    console.error(err.stack);
    throw err;
  }
}
github Streampunk / beamengine / scratch / exploreStreams.js View on Github external
let srcFmts = [];
  params.video.forEach(p => srcFmts = retrieveFormats(p.sources, srcFmts));
  params.audio.forEach(p => srcFmts = retrieveFormats(p.sources, srcFmts));
  params.formats = await Promise.all(srcFmts.map(f => f.fmt));

  params.video.forEach(p => p.sources.forEach(src => src.format = params.formats.find(f => f.url === src.url)));
  params.audio.forEach(p => p.sources.forEach(src => src.format = params.formats.find(f => f.url === src.url)));

  params.video.forEach(p => p.sources.forEach(src =>
    src.stream = genToStream({ highWaterMark : 2 }, srcPktsGen(src.url, src.ms, src.streamIndex))));

  params.audio.forEach(p => p.sources.forEach(src =>
    src.stream = genToStream({ highWaterMark : 2 }, srcPktsGen(src.url, src.ms, src.streamIndex))));

  await beamcoder.makeStreams(params);
}