* Released v1.4.4.
* KaxInternalBlock::ReadData(): Fixed an invalid memory
access. When reading a block group or a simple block that uses
EBML lacing the frame sizes indicated in the lacing weren't
checked against the available number of bytes. If the indicated
frame size was bigger than the whole block's size the parser would
read beyond the end of the buffer resulting in a heap information
leak.
2015-10-17 Moritz Bunkus <moritz@bunkus.org>
* Released v1.4.3.
2015-05-02 Daniel Winzen <d@winzen4.de>
* all: a couple of optimizations in the main library and a memory
leak fix in the tests
2015-02-01 Jan Engelhardt <jengelh@inai.de>
* build system: fix linking against libEBML
Otherwise the configure script fails with:
PKGSRC-WARNING: Something is trying to run the c compiler,
PKGSRC-WARNING: but it is not added to USE_LANGUAGES in the package Makefile.
The package still don't build because of an upstream problem in Makefile.am, but it is a separate issue.
2015-01-04 Moritz Bunkus <moritz@bunkus.org>
* Released v1.4.2.
2014-12-21 Moritz Bunkus <moritz@bunkus.org>
* build system: switched the build system from hand-crafted
Makefiles to an autoconf/automake-based system. A pkg-config file
will be installed as well; its name is »libmatroska«. Based on a
similar patch for libEBML by Jan Engelhardt <jengelh@inai.de>.
2014-12-20 Moritz Bunkus <moritz@bunkus.org>
* KaxBlock::ReadData(): fixed several instances of unchecked
memory access leading to invalid memory access/segmentation faults
with invalid or broken data inside block groups/simple blocks.
2014-12-19 Moritz Bunkus <moritz@bunkus.org>
* KaxBlock::ReadInternalHead(): fixed a off-by-one buffer overflow
if with EBML lacing and exactly one frame in the lace.
New 1.4.1 version:
- Added new elements/classes DiscardPadding, CodecDelay and
SeekPreRoll
- The licensing information has been cleared up/unified.
- The Makefile now contain options for specifying the destination
base directory during installation ("DESTDIR") and for
specifying which library types to build ("link").
- The libraries are built without the "-ansi" and
"-fno-gnu-keywords" flags on Linux
- Code cleanup
changes:
several new elements that were added to the Matroska specifications:
CueDuration, CueRelativePosition, ChapterStringUID, VideoAlphaMode
and DefaultDecodedFieldDuration
changes: cleanup and minor fixes
pkgsrc note: according to the ChangeLog, this version is not binary
compatible to older versions -> ABI_DEPENDS bumped
0.7.7nb1 to 0.8. There's a note in the libmatroska Changelog about
using macros defined in libebml-0.8.0, so I used that version number in
the dependency, but I tested only against libebml-1.0.0.
changes:
-API extensions
-bugfixes
pkgsrc note: while the changelog doesn't tell details, there seems
to be an ABI incompatibility to the previous version. Bump the
bl3 dependency.
Changes:
- fix the segment family UID
- no more TrackAngle and new TrackTranslate elements
- rename ChapterLink* to ChapterTranslate*
- add KaxChapterLinkEditionUID
- fix the KaxSegmentFamily flags
- added KaxSegmentFamily, KaxChapterLink, KaxChapterLinkCodec and
KaxChapterLinkID
- Move all of the (re-)activated Matroska v1 elements out of "#if == 2"
blocks.
- support for KaxMaxBlockAdditionID and fix default values
- BlockAdditions is in Matroska 1 now
- added the button track type
- Use malloc() and free() instead of new[] and delete[] where the lib might
deal with pointers that have been allocated by the app, or where the app
has allocated the memory. Reason: new[]ed memory cannot be realloc()ed.
- remove support for the gap flag in the Block
- add almost automatic handling of SilentTracks
- added KaxTrackFlagForced
- added KaxTrackAngle and various fixes
- TrackOverlay is now multiple
- added KaxClusterSilentTracks and KaxClusterSilentTrackNumber
Changes:
- EditionProcessed has a default value (0) according to the specs.
- KaxEditionManaged becomes KaxEditionProcessed and mandatory
KaxEditionManagedPrivate becomes KaxChapterManagedPrivate
- no more automatic OutputSamplingFrequency default value
- add support for KaxChapterProcessCommand and KaxEditionManagedPrivate
- The ValidateSize function is neither needed nor correct (probably copy
& paste from somewhere). Integers of all sizes are accepted as in all
the other UID cases.
- allow DLL building with MSVC7 (not compatible with the MinGW DLLs)
- KaxTagTargetTypeValue default to 50
- TargetTypeValue is no longer mandatory
- Fixed the wrong element names.
- add KaxTagTargetTypeValue as in the specs
- add KaxChapterPhysicalEquiv as in the new specs
- add KaxChapterProcess and KaxChapterProcessTime
- add the new PixelCropXXX elements
- added KaxEditionFlagDefault and KaxEditionManaged
- add the new TargetType element in tags
- Set the default value for KaxTagLangue to "und" complying with
the specs.
Changes:
- remove patch-aa, it has been merged upstream
0.7.3:
======
- add KaxEditionFlagDefault, KaxEditionManaged, TargetType, TagLanguage,
TagDefault, EditionFlagHidden
- rename the new KaxTagLanguage to KaxTagLangue
- misc small bugfixes
0.7.2:
======
- chapters/tags: add an edition UID and clean the code according to the specs
- mingw32: Proper description for the SHARED option. Make building the lib
statically the default just like it is for libembl.
Changes:
- use bzip2 distribution tarball
0.7.1:
======
- KaxClusterPosition is already in use and therefore a v1 element
- various cosmetic changes to Makefile and build system itself
- do not define MATROSKA_VERSION=2 anymore. it's not needed for mplayer
any longer and no other application needs it. per discussion with Moritz
Bunkus.
- add test target, do not build tests as a part of normal build
- i can as well add myself as MAINTAINER..
Changes:
- Switch to LGPL license
- Update the copyright years
- Fix minor things in test examples
- Fix a problem when MATROSKA_VERSION is set to 2
- Fix for partial XipH lacing reading
- Handle MATROSKA_VERSION to enable/disable some future additions
- No more new elements for sample accurate seeking
- Added code that allows libmatroska to be built as a DLL on Windows.
- Updated the MinGW build system.
- No more StdInclude
- Add support for SampleScale and BlockSamples
container format library.
Matroska aims to become THE Standard of Multimedia Container Formats.
It was derived from a project called MCF, but differentiates from it
significantly. It is based on EBML (Extensible Binary Meta Language),
a binary derivative of XML.
Matroska is designed with the future in mind. It incorporates features
you would expect from a modern container format, like:
- Streamable over internet (HTTP and RTP)
- Fast seeking in the file
- High error recovery
- Menus (like DVDs have)
- Chapter entries
- Selectable subtitle streams
- Selectable audio streams
- Modularly extendable
From pkgsrc-wip, submitted by Sergey Svishchev.