Skip to content

Commit b4c3d98

Browse files
authored
Merge branch 'master' into dolby/dovi_dash
2 parents ade2f40 + 2cfda62 commit b4c3d98

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

53 files changed

+855
-232
lines changed

.github/LICENSE

Lines changed: 289 additions & 0 deletions
Large diffs are not rendered by default.

.github/workflows/ci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,6 @@ jobs:
5252
# Upload the SDK
5353
- name: Upload SDK
5454
if: github.event_name == 'push'
55-
uses: actions/upload-artifact@v2
55+
uses: actions/upload-artifact@v4
5656
with:
5757
path: SDK/*.zip

.github/workflows/codeql.yml

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
name: "CodeQL"
2+
3+
on:
4+
push:
5+
branches: [ "master" ]
6+
pull_request:
7+
branches: [ "master" ]
8+
schedule:
9+
- cron: "58 23 * * 4"
10+
11+
jobs:
12+
analyze:
13+
name: Analyze
14+
runs-on: ubuntu-latest
15+
permissions:
16+
actions: read
17+
contents: read
18+
security-events: write
19+
20+
strategy:
21+
fail-fast: false
22+
matrix:
23+
language: [ javascript, cpp, python ]
24+
25+
steps:
26+
- name: Checkout
27+
uses: actions/checkout@v3
28+
29+
- name: Initialize CodeQL
30+
uses: github/codeql-action/init@v2
31+
with:
32+
languages: ${{ matrix.language }}
33+
queries: +security-and-quality
34+
35+
- name: Autobuild
36+
uses: github/codeql-action/autobuild@v2
37+
38+
- name: Perform CodeQL Analysis
39+
uses: github/codeql-action/analyze@v2
40+
with:
41+
category: "/language:${{ matrix.language }}"

Build/Docker/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
FROM alpine:latest
22

33
# Setup environment variables
4-
ENV BENTO4_VERSION 1.6.0-639
4+
ENV BENTO4_VERSION 1.6.0-641
55

66
# Install Dependencies
77
RUN apk update && apk add --no-cache ca-certificates bash python3 make cmake gcc g++ git

Build/Targets/universal-apple-macosx/Bento4.xcodeproj/project.pbxproj

Lines changed: 11 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
archiveVersion = 1;
44
classes = {
55
};
6-
objectVersion = 46;
6+
objectVersion = 51;
77
objects = {
88

99
/* Begin PBXAggregateTarget section */
@@ -1141,7 +1141,7 @@
11411141
CA86EEE419A95E30008A3B00 /* FragmentCreatorTest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = FragmentCreatorTest.cpp; sourceTree = "<group>"; };
11421142
CA87B9421F81B08B005F42D6 /* mp4diff */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = mp4diff; sourceTree = BUILT_PRODUCTS_DIR; };
11431143
CA87B94C1F81B122005F42D6 /* Mp4Diff.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Mp4Diff.cpp; sourceTree = "<group>"; };
1144-
CA87B9521F895A84005F42D6 /* Mp4IframeIndex */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; name = Mp4IframeIndex; path = mp4iframeindex; sourceTree = BUILT_PRODUCTS_DIR; };
1144+
CA87B9521F895A84005F42D6 /* mp4iframeindex */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = mp4iframeindex; sourceTree = BUILT_PRODUCTS_DIR; };
11451145
CA87B95D1F895B14005F42D6 /* Mp4IframeIndex.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Mp4IframeIndex.cpp; sourceTree = "<group>"; };
11461146
CA8A94CE1929A65E00836179 /* mp4mux */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = mp4mux; sourceTree = BUILT_PRODUCTS_DIR; };
11471147
CA8A94DB1929A6C100836179 /* Mp4Mux.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Mp4Mux.cpp; sourceTree = "<group>"; };
@@ -1803,7 +1803,7 @@
18031803
CAE1FBF61AF8493E00607B3C /* mp42hls */,
18041804
CAFE9C691D1B487700F9FF67 /* LargeFilesTest */,
18051805
CA87B9421F81B08B005F42D6 /* mp4diff */,
1806-
CA87B9521F895A84005F42D6 /* Mp4IframeIndex */,
1806+
CA87B9521F895A84005F42D6 /* mp4iframeindex */,
18071807
);
18081808
name = Products;
18091809
sourceTree = "<group>";
@@ -3082,7 +3082,7 @@
30823082
);
30833083
name = Mp4IframeIndex;
30843084
productName = Mp4IframeIndex;
3085-
productReference = CA87B9521F895A84005F42D6 /* Mp4IframeIndex */;
3085+
productReference = CA87B9521F895A84005F42D6 /* mp4iframeindex */;
30863086
productType = "com.apple.product-type.tool";
30873087
};
30883088
CA8A94CD1929A65E00836179 /* Mp4Mux */ = {
@@ -3419,7 +3419,7 @@
34193419
};
34203420
};
34213421
buildConfigurationList = 1DEB91EF08733DB70010E9CD /* Build configuration list for PBXProject "Bento4" */;
3422-
compatibilityVersion = "Xcode 3.2";
3422+
compatibilityVersion = "Xcode 10.0";
34233423
developmentRegion = English;
34243424
hasScannedForEncodings = 1;
34253425
knownRegions = (
@@ -4392,10 +4392,10 @@
43924392
GCC_WARN_UNINITIALIZED_AUTOS = NO;
43934393
GCC_WARN_UNUSED_FUNCTION = YES;
43944394
GCC_WARN_UNUSED_VARIABLE = YES;
4395-
MACOSX_DEPLOYMENT_TARGET = 10.9;
4395+
MACOSX_DEPLOYMENT_TARGET = 11.5;
43964396
SKIP_INSTALL = YES;
43974397
SUPPORTED_PLATFORMS = "iphonesimulator iphoneos macosx";
4398-
VALID_ARCHS = "i386 x86_64";
4398+
VALID_ARCHS = "arm64 arm64e i386 x86_64";
43994399
"VALID_ARCHS[sdk=iphoneos*]" = "armv6 armv7 armv7s arm64";
44004400
"VALID_ARCHS[sdk=iphonesimulator*]" = "i386 x86_64";
44014401
};
@@ -4434,10 +4434,10 @@
44344434
GCC_WARN_UNINITIALIZED_AUTOS = YES;
44354435
GCC_WARN_UNUSED_FUNCTION = YES;
44364436
GCC_WARN_UNUSED_VARIABLE = YES;
4437-
MACOSX_DEPLOYMENT_TARGET = 10.9;
4437+
MACOSX_DEPLOYMENT_TARGET = 11.5;
44384438
SKIP_INSTALL = YES;
44394439
SUPPORTED_PLATFORMS = "iphonesimulator iphoneos macosx";
4440-
VALID_ARCHS = "i386 x86_64";
4440+
VALID_ARCHS = "arm64 arm64e i386 x86_64";
44414441
"VALID_ARCHS[sdk=iphoneos*]" = "armv6 armv7 armv7s arm64";
44424442
"VALID_ARCHS[sdk=iphonesimulator*]" = "i386 x86_64";
44434443
};
@@ -4735,6 +4735,7 @@
47354735
CA646AF50CE97CEE009699D7 /* Debug */ = {
47364736
isa = XCBuildConfiguration;
47374737
buildSettings = {
4738+
MACOSX_DEPLOYMENT_TARGET = 11.5;
47384739
PRODUCT_NAME = mp4decrypt;
47394740
SUPPORTED_PLATFORMS = macosx;
47404741
};
@@ -4743,6 +4744,7 @@
47434744
CA646AF60CE97CEE009699D7 /* Release */ = {
47444745
isa = XCBuildConfiguration;
47454746
buildSettings = {
4747+
MACOSX_DEPLOYMENT_TARGET = 11.5;
47464748
PRODUCT_NAME = mp4decrypt;
47474749
SUPPORTED_PLATFORMS = macosx;
47484750
};
@@ -4960,7 +4962,6 @@
49604962
);
49614963
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
49624964
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
4963-
MACOSX_DEPLOYMENT_TARGET = 10.9;
49644965
MTL_ENABLE_DEBUG_INFO = YES;
49654966
ONLY_ACTIVE_ARCH = YES;
49664967
PRODUCT_NAME = mp4diff;
@@ -4992,7 +4993,6 @@
49924993
GCC_C_LANGUAGE_STANDARD = gnu11;
49934994
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
49944995
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
4995-
MACOSX_DEPLOYMENT_TARGET = 10.9;
49964996
MTL_ENABLE_DEBUG_INFO = NO;
49974997
PRODUCT_NAME = mp4diff;
49984998
PROVISIONING_PROFILE_SPECIFIER = "";
@@ -5026,7 +5026,6 @@
50265026
);
50275027
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
50285028
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
5029-
MACOSX_DEPLOYMENT_TARGET = 10.13;
50305029
MTL_ENABLE_DEBUG_INFO = YES;
50315030
ONLY_ACTIVE_ARCH = YES;
50325031
PRODUCT_NAME = mp4iframeindex;
@@ -5056,7 +5055,6 @@
50565055
GCC_C_LANGUAGE_STANDARD = gnu11;
50575056
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
50585057
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
5059-
MACOSX_DEPLOYMENT_TARGET = 10.13;
50605058
MTL_ENABLE_DEBUG_INFO = NO;
50615059
PRODUCT_NAME = mp4iframeindex;
50625060
SDKROOT = macosx;
@@ -5516,7 +5514,6 @@
55165514
GCC_WARN_UNDECLARED_SELECTOR = YES;
55175515
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
55185516
GCC_WARN_UNUSED_FUNCTION = YES;
5519-
MACOSX_DEPLOYMENT_TARGET = 10.11;
55205517
MTL_ENABLE_DEBUG_INFO = YES;
55215518
ONLY_ACTIVE_ARCH = YES;
55225519
PRODUCT_NAME = "$(TARGET_NAME)";
@@ -5554,7 +5551,6 @@
55545551
GCC_WARN_UNDECLARED_SELECTOR = YES;
55555552
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
55565553
GCC_WARN_UNUSED_FUNCTION = YES;
5557-
MACOSX_DEPLOYMENT_TARGET = 10.11;
55585554
MTL_ENABLE_DEBUG_INFO = NO;
55595555
PRODUCT_NAME = "$(TARGET_NAME)";
55605556
SDKROOT = macosx;

