Skip to main content

Common Wrapper/Interface around various video reading/writing tools

Project description

Vidsz: Video's Wizard

CI-Test-Status CodeFactor status made-with-python Documentation Status

Common Wrapper/Interface around various video reading/writing tools to make video reading stable, consistent and super easy around different systems and OS.

pip install vidsz

Backends

  • OpenCV (in-development)

Read Video

from vidsz.opencv import Reader

# open reader
reader = Reader("static/countdown.mp4")

# print info: width, height, fps etc.
print(reader)

# access specific things
print(reader.width, reader.height, reader.fps)

# access number-of-frames/seconds/minutes that have been read
print(reader.frame_count, reader.seconds, reader.minutes)

# read frames with while loop
while reader.is_open():
    # returns ndarry-frame or None if nothing left to read
    frame = reader.read()

# read frame with for loop
for frame in reader:
    # use frame however you like
    pass

# release
reader.release()


# or read with a with block
with Reader("static/countdown.mp4") as reader:
    frame = reader.read()
    frames = reader.read_all() # list of frames returned

Write Video

from vidsz.opencv import Reader, Writer

video_fname = "static/countdown.mp4"

# open reader
reader = Reader(video_fname)

# start writer with the Reader object
# by default it'll append _out in the name of the output video
writer = Writer(reader)

# start writer with your settings;
# you can also give any combinations of
# following settings with Reader object to
# overwrite default settings
writer = Writer(name="out.mp4", width=1920, height=1080, fps=15)

# print writer info
print(writer)

# write single frame
frame = reader.read()
writer.write(frame)

# write list of frames
# or directly write everything from reader object
writer.write_all(reader)

# close off
writer.release()

# using "with" block, write "static/countdown_out.mp4" (clone of input)
with Reader(video_fname) as reader:
    with Writer(reader, name="out_with.mp4") as writer:
        writer.write_all(reader)

Logo-Attribution Designed by brgfx / Freepik

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

vidsz-0.1.1.tar.gz (7.8 kB view hashes)

Uploaded Source

Built Distribution

vidsz-0.1.1-py3-none-any.whl (14.8 kB view hashes)

Uploaded Python 3

Supported by

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