use dvb_cc::decode::Cea708Decoder;
fn main() {
let mut dec = Cea708Decoder::new();
let block: &[u8] = &[
0x98, 0x20, 0x00, 0x00, 0x01, 0x0F, 0x00, b'H', b'I', b' ', b'T', b'H', b'E', b'R', b'E',
];
let mut sb: Vec<u8> = Vec::new();
sb.push((1 << 5) | (block.len() as u8));
sb.extend_from_slice(block);
let size_code = (sb.len().div_ceil(2) + 1) as u8;
let mut ccp: Vec<u8> = Vec::new();
ccp.push(size_code & 0x3F);
ccp.extend_from_slice(&sb);
dec.push_packet(&ccp);
println!("Service 1 text : {:?}", dec.service_text(1));
if let Some(w) = dec.windows(1)[0].as_ref() {
println!("Window 0 state : {}", w.state);
println!("Window 0 rows : {}", w.row_count);
println!("Window 0 cols : {}", w.column_count);
println!("Window 0 text : {:?}", w.text());
}
}