|
libclosedcaption 1.0.3
Extração de closed caption ISDB-Tb/SBTVD de arquivos MPEG-TS
|
Leitura do "caption management data" e do "caption statement data" (ARIB STD-B24, Volume 3, 9.3). Mais...


Ir para o código-fonte desse arquivo.
Estruturas de Dados | |
| struct | CaptionManagement_t |
| struct | CaptionManagement_t::statement |
Definições e Macros | |
TMD: modo de tempo (ARIB STD-B24, Tabela 9-4, valores binários 00 a 11) | |
| #define | MANAGEMENT_TMD_FREE 0x00 |
| #define | MANAGEMENT_TMD_REALTIME 0x01 |
| #define | MANAGEMENT_TMD_OFFSET 0x02 |
| #define | MANAGEMENT_TMD_RESERVED 0x03 |
TCS: codificação dos caracteres (ARIB STD-B24, Tabela 9-8) | |
| #define | MANAGEMENT_TCS_8BIT 0x00 |
| #define | MANAGEMENT_TCS_UCS 0x01 |
Modo roll-up (ARIB STD-B24, Tabela 9-9) | |
| #define | MANAGEMENT_ROLL_NONE 0x00 |
| #define | MANAGEMENT_ROLL_UP 0x01 |
data_unit_parameter: tipo de cada data unit (ARIB STD-B24, Tabela 9-12) | |
| #define | _CAPTION_HANDLER_STATEMENT_BODY 0x20 |
| #define | _CAPTION_HANDLER_GEOMETRIC 0x28 |
| #define | _CAPTION_HANDLER_SYNTHESIZED_SOUND 0x2c |
| #define | _CAPTION_HANDLER_1BYTE_DRCS 0x30 |
| #define | _CAPTION_HANDLER_2BYTE_DRCS 0x31 |
| #define | _CAPTION_HANDLER_COLOR_MAP 0x34 |
| #define | _CAPTION_HANDLER_BITMAP 0x35 |
Definições de Tipos | |
| typedef struct CaptionManagement_t | CaptionManagement_t |
Enumerações | |
| enum | CaptionManagementType_t { CAPTION_HANDLER_TYPE_UNKNOWN = 0 , CAPTION_HANDLER_TYPE_STATEMENT_BODY = 1 , CAPTION_HANDLER_TYPE_GEOMETRIC = 2 , CAPTION_HANDLER_TYPE_SYNTHESIZED_SOUND = 3 , CAPTION_HANDLER_TYPE_1BYTE_DRCS = 4 , CAPTION_HANDLER_TYPE_2BYTE_DRCS = 5 , CAPTION_HANDLER_TYPE_COLOR_MAP = 6 , CAPTION_HANDLER_TYPE_BITMAP = 7 , CAPTION_HANDLER_TYPE_MANAGEMENT = 8 , CAPTION_HANDLER_TYPE_MAX = 9 } |
Funções | |
| bool | caption_management_load (const CaptionData_t *caption, CaptionManagement_t *management) |
| bool | caption_management_load_unit (const CaptionData_t *caption, unsigned index, CaptionManagement_t *mgmt) |
| CaptionManagementType_t | caption_management_get_type (const CaptionManagement_t *management) |
Leitura do "caption management data" e do "caption statement data" (ARIB STD-B24, Volume 3, 9.3).
O conteúdo do data_group (veja caption-data.h) depende do data_group_id:
data_group_id 0x00 ou 0x20): modo de tempo (TMD), idiomas disponíveis, formato de exibição, codificação dos caracteres (TCS) e modo roll-up;statement body), DRCS, bitmaps, etc.caption_management_load() lê os dois formatos para a mesma estrutura, CaptionManagement_t, e caption_management_get_type() informa o que foi lido.
Definição no arquivo caption-management.h.
| #define MANAGEMENT_TMD_FREE 0x00 |
Exibição livre, sem sincronismo de tempo.
Definição na linha 32 do arquivo caption-management.h.
| #define MANAGEMENT_TMD_REALTIME 0x01 |
Tempo real: o statement data traz o STM.
Definição na linha 33 do arquivo caption-management.h.
| #define MANAGEMENT_TMD_OFFSET 0x02 |
Tempo com offset: management traz o OTM, statement traz o STM.
Definição na linha 34 do arquivo caption-management.h.
| #define MANAGEMENT_TMD_RESERVED 0x03 |
Reservado.
Definição na linha 35 do arquivo caption-management.h.
| #define MANAGEMENT_TCS_8BIT 0x00 |
Código de 8 bits (ISO-8859-15 no Brasil).
Definição na linha 42 do arquivo caption-management.h.
| #define MANAGEMENT_TCS_UCS 0x01 |
UCS (Unicode). Não suportado.
Definição na linha 43 do arquivo caption-management.h.
| #define MANAGEMENT_ROLL_NONE 0x00 |
Sem roll-up.
Definição na linha 50 do arquivo caption-management.h.
| #define MANAGEMENT_ROLL_UP 0x01 |
Com roll-up.
Definição na linha 51 do arquivo caption-management.h.
| #define _CAPTION_HANDLER_STATEMENT_BODY 0x20 |
Texto da legenda.
Definição na linha 58 do arquivo caption-management.h.
| #define _CAPTION_HANDLER_GEOMETRIC 0x28 |
Gráficos geométricos.
Definição na linha 59 do arquivo caption-management.h.
| #define _CAPTION_HANDLER_SYNTHESIZED_SOUND 0x2c |
Som sintetizado.
Definição na linha 60 do arquivo caption-management.h.
| #define _CAPTION_HANDLER_1BYTE_DRCS 0x30 |
DRCS de 1 byte (caracteres desenhados pela emissora).
Definição na linha 61 do arquivo caption-management.h.
| #define _CAPTION_HANDLER_2BYTE_DRCS 0x31 |
DRCS de 2 bytes.
Definição na linha 62 do arquivo caption-management.h.
| #define _CAPTION_HANDLER_COLOR_MAP 0x34 |
Mapa de cores.
Definição na linha 63 do arquivo caption-management.h.
| #define _CAPTION_HANDLER_BITMAP 0x35 |
Bitmap.
Definição na linha 64 do arquivo caption-management.h.
| typedef struct CaptionManagement_t CaptionManagement_t |
Conteúdo do "caption management data" ou do "caption statement data" (ARIB STD-B24, Volume 3, 9.3.1 e 9.3.2).
Tipo de conteúdo lido por caption_management_load().
| Enumeradores | |
|---|---|
| CAPTION_HANDLER_TYPE_UNKNOWN | Data unit de tipo desconhecido. |
| CAPTION_HANDLER_TYPE_STATEMENT_BODY | Texto da legenda: processe com caption_closed_run(). |
| CAPTION_HANDLER_TYPE_GEOMETRIC | Gráficos geométricos. |
| CAPTION_HANDLER_TYPE_SYNTHESIZED_SOUND | Som sintetizado. |
| CAPTION_HANDLER_TYPE_1BYTE_DRCS | DRCS de 1 byte. |
| CAPTION_HANDLER_TYPE_2BYTE_DRCS | DRCS de 2 bytes. |
| CAPTION_HANDLER_TYPE_COLOR_MAP | Mapa de cores. |
| CAPTION_HANDLER_TYPE_BITMAP | Bitmap. |
| CAPTION_HANDLER_TYPE_MANAGEMENT | Caption management data, ou statement sem data units. |
| CAPTION_HANDLER_TYPE_MAX | Quantidade de tipos. |
Definição na linha 70 do arquivo caption-management.h.
| bool caption_management_load | ( | const CaptionData_t * | caption, |
| CaptionManagement_t * | management | ||
| ) |
Lê o caption management data ou o caption statement data de um data_group.
O formato é escolhido pelo data_group_id: 0x00 e 0x20 são lidos como management, os demais como statement. Todos os tamanhos são verificados contra o data_group_size.
| caption | data_group carregado por caption_data_load(). |
| management | Recebe o conteúdo. Os ponteiros apontam para dentro do buffer do PES. |
| bool caption_management_load_unit | ( | const CaptionData_t * | caption, |
| unsigned | index, | ||
| CaptionManagement_t * | mgmt | ||
| ) |
Igual ao caption_management_load(), mas pega a data unit de número index (0 é a primeira) de um caption statement data, em vez da preferida. Use para andar por todas as data units (texto, DRCS, bitmap...) do mesmo data group.
| caption | data_group carregado por caption_data_load(). |
| index | Posição da data unit no loop de data units. |
| mgmt | Recebe o conteúdo, com a data unit escolhida em statement. |
index. | CaptionManagementType_t caption_management_get_type | ( | const CaptionManagement_t * | management | ) |
Informa o tipo de conteúdo lido por caption_management_load().
| management | Conteúdo lido por caption_management_load(). |