D2V source filter for VapourSynth
Project description
D2V Source for VapourSynth (Example)
As the title says, this is a D2V parser and decoder for VapourSynth. There's not much else to say, so let's get right to an example:
import vapoursynth as vs
core = vs.get_core()
core.std.LoadPlugin(path=r'C:\path\to\d2vsource.dll')
ret = core.d2v.Source(input=r'C:\path\to\my.d2v')
ret.set_output()
Parameters: input - Full path to input D2V file. nocrop - Always use direct-rendered buffer, which may need cropping. Provides a speedup when you know you need to crop your image anyway, by avoiding extra memcpy calls. rff - Invoke ApplyRFF (True by default) threads - Number of threads FFmpeg should use. Default is 0 (auto).
About RFF Flags
Unlike DGDecode, it's up to the user to apply RFF flags as they see fit, by passing rff=True to the source function, or by passing rff=False and using core.d2v.ApplyRFF(clip, d2v=r'C:\path\to\my.d2v') after calling the source function. Unless you know your source is 100% FILM, you probably want to apply these. DGDecode's traditional "Force FILM" mode isn't really present in this plugin, but if your source or part of it is 100% FILM, which is the only time you should be Force FILMing anyway, you can simply set Force FILM in DGIndex, which will set the framerate properly in the D2V file, and then not apply RFF flags. It's also feasible to trim away any non-FILM frames and still Force FILM.
Parameters: clip - Input clip. d2v - D2V file for parsing RFF flags. This will be optional in the future, once VapourSynth gets global metadata support.
Known Limitations & Bugs
- Only works with D2V files created by DGIndex (version flag 16) or D2VWitch (https://github.com/dubhater/D2VWitch).
- Not all the IDCT algorithms in DGDecode are in libavcodec, so I've tried to map them as best I could. See idct_algo_conv in d2v.hpp for more info.
- Does not support user specified cropping. Would be easy to add, but I disagree with the premise. Use VapourSynth's cropping.
- Needs the full path to the D2V file.
- Probably more I'm forgetting!
How to Build for Development
On Windows (Visual Studio):
Install FFmpeg using vcpkg and then use the included Visual Studio solution.
Please note that MinGW-built FFmpeg will be faster than one build with Visual
Studio, due to its use of inline assembly. Also note that only MinGW-w64 is
supported.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file vapoursynth_d2vsource-1.4.tar.gz.
File metadata
- Download URL: vapoursynth_d2vsource-1.4.tar.gz
- Upload date:
- Size: 29.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
070e7ff185888c7ceafd602a2434f02e4a09c63d092fa1c0d210a5a5e2cf5e56
|
|
| MD5 |
deb7d7942c4b3874d930aa0529e5de82
|
|
| BLAKE2b-256 |
6ffe050737fc63ed0afb72cac767f20492df00c7c5019ae4357f530d1cb4137f
|
Provenance
The following attestation bundles were made for vapoursynth_d2vsource-1.4.tar.gz:
Publisher:
build.yml on dwbuiten/d2vsource
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vapoursynth_d2vsource-1.4.tar.gz -
Subject digest:
070e7ff185888c7ceafd602a2434f02e4a09c63d092fa1c0d210a5a5e2cf5e56 - Sigstore transparency entry: 1262289718
- Sigstore integration time:
-
Permalink:
dwbuiten/d2vsource@a14d66d5e107769bb79d8361e8c54102426270df -
Branch / Tag:
refs/tags/v1.4 - Owner: https://github.com/dwbuiten
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build.yml@a14d66d5e107769bb79d8361e8c54102426270df -
Trigger Event:
push
-
Statement type:
File details
Details for the file vapoursynth_d2vsource-1.4-py3-none-win_amd64.whl.
File metadata
- Download URL: vapoursynth_d2vsource-1.4-py3-none-win_amd64.whl
- Upload date:
- Size: 8.9 MB
- Tags: Python 3, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f594160446d79e912b02644a8c875cd37efe054823f8cd53a4ba4e544f9fecd8
|
|
| MD5 |
69d023724cb983ce2f64e58182f9869b
|
|
| BLAKE2b-256 |
665fcc9f5e01f59d59c2046fc0726c762acdcd5803fe19d07a45cf7542d53476
|
Provenance
The following attestation bundles were made for vapoursynth_d2vsource-1.4-py3-none-win_amd64.whl:
Publisher:
build.yml on dwbuiten/d2vsource
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vapoursynth_d2vsource-1.4-py3-none-win_amd64.whl -
Subject digest:
f594160446d79e912b02644a8c875cd37efe054823f8cd53a4ba4e544f9fecd8 - Sigstore transparency entry: 1262289793
- Sigstore integration time:
-
Permalink:
dwbuiten/d2vsource@a14d66d5e107769bb79d8361e8c54102426270df -
Branch / Tag:
refs/tags/v1.4 - Owner: https://github.com/dwbuiten
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build.yml@a14d66d5e107769bb79d8361e8c54102426270df -
Trigger Event:
push
-
Statement type:
File details
Details for the file vapoursynth_d2vsource-1.4-py3-none-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: vapoursynth_d2vsource-1.4-py3-none-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 8.8 MB
- Tags: Python 3, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
eb7a0295d47e6183e28c164ecee401ecfde71c37a910c4739f4b35905d9c3834
|
|
| MD5 |
f767565846f1fadb72413535e105ca61
|
|
| BLAKE2b-256 |
fedc15d6fd93802f3387312340c1d43d6955ba691bba7ace62a801179cbba115
|
Provenance
The following attestation bundles were made for vapoursynth_d2vsource-1.4-py3-none-manylinux_2_28_x86_64.whl:
Publisher:
build.yml on dwbuiten/d2vsource
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vapoursynth_d2vsource-1.4-py3-none-manylinux_2_28_x86_64.whl -
Subject digest:
eb7a0295d47e6183e28c164ecee401ecfde71c37a910c4739f4b35905d9c3834 - Sigstore transparency entry: 1262289778
- Sigstore integration time:
-
Permalink:
dwbuiten/d2vsource@a14d66d5e107769bb79d8361e8c54102426270df -
Branch / Tag:
refs/tags/v1.4 - Owner: https://github.com/dwbuiten
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build.yml@a14d66d5e107769bb79d8361e8c54102426270df -
Trigger Event:
push
-
Statement type:
File details
Details for the file vapoursynth_d2vsource-1.4-py3-none-manylinux_2_28_aarch64.whl.
File metadata
- Download URL: vapoursynth_d2vsource-1.4-py3-none-manylinux_2_28_aarch64.whl
- Upload date:
- Size: 8.6 MB
- Tags: Python 3, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2548a5026ec48082db35b4822524cea21ba2131a89fa7fd0ec03526a4ffcc11f
|
|
| MD5 |
4855b9d88fde77ae5697ac936fc0e87f
|
|
| BLAKE2b-256 |
72ac7ef4c5ddf79372d6d10693380dfbfbb7657b8e60fcc39735206644178891
|
Provenance
The following attestation bundles were made for vapoursynth_d2vsource-1.4-py3-none-manylinux_2_28_aarch64.whl:
Publisher:
build.yml on dwbuiten/d2vsource
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vapoursynth_d2vsource-1.4-py3-none-manylinux_2_28_aarch64.whl -
Subject digest:
2548a5026ec48082db35b4822524cea21ba2131a89fa7fd0ec03526a4ffcc11f - Sigstore transparency entry: 1262289755
- Sigstore integration time:
-
Permalink:
dwbuiten/d2vsource@a14d66d5e107769bb79d8361e8c54102426270df -
Branch / Tag:
refs/tags/v1.4 - Owner: https://github.com/dwbuiten
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build.yml@a14d66d5e107769bb79d8361e8c54102426270df -
Trigger Event:
push
-
Statement type:
File details
Details for the file vapoursynth_d2vsource-1.4-py3-none-macosx_15_0_x86_64.whl.
File metadata
- Download URL: vapoursynth_d2vsource-1.4-py3-none-macosx_15_0_x86_64.whl
- Upload date:
- Size: 7.6 MB
- Tags: Python 3, macOS 15.0+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
63000b9ea6444139c2b457d8f84904097fae20eac9f5a81ce3c5d8a2f195707d
|
|
| MD5 |
094709e9d58d2f120f63753878c687aa
|
|
| BLAKE2b-256 |
624c04722cc1990470d6dbc1e8935e0780589d49d592eca6f6650e71a837cab4
|
Provenance
The following attestation bundles were made for vapoursynth_d2vsource-1.4-py3-none-macosx_15_0_x86_64.whl:
Publisher:
build.yml on dwbuiten/d2vsource
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vapoursynth_d2vsource-1.4-py3-none-macosx_15_0_x86_64.whl -
Subject digest:
63000b9ea6444139c2b457d8f84904097fae20eac9f5a81ce3c5d8a2f195707d - Sigstore transparency entry: 1262289767
- Sigstore integration time:
-
Permalink:
dwbuiten/d2vsource@a14d66d5e107769bb79d8361e8c54102426270df -
Branch / Tag:
refs/tags/v1.4 - Owner: https://github.com/dwbuiten
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build.yml@a14d66d5e107769bb79d8361e8c54102426270df -
Trigger Event:
push
-
Statement type:
File details
Details for the file vapoursynth_d2vsource-1.4-py3-none-macosx_15_0_arm64.whl.
File metadata
- Download URL: vapoursynth_d2vsource-1.4-py3-none-macosx_15_0_arm64.whl
- Upload date:
- Size: 6.9 MB
- Tags: Python 3, macOS 15.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a73af0e3a199330a2ca850d6ea18f12afe3123e991740a6526cdc1e5c1d69f4c
|
|
| MD5 |
833d488c5ea2f52f023c6aea2237c02c
|
|
| BLAKE2b-256 |
c3fcf152c012e3a1ada9c46fe2eeb5bff1783fe6b3461f80f4168969f5845402
|
Provenance
The following attestation bundles were made for vapoursynth_d2vsource-1.4-py3-none-macosx_15_0_arm64.whl:
Publisher:
build.yml on dwbuiten/d2vsource
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vapoursynth_d2vsource-1.4-py3-none-macosx_15_0_arm64.whl -
Subject digest:
a73af0e3a199330a2ca850d6ea18f12afe3123e991740a6526cdc1e5c1d69f4c - Sigstore transparency entry: 1262289735
- Sigstore integration time:
-
Permalink:
dwbuiten/d2vsource@a14d66d5e107769bb79d8361e8c54102426270df -
Branch / Tag:
refs/tags/v1.4 - Owner: https://github.com/dwbuiten
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build.yml@a14d66d5e107769bb79d8361e8c54102426270df -
Trigger Event:
push
-
Statement type: