JoyAI-Echo-SR audio-video super-resolution

JoyAI-Echo-SR

JoyAI-Echo-SR is the super-resolution sub-project of JoyAI-Echo. It provides super-resolution adapters for the LTX model family, covering two product lines. Training and inference code is available in the JoyAI-Echo-SR GitHub repository.

  • Short-video DMD — one-step audio-video generators for LTX-2 19B and LTX-2.3 22B, distilled with DMD distribution matching + GAN + pixel losses on the video branch; the full audio branch is carried in the checkpoints, which support joint audio-video 1-step SR.
  • Long-video audio-video SR — 736p → 1K / 2K joint audio-video enhancement on LTX-2.3 22B: multi-step teachers and a 1-step student, with sliding-window inference over arbitrarily long clips.

Released Weights

File Line Model family Steps Format
echo-sr-ltx2-19b-dmd-step18300.safetensors DMD LTX-2 19B 18,300 BF16 LoRA
echo-sr-ltx2.3-22b-dmd-step04600.safetensors DMD LTX-2.3 22B 4,600 BF16 LoRA
av-sr-1k-multistep-step09900.safetensors AV SR LTX-2.3 22B 9,900 BF16 LoRA
av-sr-1k-distill-video-step005100.safetensors AV SR LTX-2.3 22B 5,100 BF16 LoRA
av-sr-2k-multistep-step08000.safetensors AV SR LTX-2.3 22B 8,000 BF16 LoRA

The two 1K AV files form a teacher→student pair: the 1-step av-sr-1k-distill-video model was distilled from the multi-step av-sr-1k-multistep teacher (teacher-trajectory distillation with LPIPS, Haar wavelet, and temporal losses — enable_dmd: false, so it is not a DMD student). Both checkpoints restore audio and video jointly. The -video in the student's filename refers to its final distillation phase, which used video-focused losses; the audio branch was trained in an earlier joint audio-video phase and is carried in full (the file is structurally identical to the teacher — 3,330 tensors, 2,136 of them audio-branch). The 1-step inference path denoises audio latents in the same single step as video and muxes the enhanced track into the output.

av-sr-2k-multistep-step08000.safetensors is an independent multi-step model for exact 2× upscaling (1280×736 → 2560×1472). It maps the LQ latent grid onto the HQ grid with a learned CondSRPatchifyProj spatial projection and also restores audio and video jointly.

Two auxiliary assets required by the AV configs ship alongside the weights:

File Purpose
tinydecoder/taeltx2_3_wide.pth TAEHV fast latent preview decoder (validation / 1-step decode)
prompt/sr_prompt_embeddings.pt Precomputed SR prompt embeddings — the 1-step path never loads a text encoder

Download everything:

hf download xin1u/JoyAI-Echo-SR --local-dir checkpoints/echo-sr

This preserves the two subdirectories, so the auxiliary assets land at checkpoints/echo-sr/tinydecoder/taeltx2_3_wide.pth and checkpoints/echo-sr/prompt/sr_prompt_embeddings.pt — the paths the shipped configs default to.

Usage

Select assets matching the LTX model family; never mix 19B and 22B assets.

Short-video DMD inference:

git clone https://github.com/xin1u/JoyAI-Echo-SR.git
cd JoyAI-Echo-SR

bash scripts/infer.sh \
  --input-video input_lq.mp4 \
  --prompt 'A detailed cinematic scene.' \
  --output-dir outputs/inference \
  --checkpoint-path checkpoints/ltx-2.3-22b-dev.safetensors \
  --student-lora-path checkpoints/echo-sr/echo-sr-ltx2.3-22b-dmd-step04600.safetensors \
  --spatial-upsampler-path checkpoints/ltx-2.3-spatial-upscaler-x2-1.1.safetensors \
  --gemma-root checkpoints/gemma-3-12b \
  --target-height 1024 --target-width 1536 --num-frames 121 --fps 24

Long-video AV super-resolution (736p input, any length):

# multi-step, audio + video output
NPROC_PER_NODE=8 bash scripts/infer_av_sr_long.sh \
  --input input_736p.mp4 \
  --checkpoint checkpoints/echo-sr/av-sr-1k-multistep-step09900.safetensors

# 1-step, audio + video output, drop-first-frame i2v chaining across windows
NPROC_PER_NODE=8 bash scripts/infer_av_distill_long.sh \
  --input input_736p.mp4 \
  --checkpoint checkpoints/echo-sr/av-sr-1k-distill-video-step005100.safetensors

# multi-step 2K (exact 2×: 1280×736 → 2560×1472)
NPROC_PER_NODE=8 bash scripts/infer_av_sr_long.sh \
  --input input_736p.mp4 \
  --checkpoint checkpoints/echo-sr/av-sr-2k-multistep-step08000.safetensors \
  --hq-width 2560 --hq-height 1472

See docs/av_sr_training.md in the GitHub repository for training recipes and the data contract.

Checksums

SHA256 values are recorded in checksums.sha256.

License

The weights and code are subject to the LTX-2 Community License Agreement and the additional terms of their respective base model releases. The TinyDecoder architecture derives from MIT-licensed TAESD/TAEHV work by Ollin Boer Bohan; the released weights were trained by us against the LTX-2.3 video VAE. See the GitHub repository for complete attribution and notices.

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support