pkgsrc/multimedia/mkvtoolnix/Makefile

66 lines
2.3 KiB
Makefile
Raw Normal View History

# $NetBSD: Makefile,v 1.137 2019/10/06 16:37:36 adam Exp $
DISTNAME= mkvtoolnix-38.0.0
CATEGORIES= multimedia
MASTER_SITES= https://mkvtoolnix.download/sources/
EXTRACT_SUFX= .tar.xz
MAINTAINER= pkgsrc-users@NetBSD.org
2017-09-03 10:53:04 +02:00
HOMEPAGE= https://mkvtoolnix.download/
COMMENT= Set of tools to create, alter and inspect Matroska files
LICENSE= gnu-gpl-v2
multimedia/mkvtoolnix: update to 15.0.0 Version 15.0.0 "Duel with the Devil": Important notes * mkvmerge, mkvpropedit, GUI's header and chapter editors: the programs will no longer add most missing Matroska elements that are mandatory but have a default value in the Matroska specification (e.g. the `TagLanguage` element with a value of `und` if it isn't present in its `SimpleTag` parent). Due to this change libEBML v1.3.5 is now required. New features and enhancements * MKVToolNix GUI: multiplex tool: added a new entry to the "source files" context menu labeled "Set destination file name from selected file's name". It will force the GUI to consider the selected file to be the reference for automatically setting the file name, no matter which file was originally added as the first file. It will also force setting the destination file name once if automatic destination file name generation is turned off in the preferences. Implements part of 2058. * MKVToolNix GUI: multiplex tool: added an option in the preferences on "Multiplexer" → "Output" labeled "Only use the first source file that contains a video track". If enabled, only source files containing video tracks will be used for setting the destination file name. Other files that are added are ignore. Implements the rest of 2058. * MKVToolNix GUI: header editor: added support for editing the video colour attributes. Implements the second half of 2038. * MKVToolNix GUI: header editor: added support for the "video projection" track header attributes. Part of the implementation of 2064. * MKVToolNix GUI: job queue: selected jobs can now be move up and down by pressing the `Ctrl+Up` and `Ctrl+Down` keys. Additionally, push buttons to move them up & down are shown if the corresponding option is enabled in the preferences. Implements 2060. * mkvmerge: added support for the "video projection" track header attributes. Part of the implementation of 2064. * mkvinfo: added support for the "video projection" track header attributes. Part of the implementation of 2064. * mkvpropedit: added support for editing the video colour attributes. Implements one half of 2038. * mkvpropedit: added support for the "video projection" track header attributes. Part of the implementation of 2064. Bug fixes * all: selecting the program's language (e.g. via the `--ui-language` command-line option or via the GUI's preferences) did not work on Linux & Unix if the `LANGUAGE` environment variable was set and didn't include the desired language. Fixes 2070. * MKVToolNix GUI: removed the keyboard shortcuts for switching between the different tools (e.g. `Ctrl+Alt+1` for the multiplexer). They overlapped with basic functionality on keyboards that use an `AltGr` key, e.g. German ones, where `AltGr+7` emits `{`. As `AltGr+key` is implemented as `Ctrl+Alt+key` under the hood, this means that `AltGr+7` is really `Ctrl+Alt+7` which the GUI now took to mean "switch to the job queue" instead of "insert `{`". Fixes 2056. * MKVToolNix GUI: header editor: after saving the file the GUI wasn't updating its internal file modification timestamp. That lead to the GUI wrongfully claiming that the file had been modified externally when the user wanted to save the file once more, requiring a reload of the file losing all modifications made since saving the first time. * mkvmerge: DTS handling: some source files provide timestamps for audio tracks only once every `n` audio frames. In such situations mkvmerge was buffering too much data resulting in a single gap in the timestamps of one frame duration after frame number `n - 1` (the second audio timestamp read from the source file was used one output frame too early). Fixes 2071. * mkvinfo: fixed a null pointer dereference if an `EbmlBinary` element's data pointer is a null pointer. Fixes 2072. Build system changes * configure: added option `--disable-update-check`. If given, the code checking online for available updates will be disabled. The update check is enabled and included in the GUI by default. * libEBML v1.3.5 is now required. Other changes * mkvmerge: the option `--colour-matrix` has been renamed to `--colour-matrix-coefficients` in order to match the specification more closely. The old option name will continue to be recognized as well.
2017-09-17 14:00:41 +02:00
BUILD_DEPENDS+= docbook-xsl-[0-9]*:../../textproc/docbook-xsl
BUILD_DEPENDS+= po4a-[0-9]*:../../textproc/po4a
BUILD_DEPENDS+= ${RUBY_BASE}>=${RUBY_VERSION}:${RUBY_SRCDIR}
multimedia/mkvtoolnix: update to 15.0.0 Version 15.0.0 "Duel with the Devil": Important notes * mkvmerge, mkvpropedit, GUI's header and chapter editors: the programs will no longer add most missing Matroska elements that are mandatory but have a default value in the Matroska specification (e.g. the `TagLanguage` element with a value of `und` if it isn't present in its `SimpleTag` parent). Due to this change libEBML v1.3.5 is now required. New features and enhancements * MKVToolNix GUI: multiplex tool: added a new entry to the "source files" context menu labeled "Set destination file name from selected file's name". It will force the GUI to consider the selected file to be the reference for automatically setting the file name, no matter which file was originally added as the first file. It will also force setting the destination file name once if automatic destination file name generation is turned off in the preferences. Implements part of 2058. * MKVToolNix GUI: multiplex tool: added an option in the preferences on "Multiplexer" → "Output" labeled "Only use the first source file that contains a video track". If enabled, only source files containing video tracks will be used for setting the destination file name. Other files that are added are ignore. Implements the rest of 2058. * MKVToolNix GUI: header editor: added support for editing the video colour attributes. Implements the second half of 2038. * MKVToolNix GUI: header editor: added support for the "video projection" track header attributes. Part of the implementation of 2064. * MKVToolNix GUI: job queue: selected jobs can now be move up and down by pressing the `Ctrl+Up` and `Ctrl+Down` keys. Additionally, push buttons to move them up & down are shown if the corresponding option is enabled in the preferences. Implements 2060. * mkvmerge: added support for the "video projection" track header attributes. Part of the implementation of 2064. * mkvinfo: added support for the "video projection" track header attributes. Part of the implementation of 2064. * mkvpropedit: added support for editing the video colour attributes. Implements one half of 2038. * mkvpropedit: added support for the "video projection" track header attributes. Part of the implementation of 2064. Bug fixes * all: selecting the program's language (e.g. via the `--ui-language` command-line option or via the GUI's preferences) did not work on Linux & Unix if the `LANGUAGE` environment variable was set and didn't include the desired language. Fixes 2070. * MKVToolNix GUI: removed the keyboard shortcuts for switching between the different tools (e.g. `Ctrl+Alt+1` for the multiplexer). They overlapped with basic functionality on keyboards that use an `AltGr` key, e.g. German ones, where `AltGr+7` emits `{`. As `AltGr+key` is implemented as `Ctrl+Alt+key` under the hood, this means that `AltGr+7` is really `Ctrl+Alt+7` which the GUI now took to mean "switch to the job queue" instead of "insert `{`". Fixes 2056. * MKVToolNix GUI: header editor: after saving the file the GUI wasn't updating its internal file modification timestamp. That lead to the GUI wrongfully claiming that the file had been modified externally when the user wanted to save the file once more, requiring a reload of the file losing all modifications made since saving the first time. * mkvmerge: DTS handling: some source files provide timestamps for audio tracks only once every `n` audio frames. In such situations mkvmerge was buffering too much data resulting in a single gap in the timestamps of one frame duration after frame number `n - 1` (the second audio timestamp read from the source file was used one output frame too early). Fixes 2071. * mkvinfo: fixed a null pointer dereference if an `EbmlBinary` element's data pointer is a null pointer. Fixes 2072. Build system changes * configure: added option `--disable-update-check`. If given, the code checking online for available updates will be disabled. The update check is enabled and included in the GUI by default. * libEBML v1.3.5 is now required. Other changes * mkvmerge: the option `--colour-matrix` has been renamed to `--colour-matrix-coefficients` in order to match the specification more closely. The old option name will continue to be recognized as well.
2017-09-17 14:00:41 +02:00
USE_LANGUAGES= c c++11
2011-01-01 14:18:36 +01:00
USE_PKGLOCALEDIR= yes
multimedia/mkvtoolnix: update to 15.0.0 Version 15.0.0 "Duel with the Devil": Important notes * mkvmerge, mkvpropedit, GUI's header and chapter editors: the programs will no longer add most missing Matroska elements that are mandatory but have a default value in the Matroska specification (e.g. the `TagLanguage` element with a value of `und` if it isn't present in its `SimpleTag` parent). Due to this change libEBML v1.3.5 is now required. New features and enhancements * MKVToolNix GUI: multiplex tool: added a new entry to the "source files" context menu labeled "Set destination file name from selected file's name". It will force the GUI to consider the selected file to be the reference for automatically setting the file name, no matter which file was originally added as the first file. It will also force setting the destination file name once if automatic destination file name generation is turned off in the preferences. Implements part of 2058. * MKVToolNix GUI: multiplex tool: added an option in the preferences on "Multiplexer" → "Output" labeled "Only use the first source file that contains a video track". If enabled, only source files containing video tracks will be used for setting the destination file name. Other files that are added are ignore. Implements the rest of 2058. * MKVToolNix GUI: header editor: added support for editing the video colour attributes. Implements the second half of 2038. * MKVToolNix GUI: header editor: added support for the "video projection" track header attributes. Part of the implementation of 2064. * MKVToolNix GUI: job queue: selected jobs can now be move up and down by pressing the `Ctrl+Up` and `Ctrl+Down` keys. Additionally, push buttons to move them up & down are shown if the corresponding option is enabled in the preferences. Implements 2060. * mkvmerge: added support for the "video projection" track header attributes. Part of the implementation of 2064. * mkvinfo: added support for the "video projection" track header attributes. Part of the implementation of 2064. * mkvpropedit: added support for editing the video colour attributes. Implements one half of 2038. * mkvpropedit: added support for the "video projection" track header attributes. Part of the implementation of 2064. Bug fixes * all: selecting the program's language (e.g. via the `--ui-language` command-line option or via the GUI's preferences) did not work on Linux & Unix if the `LANGUAGE` environment variable was set and didn't include the desired language. Fixes 2070. * MKVToolNix GUI: removed the keyboard shortcuts for switching between the different tools (e.g. `Ctrl+Alt+1` for the multiplexer). They overlapped with basic functionality on keyboards that use an `AltGr` key, e.g. German ones, where `AltGr+7` emits `{`. As `AltGr+key` is implemented as `Ctrl+Alt+key` under the hood, this means that `AltGr+7` is really `Ctrl+Alt+7` which the GUI now took to mean "switch to the job queue" instead of "insert `{`". Fixes 2056. * MKVToolNix GUI: header editor: after saving the file the GUI wasn't updating its internal file modification timestamp. That lead to the GUI wrongfully claiming that the file had been modified externally when the user wanted to save the file once more, requiring a reload of the file losing all modifications made since saving the first time. * mkvmerge: DTS handling: some source files provide timestamps for audio tracks only once every `n` audio frames. In such situations mkvmerge was buffering too much data resulting in a single gap in the timestamps of one frame duration after frame number `n - 1` (the second audio timestamp read from the source file was used one output frame too early). Fixes 2071. * mkvinfo: fixed a null pointer dereference if an `EbmlBinary` element's data pointer is a null pointer. Fixes 2072. Build system changes * configure: added option `--disable-update-check`. If given, the code checking online for available updates will be disabled. The update check is enabled and included in the GUI by default. * libEBML v1.3.5 is now required. Other changes * mkvmerge: the option `--colour-matrix` has been renamed to `--colour-matrix-coefficients` in order to match the specification more closely. The old option name will continue to be recognized as well.
2017-09-17 14:00:41 +02:00
USE_TOOLS+= gmake msgfmt pkg-config
GNU_CONFIGURE= yes
multimedia/mkvtoolnix: update to 15.0.0 Version 15.0.0 "Duel with the Devil": Important notes * mkvmerge, mkvpropedit, GUI's header and chapter editors: the programs will no longer add most missing Matroska elements that are mandatory but have a default value in the Matroska specification (e.g. the `TagLanguage` element with a value of `und` if it isn't present in its `SimpleTag` parent). Due to this change libEBML v1.3.5 is now required. New features and enhancements * MKVToolNix GUI: multiplex tool: added a new entry to the "source files" context menu labeled "Set destination file name from selected file's name". It will force the GUI to consider the selected file to be the reference for automatically setting the file name, no matter which file was originally added as the first file. It will also force setting the destination file name once if automatic destination file name generation is turned off in the preferences. Implements part of 2058. * MKVToolNix GUI: multiplex tool: added an option in the preferences on "Multiplexer" → "Output" labeled "Only use the first source file that contains a video track". If enabled, only source files containing video tracks will be used for setting the destination file name. Other files that are added are ignore. Implements the rest of 2058. * MKVToolNix GUI: header editor: added support for editing the video colour attributes. Implements the second half of 2038. * MKVToolNix GUI: header editor: added support for the "video projection" track header attributes. Part of the implementation of 2064. * MKVToolNix GUI: job queue: selected jobs can now be move up and down by pressing the `Ctrl+Up` and `Ctrl+Down` keys. Additionally, push buttons to move them up & down are shown if the corresponding option is enabled in the preferences. Implements 2060. * mkvmerge: added support for the "video projection" track header attributes. Part of the implementation of 2064. * mkvinfo: added support for the "video projection" track header attributes. Part of the implementation of 2064. * mkvpropedit: added support for editing the video colour attributes. Implements one half of 2038. * mkvpropedit: added support for the "video projection" track header attributes. Part of the implementation of 2064. Bug fixes * all: selecting the program's language (e.g. via the `--ui-language` command-line option or via the GUI's preferences) did not work on Linux & Unix if the `LANGUAGE` environment variable was set and didn't include the desired language. Fixes 2070. * MKVToolNix GUI: removed the keyboard shortcuts for switching between the different tools (e.g. `Ctrl+Alt+1` for the multiplexer). They overlapped with basic functionality on keyboards that use an `AltGr` key, e.g. German ones, where `AltGr+7` emits `{`. As `AltGr+key` is implemented as `Ctrl+Alt+key` under the hood, this means that `AltGr+7` is really `Ctrl+Alt+7` which the GUI now took to mean "switch to the job queue" instead of "insert `{`". Fixes 2056. * MKVToolNix GUI: header editor: after saving the file the GUI wasn't updating its internal file modification timestamp. That lead to the GUI wrongfully claiming that the file had been modified externally when the user wanted to save the file once more, requiring a reload of the file losing all modifications made since saving the first time. * mkvmerge: DTS handling: some source files provide timestamps for audio tracks only once every `n` audio frames. In such situations mkvmerge was buffering too much data resulting in a single gap in the timestamps of one frame duration after frame number `n - 1` (the second audio timestamp read from the source file was used one output frame too early). Fixes 2071. * mkvinfo: fixed a null pointer dereference if an `EbmlBinary` element's data pointer is a null pointer. Fixes 2072. Build system changes * configure: added option `--disable-update-check`. If given, the code checking online for available updates will be disabled. The update check is enabled and included in the GUI by default. * libEBML v1.3.5 is now required. Other changes * mkvmerge: the option `--colour-matrix` has been renamed to `--colour-matrix-coefficients` in order to match the specification more closely. The old option name will continue to be recognized as well.
2017-09-17 14:00:41 +02:00
CONFIGURE_ARGS+= --disable-optimization
CONFIGURE_ARGS+= --disable-precompiled-headers
CONFIGURE_ARGS+= --disable-update-check
CONFIGURE_ARGS+= --with-boost-libdir=${BUILDLINK_PREFIX.boost-libs}/lib
multimedia/mkvtoolnix: update to 15.0.0 Version 15.0.0 "Duel with the Devil": Important notes * mkvmerge, mkvpropedit, GUI's header and chapter editors: the programs will no longer add most missing Matroska elements that are mandatory but have a default value in the Matroska specification (e.g. the `TagLanguage` element with a value of `und` if it isn't present in its `SimpleTag` parent). Due to this change libEBML v1.3.5 is now required. New features and enhancements * MKVToolNix GUI: multiplex tool: added a new entry to the "source files" context menu labeled "Set destination file name from selected file's name". It will force the GUI to consider the selected file to be the reference for automatically setting the file name, no matter which file was originally added as the first file. It will also force setting the destination file name once if automatic destination file name generation is turned off in the preferences. Implements part of 2058. * MKVToolNix GUI: multiplex tool: added an option in the preferences on "Multiplexer" → "Output" labeled "Only use the first source file that contains a video track". If enabled, only source files containing video tracks will be used for setting the destination file name. Other files that are added are ignore. Implements the rest of 2058. * MKVToolNix GUI: header editor: added support for editing the video colour attributes. Implements the second half of 2038. * MKVToolNix GUI: header editor: added support for the "video projection" track header attributes. Part of the implementation of 2064. * MKVToolNix GUI: job queue: selected jobs can now be move up and down by pressing the `Ctrl+Up` and `Ctrl+Down` keys. Additionally, push buttons to move them up & down are shown if the corresponding option is enabled in the preferences. Implements 2060. * mkvmerge: added support for the "video projection" track header attributes. Part of the implementation of 2064. * mkvinfo: added support for the "video projection" track header attributes. Part of the implementation of 2064. * mkvpropedit: added support for editing the video colour attributes. Implements one half of 2038. * mkvpropedit: added support for the "video projection" track header attributes. Part of the implementation of 2064. Bug fixes * all: selecting the program's language (e.g. via the `--ui-language` command-line option or via the GUI's preferences) did not work on Linux & Unix if the `LANGUAGE` environment variable was set and didn't include the desired language. Fixes 2070. * MKVToolNix GUI: removed the keyboard shortcuts for switching between the different tools (e.g. `Ctrl+Alt+1` for the multiplexer). They overlapped with basic functionality on keyboards that use an `AltGr` key, e.g. German ones, where `AltGr+7` emits `{`. As `AltGr+key` is implemented as `Ctrl+Alt+key` under the hood, this means that `AltGr+7` is really `Ctrl+Alt+7` which the GUI now took to mean "switch to the job queue" instead of "insert `{`". Fixes 2056. * MKVToolNix GUI: header editor: after saving the file the GUI wasn't updating its internal file modification timestamp. That lead to the GUI wrongfully claiming that the file had been modified externally when the user wanted to save the file once more, requiring a reload of the file losing all modifications made since saving the first time. * mkvmerge: DTS handling: some source files provide timestamps for audio tracks only once every `n` audio frames. In such situations mkvmerge was buffering too much data resulting in a single gap in the timestamps of one frame duration after frame number `n - 1` (the second audio timestamp read from the source file was used one output frame too early). Fixes 2071. * mkvinfo: fixed a null pointer dereference if an `EbmlBinary` element's data pointer is a null pointer. Fixes 2072. Build system changes * configure: added option `--disable-update-check`. If given, the code checking online for available updates will be disabled. The update check is enabled and included in the GUI by default. * libEBML v1.3.5 is now required. Other changes * mkvmerge: the option `--colour-matrix` has been renamed to `--colour-matrix-coefficients` in order to match the specification more closely. The old option name will continue to be recognized as well.
2017-09-17 14:00:41 +02:00
CONFIGURE_ARGS+= --with-boost-date-time=boost_date_time
mkvtoolnix: updated to 29.0.0 Version 29.0.0 "Like It Or Not" Important notes * The string formatting library used was switched from boost::format to [fmt](http://fmtlib.net/). See the section "Build system changes" for details. New features and enhancements * MKVToolNix GUI: added an option in the preferences for disabling automatic scaling for high DPI displays. * MKVToolNix GUI: the GUI will now prevent the system from going to sleep while the job queue is running. This feature is implemented for macOS, Windows and Linux/Unix systems where the org.freedesktop.login1.Manager D-Bus interface is available. Bug fixes * mkvmerge: chapter generation: the start timestamps of chapters generated in intervals was wrong for files whose smallest video timestamp was bigger than 0. * mkvmerge: MP4 reader: fixed handling of atoms whose size exceeds the parent atom's size. * mkvmerge, MKVToolNix GUI's chapter editor: the chapter name template will now also be used when reading Ogg-style chapter files with empty chapter names. * mkvextract: AAC: mkvextract will now write the program config element (PCE) before the first AAC raw data packet if the PCE is present in the AudioSpecificConfig structure in the Codec Private Matroska element. The PCE carries vital information about the number of channels and is required in certain cases. * mkvpropedit, MKVToolNix GUI's header editor: in situations when a one-byte space must be covered by a new EBML void element the following element must be moved up instead. If that moved element is a cluster, the corresponding cue entries will now be updated to reflect the cluster's new position. * MKVToolNix GUI: Windows: the application manifest is now included properly so that Windows actually recognizes it. Build system changes * Qt's D-Bus implementation is now required for building on systems other than macOS and Windows, * The boost::format library is not used anymore. * The [fmt library](http://fmtlib.net/) is now required. Versions 3 and newer are supported. As not all Linux distributions include packages for the library, its release 5.2.1 comes bundled with MKVToolNix. The configure script will check for a system version of the library and use it if present and recent enough. Otherwise it will fall back to the bundled version and link that statically.
2018-12-02 18:13:41 +01:00
CONFIGURE_ARGS+= --with-boost-filesystem=boost_filesystem
CONFIGURE_ARGS+= --with-boost_regex=boost_regex
CONFIGURE_ARGS+= --with-boost-system=boost_system
multimedia/mkvtoolnix: update to 15.0.0 Version 15.0.0 "Duel with the Devil": Important notes * mkvmerge, mkvpropedit, GUI's header and chapter editors: the programs will no longer add most missing Matroska elements that are mandatory but have a default value in the Matroska specification (e.g. the `TagLanguage` element with a value of `und` if it isn't present in its `SimpleTag` parent). Due to this change libEBML v1.3.5 is now required. New features and enhancements * MKVToolNix GUI: multiplex tool: added a new entry to the "source files" context menu labeled "Set destination file name from selected file's name". It will force the GUI to consider the selected file to be the reference for automatically setting the file name, no matter which file was originally added as the first file. It will also force setting the destination file name once if automatic destination file name generation is turned off in the preferences. Implements part of 2058. * MKVToolNix GUI: multiplex tool: added an option in the preferences on "Multiplexer" → "Output" labeled "Only use the first source file that contains a video track". If enabled, only source files containing video tracks will be used for setting the destination file name. Other files that are added are ignore. Implements the rest of 2058. * MKVToolNix GUI: header editor: added support for editing the video colour attributes. Implements the second half of 2038. * MKVToolNix GUI: header editor: added support for the "video projection" track header attributes. Part of the implementation of 2064. * MKVToolNix GUI: job queue: selected jobs can now be move up and down by pressing the `Ctrl+Up` and `Ctrl+Down` keys. Additionally, push buttons to move them up & down are shown if the corresponding option is enabled in the preferences. Implements 2060. * mkvmerge: added support for the "video projection" track header attributes. Part of the implementation of 2064. * mkvinfo: added support for the "video projection" track header attributes. Part of the implementation of 2064. * mkvpropedit: added support for editing the video colour attributes. Implements one half of 2038. * mkvpropedit: added support for the "video projection" track header attributes. Part of the implementation of 2064. Bug fixes * all: selecting the program's language (e.g. via the `--ui-language` command-line option or via the GUI's preferences) did not work on Linux & Unix if the `LANGUAGE` environment variable was set and didn't include the desired language. Fixes 2070. * MKVToolNix GUI: removed the keyboard shortcuts for switching between the different tools (e.g. `Ctrl+Alt+1` for the multiplexer). They overlapped with basic functionality on keyboards that use an `AltGr` key, e.g. German ones, where `AltGr+7` emits `{`. As `AltGr+key` is implemented as `Ctrl+Alt+key` under the hood, this means that `AltGr+7` is really `Ctrl+Alt+7` which the GUI now took to mean "switch to the job queue" instead of "insert `{`". Fixes 2056. * MKVToolNix GUI: header editor: after saving the file the GUI wasn't updating its internal file modification timestamp. That lead to the GUI wrongfully claiming that the file had been modified externally when the user wanted to save the file once more, requiring a reload of the file losing all modifications made since saving the first time. * mkvmerge: DTS handling: some source files provide timestamps for audio tracks only once every `n` audio frames. In such situations mkvmerge was buffering too much data resulting in a single gap in the timestamps of one frame duration after frame number `n - 1` (the second audio timestamp read from the source file was used one output frame too early). Fixes 2071. * mkvinfo: fixed a null pointer dereference if an `EbmlBinary` element's data pointer is a null pointer. Fixes 2072. Build system changes * configure: added option `--disable-update-check`. If given, the code checking online for available updates will be disabled. The update check is enabled and included in the GUI by default. * libEBML v1.3.5 is now required. Other changes * mkvmerge: the option `--colour-matrix` has been renamed to `--colour-matrix-coefficients` in order to match the specification more closely. The old option name will continue to be recognized as well.
2017-09-17 14:00:41 +02:00
CONFIGURE_ARGS+= --with-docbook-xsl-root=${PREFIX}/share/xsl/docbook
2014-07-09 13:36:29 +02:00
REPLACE_LOCALEDIR_PATTERNS= build-config.in
LDFLAGS.DragonFly= -lboost_system
2014-07-09 13:36:29 +02:00
LDFLAGS.SunOS+= -lintl
INSTALL_ENV+= SHELL=${SH:Q}
do-build:
cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${RAKE}
do-install:
multimedia/mkvtoolnix: update to 15.0.0 Version 15.0.0 "Duel with the Devil": Important notes * mkvmerge, mkvpropedit, GUI's header and chapter editors: the programs will no longer add most missing Matroska elements that are mandatory but have a default value in the Matroska specification (e.g. the `TagLanguage` element with a value of `und` if it isn't present in its `SimpleTag` parent). Due to this change libEBML v1.3.5 is now required. New features and enhancements * MKVToolNix GUI: multiplex tool: added a new entry to the "source files" context menu labeled "Set destination file name from selected file's name". It will force the GUI to consider the selected file to be the reference for automatically setting the file name, no matter which file was originally added as the first file. It will also force setting the destination file name once if automatic destination file name generation is turned off in the preferences. Implements part of 2058. * MKVToolNix GUI: multiplex tool: added an option in the preferences on "Multiplexer" → "Output" labeled "Only use the first source file that contains a video track". If enabled, only source files containing video tracks will be used for setting the destination file name. Other files that are added are ignore. Implements the rest of 2058. * MKVToolNix GUI: header editor: added support for editing the video colour attributes. Implements the second half of 2038. * MKVToolNix GUI: header editor: added support for the "video projection" track header attributes. Part of the implementation of 2064. * MKVToolNix GUI: job queue: selected jobs can now be move up and down by pressing the `Ctrl+Up` and `Ctrl+Down` keys. Additionally, push buttons to move them up & down are shown if the corresponding option is enabled in the preferences. Implements 2060. * mkvmerge: added support for the "video projection" track header attributes. Part of the implementation of 2064. * mkvinfo: added support for the "video projection" track header attributes. Part of the implementation of 2064. * mkvpropedit: added support for editing the video colour attributes. Implements one half of 2038. * mkvpropedit: added support for the "video projection" track header attributes. Part of the implementation of 2064. Bug fixes * all: selecting the program's language (e.g. via the `--ui-language` command-line option or via the GUI's preferences) did not work on Linux & Unix if the `LANGUAGE` environment variable was set and didn't include the desired language. Fixes 2070. * MKVToolNix GUI: removed the keyboard shortcuts for switching between the different tools (e.g. `Ctrl+Alt+1` for the multiplexer). They overlapped with basic functionality on keyboards that use an `AltGr` key, e.g. German ones, where `AltGr+7` emits `{`. As `AltGr+key` is implemented as `Ctrl+Alt+key` under the hood, this means that `AltGr+7` is really `Ctrl+Alt+7` which the GUI now took to mean "switch to the job queue" instead of "insert `{`". Fixes 2056. * MKVToolNix GUI: header editor: after saving the file the GUI wasn't updating its internal file modification timestamp. That lead to the GUI wrongfully claiming that the file had been modified externally when the user wanted to save the file once more, requiring a reload of the file losing all modifications made since saving the first time. * mkvmerge: DTS handling: some source files provide timestamps for audio tracks only once every `n` audio frames. In such situations mkvmerge was buffering too much data resulting in a single gap in the timestamps of one frame duration after frame number `n - 1` (the second audio timestamp read from the source file was used one output frame too early). Fixes 2071. * mkvinfo: fixed a null pointer dereference if an `EbmlBinary` element's data pointer is a null pointer. Fixes 2072. Build system changes * configure: added option `--disable-update-check`. If given, the code checking online for available updates will be disabled. The update check is enabled and included in the GUI by default. * libEBML v1.3.5 is now required. Other changes * mkvmerge: the option `--colour-matrix` has been renamed to `--colour-matrix-coefficients` in order to match the specification more closely. The old option name will continue to be recognized as well.
2017-09-17 14:00:41 +02:00
cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${INSTALL_ENV} ${RAKE} install
.include "options.mk"
.include "../../lang/ruby/rubyversion.mk"
.include "../../archivers/bzip2/buildlink3.mk"
.include "../../archivers/lzo/buildlink3.mk"
.include "../../audio/flac/buildlink3.mk"
.include "../../audio/libvorbis/buildlink3.mk"
.include "../../converters/libiconv/buildlink3.mk"
multimedia/mkvtoolnix: update to 15.0.0 Version 15.0.0 "Duel with the Devil": Important notes * mkvmerge, mkvpropedit, GUI's header and chapter editors: the programs will no longer add most missing Matroska elements that are mandatory but have a default value in the Matroska specification (e.g. the `TagLanguage` element with a value of `und` if it isn't present in its `SimpleTag` parent). Due to this change libEBML v1.3.5 is now required. New features and enhancements * MKVToolNix GUI: multiplex tool: added a new entry to the "source files" context menu labeled "Set destination file name from selected file's name". It will force the GUI to consider the selected file to be the reference for automatically setting the file name, no matter which file was originally added as the first file. It will also force setting the destination file name once if automatic destination file name generation is turned off in the preferences. Implements part of 2058. * MKVToolNix GUI: multiplex tool: added an option in the preferences on "Multiplexer" → "Output" labeled "Only use the first source file that contains a video track". If enabled, only source files containing video tracks will be used for setting the destination file name. Other files that are added are ignore. Implements the rest of 2058. * MKVToolNix GUI: header editor: added support for editing the video colour attributes. Implements the second half of 2038. * MKVToolNix GUI: header editor: added support for the "video projection" track header attributes. Part of the implementation of 2064. * MKVToolNix GUI: job queue: selected jobs can now be move up and down by pressing the `Ctrl+Up` and `Ctrl+Down` keys. Additionally, push buttons to move them up & down are shown if the corresponding option is enabled in the preferences. Implements 2060. * mkvmerge: added support for the "video projection" track header attributes. Part of the implementation of 2064. * mkvinfo: added support for the "video projection" track header attributes. Part of the implementation of 2064. * mkvpropedit: added support for editing the video colour attributes. Implements one half of 2038. * mkvpropedit: added support for the "video projection" track header attributes. Part of the implementation of 2064. Bug fixes * all: selecting the program's language (e.g. via the `--ui-language` command-line option or via the GUI's preferences) did not work on Linux & Unix if the `LANGUAGE` environment variable was set and didn't include the desired language. Fixes 2070. * MKVToolNix GUI: removed the keyboard shortcuts for switching between the different tools (e.g. `Ctrl+Alt+1` for the multiplexer). They overlapped with basic functionality on keyboards that use an `AltGr` key, e.g. German ones, where `AltGr+7` emits `{`. As `AltGr+key` is implemented as `Ctrl+Alt+key` under the hood, this means that `AltGr+7` is really `Ctrl+Alt+7` which the GUI now took to mean "switch to the job queue" instead of "insert `{`". Fixes 2056. * MKVToolNix GUI: header editor: after saving the file the GUI wasn't updating its internal file modification timestamp. That lead to the GUI wrongfully claiming that the file had been modified externally when the user wanted to save the file once more, requiring a reload of the file losing all modifications made since saving the first time. * mkvmerge: DTS handling: some source files provide timestamps for audio tracks only once every `n` audio frames. In such situations mkvmerge was buffering too much data resulting in a single gap in the timestamps of one frame duration after frame number `n - 1` (the second audio timestamp read from the source file was used one output frame too early). Fixes 2071. * mkvinfo: fixed a null pointer dereference if an `EbmlBinary` element's data pointer is a null pointer. Fixes 2072. Build system changes * configure: added option `--disable-update-check`. If given, the code checking online for available updates will be disabled. The update check is enabled and included in the GUI by default. * libEBML v1.3.5 is now required. Other changes * mkvmerge: the option `--colour-matrix` has been renamed to `--colour-matrix-coefficients` in order to match the specification more closely. The old option name will continue to be recognized as well.
2017-09-17 14:00:41 +02:00
.include "../../devel/boost-headers/buildlink3.mk"
.include "../../devel/boost-libs/buildlink3.mk"
.include "../../devel/gettext-lib/buildlink3.mk"
multimedia/mkvtoolnix: update to 15.0.0 Version 15.0.0 "Duel with the Devil": Important notes * mkvmerge, mkvpropedit, GUI's header and chapter editors: the programs will no longer add most missing Matroska elements that are mandatory but have a default value in the Matroska specification (e.g. the `TagLanguage` element with a value of `und` if it isn't present in its `SimpleTag` parent). Due to this change libEBML v1.3.5 is now required. New features and enhancements * MKVToolNix GUI: multiplex tool: added a new entry to the "source files" context menu labeled "Set destination file name from selected file's name". It will force the GUI to consider the selected file to be the reference for automatically setting the file name, no matter which file was originally added as the first file. It will also force setting the destination file name once if automatic destination file name generation is turned off in the preferences. Implements part of 2058. * MKVToolNix GUI: multiplex tool: added an option in the preferences on "Multiplexer" → "Output" labeled "Only use the first source file that contains a video track". If enabled, only source files containing video tracks will be used for setting the destination file name. Other files that are added are ignore. Implements the rest of 2058. * MKVToolNix GUI: header editor: added support for editing the video colour attributes. Implements the second half of 2038. * MKVToolNix GUI: header editor: added support for the "video projection" track header attributes. Part of the implementation of 2064. * MKVToolNix GUI: job queue: selected jobs can now be move up and down by pressing the `Ctrl+Up` and `Ctrl+Down` keys. Additionally, push buttons to move them up & down are shown if the corresponding option is enabled in the preferences. Implements 2060. * mkvmerge: added support for the "video projection" track header attributes. Part of the implementation of 2064. * mkvinfo: added support for the "video projection" track header attributes. Part of the implementation of 2064. * mkvpropedit: added support for editing the video colour attributes. Implements one half of 2038. * mkvpropedit: added support for the "video projection" track header attributes. Part of the implementation of 2064. Bug fixes * all: selecting the program's language (e.g. via the `--ui-language` command-line option or via the GUI's preferences) did not work on Linux & Unix if the `LANGUAGE` environment variable was set and didn't include the desired language. Fixes 2070. * MKVToolNix GUI: removed the keyboard shortcuts for switching between the different tools (e.g. `Ctrl+Alt+1` for the multiplexer). They overlapped with basic functionality on keyboards that use an `AltGr` key, e.g. German ones, where `AltGr+7` emits `{`. As `AltGr+key` is implemented as `Ctrl+Alt+key` under the hood, this means that `AltGr+7` is really `Ctrl+Alt+7` which the GUI now took to mean "switch to the job queue" instead of "insert `{`". Fixes 2056. * MKVToolNix GUI: header editor: after saving the file the GUI wasn't updating its internal file modification timestamp. That lead to the GUI wrongfully claiming that the file had been modified externally when the user wanted to save the file once more, requiring a reload of the file losing all modifications made since saving the first time. * mkvmerge: DTS handling: some source files provide timestamps for audio tracks only once every `n` audio frames. In such situations mkvmerge was buffering too much data resulting in a single gap in the timestamps of one frame duration after frame number `n - 1` (the second audio timestamp read from the source file was used one output frame too early). Fixes 2071. * mkvinfo: fixed a null pointer dereference if an `EbmlBinary` element's data pointer is a null pointer. Fixes 2072. Build system changes * configure: added option `--disable-update-check`. If given, the code checking online for available updates will be disabled. The update check is enabled and included in the GUI by default. * libEBML v1.3.5 is now required. Other changes * mkvmerge: the option `--colour-matrix` has been renamed to `--colour-matrix-coefficients` in order to match the specification more closely. The old option name will continue to be recognized as well.
2017-09-17 14:00:41 +02:00
BUILDLINK_ABI_DEPENDS.libebml+= libebml>=1.3.5
Updated to version 0.8.8. Changes: 0.8.8: ====== - mkvtoolnix now depends on libebml 0.7.0 and libmatroska 0.7.0. - mkvinfo: bug fix: mkvinfo was forcing libmatroska not to handle unknown elements and crashed on those. - mmg: new feature: When adding Matroska files the video track's display dimensions are displayed as well. - mmg: bug fix: On non-Windows systems some combinations of wxWindows and GTK caused continuous 100% CPU usage after a special call to wxExecute. - mkvmerge: new feature: Implemented reading AAC from AVIs. - mkvmerge: bug fix: The Flac packetizer was accessing uninitialized memory resulting in a crash on Windows. - mkvemrge: bug fix: Fixed the handling of RealMedia files with 'multirate' tracks (again). - mkvmerge: bug fix: On some rare occasions chapters were not written correctly when splitting was active. - avilib: bug fix: Fixed compilation on big endian systems. 0.8.7: ====== - mkvinfo: new feature: Added a terse output format via '-s'. - mkvmerge: new feature: If using MPEG4 video and no aspect ratio or display dimensions are given mkvmerge will extract the aspect ratio information from the stream and automatically set the display dimensions accordingly. - mkvmerge: bug fix: Using audio sync on AC3 tracks read from Matroska files did not work. - mkvextract: new feature: Added extraction of RealAudio and RealVideo tracks to RealMedia files. - mmg: new feature: Added a 'job queue'. The current settings can be added as a new job, and all pending jobs can be started for batch processing without user interaction.
2004-05-05 17:57:47 +02:00
.include "../../devel/libebml/buildlink3.mk"
.include "../../devel/zlib/buildlink3.mk"
.include "../../multimedia/libmatroska/buildlink3.mk"
2004-04-13 01:15:01 +02:00
.include "../../multimedia/libogg/buildlink3.mk"
Update to version 1.7.0 Changes: - mkvmerge: enhancement: Added support for MIME type detection via libmagic (patch by Robert Millan with heavy modifications by myself). - mkvmerge: bug fix: Theora headers were not handled correctly. - mkvmerge: bug fix: The WavPack reader was broken on 64bit systems (e.g. AMD64). - mkvmerge: bug fix: The Theora timecode handling was broken, and Ogg/Theora files were not identified correctly (they showed up as "unknown" in mmg). - mmg: enhancement: The 'adjust timecodes' function accepts timecodes like 'XXXXXunit' with 'unit' being 'ms', 'us', 'ns' or 's'. - mkvmerge: enhancement: mkvmerge will no longer refuse to concatenate files with differing Codec Private contents and only issue a warning in such cases. - mkvmerge: bug fix: Quicktime/MP4 reader: Added support for version 1 media headers ('mdhd' atom) with 64bit fields. Fixed the duration of the last packet passed downstream. Fixed overflow issues during re-scaling from the Quicktime/MP4's time scale to nano seconds used by mkvmerge. - mkvmerge: bug fix: Muxing wasn't working Windows 9x/ME because mkvmerge was trying to use Unicode file access functions when determining which directories to create. Fixes Anthill bug #177. - mkvmerge: new feature: Added support for the "Delay:" feature and for negative timecodes in VobSub IDX files. - mmg: new feature: If mmg is set to automatically fill in the output file name then it will clear the output file name once all input files have been removed. - mmg: bug fix: Fixed a crash that occured if the user removed an attachment and clicked somewhere in the empty space in the attachment list. Occured only on Windows. - mmg: bug fix: Re-added Chinese to the list of popular languages (those are listed first in the language drop down boxes). - mkvmerge: bug fix: The last change to the ISO 639 language handling broke the VobSub reader so that it reported the wrong language codes. This also caused mmg to not display the correct language after adding a VobSub file.
2006-10-08 07:22:19 +02:00
.include "../../sysutils/file/buildlink3.mk"
mkvtoolnix: updated to 20.0.0 Version 20.0.0 "I Am The Sun": Important notes * Feature removal: several deprecated features have been removed: * mkvmerge: the deprecated options --identify-verbose (and its counterpart -I), --identify-for-gui, --identify-for-mmg and --identification-format verbose-text * all command line tools: support for the deprecated, old, proprietary format used for option files * all command line tools: support for passing command line options via the deprecated environment variables MKVTOOLNIX_OPTIONS, MKVEXTRACT_OPTIONS, MKVINFO_OPTIONS, MKVMERGE_OPTIONS and MKVPROPEDIT_OPTIONS * mkvinfo: most of its code was re-written in order to lay the groundwork for including its functionality in MKVToolNix GUI but with more features than the existing mkvinfo GUI. The result is that a lot of its output has been changed slightly while keeping the basic layout. Changes include but aren't limited to: * Several element names are a bit clearer (e.g. Maximum cache instead of MaxCache). * All timestamps and durations are now output as nanoseconds in formatted form (e.g. 01:23:45.67890123). All additional formats (e.g. floating point numbers output in seconds or milliseconds) were removed. * Element names for chapters and tags are now translated if a translation is available. * Elements located in wrong positions within the Matroska document are handled better. While mkvinfo's output is mostly kept very stable, it is not designed to be parsed by other utilities. Even though I've tried hard to cram all changes and cleanups into this version, additional changes may be made in the next couple of releases depending on user feedback and bug reports. New features and enhancements * mkvmerge: AVC/h.264 packetizer (framed): access unit delimiter NALUs will now be removed. Bug fixes * mkvmerge: AVC/h.264 parser: when fixing the bitstream timing information mkvmerge will now use exact representations of the desired field duration if possible. For example, when indicating 50 fields/second num_units_in_tick is set to 1 and time_scale to 50 instead of 5368709 and 268435456. * mkvmerge: AVC/h.264 parser: mkvmerge no longer assumes that encountering sequence parameter set or picture parameter set NALUs signal the start of a new frame. * mkvmerge: AVC/h.264 packetizer (framed): when mkvmerge is told to fix the bitstream timing information, it will now update all SPS NALUs, not just the ones in the AVCC. * mkvmerge: MPEG TS reader: TS packet payloads will only be treated as PES packets if the payload actually starts with a PES start code. The prior behavior led to wrong timestamps and potentially broken frame data. * mkvmerge: MPEG TS reader: mkvmerge will now drop incomplete PES packets as soon as an error is detected in the transport stream instead of passing the incomplete frame to the packetizer. An error is assumed either if the transport_error_indicator flag is set or if the value of the continuity_counter header field doesn't match the expected value. * mkvmerge: Opus: when re-muxing Opus from Matroska mkvmerge will now write "block duration" elements for all block groups where a "discard padding" is set, too. * mkvmerge: SRT reader: mkvmerge can now handle SRT files with timestamps without decimal places (e.g. 00:01:15 instead of 00:01:15.000). * mkvmerge: read buffer I/O class: the class could get out of sync regarding the file position of the underlying file I/O class causing wrong data to be returned on subsequent read operations. One result was that trying to identifying MPLS files that refer to very short M2TS files caused mkvmerge to segfault. * mkvmerge: multiplexer core: if there's a gap in audio timestamps, a new block group/lace will be started for the first frame after each gap. Before the fix the frame after the gap was often stored in the previous block group causing the gap to be in the wrong place: at the end of that block group. * mkvextract: AVC/h.264: if two consecutive IDR frames with the same idr_pic_id parameter and no access unit delimiters are found between them, mkvextract will insert an access unit delimiter in order to signal the start of a new access unit. * MKVToolNix GUI: update check dialog: Markdown links will now be converted to clickable links. * build system: fixed a race condition when creating new directories if rake is run with -jN in newer versions of Ruby/rake. Build system changes * [cmark](https://github.com/commonmark/cmark), the CommonMark parsing and rendering library in C, is now required when building the GUIs.
2018-01-18 18:14:41 +01:00
.include "../../textproc/cmark/buildlink3.mk"
.include "../../textproc/expat/buildlink3.mk"
mkvtoolnix: updated to 29.0.0 Version 29.0.0 "Like It Or Not" Important notes * The string formatting library used was switched from boost::format to [fmt](http://fmtlib.net/). See the section "Build system changes" for details. New features and enhancements * MKVToolNix GUI: added an option in the preferences for disabling automatic scaling for high DPI displays. * MKVToolNix GUI: the GUI will now prevent the system from going to sleep while the job queue is running. This feature is implemented for macOS, Windows and Linux/Unix systems where the org.freedesktop.login1.Manager D-Bus interface is available. Bug fixes * mkvmerge: chapter generation: the start timestamps of chapters generated in intervals was wrong for files whose smallest video timestamp was bigger than 0. * mkvmerge: MP4 reader: fixed handling of atoms whose size exceeds the parent atom's size. * mkvmerge, MKVToolNix GUI's chapter editor: the chapter name template will now also be used when reading Ogg-style chapter files with empty chapter names. * mkvextract: AAC: mkvextract will now write the program config element (PCE) before the first AAC raw data packet if the PCE is present in the AudioSpecificConfig structure in the Codec Private Matroska element. The PCE carries vital information about the number of channels and is required in certain cases. * mkvpropedit, MKVToolNix GUI's header editor: in situations when a one-byte space must be covered by a new EBML void element the following element must be moved up instead. If that moved element is a cluster, the corresponding cue entries will now be updated to reflect the cluster's new position. * MKVToolNix GUI: Windows: the application manifest is now included properly so that Windows actually recognizes it. Build system changes * Qt's D-Bus implementation is now required for building on systems other than macOS and Windows, * The boost::format library is not used anymore. * The [fmt library](http://fmtlib.net/) is now required. Versions 3 and newer are supported. As not all Linux distributions include packages for the library, its release 5.2.1 comes bundled with MKVToolNix. The configure script will check for a system version of the library and use it if present and recent enough. Otherwise it will fall back to the bundled version and link that statically.
2018-12-02 18:13:41 +01:00
.include "../../textproc/fmtlib/buildlink3.mk"
.include "../../textproc/pugixml/buildlink3.mk"
.include "../../mk/bsd.pkg.mk"