Metadata-Version: 2.4
Name: ffrec
Version: 0.5.0
Summary: Records the screen, using Python
Author-email: Jeff Moe <moe@spacecruft.org>
License-Expression: Apache-2.0
Project-URL: Homepage, https://spacecruft.org/deepcrayon/ffrec
Project-URL: Documentation, https://spacecruft.org/deepcrayon/ffrec
Project-URL: Repository, https://spacecruft.org/deepcrayon/ffrec
Project-URL: Issues, https://spacecruft.org/deepcrayon/ffrec
Project-URL: Changelog, https://spacecruft.org/deepcrayon/ffrec/raw/branch/main/CHANGELOG.txt
Keywords: ffmpeg,record,screencap
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Console
Classifier: Environment :: GPU
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: End Users/Desktop
Classifier: Natural Language :: English
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Multimedia :: Graphics :: Capture :: Screen Capture
Classifier: Topic :: Multimedia :: Sound/Audio
Classifier: Topic :: Multimedia :: Video :: Capture
Requires-Python: >=3.11
Description-Content-Type: text/markdown
License-File: LICENSE-apache.txt
Requires-Dist: python-ffmpeg
Provides-Extra: dev
Requires-Dist: ruff; extra == "dev"
Requires-Dist: setuptools-scm; extra == "dev"
Requires-Dist: twine; extra == "dev"
Dynamic: license-file

# ffrec
ffrec records the screen, using Python.

* https://spacecruft.org/deepcrayon/ffrec
* https://pypi.org/project/ffrec/

# Installation
Thusly, suit to taste:

```
python -m venv venv
source venv/bin/activate
pip install -U setuptools pip wheel
pip install ffrec
```

# Help
Command line options:

```
$ ffrec --help
usage: ffrec [-h] [-a AUDIO_CODEC] [-A AUDIO_INPUT] [-c VIDEO_CODEC] [-D]
             [-C AUDIO_CHANNELS] [-d DIR] [-l] [-m] [-o | -O] [-p PREFIX]
             [-r FRAMERATE] [-s SIZE] [-t TIME] [-T | -N] [-v] [-V]

Record screen and save to mp4

options:
  -h, --help            show this help message and exit
  -a, --audio-codec AUDIO_CODEC
                        Audio codec to use (default: aac)
  -A, --audio-input AUDIO_INPUT
                        Audio input source (default: pulse)
  -c, --video-codec VIDEO_CODEC
                        Video codec to use (default: hevc_nvenc)
  -D, --debug           Debugging
  -C, --audio-channels AUDIO_CHANNELS
                        Number of audio channels (default: 2)
  -d, --dir DIR         Directory to save the output video file
  -l, --loop            Loop into new segment files until terminated manually
  -m, --mouse           Record the mouse cursor (default false)
  -o, --overwrite       Overwrite existing files (default)
  -O, --no-overwrite    Do not overwrite existing files
  -p, --prefix PREFIX   Prefix for the output video file name
  -r, --framerate FRAMERATE
                        Framerate for recording (default: 30)
  -s, --size SIZE       Video size (default: 1920x1080)
  -t, --time TIME       Length of recording in HH:MM:SS format (default:
                        00:01:00)
  -T, --timestamp       Add timestamp to filename (default)
  -N, --no-timestamp    Do not add timestamp to filename
  -v, --verbose         Increase output verbosity (-vv for debug)
  -V, --version         Show version
```

# License
Apache 2.0.

Unofficial project, not related to upstream projects.

Upstream sources under their respective copyrights.

*Copyright &copy; 2025 Jeff Moe.*
