Superimpose presentation records onto PDF slides
Project description
Superimposer — combine presentation videos with slides
You have: pdf slides and a video of you talking about them.
You want: a video of your slides with you in the corner.
You need: superimposer.
So, you presented something, and now have a recording of it, that's awesome! But the slides are hard to read, or got cropped out somehow, and you want to fix that. Fear not, superimposer has you covered! Just tell it what slide to display when, point it at your slides and your video, and it will generate a new video for you with the slides front and center, and your video tucked away nicely in a corner.
To get up and running, you first need the video file for your
presentation (let's say it's presentation.mp4
) and a PDF file with
your slides (let's say it's slides.pdf
). Then, create a file called
transitions.txt
and write:
00:00 1
You probably get the gist here. Play through your presentation, and
every time you change slides, write down a new line with the current
timestamp (the O
hotkey in mpv
is handy here) and the desired slide
number. When you're done, run:
$ superimposer presentation.mp4 slides.pdf superimposed.mp4
This will eventually kick off ffmpeg
, which will take a while to
encode your video. When it's done, superimposed.mp4
should have what
you want!
Superimposer takes a bunch of handy command-line arguments to tweak the
output. Run superimposer --help
to see them. If you're using H.264,
you may want to consider also giving:
-- -tune stillimage
If you are significantly resizing the camera video, you may want to change the scaling algorithm with:
-- -sws_flags lanczos
Requirements
Normalizing audio
If your audio is sad, try ffmpeg-normalizer
with something like:
$ ffmpeg-normalize superimposed.mp4 -o superimposed-normalized.mp4 -c:a aac
Hardware acceleration
You can pass additional parameters to the ffmpeg encoder by placing them
after --
in the argument list to superimposer
. You'll probably want
to read up on hardware acceleration in ffmpeg, and maybe the ffmpeg
VAAPI encoding docs.
Examples
Here are some examples of what the resulting video looks like:
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file superimposer-0.1.2.tar.gz
.
File metadata
- Download URL: superimposer-0.1.2.tar.gz
- Upload date:
- Size: 6.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.6.0 requests/2.24.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 76cf7a5dde3881a6c1da87a5de91b5bb5c88c5b05047bf40ad381fadee61ba41 |
|
MD5 | 7632a1ad0b8225d1d4a0599fe84d7a87 |
|
BLAKE2b-256 | 9f7d1302e5627c74d85e56069f9fa8499929606281a926a4a15a49115e98b41f |
File details
Details for the file superimposer-0.1.2-py3-none-any.whl
.
File metadata
- Download URL: superimposer-0.1.2-py3-none-any.whl
- Upload date:
- Size: 7.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.6.0 requests/2.24.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 79d1631808e5ad87d344fe32356412d7e4426d866c13f981fd975f0c36d8c97f |
|
MD5 | eacd18b0f28b082a45311e6c34c20c3e |
|
BLAKE2b-256 | 5d4cb8b2b2400dcad3b3ac9b956eb082f0609fdaacac0e2b5256f2edfa4037b4 |