- Updated documentation and README file to point links to new repo home at https://github.com/fessonia/fessonia and new documentation home at https://fessonia.github.io/fessonia.
- Updated
package.json
and associated config to publish atfessonia
instead of@tedconf/fessonia
.
- TypeScript types module kind fixes (PR #45 by @andrewbranch)
- Update of package-lock.json lockfile version from 1 to 2, npm audit fixes to dev dependencies. No impact on production code. (773ba42)
- Dependabot update of dev dependency lodash. No impact to production code. (PR #47)
- Dependabot update of dev dependency y18n. No impact to production code. (PR #46)
- Added TypeScript support with types defined in the
types
folder. (PR #44 by @universalhandle and @glensc)
- Fix improper use of the Config singleton object, and update docs accordingly (PR #43 by @universalhandle)
- Refactor of command string creation within
FFmpegCommand
,FFmpegOutput
andFFmpegInput
to reduce repeated code for concatenation and option value quote handling. (PR #40)
- A bug (Issue #38) in command string generation preventing quoting of option values starting with
-
was fixed. (PR #39)
- Remove node 8 from Travis CI config, and bump the default node version to 12.15.0. This is in response to the Node.js February 2020 security releases addressing CVEs CVE-2019-15604, CVE-2019-15605, and CVE-2019-15606.
- Convert from using the
nyc
library for test coverage reporting to usingc8
, which uses V8's internal coverage metrics. This change was made due to bug instanbuljs/nyc#619, whereby reported line numbers in error stack traces from tests are incorrect, as well as for generally more simplicity in the test run. - Dependabot update of dev dependency acorn. No impact to production code. (PR #32)
- Dependency update of dev dependency minimist. No impact to production code. (4b63ea2)
- Dependabot update of dev dependency lodash. No impact to production code. (PR #37)
- Dependency update of dev dependencies c8 and all-contributors-cli. No impact to production code. (7de5991)
- A stray symlink causing a page load failure in the documentation site was removed.
- The Talks about this Library section of the About Fessonia page in the docs site was updated.
- A documentation bug in the Events section of the Getting Started page in the docs (#35) was found and fixed (PR #34 by @glensc.
This release alters the way filter pad names are handled by the library.
FilterChain
output pad names are only applied in the command output (cmd.toString()
andcmd.toCommand()
) whenstreamSpecifier()
is called on theFilterChain
object. This fixes bug #24 (explicit output pad names added to commands where streams were not explicitly mapped, breaking resulting theffmpeg
command).
- The library now applies predictable names to output pads of
FilterChain
objects, replacing the previously used salted hash with a structure that provides for replication of output when running the same code multiple times. - The
FilterNode
class has been altered to remove liveffmpeg
-based validation and information retrieval for filters and their arguments, relying onffmpeg
to error when filters and arguments are not correct. This decision was made because the complexity in code and automated testing added by this validation were considered to be far greater than the protection provided by such validation.
- A section has been added to the About Fessonia guide explaining how stream specifiers are used and what to expect when using explicit mappings.
This release alters the way run log and progress log output from ffmpeg is handled by the library:
- The library now modifies the specified ffmpeg command by default, adding the
-progress
global option for use in eventing on progress updates. To disable this, you can passfalse
to thespawn
method ofFFmpegCommand
. - Run log returned by
FFmpegCommand
no longer includes progress lines, as those are treated as ephemeral and only used to generate the events. - The
FFmpegCommand
no longer emitsfailure
events, instead emittingerror
events with appropriate information on anyffmpeg
failure with a newFFmpegError
object.
Documentation has been updated to reflect the new progress and log handling.
This release adds support for appending and prepending FilterNode
s to existing FilterChain
s.
- Add explicit testing of node 12 5ae9ce2
This initial version provides an implementation of the core features:
FFmpegCommand
supportingexecute
andspawn
and integrating aFilterGraph
as part of the commandFFmpegInput
andFFmpegOutput
supporting the various options supported byffmpeg
FilterNode
andFilterChain
supporting creation of filter chains for addition to the command's filter graph- Stream selection and stream mapping from
FFmpegInput
s toFilterChain
s andFFmpegOutput
s, and fromFilterChain
s toFFmpegOutput
s.
Documentation auto-generation capability, as well as several tutorials and informational documents were created and published with this release. Documentation for this release can be found at https://fessonia.github.io/fessonia/1.0.0/.