Skip to main content

Add your description here

Project description

PPTX to Video

Convert PowerPoint presentations (.pptx) into narrated videos with automatic translation and speech synthesis.

Features

  • Converts each slide of a PPTX file into a video segment
  • Extracts and translates slide notes into multiple languages
  • Synthesizes speech from translated notes using Google Text-to-Speech
  • Assembles narrated video for each language
  • Supports Linux, macOS, and Windows (with appropriate dependencies)
  • Command-line interface

Requirements

Install dependencies:

pip install .

Usage

python pptx-to-video.py path/to/presentation.pptx --languages English Spanish French --output_dir output_videos
  • pptx_path: Path to the input PPTX file (required)
  • --languages: List of languages for translation (default: en)
  • --output_dir: Directory to save output videos (default: output_videos)

Example

python main.py slides.pptx --languages English French --output_dir my_videos

Project Structure

ppt-to-video/
├── pptx-to-video.py
├── src/
│   ├── cli.py
│   ├── logger.py
│   ├── language_codes.py
│   ├── powerpoint.py
│   ├── powerpoint_engine.py
│   └── video_constructer.py
├── tests/
│   └── test_language_codes.py
|   └── test_powerpoint_engine.py
|   └── test_powerpoint.py
|   └── test_video_constructor.py
├── pyproject.toml
└── README.md

Development

  • Run tests with pytest:
    pytest
    
  • Lint and type-check with ruff and mypy.

License

MIT License


Note:

  • On Linux/macOS, LibreOffice must be installed and available in your PATH for slide-to-image conversion.
  • On Windows, Microsoft PowerPoint is required for slide rendering.

Project details


Download files

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

Source Distribution

ppt_to_video-0.1.0.tar.gz (78.7 kB view details)

Uploaded Source

Built Distribution

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

ppt_to_video-0.1.0-py3-none-any.whl (10.3 kB view details)

Uploaded Python 3

File details

Details for the file ppt_to_video-0.1.0.tar.gz.

File metadata

  • Download URL: ppt_to_video-0.1.0.tar.gz
  • Upload date:
  • Size: 78.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for ppt_to_video-0.1.0.tar.gz
Algorithm Hash digest
SHA256 6c202771ea6bdc1b96d0275822ddc8f19b9026da47cff5f574d35549a0e116cf
MD5 b663f98e4ef3b2b32c9be90fef4a83ca
BLAKE2b-256 cdfbff0e467674b53a50d0eaed4bbe0080fb52a77e052ce9f0c3f7e04b0fda53

See more details on using hashes here.

File details

Details for the file ppt_to_video-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: ppt_to_video-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 10.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for ppt_to_video-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c34a730b3597655b8e71ad7df6ff148e9218fe9d942f115e5f57d32dcf5370b3
MD5 de609037dac5dfa07c5df360d9ff1e18
BLAKE2b-256 17926901313bd98a20eaa6482836e13efdd37e456edbffda21443bf5370982c8

See more details on using hashes here.

Supported by

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