Commit Graph

113 Commits

Author SHA1 Message Date
4fdbfb28e3 Adds an audio extractor
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
2024-10-12 01:37:40 +02:00
87f5743a24 Adds option for overwriting original files
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
2024-07-18 14:07:51 +02:00
972691db76 Removes inclusion of external audio files, as ffmpeg produces audio streams with no sound
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
2024-07-10 19:53:03 +02:00
2145bfb8ea Improves handling of cover images
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
2024-07-09 19:37:05 +02:00
c0249c3b3a Adjusts the Signs/Songs RegEx
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
2024-07-06 01:55:02 +02:00
da67b195de Adds a converter for converting video audio to vorbis 2024-07-05 11:11:20 +02:00
5238697c70 Automatically fixes jap misspelling for Japanese streams
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
2024-06-10 14:36:19 +02:00
32be7d0aec Slightly alters the signs & songs RegEx
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
2024-06-09 03:44:09 +02:00
1ceb378757 Various smaller improvements
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
Improves Signs & Songs subtitle RegEx
Adds tests for the Signs & Songs subtitle RegEx
Automatically changes "enm" language to English
Makes the downscale converter select HEVC if the input is HEVC
2024-06-07 15:46:51 +02:00
1dc489a6f8 Adds a de-interlace module and stuff
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
Adds a module to de-interlace when converting a video. It's enabled by a new configuration option.
Fixes some bugs in the letterbox cropper
Adds mpeg4 to video formats
2024-05-29 17:06:32 +02:00
c0c8c9c054 Adds a Letterbox cropper, and fixes cover images for the anime converter
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
Adds a new letterbox cropper, which will use 10 samples at 30 points in a video in order to find the correct crop to remove letter-boxing.
Makes sure to always copy codec of cover images, as ffmpeg treats them as video streams.
2024-05-25 00:15:41 +02:00
c3c89fcb75 Adds a new converter for purely re-ordering and filtering streams
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
2024-05-20 19:33:51 +02:00
380a1b800a Improves configuration handling and stuff
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
2024-05-19 10:16:51 +02:00
ac25ca1986 Changes some things
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
Removes any forced subtitles when changing the default stream
Makes the title filter accept a list of filters, and allows using it for sorting rather than filtering
2024-05-06 01:32:19 +02:00
dae93b9f81 Adds filtering for audio description tracks
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
2024-05-05 03:50:07 +02:00
d46f12e690 Copies audio and other streams for the MKV to H265 reduced converter 2024-04-23 14:00:15 +02:00
92b46bdc9e Adds external audio parsing and other fixes
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
Trims subtitle tiles before checking if it's full
Generalizes some stream parsing
Fixes an exception when a stream tag is set, but has no value
Looks for both subtitle and audio streams adjacent to the main file
2024-04-21 19:54:45 +02:00
ded88eb5b5 Makes the anime converter map unknown streams
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
2024-04-20 00:43:52 +02:00
3c9fa55585 Fixes various issues
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
Makes it possible to turn off all types of hardware acceleration for all converters
Only encodes anime to hevc if not already hevc
Adds an option to force hevc to hevc encoding, for the anime converter
Adds an option to force encoding of audio, for the anime converter
Fixes a bug causing the codec name to not be parsed
Fixes an exception when trying to sort an empty list
Fixes order of sorting in the anime converter
Adds another signs songs filter
2024-04-19 13:05:12 +02:00
d487df0e78 Attempts to fix compilation
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
2024-04-17 15:57:28 +02:00
4ebd29b358 Makes it possible to enable debug mode
Some checks failed
KnarCraft/FFmpegConvert/pipeline/head There was a failure building this commit
Debug mode is now enabled if the property `debug = true` is set in `conf/config.properties`
Changes code for reading internal configurations
Changes many primitive lists to List<>
Adds some missing annotations
Renames the main class
2024-04-17 15:35:09 +02:00
f0e75eb440 Adds a new type of anime converter and stuff
Some checks failed
KnarCraft/FFmpegConvert/pipeline/head There was a failure building this commit
Adds a new type of anime converter that retains all streams, but converts the video to hevc, and re-orders the streams
Adds support for several types of encoding hardware acceleration that are automatically disabled if not available on the system.
Adds automatic hardware decoding acceleration.
Automatically removes empty files if ffmpeg fails.
2024-04-17 04:39:42 +02:00
461c7552b3 Adds converter modules and sorters
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
Converters are now the result of combining multiple modules, and running them in the selected sequence. I hope to be able to completely remove converters by replacing them with templates that simply run some modules in a sequence, before running FFmpeg. Then I want to be able to parse a command into a template, so users have full control of what a template does.

