# vidsrc **Repository Path**: mirrors_cgohlke/vidsrc ## Basic Information - **Project Name**: vidsrc - **Description**: Video frameserver for NumPy. - **Primary Language**: Unknown - **License**: BSD-3-Clause - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-11-23 - **Last Updated**: 2026-05-17 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## 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: 2026.1.18 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.11.9, 3.12.10, 3.13.11, 3.14.2 64-bit - `NumPy `_ 2.4.1 - Microsoft Visual Studio 2022 (build) - DirectX 9.0c SDK (build) - DirectShow BaseClasses include files (build) - DirectShow STRMBASE.lib (build) Revisions --------- 2026.1.18 - Use multi-phase initialization. 2025.8.1 - Drop support for Python 3.10, support Python 3.14. 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)