1
0
Fork 0
mirror of https://github.com/warmcat/libwebsockets.git synced 2025-03-30 00:00:16 +01:00
libwebsockets/lib
Andy Green 1d3ec6a3a1 lws-jpeg
Introduce a rewritten picojpeg that is able to operate statefully and
rasterize into an internal line ringbuffer, emitting a line of pixels
at a time to the caller.  This is the JPEG equivalent of the lws
PNG decoder.

JPEG is based around 8- or 16- line height MCU blocks, depending on
the chroma coding, mandating a corresponding internal line buffer
requirement.

Example total heap requirement for various kinds of 600px width jpeg
decoding:

  Grayscale:    6.5KB
  RGB 4:4:4:   16.4KB
  RGB 4:2:2v:  16.4KB
  RGB 4:4:2h:  31KB
  RGB 4:4:0:   31KB

No other allocations occur during decode.

Stateful stream parsing means decode can be paused for lack of input
at any time and resumed seamlessly when more input becomes available.
2022-03-25 08:13:48 +00:00
..
core upng: split out gzip 2022-03-25 08:13:48 +00:00
core-net route: extend lws_route_uidx_t from 1 byte to 2 bytes 2022-03-15 10:28:09 +00:00
cose coverity: 2021-12-1 uplevel fixes 2022-03-15 10:28:09 +00:00
drivers esp32: update against Dec 21 idf 2021-12-23 06:20:27 +00:00
event-libs sspc: refactor to allow different transports 2021-10-08 09:48:41 +01:00
jose cose: keys and signing + validation 2021-08-31 05:45:35 +01:00
misc lws-jpeg 2022-03-25 08:13:48 +00:00
plat coverity: 2021-12-1 uplevel fixes 2022-03-15 10:28:09 +00:00
roles alloc: compressed backtrace instrumentation support 2022-03-15 10:28:09 +00:00
secure-streams ss: support VFS via file:// 2022-03-15 10:28:09 +00:00
system adns: bump DNS_MAX to 128 2022-03-15 10:28:09 +00:00
tls mbedtls: v3.1 reverts privacy of mbedtls_net_context fd 2022-03-15 10:28:09 +00:00
CMakeLists.txt pkgconfig: use appropriate static lib name 2022-03-15 10:28:09 +00:00
README.md cleaning 2020-01-05 22:17:58 +00:00

Library sources layout

Code that goes in the libwebsockets library itself lives down ./lib

Path Sources
lib/core Core lws code related to generic fd and wsi servicing and management
lib/core-net Core lws code that applies only if networking enabled
lib/event-libs Code containing optional event-lib specific adaptations
lib/jose JOSE / JWS / JWK / JWE implementations
lib/misc Code for various mostly optional miscellaneous features
lib/plat Platform-specific adaptation code
lib/roles Code for specific optional wsi roles, eg, http/1, h2, ws, raw, etc
lib/system Code for system-level features, eg, dhcpclient
lib/tls Code supporting the various TLS libraries