Sorters each sort a list of streams after a single criteria. They can be chained in order to create complex chained sorters.
2024-04-12 15:31:34 +02:00
376d5655f2 Improves FFMpeg command generation
Adds an object for storing FFmpeg variables. This allows any argument type to be added at any time, removing the limitation of having to add to the command in a specific order.
Makes stream objects store the index of the input file they belong to.
Saves the result of probes to a record that's easy to pass around.
Always passes all probed files to the input files of ffmpeg.
Makes it easier to enable h26x encoding/decoding when necessary.
Removes the hard-coded behavior for external subtitles, and allows any stream to be an external stream.
2024-04-08 20:00:09 +02:00
be88845731 Makes getting any stream info much easier
Adds some methods for parsing Strings as other objects without resulting in exceptions.
Adds a class for representing all possible stream info tags.
Makes streams parse data themselves, after receiving all tags set for the stream.
Changes Java version to Java 16
2024-04-08 00:47:48 +02:00
2c75d91cce Adds a converter to embed subtitles
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
2024-03-27 12:36:11 +01:00
2962114601 Simplifies pom.xml somewhat 2024-03-15 03:44:55 +01:00
692d9e79d2 Fixes some warnings 2024-03-15 02:09:46 +01:00
6c614b2f17 Adds a video downscaler
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
2024-03-15 01:20:26 +01:00
346a5e0606 Adds another signs and songs match
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
2024-02-25 22:20:58 +01:00
2346e651ef Adds new converters
Adds a MKV to HEVC converter which aims to reduce file-sizes
Adds a MKV to MP4 transcoder which allows selection of each type of stream
2023-11-14 17:10:45 +01:00
f81a21b9e9 Makes extension check case insensitive 2023-08-31 03:03:59 +02:00
56f5e31934 Fixes subtitle mapping for video with only external subtitles
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
2023-08-12 22:14:46 +02:00
5d94cabca0 Adds a MKV to h264 MKV converter
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
2023-07-27 17:39:18 +02:00
a9ea1f796a Makes sure to catch a signs misspelling when looking for signs & songs
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
2023-07-15 16:42:31 +02:00
32ec50ba7d Fixes incorrect video stream index
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
This fixes the absolute video stream index being used instead of the relative video stream index when converting a video with image (PGS) subtitles.
2022-12-23 02:09:29 +01:00
3c298f623e Adds ability to filter subtitle streams based on the title
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
2022-10-11 23:13:45 +02:00
1323513e46 Adds ability to force-select specific audio and subtitle streams for the anime converter
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
2022-10-09 23:53:39 +02:00
388563574f Fixes case of a songs/signs check
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
2022-09-30 21:48:20 +02:00
750498810c Adds a new Songs and Signs check
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
2022-09-30 03:55:32 +02:00
c9bd648437 Fixes only getting a partial regex match when deciding whether a subtitle is partial/forced or not
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
2021-01-26 18:12:34 +01:00
9c189b5dff Adds tests for the parser
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
2021-01-21 13:49:20 +01:00
6eec3d7969 Splits the parse function into more readable functions 2021-01-21 13:48:55 +01:00
8b0e394ac8 Finishes the parser. It should theoretically work now
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
2021-01-21 03:57:03 +01:00
8fb32402c7 Adds a check to make sure an expected comma separated list can be parsed to a list 2021-01-21 03:55:44 +01:00
4674f1276c Writes a lot of the code necessary for the parse function to work, though it's still not finished
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
2021-01-21 02:12:50 +01:00
87f2591d3b Adds missing comments for the converter argument class and adds a shorthand parameter 2021-01-21 02:11:25 +01:00
6cab649b1c Replaces the converter argument value SINGLE_VALUE with string as it makes more sense 2021-01-21 02:10:40 +01:00
1fe99a0fa4 Fixes a bug with an invalid command for audio conversion
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
2020-10-12 20:18:03 +02:00
9f96c84b9e Makes the codec dvd_subtitle be recognized as an image subtitle
All checks were successful
KnarCraft/FFmpegConvert/pipeline/head This commit looks good
2020-07-08 13:52:43 +02:00