For a library for decoding byte streams, the strongest matches are protocolbuffers/protobuf (Protocol Buffers is a language-neutral library that decodes efficient), msgpack/msgpack (MessagePack is a binary serialization library that decodes binary) and google/protobuf (Protocol Buffers is a mature, cross-language binary serialization framework). ffmpeg/ffmpeg and protobufjs/protobuf.js round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.
Finde die besten Byte-Stream-Decoder für dein Projekt. Wir haben die besten Open-Source-Bibliotheken nach Aktivität und Features sortiert, damit du die richtige Wahl triffst.
Protocol Buffers is a language-neutral, platform-agnostic mechanism for serializing structured data. It provides a schema-driven toolchain that compiles declarative data definitions into type-safe source code, enabling consistent communication and strongly typed API contracts across services written in different programming languages. The project distinguishes itself through a highly efficient binary wire format that utilizes tag-based encoding and variable-width integer compression to minimize payload size and processing overhead. It supports robust evolutionary schema management, allowing d
Protocol Buffers is a language-neutral library that decodes efficient binary streams into structured data using a schema-driven toolchain, covering serialization, high performance, language bindings, and evolutionary schema resilience, which aligns with the need for a binary stream decoder.
MessagePack is a binary object serialization library and a cross-platform data exchange format. It serves as a binary alternative to JSON, converting structured data into a space-efficient binary representation for network transmission and storage. The system provides a standardized format for swapping complex data types across different programming languages and architectures. It allows for the definition of custom data type encoding by pairing application-specific information with specialized serialization markers. The library handles the encoding and decoding of diverse data types, includ
MessagePack is a binary serialization library that decodes binary streams into structured data, making it a direct fit for this search; however, it focuses on its own single format rather than supporting multiple binary formats like Protobuf or BSON.
Protocol Buffers is a binary serialization framework used to encode structured information into compact payloads to reduce network bandwidth and storage. It functions as a cross-language data interchange standard that enables different platforms and languages to exchange structured data using a shared schema. The project includes an interface definition language compiler that transforms schema definitions into type-safe source code for multiple target programming languages. This mechanism decouples data structures from specific language memory layouts and ensures consistent data handling acro
Protocol Buffers is a mature, cross-language binary serialization framework that efficiently encodes and decodes structured data from compact byte streams, directly matching the need for a binary stream decoder library with high performance and extensive language bindings.
FFmpeg is a cross-platform multimedia framework designed for the recording, conversion, and streaming of audio and video content. It functions as a comprehensive toolkit that provides both a command-line utility for direct media manipulation and a collection of low-level libraries for integration into custom applications. At its core, the project utilizes a packet-based stream engine and a format-agnostic abstraction layer to handle diverse media standards, containers, and network protocols. The framework distinguishes itself through a modular, graph-based filter execution model that allows f
FFmpeg is a comprehensive multimedia framework built around low-level libraries (libavcodec, libavformat) that decode binary streams into structured media data, supporting a vast number of formats, streaming, high performance, and language bindings, making it an excellent fit for decoding binary byte streams.
protobuf.js is a JavaScript and TypeScript library for encoding and decoding structured data using the Protocol Buffers binary format. It functions as a dynamic parser that can load and process schemas at runtime, a JSON transcoder for converting messages to human-readable formats, and a framework for building transport-agnostic remote procedure call clients. The project distinguishes itself by offering both dynamic message handling and a static code generator that produces TypeScript declarations and JavaScript modules to reduce runtime overhead. It also provides a reflection API for definin
protobuf.js is a JavaScript library that decodes and encodes Protocol Buffers binary streams, making it a precise fit for your search for a binary stream decoder library, though it focuses on a single format rather than multi-format support.
This library is a header-only C++ framework designed for the serialization, parsing, and manipulation of structured data. It provides a recursive variant data model that represents arbitrary structures as native types, allowing developers to navigate, modify, and patch hierarchical data using standard pointer paths and declarative update patterns. The project distinguishes itself through its template-based architecture, which enables type-safe data structures and custom type mapping at compile time. It offers a unified interface for binary format abstraction, supporting multiple compact repre
nlohmann/json is a high-performance C++ library for parsing and serializing structured data in multiple formats including JSON, CBOR, MessagePack, and BSON, directly matching your need for a binary stream decoder library with broad format support and streaming capabilities, though it is C++-specific without official bindings to other languages.
Kryo is a Java binary serialization framework and object cloning library used to convert Java objects into a compact binary format and restore them from bytes. It provides a system for creating deep or shallow copies of complex object graphs without requiring binary conversion. The project utilizes variable-length integer encoding and integer-ID class registration to reduce the size of serialized data. It handles complex object graphs through circular reference tracking to prevent data duplication and infinite loops. To maintain long-term data viability, it includes schema evolution managemen
Kryo is a Java binary serialization and deserialization library that converts objects to and from compact binary streams, directly fitting the need for a tool that decodes byte streams into structured data; it offers high performance and error resilience via schema evolution, but focuses on a single binary format and Java only, which narrows its multi-format and language-binding coverage.
ArduinoJson is a C++ library for parsing and manipulating JSON data and MessagePack binary streams on microcontrollers with limited memory and processing power. It provides the core primitives necessary for embedded data serialization and parsing, enabling devices to exchange structured data over serial or network interfaces. The library is distinguished by its focus on microcontroller memory management, employing strategies such as pool-based allocation, string deduplication, and non-owning string views to minimize RAM usage. It further optimizes for constrained environments by allowing cons
ArduinoJson decodes JSON and the binary MessagePack format on microcontrollers, making it a capable binary stream decoder library for embedded use—though its narrow format support and C++-only binding mean it's not a general-purpose multi-format solution.
FlatBuffers is a cross-platform serialization library designed for performance-critical applications that require efficient, zero-copy data access. By organizing data in a structured binary format, it allows applications to read and write complex data structures directly from memory-mapped buffers without the need for intermediate parsing or temporary object allocation. The project distinguishes itself through a schema-driven approach that balances high-performance access with long-term data evolution. It utilizes a unique memory layout featuring relative offsets and inline fixed-size structu
FlatBuffers is a schema-driven serialization library with zero-copy binary decoding and broad language support, fitting your need for a binary stream decoder—though it focuses on its own format rather than multi-format or streaming decoding.
This project is a collection of portable, header-only C functions designed for integration into software projects without complex build dependencies or external linking requirements. It provides a suite of low-level utilities for graphics, audio, and data management, focusing on direct memory manipulation and zero-dependency portability. By utilizing a single-header distribution model, the library simplifies dependency management while allowing developers to maintain full control over memory allocation and binary size through compile-time configuration. The library distinguishes itself by off
stb is a collection of header-only C libraries that decode specific binary file formats (images, audio, fonts) into usable data, so it fits the intent of decoding binary streams for file formats, but it is not a unified general-purpose decoder library and lacks streaming and multi-language support.
This project is a portable document rendering engine designed to parse and display complex document layouts directly within standard web browser environments. It functions as a web-native viewer that enables the presentation of documents without requiring external software or browser plugins. The engine utilizes a canvas-based rendering layer to map document page data onto standard web drawing surfaces, ensuring high-fidelity visual output. To maintain interface responsiveness, it offloads heavy parsing and object extraction tasks to background threads. The system also employs asynchronous by
pdf.js is a web-native PDF rendering library that decodes binary PDF streams into structured document objects, making it a solid match for binary decoder needs—though it focuses solely on the PDF format rather than supporting multiple serialization formats.
nom is a Rust parser combinator framework used to build complex parsers for binary and text data. It functions as an abstract syntax tree generator and a bit-level binary parser, allowing users to construct structured data by combining small, reusable parsing functions. The framework provides specialized support for zero-copy binary parsing, extracting data as slices from raw byte arrays to avoid memory allocations. It also includes a streaming data parser capable of processing partial input chunks from networks or files and signaling when additional input is required. The project covers a b
nom is a Rust parser combinator framework for building parsers that decode binary and text streams into structured data, supporting streaming input, zero-copy parsing, and error resilience — exactly the kind of library this search targets, though it is Rust-specific only.
http-parser is a C-based library for extracting request and response metadata from raw HTTP data streams. It utilizes a state-machine approach to identify message segments and boundaries. The project implements zero-copy string parsing and pointer-based URL deconstruction to avoid memory allocations and data duplication. It supports incremental stream processing to handle fragmented data chunks and includes mechanisms for decoding chunked encoding and managing network protocol upgrades.
http-parser is a C library that decodes raw HTTP byte streams into structured metadata with streaming and zero-copy support, making it a precise fit for the "binary stream decoder library" category, though it is limited to HTTP rather than covering multiple formats.
Pako is a pure JavaScript compression library that ports the C zlib library to JavaScript, providing deflate and gzip compression and decompression capabilities. It runs in both browser and Node.js environments by using typed arrays and universal JavaScript, avoiding platform-specific APIs for cross-platform compatibility. The library handles data through bitwise operations for Huffman coding and LZ77 matching, and automatically encodes string inputs to UTF-8 before compression while decoding them back on decompression. It supports streaming chunk-based processing, allowing incremental data h
Pako is a JavaScript port of zlib that decodes deflate and gzip compressed byte streams with streaming support, making it a binary stream decoder library—just one focused on compression rather than general multi-format or serialization needs.
Nanopb is a lightweight C implementation of Protocol Buffers designed for resource-constrained systems and microcontrollers. It functions as both an embedded serialization library for encoding and decoding structured data and a code generator that transforms definition files into compact C source and header files. The project is distinguished by its focus on static memory allocation, using fixed maximum sizes for strings and arrays to avoid dynamic memory allocation and heap fragmentation. It employs a callback-based streaming mechanism to process messages or fields that exceed available phys
nanopb is a lightweight C library that decodes Protocol Buffers binary streams into structured data with callback-based streaming and static memory allocation, fitting the search for a binary stream decoder library despite being limited to a single format and C bindings.
| Repository | Stars | Sprache | Lizenz | Letzter Push |
|---|---|---|---|---|
| protocolbuffers/protobuf | 71.4K | C++ | NOASSERTION | |
| msgpack/msgpack | 7.5K | — | — | |
| google/protobuf | 71.4K | C++ | NOASSERTION | |
| ffmpeg/ffmpeg | 61.2K | C | NOASSERTION | |
| protobufjs/protobuf.js | 10.6K | JavaScript | NOASSERTION | |
| nlohmann/json | 49.9K | C++ | MIT | |
| esotericsoftware/kryo | 6.5K | HTML | BSD-3-Clause | |
| bblanchon/arduinojson | 7.2K | C++ | MIT | |
| google/flatbuffers | 25.6K | C++ | apache-2.0 | |
| nothings/stb | 34K | C | NOASSERTION |