Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/hkang1/taiko-video
A taiko plugin to record screencast as an mp4 video
https://github.com/hkang1/taiko-video
Last synced: 25 days ago
JSON representation
A taiko plugin to record screencast as an mp4 video
- Host: GitHub
- URL: https://github.com/hkang1/taiko-video
- Owner: hkang1
- License: mit
- Created: 2020-11-22T02:51:29.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2021-08-10T17:20:44.000Z (about 3 years ago)
- Last Synced: 2024-09-30T08:22:02.944Z (about 1 month ago)
- Language: JavaScript
- Size: 137 KB
- Stars: 8
- Watchers: 3
- Forks: 5
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Taiko Video Plugin
A plugin to record mp4 video of a [taiko](https://github.com/getgauge/taiko) script run.
## Install ffmpeg Dependency
This plugin uses [ffmpeg](https://github.com/FFmpeg/FFmpeg) to compress the images into an `mp4` video using the `h264` compression algorithm, so it'll require `ffmpeg` to be available from the command line. So of the common ways to install it are listed below:
### Mac OS X
```sh
brew install ffmpeg
```### Ubuntu
```sh
sudo apt install ffmpeg
```### CentOS
```sh
sudo yum install ffmpeg
```### Windows 10
Download the installer at the [Official Site](https://ffmpeg.org/download.html)
## Install Taiko Video Plugin
```
npm install --save-dev taiko-video
```## Example
Add this script in a file `script.js`.
```js
const { openBrowser, closeBrowser, click, goto, video } = require('taiko');(async () => {
try {
await openBrowser();
await video.startRecording('output/video.mp4');
await goto('https://hoyoul.com');
await click('Plugins');
// more actions
// ...
await video.pauseRecording();
// more actions that you don't want recorded
// ...
await video.resumeRecording();
// more actions that you do want recorded
// ...
} finally {
await video.stopRecording();
await closeBrowser();
}
})();```
Run script with:
```
taiko script.js --plugin video
```## API
These are the 4 available API functions.
```js
video.startRecording('path/to/movie.mp4', frames-per-second);
video.pauseRecording();
video.resumeRecording();
video.stopRecording();
````video.startRecording` must have an output movie file specified with a `.mp4` extension. It also takes a 2nd optional frames per second parameter to control the speed of the video.
## License
MIT