gst-rec

0.0.7 • Public • Published

gst-rec

License Downloads Donate Donate Twitter

Universal screen recorder powered by GStreamer

Installation

sudo npm install -g gst-rec

Requires GStreamer-1.0 with gst-launch-1.0 binary and following GStreamer1 plugins: base, good, bad, ugly.

Usage

The application is intended for use from terminal with gst-rec command.

With default configuration gst-rec will record desktop and save it to /tmp directory. Default configuration can be overwritten by ~/.config/gst-rec.json config file.

Examples

# Record 25 fps video and scale it to HD resolution:
gst-rec --video width=1280,height=720,fps=25,scaling=true

# Change encoding preset, video container, output file location and set custom filename:
gst-rec --preset ultrafast --format mp4 --file 'dir=/my/custom/path,name=My Awesome Recording'

# Record desktop with audio from pulseaudio sink:
gst-rec --audio device=alsa_output.pci-0000_00_01.1.hdmi-stereo.monitor

# Show list of system audio devices:
gst-rec --list-audio-devices

# Record to `~/Videos` directory as MP4 file with AAC audio from dev0:
gst-rec --audio device=dev0,encoder=faac --format mp4 --file dir=~/Videos

# Run GStreamer tcp server to allow connecting from multiple devices:
gst-rec --output server --server host=127.0.0.1,port=8080

# Create http server in addition to tcp server for devices that only support it:
gst-rec --output server --server port=8080 --http-port 8081

# Send scaled video output to `stdout` and receive it through `ffplay`:
gst-rec --video width=960,height=540,fps=30,scaling=true -o - | ffplay -fflags nobuffer -

# Run with default options, ignoring custom config file:
gst-rec --ignore-config

# Stream desktop to Chromecast using `castnow`:
gst-rec -o - | castnow --quiet -

# Stream desktop with audio to Chromecast:
gst-rec --audio device=dev0,encoder=lamemp3enc -o - | castnow --quiet -

# Alter default configuration and display it in JSON format (can be placed in config file):
gst-rec --preset superfast --video width=1280,height=720,fps=25,scaling=true --show-config

# Create new config file with default values:
gst-rec --ignore-config --show-config > ~/.config/gst-rec.json

Run gst-rec --help for a list of all available options.

Donation

If you like my work please support it by buying me a cup of coffee 😁

PayPal

Dependencies (4)

Dev Dependencies (0)

    Package Sidebar

    Install

    npm i gst-rec

    Weekly Downloads

    0

    Version

    0.0.7

    License

    MIT

    Unpacked Size

    13.9 kB

    Total Files

    5

    Last publish

    Collaborators

    • rafostar