DGAVCIndexNV is released under the MIT license.
Use of DGAVCIndexNV in a commercial product should not be considered commercial-use-restricted, as DGAVCIndexNV is still not well tested and might not work on certain graphics hardware.
1. A DGAVCIndexNV project file (AviSynth Script, AviSynth project file, Avisynth project file, or project file generated by the avconv tool)
2. The companion DGAVCDecodeNV filter (DGAVCDecodeNV or DGAVCDecodeNV)
To use DGAVCIndexNV with the Avisynth filter DGAVCDecodeNV, add the DGAVCDecodeNV filter to the Avisynth project file, or create a new Avisynth project file from scratch, and compile the project with the DGAVCDecodeNV filter.
Alternatively, you can use a precompiled DGAVCDecodeNV filter from the source package.
Note that on some systems, the output from avconv will be the frame index of the input file, and not the frame index of the Avisynth project file. The frame index in the output files is the same as the Avisynth project file's frame index. The output will be in the same format as the input.
If you are running DGAVCIndexNV for the first time, you will be asked to set the "Project Index" to the frame index of the input project file.
The input project file is usually a DGAVCIndexNV project file, but it could be any other project file that contains an AVC stream, as long as the source project is compiled and linked with the DGAVCDecodeNV filter, and is opened with the DGAVCIndexNV program.
Video decoders for NVidia cards are also supported:
The NVidia Video Decoder can be found here:
Examine the current context and decide if the current context is elementary or transport. This is indicated by the presence of two kVEContextElements inside the kVEContext element: if there is only one element, this means that it is an elementary stream.
Reads the next input frame from the "buf" buffer with the indicated "col_idx" and "row_idx" co-ordinates.
Reads the next input frame from the "buf" buffer with the indicated "buf_len".
Reads the next returned image from the "buf" buffer and returns the location of each pixel in the image (as if the image was decoded on the GPU).
Reads the next returned image from the "buf" buffer and returns the location of the pixels in the returned image, as if it was decoded on the GPU.
The fields of the returned image are described in the documentation of the DGAImageDecodeNV filter.
-1 -- buffer overrun (the end of the buffer was reached before all input data was read, or before all required data could be read due to the lack of memory).
This happens if either the "buf_len" parameter is smaller than the length of the buffer, or the "buf_len" and the "col_idx" and the "row_idx" parameters are outside the length of the buffer.
0 -- a kVEContext element was found inside the kVEContext element.
The first parameter, "buf_ptr", is NULL (the first parameter is used only if "returned_image" is not NULL).
1 -- a frame was read successfully.
The second parameter, "buf_len", is the length of the "buf" buffer.
It's easy to create an index of a DGA video. Use DGAVCIndexNV to create a project file that is then used by DGAVCDecodeNV to allow easy serving of a DGA video via Avisynth script.
The output of DGAVCIndexNV is a project file containing index data that is then used by DGAVCDecodeNV. For a tutorial on using DGAVCIndexNV, see the "How to Use" section below.
A collection of DGA video files can be organized into one project file. The project file is compressed and decompressed at runtime.
The following types of information are provided in the project file:
- The number of frames in the DGA video
- The location of each frame in the DGA video
- The absolute and relative times of each frame
- The duration of the DGA video
- The type of DGA video (raw, transport)
- The pixel format of the video
For more information on the DGA format and file structure, see "DGA (Simple Direct Media Layer) Format" on this page.
To find out which Nvidia video cards can currently use this program, see the list below.
DGAVCIndexNV is currently limited to opening elementary (raw) and transport AVC streams (MP4 and MKV files are not yet supported).
DGAVCIndexNV -nv -an input.dga
- input.dga is a DGA video file
- -nv indicates that output will be written to a file (default)
- -an indicates that the index will be generated for all frames (default)
This command generates and opens the default project file for an AVC (H.264) video stream.
This project file is used by the companion DGAVCDecodeNV Avisynth filter to allow frame-accurate serving of the video via an Avisynth script.
For more information on the Avisynth filter, see "DGA (Simple Direct Media Layer) Video Avisynth Filter" on this page.
The "-v" in the command line indicates that this version of the program is designed for use with the VP2 GPU decoder on some Nvidia video cards. Data is currently being compiled on which Nvidia cards work with this software and the data will be added to this document when available.
The following types of
Description of DGAVCIndexNV:
OS: Windows 7/8/8.1/10 (32-bit/64-bit)
Processor: Intel Pentium I, AMD Athlon II or newer
Memory: 2 GB RAM
Graphics: 256 MB DirectX 9 graphics card
DirectX: Version 9.0c
Hard drive: 5 GB available space
Sound Card: DirectX-compatible sound card
MSI Afterburner is required for MSI Afterburner is required for MSI Afterburner 2.8
ArtMoney SEPerfect Sound RecorderLPSolveFlickBiromsoft WebCam