From f44b47b3151de2bdc5831a5ef47dbe15550dbeaa Mon Sep 17 00:00:00 2001 From: Carl Kittelberger Date: Fri, 24 Aug 2018 09:36:45 +0200 Subject: [PATCH] Set up video script to generate DASH stream. --- development/node/ffmpeg.js | 9 +++++++++ package.json | 6 +++++- 2 files changed, 14 insertions(+), 1 deletion(-) create mode 100644 development/node/ffmpeg.js diff --git a/development/node/ffmpeg.js b/development/node/ffmpeg.js new file mode 100644 index 0000000..a201a32 --- /dev/null +++ b/development/node/ffmpeg.js @@ -0,0 +1,9 @@ +import { path } from '@ffmpeg-installer/ffmpeg'; + +import { spawn } from 'child_process'; + +const args = process.argv.slice(2); + +spawn(path, args, { + stdio: 'inherit', +}); diff --git a/package.json b/package.json index 12b1044..765c40b 100644 --- a/package.json +++ b/package.json @@ -8,6 +8,7 @@ "@babel/core": "^7.0.0-rc.2", "@babel/node": "^7.0.0-rc.2", "@babel/preset-env": "^7.0.0-rc.2", + "@ffmpeg-installer/ffmpeg": "^1.0.15", "babel-core": "7.0.0-bridge.0", "babel-loader": "^8.0.0-beta.6", "csp-html-webpack-plugin": "^2.3.0", @@ -18,6 +19,7 @@ "file-loader": "^2.0.0", "html-webpack-plugin": "^3.2.0", "mkdirp": "^0.5.1", + "npm-run-all": "^4.1.3", "resolve-url-loader": "^2.3.0", "script-ext-html-webpack-plugin": "^2.0.1", "style-loader": "^0.22.1", @@ -34,6 +36,8 @@ "scripts": { "build": "webpack", "start": "webpack-dev-server --mode development --content-base dist/ --host 0.0.0.0 --port 4545", - "video": "mkdirp dist/video; ffmpeg -loglevel warning -stats -i video/big.mp4 -c copy -use_timeline 1 -use_template 1 -single_file 1 -hls_playlist 1 -f dash -y dist/video/clock.mpd" + "video": "run-s video:mkdirp video:dash", + "video:mkdirp": "mkdirp dist/video", + "video:dash": "babel-node -- development/node/ffmpeg -loglevel warning -stats -i video/big.mp4 -c copy -use_timeline 1 -use_template 1 -single_file 1 -hls_playlist 1 -f dash -y dist/video/clock.mpd" } }