RAW Format v2.0
 Share
The version of the browser you are using is no longer supported. Please upgrade to a supported browser.Dismiss

 
View only
 
 
ABCDEFGHIJKLMNOPQRST
1
2
3
New RAW file format ML-Video (.MLV)
4
5
Decisions:
6
- structured layoutflexible, extensible but being simple to parse
7
- separate chunks for different data blocksheader, chunks and info data
8
- INFO chunks are not mandatory for parserse.g. lens, f-stop, ISO etc data can be added/updated while recording or simply be ignored
9
- timestamps in info chunkswhen some info like e.g. f-stop or focal range changes, it can be associated to frames after this event
10
- timestamps in framesaccurate frame timestamp for detecting drops, jitter and fps
11
- chunks contain multiple frames (variable)different block sizes, depending on memory setup in camera
12
- frame numbers in chunkschunks can be written out of order or even split among different files (either in parallel like SD+CF bundling or 4GiB splits)
13
- info blocks can be on same level like chunks, or embedded into a chunkre-use spare bytes at the end of a chunk for additional information (optional)
14
- frameSpace in front of frameDataallow alignment of EDMAC write address
15
- sequential file naming .Mxx.MLV, .M01, .M02, ...
16
17
18
Example file layout:
19
[File Header]
20
[Info Block] (raw_info)
21
[Info Block] (exp_info)
22
[Info Block] (lens_info)
23
[Video Frame]
24
[Video Frame]
25
[Video Frame]
26
[Info Block] (rtc_info)
27
[Video Frame]
28
[Video Frame]
29
[Video Frame]
30
[Video Frame]
31
[Info Block] (rtc_info)
32
[Video Frame]
33
[Audio Frame]
34
[Video Frame]
35
36
Generic block design
37
Block type identifier, 4 characters
38
Size of the whole block
39
Timestamp, 8 byte (file header has version string here)
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
Loading...
 
 
 
Description
Structures
Example Setup
C structs