fseq

package module
v0.2.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 6, 2020 License: MIT Imports: 1 Imported by: 0

README

go-fseq Go Report Card GoDoc

A bare-bones Go library for encoding and decoding the v1 and v2 versions of the FSEQ file format used by the Falcon Player ("fpp") software. Given the file format's outdated and rather lacking first-party documentation, much of this library has been reserve engineered from the FSEQ C++ implementation and may contain errors or not work with all files. Some third-party file format documentation is available at Cryptkeeper/fseq-file-format.

This is merely a third-party implementation of the FSEQ file format. I am not responsible for managing it as a standard.

Usage

Installation

Install using go get github.com/Cryptkeeper/go-fseq

Example Usage

See example/example.go

Tests

Tests have been provided for the uint24 and fvar types in their corresponding packages. Use go test ./... in the root directory to run the tests.

Notes

  • The v1 and v2 packages correspond to the FSEQ file format versions, not go-fseq versions.
  • Additional data structures used by the file format have been provided as structs. Their usage is left as an exercise to the reader.
  • Although the FSEQ file format is effectively maintained by the fpp project which originated it, the fpp does not use all features of the file format. As such, some fields include tags (fppignored or fppdefault) which specify that field's behavior within fpp.
  • ESEQ is a specialized subset of the FSEQ file format and is not supported by the library. Some documentation for it has been provided for it by the fpp project.
  • While FSEQ files have a .fseq file extension, they may have an identifier value of "PSEQ" (documentation reference). Older implementations may instead expect or use a "FSEQ" identifier value.

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ValidIdentifiers = [][]uint8{
	[]uint8("PSEQ"),
	[]uint8("FSEQ"),
}

Functions

func ReadVersion

func ReadVersion(b []byte) (minorVersion, majorVersion uint8)

func ValidIdentifier added in v0.2.0

func ValidIdentifier(id [4]uint8) bool

Types

This section is empty.

Directories

Path Synopsis
pkg
v1
v2

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL