Skip to main content

mySlidesLive

...helps you to extract your SlidesLive presentation.

Licence Python PyPI Documentation

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 with nbdev_build_lib.
  • nbdev_update_lib updates the notebooks based on changes in the library.
  • The README.md is regenerated with nbdev_build_docs.
  • The git hooks are set up with nbdev_install_git_hooks.
  • jupyter nbconvert --clear-output --inplace notebook.ipynb clears 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:

PiP ffmpeg command comes from here.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

myslideslive-0.7.tar.gz (15.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

myslideslive-0.7-py3-none-any.whl (13.5 kB view details)

Uploaded Python 3

File details

Details for the file myslideslive-0.7.tar.gz.

File metadata

  • Download URL: myslideslive-0.7.tar.gz
  • Upload date:
  • Size: 15.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.9.19

File hashes

Hashes for myslideslive-0.7.tar.gz
Algorithm Hash digest
SHA256 e13815c9d0e66ce98d5aa7962ae7255aa291076cc39abcc9236db281244245c2
MD5 0802aa3c8a4a0af9b72fad094eff07c8
BLAKE2b-256 401f993d402afbf3182bf221e07e5baa31926dccc5ff1185e7508995cf39b985

See more details on using hashes here.

File details

Details for the file myslideslive-0.7-py3-none-any.whl.

File metadata

  • Download URL: myslideslive-0.7-py3-none-any.whl
  • Upload date:
  • Size: 13.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.9.19

File hashes

Hashes for myslideslive-0.7-py3-none-any.whl
Algorithm Hash digest
SHA256 d6575aceb7da3c4eeee7fee123fe391184145f37bf14643415c95cb1efbc10fd
MD5 d61620ae9db05ca25527f2a908d2eb20
BLAKE2b-256 0c95bb04528b17ac35e778c9405b5b84de88379a7597dc8928979baca7b0fef2

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.7 This release

2 files

0.6

2 files

0.5

2 files

0.4

2 files

0.3

2 files

0.2

2 files

0.1.post1

2 files

0.1

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page