Skip to content

Allow ffmpeg 8.x, update from pyffmpeg to typed-ffmpeg#618

Open
Jakan-Kink wants to merge 2 commits intodatawhores:dev/3.14from
Jakan-Kink:dev/3.14-ffmpeg8
Open

Allow ffmpeg 8.x, update from pyffmpeg to typed-ffmpeg#618
Jakan-Kink wants to merge 2 commits intodatawhores:dev/3.14from
Jakan-Kink:dev/3.14-ffmpeg8

Conversation

@Jakan-Kink
Copy link
Copy Markdown

Replace raw subprocess calls with ffmpeg-python's fluent API for DRM decryption and audio/video muxing. Removes the overly conservative ffmpeg <8 version pin (decryption_key is stable through ffmpeg 8.x), fixes an undefined variable bug in verify_media_integrity's success log path, and corrects two invalid regex escape sequences.

Replace raw subprocess calls with ffmpeg-python's fluent API for DRM decryption and audio/video muxing. Removes the overly conservative ffmpeg <8 version pin (decryption_key is stable through ffmpeg 8.x), fixes an undefined variable bug in verify_media_integrity's success log path, and corrects two invalid regex escape sequences.
@Jakan-Kink
Copy link
Copy Markdown
Author

I downloaded 10 videos with this patch installed that all downloaded and went through the Widevine DRM pipeline.

Switch from the unmaintained ffmpeg-python (last release 2019) to
typed-ffmpeg, an actively maintained fork with full type annotations,
zero runtime dependencies, and no CVE-carrying `future` dep.

API adjustments:
- positional filename → keyword `filename=`
- arbitrary kwargs (movflags, decryption_key) → `extra_options={}`
- ffmpeg.Error → ffmpeg.FFMpegExecuteError
- probe() uses explicit show_format/show_streams params
- removed unused ffmpeg import from ffmpeg.py
@Jakan-Kink Jakan-Kink changed the title Allow ffmpeg 8.x, update from pyffmpeg to ffmpeg-python Allow ffmpeg 8.x, update from pyffmpeg to ffmpeg-typed Apr 2, 2026
@Jakan-Kink
Copy link
Copy Markdown
Author

ffmpeg -h
ffmpeg version 8.0.1 Copyright (c) 2000-2025 the FFmpeg developers
  built with gcc 15.2.0 (Alpine 15.2.0)
 2026-04-01 20:22:41:[keyhelpers.un_encrypt:107]  PID: 34 Media:<media_id> Post:<post_id> ffmpeg decrypt success <file_path>vid_<media_id>_<post_id>.mp4
 2026-04-01 20:22:41:[naming_script.naming_script:20]  naming script is disabled via settings; skipping excution
 2026-04-01 20:22:41:[paths._linux_truncateHelper:141]  path: <file_path>_<media_id>.mp4 filename bytesize: 38
 2026-04-01 20:22:50:[ffprobe.verify_media_integrity:101]  Integrity Check Passed: temp_<media_id>.mp4
Expected: 1853s | Actual: 1853.02s

@Jakan-Kink Jakan-Kink changed the title Allow ffmpeg 8.x, update from pyffmpeg to ffmpeg-typed Allow ffmpeg 8.x, update from pyffmpeg to typed-ffmpeg Apr 2, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant