https://github.com/cgohlke/vidsrc
Video frameserver for NumPy.
https://github.com/cgohlke/vidsrc
format-reader python video windows
Last synced: about 1 year ago
JSON representation
Video frameserver for NumPy.
- Host: GitHub
- URL: https://github.com/cgohlke/vidsrc
- Owner: cgohlke
- License: bsd-3-clause
- Created: 2020-02-22T22:42:02.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2025-01-05T21:40:33.000Z (over 1 year ago)
- Last Synced: 2025-04-26T22:34:36.607Z (about 1 year ago)
- Topics: format-reader, python, video, windows
- Language: C++
- Homepage: https://pypi.org/project/vidsrc
- Size: 193 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.rst
- License: LICENSE
Awesome Lists containing this project
README
..
This file is generated by setup.py
Video Frameserver for Numpy
===========================
Vidsrc is a Python library to read frames from video files as numpy arrays
via the DirectShow IMediaDet interface.
:Author: `Christoph Gohlke `_
:License: BSD 3-Clause
:Version: 2025.1.6
Quickstart
----------
Install the vidsrc package and all dependencies from the
`Python Package Index `_::
python -m pip install -U vidsrc
See `Examples`_ for using the programming interface.
Source code and support are available on
`GitHub `_.
Requirements
------------
This revision was tested with the following requirements and
dependencies (other versions may work):
- `CPython `_ 3.10.11, 3.11.9, 3.12.8, 3.13.1 64-bit
- `NumPy `_ 2.2.1
- Microsoft Visual Studio 2022 (build)
- DirectX 9.0c SDK (build)
- DirectShow BaseClasses include files (build)
- DirectShow STRMBASE.lib (build)
Revisions
---------
2025.1.6
- Add type hints.
- Drop support for Python 3.9, support Python 3.13 and NumPy 2.
2024.1.6
- Support Python 3.12.
- Drop support for Python 3.8 and NumPy 1.22 (NEP 29).
2022.9.28
- Update metadata.
2021.6.6
- Drop support for Python 3.6 (NEP 29).
- Fix compile error on PyPy3.
2020.1.1
- Drop support for Python 2.7 and 3.5.
Notes
-----
The DirectShow IMediaDet interface is deprecated and may be removed from
future releases of Windows
(https://docs.microsoft.com/en-us/windows/desktop/directshow/imediadet).
To fix compile
``error C2146: syntax error: missing ';' before identifier 'PVOID64'``,
change ``typedef void * POINTER_64 PVOID64;``
to ``typedef void * __ptr64 PVOID64;``
in ``winnt.h``.
Examples
--------
.. code-block:: python
>>> from vidsrc import VideoSource
>>> video = VideoSource('test.avi', grayscale=False)
>>> len(video) # number of frames in video
48
>>> video.duration # length in s
1.6016
>>> video.framerate # frames per second
29.970089850329373
>>> video.shape # frames, height, width, color channels
(48, 64, 64, 3)
>>> frame = video[0] # access first frame
>>> frame = video[-1] # access last frame
>>> for frame in video:
... pass # do_something_with(frame)