annotate Input/aac/libmp4v2/API_CHANGES @ 16:6a86fdd4dea4 trunk

[svn] Replacement libmp4v2.
author nenolod
date Mon, 24 Oct 2005 15:33:32 -0700
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
16
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
1 Changes in xxxx
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
2 ---------------
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
3 Change to MP4Create and MP4Modify to allow flags to be set for 64 bit
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
4 to allow Quicktime compatibility
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
5 Change to MP4CloneTrack and MP4CopyTrack for when you copy a hint
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
6 track - you must now specify the track ID in the new file for the
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
7 reference track.
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
8
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
9 Changes in 0.9.9
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
10 ---------------------------
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
11 Added support for ISMA's Ismacrypt specification:
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
12 MP4GetTrackEsdsObjectTypeId replaces MP4GetTrackAudioType
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
13 and MP4GetTrackVideoType.
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
14 MP4EncAndCloneTrack is used instead of MP4CloneTrack to encrypt a track
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
15 while cloning it.
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
16 MP4EncAndCopyTrack is used instead of MP4CopyTrack to encrypt a track
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
17 while copying it.
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
18 MP4AddEncAudioTrack adds an encrypted audio track.
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
19 MP4AddEncVideoTrack adds an encrypted video track.
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
20
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
21
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
22 Changes in 0.9.8
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
23 ---------------------------
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
24 MP4WriteSample - changed "uint8_t * data" to "const uint8_t *data"
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
25
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
26 Changes from 0.9.6
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
27 ---------------------------
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
28 Modified
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
29 MP4SetHintTrackRtpPayload
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
30 payload parameter to get a dynamic payload is MP4_SET_DYNAMIC_PAYLOAD
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
31 (value 0xff) instead of 0.
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
32
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
33 Changes from 0.9.5 to 0.9.6
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
34 ---------------------------
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
35 Modified
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
36 MP4GetHintTrackRtpPayload
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
37 MP4SetHintTrackRtpPayload
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
38 get/set the encoding params (a=rtpmap <payloadname>/<timescale>[/<encoding params>])
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
39
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
40 Changes from 0.9.4 to 0.9.5
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
41 ---------------------------
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
42 Added
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
43 MP4GetTrackAudioMpeg4Type()
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
44 Returns MPEG-4 Audio type (e.g. AAC, CELP, HXVC, MIDI, etc.)
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
45 MP4ReadSampleFromTime()
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
46 Variant of MP4ReadSample() that uses time instead of sample id
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
47 (basically MP4GetSampleIdFromTime() + MP4ReadSample())
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
48 MP4Info()
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
49 MP4FileInfo()
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
50 Returns summary info on tracks in file (from util/mp4info.cpp)
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
51
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
52 The following functions add support for mp4 authoring/editting:
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
53
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
54 MP4CloneTrack()
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
55 Make a copy of a specified track, without media samples
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
56 MP4CopyTrack()
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
57 Make a copy of a specified track, with or without media samples
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
58 MP4CopySample()
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
59 Make a copy of a specified media sample
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
60
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
61 MP4AddTrackEdit()
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
62 Add a track edit list element
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
63 MP4DeleteTrackEdit()
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
64 Delete a track edit list element
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
65 MP4GetTrackNumberOfEdits()
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
66 Return the number of track edit list elements
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
67 MP4GetTrackEditTotalDuration()
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
68 Return the total duration of the track edit list
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
69 MP4GetTrackEditStart()
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
70 Return the edit start time for the edit list element
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
71 MP4GetTrackEditMediaStart()
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
72 Return the media start time for the edit list element
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
73 MP4SetTrackEditMediaStart()
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
74 Set the media start time for the edit list element
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
75 MP4GetTrackEditDuration()
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
76 Return the edit list element duration
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
77 MP4SetTrackEditDuration()
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
78 Set the edit list element duration
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
79 MP4GetTrackEditDwell()
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
80 Return the edit list element dwell parameter, see man page
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
81 MP4SetTrackEditDwell()
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
82 Set the edit list element dwell parameter, see man page
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
83 MP4ReadSampleFromEditTime()
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
84 Apply the edit list timeline to reading a sample
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
85 MP4GetSampleIdFromEditTime()
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
86 Return the sample id for a specified time on the edit list timeline
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
87
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
88 Modified
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
89 MP4GetSampleIdFromTime()
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
90 Semantic change - now returns sample id corresponding
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
91 to specified time, not the sample id with the smallest positive
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
92 start time difference from the specified time.
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
93
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
94
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
95 Changes from 0.9.3 to 0.9.4
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
96 ---------------------------
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
97 Added
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
98 MP4GetTrackVideoFrameRate()
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
99 Returns video frame rate (average rate if video is variable rate).
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
100
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
101 MP4GetTrackBitRate()
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
102 Returns track average bit rate in bits-per-second.
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
103
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
104 Changes from 0.9.2 to 0.9.3
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
105 ---------------------------
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
106 Modified
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
107 MP4Optimize()
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
108 Second argument, newFileName, can now be NULL in which case
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
109 a temporary file is created for the results of the optimization.
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
110 Upon success, the existing file specified with the first argument
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
111 is overwritten with the optimized file.
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
112
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
113 MP4GetNumberOfTracks()
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
114 MP4FindTrackId()
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
115 Both have a new optional argument, subType, with default value 0.
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
116 The subType can be specified for audio and video tracks to
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
117 match only a specific encoding type. See man page for more details.
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
118
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
119 Added
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
120 MP4GetTrackVideoWidth()
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
121 Returns video width in pixels. See man page for caveat.
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
122
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
123 MP4GetTrackVideoHeight()
6a86fdd4dea4 [svn] Replacement libmp4v2.
nenolod
parents:
diff changeset
124 Returns video height in pixels. See man page for caveat.