pgs-parse 0.1.0

Parse Presentation Graphic Stream (SUP files)
Documentation
//! # PGS Parsing Library
//!
//! This library provides functionality for parsing PGS (Presentation Graphic Stream) subtitles,
//! commonly used in Blu-ray media. It defines various modules and components needed for reading,
//! decoding, and processing PGS files.
//!
//! ### Example Usage
//! ```rust
//! use pgs_parse::PgsParser;
//!
//! let parser = PgsParser::parse("subtitle.sup");
//! match parser {
//!     Ok(parser) => {
//!         let ds = parser.get_display_sets();
//!         // ...
//!     },
//!     Err(err) => {
//!         // ...
//!     }
//! }
//! ```

mod pgs_error;
mod pgs_decode_rle;
mod pgs_read;
mod pgs_memory_buffer;
mod pgs_const;
mod pgs_file;
mod pgs_segment_type;
mod pgs_segment_header;
mod pgs_segment;
mod pgs_pcs_segment;
mod pgs_wds_segment;
mod pgs_pds_segment;
mod pgs_ods_segment;
mod pgs_display_set;
mod pgs_reader;
mod pgs_parser;

pub use pgs_read::{
    PgsSeek,
    PgsRead
};
pub use pgs_memory_buffer::{
    BigEndian, LittleEndian, ReadBytes, ByteOrder,
    PgsMemoryBuffer
};
pub use pgs_segment_type::PgsSegmentType;
pub use pgs_file::PgsFile;
pub use pgs_segment_header::PgsSegmentHeader;
pub use pgs_segment::PgsSegment;
pub use pgs_pcs_segment::{PgsPcsSegment, PgsPcsCompositionState, PgsPcsObjectCroppedFlag};
pub use pgs_wds_segment::{
    PgsWdsSegment,
    PgsWdsSegmentWindowDefinition
};
pub use pgs_pds_segment::{
    PgsPdsSegment,
    PgsPdsSegmentPaletteEntry
};
pub use pgs_display_set::{PgsDisplaySet, PgsDisplaySetState};
pub use pgs_ods_segment::{
    PgsOdsSegment,
    PgsOdsSequenceFlag
};
pub use pgs_reader::PgsReader;
pub use pgs_parser::PgsParser;
pub use pgs_error::{
    Error, 
    Result
};