v.0.4.4
This commit is contained in:
99
README.md
99
README.md
@@ -99,101 +99,4 @@ TMDB-backed metadata enrichment requires `TMDB_API_KEY` to be set in the environ
|
|||||||
|
|
||||||
## Version History
|
## Version History
|
||||||
|
|
||||||
### 0.4.3
|
See the [version history](docs/history.rst) for release notes.
|
||||||
|
|
||||||
- styled ASS subtitle sources with embedded font attachments are now detected explicitly, keep MKV output, preserve current source font attachments, and reject incompatible sidecar subtitle import
|
|
||||||
- attachment descriptors are now treated as source-runtime data instead of pattern schema data, so pattern persistence skips them and source-vs-pattern validation ignores them
|
|
||||||
- inspect differences no longer report planned changes for attachment filename/count drift while still showing attachment streams in the stream table
|
|
||||||
|
|
||||||
### 0.4.2
|
|
||||||
|
|
||||||
- pattern details now show an inline `Show: <quality>` hint next to the quality field when the pattern itself has no stored quality but the selected show does
|
|
||||||
- inspect stream tables now show attachment format labels like `TTF` in the codec column and keep attachment language cells blank instead of showing an undefined language
|
|
||||||
- ffmpeg damaged-MP3 diagnostics now recognize additional corruption lines such as `invalid new backstep`, keeping them grouped under the `warn-corrupt-mpeg-audio` review summary
|
|
||||||
|
|
||||||
### 0.4.1
|
|
||||||
|
|
||||||
- `convert` now supports `--copy-video` and `--copy-audio` to keep the selected stream type in copy mode without applying the corresponding reencode flags, filters, or formatting options
|
|
||||||
- ffmpeg conversions now monitor diagnostics while the process is running, retry unset AVI packet timestamps once with `-fflags +genpts`, and stop early when a file should be skipped instead of waiting for the full job to finish
|
|
||||||
- end-of-run convert summaries now list only ffmpeg findings that still require review, including named remedy identifiers such as `warn-corrupt-mpeg-audio`
|
|
||||||
- `upgrade` now finishes by reporting the installed FFX version together with the active bundle branch
|
|
||||||
|
|
||||||
### 0.3.1
|
|
||||||
|
|
||||||
- debug mode screen titles now append the active Textual screen class name, making screen-specific troubleshooting easier during inspect and edit flows
|
|
||||||
- `--cut` again works as a combined flag/option: omitted disables cutting, bare `--cut` applies the default `60,180`, and explicit duration or `START,DURATION` values stay supported
|
|
||||||
- H.265 unmux commands no longer force an invalid `-f h265` output format, keeping ffmpeg copy extraction aligned with the required Annex B bitstream filter
|
|
||||||
- H.264 encoding now falls back from `libx264` to `libopenh264` with a warning when needed, and the test fixtures use the same encoder fallback so the suite remains portable across ffmpeg builds
|
|
||||||
|
|
||||||
### 0.3.0
|
|
||||||
|
|
||||||
- inspect and edit screens now refresh nested track and pattern changes more reliably, with inspect-mode tables aligned to the target pattern view shown in the differences pane
|
|
||||||
- metadata editing got a follow-up polish pass with clearer ffmpeg notifications, a shared in-screen log pane, safer apply/reload handling, and expanded cleanup and normalization coverage
|
|
||||||
- track and asset probing recognize additional codecs, and the modern test suite now covers more metadata-editor, change-set, screen-state, and asset-probe behavior
|
|
||||||
- Textual now requires version `8.0` or newer to match the UI APIs used by the current screens
|
|
||||||
|
|
||||||
### 0.2.6
|
|
||||||
|
|
||||||
- DB-free `ffx edit` workflow for in-place metadata editing via temporary-file rewrite
|
|
||||||
- inspect and edit workflows split into dedicated Textual screens with shared media-workflow support
|
|
||||||
- Textual tables and row actions now separate raw data from rendered labels to avoid markup leaking into stored metadata
|
|
||||||
- responsive screen layout pass, `Esc` back handling, sortable show/inspect tables, and improved edit-screen notifications/toggles
|
|
||||||
- application-wide UTF-8 i18n catalogs with language precedence from CLI over config over system over German default
|
|
||||||
- metadata normalization extended for localized subtitle titles, ISO language cleanup, and smarter track editor language/title helpers
|
|
||||||
|
|
||||||
### 0.2.5
|
|
||||||
|
|
||||||
- show-level quality and notes fields
|
|
||||||
- pattern-over-show-over-default season-shift resolution with dynamic DB migration loading
|
|
||||||
- migration prompt now reports the upgrade path and creates an in-place DB backup before applying schema changes
|
|
||||||
- `upgrade --branch <name>` now fetches remote-only branches before switching
|
|
||||||
- `unmux` now applies season shifting to subtitle output filenames
|
|
||||||
- convert now keeps DB-defined target subtitle dispositions authoritative over sidecar filename disposition flags when a pattern definition exists
|
|
||||||
- focused modern tests added around migrations, unmux, upgrade, and subtitle-disposition import precedence
|
|
||||||
|
|
||||||
### 0.2.4
|
|
||||||
|
|
||||||
- lightweight CLI commands now stay import-light via lazy runtime loading
|
|
||||||
- setup/config templating moved to `assets/ffx.json.j2`
|
|
||||||
- aligned two-step local setup wrappers: `ffx setup` and `ffx configure_workstation`
|
|
||||||
- combined `ffprobe` payload reuse in `FileProperties`
|
|
||||||
- configurable crop-detect sampling plus per-process crop result caching
|
|
||||||
- single-query controller accessors and conditional DB schema bootstrap
|
|
||||||
- shared screen bootstrap/controller wiring for large detail screens
|
|
||||||
- configurable default season/episode digit lengths
|
|
||||||
- digit-aware `rename` and padded `unmux` filename markers
|
|
||||||
|
|
||||||
### 0.2.3
|
|
||||||
|
|
||||||
- PyPI packaging
|
|
||||||
- output filename templating
|
|
||||||
- season shifting
|
|
||||||
- DB versioning
|
|
||||||
|
|
||||||
### 0.2.2
|
|
||||||
|
|
||||||
- CLI overrides
|
|
||||||
|
|
||||||
### 0.2.1
|
|
||||||
|
|
||||||
- signature handling
|
|
||||||
- tag cleanup
|
|
||||||
- bugfixes and refactoring
|
|
||||||
|
|
||||||
### 0.2.0
|
|
||||||
|
|
||||||
- tests
|
|
||||||
- config file
|
|
||||||
|
|
||||||
### 0.1.3
|
|
||||||
|
|
||||||
- subtitle file imports
|
|
||||||
|
|
||||||
### 0.1.2
|
|
||||||
|
|
||||||
- bugfixes
|
|
||||||
|
|
||||||
### 0.1.1
|
|
||||||
|
|
||||||
- bugfixes
|
|
||||||
- TMDB show identification
|
|
||||||
|
|||||||
123
docs/history.rst
Normal file
123
docs/history.rst
Normal file
@@ -0,0 +1,123 @@
|
|||||||
|
Version History
|
||||||
|
===============
|
||||||
|
|
||||||
|
0.4.4
|
||||||
|
-----
|
||||||
|
|
||||||
|
- External subtitle imports can now match prefixless sidecar files against the source basename, choose their extension, and confirm partial substitutions.
|
||||||
|
- Unmux now creates missing output directories with confirmation or the new ``--yes`` option.
|
||||||
|
- Project documentation is now built with Sphinx and includes installation, usage, development, file-format, and API references.
|
||||||
|
|
||||||
|
0.4.3
|
||||||
|
-----
|
||||||
|
|
||||||
|
- Styled ASS subtitle sources with embedded font attachments are now detected explicitly, keep MKV output, preserve current source font attachments, and reject incompatible sidecar subtitle import.
|
||||||
|
- Attachment descriptors are now treated as source-runtime data instead of pattern schema data, so pattern persistence skips them and source-vs-pattern validation ignores them.
|
||||||
|
- Inspect differences no longer report planned changes for attachment filename/count drift while still showing attachment streams in the stream table.
|
||||||
|
|
||||||
|
0.4.2
|
||||||
|
-----
|
||||||
|
|
||||||
|
- Pattern details now show an inline ``Show: <quality>`` hint next to the quality field when the pattern itself has no stored quality but the selected show does.
|
||||||
|
- Inspect stream tables now show attachment format labels like ``TTF`` in the codec column and keep attachment language cells blank instead of showing an undefined language.
|
||||||
|
- FFmpeg damaged-MP3 diagnostics now recognize additional corruption lines such as ``invalid new backstep``, keeping them grouped under the ``warn-corrupt-mpeg-audio`` review summary.
|
||||||
|
|
||||||
|
0.4.1
|
||||||
|
-----
|
||||||
|
|
||||||
|
- ``convert`` now supports ``--copy-video`` and ``--copy-audio`` to keep the selected stream type in copy mode without applying the corresponding reencode flags, filters, or formatting options.
|
||||||
|
- FFmpeg conversions now monitor diagnostics while the process is running, retry unset AVI packet timestamps once with ``-fflags +genpts``, and stop early when a file should be skipped instead of waiting for the full job to finish.
|
||||||
|
- End-of-run convert summaries now list only FFmpeg findings that still require review, including named remedy identifiers such as ``warn-corrupt-mpeg-audio``.
|
||||||
|
- ``upgrade`` now finishes by reporting the installed FFX version together with the active bundle branch.
|
||||||
|
|
||||||
|
0.3.1
|
||||||
|
-----
|
||||||
|
|
||||||
|
- Debug mode screen titles now append the active Textual screen class name, making screen-specific troubleshooting easier during inspect and edit flows.
|
||||||
|
- ``--cut`` again works as a combined flag/option: omitted disables cutting, bare ``--cut`` applies the default ``60,180``, and explicit duration or ``START,DURATION`` values stay supported.
|
||||||
|
- H.265 unmux commands no longer force an invalid ``-f h265`` output format, keeping FFmpeg copy extraction aligned with the required Annex B bitstream filter.
|
||||||
|
- H.264 encoding now falls back from ``libx264`` to ``libopenh264`` with a warning when needed, and the test fixtures use the same encoder fallback so the suite remains portable across FFmpeg builds.
|
||||||
|
|
||||||
|
0.3.0
|
||||||
|
-----
|
||||||
|
|
||||||
|
- Inspect and edit screens now refresh nested track and pattern changes more reliably, with inspect-mode tables aligned to the target pattern view shown in the differences pane.
|
||||||
|
- Metadata editing got a follow-up polish pass with clearer FFmpeg notifications, a shared in-screen log pane, safer apply/reload handling, and expanded cleanup and normalization coverage.
|
||||||
|
- Track and asset probing recognize additional codecs, and the modern test suite now covers more metadata-editor, change-set, screen-state, and asset-probe behavior.
|
||||||
|
- Textual now requires version ``8.0`` or newer to match the UI APIs used by the current screens.
|
||||||
|
|
||||||
|
0.2.6
|
||||||
|
-----
|
||||||
|
|
||||||
|
- DB-free ``ffx edit`` workflow for in-place metadata editing via temporary-file rewrite.
|
||||||
|
- Inspect and edit workflows split into dedicated Textual screens with shared media-workflow support.
|
||||||
|
- Textual tables and row actions now separate raw data from rendered labels to avoid markup leaking into stored metadata.
|
||||||
|
- Responsive screen layout pass, ``Esc`` back handling, sortable show/inspect tables, and improved edit-screen notifications/toggles.
|
||||||
|
- Application-wide UTF-8 i18n catalogs with language precedence from CLI over config over system over German default.
|
||||||
|
- Metadata normalization extended for localized subtitle titles, ISO language cleanup, and smarter track editor language/title helpers.
|
||||||
|
|
||||||
|
0.2.5
|
||||||
|
-----
|
||||||
|
|
||||||
|
- Show-level quality and notes fields.
|
||||||
|
- Pattern-over-show-over-default season-shift resolution with dynamic DB migration loading.
|
||||||
|
- Migration prompt now reports the upgrade path and creates an in-place DB backup before applying schema changes.
|
||||||
|
- ``upgrade --branch <name>`` now fetches remote-only branches before switching.
|
||||||
|
- ``unmux`` now applies season shifting to subtitle output filenames.
|
||||||
|
- Convert now keeps DB-defined target subtitle dispositions authoritative over sidecar filename disposition flags when a pattern definition exists.
|
||||||
|
- Focused modern tests added around migrations, unmux, upgrade, and subtitle-disposition import precedence.
|
||||||
|
|
||||||
|
0.2.4
|
||||||
|
-----
|
||||||
|
|
||||||
|
- Lightweight CLI commands now stay import-light via lazy runtime loading.
|
||||||
|
- Setup/config templating moved to ``assets/ffx.json.j2``.
|
||||||
|
- Aligned two-step local setup wrappers: ``ffx setup`` and ``ffx configure_workstation``.
|
||||||
|
- Combined ``ffprobe`` payload reuse in ``FileProperties``.
|
||||||
|
- Configurable crop-detect sampling plus per-process crop result caching.
|
||||||
|
- Single-query controller accessors and conditional DB schema bootstrap.
|
||||||
|
- Shared screen bootstrap/controller wiring for large detail screens.
|
||||||
|
- Configurable default season/episode digit lengths.
|
||||||
|
- Digit-aware ``rename`` and padded ``unmux`` filename markers.
|
||||||
|
|
||||||
|
0.2.3
|
||||||
|
-----
|
||||||
|
|
||||||
|
- PyPI packaging.
|
||||||
|
- Output filename templating.
|
||||||
|
- Season shifting.
|
||||||
|
- DB versioning.
|
||||||
|
|
||||||
|
0.2.2
|
||||||
|
-----
|
||||||
|
|
||||||
|
- CLI overrides.
|
||||||
|
|
||||||
|
0.2.1
|
||||||
|
-----
|
||||||
|
|
||||||
|
- Signature handling.
|
||||||
|
- Tag cleanup.
|
||||||
|
- Bugfixes and refactoring.
|
||||||
|
|
||||||
|
0.2.0
|
||||||
|
-----
|
||||||
|
|
||||||
|
- Tests.
|
||||||
|
- Config file.
|
||||||
|
|
||||||
|
0.1.3
|
||||||
|
-----
|
||||||
|
|
||||||
|
- Subtitle file imports.
|
||||||
|
|
||||||
|
0.1.2
|
||||||
|
-----
|
||||||
|
|
||||||
|
- Bugfixes.
|
||||||
|
|
||||||
|
0.1.1
|
||||||
|
-----
|
||||||
|
|
||||||
|
- Bugfixes.
|
||||||
|
- TMDB show identification.
|
||||||
@@ -17,6 +17,12 @@ utility modules.
|
|||||||
usage
|
usage
|
||||||
file_formats
|
file_formats
|
||||||
|
|
||||||
|
.. toctree::
|
||||||
|
:maxdepth: 1
|
||||||
|
:caption: Release Notes
|
||||||
|
|
||||||
|
history
|
||||||
|
|
||||||
.. toctree::
|
.. toctree::
|
||||||
:maxdepth: 2
|
:maxdepth: 2
|
||||||
:caption: Contributor Guide
|
:caption: Contributor Guide
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
[project]
|
[project]
|
||||||
name = "ffx"
|
name = "ffx"
|
||||||
description = "FFX recoding and metadata managing tool"
|
description = "FFX recoding and metadata managing tool"
|
||||||
version = "0.4.3"
|
version = "0.4.4"
|
||||||
license = {file = "LICENSE.md"}
|
license = {file = "LICENSE.md"}
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"requests",
|
"requests",
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
VERSION='0.4.3'
|
VERSION='0.4.4'
|
||||||
DATABASE_VERSION = 3
|
DATABASE_VERSION = 3
|
||||||
|
|
||||||
DEFAULT_QUALITY = 32
|
DEFAULT_QUALITY = 32
|
||||||
|
|||||||
Reference in New Issue
Block a user