Hi Itsmeks,
I hope there isn't late ;-)
Here is a simple instruction.
1. Parse the PMT table and get closed caption PID (its stream type should be 0x06 according to ARIB spec.)
2. Listen this PID and get closed caption data. Please use PES listener. The closed caption data comes in PES stream (not section)
3. Start parsing the closed caption as follows (please refer to ARIB spec. B24_r40_Vol1_P3.pdf)
a. Parse the data_group() structure, optionally check CRC
b. If data_group_id is 0x1, 0x20, 0x21, or 0x22, parse the caption_management_data structure
i. Parse the data_unit structure, get data_unit_parameter etc.
ii. If data_unit_parameter is 0x20, parse caption_data() structure, also known as caption statement data
1. Parse the data_unit structure, the data byte followed is statement body if data_unit_parameter is 0x20, or 1-byte DRCS if the data_unit_parameter is 0x30.
iii. Or if data_unit_parameter is 0x30, parse 1-byte DRCS
You need to parse the statement body and DRCS accordingly. DRCS is 1-pixel bitmap (as I know). The statement body data can be converted to font pixel information by some way.
Yours,
Lin
You are welcome. Thanks a lot for joining us. I'm glad to answer any
question that I know :-)
|
Display Area |
Font Size |
Horizontal Spacing |
Vertical Spacing |
Number of Chars/Lines |
Number of chars/line(As per Spec ) |
|
800X472 |
36 |
4 |
2 |
800/(36+4)
= 20
/ |
20,12 |
|
800X470 |
30 |
6 |
6 |
800/(30+6)
= 22.2
/ |
20,12 |
|
600X390 |
24 |
6 |
6 |
600/(24+6)
= 20
/ |
20,12 |
|
600X390 |
24 |
10 |
10 |
600/(20+10)
= 20
/ |
20,12 |
|
500X340 |
16 |
9 |
9 |
500/(16+9)
= 20 / |
20,12 |
--
You received this message because you are subscribed to the Google Groups "BIT Everest" group.
To unsubscribe from this group and stop receiving emails from it, send an email to biteverest+...@googlegroups.com.
To post to this group, send email to bitev...@googlegroups.com.
Visit this group at http://groups.google.com/group/biteverest.
For more options, visit https://groups.google.com/d/optout.