Manfred

Got questions or doubts? Ping me on Discord

The camera, as you see it

Mirror, flip or turn the camera, and the file plays the way the preview showed it, in every player.

What it does

The window's camera menu mirrors, flips and turns the picture, per camera: Mirror, Flip, 90° left, 90° right and 180°. The preview and the recording follow it.

Players such as Firefox, Windows Media Player and DaVinci Resolve ignore an MP4 rotation flag, so Manfred doesn't lean on one. The take keeps the camera's own pictures and the turn, and the export bakes the turn into the pixels, so the file plays the same everywhere.

With no turn, the video export stays a stream copy, byte for byte. With one, the video is decoded, turned and encoded again in the recorded codec at CRF 18, on the GPU where it can: VA-API, NVENC or VideoToolbox. Where the GPU has no H.265 encoder, an H.265 take comes out as H.264.

  • Recorded on the GPU

    The webcam is encoded as H.265 on the GPU, with H.264 when H.265 isn't available.

  • Never a frame short

    A baked export counts the pictures it fed, decoded and encoded, and fails with an error rather than write a file that is short of any.

  • The sound in sync

    Audio and video adds the sound as AAC-LC at 192 kb/s per channel, in sync. When the webcam started after the microphone, its first frame is held from the start.

Measured

to export a 60 s 1080p take of the camera test card with no turn, a stream copy
0.01 s
How it was measured
for the same test-card take turned, baked and encoded again on the GPU
4.2–7.2 s
How it was measured
to copy an hour of the camera test card at 1080p30; a real webcam writes more bytes
268 ms
How it was measured
of one core for the whole of Manfred recording a 1080p30 camera
22.0%
How it was measured

How to use it

  1. Open the window, the only face that records the webcam, and switch CAM on:

    manfred gui
  2. Pick Mirror, Flip, 90° left, 90° right or 180° in the camera menu, and record.

  3. Export the video, or the video with its sound:

    manfred export take.manf --video
    manfred export take.manf --both --out ~/Desktop/talk.mp4