Build/pkgconfig/bento4.pc.in

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
prefix=@CMAKE_INSTALL_PREFIX@
2+
includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@
3+
libdir=${prefix}/@CMAKE_INSTALL_LIBDIR@
4+
5+
Name: @PROJECT_NAME@
6+
Description: Full-featured MP4 format, MPEG DASH, HLS, CMAF SDK and tools
7+
Version: @BENTO4_VERSION@
8+
Libs: -L${libdir} -lap4
9+
Cflags: -I${includedir}/bento4

CMakeLists.txt

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ function(get_bento4_version)
1414
endfunction()
1515

1616
get_bento4_version()
17+
set(CMAKE_OSX_ARCHITECTURES "arm64;x86_64" CACHE STRING "")
1718
project(bento4 VERSION "${BENTO4_VERSION}")
1819

1920
# Variables
@@ -70,7 +71,12 @@ file(GLOB AP4_HEADERS
7071
${SOURCE_METADATA}/*.h
7172
)
7273

73-
add_library(ap4 STATIC ${AP4_SOURCES})
74+
option(BUILD_SHARED_LIBRARY "Build as a shared library" OFF)
75+
if(BUILD_SHARED_LIBRARY)
76+
add_library(ap4 SHARED ${AP4_SOURCES})
77+
else()
78+
add_library(ap4 STATIC ${AP4_SOURCES})
79+
endif()
7480
target_include_directories(ap4 PUBLIC
7581
${AP4_INCLUDE_DIRS}
7682
)
@@ -118,6 +124,12 @@ configure_package_config_file(
118124
INSTALL_DESTINATION "${config_install_dir}"
119125
)
120126

127+
configure_file(
128+
"Build/pkgconfig/bento4.pc.in"
129+
"${generated_dir}/bento4.pc"
130+
@ONLY
131+
)
132+
121133
install(
122134
TARGETS ap4 ${BENTO4_APPS_LOWERCASE}
123135
EXPORT "${TARGETS_EXPORT_NAME}"
@@ -137,6 +149,11 @@ install(
137149
DESTINATION "${config_install_dir}"
138150
)
139151

152+
install(
153+
FILES "${generated_dir}/bento4.pc"
154+
DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig"
155+
)
156+
140157
install(
141158
EXPORT "${TARGETS_EXPORT_NAME}"
142159
NAMESPACE "${namespace}"

Documents/MkDocs/requirements.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# This requirements file is for python3
2-
mkdocs == 1.1
2+
mkdocs == 1.2.3
33
mkdocs-material == 7.1.5
44
mkdocs-material-extensions == 1.0
5-
pymdown-extensions == 7.0
5+
pymdown-extensions == 10.0

Documents/MkDocs/src/developers/dash/index.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -157,6 +157,7 @@ Setting stream properties via input specifiers allows invoking `mp4dash` with ex
157157
`hls_group_match` | `<hls-group-match>` | (only with `--hls`) |
158158
`hls_default` | `YES` or `NO` | (only with `--hls`) |
159159
`hls_autoselect` | `YES` or `NO` | (only with `--hls`) |
160+
`hls_characteristic`| `<hls-characteristic>` (string) | (only with `--hls`) |
160161

161162
### Multi-language
162163

Documents/MkDocs/src/downloads.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@ DOWNLOADS
55

66
As a convenience, we publish here the most recent version of the binary releases (SDK with header files, libraries and command line applications) for the most common platforms, and the corresponding source snapshot.
77

8-
## Version 1.6.0-639
8+
## Version 1.6.0-641
99

10-
:fontawesome-brands-windows: &nbsp; [Binaries for Windows 10](https://www.bok.net/Bento4/binaries/Bento4-SDK-1-6-0-639.x86_64-microsoft-win32.zip)
11-
:fontawesome-brands-apple: &nbsp; [Binaries for macOS](https://www.bok.net/Bento4/binaries/Bento4-SDK-1-6-0-639.universal-apple-macosx.zip)
12-
:fontawesome-brands-linux: &nbsp; [Binaries for Linux x86_64](https://www.bok.net/Bento4/binaries/Bento4-SDK-1-6-0-639.x86_64-unknown-linux.zip)
13-
:fontawesome-solid-code: &nbsp; [Source Snapshot (all platforms)](https://www.bok.net/Bento4/source/Bento4-SRC-1-6-0-639.zip)
10+
:fontawesome-brands-windows: &nbsp; [Binaries for Windows 10](https://www.bok.net/Bento4/binaries/Bento4-SDK-1-6-0-641.x86_64-microsoft-win32.zip)
11+
:fontawesome-brands-apple: &nbsp; [Binaries for macOS](https://www.bok.net/Bento4/binaries/Bento4-SDK-1-6-0-641.universal-apple-macosx.zip)
12+
:fontawesome-brands-linux: &nbsp; [Binaries for Linux x86_64](https://www.bok.net/Bento4/binaries/Bento4-SDK-1-6-0-641.x86_64-unknown-linux.zip)
13+
:fontawesome-solid-code: &nbsp; [Source Snapshot (all platforms)](https://www.bok.net/Bento4/source/Bento4-SRC-1-6-0-641.zip)

0 commit comments

Comments
 (0)