Commit Graph
48 Commits
Author SHA1 Message Date
morris befd406f90 Merge branch 'fix/jpeg_enc_encrypt_v5.5' into 'release/v5.5'
fix(jpeg): Jpeg can encode and decode in encryption situation (backport v5.5)

See merge request espressif/esp-idf!50670
2026-07-24 16:59:56 +08:00
morris 4196c7ae5c fix(jpeg): release platform mutex on semaphore/pm-lock allocation failure
jpeg_acquire_codec_handle acquires s_jpeg_platform.mutex at entry
but two ESP_RETURN_ON_* macros (semaphore-create and PM-lock-create
failure) return without releasing it. Replace with ESP_GOTO_ON_*
that jumps to a cleanup label which frees partial resources, NULLs
the codec pointer, and releases the mutex.
2026-07-23 15:09:55 +08:00
C.S.M 0bcccf3206 fix(jpeg): JPEG can encode and decode in encryption situation 2026-07-22 19:46:38 +08:00
morris da4a2024f2 feat(jpeg): simplify decoder example and add pytest coverage 2026-07-22 18:35:12 +08:00
morris 16ceaa002b Merge branch 'bugfix/dma2d_dequeue_mechanism_v5.5' into 'release/v5.5'
fix(dma2d): add a dequeue mechanism for dma2d driver (v5.5)

See merge request espressif/esp-idf!50515
2026-07-18 15:55:39 +08:00
morris 78d6b6342e Merge branch 'refactor/jpeg_encoder_example_v5.5' into 'release/v5.5'
fix(jpeg): broken link in the example readme (v5.5)

See merge request espressif/esp-idf!50141
2026-07-16 17:45:49 +08:00
Song Ruo Jing 74a6f9d1f5 fix(dma2d): add a dequeue mechanism for dma2d driver
JPEG driver should be able to either dequeue a pending transaction from
a 2D-DMA pool or force end a processing transaction.
2026-07-08 21:15:56 +08:00
morris 494135ddeb doc(jpeg): fix broken link in the example readme 2026-06-30 13:53:12 +08:00
C.S.M 3ed64d5c26 fix(jpeg): Fix the jpeg size might exceed the buffer size 2026-06-26 11:05:25 +08:00
C.S.M 82c5c2dad4 fix(jpeg_decoder): Add some strict check to avoid bad picture attack 2026-06-04 11:43:26 +08:00
Song Ruo Jing d15a897d13 feat(dma2d,ppa): Support flash encryption for DMA2D and PPA 2026-04-13 15:03:37 +08:00
C.S.M 79f81dfa0d feat(jpeg): Fix some potential encoder issues
esp_driver_jpeg allocates inadequate DMA memory size for descriptor in jpeg_encode.c

Closes https://github.com/espressif/esp-idf/issues/18296

Potential integer underflow and uninitialized pointer dereference in jpeg_encode.c

Closes https://github.com/espressif/esp-idf/issues/18297

Invalid DMA2D block RW mode configuration for 1D direction in jpeg_encode.c

Closes https://github.com/espressif/esp-idf/issues/18298
2026-03-10 11:06:04 +08:00
C.S.M 7802bf4703 feat(jpeg): Add config for reversing input pixel format in jpeg encoder
Also add format check on both encoder and decoder

Closes https://github.com/espressif/esp-idf/issues/18262
2026-03-09 13:42:20 +08:00
C.S.M 1a3e2da856 fix(jpeg): Fix jpeg color space check 2025-12-17 14:29:38 +08:00
C.S.M 38a0beb659 feat(jpeg_decoder): Add decode to yuv420 since esp32p4 version3 2025-12-16 13:48:59 +08:00
C.S.M 80c1fc8676 fix(jpeg): Fix check in com marker 2025-12-16 12:11:40 +08:00
C.S.M 4b8f5859db fix(jpeg): Add check for jpeg marker parser in order to enhance safety 2025-10-23 14:44:08 +08:00
C.S.M e515483db0 feat(jpeg_encoder): Add yuv444 and yuv420 jpeg encoder format on esp32p4 eco5 2025-10-23 14:29:33 +08:00
C.S.M fc77b58ced bugfix(jpeg): eliminate random black line on jpeg decoder 2025-06-16 14:19:51 +08:00
C.S.M 770052e859 fix(jpeg): Fix wrong parameter in jpeg encoder msync 2025-06-16 14:19:39 +08:00
C.S.M f9469f4e81 fix(jpeg): use dma2d empty rx desc event to avoid a stuck 2025-03-13 11:37:44 +08:00
Peter Marcisovsky 430bb9dc2c Merge branch 'fix/jpeg_driver_handle_invalid_marker' into 'master'
fix(jpeg_decoder): Correctly handle invalid 0xffff JPEG marker

