Граф коммитов

57 Коммитов

Автор SHA1 Сообщение Дата
Andrew Osmond 09266efcbc Bug 1732115 - Part 3. Refactor decoder pipeline to partially use Unoriented/OrientedPixel. r=tnikkel
Rather than change every use of IntSize/Rect/Point in image/, this patch
attempts to draw the line at the relevant parts of the decoding pipeline
to prevent confusion about which size and orientation we are working
with.

Differential Revision: https://phabricator.services.mozilla.com/D126381
2021-10-06 14:41:17 +00:00
Andi-Bogdan Postelnicu 0fd4f87a0c Bug 1683557 - Make `image` buildable outside of `unified-build` environment. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D100211
2021-01-04 14:20:22 +00:00
Andrew Osmond 4cb5bd51f8 Bug 1583647 - Make the GIF decoder use the accelerated RGB unpacking. r=tnikkel
Differential Revision: https://phabricator.services.mozilla.com/D47063

--HG--
extra : moz-landing-system : lando
2019-09-25 23:31:40 +00:00
championshuttler 7141b73975 Bug 1552317 - Fix codespell errors for image/. r=tnikkel
Differential Revision: https://phabricator.services.mozilla.com/D45553

--HG--
extra : moz-landing-system : lando
2019-09-12 09:00:52 +00:00
Andrew Osmond 1f049d2787 Bug 1255106 - Part 4. Ensure we don't apply CMS transforms in cases we missed. r=tnikkel
GIF images should not apply CMS transforms if disabled by caller via
SurfaceFlags::NO_COLORSPACE_CONVERSION. WebP images should reject any
non-RGB ICC profiles, not just grayscale profiles.

Differential Revision: https://phabricator.services.mozilla.com/D26372
2019-05-28 11:38:46 -04:00
Andrew Osmond 3befab3ee9 Bug 1530774 - Part 3. Remove decoder support for producing paletted frames. r=tnikkel
Differential Revision: https://phabricator.services.mozilla.com/D23716
2019-03-18 07:30:34 -04:00
Sylvestre Ledru 265e672179 Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
# ignore-this-changeset

