1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 12:07:45 +00:00
serenity/Userland/Libraries
kleines Filmröllchen 111fd1e5fe LibAudio: Optimize FlacLoader by avoiding allocations
- Pre-allocate and reuse sample decompression buffers. In many FLAC
  files, the amount of samples per frame is either constant or the
  largest frame will be hit within the first couple of frames. Also,
  during audio output, we need to move and combine the samples from the
  decompression buffers into the final output buffers anyways. Avoiding
  the reallocation of these large buffers provides an improvement from
  16x to 18x decode speed on strongly compressed but otherwise usual
  input.
- Leave a FIXME for a similar improvement that can be made in the
  residual decoder.
- Pre-allocate audio chunks if frame size is known.
- Use reasonable inline capacities in several places where we know the
  maximum or usual capacity needed.
2023-07-06 19:13:36 +01:00
..
LibArchive unzip: Add option to list files of an archive 2023-06-15 21:01:51 +01:00
LibAudio LibAudio: Optimize FlacLoader by avoiding allocations 2023-07-06 19:13:36 +01:00
LibC LibC: Convert semaphore and termcap to String 2023-07-06 10:15:37 +01:00
LibCards GamesSettings+LibCards: Get rid of DeprecatedString 2023-07-06 10:15:37 +01:00
LibChess AK: Add the Input word to input-only buffered streams 2023-05-09 11:18:46 +02:00
LibCMake LibSyntax+Libraries: Replace TextStyle with Gfx::TextAttributes 2023-03-15 14:55:49 +01:00
LibCodeComprehension LibCodeComprehension: Remove unused #include <DeprecatedFile.h> 2023-05-21 07:52:41 +02:00
LibCompress AK: Use hashing to accelerate searching a CircularBuffer 2023-07-06 15:06:20 +01:00
LibConfig Userland: Convert config listener callbacks to use StringView 2023-06-27 15:37:00 +01:00
LibCore LibCore: Make ArgParser::Arg::accept_value return ErrorOr<bool> 2023-07-04 04:26:58 +03:30
LibCoredump LibCoredump: Avoid unnecessary conversion to DeprecatedString 2023-05-27 17:30:55 +02:00
LibCpp LibDiff: Change underlying representation of Hunk to allow context 2023-07-02 11:18:11 -06:00
LibCrypt Everywhere: Resolve conflicts with LibC and libc++ 2023-06-27 12:40:38 +02:00
LibCrypto Kernel: Move Random.{h,cpp} code to Security subdirectory 2023-06-04 21:32:34 +02:00
LibDebug LibDebug: Keep track of the SetEpilogueBegin LineProgram OpCode 2023-06-27 12:40:38 +02:00
LibDesktop Everywhere: Use MonotonicTime instead of Duration 2023-05-24 23:18:07 +02:00
LibDeviceTree Everywhere: Remove unused DeprecatedString includes 2023-04-09 22:00:54 +02:00
LibDiff LibDiff: Add a forwarding header 2023-07-06 13:22:37 +02:00
LibDNS AK: Rename Stream::write_entire_buffer to Stream::write_until_depleted 2023-03-13 15:16:20 +00:00
LibDSP Everywhere: Use AK_MAKE_DEFAULT_MOVABLE to avoid mistakes 2023-06-18 08:47:51 +01:00
LibEDID Everywhere: Move global Kernel pattern code to Kernel/Library directory 2023-06-04 21:32:34 +02:00
LibELF Everywhere: Remove exceptions for using #include <LibC/...> 2023-06-27 12:40:38 +02:00
LibFileSystem LibFileSystem+Everything: Remove resolve_executable_from_environment 2023-06-06 23:46:36 +02:00
LibFileSystemAccessClient LibFSAC+Userland: Pass options for FSAC::open_file() using a struct 2023-06-11 09:40:17 +01:00
LibGemini LibCore: Make NetworkJob::start() take a Stream::BufferedSocketBase& 2023-07-03 23:29:28 +02:00
LibGfx LibGfx/JPEG: Don't return an error on empty icc profiles 2023-07-05 17:41:17 +01:00
LibGL LibGL: Implement support for the GL_RGB5_A1 internal image format 2023-05-04 16:11:28 +02:00
LibGLSL Everywhere: Use _{short_,}string to create Strings from literals 2023-02-25 20:51:49 +01:00
LibGPU LibGPU: Remove DeprecatedString usage 2023-01-30 13:49:52 -05:00
LibGUI Userland: Register MIME type/extension for .tvg 2023-07-03 23:54:51 +02:00
LibHTTP LibCore: Make NetworkJob::start() take a Stream::BufferedSocketBase& 2023-07-03 23:29:28 +02:00
LibIDL LibIDL: Avoid unnecessary copies of imported paths 2023-06-15 08:09:16 +02:00
LibImageDecoderClient LibImageDecoderClient: Fix minor const-correctness issue 2023-02-21 00:54:04 +01:00
LibIMAP Everywhere: Remove unintentional partial stream reads and writes 2023-03-13 15:16:20 +00:00
LibIPC AK: Introduce UnixDateTime 2023-05-24 23:18:07 +02:00
LibJS LibJS: Add spec comments to RawBytesToNumeric AO 2023-07-06 14:55:46 +01:00
LibKeyboard LibKeyboard: Read keymap through File, not DeprecatedFile 2023-05-12 19:46:54 +01:00
LibLine LibLine: Handle any errors propagated through refresh_display() 2023-07-03 19:07:33 +03:30
LibLocale LibTimeZone+Userland: Change timezone functions to use UnixDateTime 2023-05-24 23:18:07 +02:00
LibMain
LibManual LibManual: Compare nodes by path 2023-07-05 16:15:42 +01:00
LibMarkdown LibMarkdown: Convert render_to_terminal to String 2023-07-03 02:05:32 +02:00
LibPartition LibPartition: Migrate from DeprecatedFile to File 2023-06-05 14:50:09 +02:00
LibPCIDB AK+Everywhere: Rename String to DeprecatedString 2022-12-06 08:54:33 +01:00
LibPDF LibPDF: Fix a typo in a function name 2023-07-05 18:42:39 +01:00
LibProtocol Everywhere: Correctly report progress of downloads larger than 4GiB 2023-06-19 06:13:19 +02:00
LibRegex LibC+LibRegex: Move regex_defs.h from LibC to LibRegex 2023-06-27 12:40:38 +02:00
LibSanitizer Everywhere: Resolve conflicts with LibC and libc++ 2023-06-27 12:40:38 +02:00
LibSoftGPU LibGfx+Everywhere: Change Gfx::Rect to be endpoint exclusive 2023-05-23 12:35:42 +02:00
LibSQL Everywhere: Use AK_MAKE_DEFAULT_MOVABLE to avoid mistakes 2023-06-18 08:47:51 +01:00
LibSymbolication LibSymbolication: Use Core::File instead of Core::DeprecatedFile 2023-04-27 07:27:14 +02:00
LibSyntax LibMarkdown+LibSyntax: Add a Markdown syntax highlighter 2023-05-05 17:08:40 +01:00
LibSystem Everywhere: Resolve conflicts with LibC and libc++ 2023-06-27 12:40:38 +02:00
LibTest Everywhere: Resolve conflicts with LibC and libc++ 2023-06-27 12:40:38 +02:00
LibTextCodec LibTextCodec: Add "get output encoding" from the Encoding specification 2023-06-19 06:12:26 +02:00
LibThreading LibThreading: Do not crash when detaching from an already-exited thread 2023-05-24 16:45:25 +02:00
LibTimeZone Everywhere: Resolve conflicts with LibC and libc++ 2023-06-27 12:40:38 +02:00
LibTLS LibTLS: Remove unused methods 2023-07-03 23:29:28 +02:00
LibUnicode AK+LibUnicode: Implement String::equals_ignoring_case without allocating 2023-03-08 18:57:53 +00:00
LibUSBDB AK+Everywhere: Rename String to DeprecatedString 2022-12-06 08:54:33 +01:00
LibVideo LibVideo/PlaybackManager: Don't crash when demuxer seek throws an error 2023-06-25 20:35:37 -04:00
LibVirtGPU LibCore: Remove Stream.h 2023-02-13 00:50:07 +00:00
LibVT LibGfx+Everywhere: Change Gfx::Rect to be endpoint exclusive 2023-05-23 12:35:42 +02:00
LibWasm LibWasm: Stop passing a nonzero 'mode' to open(..., O_DIRECTORY) 2023-06-10 07:18:02 +02:00
LibWeb LibJS: Propagate OOM from GetValueFromBuffer AO 2023-07-06 14:55:46 +01:00
LibWebSocket AK+Everywhere: Change URL::path() to serialize_path() 2023-04-15 06:37:04 +02:00
LibWebView Browser+LibWebView: Load and Display ARIA Properites and State 2023-07-06 11:21:36 +01:00
LibX86 LibX86: Remove i686 support 2022-12-28 11:53:41 +01:00
LibXML LibXML: Fix parser not leaving self-closing tags 2023-06-17 06:39:21 +02:00
CMakeLists.txt LibFileSystem: Create LibFileSystem 2023-03-21 19:03:21 +00:00