Closes IDF-12204

See merge request espressif/esp-idf!36764
2025-03-07 17:21:54 +08:00
peter.marcisovsky f9d55c1fb2 fix(jpeg_decoder): Correctly handle invalid 0xffff JPEG marker 2025-03-06 19:44:52 +08:00
peter.marcisovsky 146c1d72c0 feat(jpeg_decode): Add support for default Huffman tables
- In case of a missing Huffman table, while decoding a JPEG image
    - Define a default Huff table and add it to JPEG image header
2025-03-05 13:03:05 +01:00
igor.udot daf2d31008 test: format all test scripts 2025-03-05 12:08:48 +08:00
peter.marcisovsky b900a50132 feat(jpeg_decoder): Correctly set JPEG restart interval 2025-02-27 14:47:12 +01:00
morris 13d0e83cd6 fix(driver): issues reported by coverity 2024-11-27 09:57:37 +08:00
C.S.M 0125e70797 fix(jpeg_decoder): Fix jpeg decoder get picture information 2024-11-19 11:46:55 +08:00
C.S.M f54ec30f6a fix(jpeg): Fix the length of com marker 2024-10-31 15:16:44 +08:00
morris dd46392a66 feat(ci): check LL functions not read write register by half word 2024-06-18 14:58:41 +08:00
C.S.M a20d865bf5 bugfix(jpeg): Fix that jpeg driver does not distinguish err handle mode 2024-05-31 14:03:09 +08:00
Frantisek Hrbata fbe8bf89ee fix: properly resolve component dependencies
There is currently a bug in the __build_resolve_and_add_req function in
tools/cmake/build.cmake where the check for registered component
requirements is incorrectly applied to the component itself rather than
its dependencies. This issue likely originated from a typo, using
component_target instead of _component_target. To prevent further
confusion, _component_target has been renamed to _req_target.

Fixing this revealed multiple incorrect dependencies for the Linux
target, which have now been resolved by explicitly specifying the
dependencies for the Linux target.

Closes https://github.com/espressif/esp-idf/issues/13447

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2024-05-30 22:01:55 +08:00
C.S.M c620a2fa39 fix(jpeg): Modify jpeg deocde/encode error handling logic, fix if one picture wrong, all picture wrong issue 2024-05-28 16:24:40 +08:00
Cao Sen Miao 7f97a9e524 fix(jpeg): Fix several issues reported recently,
1. Fix decode images with dri marker failed,
2. Fix encode sometimes get length error
2024-04-28 15:16:48 +08:00
Cao Sen Miao 282f3869c8 fix(jpeg): Fix issue that jpeg encoder does not end with 0xffd9 2024-04-18 12:39:09 +08:00
Cao Sen Miao 876a3697ec feat(jpeg): Support jpeg decoder yuv format 2024-04-18 10:40:48 +08:00
Armando d341540a5e change(drivers): other driver changes for cache malloc 2024-04-15 15:34:51 +08:00
Cao Sen Miao 2f7cd31279 fix(jpeg): Fix issue that jpeg acquire return NULL when acquire twice 2024-04-11 12:03:16 +08:00
Cao Sen Miao ca23d58cf3 change(jpeg): Clean up some mess code in jpeg encoder 2024-04-09 11:33:29 +08:00
gaoxu 40f38bea6f feat(dma): refactor dma calloc function 2024-04-02 14:30:14 +08:00
Cao Sen Miao 58acf93da2 test(jpeg_encoder): Add the test support for jpeg encoder 2024-04-01 20:03:35 +08:00
Cao Sen Miao 22ec65adef feat(jpeg_encoder): Add the basic support for jpeg encoder 2024-04-01 20:03:31 +08:00
morris c0289ee6eb fix(drivers): fix typos found by codespell
codespell components/esp_driver*
2024-03-28 10:01:27 +08:00
Cao Sen Miao ba6a0d59b0 fix(jpeg_decoder): Improve apis for better align strategy and provide buffer size parameter 2024-03-18 18:32:22 +08:00
Cao Sen Miao 4881a2aca0 fix(jpeg): Fix memory leak on jpeg decoder 2024-03-12 14:45:55 +08:00
Cao Sen Miao d11030ade6 docs(jpeg): Add basic programming guide for jpeg decoder 2024-02-29 17:20:09 +08:00
Cao Sen Miao 518c7f5b14 test(jpeg): Add basic test_app for jpeg_decoder 2024-02-29 13:51:21 +08:00
Cao Sen Miao abc2971d95 feat(jpeg): Add basic jpeg decoder support on esp32p4 2024-02-29 13:51:16 +08:00