--HG--
extra : amend_source : 4d301d3b0b8711c4692392aa76088ba7fd7d1022
2018-11-30 11:46:48 +01:00
Andrew Osmond cb1d37e391 Bug 1382683 - Part 2. Switch nsGIFDecoder2 to write pixels in blocks instead of individually. r=tnikkel
nsGIFDecoder2::YieldPixel is sufficiently complex that the optimizer
does not appear to inline it with the rest of the templated methods. As
such there is a high cost to calling it. This patch modifies it to yield
a requested number of pixels before exiting, allowing us to amortize the
cost of calling across a row instead of a pixel. Based on profiling,
this will significantly reduce the time require to decode a frame.
2018-05-25 06:52:03 -04:00
Andrew Osmond 28978c4f66 Bug 523950 - Part 2. Expose image decoder type and SourceBuffer to owners. r=tnikkel
Later in the patch series, we use the new APIs to facilitate cloning of
an existing decoder. This is useful when you want to redecode the same
image with the exact same configuration but from the very beginning.
2018-02-28 13:34:52 -05:00
Timothy Nikkel 8bb6a64726 Bug 1413762. Check integer shift value is reasonable before using it in gif decoder. r=aosmond 2017-11-23 00:40:17 -06:00
Vedant Sareen 7d4bd52fae Bug 1330907 - Rename Telemetry::ID to Telemetry::HistogramID. r=dexter
Changed |print("enum ID : uint32_t {", file=output)| to |print("enum HistogramID : uint32_t {", file=output)| at line 53 of the file |toolkit/components/telemetry/gen-histogram-enum.py|, and then replaced all the textual occurrences of |Telemetry::ID| to |Telemetry::HistogramID| and |ID| to |HistogramID| in 43 other files.
2017-02-16 00:45:15 +05:30
Seth Fowler 98a9fd7db6 Bug 1291071 (Part 4) - Clean up Decoder::SpeedHistogram() and related code. r=edwin 2016-08-05 18:50:29 -07:00
Seth Fowler 9f0a5862e4 Bug 1291059 - Yield in the GIF decoder at the beginning of a new frame, not at the end of the previous frame. r=edwin 2016-08-02 04:10:59 -07:00
Seth Fowler 6d790d3506 Bug 1287691 (Part 2) - Yield after each frame in the GIF decoder. r=edwin 2016-07-20 02:30:35 -07:00
Makoto Kato 1cb4228397 Backed out 4 changesets (bug 1287691) due to Windows build failure
MozReview-Commit-ID: KgV3nU9a64F
2016-07-20 11:03:59 +09:00
Seth Fowler 014dc44721 Bug 1287691 (Part 2) - Yield after each frame in the GIF decoder. r=edwin 2016-07-19 17:15:01 -07:00
Seth Fowler 938a963f7f Bug 1287246 (Part 1) - Expose LexerResult from the StreamingLexer API and add an explicit Yield type. r=njn 2016-07-18 01:25:37 -07:00
Seth Fowler 4c2a4667a7 Bug 1286165 (Part 2) - Advance decoders' SourceBufferIterator directly in StreamingLexer. r=edwin,njn 2016-07-15 17:48:57 -07:00
Seth Fowler 0872ad00cb Bug 1285867 (Part 2) - Don't call Decoder::PostDataError() from Decoder subclasses. r=edwin 2016-07-15 16:41:11 -07:00
Seth Fowler bd9732ac1b Bug 1285865 (Part 6) - Pass a SourceBufferIterator to Decoder::DoDecode(). r=edwin 2016-07-11 12:13:13 -07:00
Seth Fowler e80fff4085 Bug 1285865 (Part 5) - Return a Maybe<TerminalState> from Decoder::DoDecode(). r=edwin 2016-07-11 12:13:11 -07:00
Seth Fowler a9f24e8308 Bug 1285865 (Part 4) - Rename Decoder::WriteInternal() to Decoder::DoDecode() and fix its argument types. r=edwin 2016-07-11 12:13:09 -07:00
Seth Fowler bc967b6b86 Bug 1279859 - Correctly skip over extra image sub blocks in the GIF decoder. r=njn 2016-06-20 21:09:29 -07:00
Seth Fowler 112f55ea0c Bug 1204392 - Use StreamingLexer in the GIF decoder. r=njn,seth 2016-06-08 12:17:17 -07:00
Seth Fowler 3978c77cb6 Bug 1247152 (Part 2) - Remove even more code from the GIF decoder. r=edwin 2016-03-09 15:39:02 -08:00
Seth Fowler 875464424a Bug 1247152 (Part 1) - Use SurfacePipe in the GIF decoder. r=njn 2016-03-09 15:39:02 -08:00
Seth Fowler 6a4428a1e6 Bug 1213744 (Part 2) - Clamp the GIF frame rect to the visible rect for DDD and don't decode outside it. r=tn 2015-10-25 13:14:14 -07:00
Steve Singer 9156f29954 Bug 1208935 - Move Deinterlacer to a standalone file. r=seth
--HG--
extra : rebase_source : 0c5a189769dd741953cab667127ffdef39a60aa7
2015-09-28 20:40:00 +02:00
Seth Fowler ae6de3f01a Bug 1207378 (Part 2) - Use Downscaler to remove first-frame padding when downscaling GIFs. r=tn 2015-09-26 01:36:23 -07:00
Seth Fowler c1229ef66c Bug 1146663 (Part 5) - Require that all image decoders support downscale-during-decode. r=tn 2015-09-19 16:21:08 -07:00
Seth Fowler b32c629237 Bug 1194058 (Part 2) - Add downscale-during-decode support for the GIF decoder. r=tn 2015-09-17 15:03:34 -07:00
Seth Fowler c012dc0aa9 Bug 1191114 (Part 1) - Always detect HAS_TRANSPARENCY during the metadata decode. r=tn
--HG--
extra : rebase_source : 97c8568f33abd1f2a8d9ef5679ce3ac904f0758f
2015-08-12 10:41:02 -07:00
Seth Fowler 88affc4d10 Bug 1184996 (Part 4) - Forbid instantiation of decoders except via DecoderFactory. r=tn 2015-07-22 22:39:56 -07:00
Seth Fowler d564a3b0a5 Bug 1117607 - Make decoders responsible for their own frame allocations. r=tn 2015-07-10 19:26:15 -07:00
Glenn Randers-Pehrson 7def1c3af9 Bug 1102048 (Part 24, decoders) - Make image/src files comply with the Mozilla Coding Style Guide. r=seth 2015-04-05 16:22:00 -07:00
Ehsan Akhgari 883849ee32 Bug 1145631 - Part 1: Replace MOZ_OVERRIDE and MOZ_FINAL with override and final in the tree; r=froydnj
This patch was automatically generated using the following script:

