python-ebml | Pure python Matroska / EBML parser
kandi X-RAY | python-ebml Summary
kandi X-RAY | python-ebml Summary
python-ebml is a Python library. python-ebml has no bugs, it has no vulnerabilities, it has a Strong Copyleft License and it has low support. However python-ebml build file is not available. You can download it from GitHub.
An EBML file is a sequence of EBML Elements, one after another. An Element consists of a two-part header encoding the Element ID and its data size, followed by that many bytes of data. The Matroska specification defines some number of EBML IDs, which can be found in a Matroska project file called specdata.xml. Each defined ID has a human-readable name, e.g. Segment. The semantics of the data depend on the Element type. EBML defines the following primitive Element types: + Master: the data is a sequence of child Elements. + Unsigned, Signed: the data is an integer in big-endian form. + String, Unicode: the data is a string encoded in ascii or utf-8. + Float: the data is a 4-byte or 8-byte floating point number. + Date: the data is an 8-byte signed integer representing the number of nanoseconds since the Matroska epoch. + Binary: the data is opaque. The Matroska EBML Element specifications are stored in a special-purpose dictionary called MATROSKA_TAGS which is used to create Elements of the appropriate class when reading them from a stream. This module defines the following classes for reading, storing, editing, and writing the data in a Matroska file. + Header: stores and manipulates the Element header. + Container: stores child Elements. This is subclassed by ElementMaster and File. As File is not an Element (it has no header) neither is Container. + File: facilitates reading and writing Elements from a stream. + Element: base class for all EBML Elements. Immediate subclasses of Element: + ElementMaster: Inherits both Element and Container. + ElementAtomic: Base class for all kinds of Elements that actually know how to interpret their data. Subclassed by ElementUnsigned, ElementUnicode, etc. + ElementVoid: Element that ignores its data on read and writes undefined values. + ElementUnsupported: An element this module does not support. It cannot be resized or written. This module provides the Parsed descriptor, which is a convenience class that allows Master Elements to read and write the data in child Elements using attributes. For instance, the ElementInfo class has the segment_uid attribute; if info is an instance of ElementInfo then info.segment_uid reads and writes the value of its child SegmentUID. If no such child exists, reading info.segment_uid returns a default value, and setting it creates the child. This is much easier to use than, say,. The ElementSegment class takes advantage of Parsed descriptors to give easy access to the segment metadata. Classes using this facility: ElementEBML, ElementSegment, ElementSeek, ElementInfo, ElementTrackEntry, ElementVideo, ElementAudio, ElementAttachedFile, etc.
An EBML file is a sequence of EBML Elements, one after another. An Element consists of a two-part header encoding the Element ID and its data size, followed by that many bytes of data. The Matroska specification defines some number of EBML IDs, which can be found in a Matroska project file called specdata.xml. Each defined ID has a human-readable name, e.g. Segment. The semantics of the data depend on the Element type. EBML defines the following primitive Element types: + Master: the data is a sequence of child Elements. + Unsigned, Signed: the data is an integer in big-endian form. + String, Unicode: the data is a string encoded in ascii or utf-8. + Float: the data is a 4-byte or 8-byte floating point number. + Date: the data is an 8-byte signed integer representing the number of nanoseconds since the Matroska epoch. + Binary: the data is opaque. The Matroska EBML Element specifications are stored in a special-purpose dictionary called MATROSKA_TAGS which is used to create Elements of the appropriate class when reading them from a stream. This module defines the following classes for reading, storing, editing, and writing the data in a Matroska file. + Header: stores and manipulates the Element header. + Container: stores child Elements. This is subclassed by ElementMaster and File. As File is not an Element (it has no header) neither is Container. + File: facilitates reading and writing Elements from a stream. + Element: base class for all EBML Elements. Immediate subclasses of Element: + ElementMaster: Inherits both Element and Container. + ElementAtomic: Base class for all kinds of Elements that actually know how to interpret their data. Subclassed by ElementUnsigned, ElementUnicode, etc. + ElementVoid: Element that ignores its data on read and writes undefined values. + ElementUnsupported: An element this module does not support. It cannot be resized or written. This module provides the Parsed descriptor, which is a convenience class that allows Master Elements to read and write the data in child Elements using attributes. For instance, the ElementInfo class has the segment_uid attribute; if info is an instance of ElementInfo then info.segment_uid reads and writes the value of its child SegmentUID. If no such child exists, reading info.segment_uid returns a default value, and setting it creates the child. This is much easier to use than, say,. The ElementSegment class takes advantage of Parsed descriptors to give easy access to the segment metadata. Classes using this facility: ElementEBML, ElementSegment, ElementSeek, ElementInfo, ElementTrackEntry, ElementVideo, ElementAudio, ElementAttachedFile, etc.
Support
Quality
Security
License
Reuse
Support
python-ebml has a low active ecosystem.
It has 13 star(s) with 8 fork(s). There are 4 watchers for this library.
It had no major release in the last 6 months.
There are 2 open issues and 0 have been closed. On average issues are closed in 1170 days. There are 1 open pull requests and 0 closed requests.
It has a neutral sentiment in the developer community.
The latest version of python-ebml is current.
Quality
python-ebml has 0 bugs and 0 code smells.
Security
python-ebml has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
python-ebml code analysis shows 0 unresolved vulnerabilities.
There are 0 security hotspots that need review.
License
python-ebml is licensed under the GPL-3.0 License. This license is Strong Copyleft.
Strong Copyleft licenses enforce sharing, and you can use them when creating open source projects.
Reuse
python-ebml releases are not available. You will need to build from source code and install.
python-ebml has no build file. You will be need to create the build yourself to build the component from source.
Installation instructions are not available. Examples and code snippets are available.
Top functions reviewed by kandi - BETA
kandi has reviewed python-ebml and discovered the below as its top functions. This is intended to give you an instant insight into python-ebml implemented functionality, and help decide if they suit your requirements.
- Extract tags from specdata
- Read a variable integer from the stream
- Read data from a stream
- Generate an ID from a spec
- Decode a varint from a bytestring
- Read the cluster summary
- Reads clusters from stream
- Get the next element from the stream
- Return the index of the first item with the given key
- Return a string representation of the space
- Return a summary of the segment
- Create a new element with the given value
- Decode the EBML header
- Read from the given stream
- Check that the file is consistent
- Parse the seek head entry
- Return the smallest valid data size that is less than goal
- Sets the value of the tag
- Write the header to stream
- Return the size of the value that is less than the given goal
- Write the value to the given stream
- Create a new Unsupported element
- Prints a space separated space
- Set the value
- Read the summary
- Read data from the stream
- Return a summary of the chapter
Get all kandi verified functions for this library.
python-ebml Key Features
No Key Features are available at this moment for python-ebml.
python-ebml Examples and Code Snippets
No Code Snippets are available at this moment for python-ebml.
Community Discussions
No Community Discussions are available at this moment for python-ebml.Refer to stack overflow page for discussions.
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install python-ebml
You can download it from GitHub.
You can use python-ebml like any standard Python library. You will need to make sure that you have a development environment consisting of a Python distribution including header files, a compiler, pip, and git installed. Make sure that your pip, setuptools, and wheel are up to date. When using pip it is generally recommended to install packages in a virtual environment to avoid changes to the system.
You can use python-ebml like any standard Python library. You will need to make sure that you have a development environment consisting of a Python distribution including header files, a compiler, pip, and git installed. Make sure that your pip, setuptools, and wheel are up to date. When using pip it is generally recommended to install packages in a virtual environment to avoid changes to the system.
Support
For any new features, suggestions and bugs create an issue on GitHub.
If you have any questions check and ask questions on community page Stack Overflow .
Find more information at:
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page