100 Commits
Author SHA1 Message Date
Frédéric Tronel 814c64cc52 Fix a bug discovered by the synthetic video. 2026-08-31 21:28:07 +02:00
Frédéric Tronel c17ccb6563 Typo in calling ffmpeg. 2026-08-31 21:27:41 +02:00
Frédéric Tronel e1d7474e00 Improve error handling. 2026-08-31 14:30:38 +02:00
Frédéric Tronel 51bab76c00 Improve error handling. 2026-08-31 13:54:03 +02:00
Frédéric Tronel 153873637e Improve temporaries management. 2026-08-31 12:00:12 +02:00
Frédéric Tronel b0bc0a338e Improve exception raising when it comes from an exception handler. 2026-08-31 11:20:25 +02:00
Frédéric Tronel 4597c459a8 Remove extraneous f-string. 2026-08-31 11:14:38 +02:00
Frédéric Tronel 5b2afd29b3 Add a dedicated class for temporary files management. 2026-08-31 11:12:47 +02:00
Frédéric Tronel d1df44c82c Remove exit from pipeline. 2026-08-31 08:57:28 +02:00
Frédéric Tronel 1a616f6cbd Removing a lot of sys.exit inside cutting module. 2026-08-31 08:34:52 +02:00
Frédéric Tronel d756fede54 H264 concatenation functions are moved to cutting module. 2026-08-30 17:45:03 +02:00
Frédéric Tronel 34d1bc26f3 Create a dedicated module for coarse cutting. 2026-08-30 17:34:57 +02:00
Frédéric Tronel 04781021eb Create a dedicated module for coarse cutting. 2026-08-30 17:34:42 +02:00
Frédéric Tronel e1ac3e48bb Linting with ruff. 2026-08-30 17:24:26 +02:00
Frédéric Tronel ae1a040590 Refactoring: extract cutting engine inside a dedicated module. 2026-08-30 17:19:03 +02:00
Frédéric Tronel 0345293664 More linting with ruff (suppress unused imports). 2026-08-30 14:45:25 +02:00
Frédéric Tronel 63d2deafb1 Linting with ruff. 2026-08-30 14:42:21 +02:00
Frédéric Tronel 6f5dd3a9e4 Final typing error. 2026-08-30 14:18:39 +02:00
Frédéric Tronel 093ad733d3 Even more typing errors fixes. 2026-08-30 14:14:18 +02:00
Frédéric Tronel a6a41c112e Fix of several typing errors. 2026-08-30 13:56:41 +02:00
Frédéric Tronel 447d04d13d Better imports in the pipeline. 2026-08-30 09:33:02 +02:00
Frédéric Tronel 2590faf20f The full pipeline is now in its own module. 2026-08-30 08:58:23 +02:00
Frédéric Tronel bea482487e Replace spurious exit call by raising exceptions. 2026-08-29 16:15:47 +02:00
Frédéric Tronel c48b77f294 Move tests to root of the project. 2026-08-29 16:12:23 +02:00
Frédéric Tronel 0ff2e3a6dd Linting and typing fixes. 2026-08-29 16:07:29 +02:00
Frédéric Tronel 294d857206 Put all exceptions in their dedicated module. 2026-08-29 15:30:47 +02:00
Frédéric Tronel 280eb1facb Put all functions related to mkvtoolnix tools into a dedicated module. 2026-08-29 15:30:29 +02:00
Frédéric Tronel 3769244bdb Fix typing error. 2026-08-29 14:25:11 +02:00
Frédéric Tronel b241c45efc Move functions related to subtitles OCR in a dedicated module. 2026-08-29 14:22:35 +02:00
Frédéric Tronel edcbf91101 Transfer functions related to Matroska codec private data into a dedicated module. 2026-08-29 14:11:00 +02:00
Frédéric Tronel 4658cc16e0 Extract logging outside of function. 2026-08-29 13:56:04 +02:00
Frédéric Tronel 5bbdfe9929 Fix missing import. 2026-08-29 13:53:34 +02:00
Frédéric Tronel 87e326d976 Remove function to discover if required tools are installed. 2026-08-29 13:50:46 +02:00
Frédéric Tronel e2936d565f Fix typing errors in ffprobe and ffmpeg related functions. 2026-08-29 13:49:29 +02:00
Frédéric Tronel fa18247fd6 Fix typing problems in tools. 2026-08-29 12:31:50 +02:00
Frédéric Tronel 87b557bc38 Add functions related to ffmpeg, ppm files and timestamps to dedicated modules. 2026-08-29 11:24:50 +02:00
Frédéric Tronel a12a4e1b2b Fix typing errors in ffprobe functions. 2026-08-29 10:47:42 +02:00
Frédéric Tronel 795d314f13 Transfer functions that use ffprobe into a dedicated module. 2026-08-29 10:39:51 +02:00
Frédéric Tronel 700d1fedc5 Fixing type error. 2026-08-28 23:09:02 +02:00
Frédéric Tronel 92df1d24d6 Separate MKV class and functions in a separate module. 2026-08-28 22:57:50 +02:00
Frédéric Tronel ff20f31e74 No more linting error of mypy in H264. 2026-08-28 22:19:52 +02:00
Frédéric Tronel c32018caae Fix tscut for the new structure of the project. 2026-08-28 22:01:07 +02:00
Frédéric Tronel f6491be5b7 Create a module dedicated to H264 parameters dataclass. 2026-08-28 21:56:19 +02:00
Frédéric Tronel a1a1ae5399 Add first tests for H264 bitstream functions. 2026-08-28 21:43:30 +02:00
Frédéric Tronel 8dc2af580d Separate H264 specialized functions. 2026-08-28 21:25:23 +02:00
Frédéric Tronel 413df48a77 Fix wrong import. 2026-08-28 17:13:13 +02:00
Frédéric Tronel 7c539382e6 Replace = bytes() by b''. 2026-08-28 17:05:50 +02:00
Frédéric Tronel 451fd50c68 Remove unused imports. 2026-08-28 17:04:35 +02:00
Frédéric Tronel edd034b3b6 Remove 0 in range(0,). 2026-08-28 16:57:15 +02:00
Frédéric Tronel 66e20e126a Fix ruff warning about imports and IOError instead of OSError. 2026-08-28 16:53:38 +02:00
Frédéric Tronel f18ebfadc2 Fix of a potential bug found by ruff. 2026-08-28 16:52:18 +02:00
Frédéric Tronel e6814f483a Fix typos. 2026-08-28 16:23:35 +02:00
Frédéric Tronel 97ef0e972c Separate main() function in a dedicated module. 2026-08-28 16:20:17 +02:00
Frédéric Tronel 7e72611b1c Fix poetry environment. 2026-08-28 15:55:24 +02:00
Frédéric Tronel ff2ac0a236 Adding poetry support. 2026-08-28 15:50:31 +02:00
Frédéric Tronel bf7b98c73d Intialization of poetry. 2026-08-28 15:38:42 +02:00
Frédéric Tronel ffb167c321 Refactoring plan. 2026-08-28 14:04:05 +02:00
Frédéric Tronel f982b5b42d Removing remaining % string formatting. 2025-11-23 17:27:13 +01:00
Frédéric Tronel ed4ed5e7df Remove remaining % formatting in logging functions. 2025-11-23 17:16:16 +01:00
Frédéric Tronel c83bd09411 Adding doc string for more functions. 2025-11-23 17:14:02 +01:00
Frédéric Tronel 9a3d04af7f Better typing. 2025-11-23 15:56:09 +01:00
Frédéric Tronel bb5206d916 Correct cleaning of subtitles. 2025-11-23 14:54:14 +01:00
Frédéric Tronel e5b1917e78 Adding requirements for typing support. 2025-11-23 14:52:27 +01:00
Frédéric Tronel dd94e5c773 More linting with typechecking and type annotations. 2025-10-31 09:54:53 +01:00
Frédéric Tronel cb019413cc More linting: no more camelcase variables, functions, arguments or methods. 2025-10-30 16:33:15 +01:00
Frédéric Tronel 40ca3e136b More linting: no more camelcase for function names. 2025-10-29 14:54:42 +01:00
Frédéric Tronel 367cb440d8 Even more linting: function names with snake case, remove unused variables, wrong format f-strings, masked parameters. 2025-10-29 12:37:51 +01:00
Frédéric Tronel c565699875 Even more linting: no more variable with camel case. 2025-10-29 10:04:47 +01:00
Frédéric Tronel 75f227786f Still more linting (encoding for open, variables with snake case). 2025-10-28 10:55:47 +01:00
Frédéric Tronel 960de11b1b More linting. 2025-10-27 15:48:41 +01:00
Frédéric Tronel e192c66157 More linting: camel case for variable names, f-format strings. 2025-10-26 21:01:50 +01:00
Frédéric Tronel 23f1db5ffa Even more linting (long lines, trailing spaces, module importation order, variable names). 2025-10-26 17:14:29 +01:00
Frédéric Tronel 362844f8a1 Improve linting by remove superfluous parenthesis. 2025-10-25 16:55:05 +02:00
Frédéric Tronel 6ad2c3b50a Improve linting by remove bad indentations. 2025-10-25 16:47:28 +02:00
Frédéric Tronel ddec8633e3 Improve linting by remove trailing spaces. 2025-10-25 16:45:20 +02:00
Frédéric Tronel c3943ff70e Remove trailing spaces. 2025-10-25 16:33:29 +02:00
Frédéric Tronel 926ee16433 Improve pylint score and fix most errors. 2025-10-25 16:09:11 +02:00
Frédéric Tronel 489435a87f Improve pylint score and fix most errors. 2025-10-25 16:05:25 +02:00
Frédéric Tronel efceec0e48 Huge improvement in the merging of the different video parts using different encoding profiles, since reproducing the H264 profile of broadcast movies in nearly impossible (some features do not have corresponding options in ffmpeg). 2025-09-19 16:41:16 +02:00
Frédéric Tronel 10234d67da Improve the README with details about the processing workflow of the script. 2025-09-19 16:32:11 +02:00
Frédéric Tronel 7e5a500279 The clean target of the Makefile removes all intermediate files created by the script when used with the --keep option. 2025-09-19 16:31:03 +02:00
Frédéric Tronel 8aca12c422 We ignore mpeg TS and Matroska files. 2025-09-19 16:29:47 +02:00
Frédéric Tronel b94f865831 We handle the case where subtitles track are eventually empty after processing. 2023-12-24 16:52:40 +01:00
Frédéric Tronel 48cc4f8a27 hexdump package is required. 2023-12-24 14:31:20 +01:00
Frédéric Tronel 889b8dd6dc Subtitles extracted through OCR can be remuxed with the final cut movie (in addition to image based ones). 2023-12-24 14:29:42 +01:00
Frédéric Tronel ffce9aecdf Handling of OCR to generate subtitles files is working. 2023-12-22 14:57:25 +01:00
Frédéric Tronel 4dbf9d9c03 Suppress SRT files for cleaning. 2023-12-22 14:56:05 +01:00
Frédéric Tronel 03922a76d2 Add dependancy to library iso639 that supports the normalized names of languages. 2023-12-22 10:42:34 +01:00
Frédéric Tronel f23423ca8d Code to take into account the potential change of length field when modifying the EBML tree structure. 2023-12-20 10:46:54 +01:00
Frédéric Tronel 3681ff33f3 Remove code that was here to debug the codec private data changes. 2023-12-20 10:05:52 +01:00
Frédéric Tronel 59b55bac6c Make mkvmerge speaks english for its outputs so that the code is neutral with respect to locally installed languages. 2023-12-20 09:56:39 +01:00
Frédéric Tronel 2bf9b467bb We handle the cases where the old codec private data size is larger, smaller or equal to the new one. 2023-12-19 14:12:23 +01:00
Frédéric Tronel 6959e83327 Add a new option to not take into account sequences that are shorter than a certain threshold. 2023-12-18 16:14:57 +01:00
Frédéric Tronel 2f425aa9cf Adding a bunch of functions to modify codec private data inside video tracks, correct mkv binary representation after such changes. 2023-12-18 16:14:08 +01:00
Frédéric Tronel 556d88d73a mkvinfo command is now mandatory. 2023-12-18 16:11:46 +01:00
Frédéric Tronel af52c80a8e Positioning inside files using lseek is made uniformly. 2023-12-18 16:11:05 +01:00
Frédéric Tronel 04d23ca1b2 The langage used by commands cannot be set using locales module. 2023-12-18 16:09:48 +01:00
Frédéric Tronel 88d9d15496 If we only try to convert from .ts to .mp4 or .mkv, without any cut, do not remove output file. 2023-12-15 09:38:47 +01:00
Frédéric Tronel b1c58fc53a Correction d'un bug qui ne passe pas le chemin de ffmpeg dans la fonction ffmpegConvert. 2023-12-12 12:07:36 +01:00
Frédéric Tronel 4070f34a60 Ajout d'une large partie du code nécessaire à l'extraction des sous-titres via OCR. 2023-12-12 11:57:03 +01:00