function convert() {
echo "Converting $1 to $2..."
find . \
       ! -wholename "*/.git*" \
       ! -wholename "obj-ff-dbg*" \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert MOZ_OVERRIDE override
convert MOZ_FINAL final
2015-03-21 12:28:04 -04:00
Seth Fowler 66b57f086b Bug 1079627 (Part 1) - Make image decoders hold a strong reference to their image. r=tn 2015-01-15 15:11:35 -08:00
Tom Schuster 967d0d250a Backout changeset b4ebefd0f7e3:a8044fd506db Bug 1117607, Bug 1118087, Bug 1118092, Bug 1118105, Bug 1030372, Bug 1079627 on CLOSED TREE 2015-01-11 20:43:32 +01:00
Seth Fowler c575069c34 Bug 1079627 (Part 1) - Make image decoders hold a strong reference to their image. r=tn 2015-01-11 05:34:20 -08:00
Seth Fowler 13ecf8f345 Bug 1117607 - Make decoders responsible for their own frame allocations. r=tn 2015-01-10 18:47:44 -08:00
Wes Kocher a1bfc06c8c Backout 17fc30214d84 (bug 1117607) for reftest orange 2015-01-09 18:48:43 -08:00
Seth Fowler 57b28877bf Bug 1117607 - Make decoders responsible for their own frame allocations. r=tn 2015-01-09 15:02:48 -08:00
Seth Fowler e723960bef Bug 1116733 (Part 2) - Remove DecodeStrategy and frame allocation handling outside of Decoder. r=tn 2015-01-08 00:04:31 -08:00
Ehsan Akhgari 4d845d4829 Bug 1117248 - Mark virtual overridden functions as MOZ_OVERRIDE in image/; r=jrmuizel 2015-01-03 12:24:49 -05:00
Glenn Randers-Pehrson af6365f04f Bug 991149 - Improve image/* source compliance with Mozilla Coding Style. r=seth 2014-11-14 12:59:00 -05:00
Ehsan Akhgari c382f0d21d Bug 1061047 - Fix some bad implicit constructors in imagelib; r=jrmuizel 2014-09-02 12:20:24 -04:00
Milan Sreckovic 4458de2641 Bug 1027093 - Rename int32_t mCurrentFrame in nsGIFDecoder2 to avoid mixups with parent class' imgFrame* mCurrentFrame. r=jmuizelaar 2014-06-18 10:54:59 -04:00
Seth Fowler 8fe99f9dbb Bug 896268 - Use a stateless approach to synchronous image decoding. r=jdm 2013-12-17 14:04:24 -08:00
Joe Drew 3a1ba4d188 Bug 716140 - Make animated image formats (PNG and GIF) explicitly pause decoding and ask for a new image frame when they need new frames.
--HG--
extra : rebase_source : 3a4148d8d144784075ec88668359c333420c3d4a
2013-01-28 12:27:35 -05:00
Joe Drew 13684808f2 Bug 716140 - Make mImageData and mColormap (and their sizes) protected members of mozilla::image::Decoder rather than the leaf classes.
--HG--
extra : rebase_source : d4f506a669d5b18a33676434ad0cc512216956d5
2013-01-28 12:26:36 -05:00