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