Permalink
Switch branches/tags
Nothing to show
Find file
Fetching contributors…
Cannot retrieve contributors at this time
15809 lines (11608 sloc) 577 KB
<
2009-02-10 14:12 asuraparaju
* win32/VisualStudio/Makefile.am: Include YUV420ItoYUV422I.vcproj
and YUV422ItoYUV420I.vcproj in list of distribution files.
Author: Anuradha Suraparaju <anuradha@hoyle.rd.bbc.co.uk>
2009-02-10 14:04 asuraparaju
* win32/: VS2003/libdirac_common/libdirac_common.vcproj,
VisualStudio/libdirac_common/libdirac_common.vcproj: Include
band_codec_template.h in list of headers.
Author: Anuradha Suraparaju <anuradha@hoyle.rd.bbc.co.uk>
2009-02-10 12:46 asuraparaju
* libdirac_common/: Makefile.am, band_codec.cpp,
band_codec_template.cpp, band_codec_template.h, band_vlc.cpp:
Renamed band_codec_template.cpp to band_codec_template.h
Author: Anuradha Suraparaju <anuradha@hoyle.rd.bbc.co.uk>
2009-02-10 11:32 asuraparaju
* ChangeLog: Update ChangeLog
Author: Anuradha Suraparaju <anuradha@hoyle.rd.bbc.co.uk>
2009-02-10 11:17 asuraparaju
* NEWS: Include Dirac 1.0.2 release notes.
Author: Anuradha Suraparaju <anuradha@hoyle.rd.bbc.co.uk>
2009-02-10 11:17 asuraparaju
* README: Updated notes to reflect API changes. Some cosmetic
changes as well.
Author: Anuradha Suraparaju <anuradha@hoyle.rd.bbc.co.uk>
2009-02-10 11:16 asuraparaju
* configure.ac: Update release id to 1.0.2.
Author: Anuradha Suraparaju <anuradha@hoyle.rd.bbc.co.uk>
2009-02-10 11:16 asuraparaju
* AUTHORS: Update contributors list.
Author: Anuradha Suraparaju <anuradha@hoyle.rd.bbc.co.uk>
2009-02-10 11:04 asuraparaju
*
doc/documentation/code/programmers_guide/encoder_data_structs.htm:
The default wavelet filters used have changed to DD13_7 for both
intra and inter pictures.
2009-02-10 10:57 asuraparaju
*
doc/documentation/code/programmers_guide/encoder_data_structs.htm:
Fix instrumentation structure documentation. The field names have
changed in the API to be super blocks and not macro blocks.
2009-02-09 20:45 asuraparaju
* tests/samples.at: Remove test for full_search option. Add test
for modified block sizes.
Author: asuraparaju@diracvideo.org <anuradha@hoyle.rd.bbc.co.uk>
2009-02-09 20:44 asuraparaju
* libdirac_common/band_vlc.h: Fix GCC 4.1.2 warning.
Author: asuraparaju@diracvideo.org <anuradha@hoyle.rd.bbc.co.uk>
2009-01-21 16:23 asuraparaju
* decoder/decmain.cpp: Actually fix the issue addressed in
(082d7a2) (ignored result from fwrite)
Ubuntu forcibly enables FORTIFY_SOURCE, which warns on unused
return values on fwrite. This may either be fixed by: #undef
_FORTIFY_SOURCE #define _FORTIFY_SOURCE 0
Or, by causing the application to exit on a short write.
NB, it could also be solved by doing a series of fwrites(), and
checking ferror() at the end of them. FORTIFY_SOURCE would still
fail in this case.
Author: David Flynn <davidf@rd.bbc.co.uk>
2009-01-21 16:22 asuraparaju
* decoder/decmain.cpp: fix build error with -Werror and igored
return value from fwrite(3c)
It should be noted that the return value from fwrite is mostly
useless: if the arguments to fwrite do not set size=1, then there
is little hope of discovering howmuch data had been written
before the error. C99 states: If an error occurs, the resulting
value of the file position indicator for the stream is
indeterminate.
Error squashed by discarding result.
Author: David Flynn <davidf@rd.bbc.co.uk>
2009-01-21 16:22 asuraparaju
* libdirac_encoder/quant_chooser.cpp: encoder: remove limit on DC
quantizer.
Previous fixes should remove the requirement to limit qf on DC
blocks to 4.
Author: David Flynn <davidf@rd.bbc.co.uk>
2009-01-21 16:21 asuraparaju
* libdirac_common/common.cpp: encoder: Ensure that there is atleast
1 codeblock per subband
Author: David Flynn <davidf@rd.bbc.co.uk>
2009-01-21 16:20 asuraparaju
* libdirac_encoder/picture_compress.cpp: encoder: remove dc
quantizer=0 hacks
Fixes in bitstream handling and quant selection should've negated
the need for these hacks.
Author: David Flynn <davidf@woaf.net> Committer: David Flynn
<davidf@rd.bbc.co.uk>
2009-01-21 16:20 asuraparaju
* libdirac_encoder/picture_compress.cpp: encoder: dont quantize the
first dc codeblock
- Attempt to reduce DC errors by effectively not quantizing the
first value (predicted from zero).
Author: David Flynn <davidf@rd.bbc.co.uk>
2009-01-21 16:19 asuraparaju
* libdirac_common/common.cpp: encoder: Fix (and increase number of
) default codeblocks
- Fix previously incorrect codeblock calculation - Create 4x4
codeblocks for DC subband and 12x12 for all others
Author: David Flynn <davidf@rd.bbc.co.uk>
2009-01-21 16:18 asuraparaju
* libdirac_encoder/quant_chooser.cpp: encoder: fix calculation of
max value in a subband for quant selection
Author: David Flynn <davidf@rd.bbc.co.uk>
2009-01-21 16:18 asuraparaju
* libdirac_byteio/byteio.h, libdirac_common/band_codec.cpp,
libdirac_common/band_codec.h,
libdirac_common/band_codec_template.cpp,
libdirac_common/band_vlc.cpp, libdirac_common/band_vlc.h,
libdirac_decoder/comp_decompress.cpp,
libdirac_encoder/comp_compress.cpp: bandcodec: IntraDCBandVLC
needs to derive from GenericIntraDCBandCodec
- modified the band codec files to add a GenericIntraDCBandCodec
class
that inherits from the GenericBandCodecClass.
It defines the common DC specific functions like
GetPrediction,
ClearBlock, DecodeCoeffBlock etc.
- The IntraDCBand classes inherit from the GenericBandCodecClass
now.
- modifed the ArithmeticCodecToVLCAdapter class to include the
Compress/Decompress functions and to have pure virtual
WorkCode/WorkDecode functions like the ArithCodec class.
Author: Anuradha Suraparaju <anuradha@rd.bbc.co.uk> Committer:
David Flynn <davidf@rd.bbc.co.uk>
2009-01-21 16:17 asuraparaju
* libdirac_byteio/byteio.h, libdirac_common/band_codec.cpp,
libdirac_common/band_codec.h,
libdirac_common/band_codec_template.cpp,
libdirac_common/band_vlc.cpp, libdirac_common/band_vlc.h:
bandcodec: Remove code duplication in band_vlc.cpp
BandVLC + friends is mostly a copy and paste of BandCodec +
friends. - Rename BandCodec to GenericBandCodec - Template
GenericBandCodec to take some EntropyCoder - typedef BandCodec
to be GenericBandCodec with ArithCodec - implement a translator
for ArithCodec style calls -> VLC ByteIO calls. - derive
BandVLC from GenericBandCodec and above translator.
Author: David Flynn <davidf@rd.bbc.co.uk>
2009-01-21 16:16 asuraparaju
* libdirac_common/: band_codec.cpp, band_codec.h: bandcodec: fix DC
prediction when decoding
Author: Anuradha Suraparaju <anuradha@rd.bbc.co.uk> Committer:
David Flynn <davidf@rd.bbc.co.uk>
2009-01-21 16:16 asuraparaju
* libdirac_common/: band_codec.cpp, band_codec.h: bandcodec: fix
handling intra dc skipped codeblocks
- The error(residue) term for a skipped codeblock is zero This
must be recorded to correctly set nhood_zero for subsequent
blocks - The values in the skipped codeblock must be predicted
with no (ie zero) error term being added.
Author: David Flynn <davidf@rd.bbc.co.uk> Committer: David Flynn
<davidf@woaf.net>
2009-01-21 16:15 asuraparaju
* libdirac_common/: band_codec.cpp, band_codec.h: bandcodec: fix
IntraDC bitstream incompatability with codeblocks
- Fixes bitstream incompatability with codeblocks
- IntraDCBandCodec duplicated too much copy+paste code from
BandCodec.
- Implements a per pixel function call to provide
specialization.
This could be templated if performance really is an issue.
Author: David Flynn <davidf@rd.bbc.co.uk> Committer: David Flynn
<davidf@woaf.net>
2009-01-21 16:15 asuraparaju
* libdirac_common/: band_codec.cpp, band_codec.h: bandcodec:
eliminate sepcialized lfbandcodec
- Fixes bitstream incompatability with codeblocks -
Specialization has been moved into bandcodec. due to too much
copy and paste code duplication.
Author: David Flynn <davidf@rd.bbc.co.uk>
2009-01-21 16:14 asuraparaju
* libdirac_common/: band_codec.cpp, band_codec.h: bandcodec: remove
unused variables
Author: David Flynn <davidf@rd.bbc.co.uk> Committer: David Flynn
<davidf@woaf.net>
2008-12-16 12:21 asuraparaju
* libdirac_encoder/rate_control.cpp: Added a condition to stop
bit-rate overruns.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-12-16 12:19 asuraparaju
* dirac.pc.in: Include Maths library in link line if required on
the platform of choice.
Author: asuraparaju@diracvideo.org <anuradha@hoyle.(none)>
2008-12-16 12:19 asuraparaju
* libdirac_byteio/mvdataelement_byteio.h: Fix doxygen warnings.
Author: asuraparaju@diracvideo.org <anuradha@hoyle.(none)>
2008-12-16 12:18 asuraparaju
* libdirac_common/band_codec.cpp: Fix problem building with -Werror
and dumb compilers
Author: David Flynn <davidf@rd.bbc.co.uk>
2008-11-20 12:05 asuraparaju
* doc/documentation/code/programmers_guide/:
common_data_structs.htm, encoder_api_functions.htm,
encoder_api_overview.htm, encoder_api_reference.htm,
encoder_data_structs.htm, index.htm, intro.htm: Update the
programmer's guide for version 1.0.2 of the release.
2008-11-19 15:02 asuraparaju
* win32/VisualStudio/dirac.sln: Add new projects to the solution
file.
Author: Anuradha Suraparaju <anuradha@hoyle.(none)>
2008-11-19 10:28 asuraparaju
* libdirac_byteio/: seqparams_byteio.cpp, seqparams_byteio.h:
Manually delete seqparams_byteio.cpp{h} to keep in sync with GIT
repository.
2008-11-19 10:25 asuraparaju
* libdirac_common/dirac_types.h,
libdirac_encoder/dirac_encoder.cpp,
libdirac_encoder/dirac_encoder.h: api: Add
dirac_encoder_pts_offset support, bump version to 1.0.2
Author: David Flynn <davidf@rd.bbc.co.uk>
2008-11-19 10:25 asuraparaju
* util/conversion/: Makefile.am, YUV420ItoYUV422I.cpp,
YUV422ItoYUV420I.cpp: conversion: Add 422 <-> 420 converters for
interlaced video
Author: David Flynn <davidf@rd.bbc.co.uk>
2008-11-19 10:19 asuraparaju
* libdirac_encoder/: picture_compress.cpp, quant_chooser.cpp: Fixed
bug with DC value being quantised to nothing for plain pictures.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-11-06 15:54 asuraparaju
* tests/samples.at: Add tests for fullsearch and combined_me
options.
Author: Anuradha Suraparaju <anuradha@hoyle.(none)>
2008-11-06 15:53 asuraparaju
* libdirac_common/: common_types.h, dirac_types.h: Move macros to
test for the api version to dirac_types.h from common_types.h as
it is the more appropriate location.
Author: Anuradha Suraparaju <anuradha@hoyle.(none)>
2008-11-06 15:51 asuraparaju
*
win32/VisualStudio/ConversionUtils/YUV420Down2x2/YUV420Down2x2.vcproj:
Fix include path to prevent compilation errors.
Author: Anuradha Suraparaju <anuradha@hoyle.(none)>
2008-10-29 13:46 asuraparaju
* libdirac_motionest/block_match.cpp: Cosmetics - removing trailing
blanks.
2008-10-29 13:42 asuraparaju
* encoder/encmain.cpp, libdirac_encoder/prefilter.cpp,
libdirac_encoder/rate_control.cpp,
libdirac_encoder/seq_compress.cpp: Ensure that debug info is
printed to standard out only in verbose mode. Cosmetics -
changed tabs to spaces, corrected indentation.
Author: asuraparaju@diracvideo.org <anuradha@hoyle.(none)>
2008-10-29 13:41 asuraparaju
* libdirac_common/common_types.h: Add macros to test for the api
version.
Author: asuraparaju@diracvideo.org <anuradha@hoyle.(none)>
2008-10-21 15:55 asuraparaju
* libdirac_motionest/me_utils.cpp: Fixed bug that caused a divide
by zero error.
Author: asuraparaju@diracvideo.org <anuradha@hoyle.(none)>
2008-10-21 11:04 asuraparaju
* libdirac_byteio/parseparams_byteio.cpp: Print a warning to
standard error if the bitstream version does not match the
supported version and continue decoding instead of bailing out.
Author: asuraparaju@diracvideo.org <anuradha@hoyle.(none)>
2008-10-21 11:02 asuraparaju
* configure.ac: Fix test for checking availabliity of libcppunit.
Author: asuraparaju@diracvideo.org <anuradha@hoyle.(none)>
2008-10-20 15:22 asuraparaju
* libdirac_encoder/picture_compress.cpp: Modify perceptual
weighting based on the proportion of intra blocks.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-10-20 15:21 asuraparaju
* encoder/encmain.cpp, libdirac_common/common.cpp,
libdirac_common/video_format_defaults.cpp: Made 13_7 the default
wavelet filter for all video.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-10-20 15:21 asuraparaju
* libdirac_common/wavelet_utils.cpp,
libdirac_common/wavelet_utils.h,
libdirac_encoder/picture_compress.cpp: Allow for adjustable CPD
scaling.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-10-20 15:20 asuraparaju
* libdirac_encoder/seq_compress.h: Added method for keeping track
of timestamp offset.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-10-20 15:19 asuraparaju
* libdirac_common/common.cpp, libdirac_encoder/seq_compress.cpp,
libdirac_encoder/seq_compress.h,
libdirac_motionest/me_mode_decn.cpp,
libdirac_motionest/me_utils.cpp: Improvements to coding at low
bit rate and resolution.
Filter DC blocks field to reduce dc level transitions. Use
better bigger block parameters.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-10-01 15:33 asuraparaju
* Makefile.am: Set DOC_DIR only if doxygen is installed.
Author: asuraparaju@diracvideo.org <anuradha@hoyle.(none)>
2008-10-01 11:26 asuraparaju
* encoder/encmain.cpp, libdirac_common/common.cpp,
libdirac_common/common.h, libdirac_common/mot_comp.cpp,
libdirac_common/motion.cpp, libdirac_common/motion.h,
libdirac_common/mv_codec.cpp, libdirac_common/mv_codec.h,
libdirac_decoder/picture_decompress.cpp,
libdirac_encoder/dirac_encoder.cpp,
libdirac_encoder/dirac_encoder.h,
libdirac_encoder/enc_picture.cpp, libdirac_encoder/enc_picture.h,
libdirac_encoder/picture_compress.cpp,
libdirac_encoder/seq_compress.cpp,
libdirac_motionest/me_mode_decn.cpp,
libdirac_motionest/me_mode_decn.h,
libdirac_motionest/me_subpel.cpp, libdirac_motionest/me_subpel.h,
libdirac_motionest/motion_estimate.cpp,
libdirac_motionest/pixel_match.cpp,
unit_tests/motion_comp_test.cpp,
util/instrumentation/process_sequence.cpp,
util/instrumentation/libdirac_instrument/overlay.cpp: Manual sync
with dirac-research.git repository. Changed way data for use in
ME is accessed. Changed terminology from macroblock to
superblock. Now (more) consistent with spec. Changes to
incorporate some chroma information into ME. Enabled combined ME
across Y, U and V Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-10-01 10:50 asuraparaju
* Makefile.am, configure.ac, util/conversion/Makefile.am,
util/conversion/YUV420Down2x2.cpp: Improved 2x2 downconversion
filtering.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-10-01 10:26 asuraparaju
* encoder/encmain.cpp, libdirac_common/video_format_defaults.cpp:
100% overlaps help PSNR but reduce detail too much at low rates.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-10-01 10:26 asuraparaju
* encoder/encmain.cpp, libdirac_common/video_format_defaults.cpp,
libdirac_common/video_format_defaults.h,
libdirac_encoder/dirac_encoder.cpp: Use longer wavelet filters at
low resolution.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-10-01 10:25 asuraparaju
* encoder/encmain.cpp, libdirac_common/band_codec.cpp,
libdirac_common/common.cpp, libdirac_encoder/comp_compress.cpp,
libdirac_encoder/picture_compress.cpp,
libdirac_encoder/quant_chooser.cpp: Modifications to improve
performance for small picture sizes.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-10-01 10:12 asuraparaju
* encoder/encmain.cpp: 1/4 pel is now the default on small
pictures.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-09-16 16:49 asuraparaju
* ChangeLog: Updated ChangeLog.
Author: asuraparaju@diracvideo.org
<anuradha@hoyle.dp.rd.bbc.co.uk>
2008-09-16 14:33 asuraparaju
* NEWS: Include Dirac 1.0.0 release notes.
Author: asuraparaju@diracvideo.org
<anuradha@hoyle.dp.rd.bbc.co.uk>
2008-09-16 14:31 asuraparaju
* configure.ac: Update release id to 1.0.0
Author: asuraparaju@diracvideo.org
<anuradha@hoyle.dp.rd.bbc.co.uk>
2008-09-16 14:27 asuraparaju
* README, README.release: Update the README files.
Author: asuraparaju@diracvideo.org
<anuradha@hoyle.dp.rd.bbc.co.uk>
2008-09-16 14:23 asuraparaju
* Makefile.am: Add bootstrap to distribution.
Author: asuraparaju@diracvideo.org
<anuradha@hoyle.dp.rd.bbc.co.uk>
2008-09-16 14:02 asuraparaju
* doc/Makefile.am: Change directory name where doxygen generated
documentations is installed.
Author: asuraparaju@diracvideo.org
<anuradha@hoyle.dp.rd.bbc.co.uk>
2008-09-16 14:02 asuraparaju
* win32/VisualStudio/Makefile.am: Add YUV420Down2x2.vcproj and
YUV420pt75filter.vcproj to distribution list.
Author: asuraparaju@diracvideo.org
<anuradha@hoyle.dp.rd.bbc.co.uk>
2008-09-16 14:02 asuraparaju
* libdirac_encoder/picture_compress.cpp: motion_estimate.h is no
longer in use.
Author: asuraparaju@diracvideo.org
<anuradha@hoyle.dp.rd.bbc.co.uk>
2008-09-15 16:34 asuraparaju
* win32/VS2003/DecodeDirac/DecodeDirac.vcproj: Fix target directory
name.
Author: asuraparaju@diracvideo.org
<anuradha@hoyle.dp.rd.bbc.co.uk>
2008-09-12 12:51 asuraparaju
* doc/documentation/code/programmers_guide/: decoder_api.htm,
decoder_api_overview.htm, encoder_api_overview.htm,
encoder_data_structs.htm, index.htm, intro.htm, overview.htm,
software.htm, toc.htm: Update documentation for 1.0 release.
2008-09-10 22:32 asuraparaju
* doc/: dirac_api.doxygen, dirac_api.doxygen.in,
dirac_api_foot.html, dirac_api_head.html: Sync with git
repository doc directory structure.
2008-09-10 22:28 asuraparaju
* libdirac_byteio/mvdata_byteio.h, libdirac_common/motion.h: Fix
doxygen warnings.
Author: asuraparaju@diracvideo.org
<anuradha@hoyle.dp.rd.bbc.co.uk>
2008-09-10 16:37 asuraparaju
* win32/VisualStudio/: dirac.sln,
ConversionUtils/YUV420Down2x2/YUV420Down2x2.vcproj,
ConversionUtils/YUV420pt75filter/YUV420pt75filter.vcproj: Add
conversion utiliies YUV420Down2x2 and YUV420pt75filter to build
targets list.
Author: asuraparaju@diracvideo.org
<anuradha@hoyle.dp.rd.bbc.co.uk>
2008-09-10 12:10 asuraparaju
* configure.ac, doc/Makefile.am: Sync with git repository changes.
2008-09-09 21:42 asuraparaju
* win32/: VS2003/libdirac_motionest/libdirac_motionest.vcproj,
VisualStudio/libdirac_motionest/libdirac_motionest.vcproj: Remove
motion_estimat.cpp and motion_estimate.h from the sources list as
they are no longer used.
Author: asuraparaju@diracvideo.org
<anuradha@hoyle.dp.rd.bbc.co.uk>
2008-09-03 10:33 asuraparaju
* libdirac_encoder/rate_control.cpp: Revert "Typo fix."
This reverts commit a5161a15d0e4f4b0dd9506dc00e52ffe368e6b81.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-09-02 10:51 asuraparaju
* libdirac_encoder/rate_control.cpp: Typo fix.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-28 09:59 asuraparaju
* libdirac_encoder/picture_compress.cpp: Use the picture's
prediction parameters and not the global prediction parameters
when writing motion vector data header info to the bitstream.
Author: asuraparaju@diracvideo.org
<anuradha@hoyle.dp.rd.bbc.co.uk>
2008-08-27 11:06 asuraparaju
* unit_tests/motion_comp_test.cpp: Changes related to the commit
where picture parameters were separated into a different class
from the Codec Parameters class.
Author: asuraparaju@diracvideo.org
<anuradha@hoyle.dp.rd.bbc.co.uk>
2008-08-27 10:22 asuraparaju
* libdirac_encoder/rate_control.cpp: Modified so as to adapt faster
at the beginning.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-27 10:20 asuraparaju
* libdirac_common/motion.h, libdirac_encoder/picture_compress.cpp,
libdirac_encoder/seq_compress.cpp,
libdirac_motionest/me_mode_decn.cpp,
libdirac_motionest/me_mode_decn.h,
libdirac_motionest/me_subpel.cpp, libdirac_motionest/me_subpel.h,
libdirac_motionest/pixel_match.cpp,
libdirac_motionest/pixel_match.h: Re-enabled adaptive block
sizes, now a subgroup or so in arrears.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-27 10:18 asuraparaju
* libdirac_common/motion.cpp, libdirac_common/motion.h,
libdirac_decoder/picture_decompress.cpp,
libdirac_encoder/enc_picture.cpp, libdirac_encoder/enc_picture.h,
libdirac_encoder/seq_compress.cpp,
libdirac_motionest/me_mode_decn.cpp,
libdirac_motionest/pixel_match.cpp,
util/instrumentation/libdirac_instrument/overlay.cpp,
util/instrumentation/process_sequence.cpp: Placed a local copy of
picture pred params in MvData class.
This will allow motion parameters to be changed picture by
picture.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-27 10:17 asuraparaju
* libdirac_byteio/mvdata_byteio.cpp,
libdirac_byteio/mvdata_byteio.h, libdirac_common/common.cpp,
libdirac_common/common.h, libdirac_common/mot_comp.cpp,
libdirac_common/mot_comp.h,
libdirac_common/video_format_defaults.cpp,
libdirac_decoder/picture_decompress.cpp,
libdirac_encoder/dirac_encoder.cpp,
libdirac_encoder/picture_compress.cpp,
libdirac_encoder/seq_compress.cpp,
libdirac_encoder/seq_compress.h, libdirac_motionest/Makefile.am,
libdirac_motionest/me_mode_decn.cpp,
libdirac_motionest/me_mode_decn.h,
libdirac_motionest/me_subpel.cpp, libdirac_motionest/me_subpel.h,
libdirac_motionest/pixel_match.cpp,
libdirac_motionest/pixel_match.h: Separated off picture
prediction parameters.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-25 13:15 asuraparaju
* libdirac_common/video_format_defaults.cpp,
libdirac_encoder/seq_compress.cpp: Set default MV precision back
to 1/2. Also turned off 100% overlap.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-20 22:03 asuraparaju
* libdirac_byteio/byteio.h, libdirac_common/band_codec.cpp,
libdirac_common/band_codec.h, libdirac_common/band_vlc.cpp,
libdirac_common/band_vlc.h: Fix bug in handling skipped code
blocks in DC bands when decoding. Also fix bug in calculating the
quantiser index in multiple quantiser mode for DC sub-bands in
Intra pictures.
Author: asuraparaju@diracvideo.org
<anuradha@hoyle.dp.rd.bbc.co.uk>
2008-08-14 12:35 asuraparaju
* util/conversion/: Makefile.am, YUV420pt75filter.cpp: Added filter
for horizontal 3/4 filtering
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 12:31 asuraparaju
* encoder/encmain.cpp: Removed error message.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 12:30 asuraparaju
* libdirac_common/mot_comp.h, libdirac_common/mv_codec.h,
libdirac_encoder/enc_queue.h,
libdirac_encoder/picture_compress.h,
libdirac_encoder/quality_monitor.h: Fix doxygen warnings
Author: asuraparaju@diracvideo.org
<anuradha@hoyle.dp.rd.bbc.co.uk>
2008-08-14 12:29 asuraparaju
* libdirac_encoder/seq_compress.cpp: MC now done with 100% overlap
to improve blockiness at low rates.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 12:28 asuraparaju
* libdirac_encoder/: picture_compress.cpp, prefilter.cpp: Refined
diagonal prefiltering for 1080 coding.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 12:27 asuraparaju
* encoder/encmain.cpp: Frame skipping now works on pipes, if a bit
inefficient.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 12:25 asuraparaju
* libdirac_encoder/: picture_compress.cpp, prefilter.cpp: Temp fix
of diagonal bandwidth to 50%.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 12:23 asuraparaju
* libdirac_common/mot_comp.cpp, libdirac_encoder/seq_compress.cpp:
Fixed bug with reference being retired too early.
A P/L1 picture was being retired too early when a BBBBBP subgroup
followed a PPPPPP subgroup.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 12:22 asuraparaju
* util/conversion/YUV420Down2x2.cpp: Added clipping to prevent
overshoots.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 12:21 asuraparaju
* libdirac_encoder/seq_compress.cpp: Fix bug which causes the
encoder to crash when encoding Intra-only sequences. For intra
sequences we need to insert a sequence header every
pre-determined number of frames (we use 10). Also all pictures in
an Intra-only sequence should be Non-ref Intra pictures.
Author: asuraparaju@diracvideo.org
<anuradha@hoyle.dp.rd.bbc.co.uk>
2008-08-14 12:18 asuraparaju
* libdirac_encoder/seq_compress.cpp: Fixed bug with GOP being
incorrectly restarted.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 12:18 asuraparaju
* libdirac_decoder/Makefile.am: Export symbols to a file.
Author: asuraparaju@diracvideo.org
<anuradha@hoyle.dp.rd.bbc.co.uk>
2008-08-14 12:17 asuraparaju
* util/conversion/: Makefile.am, YUV420Down2x2.cpp: Added 2x2
downconversion routine.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 12:15 asuraparaju
* encoder/encmain.cpp, libdirac_common/video_format_defaults.cpp:
Whitespace fix.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 12:14 asuraparaju
* libdirac_encoder/prefilter.cpp: Adjusted diagonal prefiltering to
be more benign.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 12:14 asuraparaju
* libdirac_encoder/rate_control.cpp: Rate of adaption of qf made
dependent on buffer state.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 12:13 asuraparaju
* libdirac_encoder/dirac_encoder.cpp: Clean dimensions set to be
the full picture.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 12:11 asuraparaju
* libdirac_encoder/seq_compress.cpp: Adaptive GOP coding now works
for field coding.
This is a bit hacky. It would be better to remove the need to
code fields together and just double the L1 picture separation.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 12:08 asuraparaju
* libdirac_encoder/seq_compress.cpp: Fixed long-dependency chain
bug.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 12:06 asuraparaju
* libdirac_encoder/: seq_compress.cpp, seq_compress.h: Fixed bug
with sequence headers being written in the wrong place.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 12:03 asuraparaju
* libdirac_encoder/rate_control.cpp: Reduced rate of change of qf
to improve worst areas.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 12:00 asuraparaju
* libdirac_encoder/: rate_control.cpp, seq_compress.cpp: Rate
control now works better with adaptive GOP.
GOP restarts were not being handled correctly.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 11:59 asuraparaju
* libdirac_encoder/picture_compress.cpp: Increase quality of
pictures with more intra blocks.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 11:58 asuraparaju
* libdirac_byteio/picture_byteio.cpp,
libdirac_encoder/dirac_encoder.cpp,
libdirac_encoder/enc_queue.cpp,
libdirac_encoder/picture_compress.cpp,
libdirac_encoder/picture_compress.h,
libdirac_encoder/seq_compress.cpp,
libdirac_encoder/seq_compress.h: Fixed bug with instrumentation.
Intra insertion added back in.
GOP will restart if a scheduled P picture is Intra.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 11:56 asuraparaju
* encoder/encmain.cpp: Fixed so that the encoder can now skip large
numbers of frames.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 11:55 asuraparaju
* libdirac_encoder/: dirac_encoder.cpp, seq_compress.cpp:
Temporarily disabled instrumentation as it's now buggy.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 11:49 asuraparaju
* libdirac_byteio/picture_byteio.cpp, libdirac_common/motion.cpp,
libdirac_common/motion.h, libdirac_common/mv_codec.cpp,
libdirac_common/mv_codec.h,
libdirac_decoder/picture_decompress.cpp,
libdirac_encoder/enc_picture.h, libdirac_encoder/enc_queue.cpp,
libdirac_encoder/picture_compress.cpp,
libdirac_encoder/picture_compress.h,
libdirac_encoder/seq_compress.cpp,
libdirac_encoder/seq_compress.h: Subgroups will now switch to PPP
coding for difficult sequences.
The ratio of intra blocks is used to determine whether a P
picture contains large or poorly matched motions. If so the
subgroup terminated by that P is switched to all pictures.
This mod is still buggy.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 11:47 asuraparaju
* libdirac_encoder/seq_compress.cpp: Fixed bug in CanEncode member
function for LongGOP sequences which caused frames to be encoded
twice or skipped.
Author: asuraparaju@diracvideo.org
<anuradha@hoyle.dp.rd.bbc.co.uk>
2008-08-14 11:45 asuraparaju
* libdirac_encoder/: seq_compress.cpp, seq_compress.h: Restart GOP
whenever a P picture becomes an I picture.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 11:44 asuraparaju
* libdirac_encoder/picture_compress.cpp: Increased quality of
inserted intra pictures.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 11:44 asuraparaju
* libdirac_encoder/rate_control.cpp: More aggressive rate
correction if overshooting.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 11:43 asuraparaju
* libdirac_encoder/prefilter.cpp: Set BW range for diagonal
prefiltering.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 11:41 asuraparaju
* libdirac_common/motion.cpp, libdirac_encoder/enc_picture.cpp,
libdirac_encoder/picture_compress.cpp,
libdirac_encoder/seq_compress.cpp: Fixed bug with dropping
references not being properly recorded.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 11:39 asuraparaju
* libdirac_encoder/seq_compress.cpp: Temporarily disabled reference
dropping as it causes decoder crashes.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 11:38 asuraparaju
* libdirac_encoder/prefilter.cpp: Diagonal prefilter now has
variable bandwidth.
Author: Thomas Davies <thomasd@.(none)>
2008-08-14 11:04 asuraparaju
* libdirac_common/common.cpp, libdirac_encoder/quality_monitor.cpp,
libdirac_encoder/quality_monitor.h: Now calculating PSNR
properly.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 11:03 asuraparaju
* libdirac_encoder/: picture_compress.cpp, seq_compress.cpp: Fixed
bug with changing lambda value. Reference pruning extended to all
inter pics.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 11:02 asuraparaju
* libdirac_encoder/seq_compress.cpp: Fixed bug where encoder queue
was not being pruned.
Also now retire I pictures after 2 L1 pictures, due to changed
GOP structure.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 11:01 asuraparaju
* libdirac_encoder/picture_compress.cpp: Report intra block
proportions correctly.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 11:00 asuraparaju
* libdirac_encoder/: picture_compress.cpp, seq_compress.cpp:
Encoder will now drop a reference if not useful.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 10:58 asuraparaju
* libdirac_motionest/: me_mode_decn.cpp, me_utils.cpp, me_utils.h:
Modified intra selection to use a Haar transform.
A Haar transform is applied to the difference array after
subtracting the DC value. This penalises blocks where there is a
lot of structure, but not blocks which are close to the DC value.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 10:56 asuraparaju
* libdirac_common/motion.cpp, libdirac_common/motion.h,
libdirac_encoder/enc_picture.cpp, libdirac_encoder/enc_picture.h:
Added support for being able to drop a reference from an inter
picture.
If it's determined that a reference is unlike the current
picture, any matches might be accidental and could reduce
quality. So being able to drop references could be useful.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-08-14 10:51 asuraparaju
* libdirac_byteio/accessunit_byteio.cpp,
libdirac_byteio/accessunit_byteio.h,
libdirac_byteio/dirac_byte_stream.cpp,
libdirac_byteio/dirac_byte_stream.h, libdirac_common/common.h,
libdirac_common/motion.cpp, libdirac_common/motion.h,
libdirac_common/picture.cpp, libdirac_common/picture.h,
libdirac_common/video_format_defaults.cpp,
libdirac_common/wavelet_utils.cpp,
libdirac_common/wavelet_utils.h,
libdirac_common/wavelet_utils_mmx.cpp,
libdirac_decoder/picture_decompress.cpp,
libdirac_decoder/seq_decompress.cpp,
libdirac_encoder/dirac_encoder.cpp,
libdirac_encoder/enc_picture.cpp, libdirac_encoder/enc_picture.h,
libdirac_encoder/enc_queue.h,
libdirac_encoder/picture_compress.cpp,
libdirac_encoder/picture_compress.h,
libdirac_encoder/rate_control.cpp,
libdirac_encoder/seq_compress.cpp,
libdirac_encoder/seq_compress.h,
libdirac_motionest/block_match.cpp,
libdirac_motionest/me_mode_decn.cpp,
libdirac_motionest/me_mode_decn.h,
libdirac_motionest/me_subpel.cpp, libdirac_motionest/me_subpel.h,
libdirac_motionest/motion_estimate.cpp,
libdirac_motionest/motion_estimate.h,
libdirac_motionest/pixel_match.cpp,
libdirac_motionest/pixel_match.h: New encoder stucture to model
rate-control approaches.
Fixed bug with P-only coding. Added support for switching block
sizes for pics with lots of intra blocks. Added another
complexity metric based on variance of prediction residue. Added
intra block ratio to MEData class. Defined a complexity measure
based on pel ME SAD values. Pixel accurate motion estimation
done using look ahead. Encoder now preloads a queue of frames.
Split up motion estimation into tasks within the sequence
compressor engine. Separated out prefiltering. Incorporated
wavelet coefficient data into Picture class. Moved subband
metadata into CoeffArray class. Further splitting of picture
coding into subtasks. Reorganised picture coding into subtasks
called by sequence compressor. Fixed bug on updating CBR model
for field coding. Changed AccessUnitByteIO to
SequenceHeaderByteIO for spec consistency. Fixed bug with motion
data being incorrectly coded. Added ME data to the EncPicture
class. Fixed unit test for motion compensation. Renamed
EncBuffer class as EncQueue class to make Andrea happy. Fixed
buffers to be mere wrappers around vectors of pointers. Partially
fixed unit tests. Change frame to picture names. Fixed for
compatibility with buffer interfaces. Simplified buffer memory
management. Simplified buffer operation for decoder. Changed
default qf to 5.5 Synched with cvs for libdirac_decoder Updated
against current cvs in libdirac_{byteio,common} Changed GOP L1
refs to reduce "breakthrough" Refactored to use encoder picture
and encoder buffer classes. Added classes for encoder pictures
and specialist buffer. Simplified picture class. Refactor to
make subclassing easier. Fixed interlace IO errors. Refactored
so as to remove encoder-specific methods from picture buffer.
Modified picbuffer so that decoder solely manages picture params
and GOP. Modified makefile for encoder picture class.
Author: Thomas Davies <thomas.davies@bbc.co.uk>
2008-06-26 20:30 tjdwave
* doc/latex_spec/: bs-spec.tex, idwt.tex, layout-fullsize.tex,
quant-matrix.tex, spec-structure.tex: Fixed typos in wavelet
lifting spec and changed Debuc to Dubuc.
Also incremented version ready for release.
2008-06-23 20:48 asuraparaju
* win32/:
VS2003/DiracEncoder/libdirac_encoder/libdirac_encoder.vcproj,
VisualStudio/DiracEncoder/libdirac_encoder/libdirac_encoder.vcproj:
Add enc_picture.cpp{.h} and enc_queue.cpp{.h} to the sources
list.
2008-06-20 20:03 asuraparaju
* libdirac_encoder/seq_compress.cpp: Check that future pictures
exist in the picture buffer before using them as references for
the current picture.
2008-06-19 20:39 tjdwave
* util/instrumentation/libdirac_instrument/: draw_overlay.cpp,
gm_inliers.cpp, motion_arrows.cpp, motion_colour.cpp,
motion_colour_arrows.cpp, overlay.cpp, pred_mode.cpp, sad.cpp,
split_mode.cpp: Fixed instrumentation to comply with new class
methods.
2008-06-19 20:36 tjdwave
* unit_tests/: frames_test.cpp, motion_comp_test.cpp: Fixed test to
conform to class changes.
2008-06-19 20:35 tjdwave
* libdirac_motionest/: me_mode_decn.cpp, me_mode_decn.h,
me_subpel.cpp, me_subpel.h, motion_estimate.cpp,
motion_estimate.h, pixel_match.cpp, pixel_match.h: Fixes due to
use of EncQueue/EncPicture class. Changed "frame" to "picture"
terminology.
2008-06-19 20:33 tjdwave
* libdirac_decoder/: comp_decompress.h, dirac_parser.cpp,
picture_decompress.cpp, seq_decompress.cpp: Fixes due to changes
in PictureBuffer and Picture classes.
2008-06-19 20:28 tjdwave
* libdirac_encoder/: prefilter.cpp, quality_monitor.cpp,
quality_monitor.h: Mods due to EncQueue/EncPicture class changes.
2008-06-19 20:25 tjdwave
* libdirac_encoder/: picture_compress.cpp, picture_compress.h:
Modified for change to EncQueue/EncPicture classes.
2008-06-19 20:22 tjdwave
* libdirac_encoder/: seq_compress.cpp, seq_compress.h: Moved GOP
structure determination into this class.
Also, changed the class so that it used the EncQueue/EncPicture
classes.
2008-06-19 20:17 tjdwave
* libdirac_common/: pic_io.cpp, pic_io.h: Refactored to comply with
changes to Picture class.
2008-06-19 20:14 tjdwave
* libdirac_common/: common.h, common.cpp: Removed unnecessary
constructor.
2008-06-19 20:12 tjdwave
* libdirac_common/: mot_comp.cpp, mot_comp.h: Changed interface.
Interface changes because EncQueue class is not a subclass of
PictureBuffer.
2008-06-19 20:10 tjdwave
* libdirac_common/: picture.cpp, picture.h: Minor refactor to
remove "redo" metadata.
The picture buffer deletes and reallocates data now, so we don't
need to reconfigure/reinitialise a picture. So we can lose the
tracking metadata.
2008-06-19 20:07 tjdwave
* libdirac_common/: picture_buffer.cpp, picture_buffer.h:
Refactored so that the class is a simple wrapper around a vector
of pointers.
Removed all the GOP functionality so that it is done in the
sequence compressor class.
2008-06-19 20:05 tjdwave
* libdirac_encoder/Makefile.am: Added new files.
2008-06-19 20:02 tjdwave
* libdirac_encoder/: enc_picture.cpp, enc_picture.h, enc_queue.cpp,
enc_queue.h: Added classes for encoder picture and encoder
picture queue.
The encoder picture subclasses a basic picture and adds original
data as well as coded data. An encoder queue is a queue of
encoder pictures, so separate queues/buffers for original and
motion estimation data are not needed.
2008-06-18 16:00 asuraparaju
* extras/dirac_dshow/src/diracsplitter/: DiracSplitter.cpp,
DiracSplitterFile.cpp, DiracSplitterFile.h: Modified the code so
that the Dirac decoder module of the the filter can connect to
splitters (e.g. AVI splitter) other than the Dirac splitter. We
can now play back AVI files containing Dirac muxed with audio.
2008-06-18 11:16 asuraparaju
* encoder/encmain.cpp: Add command line argument -h or -help to
display usage info.
2008-06-04 15:39 asuraparaju
* ChangeLog: [no log message]
2008-06-04 15:33 asuraparaju
* NEWS: Updated 0.10.0 release notes
2008-06-04 15:32 asuraparaju
* README.release: Update pre-release checks
2008-06-04 14:48 asuraparaju
* extras/dirac_dshow/INSTALL: Modify install notes to use the
supported MS VC++ environment.
2008-06-04 14:46 asuraparaju
* extras/patches/:
README_mplayersvn_trunk_revision_26980_dirac-0.10.x_patch,
mplayersvn_trunk_revision_26980-dirac-0.10.x.patch: Patch to
enable Dirac decoding support in MPlayer svn revision 26980.
2008-06-03 19:57 tjdwave
* libdirac_encoder/: rate_control.cpp, seq_compress.cpp,
seq_compress.h: Fix for low bit rate operation.
Adaptive block sizes used for high QF values.
2008-06-03 15:10 asuraparaju
* README, libdirac_common/video_format_defaults.cpp,
tests/samples.at: Default quality factor that produces medium
quality output modified to 5.5 from 7.0.
2008-05-30 16:33 asuraparaju
* ChangeLog: [no log message]
2008-05-30 13:36 asuraparaju
* NEWS: Included Dirac 0.10.0 release notes
2008-05-30 13:33 asuraparaju
* extras/patches/: MPlayer-1.0rc2_dirac-0.10.x.patch,
README_MPlayer-1.0rc2_dirac-0.10.x_patch,
README_mplayersvn_trunk_revision_26925_dirac-0.10.x_patch,
mplayersvn_trunk_revision_26925-dirac-0.10.x.patch: New patches
to enable Dirac 0.10.0 playback using MPlayer.
2008-05-29 16:04 asuraparaju
* libdirac_common/picture_buffer.cpp: Fix bug in setting the expiry
time for L1 frames which caused them to be retired before they
were used as reference frames in the decoder causing the decoder
to skip frames.
2008-05-29 16:01 asuraparaju
* tests/samples.at: Add tests for encoding with pre-filtering
enabled.
2008-05-29 00:25 tjdwave
* libdirac_common/picture_buffer.cpp: Changed references so that L1
references are the previous 2 L1 pictures to reduce detail
"breakthrough".
2008-05-28 12:16 asuraparaju
* doc/latex_spec/SpecChangeLog: [no log message]
2008-05-28 11:36 asuraparaju
* tests/samples.at: Add a test for a non-defaut GOP structure.
2008-05-27 13:06 asuraparaju
* doc/latex_spec/ref-default-videoparams.tex: Fix for bug# 1876987.
Correct the name of the video format name to CIF.
2008-05-27 12:13 asuraparaju
* README: Include description of new arguments added to the encoder
command line.
2008-05-27 11:29 asuraparaju
* decoder/decmain.cpp, encoder/encmain.cpp,
libdirac_common/common.cpp, libdirac_common/common.h,
libdirac_common/common_types.h,
libdirac_common/video_format_defaults.cpp,
libdirac_common/wavelet_utils.cpp,
libdirac_decoder/comp_decompress.cpp,
libdirac_decoder/picture_decompress.cpp,
libdirac_encoder/picture_compress.cpp,
libdirac_encoder/prefilter.cpp,
libdirac_encoder/quant_chooser.cpp,
libdirac_encoder/quant_chooser.h,
libdirac_motionest/me_utils_mmx.h,
libdirac_motionest/pixel_match.cpp, unit_tests/arrays_test.cpp,
unit_tests/arrays_test.h, unit_tests/utmain.cpp,
util/conversion/RGBtoUYVY.cpp,
util/conversion/YUV420toYUV422.cpp,
util/conversion/YUV422toUYVY.cpp,
util/instrumentation/libdirac_instrument/overlay_symbols.cpp:
Cosmetic changes. Replace tabs with spaces, replace DOS-style
line endings with UNIX-style line endings, etc.
2008-05-27 11:28 asuraparaju
* libdirac_encoder/dirac_encoder.cpp: Set pnum in the encoder
parameters in the encoder handle to -1 when returning the end of
sequence packet since it is not a picture packet.
2008-05-27 11:10 asuraparaju
* AUTHORS: Update the email id of the Dirac team of developers.
2008-05-27 11:09 asuraparaju
* doc/: Makefile.am, dirac_bitstream.txt: dirac_bitstream.txt is
outdated and no longer required.
2008-05-21 14:00 asuraparaju
* doc/contact.html: Sync with Dirac Sourceforge website changes.
2008-05-21 14:00 asuraparaju
* tests/samples.at: Include tests for lossless and constant
bit-rate bytestreams.
2008-05-21 13:57 asuraparaju
* doc/documentation/code/programmers_guide/encoder_api_example.htm,
libdirac_encoder/dirac_encoder.h: Correct the name of the preset
used to SD576I50 in the encoder API example.
2008-05-21 13:56 asuraparaju
* libdirac_encoder/: dirac_encoder.cpp, seq_compress.cpp,
seq_compress.h: Return the Sequence header as a separate packet
and not preprended to an encoded frame.
2008-05-12 20:49 asuraparaju
* configure.ac, doc/documentation/Makefile.am: Include conditional
variables for Support and Publications documentation. These are
available only when installing from CVS source are not in a
release.
2008-05-12 16:40 asuraparaju
* configure.ac, doc/documentation/Makefile.am,
doc/documentation/publications/Makefile.am,
doc/documentation/support/Makefile.am: Include support and
publications directories in install targets.
2008-05-12 15:29 asuraparaju
* doc/: contact.html, documentation.html, faq.html,
getting_involved.html, index.html, licences.html, overview.html,
specification.html: Sync with Sourceforge website changes.
Include link to licences info. Change Schroedinger link from
Sourceforge to www.diracvideo.org.
2008-05-09 18:14 asuraparaju
* doc/documentation/algorithm/algorithm/: block_data.htm,
dirac_software_alg0.2.pdf, index.htm, intro.htm, mot_est.htm,
mv_coding_arch.htm, mv_data_pred.htm, mv_entropy_code.htm,
olb_mc.xht, overall_arch.htm, quantisation.xht,
temporal_prediction_structures.htm, transform_coding_arch.htm,
var_size.htm, wlt_coeff_coding.xht, wlt_transform.xht: Sync with
Source website changes.
2008-05-09 15:04 asuraparaju
* doc/documentation/code/programmers_guide/:
common_data_structs.htm, decoder_api_example.htm,
decoder_api_functions.htm, decoder_api_overview.htm,
decoder_api_reference.htm, decoder_data_structs.htm,
encoder_api_example.htm, encoder_api_functions.htm,
encoder_api_overview.htm, encoder_api_reference.htm,
encoder_data_structs.htm, index.htm, intro.htm, software.htm,
toc.htm: Update programmer's guide to reflect changes to Dirac
Library API.
2008-05-09 15:00 asuraparaju
* libdirac_encoder/: dirac_encoder.cpp, dirac_encoder.h: Rename
field encoded_frame_avail to encoded_picture_avail since the
encoder API returns frames or fields depending on the the
picture_coding_mode field in the encoder parameters.
2008-05-08 01:45 tjdwave
* encoder/encmain.cpp: Removed duplicate option.
2008-05-07 15:47 asuraparaju
* libdirac_byteio/parseparams_byteio.h, libdirac_common/pic_io.h,
libdirac_common/picture_buffer.h,
libdirac_common/video_format_defaults.h,
libdirac_decoder/comp_decompress.h,
libdirac_encoder/comp_compress.h: Fix doxygen warnings.
2008-05-06 21:17 asuraparaju
* win32/VisualStudio/libdirac_common/libdirac_common.vcproj:
Include dirac_inttypes.h in headers list.
2008-05-06 21:07 asuraparaju
* win32/VS2003/libdirac_common/libdirac_common.vcproj: Include
dirac_inttypes.h is headers list.
2008-05-06 21:06 asuraparaju
*
win32/VS2003/DiracEncoder/libdirac_encoder/libdirac_encoder.vcproj:
Include prefilter.cpp and prefilter.h to build targets.
2008-05-06 19:51 asuraparaju
* configure.ac: Visual Studio 2003 environment is no longer part of
release.
2008-05-06 19:39 asuraparaju
* README: Modify MSVC++ build environment description to reflect
the change in the build directory structure.
2008-05-06 19:37 asuraparaju
* acinclude.m4: Moved this file to m4 directory.
2008-05-06 19:35 asuraparaju
* Makefile.am, bootstrap, configure.ac, encoder/Makefile.am,
libdirac_byteio/Makefile.am, libdirac_byteio/dirac_byte_stats.h,
libdirac_common/Makefile.am, libdirac_common/dirac_inttypes.h,
libdirac_decoder/Makefile.am, libdirac_encoder/Makefile.am,
libdirac_encoder/dirac_encoder.h, m4/acinclude.m4,
m4/ax_create_stdint_h.m4: Use autoconf macro AX_CREATE_STDINT_H
to create a local stdint file because different versions of gcc
have the "ISO C9X: 7.18 Integer types" in different header files.
MS VC++ does not define these types so manually typedef the ones
used in Dirac (int64_t and uint64_t) to MSVC++ types.
2008-05-06 16:35 asuraparaju
* win32/VisualStudio/: Makefile.am, dirac.sln,
ConversionUtils/BMPtoRGB/BMPtoRGB.vcproj,
ConversionUtils/RGBtoBMP/RGBtoBMP.vcproj,
ConversionUtils/RGBtoUYVY/RGBtoUYVY.vcproj,
ConversionUtils/RGBtoYUV411/RGBtoYUV411.vcproj,
ConversionUtils/RGBtoYUV420/RGBtoYUV420.vcproj,
ConversionUtils/RGBtoYUV422/RGBtoYUV422.vcproj,
ConversionUtils/RGBtoYUV444/RGBtoYUV444.vcproj,
ConversionUtils/UYVYtoRGB/UYVYtoRGB.vcproj,
ConversionUtils/UYVYtoYUV422/UYVYtoYUV422.vcproj,
ConversionUtils/YUV411toRGB/YUV411toRGB.vcproj,
ConversionUtils/YUV420toRGB/YUV420toRGB.vcproj,
ConversionUtils/YUV420toYUV422/YUV420toYUV422.vcproj,
ConversionUtils/YUV422toRGB/YUV422toRGB.vcproj,
ConversionUtils/YUV422toUYVY/YUV422toUYVY.vcproj,
ConversionUtils/YUV422toYUV420/YUV422toYUV420.vcproj,
ConversionUtils/YUV444toRGB/YUV444toRGB.vcproj,
ConversionUtils/libconv_common/libconv_common.vcproj,
DecodeDirac/DecodeDirac.vcproj, DiracDecoder/DiracDecoder.vcproj,
DiracDecoder/libdirac_decoder/libdirac_decoder.vcproj,
DiracEncoder/DiracEncoder.vcproj,
DiracEncoder/libdirac_encoder/libdirac_encoder.vcproj,
EncodeDirac/EncodeDirac.vcproj,
InstrumentDirac/InstrumentDirac.vcproj,
InstrumentDirac/libdirac_instrument/libdirac_instrument.vcproj,
libdirac_byteio/libdirac_byteio.vcproj,
libdirac_common/libdirac_common.vcproj,
libdirac_motionest/libdirac_motionest.vcproj: Restructure the
build envirorment. All files (final executables, libraries and
intermediate files) are built under a directory build. Added
project files for new conversion utilities.
2008-05-05 12:14 asuraparaju
* dirac.pc.in: Include libstdc++ is link dependencies.
2008-05-05 11:55 asuraparaju
* libdirac_common/picture_buffer.cpp: Fix typo in setting expiry
time for bi-directional L2 reference frames. The correct value is
2 and not 22.
2008-05-02 16:05 asuraparaju
* libdirac_decoder/: dirac_cppparser.cpp, dirac_cppparser.h,
dirac_parser.cpp, seq_decompress.cpp, seq_decompress.h: Fix the
bug where the decoder went into a permanent loop when some frames
are missing, possibly due to incomplete frames being received.
The decoder now carries on decoding the frames it can and returns
the next frame.
2008-05-02 15:57 asuraparaju
* libdirac_byteio/: dirac_byte_stream.cpp, dirac_byte_stream.h,
parseunit_byteio.cpp, parseunit_byteio.h: Fix for bug# 1944681.
2008-05-02 15:49 asuraparaju
* util/instrumentation/process_sequence.cpp: Fix memory leak
reported by valgrind when running diagnostics on interlace coded
Long-GOP sequences.
2008-05-01 19:51 tjdwave
* encoder/encmain.cpp, libdirac_common/common.cpp,
libdirac_common/common_types.h,
libdirac_common/video_format_defaults.cpp,
libdirac_encoder/dirac_encoder.cpp,
libdirac_encoder/seq_compress.cpp: Added UHDTV formats.
2008-05-01 19:51 tjdwave
* libdirac_common/picture_buffer.cpp: Fixed bug with decoder
looping forever.
2008-04-30 00:09 tjdwave
* encoder/encmain.cpp, libdirac_common/common.cpp,
libdirac_common/common.h, libdirac_common/common_types.h,
libdirac_encoder/Makefile.am, libdirac_encoder/dirac_encoder.cpp,
libdirac_encoder/dirac_encoder.h,
libdirac_encoder/picture_compress.cpp,
libdirac_encoder/prefilter.cpp, libdirac_encoder/prefilter.h,
libdirac_encoder/seq_compress.cpp,
libdirac_encoder/seq_compress.h: Added support for various forms
of prefiltering.
Prefiltering using rectangular, diagonal or centre-weighted
median filtering is now available as a command-line option.
Rectangular and diagonal low-pass filtering are both adaptive,
with strength determined by the QF and also a strength parameter
added on the command line. Centre-weighted median filtering is
non-adaptive, but adjusts the centre weight according to the
strength parameter.
Usage is :
dirac_encoder ... -prefilter FILTER_NAME n ....
where FILTER_NAME is one of NO_PF, CWM, RECTLP, DIAGLP and n is
from 0 to 10. NO_PF means no prefilter.
2008-04-29 22:27 asuraparaju
* libdirac_byteio/: dirac_byte_stats.cpp, dirac_byte_stats.h: Fix
discrepancies between member function declarations in the header
file and the implementation in the source file.
2008-04-29 22:26 asuraparaju
* unit_tests/: frames_test.cpp, motion_comp_test.cpp: Reflect
changes made to PictureParams and PictureBuffer classes.
2008-04-29 18:51 tjdwave
* encoder/encmain.cpp, libdirac_byteio/codingparams_byteio.cpp,
libdirac_byteio/component_byteio.cpp,
libdirac_byteio/component_byteio.h,
libdirac_byteio/dirac_byte_stats.cpp,
libdirac_byteio/dirac_byte_stats.h,
libdirac_byteio/subband_byteio.cpp,
libdirac_common/band_codec.cpp, libdirac_common/band_codec.h,
libdirac_common/band_vlc.cpp, libdirac_common/band_vlc.h,
libdirac_common/common.cpp, libdirac_common/common.h,
libdirac_common/mot_comp.cpp, libdirac_common/picture.cpp,
libdirac_common/picture.h, libdirac_common/picture_buffer.cpp,
libdirac_common/picture_buffer.h,
libdirac_common/video_format_defaults.cpp,
libdirac_common/wavelet_utils.cpp,
libdirac_common/wavelet_utils.h,
libdirac_decoder/comp_decompress.cpp,
libdirac_decoder/comp_decompress.h,
libdirac_decoder/picture_decompress.cpp,
libdirac_decoder/picture_decompress.h,
libdirac_encoder/comp_compress.cpp,
libdirac_encoder/comp_compress.h,
libdirac_encoder/dirac_encoder.cpp,
libdirac_encoder/dirac_encoder.h,
libdirac_encoder/picture_compress.cpp,
libdirac_encoder/picture_compress.h,
libdirac_encoder/quality_monitor.cpp,
libdirac_encoder/quality_monitor.h,
libdirac_encoder/quant_chooser.cpp,
libdirac_encoder/seq_compress.cpp: Various refactorings and
bug-fixes.
1. Changed how padding is implemented so that padding is only
added to the coefficient array before the wavelet transform, and
is removed from the coefficient array immediately after the
wavelet transform. No metadata for "OrigXl" etc is needed now.
2. Various places "frame" is changed to "picture" and "fparams"
to "pparams" etc.
3. Fixed bug with misreporting bit rate for long sequences by
recording data with int64_t not int.
4. Fixed a bug with perceptual weighting where additional weight
was being given to the DC band even though it is coded
losslessly. This threw out weights for the other bands when the
weights were normalised, especially for intra pictures. In turn
this required that the relative lambdas used for different
picture types had to be changed.
5. Fixed a minor bug with rate control where the intra lambda was
not being applied correctly.
6. Changed "field coding" metadata to "picture coding mode"
metadata throughout, as per spec.
7. Changed "QIndex" throughout to "QuantIndex" etc for clarity.
8. Refactored picture coding and decoding to simplify things a
little.
2008-04-15 19:56 asuraparaju
* libdirac_encoder/seq_compress.cpp: Roll back previous commit. The
hack to extract the last locally decoded field does not work.
2008-04-15 16:56 asuraparaju
* libdirac_common/common.h: Fix typos in ParseParams class which
cause profile and level member fields to be set incorrectly.
2008-04-15 16:54 asuraparaju
* util/instrumentation/process_sequence.cpp: Include more debugging
info in verbose mode. Fixed bug where last few fields in an
interlaced coded file were not being processed resulting in
memory leaks being reported by valgrind.
2008-04-15 16:52 asuraparaju
* libdirac_encoder/seq_compress.cpp: Hack to extract last field
locally decoded when coding in interlaced mode. Needs a proper
fix.
2008-04-15 16:50 asuraparaju
* libdirac_byteio/accessunit_byteio.cpp,
libdirac_byteio/accessunit_byteio.h,
libdirac_byteio/parseparams_byteio.cpp,
libdirac_byteio/parseparams_byteio.h, libdirac_common/common.cpp:
Upgrade version supported to 2.2. Add checks for profile and
level as per specification version 2.2.
2008-04-03 21:10 tjdwave
* doc/latex_spec/: arith.tex, idwt.tex, layout-fullsize.tex,
picture-dec.tex, profilelevel.tex, sequence-dec.tex,
wlt-unpacking.tex: Various types and updates.
2008-04-03 18:21 tjdwave
* doc/latex_spec/bs-spec.tex: Typo.
2008-04-02 02:05 tjdwave
* doc/latex_spec/bs-spec.tex: More changes a la vc-2
2008-04-02 01:00 tjdwave
* doc/latex_spec/: bs-spec.tex, dataenc.tex, intro.tex,
motion-dec.tex, picture-dec.tex, profilelevel.tex,
sequence-dec.tex, spec-structure.tex, terms.tex,
video-interface.tex, wlt-unpacking.tex: Further reorganisations a
la VC-2 spec
2008-04-01 22:47 tjdwave
* doc/latex_spec/: bs-spec.tex, profilelevel.tex, terms.tex: Typos.
2008-03-14 19:17 asuraparaju
* encoder/encmain.cpp, libdirac_byteio/byteio.cpp,
libdirac_byteio/byteio.h, libdirac_byteio/dirac_byte_stats.h,
libdirac_common/arrays.h, libdirac_common/cmd_line.cpp,
libdirac_common/motion.h, libdirac_common/wavelet_utils_mmx.cpp,
libdirac_motionest/me_utils.cpp, libdirac_motionest/me_utils.h,
util/instrumentation/process_sequence.cpp,
util/instrumentation/libdirac_instrument/draw_overlay.h,
util/instrumentation/libdirac_instrument/overlay.h: Fix errors
and warnings reported by gcc 4.3.0
2008-03-06 19:58 asuraparaju
* tests/samples.at: Added test for QCIF. Modified instrumentation
test to ignore standard out.
2008-03-06 19:10 asuraparaju
* util/instrumentation/process_sequence.cpp: Fix unitialised memory
read warnings reported by valgrind when processing files coded as
fields.
2008-03-06 19:04 asuraparaju
* encoder/encmain.cpp, libdirac_encoder/dirac_encoder.cpp,
libdirac_encoder/dirac_encoder.h,
libdirac_encoder/seq_compress.cpp,
libdirac_encoder/seq_compress.h: Fixed Bug #1874587 where not all
frames loaded into the encoder were not being processed in Long
GOP mode. The encoder now processes all frames loaded. The
encoder API has also been modified ensure that all encoded frames
can bre retrieved.
2008-03-05 22:07 asuraparaju
* libdirac_encoder/picture_compress.cpp: Fix uninitialised memory
read error reported by valgrind when encoding data losslessly.
2008-03-04 02:08 tjdwave
* doc/latex_spec/profilelevel.tex: Changed level and profile
numbers to allow for future vc2 expansion better.
2008-03-04 01:33 tjdwave
* doc/latex_spec/: bs-spec.tex, conformance.tex, intro.tex,
layout-fullsize.tex, picture-dec.tex, profilelevel.tex,
ref-default-videoparams.tex, sequence-dec.tex, state-macros.tex:
Updates for compatibility with latest version of VC-2. Basic
profiles and levels added.
Added UHDTV formats, VC-2 profiles and a Long-GOP profile. Also
added three levels: unconstrained (0), default for VC-2 (1) and
default for long-GOP (2).
2008-03-03 21:42 asuraparaju
* libdirac_byteio/parseunit_byteio.cpp,
libdirac_decoder/dirac_cppparser.cpp,
libdirac_decoder/dirac_parser.cpp: Fix bug in handling End of
Sequence parse code where EOS packets other than the last one in
the stream were not being processed correctly. Schro encoded
bitstreams can now be decoded fully. Also fixed bug where end of
sequence parse status was not being returned to the end user
application.
2008-02-28 23:41 tjdwave
* doc/latex_spec/: bs-spec.tex, layout-fullsize.tex: Fixed typos.
Added PDF hyperlinks.
2008-02-28 22:58 tjdwave
* libdirac_common/common.cpp, libdirac_encoder/rate_control.cpp:
Introduced small codeblocks and removed cap on qf when coding
intra-only with CBR
2008-02-27 21:47 asuraparaju
* libdirac_common/mot_comp.cpp: Fix bug in handling edge blocks.
2008-02-20 00:34 tjdwave
* encoder/encmain.cpp, libdirac_common/video_format_defaults.cpp:
Modified default wavelet depth to 4 to prevent overshoots.
2008-02-15 12:47 asuraparaju
* libdirac_encoder/seq_compress.cpp: Fix bug in initialiasing
entropy factors. Now using transform depth instead of a hardcoded
value of 4.
2008-02-14 15:59 asuraparaju
* extras/dirac_dshow/include/moreuuids.h: Replace fourcc
identifying Dirac video from vcrd to drac to be in line with the
fourcc used in the ffmpeg patch.
2008-02-14 15:57 asuraparaju
* extras/dirac_dshow/src/diracsplitter/DiracSplitter.cpp: Changes
to reflect modified Encoder and Decoder API.
2008-02-14 15:56 asuraparaju
* extras/dirac_dshow/src/diracsplitter/DiracSplitterFile.cpp: Fix
bug in handling next and previous offsets in parse unit header.
2008-02-14 12:41 asuraparaju
* libdirac_byteio/parseparams_byteio.cpp: Modify version checking
logic so that all minor versions less than the supported minor
version can be decoder provided the major version is an exact
match.
2008-02-13 14:36 asuraparaju
* decoder/decmain.cpp, libdirac_decoder/decoder_types.h,
libdirac_decoder/dirac_cppparser.cpp,
libdirac_decoder/dirac_cppparser.h,
libdirac_decoder/dirac_parser.cpp,
libdirac_decoder/dirac_parser.h,
libdirac_decoder/seq_decompress.cpp,
libdirac_decoder/seq_decompress.h: Modifications to Decoder API.
Remove un-implemented functionality (e.g. skip decoding frame).
The Decoder API now returns the frame number of the frame decoded
and no other information (e.g. frame type).
2008-02-12 22:03 asuraparaju
* README: Update notes for building Dirac on MS Windows 2000 and XP
platforms.
2008-02-12 22:02 asuraparaju
* win32/: Makefile.am, VS2003/Makefile.am: Build environment for
Visual C++ 2003 no longer part of the release.
2008-02-12 16:24 asuraparaju
* win32/VisualStudio/: dirac.sln,
ConversionUtils/ConversionUtils.vcproj,
ConversionUtils/BMPtoRGB/BMPtoRGB.vcproj,
ConversionUtils/RGBtoBMP/RGBtoBMP.vcproj,
ConversionUtils/RGBtoUYVY/RGBtoUYVY.vcproj,
ConversionUtils/RGBtoYUV411/RGBtoYUV411.vcproj,
ConversionUtils/RGBtoYUV420/RGBtoYUV420.vcproj,
ConversionUtils/RGBtoYUV422/RGBtoYUV422.vcproj,
ConversionUtils/RGBtoYUV444/RGBtoYUV444.vcproj,
ConversionUtils/UYVYtoRGB/UYVYtoRGB.vcproj,
ConversionUtils/YUV411toRGB/YUV411toRGB.vcproj,
ConversionUtils/YUV420toRGB/YUV420toRGB.vcproj,
ConversionUtils/YUV422toRGB/YUV422toRGB.vcproj,
ConversionUtils/YUV444toRGB/YUV444toRGB.vcproj,
ConversionUtils/libconv_common/libconv_common.vcproj,
DecodeDirac/DecodeDirac.vcproj, DiracDecoder/DiracDecoder.vcproj,
DiracDecoder/libdirac_decoder/libdirac_decoder.vcproj,
DiracEncoder/DiracEncoder.vcproj,
DiracEncoder/libdirac_encoder/libdirac_encoder.vcproj,
EncodeDirac/EncodeDirac.vcproj, Everything/Everything.vcproj,
InstrumentDirac/InstrumentDirac.vcproj,
InstrumentDirac/libdirac_instrument/libdirac_instrument.vcproj,
libdirac_byteio/libdirac_byteio.vcproj,
libdirac_common/libdirac_common.vcproj,
libdirac_motionest/libdirac_motionest.vcproj: Updated project and
solution files for Visual Studio 2008 environment. Visual Studio
2005 build environment is no longer supported.
2008-02-12 03:39 tjdwave
* doc/latex_spec/SpecChangeLog: Specification ChangeLog added.
2008-02-09 00:57 davidf_
* libdirac_encoder/dirac_encoder.cpp: Fix change from *frame ->
*picture with --enable-debug
2008-02-06 10:52 asuraparaju
* extras/dirac_dshow/src/diracsplitter/DiracSplitter.cpp:
Modification resulting from changed decoder API stuctures.
2008-02-05 17:32 asuraparaju
* win32/:
VS2003/DiracDecoder/libdirac_decoder/libdirac_decoder.vcproj,
VS2003/DiracEncoder/libdirac_encoder/libdirac_encoder.vcproj,
VS2003/libdirac_byteio/libdirac_byteio.vcproj,
VS2003/libdirac_common/libdirac_common.vcproj,
VisualStudio/DiracDecoder/libdirac_decoder/libdirac_decoder.vcproj,
VisualStudio/DiracEncoder/libdirac_encoder/libdirac_encoder.vcproj,
VisualStudio/libdirac_byteio/libdirac_byteio.vcproj,
VisualStudio/libdirac_common/libdirac_common.vcproj: Fix project
files to get rid of compiler warning that resulted from the code
refactor.
2008-02-05 14:14 asuraparaju
* unit_tests/: frames_test.cpp, frames_test.h,
motion_comp_test.cpp, motion_comp_test.h: Fix compiler warning
resulting from earlier refactoring of code relating to frames and
fields.
2008-02-05 00:43 tjdwave
* util/conversion/: Makefile.am, UYVYtoYUV422.cpp,
YUV420toYUV422.cpp, YUV422toUYVY.cpp, YUV422toYUV420.cpp: Adding
extra filters to avoid going through RGB for YUV format
conversions.
2008-02-02 06:52 tjdwave
* libdirac_common/motion.cpp, libdirac_common/mv_codec.cpp,
libdirac_encoder/dirac_encoder.cpp: Fixed bug with DC value
prediction in motion data coding.
2008-02-01 02:20 tjdwave
* libdirac_encoder/quality_monitor.cpp: Typo.
2008-01-31 22:25 tjdwave
* decoder/decmain.cpp, encoder/encmain.cpp,
libdirac_byteio/Makefile.am, libdirac_byteio/component_byteio.h,
libdirac_byteio/dirac_byte_stream.cpp,
libdirac_byteio/dirac_byte_stream.h,
libdirac_byteio/displayparams_byteio.cpp,
libdirac_byteio/endofsequence_byteio.h,
libdirac_byteio/frame_byteio.cpp, libdirac_byteio/frame_byteio.h,
libdirac_byteio/mvdata_byteio.cpp,
libdirac_byteio/mvdata_byteio.h,
libdirac_byteio/parseparams_byteio.cpp,
libdirac_byteio/parseunit_byteio.cpp,
libdirac_byteio/parseunit_byteio.h,
libdirac_byteio/picture_byteio.cpp,
libdirac_byteio/picture_byteio.h,
libdirac_byteio/transform_byteio.cpp,
libdirac_byteio/transform_byteio.h, libdirac_common/Makefile.am,
libdirac_common/band_codec.cpp, libdirac_common/band_codec.h,
libdirac_common/band_vlc.cpp, libdirac_common/band_vlc.h,
libdirac_common/bit_manager.cpp, libdirac_common/bit_manager.h,
libdirac_common/common.cpp, libdirac_common/common.h,
libdirac_common/common_types.h,
libdirac_common/dirac_exception.h, libdirac_common/dirac_types.h,
libdirac_common/frame.cpp, libdirac_common/frame.h,
libdirac_common/frame_buffer.cpp, libdirac_common/frame_buffer.h,
libdirac_common/mot_comp.cpp, libdirac_common/mot_comp.h,
libdirac_common/motion.h, libdirac_common/pic_io.cpp,
libdirac_common/pic_io.h, libdirac_common/picture.cpp,
libdirac_common/picture.h, libdirac_common/picture_buffer.cpp,
libdirac_common/picture_buffer.h,
libdirac_common/video_format_defaults.cpp,
libdirac_common/video_format_defaults.h,
libdirac_common/wavelet_utils.cpp,
libdirac_common/wavelet_utils.h, libdirac_decoder/Makefile.am,
libdirac_decoder/comp_decompress.cpp,
libdirac_decoder/comp_decompress.h,
libdirac_decoder/dirac_cppparser.cpp,
libdirac_decoder/dirac_cppparser.h,
libdirac_decoder/dirac_parser.cpp,
libdirac_decoder/dirac_parser.h,
libdirac_decoder/frame_decompress.cpp,
libdirac_decoder/frame_decompress.h,
libdirac_decoder/picture_decompress.cpp,
libdirac_decoder/picture_decompress.h,
libdirac_decoder/seq_decompress.cpp,
libdirac_decoder/seq_decompress.h, libdirac_encoder/Makefile.am,
libdirac_encoder/comp_compress.cpp,
libdirac_encoder/comp_compress.h,
libdirac_encoder/dirac_encoder.cpp,
libdirac_encoder/dirac_encoder.h,
libdirac_encoder/frame_compress.cpp,
libdirac_encoder/frame_compress.h,
libdirac_encoder/picture_compress.cpp,
libdirac_encoder/picture_compress.h,
libdirac_encoder/quality_monitor.cpp,
libdirac_encoder/quality_monitor.h,
libdirac_encoder/rate_control.cpp,
libdirac_encoder/rate_control.h,
libdirac_encoder/seq_compress.cpp,
libdirac_encoder/seq_compress.h,
libdirac_motionest/me_mode_decn.cpp,
libdirac_motionest/me_mode_decn.h,
libdirac_motionest/me_subpel.cpp, libdirac_motionest/me_subpel.h,
libdirac_motionest/motion_estimate.cpp,
libdirac_motionest/motion_estimate.h,
libdirac_motionest/pixel_match.cpp,
libdirac_motionest/pixel_match.h,
util/instrumentation/process_sequence.cpp,
util/instrumentation/process_sequence.h,
util/instrumentation/libdirac_instrument/draw_overlay.cpp,
util/instrumentation/libdirac_instrument/draw_overlay.h,
util/instrumentation/libdirac_instrument/gm_inliers.cpp,
util/instrumentation/libdirac_instrument/gm_inliers.h,
util/instrumentation/libdirac_instrument/motion_arrows.cpp,
util/instrumentation/libdirac_instrument/motion_arrows.h,
util/instrumentation/libdirac_instrument/motion_colour.cpp,
util/instrumentation/libdirac_instrument/motion_colour.h,
util/instrumentation/libdirac_instrument/motion_colour_arrows.cpp,
util/instrumentation/libdirac_instrument/motion_colour_arrows.h,
util/instrumentation/libdirac_instrument/overlay.cpp,
util/instrumentation/libdirac_instrument/overlay.h,
util/instrumentation/libdirac_instrument/pred_mode.cpp,
util/instrumentation/libdirac_instrument/pred_mode.h,
util/instrumentation/libdirac_instrument/sad.cpp,
util/instrumentation/libdirac_instrument/sad.h,
util/instrumentation/libdirac_instrument/split_mode.cpp,
util/instrumentation/libdirac_instrument/split_mode.h: Major
refactor to make clear the distinction between pictures (frames
OR fields) and frames or fields specifically. Frame classes have
been renamed to be Picture classes, along with associated
metadata. No coding parameters have been changed.
2008-01-31 02:53 tjdwave
* doc/latex_spec/terms.tex: [no log message]
2008-01-26 23:11 asuraparaju
* ChangeLog: [no log message]
2008-01-26 23:02 asuraparaju
* NEWS: Include 0.9.1 release notes.
2008-01-26 22:58 asuraparaju
* extras/dirac_dshow/src/diracsplitter/stdafx.h: Fix bug where not
all frame parse codes (e.g. no arith coding intra frames,
auxiliary data, padding data, etc) were being processes by the
parsing function.
2008-01-26 22:54 asuraparaju
* extras/patches/:
README_ffmpegsvn_trunk_revision_11612-dirac-0.9.x_patch,
ffmpegsvn_trunk_revision_11612-dirac-0.9.x.patch: Dirac patch for
FFmpeg svn revision 11612. Fixed bug# 1877990. Applied patch
supplied with the bug report. Fixed bug where not all frame type
(.e.g. no-Arith coding intra frames) were being handled by the
parser function.
2008-01-26 22:50 asuraparaju
* extras/patches/: MPlayer-1.0rc2_dirac-0.9.x.patch,
README_MPlayer-1.0rc2_dirac-0.9.x_patch: Fix bug# 1878017.
Modified dirac detection technique to auto-detection based on
extension. Fixed bug where not all frame types (.e.g
no-Arith-coding intra frames) were being recognised.
2008-01-26 22:44 asuraparaju
* libdirac_encoder/rate_control.cpp: Fix bug that caused encoder to
crash when encoding i-frame only streams in constant bitrate
mode.
2008-01-26 22:43 asuraparaju
* libdirac_common/common.cpp: Update supported version to 2.1
2008-01-26 22:42 asuraparaju
* configure.ac: Update release id to 0.9.1
2008-01-26 22:42 asuraparaju
* doc/specification.html: Update Dirac Spec link to point to the
spec release 2.1.0
2008-01-24 22:47 tjdwave
* README: Fixed incorrect instructions for IP coding.
2008-01-24 21:10 tjdwave
* doc/latex_spec/abstract.tex, doc/latex_spec/bs-spec.tex,
doc/latex_spec/intro.tex, doc/latex_spec/layout-fullsize.tex,
doc/latex_spec/mc.tex,
doc/latex_spec/ref-default-videoparams.tex,
doc/latex_spec/state-macros.tex, libdirac_common/mot_comp.cpp:
Incorrect motion compensation block weighting matrix specified.
Version moved up to 2.1 for correction. Code updated also.
2008-01-23 12:17 asuraparaju
* ChangeLog: [no log message]
2008-01-23 12:13 asuraparaju
* NEWS: Include Dirac 0.9.0 release notes.
2008-01-23 11:42 asuraparaju
* doc/specification.html: Updated with new information and links to
released spec docs.
2008-01-23 11:40 asuraparaju
* doc/todo.html: Update list.
2008-01-23 11:39 asuraparaju
* doc/licences.html: Fix GNU licences URL.
2008-01-22 22:39 asuraparaju
* doc/documentation/code/programmers_guide/:
decoder_api_functions.htm, encoder_api_example.htm,
encoder_data_structs.htm, index.htm, intro.htm, overview.htm,
software.htm: Updated for Dirac 0.9.0 api changes.
2008-01-22 18:38 asuraparaju
* libdirac_byteio/byteio.h, libdirac_encoder/comp_compress.h: Fix
doxygen warnings
2008-01-22 18:15 asuraparaju
* configure.ac: Updated Dirac release version to 0.9.0
2008-01-22 18:10 asuraparaju
* extras/patches/: MPlayer-1.0rc2_dirac-0.9.x.patch,
README_MPlayer-1.0rc2_dirac-0.9.x_patch,
README_ffmpegsvn_trunk_revision_11592-dirac-0.9.x_patch,
ffmpegsvn_trunk_revision_11592-dirac-0.9.x.patch: MPlayer and
FFmpeg patches for Dirac release 0.9.0
2008-01-22 11:17 asuraparaju
* libdirac_common/common.cpp: Updated version to 2.0 (major 2 minor
0) to match version of spec the s/w is compliant with.
2008-01-22 00:32 tjdwave
* doc/latex_spec/: abstract.tex, intro.tex, layout-fullsize.tex,
profilelevel.tex: Moved version to 2.0. 1.0=Dirac Pro=Intra only.
Removed stuff on levels and profiles: now there are just values
for "undefined".
2008-01-17 23:19 tjdwave
* doc/latex_spec/wlt-unpacking.tex: Better normative language.
2008-01-17 03:11 tjdwave
* libdirac_encoder/: quant_chooser.cpp, quant_chooser.h: Improved
and cleaned up quantiser selection.
2008-01-17 03:09 tjdwave
* libdirac_common/video_format_defaults.cpp: Set default wavelet
depth to 5 for better performance.
2008-01-16 21:05 tjdwave
* doc/latex_spec/mc.tex: Changed spatial weighting matrix to give
better weights for offset=1.
2008-01-16 21:01 tjdwave
* libdirac_common/mot_comp.cpp: Changed spatial weighting matrix so
that weights for offset=1 will be (3,5) rather than (1,7). This
will reduce blockiness for chroma components.
2008-01-16 13:42 asuraparaju
* libdirac_byteio/parseunit_byteio.h: Fix bug in test for auxiliary
data parse unit.
2008-01-15 15:36 asuraparaju
* doc/documentation/code/programmers_guide/common_data_structs.htm,
libdirac_byteio/displayparams_byteio.cpp,
libdirac_byteio/displayparams_byteio.h,
libdirac_common/common.cpp, libdirac_common/common.h,
libdirac_common/common_types.h,
libdirac_common/dirac_exception.h, libdirac_common/dirac_types.h,
libdirac_common/video_format_defaults.cpp,
libdirac_decoder/dirac_parser.cpp,
libdirac_encoder/dirac_encoder.cpp,
util/instrumentation/instrmain.cpp: Spec Compliance -
nomenclature changes. Rename aspect_ratio to pixel_aspect_ratio,
sampling_format to chroma_sampling_format.
2008-01-15 11:19 asuraparaju
* libdirac_byteio/dirac_byte_stream.cpp: Fix bug in handling
concatenated dirac streams.
2008-01-14 12:22 asuraparaju
* extras/dirac_dshow/src/diracsplitter/DiracSplitter.vcproj: Fix
include path and linker flags, and libraries for static-release
target.
2008-01-11 03:11 tjdwave
* doc/latex_spec/: motion-dec.tex, spec-structure.tex,
state-macros.tex, wlt-unpacking.tex: Re-working of motion data
decoding to use more spec-like language and to conform to the
style used in VC-2.
2008-01-10 02:42 tjdwave
* doc/latex_spec/: bs-spec.tex, layout-fullsize.tex, mc.tex,
motion-dec.tex, spec-conventions.tex, state-macros.tex: Modified
motion decoding to clarify mode meanings and adopt consistent
terminology for modes, vectors and global motion parameters.
2008-01-09 23:37 tjdwave
* doc/latex_spec/arith.tex: Conformed to VC-2 spec.
2008-01-09 22:36 tjdwave
* doc/latex_spec/mc.tex: Clarified informative note to fix Bug 10.
2008-01-09 22:31 tjdwave
* doc/latex_spec/: bs-spec.tex, motion-dec.tex: Fixed typos in Bug
#11
2008-01-09 21:50 asuraparaju
* libdirac_common/: common.h, mot_comp.cpp, mot_comp.h,
mot_comp_mmx.cpp, mot_comp_mmx.h: Spec compliance. Modify motion
compensations functions to comply with latest specification.
2008-01-09 21:48 asuraparaju
* libdirac_common/video_format_defaults.cpp,
libdirac_encoder/frame_compress.cpp: Fix bug in setting default
picture weights and precision. They are now set only in one
place.
2008-01-09 21:45 asuraparaju
* libdirac_byteio/: frame_byteio.cpp, mvdata_byteio.cpp: Minor
corrections to comments.
2008-01-09 21:44 asuraparaju
* libdirac_byteio/displayparams_byteio.cpp: Fix bug where the
colour specification defaults were not being set for custom
specification index 0.
2008-01-09 21:43 asuraparaju
* extras/dirac_dshow/src/diracsplitter/DiracSplitterFile.cpp:
Correct interlace field name to source_sampling in the source
params.
2008-01-09 21:41 asuraparaju
* win32/: VS2003/libdirac_common/libdirac_common.vcproj,
VisualStudio/libdirac_common/libdirac_common.vcproj: Include
band_vlc.h and band_vlc.cpp in sources list to build the target.
2008-01-09 01:50 tjdwave
* doc/latex_spec/: abstract.tex, arith.tex, bs-spec.tex,
dataenc.tex, idwt.tex, layout-fullsize.tex, lifting.tex,
motion-dec.tex, picture-dec.tex, quant-matrix.tex,
sequence-dec.tex, spec-conventions.tex, spec-structure.tex,
state-macros.tex, video-interface.tex, vidsys-aspect.tex,
vidsys-colour.tex, vidsys-colourmatrix.tex,
vidsys-colourprimaries.tex, vidsys-framerate.tex,
vidsys-sigrange.tex, vidsys-transfer.tex, wlt-dec.tex,
wlt-unpacking.tex: Fixed Annex A (Data Encodings) to agree with
VC-2 spec, including clarification of contexts. Fixed arithmetic
coding initialisation in motion data decoding.Various tidyings.
2008-01-08 22:46 tjdwave
* doc/latex_spec/: arith.tex, bs-spec.tex, dataenc.tex, mc.tex,
motion-dec.tex, sequence-dec.tex, spec-conventions.tex,
wlt-unpacking.tex: Cross-reference chasing. Some arithmetic
coding incompatibilities with VC-2 spec fixed.
2008-01-08 03:12 tjdwave
* doc/latex_spec/: bs-spec.tex, dataenc.tex, layout-fullsize.tex,
picture-dec.tex, terms.tex, wlt-unpacking.tex: Fixed some
cross-reference bugs.
2008-01-07 23:18 tjdwave
* doc/latex_spec/mc.tex: Fixed bug with sub-pel motion
compensation. 8th pel should now be correctly spec'd.
2008-01-07 23:17 tjdwave
* doc/latex_spec/bs-spec.tex: Fixed minor discrepancy over parse
code with VC-2.
2008-01-03 14:42 asuraparaju
* libdirac_common/common.cpp, libdirac_common/common_types.h,
doc/documentation/code/programmers_guide/common_data_structs.htm:
Minor nomenclature change - rename colour primary enums to match
spec.
2008-01-03 14:40 asuraparaju
* libdirac_byteio/parseunit_byteio.h: Spec compliance - Modify
Auxiliary Data parse code test function as per spec.
2008-01-03 14:39 asuraparaju
* libdirac_byteio/frame_byteio.cpp: Spec compliance - VLC not
supported for Inter frames. Modified the error message
accordingly.
2008-01-03 14:36 asuraparaju
* README, libdirac_byteio/displayparams_byteio.cpp,
libdirac_common/dirac_types.h,
libdirac_encoder/dirac_encoder.cpp, encoder/encmain.cpp: Spec
Compliance - Field dominance flag (top_field_first) can no longer
be overridden in the source parameters.
2008-01-02 22:59 tjdwave
* doc/latex_spec/mc.tex: Minor typo.
2007-12-21 02:04 tjdwave
* doc/latex_spec/: bs-spec.tex, quant-matrix.tex: Bug fixes.
2007-12-21 01:54 tjdwave
* doc/latex_spec/: bs-spec.tex, quant-matrix.tex, state-macros.tex:
Modified quant matrix so that it's calculated from the synthesis
filters and properly normalised. Changed the scan format part so
that the top field first flag can't be overridden in the source
parameters. This is consistent with vc2.
VC2 now submitted: these should be the last changes to the
non-motion data except for bug fixes. This part is frozen.
2007-12-14 03:36 tjdwave
* doc/latex_spec/vidsys.tex: [no log message]
2007-12-14 03:35 tjdwave
* doc/latex_spec/vidsys.tex: Conformed against VC-2 specification
version.
2007-12-14 02:15 tjdwave
* doc/latex_spec/video-interface.tex: Ported text from VC-2 spec.
2007-12-14 01:49 tjdwave
* libdirac_common/band_vlc.h, libdirac_encoder/rate_control.cpp:
Fixed g++ 4.1.3 compiler errors.
2007-12-13 21:12 tjdwave
* doc/latex_spec/mc.tex:
Fixed bug in block_mc function for bi-directional mode.
2007-12-13 12:56 asuraparaju
* libdirac_common/common.h: Fix error in PicArray constructor when
MMX opts are not being used.
2007-12-13 02:27 tjdwave
* libdirac_encoder/rate_control.cpp: Fixed bug with emergency
re-allocation: this was throwing out the subgroup frame count.
2007-12-13 01:01 tjdwave
* libdirac_common/common.cpp, libdirac_common/common.h,
libdirac_common/wavelet_utils.cpp,
libdirac_common/wavelet_utils.h,
libdirac_encoder/comp_compress.cpp,
libdirac_encoder/comp_compress.h,
libdirac_encoder/frame_compress.cpp,
libdirac_encoder/frame_compress.h,
libdirac_encoder/quant_chooser.cpp,
libdirac_encoder/quant_chooser.h,
libdirac_encoder/rate_control.cpp,
libdirac_encoder/rate_control.h,
libdirac_encoder/seq_compress.cpp: Modified rate control. The
rate control no longer crashes when it inserts intra pictures:
the picture bits in this case are allocated to the _scheduled_
picture type. A tentative buffer model has been re-introduced
whereby the GOP allocation is adapted slowly to reduce
overshoots, and quickly to reduce undershoots. The buffer target
occupancy is set to 90%, and once every GOP this is corrected for
bit rate overshoots, and once every subgroup (i.e. much faster)
it is corrected, by a larger amount, for bit rate undershoots. In
addition, if the bit rate for a particular frame is <50% of the
target bit rate, an emergency reallocation is applied.
The frame compressor and sequence compressor classes have been
re-arranged so that the frame compressor manages quantisation
selection. This will allow the rate controller to be modified
with look-ahead, changing QF values ahead of time based on
estimated bit rate for residuals, as well as on the results of
motion estimation. At the moment it's still pure feedback
however.
Performance on difficult pictures has also been improved by
increasing the quality of inserted I frames, and increasing the
premium given to pictures with a large number of intra blocks.
Quantiser selection has also been tidied a little.
2007-12-12 22:48 tjdwave
* doc/latex_spec/: bs-spec.tex, layout-fullsize.tex,
spec-conventions.tex, state-macros.tex, terms.tex: Minor wording
changes, consistent with VC-2.
2007-12-12 22:17 tjdwave
* doc/latex_spec/motion-dec.tex: Fixed bug with dc value prediction
in motion decoding. (Also fixed in code now).
2007-12-12 22:10 tjdwave
* libdirac_common/mv_codec.cpp: Default DC prediction value should
be 0. Specification needs updating too.
2007-12-12 03:17 tjdwave
* libdirac_encoder/dirac_encoder.cpp: Fixed bug with calculating
bit rates for individual GOPs: these were being over-estimated by
about 10%.
2007-12-11 13:27 asuraparaju
* README, decoder/decmain.cpp,
doc/documentation/code/programmers_guide/common_data_structs.htm,
doc/documentation/code/programmers_guide/encoder_api_example.htm,
encoder/encmain.cpp, libdirac_byteio/codingparams_byteio.cpp,
libdirac_byteio/displayparams_byteio.cpp,
libdirac_common/common.cpp, libdirac_common/common.h,
libdirac_common/dirac_types.h,
libdirac_common/video_format_defaults.cpp,
libdirac_decoder/dirac_parser.cpp,
libdirac_encoder/dirac_encoder.cpp,
util/instrumentation/instrmain.cpp: Spec conformance - Made the
source scanning format into a uint parameter rather than a
boolean flag.
2007-12-10 20:24 tjdwave
* doc/latex_spec/: bs-spec.tex, motion-dec.tex, profilelevel.tex,
state-macros.tex, vidsys.tex, wlt-unpacking.tex: Made the source
scanning format into a uint parameter rather than a boolean flag,
so that we can support other formats than progressive and
interlaced in future. Fixed Schleef bugs #2 and #3.
2007-12-05 12:42 asuraparaju
* README,
doc/documentation/code/programmers_guide/encoder_data_structs.htm,
encoder/encmain.cpp, libdirac_byteio/codingparams_byteio.cpp,
libdirac_byteio/codingparams_byteio.h, libdirac_common/common.h,
libdirac_common/dirac_exception.h,
libdirac_common/video_format_defaults.cpp,
libdirac_common/wavelet_utils.cpp,
libdirac_common/wavelet_utils.h,
libdirac_decoder/dirac_parser.cpp,
libdirac_encoder/comp_compress.cpp,
libdirac_encoder/dirac_encoder.cpp,
libdirac_encoder/dirac_encoder.h,
libdirac_encoder/quality_monitor.cpp,
libdirac_encoder/rate_control.cpp,
libdirac_encoder/seq_compress.cpp, tests/samples.at,
util/instrumentation/instrmain.cpp: Field coding flag in sequence
header changed to picture coding flag to comply with spec version
1.0.0_pre10. The external encoder API has also been modified to
reflect this change. Note that internally the field coding flag
is still used until we support picture coding modes other than 0
(frames) or 1 (fields). Both encoder and decoder libraries will
return an error if a picture coding mode other than 0 or 1 is
used.
2007-12-05 12:23 asuraparaju
* libdirac_common/: band_codec.cpp, band_vlc.cpp: Modify
calculation of mean of three numbers as per spec.
2007-12-04 02:22 tjdwave
* doc/latex_spec/: bs-spec.tex, layout-fullsize.tex, mc.tex,
motion-dec.tex, picture-dec.tex, spec-conventions.tex: More VC-2
compatability updates. Also, modifed motion compensation to fit
into 16 bits. Upconverted reference no longer necessary for
pixel- accurate motion compensation: upconverted ref has size
2W-1 x 2H-1 so that (even) edge pixels are all derived from
original data.
2007-11-23 02:19 tjdwave
* libdirac_common/: upconvert.cpp, upconvert.h, upconvert_mmx.cpp:
Changed filter to 8 taps with 6 signed bits per tap by
approximating the original 10 tap, 9 bit filter. The intermediate
calculations will now fit into 16 bits even for 10 bit input
data. The new filter causes compression to be up to 0.1dB worse,
in return for much speedier performance when optimised.
The MMX version has been removed, but may be reinstated at a
later date.
2007-11-16 15:54 asuraparaju
* libdirac_byteio/: accessunit_byteio.h, dirac_byte_stream.cpp:
Terminology change to match spec - Renamed PU_ACCESS_UNIT to
PU_SEQ_HEADER.
2007-11-16 15:52 asuraparaju
* libdirac_common/: band_vlc.cpp, band_vlc.h: New class BandVLC to
enable entropy coding of entropy data using VLC only.
2007-11-16 15:51 asuraparaju
* README, encoder/encmain.cpp: New command line argument -use_vlc
to enable use of VLC for entropy coding of coefficients. VLC of
coefficients is enabled for i-frame only sequences at the moment.
2007-11-16 15:50 asuraparaju
* libdirac_byteio/: frame_byteio.cpp, frame_byteio.h: Added support
for using VLC codes for entropy coding of coefficient data.
Renamed i/o functions to match spec.
2007-11-16 15:50 asuraparaju
* libdirac_common/Makefile.am, libdirac_common/common.cpp,
libdirac_common/common.h, libdirac_common/frame_buffer.cpp,
libdirac_common/frame_buffer.h,
libdirac_common/video_format_defaults.cpp,
libdirac_decoder/comp_decompress.cpp,
libdirac_decoder/dirac_cppparser.cpp,
libdirac_encoder/comp_compress.cpp,
libdirac_encoder/dirac_encoder.cpp,
libdirac_encoder/dirac_encoder.h,
libdirac_encoder/seq_compress.cpp,
doc/documentation/code/programmers_guide/encoder_data_structs.htm,
tests/samples.at, unit_tests/motion_comp_test.cpp: Added support
for using VLC codes for entropy coding of coefficient data.
2007-11-16 15:48 asuraparaju
* libdirac_byteio/accessunit_byteio.cpp,
libdirac_byteio/byteio.cpp, libdirac_byteio/byteio.h,
libdirac_byteio/codingparams_byteio.cpp,
libdirac_byteio/displayparams_byteio.cpp,
libdirac_byteio/mvdata_byteio.cpp,
libdirac_byteio/mvdataelement_byteio.cpp,
libdirac_byteio/parseparams_byteio.cpp,
libdirac_byteio/parseunit_byteio.cpp,
libdirac_byteio/parseunit_byteio.h,
libdirac_byteio/subband_byteio.cpp,
libdirac_byteio/transform_byteio.cpp,
libdirac_common/arith_codec.cpp, libdirac_common/arith_codec.h:
Added functions to support bounded i/o. Renamed i/o functions to
match spec.
2007-11-12 13:27 asuraparaju
* libdirac_byteio/frame_byteio.cpp, libdirac_byteio/frame_byteio.h,
libdirac_common/common.h, libdirac_common/frame_buffer.cpp,
libdirac_common/frame_buffer.h,
libdirac_decoder/frame_decompress.cpp,
libdirac_encoder/seq_compress.cpp: Implement retired picture
buffer management modifications as per latest spec. - Only one
picture is modified at a time. - Retire only when decoding a
reference picture. - Do all retirements at the beginning of a
picture rather than at the end.
2007-11-12 13:24 asuraparaju
* libdirac_common/: common.cpp, common_types.h,
video_format_defaults.cpp: Include (15000, 1001) and (25, 2)
frame rate presets in the standard frame rates table.
2007-11-12 13:20 asuraparaju
* decoder/decmain.cpp, libdirac_decoder/dirac_cppparser.cpp:
Cosmetic changes - all debug info in verbose mode is output to
standard out and not standard error to keep it consistent with
rest of code.
2007-11-09 03:46 tjdwave
* doc/latex_spec/: bs-spec.tex, dataenc.tex, idwt.tex,
layout-fullsize.tex, lifting.tex, mc.tex, picture-dec.tex,
ref-default-videoparams.tex, spec-conventions.tex,
spec-structure.tex, state-macros.tex, terms.tex, vidsys.tex,
wlt-unpacking.tex: Further compliance modifications with VC-2.
Reorganisation to simplify motion compensation sections
(ongoing).
2007-11-07 17:58 asuraparaju
* encoder/encmain.cpp, util/instrumentation/instrmain.cpp:
Terminology changes - Renamed video format names as per spec.
Renamed interlace coding flag to interlaced coding flag as per
spec. Modified acceptable input values for cformat arg to make it
clearer as to what the sampling formats supported are. Note that
the command line arguments have changed as a result of this.
Fixed bug in writing the instrumentation data header. Interlaced
coding flag is now written to the instrumentation output so that
the dirac_instrumentation utility works correctly.
2007-11-07 17:52 asuraparaju
* libdirac_encoder/: dirac_encoder.cpp, dirac_encoder.h:
Terminology change - renamed interlace coding flag to interlaced
coding flag as per spec. The signal range for all input data is
set to 8BIT_VIDEO as Dirac currently supports 8 bit data only.
2007-11-07 17:49 asuraparaju
* README,
doc/documentation/code/programmers_guide/encoder_data_structs.htm,
libdirac_common/common.cpp, libdirac_common/common.h,
libdirac_common/common_types.h,
libdirac_common/video_format_defaults.cpp, tests/colourbars.at,
tests/samples.at: Terminology changes - renamed Video format
names to match spec. Renamed interlace coding flag to interlaced
coding flag as per spec. Note that command line interface of
encoder app has changed as a result of these changes.
2007-11-07 17:46 asuraparaju
* libdirac_byteio/codingparams_byteio.cpp,
libdirac_byteio/codingparams_byteio.h,
libdirac_decoder/dirac_parser.cpp,
libdirac_encoder/comp_compress.cpp,
libdirac_encoder/quality_monitor.cpp,
libdirac_encoder/rate_control.cpp,
libdirac_encoder/seq_compress.cpp: Terminology change - renamed
interlace coding flag to interlaced coding flag as per spec.
2007-11-07 17:39 asuraparaju
* libdirac_byteio/mvdata_byteio.cpp: Simplified picture prediction
header as per spec.
2007-11-07 17:37 asuraparaju
* libdirac_byteio/: frame_byteio.h, parseunit_byteio.h: Modified
Parse code function definitions as per spec.
2007-11-07 17:35 asuraparaju
* libdirac_byteio/: accessunit_byteio.h, displayparams_byteio.h:
Renamed DisplayParamsByteIO class as SourceParamsByteIO.
2007-11-07 17:34 asuraparaju
* libdirac_byteio/: accessunit_byteio.cpp,
displayparams_byteio.cpp: Renamed DisplayParamsByteIO class to
SourceParamsByteIO. Simplified Scan Format i/o changes as per
spec.
2007-11-06 03:33 tjdwave
* doc/latex_spec/: arith.tex, bs-spec.tex, conformance.tex,
core-wlt-dec.tex, dataenc.tex, layout-fullsize.tex,
low-delay.tex, mc.tex, motion-dec.tex, picture-dec.tex,
profilelevel.tex, ref-default-videoparams.tex, sequence-dec.tex,
sourcepresets.tex, spec-conventions.tex, spec-structure.tex,
state-macros.tex, terms.tex, unpack-common.tex,
video-interface.tex, vidsys.tex, wlt-unpacking.tex: Further
restructuring and conformance to VC-2 spec. Split off sequence
decoding from picture decoding. Changed how reference pictures
are removed from the buffer.
2007-10-11 02:04 tjdwave
* doc/latex_spec/: bs-spec.tex, idwt.tex, low-delay.tex,
quant-matrix.tex, ref-default-videoparams.tex, state-macros.tex:
Fixed wavelet_depth/transform_depth ambiguity.
2007-10-10 22:28 tjdwave
* doc/latex_spec/bs-spec.tex: Updated interlace spec.
2007-10-10 22:26 tjdwave
* encoder/encmain.cpp, libdirac_byteio/codingparams_byteio.cpp,
libdirac_common/common.h,
libdirac_common/video_format_defaults.cpp,
libdirac_decoder/dirac_parser.cpp,
libdirac_encoder/comp_compress.cpp,
libdirac_encoder/dirac_encoder.cpp,
libdirac_encoder/dirac_encoder.h,
libdirac_encoder/quality_monitor.cpp,
libdirac_encoder/rate_control.cpp,
libdirac_encoder/seq_compress.cpp: Simplified interlace coding
parameters as per the spec. Also changed the terminology to
distinguish between interlace coding and interlaced format.
2007-10-10 18:56 tjdwave
* libdirac_byteio/transform_byteio.cpp: Changed transform coding so
that wavelet depth and transform type are always signalled, to
conform with spec.
2007-10-10 18:30 tjdwave
* libdirac_byteio/transform_byteio.cpp, libdirac_common/common.cpp,
libdirac_common/common.h,
libdirac_common/video_format_defaults.cpp,
libdirac_encoder/dirac_encoder.cpp,
libdirac_encoder/dirac_encoder.h,
libdirac_encoder/frame_compress.cpp: Changed coding of spatial
partition, so that if codeblocks are used then the number of
codeblocks is always coded for each level. This means that the
"default spatial partition" flag is removed from the code and the
spec.
2007-10-10 17:51 tjdwave
* doc/latex_spec/: bs-spec.tex, core-wlt-dec.tex, low-delay.tex,
mc.tex, motion-dec.tex, picture-dec.tex,
ref-default-videoparams.tex, sourcepresets.tex,
spec-conventions.tex, spec-structure.tex, state-macros.tex,
terms.tex, vidsys.tex: Major changes to get compliance with VC-2
spec. Work in ongoing.
2007-10-02 20:52 asuraparaju
* README: Correct the names of the Wavelet filters.
2007-10-02 20:48 asuraparaju
* doc/documentation.html: Include IBC 2007 documents in list of
publications.
2007-10-02 20:33 asuraparaju
* doc/documentation/publications/: dirac-bbc-brochure_Layout-1.pdf,
dirac-numediabrochure.pdf: IBC 2007 docs
2007-10-02 19:28 asuraparaju
* extras/patches/:
README_ffmpegsvn_trunk_revision_10636-dirac-0.8.x_patch,
ffmpegsvn_trunk_revision_10636-dirac-0.8.x.patch: Patch FFMpeg
trunk revsion 10636 to enable encoding, decoding and playback of
Dirac files.
2007-10-01 20:57 asuraparaju
* ChangeLog: [no log message]
2007-10-01 11:51 asuraparaju
* configure.ac: Update release version to 0.8.0
2007-10-01 11:48 asuraparaju
* NEWS: Include 0.8.0 release notes
2007-10-01 11:47 asuraparaju
* extras/patches/: MPlayer-1.0rc1_dirac-0.8.x.patch,
README_MPlayer-1.0rc1_dirac-0.8.x_patch,
README_ffmpegsvn_trunk_revision_10630-dirac-0.8.x_patch,
ffmpegsvn_trunk_revision_10630-dirac-0.8.x.patch: Mplayer patch
to play back dirac bytestreams. FFMpeg patch to encode and
decoder dirac bytestreams.
2007-09-28 16:46 asuraparaju
* doc/documentation/code/programmers_guide/common_data_structs.htm,
doc/documentation/code/programmers_guide/encoder_data_structs.htm,
doc/documentation/code/programmers_guide/index.htm,
encoder/encmain.cpp, libdirac_byteio/codingparams_byteio.cpp,
libdirac_byteio/parseparams_byteio.cpp,
libdirac_byteio/parseunit_byteio.h,
libdirac_byteio/transform_byteio.cpp, libdirac_common/common.cpp,
libdirac_common/common_types.h,
libdirac_common/video_format_defaults.cpp,
libdirac_common/video_format_defaults.h,
libdirac_common/wavelet_utils.cpp,
libdirac_common/wavelet_utils.h,
libdirac_common/wavelet_utils_mmx.cpp,
libdirac_encoder/dirac_encoder.cpp: Minor mods to conform to spec
version 1.0.0.pre9_02
2007-09-26 13:23 asuraparaju
* libdirac_common/pic_io.h: Fix doxygen warnings
2007-09-26 13:18 asuraparaju
* encoder/encmain.cpp, libdirac_byteio/codingparams_byteio.cpp,
libdirac_common/common.cpp, libdirac_common/common.h,
libdirac_common/frame_buffer.cpp, libdirac_common/frame_buffer.h,
libdirac_common/mot_comp.cpp, libdirac_common/pic_io.cpp,
libdirac_common/pic_io.h, libdirac_common/wavelet_utils.cpp,
libdirac_common/wavelet_utils.h,
libdirac_decoder/dirac_parser.cpp,
libdirac_encoder/comp_compress.cpp,
libdirac_encoder/dirac_encoder.cpp,
libdirac_encoder/quality_monitor.cpp,
libdirac_encoder/rate_control.cpp,
libdirac_encoder/rate_control.h,
libdirac_encoder/seq_compress.cpp,
libdirac_encoder/seq_compress.h,
util/instrumentation/instrmain.cpp,
util/instrumentation/process_sequence.cpp: Added support for
interlaced coding. Changes include refactoring of PicIO classes,
SequenceCompressor class to handle interlaced coding. Modified
GOP structure for interlaced coding to code interlaced material
more efficiently.
2007-09-21 10:00 asuraparaju
* README: Changes to encoder command line interface and preset
values.
2007-09-19 12:20 tjdwave
* doc/latex_spec/arith.tex:
Changed initial range to be 0xFFFF instead of 0x10000 as per the
software.
2007-09-19 12:19 tjdwave
* libdirac_common/: arith_codec.cpp, arith_codec.h:
Changed intial range to be 0xFFFF instead of 0x10000 on
suggestion of Dave Schleef. This way the range always stays in 16
bits.
2007-09-06 14:02 asuraparaju
* win32/: VS2003/DecodeDirac/DecodeDirac.vcproj,
VS2003/DiracDecoder/DiracDecoder.vcproj,
VS2003/DiracEncoder/DiracEncoder.vcproj,
VS2003/DiracEncoder/libdirac_encoder/libdirac_encoder.vcproj,
VS2003/EncodeDirac/EncodeDirac.vcproj,
VS2003/InstrumentDirac/InstrumentDirac.vcproj,
VS2003/InstrumentDirac/libdirac_instrument/libdirac_instrument.vcproj,
VS2003/libdirac_byteio/libdirac_byteio.vcproj,
VisualStudio/DecodeDirac/DecodeDirac.vcproj,
VisualStudio/DiracDecoder/DiracDecoder.vcproj,
VisualStudio/DiracEncoder/DiracEncoder.vcproj,
VisualStudio/DiracEncoder/libdirac_encoder/libdirac_encoder.vcproj,
VisualStudio/EncodeDirac/EncodeDirac.vcproj,
VisualStudio/InstrumentDirac/InstrumentDirac.vcproj,
VisualStudio/InstrumentDirac/libdirac_instrument/libdirac_instrument.vcproj:
Included HAVE_MMX in preprocessor macros for all mmx targets.
This fixed the bug where encoding using mmx builds was crashing.
2007-09-05 14:51 asuraparaju
* win32/VS2003/DiracEncoder/DiracEncoder.vcproj: Fix typo in
specifying outour directory for dynamically linked Debug-mmx
target.
2007-09-05 14:20 asuraparaju
* doc/documentation/code/programmers_guide/:
common_data_structs.htm, decoder_api_example.htm,
decoder_api_functions.htm, decoder_api_overview.htm,
decoder_api_reference.htm, decoder_data_structs.htm,
encoder_api_example.htm, encoder_api_functions.htm,
encoder_api_overview.htm, encoder_api_reference.htm,
encoder_data_structs.htm, index.htm, intro.htm: Updated the
programmers guide as per the latest specification.
2007-09-03 15:52 asuraparaju
* libdirac_common/upconvert.h, libdirac_common/wavelet_utils.h,
libdirac_encoder/frame_compress.h,
libdirac_motionest/block_match.h: Fix doxygen warnings
2007-09-03 12:31 asuraparaju
* decoder/decmain.cpp,
doc/documentation/code/programmers_guide/common_data_structs.htm,
doc/documentation/code/programmers_guide/encoder_data_structs.htm,
encoder/encmain.cpp,
extras/dirac_dshow/src/diracsplitter/DiracSplitter.cpp,
extras/dirac_dshow/src/diracsplitter/DiracSplitterFile.cpp,
libdirac_byteio/Makefile.am,
libdirac_byteio/accessunit_byteio.cpp,
libdirac_byteio/accessunit_byteio.h,
libdirac_byteio/codingparams_byteio.cpp,
libdirac_byteio/codingparams_byteio.h,
libdirac_byteio/displayparams_byteio.cpp,
libdirac_byteio/displayparams_byteio.h,
libdirac_byteio/frame_byteio.cpp, libdirac_byteio/frame_byteio.h,
libdirac_byteio/mvdata_byteio.cpp,
libdirac_byteio/parseunit_byteio.cpp,
libdirac_byteio/parseunit_byteio.h,
libdirac_decoder/dirac_cppparser.cpp,
libdirac_decoder/dirac_cppparser.h,
libdirac_decoder/dirac_parser.cpp,
libdirac_decoder/dirac_parser.h,
libdirac_decoder/frame_decompress.cpp,
libdirac_decoder/frame_decompress.h,
libdirac_decoder/seq_decompress.cpp,
libdirac_decoder/seq_decompress.h,
libdirac_encoder/dirac_encoder.cpp,
libdirac_encoder/dirac_encoder.h,
libdirac_encoder/quality_monitor.cpp,
libdirac_encoder/quality_monitor.h,
libdirac_encoder/seq_compress.cpp,
libdirac_encoder/seq_compress.h, tests/colourbars.at,
tests/samples.at, unit_tests/frames_test.cpp,
unit_tests/motion_comp_test.cpp,
util/instrumentation/instrmain.cpp,
util/instrumentation/process_sequence.cpp,
util/instrumentation/process_sequence.h,
win32/VS2003/libdirac_byteio/libdirac_byteio.vcproj,
win32/VisualStudio/libdirac_byteio/libdirac_byteio.vcproj:
Changes to conform with latest Spec. - Changes to Access Unit
Header
2007-09-03 12:30 asuraparaju
* libdirac_common/: arrays.h, common.cpp, common.h, common_types.h,
dirac_types.h, frame.cpp, frame.h, frame_buffer.cpp,
frame_buffer.h, pic_io.cpp, pic_io.h, video_format_defaults.cpp,
video_format_defaults.h, wavelet_utils.cpp: Changes to conform to
latest spec - Access Unit Header Changes - New video formats
supported - Wavelet filter changes. - Video format default
values
2007-08-31 14:10 asuraparaju
* util/instrumentation/libdirac_instrument/: draw_overlay.cpp,
motion_arrows.cpp, motion_colour.cpp, motion_colour_arrows.cpp,
overlay.cpp, pred_mode.cpp, sad.cpp, split_mode.cpp: Treat all
input and intermediate data as bipolar. It is converted to
unsigned byte when written to the output file.
2007-08-24 17:13 asuraparaju
* libdirac_common/frame.cpp, libdirac_common/pic_io.cpp,
libdirac_decoder/dirac_parser.cpp,
libdirac_motionest/me_utils_mmx.cpp: All the encoded components
now represent signed integer signals i.e. bipolar signals.
2007-08-23 16:05 tjdwave
* doc/latex_spec/mc.tex: Changed clipping for motion compensation
to take account of bipolar signals
2007-08-23 16:02 tjdwave
* doc/latex_spec/: bs-spec.tex, picture-dec.tex,
ref-default-videoparams.tex, vidsys.tex: Initial mod to show that
video signals in Dirac should now be considered bipolar. Clipping
therefore applies to the range [-2^{N-1}, 2^{N-1}-1]
2007-08-21 13:46 asuraparaju
* libdirac_common/frame_buffer.cpp,
libdirac_encoder/seq_compress.cpp: Fix errors reported by
valgrind where unitialiased data was being read from upconverted
arrays. The upconverter uses the actual frame dimensions and not
the padded dimensions whereas the ME engine uses the padded
dimensions which is resulting in unitialised data reads. The
motion estimation frame buffer now holds the actual frames rather
than the padded frames to overcome this problem.
2007-08-21 13:42 asuraparaju
* libdirac_common/: arrays.h, frame.cpp, frame.h: New functions to
copy contents of one frame to another without altering the
dimensions of the destination frame. The destination frame is
padded with the last true value in the source frame if it is
bigger than the source frame.
2007-08-13 11:41 tjdwave
* libdirac_encoder/seq_compress.cpp: Typo.
2007-08-13 11:30 tjdwave
* libdirac_encoder/seq_compress.cpp: Minor tidy.
2007-08-13 11:30 tjdwave
* libdirac_encoder/frame_compress.cpp: Removed superfluous SAD test
in cut detection.
2007-08-13 11:29 tjdwave
* libdirac_motionest/me_mode_decn.cpp: Changed anti-intra bias to
10%: i.e. intra only needs to be 10% better in SAD terms to be
chosen, rather than 20%. This (slightly) improves ME mismatches.
2007-08-07 14:19 tjdwave
* doc/latex_spec/idwt.tex: Clarified IDWT filtering definition.
2007-08-02 15:22 tjdwave
* libdirac_motionest/: block_match.cpp, block_match.h,
pixel_match.cpp, pixel_match.h: Minor simplification of pixel
matching code.
2007-08-02 15:04 tjdwave
* doc/latex_spec/bs-spec.tex: Fixed comment over reference picture
removal. Also fixed typo in pseudocode.
2007-07-31 16:21 tjdwave
* libdirac_encoder/rate_control.cpp: [no log message]
2007-07-31 16:13 tjdwave
* libdirac_encoder/: rate_control.cpp, rate_control.h: Bug fixes.
Fixed problem with int32 overflow with very high bit rates.
Fixed problem with non-integral frame rates being incorrectly
set.
2007-07-30 19:40 asuraparaju
* libdirac_common/motion.cpp: Initialise intra costs and dc arrays
to prevent uninitialised read error and memory hogging in
intrumentation utilities.
2007-07-26 13:56 tjdwave
* libdirac_motionest/me_mode_decn.cpp: Improve Intra mode selection
routine. Incorrect RDO modelling of mode selection has been
removed, and intra is only selected if a) motion compensated
error is not very small, and b) intra gives a substantial SAD
improvement.
2007-07-26 13:53 tjdwave
* unit_tests/wavelet_utils_test.cpp: Adapted unit test to support a
coefficient array being passed to the transform.
2007-07-26 13:49 tjdwave
* libdirac_encoder/dirac_encoder.cpp: Added class to cope with
array types being different.
2007-07-26 13:47 tjdwave
* encoder/encmain.cpp: Supports higher wavelet depth when MMX is
not used.
2007-07-26 13:46 tjdwave
* libdirac_common/arrays.h, libdirac_common/band_codec.cpp,
libdirac_common/band_codec.h, libdirac_common/common.cpp,
libdirac_common/common.h, libdirac_common/wavelet_utils.cpp,
libdirac_common/wavelet_utils.h,
libdirac_common/wavelet_utils_mmx.cpp,
libdirac_decoder/comp_decompress.cpp,
libdirac_decoder/comp_decompress.h,
libdirac_encoder/comp_compress.cpp,
libdirac_encoder/comp_compress.h,
libdirac_encoder/quant_chooser.cpp,
libdirac_encoder/quant_chooser.h: Added CoeffType and CoeffArray
types for wavelet coefficients and arrays of coefficients. For
MMX optimisation, CoeffType will be short, but otherwise it will
be int. In this way large wavelet depths can be supported.
2007-07-26 13:39 tjdwave
* libdirac_encoder/rate_control.cpp: Fixed correct initialisation
of QF when CBR is used.
2007-07-25 14:26 asuraparaju
* libdirac_common/common.h: Remove all references to oicturen
number in access unit.
2007-07-24 16:55 tjdwave
* doc/latex_spec/: core-wlt-dec.tex, idwt.tex, picture-dec.tex,
unpack-common.tex: Fixed bugs notified on forum.
2007-07-24 09:32 tjdwave
* doc/latex_spec/: bs-spec.tex, layout-fullsize.tex: Updated parse
codes and version number. _pre8 will now be released.
2007-07-18 09:14 tjdwave
* libdirac_common/: band_codec.cpp, wavelet_utils.cpp: Clarified
parent-child relationship and context selection. No parent is now
assigned to the lowest 4 subbands and the context selection just
depends on the parent value, which is set to zero when there is
no defined parent band.
2007-07-17 09:46 tjdwave
* libdirac_common/common.cpp: Fixed bug with 60 fps video.
2007-07-17 09:27 tjdwave
* doc/latex_spec/: bs-spec.tex, parsediagrams.tex: Bug-fixes.
2007-07-16 16:11 asuraparaju
* libdirac_byteio/accessunit_byteio.cpp,
libdirac_byteio/accessunit_byteio.h,
libdirac_byteio/frame_byteio.cpp, libdirac_byteio/frame_byteio.h,
libdirac_byteio/parseparams_byteio.cpp,
libdirac_byteio/parseparams_byteio.h,
libdirac_byteio/parseunit_byteio.cpp,
libdirac_byteio/parseunit_byteio.h, libdirac_common/common.cpp,
libdirac_common/common.h, libdirac_common/dirac_types.h,
libdirac_decoder/dirac_parser.cpp,
libdirac_decoder/frame_decompress.cpp,
libdirac_decoder/frame_decompress.h,
libdirac_decoder/seq_decompress.cpp,
libdirac_decoder/seq_decompress.h,
libdirac_encoder/frame_compress.cpp,
libdirac_encoder/frame_compress.h,
libdirac_encoder/seq_compress.cpp,
libdirac_encoder/seq_compress.h: Modify Access Unit Header as per
latest specification. The Parse Parameters in the AU header no
longer incluse the Picture Number of the 1st frame that follows
the Access Unit Header.
2007-07-05 15:13 tjdwave
* doc/latex_spec/: bs-spec.tex, core-wlt-dec.tex, lifting.tex,
quant-matrix.tex, spec-structure.tex: Removed the AU Picture
Number, which now serves no purpose. Also added parse code and
operation for doing intra coding without arithmetic coding. This
latter is still to be agreed.
2007-06-21 14:16 tjdwave
* doc/latex_spec/: lifting.tex, quant-matrix.tex,
spec-conventions.tex, spec-structure.tex: Added quantisation
matrices for low delay syntax and informative text on
quantisation strategies - also an informative annex on Lifting.
2007-06-21 14:13 tjdwave
* libdirac_encoder/rate_control.cpp: [no log message]
2007-06-21 12:01 tjdwave
* libdirac_encoder/rate_control.cpp: Experimental rate control for
intra-only coding. This uses a recursive filter to adjust the
quality factor. The rate of convergence is adaptive, depending on
the difference between the actual and target quality, which
overcomes the usual lag of recursive filtering. When the
difference is large, convergence is steady. When it is relatively
small, convergence is very rapid.
2007-06-20 15:42 tjdwave
* encoder/encmain.cpp, libdirac_common/common.cpp,
libdirac_common/common.h, libdirac_encoder/dirac_encoder.cpp,
libdirac_encoder/dirac_encoder.h,
libdirac_motionest/block_match.cpp,
libdirac_motionest/me_mode_decn.cpp,
libdirac_motionest/pixel_match.cpp,
libdirac_motionest/pixel_match.h: Added support for full-search
block matching. This is controlled by using the flag
-full_search [xr] [yr]
to do an initial pixel-accurate search in the range
[-xr,xr]x[-yr,yr]. Sub-pixel refinement is unaffected.
Mode decision and the standard hierachical block match have been
slightly changed to improve performance.
2007-06-18 17:05 asuraparaju
* libdirac_common/wavelet_utils_mmx.cpp: Corrected name of DD9_3
filter to DD9_5 to be in sync with non-mmx version of this file.
2007-06-18 16:24 tjdwave
* doc/specification.html, encoder/encmain.cpp,
libdirac_common/common_types.h,
libdirac_common/video_format_defaults.cpp,
libdirac_common/wavelet_utils.cpp,
libdirac_common/wavelet_utils.h,
libdirac_decoder/frame_decompress.cpp: Corrected name of DD9_3
filter to DD9_5. Changed weights for (13,5) to correspond to
analysis rather than synthesis filter. This seems to give
slightly better results even with perceptual weighting.
2007-06-18 16:22 tjdwave
* doc/latex_spec/: bs-spec.tex, idwt.tex, low-delay.tex,
quant-matrix.tex, ref-default-videoparams.tex,
spec-structure.tex, state-macros.tex: Added default quantisation
matrices. Also changed name of DD (9,3) filter to (9,5) filter as
these are the correct filter lengths.
2007-06-10 17:19 asuraparaju
* libdirac_decoder/comp_decompress.cpp: Fix unintialised value bug
reported by valgrind.
2007-06-10 15:00 asuraparaju
* libdirac_common/common.cpp, libdirac_common/common.h,
libdirac_common/frame.cpp, libdirac_common/frame_buffer.cpp,
libdirac_common/frame_buffer.h, libdirac_common/upconvert.cpp,
libdirac_common/upconvert.h, libdirac_common/upconvert_mmx.cpp,
libdirac_decoder/frame_decompress.cpp,
libdirac_encoder/frame_compress.cpp,
libdirac_encoder/seq_compress.cpp, unit_tests/frames_test.cpp,
unit_tests/motion_comp_test.cpp: Modified FrameParams class to
include the original frame dimensions in addition to the padded
(for dwt) dimensions. All operations in the decoder other than
the inverse wavelet transform are now performed using the
original frame dimensions.
2007-06-10 14:47 asuraparaju
* libdirac_byteio/dirac_byte_stream.cpp: Fix memory leak reported
by valgrind. Minor indentatiion changes.
2007-06-05 11:01 tjdwave
* doc/latex_spec/: bs-spec.tex, mc.tex: Fixed bug with chroma MV
scaling so that it now agrees with Dirac and Schro codebase.
Fixed bug with motion compensation weight factors so that these
are now correct.
2007-06-05 10:38 davidf_
* libdirac_common/mot_comp.cpp: Backing out commit 1.34. (chroma mv
rounding, due to spec change)
2007-06-05 10:08 tjdwave
* doc/latex_spec/: bs-spec.tex, layout-fullsize.tex, mc.tex: Fixed
bugs and added clarification for chroma motion vectors.
2007-06-05 09:58 tjdwave
* doc/specification.html: [no log message]
2007-06-05 09:55 davidf_
* libdirac_common/mot_comp.cpp: Spec compliance, chroma
motionvectors should be scaled using round_divide as per 8.5.2.1
(spec1.0pre7)
2007-06-04 10:58 tjdwave
* doc/latex_spec/mc.tex: Fixed bug with scaling motion vectors for
chroma.
2007-06-04 10:56 tjdwave
* doc/latex_spec/: state-macros.tex, unpack-common.tex: [no log
message]
2007-06-04 10:55 tjdwave
* doc/latex_spec/dataenc.tex: Added brace for clarification.
2007-06-04 10:54 tjdwave
* doc/latex_spec/bs-spec.tex: Fixed minor spec low-delay bug.
2007-05-15 16:32 tjdwave
* libdirac_encoder/rate_control.cpp: Removed buffer model because
of performance issues.
2007-05-15 15:54 tjdwave
* libdirac_encoder/: frame_compress.cpp, frame_compress.h,
rate_control.cpp, rate_control.h, seq_compress.cpp: Modified
constant bit-rate operation, so that when a cut is detected the
long-term qf is used, instead of the current one in the rate
model. This has the effect of reducing quality crashes and rate
explosions.
2007-05-15 13:40 asuraparaju
* Makefile.am: In addition to the regular targets (all, check,
valgrind-check), added the following new targets
make codec - builds the libraries and encoder and decoder
utilities
make codec-check - builds the libraries and encoder, decoder and
instrumentation and unit_tests and runs the tests
make encoder - builds the libs encoder depends on and the encoder
make decoder - builds the libs decoder depends on and the decoder
make instrumentation - builds the libraries instrumentation util
depends on the the instrumentation tool.
make conversion - builds conversion tool
make unit_tests- builds libraries and the unit_test tool
make doc - builds the doc
2007-05-15 13:00 tjdwave
* libdirac_common/wavelet_utils.cpp: Fixed bug with DC weight being
set incorrectly.
2007-05-15 10:19 tjdwave
* libdirac_common/mot_comp.cpp: Added error message if reference
pictures are not labeled as references.
2007-05-14 13:33 tjdwave
* doc/latex_spec/: bs-spec.tex, layout-fullsize.tex,
parsediagrams.tex, unpack-common.tex: Modified parse diagrams to
give integrated structure. Minor changes to stream parsing to
agree with the parse diagrams.
2007-05-09 15:35 tjdwave
* doc/latex_spec/: abstract.tex, bs-spec.tex, conformance.tex,
core-wlt-dec.tex, dataenc.tex, decoding-ops.tex,
dirac-concepts.tex, idwt.tex, intro.tex, layout-fullsize.tex,
low-delay.tex, mc.tex, motion-dec.tex, parsing.tex,
picture-dec.tex, spec-conventions.tex, spec-structure.tex,
state-macros.tex, stream-access.tex, terms.tex,
unpack-common.tex, vidsys.tex, wlt-dec.tex, wlt-unpacking.tex:
Restructuring to integrate the core and low-delay syntaxes
properly. Added text from SMPTE VC-2 draft spec.
2007-05-09 15:06 asuraparaju
* ChangeLog: [no log message]
2007-05-09 14:47 asuraparaju
* extras/patches/: MPlayer-1.0rc1_dirac-0.7.x.patch,
README_MPlayer-1.0rc1_dirac-0.7.x_patch,
README_ffmpegsvn_trunk_revision_8950-dirac-0.7.x_patch,
ffmpegsvn_trunk_revision_8950-dirac-0.7.x.patch: MPlayer and
FFmpeg patches for Dirac 0.7.0
2007-05-08 17:17 asuraparaju
* NEWS, doc/documentation/algorithm/algorithm/index.htm: Included
note that Algorithm document is out of date.
2007-05-08 13:48 asuraparaju
* doc/documentation/code/programmers_guide/:
decoder_api_functions.htm, intro.htm, overview.htm: Changed
software version to 0.7.0
2007-05-07 13:38 asuraparaju
* libdirac_common/arith_codec.cpp: Convert DOS-style line breaks to
Unix-style line breaks.
2007-05-04 14:59 asuraparaju
* NEWS: Included notes on Release 0.7.0.
2007-05-04 14:12 asuraparaju
* doc/documentation/code/programmers_guide/:
encoder_api_functions.htm, encoder_data_structs.htm: Specify the
link to the Dirac Bytestream Specification and the section that
defines video format defaults for each preset.
2007-05-04 12:14 asuraparaju
* doc/specification.html: Updated the specification document link
to point to the latest spec release.
2007-05-04 11:53 asuraparaju
* AUTHORS, README, configure.ac: Updated for release 0.7.0
2007-05-03 16:24 tjdwave
* doc/latex_spec/: dataenc.tex, low-delay.tex: Minor bug-fixes.
2007-05-03 15:42 asuraparaju
* libdirac_encoder/dirac_encoder.cpp: Replace tabs with spaces.
Print GOP bit-rate statistics to standard output only in verbose
mode.
2007-05-03 15:39 asuraparaju
* doc/documentation/code/programmers_guide/:
common_data_structs.htm, encoder_data_structs.htm, software.htm:
Document changes to the Encoder API data structures and building
under the MS Windows Platform.
2007-05-02 17:30 asuraparaju
* win32/: VS2003/libdirac_byteio/libdirac_byteio.vcproj,
VisualStudio/libdirac_byteio/libdirac_byteio.vcproj: Include
mydataelement_byteip.cpp{.h} to source list.
2007-05-02 17:29 asuraparaju
* libdirac_common/common.cpp: Include inttypes.h to fix g++ 3.3.x
and icc warnings regrading uint64_t.
2007-05-02 14:10 asuraparaju
* libdirac_byteio/parseunit_byteio.cpp,
libdirac_byteio/parseunit_byteio.h,
libdirac_decoder/dirac_cppparser.cpp: Handle auxiliary/paddaing
data parse units and low-delay frames. Auxiliary/ padding data
parse units are ignored by the decoder. When the decoder
encounters a low-delay frame it exits with an error message.
2007-05-02 09:52 tjdwave
* libdirac_encoder/comp_compress.cpp: Fixed bug with using
-multi_quants -lossless : multiquants were being signalled, but
quantisers for each code block weren't being coded.
2007-05-01 15:51 asuraparaju
* libdirac_common/band_codec.h, libdirac_encoder/comp_compress.h:
Fix warnings reported by doxygen when not all parameters to a
function are documented.
2007-05-01 10:56 tjdwave
* libdirac_common/wavelet_utils.cpp: Fixed bug in calculating
subband weighting coefficients: values for compensating filter
gains were incorrect.
2007-04-30 14:13 tjdwave
* doc/latex_spec/dataenc.tex: Fixed table warning
2007-04-26 14:56 asuraparaju
* libdirac_common/frame_buffer.cpp, libdirac_common/frame_buffer.h,
libdirac_decoder/frame_decompress.cpp,
libdirac_decoder/seq_decompress.cpp: Added new function to
FrameBuffer to check if frame is available before using it. This
is to prevent from trying to dereference a non-existent first
frame from the buffer. This function is a temporary fix.
FrameBuffer might need to be re-written to return pointer to a
frame in the buffer rather than a reference so that the return
value can be checked for NULL before using it.
2007-04-25 11:49 tjdwave
* doc/latex_spec/profilelevel.tex: Revised text on levels and
profiles.
2007-04-24 16:42 tjdwave
* doc/latex_spec/: arith.tex, bs-spec.tex, dataenc.tex,
layout-fullsize.tex, low-delay.tex, sourcepresets.tex,
spec-conventions.tex, wlt-dec.tex: Removed superfluous parse
codes and added a parse code for padding data. Removed reference
to using_ac and using_mc flags/functions: low-delay syntax is now
vlc-only, and without motion compensation; core syntax supports
both motion compensation and arithmetic coding.
2007-04-24 10:35 tjdwave
* doc/latex_spec/: sourcepresets.tex, state-macros.tex, vidsys.tex:
Refactored the source parameter appendix to get rid of remaining
conversion artefacts.
2007-04-23 15:52 tjdwave
* doc/latex_spec/: bs-spec.tex, dataenc.tex, low-delay.tex,
sourcepresets.tex, state-macros.tex, vidsys.tex: Fixed reference
bugs and some typos.
2007-04-23 15:21 tjdwave
* doc/latex_spec/parsediagrams.tex: Added low delay parse diagrams.
2007-04-23 13:55 tjdwave
* doc/latex_spec/arith.tex: Fixed bug with flushing arithmetic
encoder.
2007-04-23 12:52 tjdwave
* doc/latex_spec/parsediagrams.tex: Corrected motion vector coding
parse diagrams.
2007-04-19 16:02 asuraparaju
* configure.ac: Fix bug in setting additional flags in CXXFLAGS to
flag extra warnings.
2007-04-18 13:28 tjdwave
* doc/latex_spec/: arith.tex, bs-spec.tex, dataenc.tex, idwt.tex,
layout-fullsize.tex, low-delay.tex, motion-dec.tex,
picture-dec.tex, spec-conventions.tex, vidsys.tex, wlt-dec.tex:
Incorporated Dave Schleef's comments and bugfixes.
2007-04-17 16:50 tjdwave
* doc/latex_spec/: layout-fullsize.tex, vidsys.tex: Further update
to video systems model, covering YCoCg coding and colour
matrixing etc. YCoCg has been changed to give an additional bit
to Y so that luma and chroma have the same resolution, to avoid
confusion.
2007-04-16 17:17 tjdwave
* doc/latex_spec/: vidsys-colourmatrix.tex, vidsys.tex: Initial
mods to video systems model to bring it up to date: mostly done
colour.
2007-04-16 16:42 tjdwave
* doc/latex_spec/: arith.tex, bs-spec.tex, dataenc.tex, idwt.tex,
intro.tex, layout-fullsize.tex, low-delay.tex, motion-dec.tex,
picture-dec.tex, spec-conventions.tex, state-macros.tex,
wlt-dec.tex: Removed mention of Y,U and V - instead use Y, C1 and
C2. Fixed bug with biased rounding in IDWT, and fixed bug with
ref2 motion vector decoding.
2007-04-16 12:17 tjdwave
* doc/latex_spec/arith.tex: Finalised informative text on
arithmetic encoding. Minor bug fixes.
2007-04-11 17:26 asuraparaju
* libdirac_encoder/comp_compress.cpp: Initialise the multi-quants
flag and estimated bits for DC band to fix bug where decoder
output was not matching locally decoded output.
2007-04-11 17:23 asuraparaju
* libdirac_common/video_format_defaults.cpp,
libdirac_encoder/seq_compress.cpp: Fix initialisation errors
reported by valgrind.
2007-04-11 16:28 tjdwave
* doc/latex_spec/: arith-encoder.tex, arith.tex, bs-spec.tex,
dataenc.tex, idwt.tex, layout-fullsize.tex, low-delay.tex,
mc.tex, motion-dec.tex, parsediagrams.tex,
ref-default-videoparams.tex, sourcepresets.tex,
spec-structure.tex, state-macros.tex, stream-access.tex,
wlt-dec.tex: Modified arithmetic coding sections to place the
arithmetic coding engine in an annex. The AC system now agrees
with the code, using the LUT update implementation.
Various compile warnings also fixed.
2007-04-11 15:36 tjdwave
* libdirac_common/arith_codec.h: Minor cosmetic change to simplify
symbol decoding and agree with AC theory.
2007-04-11 15:18 tjdwave
* libdirac_encoder/frame_compress.cpp,
libdirac_common/mv_codec.cpp: Fixed bug with motion vector coding
on long sequences.
2007-04-11 09:08 tjdwave
* decoder/decmain.cpp, encoder/encmain.cpp,
libdirac_byteio/Makefile.am, libdirac_byteio/mvdata_byteio.cpp,
libdirac_byteio/mvdata_byteio.h,
libdirac_byteio/mvdataelement_byteio.cpp,
libdirac_byteio/mvdataelement_byteio.h, libdirac_common/common.h,
libdirac_common/motion.cpp, libdirac_common/motion.h,
libdirac_common/mv_codec.cpp, libdirac_common/mv_codec.h,
libdirac_decoder/frame_decompress.cpp,
libdirac_decoder/frame_decompress.h,
libdirac_encoder/frame_compress.cpp,
libdirac_encoder/frame_compress.h,
libdirac_encoder/quality_monitor.cpp: Motion vector data is now
split into a number of different parts which are coded as
separate units:
- Superblock/macroblock splitting mode - Block prediction mode -
Motion vectors, reference 1, horizontal component - Motion
vectors, reference 1, vertical component - Motion vectors,
reference 2, horizontal component - Motion vectors, reference 2,
vertical component - DC values, Y - DC values, U - DC values, V
Each is a separate, byte-aligned element with a prefixing length
code.
This allows parallel encoding and decoding of these elements,
especially beneficial in hardware.
Still TO DO: gather statistics on each of these elements
separately.
2007-04-11 08:52 tjdwave
* libdirac_encoder/: comp_compress.cpp, quant_chooser.cpp: Fix to
stop drift on sequences of still frames: at high rate, DC bands
were being erroneously skipped, causing a build-up of dc error.
This fix means that DC bands are always coded losslessly and
never skipped. Further experiments may be required to see if this
condition can be relaxed.
2007-04-04 17:00 tjdwave
* doc/latex_spec/: arith.tex, mc.tex, motion-dec.tex,
spec-conventions.tex, state-macros.tex: Changed motion data
coding specification to allow for parallel decoding of motion
data elements.
Fixed bugs in arithmetic coding spec - this will be refactored to
reflect recent code changes soon.
2007-04-04 09:11 tjdwave
* doc/latex_spec/bs-spec.tex: Fixed the next parse offset and
previous parse offset to be 4 bytes instead of 3. This is now in
line with the code.
2007-04-04 09:08 tjdwave
* doc/latex_spec/wlt-dec.tex: Updated quantisation factors so that
they represent an integer approximation of 2^{(q/4)+2)} up to
q=128. Now agrees with code.
2007-04-03 16:29 tjdwave
* doc/latex_spec/: arith.tex, motion-dec.tex, state-macros.tex,
wlt-dec.tex: Minor bug-fixes.
2007-04-03 14:06 asuraparaju
* extras/dirac_dshow/src/diracsplitter/DiracSplitterFile.cpp: Size
of the parse unit header has increased to 13.
2007-04-03 14:04 asuraparaju
* tests/samples.at: Define a variable mv_prec to set the motion
vector precision on the encoder command line. Values is currently
hardcoded to quarter pixel. Change the value of variable mv_prec
to run the tests with a different value.
2007-04-03 14:02 asuraparaju
* libdirac_motionest/motion_estimate.cpp, libdirac_common/common.h:
Hack to support pixel accurate motion estimation. The pixel
accurate motion vectors are multipled by 2 and then half-pel
accurate motion estimation is performed. After ME, he motion
vectors are divided by 2 to convert them back to pixel accurate
motion vectors.
2007-04-02 08:58 asuraparaju
* libdirac_common/arith_codec.cpp: Fix g++ warnings regarding order
of initialisation of member variables in ArithCodecBase
constructor.
2007-03-30 18:22 timborer
* libdirac_common/: arith_codec.cpp, arith_codec.h: Simplified
probability estimation for arithmetic coding to speed up encoding
and decoding. Now the total symbol count is ASSUMED to be a
function of the current probability. The update is implemented in
a lookup table for speed. The total symbol count is assumed to be
16 when probabilit of 0 is 0.5, and assumed to be 256 when prob 0
is 1.
2007-03-29 17:43 asuraparaju
* libdirac_byteio/: dirac_byte_stream.cpp,
endofsequence_byteio.cpp, endofsequence_byteio.h: Fix the bug
which reported "total bits for sequence" in verbose mode to be
less than the actual the size (in bits) of the bitstream file
written to disk. This was because the number of bytes in the end
of sequence header was not being included in the total bits for
the sequence.
2007-03-29 17:07 asuraparaju
* configure.ac: Include VisualStudio in list of directories to
generate Makefile in.
2007-03-29 15:08 asuraparaju
* decoder/Makefile.am, encoder/Makefile.am: Fix for bug# 588191.
Include libdirac_byteio.a in the libraries to be linked with for
encoder and decoder utilities.
2007-03-28 15:33 asuraparaju
* win32/Makefile.am: Added VisualStudion to lis of sub directories
2007-03-28 15:31 asuraparaju
* win32/VisualStudio/: Makefile.am, dirac.sln,
ConversionUtils/ConversionUtils.vcproj,
ConversionUtils/BMPtoRGB/BMPtoRGB.vcproj,
ConversionUtils/RGBtoBMP/RGBtoBMP.vcproj,
ConversionUtils/RGBtoUYVY/RGBtoUYVY.vcproj,
ConversionUtils/RGBtoYUV411/RGBtoYUV411.vcproj,
ConversionUtils/RGBtoYUV420/RGBtoYUV420.vcproj,
ConversionUtils/RGBtoYUV422/RGBtoYUV422.vcproj,
ConversionUtils/RGBtoYUV444/RGBtoYUV444.vcproj,
ConversionUtils/UYVYtoRGB/UYVYtoRGB.vcproj,
ConversionUtils/YUV411toRGB/YUV411toRGB.vcproj,
ConversionUtils/YUV420toRGB/YUV420toRGB.vcproj,
ConversionUtils/YUV422toRGB/YUV422toRGB.vcproj,
ConversionUtils/YUV444toRGB/YUV444toRGB.vcproj,
ConversionUtils/libconv_common/libconv_common.vcproj,
DecodeDirac/DecodeDirac.vcproj, DiracDecoder/DiracDecoder.vcproj,
DiracDecoder/libdirac_decoder/libdirac_decoder.vcproj,
DiracEncoder/DiracEncoder.vcproj,
DiracEncoder/libdirac_encoder/libdirac_encoder.vcproj,
EncodeDirac/EncodeDirac.vcproj, Everything/Everything.vcproj,
InstrumentDirac/InstrumentDirac.vcproj,
InstrumentDirac/libdirac_instrument/libdirac_instrument.vcproj,
MakeHeader/MakeHeader.vcproj,
libdirac_byteio/libdirac_byteio.vcproj,
libdirac_common/libdirac_common.vcproj,
libdirac_motionest/libdirac_motionest.vcproj: New directory for
supporting latest MS Visual Studio Env.
2007-03-28 12:05 tjdwave
* libdirac_encoder/rate_control.cpp: Temporarily disabled buffer
model conformance.
2007-03-27 17:31 asuraparaju
*
win32/VS2003/DiracEncoder/libdirac_encoder/libdirac_encoder.vcproj:
Included rate_control.cpp and rate_control.h in sources list.
2007-03-27 17:29 asuraparaju
* libdirac_common/: band_codec.cpp, common.cpp, common.h: Fix
compile warnings and errors in MS Windows build. The max numbe of
quantisers supported is now 120. Modified code to calculate
quantisation factor to be compliant with latest version of spec.
2007-03-27 17:26 asuraparaju
* libdirac_byteio/parseunit_byteio.cpp: [Spec Compliance] The next
and previous parse unit offsets in the bytestream are now 4 bytes
each.
2007-03-27 16:20 tjdwave
* libdirac_common/common.h, libdirac_encoder/rate_control.cpp,
libdirac_encoder/rate_control.h,
libdirac_encoder/seq_compress.cpp: Major refactor of rate control
algorithm. The original algorithm aimed for constant bit rate
over a single GOP. This tended to be unstable when content
changed and could cause quality to degrade significantly at the
end of GOPs in order to attempt to correct for high bit rate at
the beginning.
The algorithm has been revised so that a target buffer occupancy
is aimed for, with the target bit rate set as equal to the mean
bit rate plus an adjustment factor to steer back to target. Bit
rate is computed for a subgroup (PBB or IBB) in a very similar
way, but on a rolling basis rather than a target for a single
GOP.
For the moment, a buffer size of 4xbit rate has been selected.
Fixed buffer sizes may be implemented when levels are specified.
Buffer overflows (too little bit rate - this is a _decoder_
buffer model) or underflows (too much bit rate) are indicated by
warnings in verbose mode. The buffer occupancy is then limited,
so that these events are not corrected for at present.
2007-03-26 16:28 tjdwave
* libdirac_encoder/dirac_encoder.cpp: Fixed computation of GOP
statistics to maintain coded order. GOP is counted as up to just
before the next scheduled access point (intra frame).
2007-03-26 12:20 asuraparaju
* libdirac_common/mot_comp.cpp: Weights are now being correctly set
for edge blocks. Fixed bug where data outside the picture in the
block in the bottom right corner was not being ignored.
2007-03-26 11:24 davidf_
* libdirac_encoder/quant_chooser.cpp: Stop quantizing DC subband at
all, otherwise chroma error is appearing. Also includes fix from
thomasd to look at the whole of the DC subband instead of
ignoring the first (most important value)
2007-03-23 15:32 asuraparaju
* libdirac_common/pic_io.cpp, tests/Makefile.am,
tests/colourbars.at, tests/samples.at,
util/instrumentation/instrmain.cpp: Changes to keep test scripts
and instrumentation utility in sync with the altered command
lines for the encoder, decoder.
2007-03-22 18:27 davidf_
* ChangeLog, README, decoder/decmain.cpp, encoder/encmain.cpp:
Altered command line file handling. a) now support taking input
from stdin (input specified as '-' or '/dev/stdin'). b) removed
strange filename extension stripping/appending for primary input
and output files (locally decoded video and instrumentation are
outputfilename.{local-dec.yuv,imt}.
2007-03-22 14:48 davidf_
* libdirac_common/common.h: Temporary fix to stop RateControll
setting silly QF
2007-03-22 14:45 davidf_
* libdirac_encoder/frame_compress.cpp: Add some basic diagnostics
2007-03-22 13:12 tjdwave
* libdirac_encoder/rate_control.cpp: Fixed typo in previous bug
fix.
2007-03-22 13:04 davidf_
* libdirac_encoder/rate_control.cpp: Fix overlyeager typecasting.
2007-03-21 11:32 tjdwave
* libdirac_encoder/: rate_control.cpp, rate_control.h: Adding rate
control classes.
2007-03-21 11:12 tjdwave
* README: Added instructions on using CBR encoding.
2007-03-21 11:05 tjdwave
* encoder/encmain.cpp, libdirac_common/common.cpp,
libdirac_common/common.h, libdirac_encoder/Makefile.am,
libdirac_encoder/dirac_encoder.cpp,
libdirac_encoder/dirac_encoder.h,
libdirac_encoder/quality_monitor.cpp,
libdirac_encoder/seq_compress.cpp,
libdirac_encoder/seq_compress.h: Added support for CBR encoding.
This equalises bitrate over a GOP (I frame to I frame). It does
not enforce bit rate, nor does it operate according to a buffer
model.
To apply CBR coding, add -targetrate N, where N is the target bit
rate in Kb/s.
Precedence: 1) if a quality factor is also set with -qf Q, then
the value of Q is used as the initial value for the system, but
CBR is still applied. 2) if -lossless is also set, then lossless
coding is applied and CBR constraints are ignored.
2007-03-19 16:18 asuraparaju
* decoder/decmain.cpp, libdirac_byteio/byteio.h,
libdirac_common/arith_codec.cpp, libdirac_common/arrays.h,
libdirac_common/band_codec.cpp,
libdirac_common/dirac_exception.cpp,
libdirac_common/dirac_exception.h,
libdirac_common/frame_buffer.cpp,
libdirac_common/mot_comp_mmx.cpp, libdirac_common/pic_io.cpp,
libdirac_decoder/comp_decompress.cpp,
libdirac_decoder/comp_decompress.h,
libdirac_decoder/dirac_cppparser.cpp,
libdirac_encoder/seq_compress.cpp,
libdirac_encoder/seq_compress.h,
libdirac_motionest/downconvert.cpp,
libdirac_motionest/downconvert.h,
libdirac_motionest/downconvert_mmx.cpp,
libdirac_motionest/me_mode_decn.cpp,
libdirac_motionest/me_mode_decn.h,
libdirac_motionest/me_utils_mmx.cpp,
libdirac_motionest/pixel_match.cpp,
libdirac_motionest/pixel_match.h,
util/instrumentation/libdirac_instrument/draw_overlay.cpp: Fix
warnings reported by gcc 4.1.2
2007-03-19 16:18 asuraparaju
* configure.ac: When compiling using g++, enable warnings in debug
mode and in optimised mode. All warnings are flagged as errors
in both modes of compiling.
2007-03-19 16:16 asuraparaju
* libdirac_common/: frame.cpp, upconvert_mmx.cpp: Fixed upconvert
(MMX version) to clip after each filtering operation as per spec
0.10.4 and to be in sync with the non-MMX version
2007-03-19 15:39 asuraparaju
* libdirac_decoder/seq_decompress.cpp: Print info to standard
output only in Verbose mode.
2007-03-19 15:22 davidf_
* libdirac_common/upconvert_mmx.cpp: Looks like i forgot to commit
this ages ago. Correctly round upconverted pixel values
2007-03-19 15:21 davidf_
* libdirac_common/mot_comp.cpp: Fix old naming of
superblocks+family in comments
2007-03-19 15:19 davidf_
* libdirac_common/wavelet_utils.cpp: Useful comment thats been
sitting in my local copy for ages
2007-03-01 15:32 tjdwave
* libdirac_decoder/comp_decompress.cpp: Removed reference to
InitContexts.
2007-03-01 10:38 tjdwave
* doc/latex_spec/: arith.tex, motion-dec.tex, state-macros.tex,
wlt-dec.tex: Incorporated changes to arithmetic coding. This is a
quick hack that may not compile yet. TBC.
2007-03-01 09:24 tjdwave
* libdirac_common/: arith_codec.h, band_codec.cpp, band_codec.h,
mv_codec.cpp, mv_codec.h: Changed arithmetic coding again
slighly. Restored count initialisation to (1,1) and reordered
probability/count rescaling parts to get a little more compact
code and greater speed. Tidied band codec and mv codec stuff.
2007-02-28 16:22 tjdwave
* libdirac_common/: arith_codec.cpp, arith_codec.h, band_codec.cpp,
band_codec.h, mv_codec.cpp: Modified arithmetic coding for speed,
incorporating periodic calculation of probabilities. Also removed
periodic context rescaling, which wasn't really helping
compression performance, and added to complexity.
2007-02-20 14:06 tjdwave
* libdirac_common/: arith_codec.cpp, arith_codec.h: Code tidy,
removing a preponderence of inline functions. Also improved
renormalisation.
2007-02-20 09:55 tjdwave
* libdirac_common/: arith_codec.cpp, arith_codec.h: Modified
renormalisation condition and simplified renormalisation process.
Renormalisation is now only invoked if the interval is <=1/4 of
the range. This means that either the most significant bits of
low and high are the same, or we have low=0x01... and high =
0x10.. i.e. a classic straddle. This reduces the 3-way branch
condition to a 2-way one. It also means that we can eliminate use
of the high variable altogether and just use low and range.
2007-02-20 09:39 tjdwave
* libdirac_common/: arith_codec.cpp, arith_codec.h: Changed
structure of renormalisation loop to enable optimisation.
2007-02-20 09:24 tjdwave
* libdirac_common/: arith_codec.h, arith_codec.cpp: Now updating
range variable on the fly rather than calculating from low and
high.
2007-02-20 09:21 tjdwave
* libdirac_common/: arith_codec.cpp, arith_codec.h: Refacactored
arithmetic coding so that renormalisation is only performed if
the interval size is <=1/2 (represented by 0x8000 in 16 bits).
This condition may be further restricted in future, and other
changes and optimisations will follow. This change makes
coding/decoding faster and allows for the high code to be
eliminated. Watch this space.
2007-02-15 16:44 tjdwave
* doc/latex_spec/: arith.tex, bs-spec.tex, layout-fullsize.tex,
mc.tex, picture-dec.tex, ref-default-videoparams.tex,
spec-conventions.tex, state-macros.tex: Various bug-fixes and
readabilty improvements.
2007-02-15 16:41 tjdwave
* doc/latex_spec/low-delay.tex: Fixed quantiser and length sizes in
slice header.
2007-02-07 12:03 davidf_
* libdirac_common/: frame.cpp, upconvert.cpp, upconvert.h: Fixed
upconvert (non MMX) to: - perform unbiased rounding as per spec
0.10.4 - clip after each filtering operation as per spec 0.10.4
2007-02-01 15:28 tjdwave
* libdirac_common/common.cpp: D'oh! Correct commit.
2007-02-01 15:15 tjdwave
* libdirac_common/common.cpp: Fixed calculation of quantisation
factors so that intermediate values don't run out of precision.
2007-01-23 14:18 davidf_
* libdirac_common/band_codec.cpp: Fixed nhood_zero selection as per
spec-0.10.4
2007-01-22 15:53 tjdwave
* doc/latex_spec/mc.tex: Reorganised the text concerning chroma
scaling for clarity. Chroma scaling for global motion vectors is
now achieved by scaling the generated luma field rather than
scaling the generating matrix and vectors. This will change the
bitstream.
2007-01-22 14:58 tjdwave
* doc/latex_spec/: bs-spec.tex, mc.tex,
ref-default-videoparams.tex, state-macros.tex, wlt-dec.tex: Some
more of Johannes Reinhardt's corrections
2007-01-22 14:20 tjdwave
* libdirac_common/band_codec.cpp: Changed zero neighbourhood
context selection so as to comply with specification.
2007-01-22 12:33 tjdwave
* doc/latex_spec/wlt-dec.tex, libdirac_common/wavelet_utils.cpp:
Correction to spec so that subband order is raster order for each
level.
2007-01-22 12:22 tjdwave
* libdirac_common/wavelet_utils.cpp: Fixed subband order so that it
is as in the specification.
2007-01-16 12:03 tjdwave
* doc/latex_spec/wlt-dec.tex: Oops. Undoing last commit.
2007-01-16 11:12 tjdwave
* doc/latex_spec/wlt-dec.tex: Changed subband decoding order to
agree with the Dirac software.
2007-01-11 09:42 tjdwave
* doc/latex_spec/: bs-spec.tex, picture-dec.tex, state-macros.tex:
Changed spec so that the size of the reference picture buffer is
determined from the level and profile information rather than
fixed as 5 pictures.
2007-01-09 14:21 tjdwave
* doc/latex_spec/: arith.tex, bs-spec.tex, dataenc.tex, idwt.tex,
layout-fullsize.tex, mc.tex, spec-conventions.tex, wlt-dec.tex:
Minor edits and typos. sign() function added amongst other mods.
2007-01-04 13:20 tjdwave
* doc/latex_spec/: layout-fullsize.tex, motion-dec.tex,
ref-default-videoparams.tex, state-macros.tex, wlt-dec.tex: Fixed
JR bugs.
2007-01-03 16:03 tjdwave
* libdirac_common/wavelet_utils.cpp: Fixed bug with rounding offset
in non-mmx code.
2007-01-03 10:18 tjdwave
* doc/latex_spec/mc.tex: Fixed typos.
2007-01-03 08:32 tjdwave
* doc/latex_spec/idwt.tex: Changed the specification of how wavelet
filters are adapted at the array edges to match what the Dirac
code does, which is to use edge extension of the even and odd
coefficients separately.
2006-12-13 09:10 tjdwave
* libdirac_encoder/frame_compress.cpp: Fixed bug with unitialised
cut flag. Changed intra insertion criterion so that a frame is
made intra if just a third of blocks are intra - this is a better
bit rate trade-off.
2006-12-05 14:36 tjdwave
* libdirac_common/frame_buffer.cpp, libdirac_common/frame_buffer.h,
libdirac_decoder/frame_decompress.cpp,
libdirac_decoder/seq_decompress.cpp,
libdirac_encoder/seq_compress.cpp: Fixed memory leak bug, which
resulted from the encoder not signalling the discarded reference
frames correctly. The reference management and FrameBuffer class
code still need some work to rationalise.
The decoder still does not support the spec requirement for
discarding old reference frames if the reference frame buffer
gets too big. This would prevent memory leaks (at the risk of
incorrect decoding) if the encoder were to signal reference
discarding incorrectly in this manner.
2006-12-04 12:00 davidf_
* doc/faq.html: Fixed markup faults spotted by Peter Shelswell: -
Fixed errant <h> tag - Added <?xml ?> identifier
2006-11-23 16:22 tjdwave
* encoder/encmain.cpp, libdirac_encoder/dirac_encoder.cpp,
libdirac_encoder/dirac_encoder.h,
util/instrumentation/process_sequence.cpp: Fix for broken
intrumentation data: obsolete "common" MB mode removed.
Verbose commentary switched to cout.
2006-11-23 11:00 tjdwave
* libdirac_decoder/comp_decompress.cpp: Fixed bug with codeblock
numbers being incorrectly calculated in the decoder.
2006-11-22 14:06 tjdwave
* doc/latex_spec/: arith.tex, bs-spec.tex, dataenc.tex, idwt.tex,
layout-fullsize.tex, low-delay.tex, mc.tex, motion-dec.tex,
picture-dec.tex, profilelevel.tex, ref-default-videoparams.tex,
state-macros.tex, stream-access.tex, wlt-dec.tex: Nearly complete
version of low-delay syntax, at least for intra frames. Data
encoding section revised to incorporate "bounded" inputs for vlcs
as well as for arithmetic encoding, unifying the description.
More detail on buffering and profiles/levels.
2006-11-22 11:00 tjdwave
* README, libdirac_common/band_codec.cpp,
libdirac_common/common.cpp, libdirac_common/common.h,
libdirac_common/mv_codec.cpp,
libdirac_common/video_format_defaults.cpp,
libdirac_encoder/comp_compress.cpp,
libdirac_encoder/comp_compress.h,
libdirac_encoder/frame_compress.cpp,
libdirac_encoder/seq_compress.cpp: Inserted intra frames are now
given lower quality than other intra frames so as to match P and
B frames more closely. Various other minor bug-fixes to remove
-pedantic compile errors and valgrind error.
2006-11-14 10:59 tjdwave
* encoder/encmain.cpp, libdirac_common/common.cpp,
libdirac_common/common.h, libdirac_encoder/dirac_encoder.cpp,
libdirac_encoder/dirac_encoder.h,
libdirac_encoder/seq_compress.cpp,
libdirac_encoder/seq_compress.h: Added in option for encoder to
denoise input. Note that PSNR values reported will be for
denoised values. Denoiser uses a centre-weighted median filter.
Also applied Johannes Reinhardt's cosmetic patch to the encoder
to tidy it up.
2006-11-13 14:20 tjdwave
* doc/latex_spec/wlt-dec.tex: Changed inverse quantisation offset
so that a value of 0.5*quantisation is used.
2006-11-13 12:28 tjdwave
* ChangeLog: [no log message]
2006-11-13 09:41 tjdwave
* libdirac_common/band_codec.cpp, libdirac_common/band_codec.h,
libdirac_common/common.cpp, libdirac_common/common.h,
libdirac_decoder/comp_decompress.cpp,
libdirac_encoder/comp_compress.cpp,
libdirac_encoder/quant_chooser.cpp: Changed quantiser offsets to
be different for Intra and Inter frames, as per the latest draft
of the spec. Having an offset of 0.5*quantiser for intra frames
improves performance at high rate, especially iterated coding
with Dirac Pro apps.
2006-11-09 12:11 tjdwave
* doc/latex_spec/: arith-encoder.tex, arith.tex,
layout-fullsize.tex, low-delay.tex, mc.tex, motion-dec.tex,
profilelevel.tex, spec-conventions.tex, spec-structure.tex,
wlt-dec.tex: Added more text on the low-delay syntax and decoded
picture buffer model. Clarified arithmetic decoding process and
conventions.
2006-11-09 11:30 tjdwave
* libdirac_common/common.cpp, libdirac_common/common.h,
libdirac_common/frame_buffer.cpp,
libdirac_encoder/comp_compress.cpp,
libdirac_encoder/comp_compress.h,
libdirac_encoder/frame_compress.cpp,
libdirac_encoder/quality_monitor.cpp,
libdirac_encoder/quality_monitor.h,
libdirac_encoder/quant_chooser.cpp,
libdirac_motionest/motion_estimate.cpp,
libdirac_motionest/pixel_match.cpp: Overall improvements to
encoding framework to improve quality for difficult pictures and
at low bit rates. Changes to the RDO parameters are experimental
and they may change again.
- Added test for whether a frame is a B frame or not - Identified
Layer 1 frames with P frames and Layer 2 with B frames, rather
than with Inter Ref and Inter Non-ref respectively. This is more
efficient with the new GOP structure - Modified RDO framework to
provide correction where there has been ME failure i.e. lots of
Intra blocks - Slightly increased ME search areas - Corrected the
frame type parameter for the final B frame in a sequence -
Changed confusing terminology for costs/errors in quantisation
factor selection - Added overall PSNR stats for a sequence for
performance comparisons
2006-10-30 15:17 tjdwave
* doc/latex_spec/: arith.tex, dataenc.tex, motion-dec.tex,
wlt-dec.tex: Fixed bug in specification of inverse quantisation.
Changed default arithmetic decoding padding value to 1 from 0, so
after reading in LENGTH bytes, a value of 1 is used from that
point. This should support early termination i.e. encode only
the first few values in a subband and then the decoder will
correctly decode the remainder as 0, but this is as yet untested.
2006-10-30 14:57 tjdwave
* libdirac_common/arith_codec.cpp: Fixed bug so that the decoder
can now append any data to the end of the arithmetically encoded
block and still decode correctly. Default padding data is all 1s
- this should make a null or terminated subband decode with
zeroes.
2006-10-30 13:42 tjdwave
* libdirac_common/band_codec.cpp, libdirac_common/motion.cpp,
libdirac_common/motion.h, libdirac_common/mv_codec.cpp,
libdirac_decoder/comp_decompress.cpp: Fixed definitions of
mean/median so that unbiased mean values are used. Likewise
changed the prediction for DC values to take account of the fact
that they may be negative. These changes change the bitstream.
2006-10-30 13:38 tjdwave
* doc/latex_spec/: motion-dec.tex, spec-conventions.tex,
wlt-dec.tex: Changed specification of division so that it agrees
with C/C++ standards. Traced through these changes to
specification of split mode, block dc value and intra dc band
prediction.
2006-10-26 16:22 tjdwave
* libdirac_encoder/dirac_encoder.cpp: Moved to using cout instead
of cerr for reporting.
2006-10-26 16:07 tjdwave
* libdirac_common/common.cpp, libdirac_common/common.h,
libdirac_common/frame_buffer.cpp, libdirac_common/frame_buffer.h,
libdirac_decoder/frame_decompress.cpp,
libdirac_decoder/frame_decompress.h,
libdirac_decoder/seq_decompress.cpp,
libdirac_encoder/frame_compress.cpp,
libdirac_encoder/seq_compress.cpp: Made operation of retired
picture list comply with specification: only reference pictures
are signalled to be retired and non-reference pictures are
retired by the decoder once they are displayed.
Clarified frame type parameters so as to be sure they always
agree. This will need further refactoring.
Reference frames are now cleaned from the buffer _after_ being
the current frame has been decoded, as per the spec. This allows
slightly more flexible GOP structures.
2006-10-25 14:01 tjdwave
* libdirac_common/common.cpp: Fixed bug with wrong quantiser offset
being used: now complies with spec again.
2006-10-24 09:09 tjdwave
* doc/latex_spec/: arith.tex, bs-spec.tex, dataenc.tex,
dirac-overview.tex, layout-fullsize.tex, picture-dec.tex,
profilelevel.tex, spec-conventions.tex, spec-structure.tex,
state-macros.tex, vidsys-sigrange.tex, vidsys.tex: First stab at
including the low-delay syntax used for Dirac Pro profiles,
together with profile and level text. Work in progress!
2006-10-19 16:01 tjdwave
* doc/latex_spec/picture-dec.tex: Changed order of reference buffer
management so that a reference picture is not removed until after
the current picture has been decoded,
2006-10-19 14:53 tjdwave
* libdirac_common/band_codec.cpp: Put in Dave Schleef's patch for
making the computation of parent coefficient coordinates correct
and spec compliant.
2006-10-10 15:04 tjdwave
* encoder/encmain.cpp, libdirac_common/common.cpp,
libdirac_common/dirac_types.h,
libdirac_encoder/dirac_encoder.cpp: Fixed bug with aspect ratio
being set to 0/0. Now it should be set to the correct value from
the video format defaults.
2006-10-09 16:24 tjdwave
* libdirac_common/wavelet_utils_mmx.cpp: Renamed functions with
consistent filter names.
2006-10-05 16:22 tjdwave
* encoder/encmain.cpp, libdirac_common/common.cpp,
libdirac_common/common_types.h,
libdirac_common/video_format_defaults.cpp,
libdirac_common/wavelet_utils.cpp,
libdirac_common/wavelet_utils.h: Given wavelet filters correct
names and numbers as per spec. Added support for HAAR1 and HAAR2
filters. FIDELITY filter will be forthcoming.
2006-09-28 18:20 davidf_
* doc/: browser_compatibility.html, licences.html, licenses.html,
template.html, template2.html, todo.html: fix license spelling
mistake correction typos/misses/references
2006-09-28 18:13 davidf_
* doc/: contact.html, documentation.html, faq.html,
getting_involved.html, index.html, overview.html, soc2006.html,
soc2006_ideas.html, specification.html, styles.css, todo.html,
documentation/publications/diracoverview-ibc2006.pdf: merge shas'
website fixes added ibc2006 publication
2006-09-28 14:59 tjdwave
* libdirac_common/: common.cpp, mot_comp.cpp: Fixed the block
parameter testing so as to be compliant with the specification.
Non-overlapped blocks are now allowed and supported. The raised
cosine macro has now been removed and only linear weights are
supported.
2006-09-28 10:17 tjdwave
* doc/latex_spec/low-delay.tex: Added file to cover low delay
syntax.
2006-09-28 10:08 tjdwave
* doc/latex_spec/: abstract.tex, arith-contexts.tex,
arith-datainput.tex, arith-decoder-ba.tex,
arith-decoder-impl.tex, arith-decoder-sint.tex,
arith-decoder-sua.tex, arith-decoder-tua.tex,
arith-decoder-uua.tex, arith-decoder.tex, arith-encoder.tex,
arith-engine.tex, arith-init.tex, arith-intro.tex,
arith-update.tex, arith.tex, begin-bs.tex, begin-compmethods.tex,
begin-dwt-fwd.tex, begin-dwt-parentchild.tex, begin-dwt.tex,
begin-ec-dwt.tex, begin-ec-mc.tex, begin-ec.tex,
begin-mc-accuracy.tex, begin-mc-blocks.tex, begin-mc-global.tex,
begin-mc-intra.tex, begin-mc.tex, begin-more.tex,
begin-pictypes.tex, begin-videocoding.tex, bs-intro.tex,
bs-semantics.tex, bs-spec.tex, bs-syntax.tex,
conv-bs-bytealign.tex, conv-bs-defaults.tex, conv-bs-reading.tex,
conv-intro.tex, conv-parse-diagnums.tex, conv-parse-diagrams.tex,
conv-pseudocode-syntax.tex, conv-pseudocode.tex,
dataenc-bool.tex, dataenc-input.tex, dataenc-intro.tex,
dataenc-nbitlit.tex, dataenc-nbytelit.tex, dataenc-vlc-segol.tex,
dataenc-vlc-su.tex, dataenc-vlc-uegol.tex, dataenc-vlc-ut.tex,
dataenc-vlc-uu.tex, dataenc-vlc.tex, dirac-concepts.tex,
dirac-overview.tex, gendec.tex, idwt-1dsynthesis.tex,
idwt-filters.tex, idwt-interleaving.tex, idwt-intro.tex,
idwt-lifting.tex, idwt-padremoval.tex, idwt-synthesis.tex,
idwt-vhsynthesis.tex, idwt.tex, intro-docstruct.tex,
intro-purpose.tex, intro-scope.tex, layout-fullsize.tex,
logicalstruct-accessunit.tex, logicalstruct-arithcoding.tex,
logicalstruct-blocks.tex, logicalstruct-coordinates.tex,
logicalstruct-dwt.tex, logicalstruct-frameordering.tex,
logicalstruct-frames.tex, logicalstruct-globalmc.tex,
logicalstruct-intro.tex, logicalstruct-localmc.tex,
logicalstruct-parseunit.tex, logicalstruct-sequence.tex,
logicalstruct-subbands.tex, logicalstruct-superblocks.tex,
logicalstructs.tex, mc-alg.tex, mc-blockcoverage.tex,
mc-chomascaling.tex, mc-impl.tex, mc-intro.tex,
mc-obmc-matrix.tex, mc-precision.tex, mc-pred.tex,
mc-upconvert.tex, motion-dec.tex, parsediagrams.tex,
prep-idwt-codeblk-dim.tex, prep-idwt-codeblk-process.tex,
prep-idwt-coef-process.tex, prep-idwt-conventions.tex,
prep-idwt-ctxt-init.tex, prep-idwt-ctxt-magnitude.tex,
prep-idwt-ctxt-quantindex.tex, prep-idwt-ctxt-sign.tex,
prep-idwt-ctxt-skip.tex, prep-idwt-pred-dc.tex,
prep-idwt-process.tex, prep-idwt.tex, prep-mc-ctxt-init.tex,
prep-mc-decode-blkmotion.tex, prep-mc-decode-dc.tex,
prep-mc-decode-mv.tex, prep-mc-decode-predictionmode.tex,
prep-mc-decoding.tex, prep-mc-mbdata.tex,
prep-mc-predapeature.tex, prep-mc-predictionmodes.tex,
prep-mc-predmbcommon.tex, prep-mc-predmbglobal.tex,
prep-mc-predmbsplit.tex, ref-default-videoparams.tex,
ref-quantization-lut.tex, semantics-auh.tex, semantics-dwt.tex,
semantics-intro.tex, semantics-mv.tex, semantics.tex,
spec-conventions.tex, spec-structure.tex, state-macros.tex,
wlt-dec.tex: Removing a whole load of cruft files. Bug fixes.
2006-09-12 12:18 tjdwave
* doc/latex_spec/state-macros.tex: [no log message]
2006-09-12 10:00 tjdwave
* doc/latex_spec/ref-default-videoparams.tex: Completed tables -
added various decoding presets too.
2006-09-12 09:59 tjdwave
* doc/latex_spec/sourcepresets.tex: This contains the presets for
the source parameters. This needs to be merged with the video
systems model section.
2006-09-12 09:58 tjdwave
* doc/latex_spec/vidsys.tex: Slightly revised - to be merged with
source parameters presets.
2006-09-12 09:56 tjdwave
* doc/latex_spec/: idwt.tex, mc.tex, picture-dec.tex: Finished
first draft of overall picture decoding process. Added stuff on
global motion compensation (_probably_ works now).
2006-09-12 09:54 tjdwave
* doc/latex_spec/: bs-spec.tex, motion-dec.tex, wlt-dec.tex:
Created unified chapter files for parsing elements. Completed
overall stream syntax chapter.
2006-09-12 09:52 tjdwave
* doc/latex_spec/: arith.tex, dataenc.tex: Unified data access
files into chapter files.
2006-09-12 09:51 tjdwave
* doc/latex_spec/: dirac-concepts.tex, parsing.tex: Restructured
part structure files.
2006-09-12 09:48 tjdwave
* doc/latex_spec/spec-conventions.tex: Updated/added material on
the way the pseudocode works and the mathematical notation. This
section still needs work and reordering.
2006-09-12 09:45 tjdwave
* doc/latex_spec/intro.tex: Revised and unified the general
introduction.
2006-09-12 09:44 tjdwave
* doc/latex_spec/spec-structure.tex: Revised overall document
structure.
2006-09-12 09:42 tjdwave
* doc/latex_spec/parsediagrams.tex: Added parse diagrams as an
appendix.
2006-08-24 10:32 tjdwave
* doc/latex_spec/: decoding-ops.tex, idwt.tex, state-macros.tex:
Updated inverse wavelet transform section. Introduced Haar
variants and added a fidelity filter.
2006-08-21 13:33 tjdwave
* doc/latex_spec/: arith.tex, bs-spec.tex, dataenc.tex,
decoding-ops.tex, layout-fullsize.tex, mc.tex, motion-dec.tex,
parsing.tex, spec-structure.tex, state-macros.tex, wlt-dec.tex:
Done motion data decoding and motion compensation. Amalgamated
file contents to simplify structure.
2006-08-11 15:51 tjdwave
* libdirac_common/: golomb.cpp, golomb.h:
Functionality is now provided in the Byte IO library.
----------------------------------------------------------------------
2006-07-28 14:33 tjdwave
* libdirac_common/common.h, libdirac_common/motion.cpp,
libdirac_common/motion.h, libdirac_common/mv_codec.cpp,
libdirac_common/mv_codec.h, libdirac_encoder/dirac_encoder.cpp,
libdirac_motionest/me_mode_decn.cpp,
libdirac_motionest/me_mode_decn.h: Removed the Macroblock
"Common" mode. This means that each prediction unit within a
macroblock will have to code a mode. Motion data coding has also
been changed so that instead of coding all the prediction modes
first and then all the motion data, prediction modes are included
in the motion data as per the spec.
An updated version of the latex spec in which the Common mode is
omitted is in preparation and will be committed in the next
couple of weeks.
2006-07-19 12:29 tjdwave
* doc/latex_spec/prep-idwt-process.tex: Added initialisation of the
coefficient_reset variable.
2006-07-19 12:19 tjdwave
* doc/latex_spec/: arith-contexts.tex, arith-decoder-sint.tex,
dataenc-vlc-segol.tex, decoding-ops.tex, intro-docstruct.tex,
parsing.tex, prep-idwt-coef-process.tex, state-macros.tex,
figs/block-coverage.eps, figs/obmc-profile.eps: Mods to interface
with arithmetic coding changes.
2006-07-19 11:48 tjdwave
* doc/latex_spec/: arith-contexts.tex, arith-datainput.tex,
arith-decoder-sint.tex, arith-decoder.tex, arith-engine.tex,
arith-init.tex, arith-intro.tex, arith-update.tex, arith.tex:
Refactored to take account of exp-Golomb binarisation and the use
of global context indices being passed to arithmetic decoding
operations.
2006-07-18 11:36 tjdwave
* libdirac_common/: band_codec.cpp, band_codec.h: Changed nhood sum
calculation so that it only takes account of whether the
neighbour is zero or not.
2006-07-07 15:07 tjdwave
* encoder/encmain.cpp: Fixed bug with framerate denominator being
incorrectly set if omitted.
2006-07-07 12:14 tjdwave
* doc/latex_spec/: intro-docstruct.tex, mc-intro.tex,
mc-upconvert.tex, mc.tex: Debugging commit.
2006-07-07 12:07 tjdwave
* doc/latex_spec/: arith-contexts.tex, arith.tex, bs-spec.tex,
bs-syntax.tex, decoding-ops.tex, idwt.tex,
prep-idwt-coef-process.tex, prep-idwt-conventions.tex,
prep-idwt-ctxt-quantindex.tex, prep-idwt-process.tex,
prep-idwt.tex, spec-structure.tex, state-macros.tex, wlt-dec.tex,
figs/block-coverage.eps, figs/block-offset.eps, figs/block.eps,
figs/dwt.eps, figs/frame-ordering.eps, figs/obmc-profile.eps,
figs/sequence.eps, figs/superblock-16pu.eps,
figs/superblock-1pu.eps, figs/superblock-4pu.eps: Updated and
refactored data access and coefficient decoding sections. Spec
should be up to date and accurate for coefficient decoding, but
fine-tuning and checking is required. Diagrams also needed.
Major change is in the way arithmetic decoding operations are
called. Just specify sets of contexts to be used for follow bits,
data bits and the sign by passing indices into the state
variable, which maintains the contexts.
This simplifies the code in the stream syntax, avoiding local
copies etc. Explanation will be required for the context
indices. The arithmetic decoding section needs updating to
reflect this change and use of interleaved exp- Golomb coding.
2006-07-07 08:56 tjdwave
* doc/latex_spec/layout-fullsize.tex: Added temporary environment
pseudo* for documenting _part_ of a function's pseudocode (no
function header). Fixed bug where \bsRET reduces indent by 1 -
this broke indentation when there were a number of returns in a
function.
2006-07-06 12:29 tjdwave
* libdirac_common/: band_codec.cpp, band_codec.h: Changed coding of
codeblock quantiser indices to be differential codeblock to
codeblock, as per Tim's stream syntax, rather than differential
with respect to the subband quantiser index.
N.B. this now does not agree with version 0.9.