Skip to content

CNugteren/pypopquiz

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PyPopQuiz: A Python/ffmpeg-based popquiz creator

Build Status

PyPopQuiz is a python package to generate popquiz-videos (questions and answers) based simple JSON files with descriptions of the quiz-questions. Such a JSON description could for example contain a song's title and answer which need to be guessed, along with a YouTube-link and two time-intervals defined for the audio and/or video question and answer. It includes features such as only audio, only video, combined audio and video, local files, YouTube links, reversed audio, text overlays, missing words rounds, and so on.

You can install it using pip install -e . and then run the tool, e.g.:

popquiz.py -i samples/round01.json -o output_folder

To use the moviepy backend, add -b moviepy to the command line.

Requirements

Tested on Linux and Windows. Requires Python 3.5 or newer. Requires ffmpeg and the Python packages pytube and ffmpeg-python or moviepy, installed as part of the requirements.

Moviepy

On Windows: Set environment variables pointing to ffmpeg and imagemagick (convert) for moviepy to use:

FFMPEG_BINARY=path_to_ffmpeg\ffmpeg.exe

IMAGEMAGICK_BINARY=path_to_imagemagick\convert.exe

Patch for no audio issue

Tests

The tests are currently still quite limited, but you can already run the linters and/or unittests, e.g. from the root:

pylint pypopquiz test
mypy pypopquiz --ignore-missing-imports
python -m unittest discover test

Feature list / roadmap

Input/output Status
Input source: Youtube video
Input source: Local mp3
Output: Questions video
Output: Answers video
Output: Question & answer sheets
Types of rounds Status
Audio & video
Audio only
Text only round
Beeps/gaps/missing-word round
Special features Status
Reversed audio & video
8-bit/chiptunes audio

About

A Python/ffmpeg-based popquiz creator

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages