Commit graph

246 commits

Author SHA1 Message Date
Malte Rosenbjerg
4c521aadcc Merge branch 'master' into master
Former-commit-id: 3888a07ab2
2021-08-06 08:10:37 +02:00
alex6dj
8633937f52 Use long option for stream index for better clarity
Former-commit-id: 14d457b946
2021-08-05 15:14:37 -04:00
alex6dj
96ec0613d3 Subtitle hard-burn implementation.
Former-commit-id: 3a89062384
2021-08-05 14:37:32 -04:00
Malte Rosenbjerg
d755c1d526 Fix PcmAudioSampleWrapper namespace
Former-commit-id: fc23456eb1
2021-08-05 13:21:57 +02:00
Fedor Zhilkin
8b5b6d8e79 Merge branch 'master' of github.com:rosenbjerg/FFMpegCore
Former-commit-id: 37109bab34
2021-08-03 21:57:30 +03:00
alex6dj
041d40effd Basic ffprobe test
Former-commit-id: 47916eac29
2021-07-31 16:46:21 -04:00
Malte Rosenbjerg
2601dc3a83 Reduce timeout in cancellation token test
Former-commit-id: 587c453a7e
2021-07-16 01:17:20 +02:00
Patrick Krämer
0ba18c24ae Support cancellation token for cancelling FFMPEG processes
Former-commit-id: 3efc34565a
2021-07-07 20:16:14 +02:00
Julien Loir
7e9b3d20cd Add test for the new audio pipe
Former-commit-id: acd462a527
2021-05-25 16:14:40 +02:00
Malte Rosenbjerg
33878ab605 Cleanup in using directives
Former-commit-id: 6c3129d417
2021-05-15 11:17:12 +02:00
Malte Rosenbjerg
12e031dfb3 Fixes, renames and missing stuff
Former-commit-id: 27a2219b8e
2021-05-14 01:02:00 +02:00
Malte Rosenbjerg
59dc8e6b94 Fix test
Former-commit-id: cce6c6983c
2021-03-15 23:50:11 +01:00
Malte Rosenbjerg
263645f83b Fix tests
Former-commit-id: 1d6517796f
2021-03-15 23:43:22 +01:00
Malte Rosenbjerg
8817b4c765 Merge branch 'master' into master
Former-commit-id: 5a2ebcf0f3
2021-03-15 23:20:27 +01:00
Malte Rosenbjerg
ffbce8fba9 Bump nuget dependencies
Former-commit-id: 0face0b6e4
2021-03-15 22:48:53 +01:00
Maxim Bagryantsev
ba8904429d Fixed process hang on pipe images format mismatch
Former-commit-id: fe646752d3
2021-03-15 20:37:18 +03:00
Malte Rosenbjerg
7457168c44 Cleanup
Former-commit-id: df0205fb11
2021-03-07 00:26:08 +01:00
Malte Rosenbjerg
a4a3218878 Cleanup tests
Former-commit-id: e0819c89bf
2021-03-06 23:12:53 +01:00
Malte Rosenbjerg
b776422ada Fix tests
Former-commit-id: e49290b217
2021-03-06 21:25:17 +01:00
Malte Rosenbjerg
32e5e97864 Merge branch 'master' into refactor-video-filter-args
Former-commit-id: 8452672ee6
2021-03-05 18:06:50 +01:00
Malte Rosenbjerg
77e2403902 Init
Former-commit-id: 4f28983972
2021-03-05 18:06:40 +01:00
Thierry Fleury
50cb183ae2 Add cancel timeout
(cherry picked from commit 6383164f267516fbd50d50b2a511c15c25a168dc)


Former-commit-id: 9672713e63
2021-03-02 19:43:24 +01:00
crypton
bff3406545 Format -ss timespan argument to calculate hours
Former-commit-id: bb08076db4
2021-02-12 22:16:55 -08:00
crypton
83c9478007 ffprobe duration parsing
- on large recordings (e.g. radio transmissions), ffprobe might return number of hours which is too large for TimeSpan.Parse (exception: The TimeSpan string '149:07:50.911750' could not be parsed because at least one of the numeric components is out of range or contains too many digits.)
- use regex groups to extract components (hours/minutes/seconds/millis) then parse/create new timespan from that
- NOTICE: this will discard microseconds provided by ffprobe, not sure if this is significant
- ffprobe has inconsitencies with how it represents millisecond component. Sometimes it may return just `82` for 820 milliseconds, so padding with 0s is required on the left. Likewise, sometimes it might return microseconds past milliseconds (first 3 significant figures); this is currently discarded
- Added InternalsVisibleTo to help with unit testing *just* the duration parsing function


Former-commit-id: 35ca34c0b0
2021-02-06 16:50:12 -08:00
Malte Rosenbjerg
1c016fed9a Merge branch 'master' into master
Former-commit-id: 6874ace962
2021-02-04 00:13:02 +01:00
Malte Rosenbjerg
3d640f9e08 Add NotifyOnOutput
Former-commit-id: cfee86199b
2020-12-18 00:40:09 +01:00
Malte Rosenbjerg
732e3a0772 Merge branch 'master' into master
Former-commit-id: de689dbb50
2020-12-09 11:02:26 +01:00
Malte Rosenbjerg
d2c4d81196 Use webm for streaming test
Former-commit-id: d64f2dddeb
2020-12-07 21:00:43 +01:00
Malte Rosenbjerg
c2f7b36a5e Test with .NET 5.0
Former-commit-id: 4c24189f6b
2020-12-07 18:07:23 +01:00
Malte Rosenbjerg
5311f99419 Convert to mp3 instead of opus
Former-commit-id: f9090ba9fe
2020-12-07 17:52:47 +01:00
Malte Rosenbjerg
27de93d64c Reencode raw file
Former-commit-id: 1a15c08ea2
2020-12-07 17:41:31 +01:00
Malte Rosenbjerg
ac82e17d25 Fix
Former-commit-id: 203da6300b
2020-12-07 01:20:13 +01:00
Malte Rosenbjerg
726c0f9800 Merge branch 'master' into refactor-tests
Former-commit-id: 7fd7ae369d
2020-12-07 01:14:19 +01:00
Malte Rosenbjerg
ec671ff8bf Dump
Former-commit-id: 3ad127a682
2020-12-07 00:47:47 +01:00
Malte Rosenbjerg
273d7232cb Use .NET Core 3.1 - 5.0 not yet available
Former-commit-id: d8a09a3574
2020-12-06 00:43:05 +01:00
Malte Rosenbjerg
73494b9765 Bump versions for tests
Former-commit-id: 9c3d8d4338
2020-12-06 00:34:06 +01:00
Malte Rosenbjerg
aeab8b03ed Add raw audio test
Former-commit-id: 7904a86d63
2020-12-06 00:33:55 +01:00
Malte Rosenbjerg
c691dba8e8 Init
Former-commit-id: 8b45a6b680
2020-12-03 20:47:20 +01:00
Malte Rosenbjerg
717d61dd07 Update dependencies and add StreamPipeSink constructor
Former-commit-id: 5ba2ed97cf
2020-11-25 16:15:16 +01:00
Fedor Zhilkin
0126cd1e77 Merge branch 'master' of https://github.com/rosenbjerg/FFMpegCore
Former-commit-id: c6bdf55a77
2020-11-13 01:36:00 +03:00
Malte Rosenbjerg
049cbc1dc6 Fix cancellation
Former-commit-id: 179cb15ba8
2020-10-28 19:26:33 +01:00
Malte Rosenbjerg
b0e3d157d3 Cleanup
Former-commit-id: 6b1e411bfe
2020-10-27 00:49:28 +01:00
Malte Rosenbjerg
e914f3fe4c More timeouts ...
Former-commit-id: da34cf1ec1
2020-10-25 17:42:50 +01:00
Malte Rosenbjerg
c00562bb31 Timeout on all to find problematic test in GH action runner
Former-commit-id: 1b42eb2c1a
2020-10-25 17:34:38 +01:00
Malte Rosenbjerg
88a099523d Add more timeout attributes
Former-commit-id: 2bacf6232b
2020-10-25 17:26:43 +01:00
Malte Rosenbjerg
f7e787a7d5 GitHub Actions annotations for tests
Former-commit-id: a40d264de5
2020-10-25 17:25:46 +01:00
Malte Rosenbjerg
98486268a2 Add timeouts
Former-commit-id: d0293598ae
2020-10-25 17:18:40 +01:00
Malte Rosenbjerg
b30a23fc58 Fix test
Former-commit-id: a7981f2886
2020-10-25 17:16:47 +01:00
Malte Rosenbjerg
4f9b4f4b57 Shorten resources used for testing
Former-commit-id: adbd61c51d
2020-10-25 17:11:52 +01:00
Malte Rosenbjerg
ca1035fde2 Add HardwareAccelerationArgument
Former-commit-id: 5fb2305b5b
2020-10-24 23:33:44 +02:00
Malte Rosenbjerg
9434715fba New API
Former-commit-id: 010e9947e9
2020-10-24 22:31:54 +02:00
Fedor Zhilkin
0a09cbce2b Add test for map filtering
Former-commit-id: f2fca0c1b6
2020-09-17 21:02:33 +03:00
Rafael Carvalho
b25d287422 Update existing references to use IMediaAnalysis
Former-commit-id: 37a04a37cd
2020-08-12 17:22:10 +12:00
Malte Rosenbjerg
bce612fca3 Update test packages
Former-commit-id: db449430bd
2020-08-11 00:47:29 +02:00
Malte Rosenbjerg
96af90ba7e Add SeekedFileInputArgument and such
Former-commit-id: 59abdd2343
2020-07-26 02:45:14 +02:00
Malte Rosenbjerg
ecec9d2ea4 Clean unused using directives
Former-commit-id: 8576154d3f
2020-07-20 15:26:34 +02:00
Malte Rosenbjerg
40f22de444 Merge branch 'master' of https://github.com/rosenbjerg/FFMpegCore
Former-commit-id: 3785179a87
2020-07-13 23:54:49 +02:00
Malte Rosenbjerg
ef8edf2a6e Base file extension on video container info from ffmpeg
Former-commit-id: 442e69ce1d
2020-07-13 23:54:46 +02:00
Mike Cochran
8105333443 Added audio codec profile to AudioStream
Added the audio codec profile and accompanying test.


Former-commit-id: 24f79fe3c8
2020-07-06 16:33:50 -05:00
Malte Rosenbjerg
8f66a8f4c2 Update VideoTest.cs
Former-commit-id: d840f8d237
2020-06-18 22:08:44 +02:00
Malte Rosenbjerg
e1422c94c8 Update VideoTest.cs
Former-commit-id: f9a3197165
2020-06-16 07:42:51 +02:00
Malte Rosenbjerg
5b3f578bff Skip two tests
Former-commit-id: cb42e13ed9
2020-06-06 15:38:14 +02:00
Malte Rosenbjerg
82d401b1cf Add overload to Join
Former-commit-id: a778ccd58f
2020-05-24 19:27:55 +02:00
Malte Rosenbjerg
17c9db52dd Renaming
Former-commit-id: 39dd390e81
2020-05-24 19:17:14 +02:00
Malte Rosenbjerg
ff5b9e3b42 Minor adjustment
Former-commit-id: 82fc6e92c9
2020-05-13 00:11:53 +02:00
Malte Rosenbjerg
dd785a8203 Add delay
Former-commit-id: ef64263899
2020-05-13 00:00:02 +02:00
Malte Rosenbjerg
93733964aa Make process cancellable
Former-commit-id: b2085c4a8b
2020-05-12 23:52:07 +02:00
Malte Rosenbjerg
7b935432e2 Dispose bitmap to unlock file in test
Former-commit-id: a754d57421
2020-05-12 22:50:27 +02:00
Malte Rosenbjerg
18cb87559d Snapshot improvements
completely in-memory is now possible


Former-commit-id: ca89cac2f0
2020-05-12 22:48:20 +02:00
Malte Rosenbjerg
aadcb6b5e1 Minor cleanup
Former-commit-id: 59f2afd2ca
2020-05-12 22:47:57 +02:00
Malte Rosenbjerg
5e1aef9adc Change default paths
Former-commit-id: 708189b837
2020-05-12 21:37:10 +02:00
Malte Rosenbjerg
d7a705e9ae Revert "Cleanup"
This reverts commit 152683323e [formerly d95f687e46].


Former-commit-id: 1dc7524ecd
2020-05-12 21:28:50 +02:00
Malte Rosenbjerg
152683323e Cleanup
Former-commit-id: d95f687e46
2020-05-12 21:05:00 +02:00
Malte Rosenbjerg
e0b7d652d9 Default to throwing on errors
Former-commit-id: 3855215000
2020-05-12 17:55:31 +02:00
Malte Rosenbjerg
20e2df244d Merge branch 'master' into fix/pix_fmt_order
Former-commit-id: ba43feb213
2020-05-12 17:29:24 +02:00
Максим Багрянцев
791cc4b300 Fixed color pallette (#58)
Former-commit-id: 29fd4a76c0
2020-05-12 18:26:52 +03:00
Максим Багрянцев
fa7850b135 Updated PixelFormat namespace
Former-commit-id: 17fa6aafee
2020-05-12 17:53:52 +03:00
Максим Багрянцев
6416cea390 Added Codec, PixelFormat and ContainerFormat classes
Former-commit-id: bbc9305e2b
2020-05-12 17:44:14 +03:00
Malte Rosenbjerg
684f2f6c08 Lower timeouts
Former-commit-id: b8fc8e5742
2020-05-11 00:51:00 +02:00
Malte Rosenbjerg
9115485464 Fix tests
Former-commit-id: f22c506f46
2020-05-11 00:02:35 +02:00
Malte Rosenbjerg
562e45130c Fix verbosity unit test
Former-commit-id: 89cd7e89e9
2020-05-10 23:56:48 +02:00
Malte Rosenbjerg
016ee08975 QuietArgument -> VerbosityLevelArgument
Former-commit-id: 2192096f74
2020-05-10 23:55:46 +02:00
Malte Rosenbjerg
7315cf2916 Use ToLowerInvariant
Former-commit-id: 188f37c9ee
2020-05-10 23:16:52 +02:00
Malte Rosenbjerg
f5febbd6ed Outcomment Format48bppRgb tests for now
Former-commit-id: 8583b02687
2020-05-10 14:15:32 +02:00
Malte Rosenbjerg
68abcb4a83 Merge branch 'master' into refactor
Former-commit-id: 40a7475b05
2020-05-10 13:23:04 +02:00
Malte Rosenbjerg
6d55faf3f5 Add timeouts
Former-commit-id: d923dace6c
2020-05-10 12:07:28 +02:00
Malte Rosenbjerg
d2852e7e56 Fix probe tests and add timeouts
Former-commit-id: dc30010725
2020-05-10 11:46:33 +02:00
Malte Rosenbjerg
364406fa2a Reverted experiment
Former-commit-id: 542000601a
2020-05-10 11:41:53 +02:00
Malte Rosenbjerg
06539f7b39 Fixes
Former-commit-id: 8d74a3e0d7
2020-05-10 11:31:26 +02:00
Malte Rosenbjerg
7167b4f728 Remove timeouts
Former-commit-id: 8787ccaa8d
2020-05-09 20:42:20 +02:00
Malte Rosenbjerg
23de941df3 Attempt at unix pipe support
Former-commit-id: 6c84396898
2020-05-09 20:34:27 +02:00
Malte Rosenbjerg
c3b5cd997e Cleanup
Former-commit-id: 72366d573a
2020-05-09 17:53:03 +02:00
Malte Rosenbjerg
bc533df330 Fix tests
Former-commit-id: f50ab577ae
2020-05-08 13:01:59 +02:00
Malte Rosenbjerg
bd55018f4f Major refactoring
Former-commit-id: ec043ef075
2020-05-08 11:07:51 +02:00
Malte Rosenbjerg
c6fbda042b Add timeouts
Former-commit-id: f791f6b059
2020-05-07 00:14:40 +02:00
Malte Rosenbjerg
77a6a9cd6c Make tests faster
Former-commit-id: 560c9c8d98
2020-05-06 23:39:45 +02:00
Malte Rosenbjerg
37eac91abf Fix tests
Former-commit-id: b4f0883685
2020-05-06 22:11:25 +02:00
Malte Rosenbjerg
f3af255d64 Fix tests
Former-commit-id: 211f4b168a
2020-05-06 21:47:15 +02:00
Malte Rosenbjerg
c66c0b481f Fix tests
Former-commit-id: 4a25e50eae
2020-05-06 21:42:56 +02:00
Malte Rosenbjerg
be932d3e49 Merge branch 'master' into feature/fluent-api
Former-commit-id: fe53609b38
2020-05-06 20:57:26 +02:00
Максим Багрянцев
50eb92efcb Updated tests
Former-commit-id: e4f4dd3def
2020-05-02 13:02:22 +03:00
Максим Багрянцев
71bd6f3f88 Merge remote-tracking branch 'fork/master' into feature/piping
Former-commit-id: ee16064f4c
2020-05-02 13:02:01 +03:00
Weihan Li
4d156a31c9 Merge branch 'master' into features/raw-argument
Former-commit-id: 1688e0d6e4
2020-05-02 11:07:04 +08:00
weihanli
5a6d61cfe3 rename RawArgument to CustomArgument
Former-commit-id: eb521ae908
2020-05-02 11:05:44 +08:00
Malte Rosenbjerg
78e3f5e0c5 Add AudioBitrate as separate Argument
Former-commit-id: 4b88229f72
2020-05-01 10:07:40 +02:00
Максим Багрянцев
0fc86a1a52 Added Fluent tests
Former-commit-id: b7aafeb586
2020-04-30 15:14:10 +03:00
Максим Багрянцев
e2e5ddddb9 Added Video_TranscodeInMemory test
Former-commit-id: 8cc1791d25
2020-04-28 22:54:39 +03:00
Максим Багрянцев
5edd89dc90 Added Unit tests for input and output pipes
Former-commit-id: 5991cc99f0
2020-04-28 22:40:33 +03:00
Максим Багрянцев
e462b424eb Simplified ContainsInputOutput implementation
Former-commit-id: 1d51163a05
2020-04-28 18:50:29 +03:00
Максим Багрянцев
934db731f1 Updated TasksExtensions
Former-commit-id: ea7acf2140
2020-04-28 16:08:02 +03:00
Максим Багрянцев
5c437211b2 Added ffprobe stream input
Former-commit-id: cfda0fc9ae
2020-04-28 15:21:48 +03:00
weihanli
9ffa2cb28a add RawArgument.cs
Former-commit-id: 5643544a3b
2020-04-28 12:31:16 +08:00
Максим Багрянцев
b0f46bc289 Added StreamPipeSource
Former-commit-id: 9903e333e6
2020-04-27 21:22:05 +03:00
Максим Багрянцев
12faf7482d Replaced IInputPipe interface with System.IO.Stream
Former-commit-id: 4f51c3d32f
2020-04-27 19:35:53 +03:00
Максим Багрянцев
a70525b64a Added input piping tests
Former-commit-id: 3c3b11cec6
2020-04-27 19:24:26 +03:00
Malte Rosenbjerg
418b0e57c7 Fix progress and add unit test
Former-commit-id: 55a7e74817
2020-03-02 22:50:04 +01:00
Malte Rosenbjerg
24c3eb475d Make output capacity configureable and set higher default
Fixes #42


Former-commit-id: cdcecda648
2020-03-01 12:55:57 +01:00
Malte Rosenbjerg
7b2a419c10 Cleanup
Former-commit-id: 46bc75c6d1
2020-02-27 21:12:48 +01:00
Malte Rosenbjerg
0cf3b6f859 Remove misplaced example
Former-commit-id: 7c39c84c01
2020-02-26 17:36:24 +01:00
Malte Rosenbjerg
e24b652695 Add support for drawtext argument
Former-commit-id: ebd9ff0adc
2020-02-25 23:19:30 +01:00
Malte Rosenbjerg
922e9c5811 Merge branch 'master' into master
Former-commit-id: 779de04ee0
2020-02-18 18:21:10 +01:00
Malte Rosenbjerg
bdeb395189 Larger epsilon needed
Former-commit-id: f6bb998ee2
2020-02-18 17:17:59 +01:00
Malte Rosenbjerg
084fb71a93 Fix unit test
FFProbe says 1:19.48 so there about should be good


Former-commit-id: 6d6c54aa12
2020-02-18 17:06:29 +01:00
Malte Rosenbjerg
2b0d2c4b44 Merge branch 'master' into master
Former-commit-id: ba863ae255
2020-02-18 16:55:04 +01:00
Malte Rosenbjerg
2c08a4a72b Update VideoTest.cs
Former-commit-id: 3f61ac0104
2020-02-16 21:00:50 +01:00
Malte Rosenbjerg
51d2a078c9 Fix unit test
Former-commit-id: 5c15d90641
2020-02-16 20:59:59 +01:00
Malte Rosenbjerg
7426e1091a Update ffmpeg.config.json
Former-commit-id: bdd826f650
2020-02-16 20:55:06 +01:00
Malte Rosenbjerg
e61646cf7d Update ffmpeg.config.json
Former-commit-id: 32a892e7d9
2020-02-16 20:50:41 +01:00
Malte Rosenbjerg
cf5ce26db8 Update ffmpeg.config.json
Former-commit-id: 83894a842e
2020-02-16 20:42:10 +01:00
Crydsch
bce2b98d5d Merge branch 'master' into master
Former-commit-id: a2f09b22f1
2020-02-16 17:23:32 +01:00
Malte Rosenbjerg
dda016040f Change test path
Former-commit-id: 757d23a99b
2020-02-16 11:14:01 +01:00
Malte Rosenbjerg
a7d2102958 Bump versions
Former-commit-id: 16a4726426
2020-02-16 11:08:15 +01:00
Crydsch
073cfee5ea Lift restriction of duration to seconds
Former-commit-id: 0b35935b5d
2020-02-13 17:36:49 +01:00
Malte Rosenbjerg
b11be87a45 More cleanup
Former-commit-id: ecf7a711f4
2020-02-12 20:45:16 +01:00
Tuğrul Elmas
3b289e3fd9 Arguments: DurationArgument
#33 

* added format provider to correctly parse the video's duration

* added DurationArgument


Former-commit-id: ec03bfe4a6
2020-01-29 16:33:15 +02:00
Vlad Jerca
214d68d369 FFMpegCore: remove binaries from repository (use choco)
- improve binary path detection

Former-commit-id: 4d75640a16
2019-05-10 20:25:57 +03:00
Vlad Jerca
45335bc334 chore: configure travis
Former-commit-id: 37da21fda9
2019-05-10 01:14:32 +03:00
Joshua Hatzenbuehler
f92652690e FFMpegCore: use Path.DirectorySeparatorChar instead of \\, for non windows based platform dont use target, for non windows based platform dont use .exe
Former-commit-id: 61d455b831
2019-05-02 10:11:00 -05:00
Vlad Jerca
c37e053c9c Tests: add video with only audio stream test
Former-commit-id: c2004fc549
2019-04-01 12:56:50 +03:00
Kyriakos Ioannou
b3c08dd890 Modify snapshot method (#4)
* When a snapshot is needeed, it's overkill to create the image on the filesystem, then delete it, and then create the image on the filesystem again. With this feature we can avoid this scenario and actually persist the created image on disk

* Apply requested changes by author. Added unit test for persist snapshot


Former-commit-id: c2a0c3b942
2019-03-28 00:51:41 +02:00
Vlad Jerca
7547c48927 FFMpegCore: Rethink options configuration
Former-commit-id: a0de4c1cf6
2019-03-04 23:05:01 +02:00
Vlad Jerca
3abaf36c49 Tests: add basic ctor tests
Former-commit-id: 74ea8a42e0
2019-03-03 01:33:39 +02:00
Vlad Jerca
9287cb3418 FFMpegCore: support configuration via ffmpeg.config.json
Former-commit-id: aed33a3d5c
2019-02-26 21:49:08 +02:00
Vlad Jerca
5f524bbc07 FFMpegCore: move argument implementations to seperate folder
Former-commit-id: 8272dc9c94
2019-02-26 21:46:48 +02:00
Vlad Jerca
b0c2a7ea92 FFMpegCore: use the argument builder in the ffmpeg methods
Former-commit-id: 3729d65e24
2019-02-08 22:41:40 +02:00
Vlad Jerca
9b855736ab FFMpegCore: port lib to .net standard
Former-commit-id: c215191bf5
2019-02-08 22:41:40 +02:00