Projects
Multimedia
bento4
Sign Up
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Changes of Revision 5
View file
bento4.changes
Changed
@@ -1,4 +1,9 @@ ------------------------------------------------------------------- +Mon Sep 18 06:55:01 UTC 2017 - aloisio@gmx.com + +- Update to 1.5.0-618 + +------------------------------------------------------------------- Thu Sep 7 09:00:09 UTC 2017 - aloisio@gmx.com - Update to 1.5.0-617
View file
bento4.spec
Changed
@@ -16,10 +16,10 @@ # -%define _over 1.5.0-617 -%define _libver 1_5_0r617 +%define _over 1.5.0-618 +%define _libver 1_5_0r618 Name: bento4 -Version: 1.5.0r617 +Version: 1.5.0r618 Release: 0 Summary: C++ toolkit for all your MP4 and MPEG DASH media format needs License: GPL-2.0
View file
bento4-1.5.0r617.tar.gz/Build/Targets/universal-apple-macosx/Bento4.xcodeproj/project.pbxproj -> bento4-1.5.0r618.tar.gz/Build/Targets/universal-apple-macosx/Bento4.xcodeproj/project.pbxproj
Changed
@@ -3218,7 +3218,7 @@ 08FB7793FE84155DC02AAC07 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0800; + LastUpgradeCheck = 0900; TargetAttributes = { CA00A6521A1C36560064B4D3 = { CreatedOnToolsVersion = 6.1; @@ -4126,12 +4126,18 @@ 1DEB91F008733DB70010E9CD /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; CLANG_WARN_CONSTANT_CONVERSION = YES; CLANG_WARN_EMPTY_BODY = YES; CLANG_WARN_ENUM_CONVERSION = YES; CLANG_WARN_INFINITE_RECURSION = YES; CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; @@ -4154,7 +4160,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = NO; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.6; + MACOSX_DEPLOYMENT_TARGET = 10.9; SKIP_INSTALL = YES; SUPPORTED_PLATFORMS = "iphonesimulator iphoneos macosx"; VALID_ARCHS = "i386 x86_64"; @@ -4166,12 +4172,18 @@ 1DEB91F108733DB70010E9CD /* Release */ = { isa = XCBuildConfiguration; buildSettings = { + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; CLANG_WARN_CONSTANT_CONVERSION = YES; CLANG_WARN_EMPTY_BODY = YES; CLANG_WARN_ENUM_CONVERSION = YES; CLANG_WARN_INFINITE_RECURSION = YES; CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; @@ -4189,7 +4201,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.6; + MACOSX_DEPLOYMENT_TARGET = 10.9; SKIP_INSTALL = YES; SUPPORTED_PLATFORMS = "iphonesimulator iphoneos macosx"; VALID_ARCHS = "i386 x86_64";
View file
bento4-1.5.0r617.tar.gz/Source/C++/Apps/Mp42Aac/Mp42Aac.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Apps/Mp42Aac/Mp42Aac.cpp
Changed
@@ -202,6 +202,8 @@ int main(int argc, char** argv) { + int return_value = 1; + if (argc < 3) { PrintUsageAndExit(); } @@ -224,27 +226,32 @@ key_option = true; } + AP4_ByteStream* input = NULL; + AP4_File* input_file = NULL; + AP4_ByteStream* output = NULL; + AP4_Movie* movie = NULL; + AP4_Track* audio_track = NULL; + // create the input stream - AP4_ByteStream* input = NULL; result = AP4_FileByteStream::Create(*args++, AP4_FileByteStream::STREAM_MODE_READ, input); if (AP4_FAILED(result)) { fprintf(stderr, "ERROR: cannot open input (%d)\n", result); + goto end; } // create the output stream - AP4_ByteStream* output = NULL; result = AP4_FileByteStream::Create(*args++, AP4_FileByteStream::STREAM_MODE_WRITE, output); if (AP4_FAILED(result)) { fprintf(stderr, "ERROR: cannot open output (%d)\n", result); + goto end; } // open the file - AP4_File* input_file = new AP4_File(*input); + input_file = new AP4_File(*input); // get the movie AP4_SampleDescription* sample_description; - AP4_Track* audio_track; - AP4_Movie* movie = input_file->GetMovie(); + movie = input_file->GetMovie(); if (movie == NULL) { fprintf(stderr, "ERROR: no movie in file\n"); goto end; @@ -272,27 +279,31 @@ switch (sample_description->GetType()) { case AP4_SampleDescription::TYPE_MPEG: { WriteSamples(audio_track, sample_description, output); + return_value = 0; break; } case AP4_SampleDescription::TYPE_PROTECTED: if (!key_option) { fprintf(stderr, "ERROR: encrypted tracks require a key\n"); - goto end; + return_value = 1; + break; } DecryptAndWriteSamples(audio_track, sample_description, key, output); + result = 0; break; default: fprintf(stderr, "ERROR: unsupported sample type\n"); + return_value = 1; break; } end: delete input_file; - input->Release(); - output->Release(); + if (input) input->Release(); + if (output) output->Release(); - return 0; + return return_value; }
View file
bento4-1.5.0r617.tar.gz/Source/C++/Apps/Mp42Hls/Mp42Hls.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Apps/Mp42Hls/Mp42Hls.cpp
Changed
@@ -1508,11 +1508,6 @@ } if (Options.verbose) { - if (video_track) { - segment_duration = video_ts - last_ts; - } else { - segment_duration = audio_ts - last_ts; - } printf("Conversion complete, total duration=%.2f secs\n", total_duration); }
View file
bento4-1.5.0r617.tar.gz/Source/C++/Apps/Mp4Info/Mp4Info.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Apps/Mp4Info/Mp4Info.cpp
Changed
@@ -372,8 +372,10 @@ AP4_SampleDescription* desc = &description; if (desc->GetType() == AP4_SampleDescription::TYPE_PROTECTED) { AP4_ProtectedSampleDescription* prot_desc = AP4_DYNAMIC_CAST(AP4_ProtectedSampleDescription, desc); - if (prot_desc) ShowProtectedSampleDescription_Text(*prot_desc, verbose); - desc = prot_desc->GetOriginalSampleDescription(); + if (prot_desc) { + ShowProtectedSampleDescription_Text(*prot_desc, verbose); + desc = prot_desc->GetOriginalSampleDescription(); + } } if (verbose) { @@ -567,8 +569,8 @@ if (prot_desc) { ShowProtectedSampleDescription_Json(*prot_desc, verbose); printf(",\n"); + desc = prot_desc->GetOriginalSampleDescription(); } - desc = prot_desc->GetOriginalSampleDescription(); } char coding[5]; AP4_FormatFourChars(coding, desc->GetFormat()); @@ -585,7 +587,7 @@ // MPEG sample description AP4_MpegSampleDescription* mpeg_desc = AP4_DYNAMIC_CAST(AP4_MpegSampleDescription, desc); - printf(",\n"), + printf(",\n"); printf("\"stream_type\":%d,\n", mpeg_desc->GetStreamType()); printf("\"stream_type_name\":\"%s\",\n", mpeg_desc->GetStreamTypeString(mpeg_desc->GetStreamType())); printf("\"object_type\":%d,\n", mpeg_desc->GetObjectTypeId()); @@ -609,7 +611,7 @@ AP4_AudioSampleDescription* audio_desc = AP4_DYNAMIC_CAST(AP4_AudioSampleDescription, desc); if (audio_desc) { // Audio sample description - printf(",\n"), + printf(",\n"); printf("\"sample_rate\":%d,\n", audio_desc->GetSampleRate()); printf("\"sample_size\":%d,\n", audio_desc->GetSampleSize()); printf("\"channels\":%d", audio_desc->GetChannelCount()); @@ -618,7 +620,7 @@ AP4_DYNAMIC_CAST(AP4_VideoSampleDescription, desc); if (video_desc) { // Video sample description - printf(",\n"), + printf(",\n"); printf("\"width\":%d,\n", video_desc->GetWidth()); printf("\"height\":%d,\n", video_desc->GetHeight()); printf("\"depth\":%d", video_desc->GetDepth());
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4AinfAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4AinfAtom.cpp
Changed
@@ -51,6 +51,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version > 1) return NULL; return new AP4_AinfAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4AtomFactory.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4AtomFactory.cpp
Changed
@@ -261,7 +261,7 @@ AP4_Atom*& atom) { bool atom_is_large = (size_32 == 1); - bool force_64 = (size_32==1 && ((size_64>>32) == 0)); + bool force_64 = (size_32 == 1 && ((size_64 >> 32) == 0)); // create the atom if (GetContext() == AP4_ATOM_TYPE_STSD) { @@ -490,13 +490,17 @@ case AP4_ATOM_TYPE_HVCE: if (atom_is_large) return AP4_ERROR_INVALID_FORMAT; atom = AP4_HvccAtom::Create(size_32, stream); - atom->SetType(AP4_ATOM_TYPE_HVCE); + if (atom) { + atom->SetType(AP4_ATOM_TYPE_HVCE); + } break; case AP4_ATOM_TYPE_AVCE: if (atom_is_large) return AP4_ERROR_INVALID_FORMAT; atom = AP4_AvccAtom::Create(size_32, stream); - atom->SetType(AP4_ATOM_TYPE_AVCE); + if (atom) { + atom->SetType(AP4_ATOM_TYPE_AVCE); + } break; #if !defined(AP4_CONFIG_MINI_BUILD)
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4AtomSampleTable.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4AtomSampleTable.cpp
Changed
@@ -140,8 +140,10 @@ AP4_UI32 cts_offset = 0; AP4_UI64 dts = 0; AP4_UI32 duration = 0; - result = m_SttsAtom->GetDts(index, dts, &duration); - if (AP4_FAILED(result)) return result; + if (m_SttsAtom) { + result = m_SttsAtom->GetDts(index, dts, &duration); + if (AP4_FAILED(result)) return result; + } sample.SetDuration(duration); sample.SetDts(dts); if (m_CttsAtom == NULL) {
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4AvccAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4AvccAtom.cpp
Changed
@@ -152,18 +152,28 @@ m_SequenceParameters.EnsureCapacity(num_seq_params); unsigned int cursor = 6; for (unsigned int i=0; i<num_seq_params; i++) { - m_SequenceParameters.Append(AP4_DataBuffer()); - AP4_UI16 param_length = AP4_BytesToInt16BE(&payload[cursor]); - m_SequenceParameters[i].SetData(&payload[cursor]+2, param_length); - cursor += 2+param_length; + if (cursor+2 <= payload_size) { + AP4_UI16 param_length = AP4_BytesToInt16BE(&payload[cursor]); + cursor += 2; + if (cursor + param_length < payload_size) { + m_SequenceParameters.Append(AP4_DataBuffer()); + m_SequenceParameters[i].SetData(&payload[cursor], param_length); + cursor += param_length; + } + } } AP4_UI08 num_pic_params = payload[cursor++]; m_PictureParameters.EnsureCapacity(num_pic_params); for (unsigned int i=0; i<num_pic_params; i++) { - m_PictureParameters.Append(AP4_DataBuffer()); - AP4_UI16 param_length = AP4_BytesToInt16BE(&payload[cursor]); - m_PictureParameters[i].SetData(&payload[cursor]+2, param_length); - cursor += 2+param_length; + if (cursor+2 <= payload_size) { + AP4_UI16 param_length = AP4_BytesToInt16BE(&payload[cursor]); + cursor += 2; + if (cursor + param_length < payload_size) { + m_PictureParameters.Append(AP4_DataBuffer()); + m_PictureParameters[i].SetData(&payload[cursor], param_length); + cursor += param_length; + } + } } }
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4BlocAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4BlocAtom.cpp
Changed
@@ -46,6 +46,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version > 1) return NULL; return new AP4_BlocAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4Co64Atom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4Co64Atom.cpp
Changed
@@ -46,6 +46,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version != 0) return NULL; return new AP4_Co64Atom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4ContainerAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4ContainerAtom.cpp
Changed
@@ -54,6 +54,7 @@ if (is_full) { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; // special case for 'meta' atoms, because Apple sometimes creates them as
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4CttsAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4CttsAtom.cpp
Changed
@@ -46,6 +46,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version > 1) return NULL; return new AP4_CttsAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4DrefAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4DrefAtom.cpp
Changed
@@ -44,6 +44,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version != 0) return NULL; return new AP4_DrefAtom(size, version, flags, stream, atom_factory);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4ElstAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4ElstAtom.cpp
Changed
@@ -45,6 +45,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version > 1) return NULL; return new AP4_ElstAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4EsdsAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4EsdsAtom.cpp
Changed
@@ -46,6 +46,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version != 0) return NULL; return new AP4_EsdsAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4GrpiAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4GrpiAtom.cpp
Changed
@@ -45,6 +45,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version != 0) return NULL; return new AP4_GrpiAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4HdlrAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4HdlrAtom.cpp
Changed
@@ -46,6 +46,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version != 0) return NULL; return new AP4_HdlrAtom(size, version, flags, stream); @@ -80,15 +81,16 @@ stream.ReadUI32(m_Reserved[2]); // read the name unless it is empty - int name_size = size-(AP4_FULL_ATOM_HEADER_SIZE+20); - if (name_size == 0) return; + if (size < AP4_FULL_ATOM_HEADER_SIZE+20) return; + AP4_UI32 name_size = size-(AP4_FULL_ATOM_HEADER_SIZE+20); char* name = new char[name_size+1]; + if (name == NULL) return; stream.Read(name, name_size); name[name_size] = '\0'; // force a null termination // handle a special case: the Quicktime files have a pascal // string here, but ISO MP4 files have a C string. // we try to detect a pascal encoding and correct it. - if (name[0] == name_size-1) { + if ((AP4_UI08)name[0] == (AP4_UI08)(name_size-1)) { m_HandlerName = name+1; } else { m_HandlerName = name;
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4HmhdAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4HmhdAtom.cpp
Changed
@@ -41,6 +41,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version != 0) return NULL; return new AP4_HmhdAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4HvccAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4HvccAtom.cpp
Changed
@@ -247,6 +247,9 @@ { // make a copy of our configuration bytes unsigned int payload_size = size-AP4_ATOM_HEADER_SIZE; + + // keep a raw copy + if (payload_size < 22) return; m_RawBytes.SetData(payload, payload_size); // parse the payload
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4IkmsAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4IkmsAtom.cpp
Changed
@@ -45,6 +45,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version > 1) return NULL; return new AP4_IkmsAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4IodsAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4IodsAtom.cpp
Changed
@@ -46,6 +46,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version != 0) return NULL; return new AP4_IodsAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4IproAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4IproAtom.cpp
Changed
@@ -46,6 +46,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version != 0) return NULL; return new AP4_IproAtom(size, version, flags, stream, atom_factory);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4IsfmAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4IsfmAtom.cpp
Changed
@@ -45,6 +45,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version != 0) return NULL; return new AP4_IsfmAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4Marlin.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4Marlin.cpp
Changed
@@ -1101,6 +1101,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version > 0) return NULL; return new AP4_MkidAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4MdhdAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4MdhdAtom.cpp
Changed
@@ -46,6 +46,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version > 1) return NULL; return new AP4_MdhdAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4MehdAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4MehdAtom.cpp
Changed
@@ -46,6 +46,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version > 1) return NULL; return new AP4_MehdAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4MfhdAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4MfhdAtom.cpp
Changed
@@ -46,6 +46,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version > 0) return NULL; return new AP4_MfhdAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4MfroAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4MfroAtom.cpp
Changed
@@ -41,6 +41,7 @@ { AP4_UI08 version = 0; AP4_UI32 flags = 0; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; AP4_Result result = ReadFullHeader(stream, version, flags); if (AP4_FAILED(result)) return NULL; if (version != 0) return NULL;
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4MvhdAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4MvhdAtom.cpp
Changed
@@ -46,6 +46,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version > 1) return NULL; return new AP4_MvhdAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4NmhdAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4NmhdAtom.cpp
Changed
@@ -41,6 +41,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version != 0) return NULL; return new AP4_NmhdAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4OdafAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4OdafAtom.cpp
Changed
@@ -45,6 +45,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version != 0) return NULL; return new AP4_OdafAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4OddaAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4OddaAtom.cpp
Changed
@@ -46,6 +46,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version != 0) return NULL; return new AP4_OddaAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4OdheAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4OdheAtom.cpp
Changed
@@ -48,6 +48,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version != 0) return NULL; return new AP4_OdheAtom(size, version, flags, stream, atom_factory);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4OhdrAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4OhdrAtom.cpp
Changed
@@ -47,6 +47,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version != 0) return NULL; return new AP4_OhdrAtom(size, version, flags, stream, atom_factory);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4PdinAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4PdinAtom.cpp
Changed
@@ -40,6 +40,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version > 1) return NULL; return new AP4_PdinAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4Piff.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4Piff.cpp
Changed
@@ -55,6 +55,7 @@ { AP4_UI08 version = 0; AP4_UI32 flags = 0; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; AP4_Result result = ReadFullHeader(stream, version, flags); if (AP4_FAILED(result)) return NULL; if (version != 0) return NULL; @@ -126,6 +127,7 @@ { AP4_UI08 version = 0; AP4_UI32 flags = 0; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; AP4_Result result = ReadFullHeader(stream, version, flags); if (AP4_FAILED(result)) return NULL; if (version != 0) return NULL;
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4PsshAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4PsshAtom.cpp
Changed
@@ -52,6 +52,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version > 1) return NULL; return new AP4_PsshAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4SaioAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4SaioAtom.cpp
Changed
@@ -46,6 +46,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version > 1) return NULL; return new AP4_SaioAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4SaizAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4SaizAtom.cpp
Changed
@@ -46,6 +46,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version > 0) return NULL; return new AP4_SaizAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4SampleEntry.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4SampleEntry.cpp
Changed
@@ -772,13 +772,13 @@ stream.ReadUI32(m_Reserved3); stream.ReadUI16(m_FrameCount); - char compressor_name[33]; + AP4_UI08 compressor_name[33]; compressor_name[32] = 0; stream.Read(compressor_name, 32); - int name_length = compressor_name[0]; + AP4_UI08 name_length = compressor_name[0]; if (name_length < 32) { compressor_name[name_length+1] = 0; // force null termination - m_CompressorName = &compressor_name[1]; + m_CompressorName = (const char*)(&compressor_name[1]); } stream.ReadUI16(m_Depth);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4SbgpAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4SbgpAtom.cpp
Changed
@@ -46,6 +46,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version > 1) return NULL; return new AP4_SbgpAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4SchmAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4SchmAtom.cpp
Changed
@@ -48,6 +48,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version != 0) return NULL; if (size < AP4_FULL_ATOM_HEADER_SIZE+6) return NULL;
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4SencAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4SencAtom.cpp
Changed
@@ -45,6 +45,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(ReadFullHeader(stream, version, flags))) return NULL; if (version != 0) return NULL; return new AP4_SencAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4SgpdAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4SgpdAtom.cpp
Changed
@@ -48,6 +48,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version > 1) return NULL; return new AP4_SgpdAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4SidxAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4SidxAtom.cpp
Changed
@@ -46,6 +46,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version > 1) return NULL; return new AP4_SidxAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4SmhdAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4SmhdAtom.cpp
Changed
@@ -41,6 +41,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version != 0) return NULL; return new AP4_SmhdAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4StcoAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4StcoAtom.cpp
Changed
@@ -46,6 +46,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version != 0) return NULL; return new AP4_StcoAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4SthdAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4SthdAtom.cpp
Changed
@@ -41,6 +41,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version != 0) return NULL; return new AP4_SthdAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4StscAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4StscAtom.cpp
Changed
@@ -46,6 +46,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version != 0) return NULL; return new AP4_StscAtom(size, version, flags, stream); @@ -72,7 +73,11 @@ { AP4_UI32 first_sample = 1; AP4_UI32 entry_count; + if (size - AP4_ATOM_HEADER_SIZE < 4) return; stream.ReadUI32(entry_count); + if ((size - AP4_ATOM_HEADER_SIZE - 4)/12 < entry_count) { + return; + } m_Entries.SetItemCount(entry_count); unsigned char* buffer = new unsigned char[entry_count*12]; AP4_Result result = stream.Read(buffer, entry_count*12);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4StsdAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4StsdAtom.cpp
Changed
@@ -51,6 +51,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version > 1) return NULL; return new AP4_StsdAtom(size, version, flags, stream, atom_factory);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4StssAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4StssAtom.cpp
Changed
@@ -46,6 +46,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version != 0) return NULL; return new AP4_StssAtom(size, version, flags, stream); @@ -69,11 +70,12 @@ AP4_Atom(AP4_ATOM_TYPE_STSS, size, version, flags), m_LookupCache(0) { + if (size - AP4_ATOM_HEADER_SIZE < 4) return; AP4_UI32 entry_count; stream.ReadUI32(entry_count); // check for bogus values - if (entry_count*4 > size) return; + if ((size - AP4_ATOM_HEADER_SIZE - 4) / 4 < entry_count) return; // read the table into a local array for conversion unsigned char* buffer = new unsigned char[entry_count*4];
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4StszAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4StszAtom.cpp
Changed
@@ -46,6 +46,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version != 0) return NULL; return new AP4_StszAtom(size, version, flags, stream); @@ -73,6 +74,13 @@ stream.ReadUI32(m_SampleSize); stream.ReadUI32(m_SampleCount); if (m_SampleSize == 0) { // means that the samples have different sizes + // check for overflow + if (m_SampleCount > (size-8)/4) { + m_SampleCount = 0; + return; + } + + // read the entries AP4_Cardinal sample_count = m_SampleCount; m_Entries.SetItemCount(sample_count); unsigned char* buffer = new unsigned char[sample_count*4];
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4SttsAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4SttsAtom.cpp
Changed
@@ -46,6 +46,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version != 0) return NULL; return new AP4_SttsAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4Stz2Atom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4Stz2Atom.cpp
Changed
@@ -46,6 +46,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version != 0) return NULL; return new AP4_Stz2Atom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4TencAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4TencAtom.cpp
Changed
@@ -45,6 +45,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(ReadFullHeader(stream, version, flags))) return NULL; if (version > 1) return NULL; AP4_TencAtom* tenc = new AP4_TencAtom(size, version, flags);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4TfdtAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4TfdtAtom.cpp
Changed
@@ -45,6 +45,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version > 1) return NULL; return new AP4_TfdtAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4TfhdAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4TfhdAtom.cpp
Changed
@@ -45,6 +45,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version > 0) return NULL; if (size < ComputeSize(flags)) return NULL;
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4TfraAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4TfraAtom.cpp
Changed
@@ -46,6 +46,7 @@ { AP4_UI08 version = 0; AP4_UI32 flags = 0; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; AP4_Result result = ReadFullHeader(stream, version, flags); if (AP4_FAILED(result)) return NULL; if (version > 1) return NULL;
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4TkhdAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4TkhdAtom.cpp
Changed
@@ -46,6 +46,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version > 1) return NULL; return new AP4_TkhdAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4TrexAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4TrexAtom.cpp
Changed
@@ -46,6 +46,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version != 0) return NULL; return new AP4_TrexAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4TrunAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4TrunAtom.cpp
Changed
@@ -45,6 +45,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version > 1) return NULL; return new AP4_TrunAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4UrlAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4UrlAtom.cpp
Changed
@@ -41,6 +41,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version != 0) return NULL; return new AP4_UrlAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Core/Ap4VmhdAtom.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Core/Ap4VmhdAtom.cpp
Changed
@@ -42,6 +42,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version != 0) return NULL; return new AP4_VmhdAtom(size, version, flags, stream);
View file
bento4-1.5.0r617.tar.gz/Source/C++/Crypto/Ap4AesBlockCipher.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/Crypto/Ap4AesBlockCipher.cpp
Changed
@@ -1692,7 +1692,7 @@ { kp += nc; round(fwd_rnd, p1, p0, kp); - pt = p0, p0 = p1, p1 = pt; + pt = p0; p0 = p1; p1 = pt; } #endif kp += nc; @@ -1814,7 +1814,7 @@ { kp -= nc; round(inv_rnd, p1, p0, kp); - pt = p0, p0 = p1, p1 = pt; + pt = p0; p0 = p1; p1 = pt; } #endif kp -= nc;
View file
bento4-1.5.0r617.tar.gz/Source/C++/MetaData/Ap4MetaData.cpp -> bento4-1.5.0r618.tar.gz/Source/C++/MetaData/Ap4MetaData.cpp
Changed
@@ -1258,7 +1258,8 @@ +---------------------------------------------------------------------*/ AP4_DataAtom::AP4_DataAtom(const AP4_MetaData::Value& value) : AP4_Atom(AP4_ATOM_TYPE_DATA, AP4_ATOM_HEADER_SIZE), - m_DataType(DATA_TYPE_BINARY) + m_DataType(DATA_TYPE_BINARY), + m_Source(NULL) { AP4_MemoryByteStream* memory = new AP4_MemoryByteStream(); AP4_Size payload_size = 8; @@ -1334,7 +1335,8 @@ | AP4_DataAtom::AP4_DataAtom +---------------------------------------------------------------------*/ AP4_DataAtom::AP4_DataAtom(AP4_UI32 size, AP4_ByteStream& stream) : - AP4_Atom(AP4_ATOM_TYPE_DATA, size) + AP4_Atom(AP4_ATOM_TYPE_DATA, size), + m_Source(NULL) { if (size < AP4_ATOM_HEADER_SIZE+8) return; @@ -1568,6 +1570,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version != 0) return NULL; return new AP4_3GppLocalizedStringAtom(type, size, version, flags, stream); @@ -1661,6 +1664,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version != 0) return NULL; return new AP4_DcfStringAtom(type, size, version, flags, stream); @@ -1723,6 +1727,7 @@ { AP4_UI08 version; AP4_UI32 flags; + if (size < AP4_FULL_ATOM_HEADER_SIZE) return NULL; if (AP4_FAILED(AP4_Atom::ReadFullHeader(stream, version, flags))) return NULL; if (version != 0) return NULL; if (size != AP4_FULL_ATOM_HEADER_SIZE+4) return NULL;
View file
bento4-1.5.0r617.tar.gz/Source/Python/utils/mp4-dash.py -> bento4-1.5.0r618.tar.gz/Source/Python/utils/mp4-dash.py
Changed
@@ -28,7 +28,7 @@ # setup main options VERSION = "1.8.0" -SDK_REVISION = '617' +SDK_REVISION = '618' SCRIPT_PATH = path.abspath(path.dirname(__file__)) sys.path += [SCRIPT_PATH]
View file
bento4-1.5.0r617.tar.gz/Source/Python/utils/mp4-hls.py -> bento4-1.5.0r618.tar.gz/Source/Python/utils/mp4-hls.py
Changed
@@ -27,7 +27,7 @@ # setup main options VERSION = "1.1.0" -SDK_REVISION = '617' +SDK_REVISION = '618' SCRIPT_PATH = path.abspath(path.dirname(__file__)) sys.path += [SCRIPT_PATH] @@ -617,9 +617,9 @@ options.widevine['content_id'] = '*' # defaults - if not options.encryption_mode: + if options.encryption_key and not options.encryption_mode: options.encryption_mode = 'AES-128' - + if options.encryption_mode == 'SAMPLE-AES': options.hls_version = 5
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.