Mercurial > audlegacy
comparison Input/aac/libmp4v2/atom_enca.cpp @ 16:6a86fdd4dea4 trunk
[svn] Replacement libmp4v2.
author | nenolod |
---|---|
date | Mon, 24 Oct 2005 15:33:32 -0700 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
15:9780c2671a62 | 16:6a86fdd4dea4 |
---|---|
1 /* | |
2 * The contents of this file are subject to the Mozilla Public | |
3 * License Version 1.1 (the "License"); you may not use this file | |
4 * except in compliance with the License. You may obtain a copy of | |
5 * the License at http://www.mozilla.org/MPL/ | |
6 * | |
7 * Software distributed under the License is distributed on an "AS | |
8 * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or | |
9 * implied. See the License for the specific language governing | |
10 * rights and limitations under the License. | |
11 * | |
12 * The Original Code is MPEG4IP. | |
13 * | |
14 * The Initial Developer of the Original Code is Cisco Systems Inc. | |
15 * Portions created by Cisco Systems Inc. are | |
16 * Copyright (C) Cisco Systems Inc. 2001. All Rights Reserved. | |
17 * | |
18 * Contributor(s): | |
19 * Dave Mackie dmackie@cisco.com | |
20 * Alix Marchandise-Franquet alix@cisco.com | |
21 */ | |
22 | |
23 #include "mp4common.h" | |
24 | |
25 MP4EncaAtom::MP4EncaAtom() | |
26 : MP4Atom("enca") | |
27 { | |
28 AddReserved("reserved1", 6); /* 0 */ | |
29 | |
30 AddProperty( /* 1 */ | |
31 new MP4Integer16Property("dataReferenceIndex")); | |
32 | |
33 AddReserved("reserved2", 16); /* 2 */ | |
34 | |
35 AddProperty( /* 3 */ | |
36 new MP4Integer16Property("timeScale")); | |
37 | |
38 AddReserved("reserved3", 2); /* 4 */ | |
39 | |
40 ExpectChildAtom("esds", Required, OnlyOne); | |
41 ExpectChildAtom("sinf", Required, OnlyOne); | |
42 } | |
43 | |
44 void MP4EncaAtom::Generate() | |
45 { | |
46 MP4Atom::Generate(); | |
47 | |
48 ((MP4Integer16Property*)m_pProperties[1])->SetValue(1); | |
49 | |
50 // property reserved2 has non-zero fixed values | |
51 static u_int8_t reserved2[16] = { | |
52 0x00, 0x00, 0x00, 0x00, | |
53 0x00, 0x00, 0x00, 0x00, | |
54 0x00, 0x02, 0x00, 0x10, | |
55 0x00, 0x00, 0x00, 0x00, | |
56 }; | |
57 m_pProperties[2]->SetReadOnly(false); | |
58 ((MP4BytesProperty*)m_pProperties[2])-> | |
59 SetValue(reserved2, sizeof(reserved2)); | |
60 m_pProperties[2]->SetReadOnly(true); | |
61 } |