blob: ee1706734eda3d47713b7d66540aaccead10179d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
Read an existing DCP, adjust it, write it back out again, preserving things we didn't adjust;
perhaps being variably strict and pointing out errors.
Read multiple DCPs and pull bits out
Create a new DCP without having to remember to fill in every detail
Structures & their unique (important) components
-- CPL
"playlist"; entry points, durations of assets, frame rates, aspect ratios
-- PKL
Hashes, sizes
-- ASSETMAP
MXF filenames (also CPL/PKL filenames)
-- VOLINDEX
Nothing (unless we support multiple volumes)
-- MXFs
actual data
Approaches
1.
Load a DCP -> we get some assets [each with hash, size, filename] and a CPL (pointing to assets via real pointer or ID)
CPL its own class; then we can do things like
cpl = new CPL
cpl->add_asset (picture, ...)
DCP dcp (cpl);
dcp.write_xml ();
Can't see a drawback with this, and it's pretty much what is happening now.
|