Skip to content

Releases: superkabuki/threefive3

Three zero nineteen

23 Feb 21:52
e819645
Compare
Choose a tag to compare

This is a bug fix release.

  • Fixed bug with InfoSection.tier so it converts to hex from xml
  • Fixed several minor bugs with the new error aggregation stuff.
  • Fixed bug in cli tool related to stdin and JSON
  • Fixed master.m3u8 loop bug in HlsParser
  • Added HlsParser and TagParser to init.py
  • Added iso8601 timestamp function to stuff.py
  • Added new atohif function to stuff.
    • atohif parses hex, ints, and floats from strings and converts them to real values
    • ascii to hex|int|float
    • pronounced "a to hif"

Full Changelog: v3.0.17...v3.0.19

chicks dig threefive3

jordache jeans

Three oh seventeen

21 Feb 01:01
e6c6a9d
Compare
Choose a tag to compare

threefive3 SCTE-35 tool

Release v3.0.17

  • Big 40% Speed Up for Python3 parsing SCTE-35 from MPEGTS streams
  • PMT table parsing tuned up.
  • Stream.show() now correctly displays programs with PMTs split over multiple packets
  • Big Speed Up for Stream.show()
  • untangled circular m3ufu dependencies
  • Added hls_tags.py for hls SCTE-35 tag parsing
  • Fixed rendition selection when parsing hls for SCTE-35
  • non-fatal SCTE-35 errors now reported in json
  • cleaned up UPID deprecation messages.
  • bunch of other cool stuff.
  • lines of code 3644
  • Cyclomatic complexity: A (2.0280898876404496)

8b07384dffca7cc2afc33589a7921429

Full Changelog: v3.0.5...v3.0.17

Three oh five

19 Dec 20:11
9b345cf
Compare
Choose a tag to compare

image

  • SuperXmlParser has been rewritten and Optimized

  • Added xml2cue

  • Tuned up sixfix

  • Tuned up hls

  • Added iframes to the cli

  • Average cyclomatic complexity: A (2.0733197556008145)

Full Changelog: /~https://github.com/superkabuki/scte35/compare/v3.0.3...v3.0.5

Three oh three

15 Dec 09:41
799b6f2
Compare
Choose a tag to compare
  • Added Super Advanced Error Detection Stuff ( SAEDS)
  • Removed decode() and load() calls for Cue class
  • The Stream class now parses 1316 bytes at a time to stay in sync with mcast and unicast UDP
  • Pulled in new_reader and iframes modules to reduce external deps.
  • Average cyclomatic complexity score: A (2.094650205761317)

Zero zero seventeen

10 Dec 07:20
254eb5d
Compare
Choose a tag to compare
  • Cue.decode() now called when you instantiate an instance of cue and pass in data
  • data can be base64, bytes,dict ,hex, int,json,xml, or xmlbin
Python 3.9.16 (7.3.11+dfsg-2+deb12u2, May 20 2024, 22:08:06)
[PyPy 7.3.11 with GCC 12.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>> from scte35 import Cue
>>>> data = '/DAgAAAAAAAAAP/wDwUAAAABf0/+AKTLgAABAAAAAKENyC4='
>>>> cue=Cue(data)
>>>> cue.show()
{
    "info_section": {
        "table_id": "0xfc",
        "section_syntax_indicator": false,
        "private": false,
        "sap_type": "0x03",
        "sap_details": "No Sap Type",
        "section_length": 32,
        "protocol_version": 0,
        "encrypted_packet": false,
        "encryption_algorithm": 0,
        "pts_adjustment": 0.0,
        "cw_index": "0x00",
        "tier": "0x0fff",
        "splice_command_length": 15,
        "splice_command_type": 5,
        "descriptor_loop_length": 0,
        "crc": "0xa10dc82e"
    },
    "command": {
        "command_length": 15,
        "command_type": 5,
        "name": "Splice Insert",
        "time_specified_flag": true,
        "pts_time": 120.0,
        "splice_event_id": 1,
        "splice_event_cancel_indicator": false,
        "out_of_network_indicator": false,
        "program_splice_flag": true,
        "duration_flag": false,
        "splice_immediate_flag": false,
        "event_id_compliance_flag": true,
        "unique_program_id": 1,
        "avail_num": 0,
        "avails_expected": 0
    },
    "descriptors": []
}
>>>> 

Full Changelog: /~https://github.com/superkabuki/scte35/compare/v0.0.15...v0.0.17

v0.0.15

09 Dec 07:51
034f757
Compare
Choose a tag to compare

December 9th 2024

  • Clean up on stream.py, segment.py, and hls.py
  • Removed over 1,000 lines of code from the threefive code base.
  • Cyclomatic complexity score: 2.1419355
  • Added Private Command parsing for SuperXmlParser()
  • Added removing the hls keyword from sys.argv in the cli

Full Changelog: /~https://github.com/superkabuki/scte35/compare/v0.0.13...v0.0.15

v0.0.13

07 Dec 22:48
d0fcd73
Compare
Choose a tag to compare
v0.0.13 Pre-release
Pre-release
  • Added iframes times to cli
  • Added hls to cli
  • cli parses mpegts, base64, hex, int, json, xml, and xmlbin
  • cli can output mpegts, base64, bytes, hex, int, json, xml, and xmlbin
  • cli file protocols: file, stdin, http(s), multicast and unicast udp
  • Cue class encoding methods are base64(), bytes(),hex(),int(), xml(), and xmlbin()
  • Stream class decode() now parses 1316 bytes by default to match udp datagrams.
  • XmlParser has been replaced by SuperXmlParser
  • SuperXmlParser eliminates from_xml() methods from all Splice Commands, Splice Descritptors, Upids, and Splice Info Section.
  • full xml support for namespaces on elements and attributes.

Full Changelog: /~https://github.com/superkabuki/scte35/commits/v0.0.13