mirror of https://github.com/x64dbg/btparser
93 lines
1.5 KiB
Plaintext
93 lines
1.5 KiB
Plaintext
|
1:
|
||
|
2:
|
||
|
3:
|
||
|
4:
|
||
|
5:
|
||
|
6:
|
||
|
7:
|
||
|
8:
|
||
|
9:
|
||
|
10:
|
||
|
11:
|
||
|
12:
|
||
|
13: typedef struct {
|
||
|
14: CHAR signature [ 3 ] ;
|
||
|
15: UBYTE version ;
|
||
|
16: UBYTE dummy : 5 ;
|
||
|
17: UBYTE audio : 1 ;
|
||
|
18: UBYTE dummy2 : 1 ;
|
||
|
19: UBYTE video : 1 ;
|
||
|
20: DWORD dataoffset ;
|
||
|
21: DWORD zero ;
|
||
|
22: } HEADER ;
|
||
|
23:
|
||
|
24: local UINT taglen ;
|
||
|
25:
|
||
|
26: typedef struct {
|
||
|
27: UINT type : 8 ;
|
||
|
28: UINT datasize : 24 ;
|
||
|
29: UINT timestamp : 24 ;
|
||
|
30: UINT timestamphi : 8 ;
|
||
|
31: UINT streamid : 24 ;
|
||
|
32: taglen = datasize - 1 ;
|
||
|
33: Printf ( "tag length: %x\n" , taglen ) ;
|
||
|
34: if ( type == 8 )
|
||
|
35: {
|
||
|
36: UINT fmt : 4 ;
|
||
|
37: UINT sr : 2 ;
|
||
|
38: UINT bits : 1 ;
|
||
|
39: UINT channels : 1 ;
|
||
|
40: if ( fmt == 10 )
|
||
|
41: {
|
||
|
42: -- taglen ;
|
||
|
43: UBYTE frmtype ;
|
||
|
44: }
|
||
|
45: }
|
||
|
46: else if ( type == 9 )
|
||
|
47: {
|
||
|
48: UINT frmtype : 4 ;
|
||
|
49: UINT codecid : 4 ;
|
||
|
50: if ( codecid == 7 )
|
||
|
51: {
|
||
|
52: taglen -= 4 ;
|
||
|
53: UINT pkttype : 8 ;
|
||
|
54: UINT compotime : 24 ;
|
||
|
55: }
|
||
|
56: }
|
||
|
57: else if ( type == 18 )
|
||
|
58: {
|
||
|
59: UINT fristbyte : 8 ;
|
||
|
60: }
|
||
|
61: UBYTE data [ taglen ] ;
|
||
|
62: UINT lastsize ;
|
||
|
63:
|
||
|
64:
|
||
|
65:
|
||
|
66:
|
||
|
67: } Tag ;
|
||
|
68:
|
||
|
69: BigEndian ( ) ;
|
||
|
70: SetBackColor ( cLtGray ) ;
|
||
|
71: HEADER hdr ;
|
||
|
72:
|
||
|
73:
|
||
|
74: if ( hdr . signature != "FLV" )
|
||
|
75: {
|
||
|
76: Warning ( "File is not a FLV. Template stopped." ) ;
|
||
|
77: return - 1 ;
|
||
|
78: }
|
||
|
79:
|
||
|
80: if ( hdr . version != 1 )
|
||
|
81: {
|
||
|
82: Warning ( "Unsupported FLV version. Template stopped." ) ;
|
||
|
83: return - 1 ;
|
||
|
84: }
|
||
|
85:
|
||
|
86:
|
||
|
87: SetBackColor ( cNone ) ;
|
||
|
88:
|
||
|
89: while ( ! FEof ( ) )
|
||
|
90: {
|
||
|
91: Tag tag ;
|
||
|
92: }
|
||
|
93: tok_eof
|