mySlidesLive
...helps you to extract your SlidesLive presentation.
Install
pip install myslideslive
Usage
Python
In a Python console:
from myslideslive import SlidesLive
msl = SlidesLive('https://slideslive.com/38956531/'
'beyond-static-papers-'
'rethinking-how-we-share-scientific-understanding-in-ml')
msl.download_slides(slide=(1074, 1075))
msl.compose_video()
CLI
Directly from terminal:
msl --slide 1074 1075 \
https://slideslive.com/38956531/beyond-static-papers-rethinking-how-we-share-scientific-understanding-in-ml
Development
- To develop this package you need nbdev v1 and unidecode (
pip install "nbdev<2" unidecode). - The library (and
Makefile) is built withnbdev_build_lib. nbdev_update_libupdates the notebooks based on changes in the library.- The
README.mdis regenerated withnbdev_build_docs. - The git hooks are set up with
nbdev_install_git_hooks. jupyter nbconvert --clear-output --inplace notebook.ipynbclears all output cells of a notebook.
Before committing code changes make sure to run:
nbdev_install_git_hooks && \
nbdev_build_lib && \
nbdev_build_docs && \
nbdev_clean_nbs --clear_all True && \
nbdev_test_nbs
What about the SlidesLive video recording?
If you want to get the video recording of your SlidesLive presentation as well, youtube-dl can take care of that.
Cutting the video
Then you can cut the video with:
ffmpeg -i video_in.mp4 -ss [start] -t [duration] -c copy video_out.mp4
where [start] specifies the start time, e.g. 00:01:23.000 or 83 (in seconds);
and [duration] specifies the duration in the same format.
Alternatively to -t [duration], you may use -to [end], i.e.:
ffmpeg -i video_in.mp4 -ss [start] -to [end] -c copy video_out.mp4
NOTE: the order of ffmpeg flags seems to influence the precision of the video cut.
Picture-in-Picture embedding
To embed the video recording within the bottom-right part of the presentation video, preserving the audio stream from the former use:
ffmpeg -i embedded_video.mp4 -i main_video.mp4 \
-filter_complex "[0] scale=iw/10:ih/10 [embed]; \
[1] fps=25 [bg]; \
[bg][embed] overlay=main_w-overlay_w:main_h-overlay_h" \
-framerate 25 \
-b:v 4810k \
-b:a 126k \
-ar 44100 \
PiP_video.mp4
The sound stream is always taken from the first video in the input (-i) list;
if you swap the input videos, you also need to swap [0] and [1] in
the filter string (-filter_complex).
To move the embedded video to a different position, you need to change
the overlay parameter.
For example, overlay=main_w-overlay_w:0 will place the embed in
the top-right corner; overlay=0:0 in the top-left; and
overlay=0:main_h-overlay_h in the bottom-left.
About
This Python module was inspired by:
- https://github.com/Chandrahasd/slideslive-slides-dl; and
- https://github.com/AugustKarlstedt/slideslive-downloader.
PiP ffmpeg command comes from here.
Metadata
Release files for myslideslive 0.7
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| myslideslive-0.7.tar.gz | 15.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| myslideslive-0.7-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 29.1 kB
Release files / myslideslive-0.7.tar.gz
| Download URL | myslideslive-0.7.tar.gz |
|---|---|
| Size | 15.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e13815c9d0e66ce98d5aa7962ae7255aa291076cc39abcc9236db281244245c2
|
|
BLAKE2b-256 checksum How to use checksums |
401f993d402afbf3182bf221e07e5baa31926dccc5ff1185e7508995cf39b985
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.0.0 CPython/3.9.19
|
Release files / myslideslive-0.7-py3-none-any.whl
| Download URL | myslideslive-0.7-py3-none-any.whl |
|---|---|
| Size | 13.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d6575aceb7da3c4eeee7fee123fe391184145f37bf14643415c95cb1efbc10fd
|
|
BLAKE2b-256 checksum How to use checksums |
0c95bb04528b17ac35e778c9405b5b84de88379a7597dc8928979baca7b0fef2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.0.0 CPython/3.9.19
|