Files
gallery-dl/test/results
bassberry fd5f5611f6 [tiktok] extract subtitles and all cover types (#8805)
* Make sure that `img_id`, `audio_id` and `cover_id` fields are always available.
    The values are set '' where they are not applicable.
    Having `img_id` is necessary for the default `archive_fmt`, the other fields are handled for consistency.
* Allow downloading more than one cover.
    The previous behavior is kept as-is, but setting the "covers" option to "all" now grabs all available covers.
* Add support for downloading subtitles
    Allows filtering subtitles by source type (ASR, MT) and language.
* Ensure archive uniqueness for covers and subtitles.
* Update the URL test pattern to include the `image` extension.
    Although Tiktok may serve the covers with jpeg content, the file ending can be `.image`.
    The test before 0c14b164 failed because the asserted URL did not match all cover types, but the now used pattern needs the mentioned file ending.
* Add support for "creator_caption" subtitles in "LC" format.
    These subtitles have the keys "Format" set to "creator_caption" and "Source" to "LC".
* Add "LC" (Local Captions) as a subtitle source type in the documentation
* Code deduplication and renaming subtitle metadata
    Changed the item type from singular `subtitle` to `subtitles`.
    Removed the wrong descriptor `cover` from the subtitles fallback title.
* Refactor subtitle filtering
    The filter is now prepared in `_init` to prevent parsing the same config parameter for every item.
    The `_extract_subtitles` function will still extract if either filter (source or language) matches.
* Generate a `file_id` for subtitles
    Subtitles have multiple fields that determine the unique file, so these are simply concatenated.
    This is similar to the cover types, only with more variations.
* Added tests for subtitles
* fix docs entries
* fix '"covers": "all"'
* simplify some code
* Fix fallback title for subtitles
    Added the missing "f" to the f-string and added "subtitle" to the title.
    The resulting title will look like "TikTok video subtitle #1234567"
2026-01-30 21:01:06 +01:00
..
2025-11-30 16:49:23 +01:00
2024-02-16 22:42:06 +01:00
2023-09-10 14:45:01 +02:00
2023-09-10 14:45:01 +02:00
2023-09-11 17:20:06 +02:00
2023-09-10 14:45:01 +02:00
2024-01-20 18:02:36 +01:00
2023-09-10 14:45:01 +02:00
2023-09-10 14:45:01 +02:00
2025-09-22 21:14:34 +02:00
2023-09-10 14:45:01 +02:00
2023-09-10 14:45:01 +02:00
2023-09-10 14:45:01 +02:00
2025-09-22 21:14:34 +02:00
2025-12-12 09:21:44 +01:00
2023-09-10 14:45:01 +02:00
2025-03-23 15:20:12 +01:00
2023-11-27 18:30:53 +01:00
2023-09-10 14:45:01 +02:00
2025-09-22 21:14:34 +02:00
2023-09-10 14:45:01 +02:00
2023-11-27 18:30:53 +01:00
2025-09-07 09:11:30 +02:00
2023-11-27 18:30:53 +01:00
2025-10-10 00:41:01 +02:00
2023-09-10 14:45:01 +02:00
2023-09-10 14:45:01 +02:00
2025-03-30 18:41:58 +02:00
2025-11-20 18:03:54 +01:00
2024-01-20 18:02:36 +01:00
2023-09-10 14:45:01 +02:00
2023-11-22 19:35:43 +05:30
2025-12-10 18:39:05 +01:00
2023-09-10 14:45:01 +02:00
2023-09-10 14:45:01 +02:00
2023-09-10 14:45:01 +02:00
2023-09-10 14:45:01 +02:00
2025-08-20 11:38:29 +02:00
2025-01-27 17:15:32 +01:00
2025-09-17 19:29:50 +02:00
2023-09-10 14:45:01 +02:00
2023-09-10 14:45:01 +02:00
2023-09-10 14:45:01 +02:00
2025-01-27 17:15:32 +01:00
2025-09-14 08:43:16 +02:00
2025-10-28 17:43:43 +01:00
2023-09-10 14:45:01 +02:00
2025-09-15 20:19:24 +02:00
2025-12-28 21:36:06 +01:00
2023-09-10 14:45:01 +02:00
2025-12-22 17:29:29 +01:00
2025-04-08 17:03:27 +02:00
2025-10-30 19:51:04 +01:00
2023-11-27 18:30:53 +01:00
2025-09-21 16:43:04 +02:00
2023-09-10 14:45:01 +02:00
2023-09-10 14:45:01 +02:00
2023-09-10 14:45:01 +02:00
2023-09-10 14:45:01 +02:00
2026-01-06 21:52:58 +01:00
2023-11-27 18:30:53 +01:00
2023-09-10 14:45:01 +02:00
2026-01-21 20:32:58 +01:00
2023-09-10 14:45:01 +02:00
2023-09-10 14:45:01 +02:00
2023-09-10 14:45:01 +02:00
2026-01-25 19:49:56 +01:00
2023-09-10 14:45:01 +02:00
2026-01-25 18:32:17 +01:00
2023-09-10 14:45:01 +02:00
2023-09-10 14:45:01 +02:00
2023-09-10 14:45:01 +02:00
2026-01-21 20:32:58 +01:00
2026-01-21 20:32:58 +01:00
2026-01-21 20:32:58 +01:00
2023-09-10 14:45:01 +02:00
2025-11-19 15:49:13 +01:00
2023-09-10 14:45:01 +02:00
2023-09-10 14:45:01 +02:00
2023-09-10 14:45:01 +02:00
2023-09-10 14:45:01 +02:00
2023-09-10 14:45:01 +02:00
2023-12-30 20:37:09 +01:00
2023-09-10 14:45:01 +02:00
2023-09-10 14:45:01 +02:00
2023-09-10 14:45:01 +02:00
2023-09-10 14:45:01 +02:00
2023-09-10 14:45:01 +02:00
2025-06-20 15:07:10 +02:00
2023-09-10 14:45:01 +02:00
2023-09-10 14:45:01 +02:00
2023-09-10 14:45:01 +02:00
2025-08-24 10:39:17 +02:00
2023-09-10 14:45:01 +02:00
2025-01-27 17:15:32 +01:00
2024-06-01 20:28:04 +02:00
2023-09-10 14:45:01 +02:00
2023-09-10 14:45:01 +02:00
2023-09-10 14:45:01 +02:00
2025-01-27 17:15:32 +01:00
2023-09-10 14:45:01 +02:00
2023-09-10 14:45:01 +02:00
2025-12-16 17:23:59 +01:00
2023-09-10 14:45:01 +02:00
2026-01-14 21:11:56 +01:00
2023-09-10 14:45:01 +02:00
2025-09-02 10:26:53 +02:00
2026-01-20 17:16:46 +01:00
2025-01-27 17:15:32 +01:00
2023-09-10 14:45:01 +02:00
2023-09-10 14:45:01 +02:00
2023-09-10 14:45:01 +02:00
2023-09-10 14:45:01 +02:00
2025-09-05 19:33:57 +02:00
2025-05-03 20:44:34 +02:00
2023-09-10 14:45:01 +02:00
2025-12-31 18:58:33 +01:00
2024-01-18 15:36:16 +01:00
2025-04-21 17:32:54 +02:00
2025-04-21 17:32:54 +02:00
2024-01-18 15:36:16 +01:00
2024-01-18 15:36:16 +01:00
2024-01-18 15:36:16 +01:00
2024-01-18 15:36:16 +01:00
2024-01-18 15:36:16 +01:00
2023-09-10 14:45:01 +02:00
2026-01-21 20:32:58 +01:00