Skip to main content

Crate j2k_cuda

Crate j2k_cuda 

Source
Expand description

NVIDIA CUDA GPU device-output adapter for Rust JPEG 2000 / HTJ2K in j2k.

This crate intentionally exposes the same backend-selection surface as the Metal adapter. CPU and auto requests return host-backed surfaces. Strict CUDA requests are reserved for CUDA-resident HTJ2K codestream decode and CUDA-resident HTJ2K encode inputs; the CPU-decode-then-upload path is exposed through explicit CPU-staged APIs.

Structs§

Codec
Marker type implementing tile-batch CUDA surface decode traits.
CudaEncodeStageAccelerator
CUDA implementation of selected JPEG 2000 encode stages.
CudaEncodeStageTimings
Cumulative CUDA encode-stage timings collected by CudaEncodeStageAccelerator.
CudaHtj2kCodeBlock
Flat POD HTJ2K code-block metadata consumed by CUDA kernels.
CudaHtj2kDecodePlan
Flat CUDA HTJ2K decode plan.
CudaHtj2kDecodeProfileDetail
Detailed route-overhead timings for strict CUDA HTJ2K decode.
CudaHtj2kEncodeProfileReport
Structured stage timings for a strict CUDA HTJ2K encode operation.
CudaHtj2kIdwtStep
Flat POD IDWT step consumed by CUDA kernels.
CudaHtj2kProfileReport
Structured stage timings for a strict CUDA HTJ2K operation.
CudaHtj2kRect
Flat POD rectangle used inside CUDA HTJ2K plan metadata.
CudaHtj2kStoreStep
Flat POD store step consumed by CUDA kernels.
CudaHtj2kSubband
Flat POD sub-band geometry consumed by CUDA kernels.
CudaLosslessEncodeOutcome
Lossless CUDA device-buffer encode output with host codestream bytes and timings.
CudaLosslessEncodeResidency
Residency decisions used by a lossless CUDA device-buffer encode.
CudaLosslessEncodeTile
CUDA-resident lossless J2K/HTJ2K encode input tile.
CudaSession
Mutable CUDA adapter session reused across submissions.
CudaSurface
Borrowed view of a CUDA-resident surface.
CudaSurfaceStats
CUDA surface execution counters.
J2kContext
Reusable JPEG 2000 decode context and cache state.
J2kDecoder
CUDA-facing JPEG 2000 decoder wrapper.
J2kScratchPool
Caller-owned reusable scratch for j2k.
SubmittedJ2kLosslessCudaEncode
Submitted single-tile CUDA lossless encode.
SubmittedJ2kLosslessCudaEncodeBatch
Submitted multi-tile CUDA lossless encode.
Surface
Host- or CUDA-backed decoded surface.

Enums§

CudaHtj2kTransform
CUDA-side DWT transform selector for a flat HTJ2K plan.
Error
Error returned by the CUDA JPEG 2000 adapter.
SurfaceResidency
Residency of a decoded J2K CUDA adapter surface.

Functions§

encode_j2k_lossless_with_cuda
Encode lossless JPEG 2000/HTJ2K samples through the CUDA encode-stage adapter.
encode_j2k_lossless_with_cuda_and_profile
Encode lossless JPEG 2000/HTJ2K samples through CUDA and return stage timings.
encode_lossless_from_cuda_buffer
Encode one CUDA-resident tile into host codestream bytes.
encode_lossless_from_cuda_buffer_with_report
Encode one CUDA-resident tile and return a host-byte timing report.
encode_lossless_from_cuda_buffers
Encode multiple CUDA-resident tiles into host codestream bytes.
encode_lossless_from_cuda_buffers_with_report
Encode multiple CUDA-resident tiles and return host-byte timing reports.
submit_lossless_from_cuda_buffer
Submit one CUDA-resident tile encode for later host-byte collection.
submit_lossless_from_cuda_buffers
Submit multiple CUDA-resident tile encodes for later host-byte collection.

Type Aliases§

CudaHtj2kBandId
Stable CUDA-side identifier for a direct-plan coefficient band.