如何解码在ISDB(ARIB)传输流中编码的文本字符串?某些编码技术在ARIB STD-B24版本5.2(第1卷)规范的第2部分(单媒体编码)的第7章中规定。但我不确定这种编码是否与其他标准的日文字符编码技术不同,如EUC-JP,ISO-2022-JP,JIS X208等。这个编码标准名称是什么?
如果我知道ISDB流中使用的编码名称(代码页),我可以使用ICU之类的第三方库,如下所示。
UConverter * ucnv_open(const char * converterName,UErrorCode * err) conv = ucnv_open(“shift_jis”,& status); len = ucnv_toUChars(conv,target,100,source,strlen(source),& status); ucnv_close(CONV);
我还试图自己解码从ISDB传输流中获取的ARIB字符串,但我没有通过,因为我遇到了几个问题,这对我来说并不清楚。
有4个图形集G0,G1,G2和G3。我所理解的是这些集合的初始值是 G0:汉字系统集 G1:字母数字集 G2:平假名集 G3:宏代码集
G0,G1,G2和G3的值有时可以更改还是保持固定? 什么是宏代码集?
在解码时,有两个概念,“代码元素的调用”和“图形集的指定”。如何从转义码中使用它?例如,我尝试解码从流中获取的以下字符串:
1b 7c c1 e3 f3 cd eb 26 41 1b 7d fe 4e 78 30 26 37 6b 3a 27 ce 4b 21 42 27 0e 28 1b 7c eb f9 eb 29 0f 21 21 0e 23 30 38 1b 24 3b 0f 7a 6a 7a 56 7a 59
如何获取GL和GR值,比如上面的字符串以及每个字符是使用2个字节还是1个字节?如果任何人都可以提供一些提示来解码上面的字符串,那将非常有用。
答案 0 :(得分:1)
由
进行解码6-STD-B24v5_2-1p3-E1.pdf
第2部分,第7章
默认设置第3部分,第8章
指定
G0 = Kanji (2 Byte) JIS X 0213:2004 8-bit code vs Unicode mapping table
G1 = AlphaNumeric (1 Byte)
G2 = Hiragana (1 Byte)
G3 = Macro code set (not decoded by the example below!!)
调用
GL <= G0
GR <= G2
解码:
1b 7c // Invocation GR <= G3
c1 // Right Table, Makro, Symbol..
e3 // ... sorry no ..
f3 // ... idea ..
cd // ...
eb // ...
26 41 // Left table, 2 bytes 0x2641 U+03B1 # GREEK SMALL LETTER ALPHA
1b 7d // Invocation GR <= G2
fe // right table hiragana WideChar($7E + $3020);
4e 78 // Left table 0x4E78 U+604B # <cjk>
30 26 // 0x3026 U+611B # <cjk>
37 6b // 0x376B U+7D50 # <cjk>
3a 27 // 0x3A27 U+5A5A # <cjk>
ce // right table hiragana WideChar($4E + $3020);
4b 21 // left table 0x4B21 U+6CD5 # <cjk>
42 27 // 0x4227 U+5247 # <cjk>
0e // Invocation GL <= G1
28 // left table "("
1b 7c // Invocation GR <= G3
eb // right table, makro, symbols
f9 // ... no idea
eb // ... no idea
29 // left table ")"
0f // Invocation GL <= G0
21 21 // left table 0x2121 U+3000 # IDEOGRAPHIC SPACE
0e // Invocation GL <= G1
23 // left table "#"
30 // left table "0"
38 // left table "8"
1b 24 3b // Designation G0 <= Additional Symbols
0f // Invocation GL <= G0
7a 6a // Left Table, addional symbols 2 Byte code, cell 74 row 90 (rebroadcast)
7a 56 // cell 54 row 90 (closed-captioned broadcast)
7a 59 // cell 57 row 90 (stereo broadcasting service)
αゞ恋爱结婚の法则()#08
完全αゞ爱婚姻法()#08