1. The Rise of Multi-Slide Photo Content

Over the past two years, photo album posts (known in Chinese as 图集 - tújí or "image collection") have surged in popularity across both Douyin and TikTok. Photographers, infographics creators, fashion designers, and educational accounts frequently post carousel collections containing anywhere from 2 to 35 high-definition images synchronized to an ambient soundtrack.

However, many third-party downloaders fail when encountering image albums. Because they expect an MP4 video stream, they either crash with a null pointer exception or synthesize a low-resolution video recording of the rotating slides. Understanding how image notes are modeled in the platform’s backend reveals why this happens and how to extract pristine individual files.

2. Manifest Structure: Video vs. Image Schema

In Douyin's internal data model, a post can resolve to one of two structural schemas inside the JSON response:

When GDown detects a photo album, every slide in the collection is treated as a separate full-resolution image containing:

  • An array of resolution URLs (url_list) pointing to different CDN edge nodes.
  • Image dimensions (width and height), typically 1080 × 1920 or higher.
  • The associated master audio track under item.music.play_url.

3. WebP Image Compression in Douyin's Pipeline

Rather than serving legacy JPEG files, the platform delivers image sets predominantly in the Google WebP image container format.

WebP offers significant technical advantages:

  1. 25% to 34% smaller file sizes compared to JPEG at equivalent Structural Similarity (SSIM) visual quality indices.
  2. Predictive coding: WebP uses block-level spatial prediction from neighbouring sub-blocks within the same frame.
  3. Alpha transparency support: Enabling seamless overlay graphics when needed.

When GDown streams these images to the user's browser, it preserves the exact binary payload transmitted by the CDN, ensuring that no re-compression, downscaling, or metadata stripping takes place.

4. Client-Side ZIP Packaging via JSZip

A critical architectural innovation in GDown's design is how batch image downloads are handled. Many traditional converter websites download images to their own central server, execute a server-side ZIP compression job, and then transmit the ZIP to the user.

This centralized model has fatal flaws:

  • It introduces massive server latency while waiting for multi-gigabyte files to compile.
  • It consumes expensive server egress bandwidth twice (once from CDN to server, and once from server to user).
  • It creates privacy vulnerabilities by storing user files temporarily on disk.

GDown's Serverless Edge Architecture:

Instead of server-side archiving, GDown downloads individual image streams asynchronously directly in your browser using the modern Fetch API. Once all image blobs are collected into browser memory:

  1. The client-side JSZip library constructs an in-memory ZIP archive using lightweight Deflate compression.
  2. A progress modal displays real-time progress for both fetching and compression stages.
  3. The completed archive is packaged into a temporary Blob URL and triggered automatically for instant download.

This client-side workflow guarantees zero latency, complete user privacy, and zero server storage overhead.

5. Step-by-Step Guide: Downloading a Douyin Photo Album

  1. Copy the Link: Inside the Douyin app, navigate to any photo album post, tap the "Share" arrow, and select "Copy Link" (复制链接).
  2. Paste into GDown: Open gdown.xyz, paste your link into the input field, and click "Download".
  3. Preview High-Res Gallery: GDown instantly parses the collection, displaying a thumbnail grid showing the total number of images (e.g. 12 Photos).
  4. Single or Batch Save: Click the download icon on any individual slide to save a single image, or click "Download All (ZIP)" to bundle the entire album into a neatly organized archive with a single click.

Authored by GDown Multimedia Engineering Lab

Specialists in image compression algorithms, browser-based WebAssembly/JSZip compilation, and high-concurrency client-side media pipelines.