Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sync upstream/master to fork #2

Closed
wants to merge 474 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
474 commits
Select commit Hold shift + click to select a range
3162846
wip
barbibulle Jan 6, 2020
dfcb783
wip
barbibulle Jan 6, 2020
0a974a5
wip
barbibulle Jan 6, 2020
8a9e1d2
wip
barbibulle Jan 6, 2020
1882c67
wip
barbibulle Jan 6, 2020
54c52df
wip
barbibulle Jan 6, 2020
628b31d
wip
barbibulle Jan 6, 2020
2dbb8cb
wip
barbibulle Jan 6, 2020
8d43678
wip
barbibulle Jan 6, 2020
f9b2140
wip
barbibulle Jan 14, 2020
e6990f6
add vs2019 support
barbibulle Mar 9, 2020
d439e6d
Ap4StreamCipher: fix skip bytes calculation.
enrikb Mar 11, 2020
481c1e6
prep for r630
barbibulle Mar 13, 2020
78e95ec
fix windows projects
barbibulle Mar 14, 2020
11b265d
fix warning
barbibulle Mar 14, 2020
403a2c4
Merge commit 'f9b214042e9a867ba3d234014a3616b78ed775c8'
barbibulle Mar 22, 2020
a082a0c
update doc
barbibulle Mar 28, 2020
5997a4d
support audio-only HLS presentations
barbibulle Mar 28, 2020
455edbc
Merge pull request #481 from enrikb/bugfix/CENS_encrypt_fix_skip_bytes
barbibulle Mar 28, 2020
580f274
cosmetic fix
barbibulle Mar 28, 2020
4e403b4
fix webvtt subtitles in mp4-dash.py
barbibulle Mar 29, 2020
87a7e71
python3 newline updates
barbibulle Mar 30, 2020
2c84c15
conform to some of the CMAF requirements
barbibulle Mar 30, 2020
1534f55
Add some docs
barbibulle Mar 30, 2020
5ef3c9e
fix #326
barbibulle Mar 30, 2020
141d36f
Create ci.yml
barbibulle Apr 24, 2020
c96022c
Update ci.yml
barbibulle Apr 24, 2020
4dea0cc
add windows to CI matrix
barbibulle Apr 24, 2020
b004efd
fix CMake build for Windows
barbibulle Apr 24, 2020
50442c7
add GitHub CI badge
barbibulle Apr 24, 2020
971cbc0
remove wildcard imports
barbibulle Apr 24, 2020
ddd59c9
cleanup imports
barbibulle Apr 25, 2020
5592ce8
fix #490
barbibulle Apr 25, 2020
e66d7c9
add support for binary-mode stdin and stdout on Windows.
barbibulle Apr 26, 2020
e3b3730
Merge branch 'master' of https://github.com/axiomatic-systems/Bento4
barbibulle Apr 26, 2020
a979062
Allow to explicitly set dash representation id
bvc3at Apr 26, 2020
3f7ecd1
fix widevine/HLS in CMAF mode
barbibulle Apr 26, 2020
06c39d9
add dev Docker file
barbibulle Apr 26, 2020
909f419
Enable easier integration as a subproject
dimitry-ishenko Apr 30, 2020
83b2b41
Add option not to build example applications
dimitry-ishenko Apr 30, 2020
a65655f
add sdk upload step
barbibulle May 2, 2020
b72bd5c
trigger on releases
barbibulle May 2, 2020
a4a403b
rename job
barbibulle May 2, 2020
5a78f7e
build on push
barbibulle May 2, 2020
35cd709
prep for r631
barbibulle Apr 26, 2020
8f7539c
add build task
barbibulle Apr 27, 2020
ce5333b
wip
barbibulle Apr 27, 2020
87162d9
wip
barbibulle Apr 27, 2020
ff6e88f
prep for r633
barbibulle Apr 27, 2020
4d1e359
wip
barbibulle Apr 27, 2020
f0e4e1b
wip
barbibulle Apr 27, 2020
9742e09
wip
barbibulle Apr 27, 2020
36e37af
update windows python wrappers
barbibulle Apr 28, 2020
6b75838
prep for r634
barbibulle Apr 28, 2020
7ff69b9
default to python3 in dev docker
barbibulle Apr 28, 2020
f757047
wip
barbibulle Apr 28, 2020
74a0170
fix typo
barbibulle Apr 28, 2020
faa09ef
wip
barbibulle May 2, 2020
c8b750e
allow untagged releases
barbibulle May 2, 2020
5291428
use make subdirs
barbibulle May 2, 2020
4eb0825
fix CI
barbibulle May 2, 2020
ed440b7
use per-platform python3 command
barbibulle May 2, 2020
eecd02e
Merge pull request #497 from dimitry-ishenko/updates
barbibulle May 2, 2020
7d4cfcf
Merge pull request #491 from bvc3at/457_dash_representation_id
barbibulle May 2, 2020
fa45184
add audio track selection option
barbibulle May 3, 2020
3218781
allow setting language codes in mp4mux
barbibulle May 3, 2020
b94a2a3
Fix compilation with MinGW-w64
dimitry-ishenko May 3, 2020
697b0df
Merge pull request #500 from dimitry-ishenko/fixes
barbibulle May 3, 2020
4916daf
add support for track labels
barbibulle May 3, 2020
560983e
allow full pssh boxes as input for widevine header
barbibulle May 17, 2020
5b69388
add dashif:laurl for clearkey
barbibulle May 18, 2020
7e839bc
maintain docker file version
barbibulle May 18, 2020
8b45750
fix #505
barbibulle May 18, 2020
17e26f7
fix lgtm warning
barbibulle May 18, 2020
b4a6fd5
fix #507
barbibulle May 18, 2020
13a6e92
fix #508
barbibulle May 18, 2020
c9f2c53
fix #511
barbibulle May 18, 2020
86f86fb
fix JSON string escaping
barbibulle May 22, 2020
158655e
use the right types
barbibulle May 22, 2020
a63a5f3
fix widevine pssh payload
barbibulle May 30, 2020
80d4919
prep for r635
barbibulle May 30, 2020
729b9d6
better windows build
barbibulle May 31, 2020
b0a96c8
no message
barbibulle May 31, 2020
dc198be
fix windows compiler flags
barbibulle May 31, 2020
3065a54
detect Dolby Vision when encrypting so that NAL units are handled cor…
barbibulle Jun 4, 2020
99d7d8c
prep for r636
barbibulle Jun 6, 2020
e6c7cda
fix #517
barbibulle Jun 12, 2020
635056f
fix #522
barbibulle Jun 13, 2020
174b948
prep for r637
barbibulle Jun 13, 2020
e6e93f5
new inspector API
barbibulle Nov 16, 2020
5979f3d
Fix docker build install error
Dec 8, 2020
be15647
account for last sample when at EOS
barbibulle Feb 8, 2021
5af4601
fix LGTM warnings
barbibulle Feb 8, 2021
e02becc
add UTF-8 support on Windows
barbibulle Feb 8, 2021
53536a5
better handling of USAC signaling
barbibulle Mar 8, 2021
0735fe8
add AV1 support
barbibulle Mar 26, 2021
71c0074
add av1 files and remove deprecated option from vs2019 build
barbibulle Apr 11, 2021
1c126fb
fix #597
barbibulle Apr 11, 2021
caa70bd
wip
barbibulle Jun 10, 2020
2e29350
sample description cleanups
barbibulle Mar 29, 2021
0c77057
reverse python tools changes until they can be refactored
barbibulle Apr 12, 2021
71bac93
Check for null descriptor
dimitry-ishenko May 12, 2021
f69a9c7
Update m_sampleCount after successfully reading in m_Entries
dimitry-ishenko May 12, 2021
bb27955
add multi-bitrate audio support
barbibulle Jun 13, 2021
76e9d65
new MkDocs docs
barbibulle Jun 13, 2021
bf0880c
prep for r638
barbibulle Jun 13, 2021
11c1e69
fix g++ warnings
barbibulle Jun 13, 2021
4f813a9
update SDK references
barbibulle Jun 13, 2021
606d81e
fix warnings
barbibulle Jun 13, 2021
61e4f92
minor doc update
barbibulle Jun 15, 2021
4779ce9
fix lgtm warning
barbibulle Jun 15, 2021
8a2bf30
fix lgtm warning
barbibulle Jun 15, 2021
40cf5f4
add support for xhe-aac in mp4fragment
barbibulle Jul 22, 2021
83c48e6
prep for r639
barbibulle Jul 22, 2021
c129998
Merge pull request #607 from dimitry-ishenko/issue-605
barbibulle Jul 24, 2021
d124bed
fix #617
barbibulle Jul 24, 2021
31e9bc9
Merge branch 'master' of https://github.com/axiomatic-systems/Bento4
barbibulle Jul 24, 2021
5abeaa0
update links for r639
barbibulle Jul 24, 2021
ba95f55
Add support for cmake install
hjmallon Jul 9, 2021
242712a
Update README.md
rgalv-Dolby Jul 27, 2021
b0eb46e
Merge pull request #621 from hjmallon/pr.hunterize-1.6.0-638
barbibulle Aug 4, 2021
481c271
Merge pull request #606 from dimitry-ishenko/issue-604
barbibulle Aug 4, 2021
5922ba7
set m_SampleCount even when m_SampleSize != 0
barbibulle Aug 4, 2021
cab6b63
Update README.md
rgalv-Dolby Sep 10, 2021
82881bd
Add missed AP4_DEFINE_DYNAMIC_CAST_ANCHOR()
nkh-lab Oct 19, 2021
3dc8d58
Merge pull request #654 from nkh-lab/fix-android-ndk
barbibulle Oct 19, 2021
1865319
hevcinfo: check buffer size
dimitry-ishenko Oct 23, 2021
d83f07c
avcinfo: check buffer size
dimitry-ishenko Oct 23, 2021
55d4ed8
fix build error.
kuroishi Nov 16, 2021
d1d218e
add multi-segment option for mp4encrypt
barbibulle Dec 20, 2021
0a2d33f
small cleanup
barbibulle Dec 20, 2021
ddeed1e
copy of file name may not be NUL-terminated
lfaureyt Feb 7, 2022
ffea12e
fix #434
barbibulle Feb 28, 2022
46dd88c
fix #667
barbibulle Feb 28, 2022
151c3ee
fix #663
barbibulle Mar 20, 2022
4d8e1fc
fix #679
barbibulle Mar 20, 2022
802ad35
Add Dolby Digital Plus Atmos signaling for HLS
XingzhaoYun Mar 21, 2022
35a8642
add --allow-cache option
barbibulle May 1, 2022
1954c9e
fix #545
barbibulle May 1, 2022
f9a3a4e
Merge pull request #684 from DolbyLaboratories/dolby/ddp_hls
barbibulle May 1, 2022
a1ebca1
Merge pull request #670 from lfaureyt/patch-1
barbibulle May 1, 2022
c61258c
Merge pull request #658 from kuroishi/fix-make-build
barbibulle May 1, 2022
8315f5a
Merge pull request #656 from dimitry-ishenko/issue-610
barbibulle May 1, 2022
9d058ca
Merge pull request #655 from dimitry-ishenko/issue-609
barbibulle May 1, 2022
7371302
Merge pull request #628 from rgalv-Dolby/patch-1
barbibulle May 1, 2022
fffb5c8
Merge pull request #566 from gopiio/master
barbibulle May 1, 2022
33331ce
fix #691
barbibulle May 1, 2022
ce1d741
Merge commit 'fffb5c80667fc9fcad837886c80a2c08acd376d1'
barbibulle May 1, 2022
6cf4522
fix #652
barbibulle May 1, 2022
d02ef82
fix #690
barbibulle May 1, 2022
a115045
1. support Dolby Digital Plus with Atmos.
XingzhaoYun Jun 1, 2022
1f295b8
Merge pull request #713 from DolbyLaboratories/dolby/ddp_dash
barbibulle Jun 4, 2022
f5076f5
add AC4 signaling including IMS to DASH
XingzhaoYun Jun 7, 2022
4fead36
remove channel based immersive since it's not necessary in this contr…
XingzhaoYun Jun 7, 2022
4591771
code clean for removing unnecessary variables for this branch
XingzhaoYun Jun 7, 2022
7ddec0d
code clean: remove unused variable
XingzhaoYun Jun 7, 2022
7d16ead
Added arm64 build
ivanjx Jul 31, 2022
6958066
Merge pull request #715 from DolbyLaboratories/dolby/ac4_dash
barbibulle Jul 31, 2022
458f251
fix #734
barbibulle Jul 31, 2022
39bbaef
fix #733
barbibulle Jul 31, 2022
931d076
fix #732
barbibulle Jul 31, 2022
df9ba99
fix #732
barbibulle Jul 31, 2022
5b6535c
Improve the string buffer size calculations
AlecJY Aug 22, 2022
e5a82e4
Merge pull request #743 from AlecJY/fix-wchar
barbibulle Aug 24, 2022
3fdccc9
be more resilient to invalid saio/saiz tables
barbibulle Sep 5, 2022
37298c3
stricter parsing
barbibulle Sep 5, 2022
877e8ca
Add vcpkg installation instructions
FrankXie05 Sep 8, 2022
5b7cc25
fix #751
barbibulle Sep 18, 2022
6ab668d
support senc with 0 samples even when stream is not compliant
barbibulle Oct 1, 2022
4df7274
fix for regression (trun boxes with no record fields)
barbibulle Oct 2, 2022
12b1589
Merge pull request #752 from FrankXie05/vcpkg-instructions
barbibulle Oct 8, 2022
5e7bb34
Merge pull request #735 from ivanjx/build-arm64
barbibulle Oct 8, 2022
a3496ef
fix AC4 bitstream version info.
XingzhaoYun Oct 17, 2022
7a809b2
1.support 'avc1', 'avc3', 'hvc1', 'hev1' format.
XingzhaoYun Oct 17, 2022
8022068
Improve Dolby Vision sample description for json format.
XingzhaoYun Oct 17, 2022
4916482
1. add VIDEO-RANGE tag.
XingzhaoYun Oct 17, 2022
1b3c23d
fix Dolby Digital Plus with Atmos signaling typo.
XingzhaoYun Oct 17, 2022
7fe0287
remove warning for missing brands for Dolby vision in MP4 container.
XingzhaoYun Oct 17, 2022
ff75cbb
fix endian detection to be portable to all gcc archs
vorlonofportland Oct 16, 2022
c3b666f
Merge pull request #798 from DolbyLaboratories/dolby/dovi_hls
barbibulle Nov 21, 2022
f1528f6
Merge pull request #813 from basilgello/ppc64el-fix-upstream
barbibulle Nov 21, 2022
c6e8d67
Add CodeQL workflow for GitHub code scanning
lgtm-migrator Nov 25, 2022
e9fe393
Fix endian detection for powerpc
marillat Jan 18, 2023
ab5591e
Merge pull request #825 from marillat/patch-2
barbibulle Feb 4, 2023
4371ab5
fix AC4 memory leaks.
XingzhaoYun Feb 23, 2023
4152daf
fix losing synchronization issue for Dolby Digital Plus due to an unr…
XingzhaoYun Feb 27, 2023
e6e085d
Bump pymdown-extensions from 7.0 to 10.0 in /Documents/MkDocs
dependabot[bot] May 15, 2023
d2c1ab6
Merge pull request #857 from axiomatic-systems/dependabot/pip/Documen…
barbibulle May 20, 2023
350d4f4
Bump mkdocs from 1.1 to 1.2.3 in /Documents/MkDocs
dependabot[bot] May 20, 2023
4a45f65
Merge pull request #834 from DolbyLaboratories/dolby/ac4_fix
barbibulle May 20, 2023
489d1f3
Merge pull request #836 from DolbyLaboratories/dolby/ddp_fix
barbibulle May 20, 2023
5d42049
Merge pull request #858 from axiomatic-systems/dependabot/pip/Documen…
barbibulle May 20, 2023
472511c
Merge pull request #817 from lgtm-migrator/codeql
barbibulle May 20, 2023
e385097
don't use ReadByte
barbibulle May 20, 2023
ff3e1b9
add newslines for readability
barbibulle May 20, 2023
af3d8dd
prep for r640
barbibulle May 20, 2023
8c08fa1
update doc
barbibulle May 20, 2023
cbea428
add support for Apple silicon builds
barbibulle May 29, 2023
c1fb44c
fix #859
barbibulle May 29, 2023
cd54ee1
fix #856
barbibulle May 29, 2023
ecf9151
Update README.md
barbibulle Jun 10, 2023
6c67ff0
support 64-bit mdat in file writer
barbibulle Jun 10, 2023
4c9c255
fix-#772-bug3
gondow Jun 26, 2023
167bdc4
fix-#750
gondow Jun 30, 2023
3934616
Merge pull request #876 from gondow/fix-#772-bug3
barbibulle Jul 24, 2023
19c6839
Merge pull request #877 from gondow/fix-#750
barbibulle Jul 27, 2023
010d211
Update mp4-dash.py
xavierlaffargue Aug 3, 2023
57aacc7
Update index.md
xavierlaffargue Aug 4, 2023
2e2dc01
Merge pull request #885 from xavierlaffargue/master
barbibulle Aug 9, 2023
47a959d
add AC4 HLS signaling for IMS and CBI(channel based immersive).
XingzhaoYun Nov 6, 2023
7fc31d2
Update Ap4CommonEncryption.cpp
riba101 Nov 16, 2023
feb99f5
Merge pull request #902 from riba101/master
barbibulle Nov 18, 2023
f826f46
Merge pull request #901 from DolbyLaboratories/dolby/ac4_ims
barbibulle Nov 18, 2023
6de2284
don't force CMAKE_OSX_ARCHITECTURES
barbibulle Nov 25, 2023
dc26485
prep for r641
barbibulle Nov 25, 2023
63e4deb
fix for windows
barbibulle Nov 25, 2023
1529b83
update version in docs
barbibulle Nov 25, 2023
65cb559
Fix logic of key_info checking
joshbuddy Jan 5, 2024
3c67a8e
Fix Level and BitDepth in AV1 Codec String
saisrirammortha Jan 11, 2024
c5874c0
Merge pull request #915 from joshbuddy/master
barbibulle Jan 14, 2024
c9f5d42
fix #840
barbibulle Feb 17, 2024
76e3a3b
fix #844
barbibulle Feb 17, 2024
66e2922
fix #914
barbibulle Feb 17, 2024
a979915
fix #873
barbibulle Feb 20, 2024
e32528c
fix #894
barbibulle Mar 1, 2024
f13abef
fix leak
barbibulle Mar 1, 2024
4d9da52
fix axiomatic-systems#925
thinkski Mar 8, 2024
6649d9a
Update mp4utils.py
ftyp Mar 14, 2024
8637c32
Update mp4-dash.py
ftyp Mar 14, 2024
147f15a
Fix overflow issues found by fuzzer
roticv Mar 20, 2024
3ed084f
Add boundary checks to Ap4IproAtom
roticv Mar 20, 2024
61639cc
Merge pull request #933 from roticv/master
barbibulle Mar 22, 2024
ea90ccd
Merge pull request #926 from thinkski/master
barbibulle Mar 22, 2024
525027c
Merge pull request #932 from ftyp/fix-eac3-smooth
barbibulle Mar 22, 2024
995f954
Fix Smooth Streaming Client Manifest URLs
ftyp Mar 22, 2024
06f0d06
Add boundary checks to Ap4OdheAtom
roticv Mar 23, 2024
84b95d4
More boundary checks for Ap4SaioAtom
roticv Mar 23, 2024
f9f6b22
Add boundary checks to Ap4SbgpAtom
roticv Mar 24, 2024
8806fe2
Prevent overflow in boundary check for Ap4SbgpAtom
roticv Mar 27, 2024
b977973
Boundary checks in Ap4ContainerAtom
roticv Mar 28, 2024
26df396
Add boundary checks for Ap4StsdAtom
roticv Apr 2, 2024
b2e4c13
Merge pull request #935 from roticv/master
barbibulle Apr 6, 2024
ad05057
Merge pull request #934 from ftyp/fix-smooth-ismc
barbibulle Apr 6, 2024
f6bcd2f
fix #952
barbibulle Apr 27, 2024
b92b7c3
g++/c++ 20 compat
barbibulle May 4, 2024
4c5b67f
add gh LICENSE file
barbibulle Jun 17, 2024
3fcc8e8
Merge branch 'master' of https://github.com/axiomatic-systems/Bento4
barbibulle Jun 17, 2024
7493cd2
update license file
barbibulle Jun 17, 2024
874c264
Merge pull request #918 from saisrirammortha/master
barbibulle Jun 17, 2024
0b36755
Merge remote-tracking branch 'upstream/master' into satheesh/2024-08-…
sath33sh Aug 2, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
289 changes: 289 additions & 0 deletions .github/LICENSE

Large diffs are not rendered by default.

57 changes: 57 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
# CI Workflow for Bento4
name: CI

# Controls when the action will run. Triggers the workflow on push or pull request
# events but only for the master branch
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]

jobs:
build:
name: Bento4 Build ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: ['ubuntu-latest', 'macos-latest', 'windows-latest']
include:
- os: ubuntu-latest
CMAKE_OPTIONS: -DCMAKE_BUILD_TYPE=Release
CMAKE_OUTPUT_SUBDIR: x86_64-unknown-linux
PYTHON3_COMMAND: python3
- os: macos-latest
CMAKE_OPTIONS: -G Xcode
CMAKE_OUTPUT_SUBDIR: universal-apple-macosx
PYTHON3_COMMAND: python3
- os: windows-latest
CMAKE_OPTIONS: -DCMAKE_BUILD_TYPE=Release
CMAKE_OUTPUT_SUBDIR: x86_64-microsoft-win32
PYTHON3_COMMAND: py

steps:
# Check out the repository under $GITHUB_WORKSPACE, so that the jobs can access it
- uses: actions/checkout@v2

# CMake Build
- name: Release Build with CMake
run: |
mkdir cmakebuild
cd cmakebuild
mkdir ${{matrix.CMAKE_OUTPUT_SUBDIR}}
cd ${{matrix.CMAKE_OUTPUT_SUBDIR}}
cmake ${{matrix.CMAKE_OPTIONS}} ../..
cmake --build . --config Release

# Create SDK
- name: Create SDK
if: github.event_name == 'push'
run: ${{matrix.PYTHON3_COMMAND}} Scripts/SdkPackager.py

# Upload the SDK
- name: Upload SDK
if: github.event_name == 'push'
uses: actions/upload-artifact@v2
with:
path: SDK/*.zip
41 changes: 41 additions & 0 deletions .github/workflows/codeql.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
name: "CodeQL"

on:
push:
branches: [ "master" ]
pull_request:
branches: [ "master" ]
schedule:
- cron: "58 23 * * 4"

jobs:
analyze:
name: Analyze
runs-on: ubuntu-latest
permissions:
actions: read
contents: read
security-events: write

strategy:
fail-fast: false
matrix:
language: [ javascript, cpp, python ]

steps:
- name: Checkout
uses: actions/checkout@v3

- name: Initialize CodeQL
uses: github/codeql-action/init@v2
with:
languages: ${{ matrix.language }}
queries: +security-and-quality

- name: Autobuild
uses: github/codeql-action/autobuild@v2

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2
with:
category: "/language:${{ matrix.language }}"
27 changes: 25 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -17,18 +17,41 @@ Build/Targets/x86-microsoft-win32-vs2012/**/Release
Build/Targets/x86-microsoft-win32-vs2012/**/*.suo
Build/Targets/x86-microsoft-win32-vs2012/**/*.user
Build/Targets/x86-microsoft-win32-vs2012/**/*.sdf
Build/Targets/x86-microsoft-win32-vs2015/**/Debug
Build/Targets/x86-microsoft-win32-vs2015/**/Release
Build/Targets/x86-microsoft-win32-vs2015/**/*.suo
Build/Targets/x86-microsoft-win32-vs2015/**/*.user
Build/Targets/x86-microsoft-win32-vs2015/**/*.sdf
Build/Targets/x86_64-microsoft-win32-vs2015/**/Debug/
Build/Targets/x86_64-microsoft-win32-vs2015/**/Release
Build/Targets/x86_64-microsoft-win32-vs2019/**/Debug/
Build/Targets/x86_64-microsoft-win32-vs2019/**/Release
Build/Targets/universal-apple-macosx/build
Build/Targets/universal-apple-macosx/Bento4.xcodeproj/xcuserdata
Build/Targets/universal-apple-Build/Targets/arm-android-linux
Build/Targets/universal-apple-macosx/cov-int
Build/Targets/universal-apple-macosx/Bento4.xcodeproj/xcshareddata
Build/Targets/universal-apple-macosx/Bento4.xcodeproj/project.xcworkspace/xcuserdata
.svn
.sconsign.dblite
Bento4.xccheckout
Build/Targets/arm-android-linux
Build/Targets/universal-apple-macosx/cov-int
Bento4.xcscmblueprint
Build/Targets/cmake
dist
lib
shaka-player.uncompiled.js
third_party
.suo
*.db
*.user
.vscode
*.sdf
*.opendb
IDEWorkspaceChecks.plist
.scannerwork
Test/Output
.coverage
coverage_html
Test/Output
Build/Targets/x86_64-microsoft-win32-vs2019/.vs
Documents/MkDocs/site
6 changes: 6 additions & 0 deletions .lgtm.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
path_classifiers:
docs:
- Documents

test:
- Test
19 changes: 19 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
language: cpp

matrix:
include:
- os: osx
osx_image: xcode9.2
env:
- BUILD_DIR=Build/Targets/universal-apple-macosx
- BUILD_SCRIPT="xcodebuild -target All -configuration Release"

- os: linux
env:
- BUILD_DIR=.
- BUILD_SCRIPT="mkdir cmakebuild && cd cmakebuild && cmake -DCMAKE_BUILD_TYPE=Release .. && make"

script:
- cd $BUILD_DIR
- eval "${BUILD_SCRIPT}"

5 changes: 2 additions & 3 deletions Build/Build.scons
Original file line number Diff line number Diff line change
Expand Up @@ -156,10 +156,9 @@ LibraryModule(name = 'Bento4',
build_source_files = env['AP4_SYSTEM_SOURCES'],
included_modules = 'Config')

for name in ['Mp4Dump', 'Mp4Info', 'Mp4Edit', 'Mp4Encrypt', 'Mp4Decrypt', 'Mp4Tag', 'Mp4Extract', 'Mp4RtpHintInfo', 'Mp42Aac', 'Mp42Avc', 'Mp42Hevc', 'Mp42Ts', 'Mp42Hls', 'Mp4DcfPackager', 'Mp4Fragment', 'Mp4Compact', 'Mp4Split', 'Mp4AudioClip', 'Mp4Mux', 'AvcInfo', 'HevcInfo']:
Executable(name, source_dir='C++/Apps/'+name)
for dir in GlobSources('C++/Apps', ['*']):
Executable(os.path.basename(dir), source_dir=dir)

Executable('Aac2Mp4', source_dir='C++/Apps/Aac2Mp4')
Executable('CryptoTest', source_dir='C++/Test/Crypto')
Executable('AvcTrackWriterTest', source_dir='C++/Test/Avc')
Executable('PassthroughWriterTest', source_dir='C++/Test/PassthroughWriter')
Expand Down
36 changes: 36 additions & 0 deletions Build/Docker/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
FROM alpine:latest

# Setup environment variables
ENV BENTO4_VERSION 1.6.0-641

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

# Copy Sources
COPY ./ /tmp/bento4

# Build
RUN rm -rf /tmp/bento4/cmakebuild && mkdir -p /tmp/bento4/cmakebuild/x86_64-unknown-linux && cd /tmp/bento4/cmakebuild/x86_64-unknown-linux && cmake -DCMAKE_BUILD_TYPE=Release ../.. && make

# Install
RUN cd /tmp/bento4 && python3 Scripts/SdkPackager.py x86_64-unknown-linux . cmake && mkdir /opt/bento4 && mv /tmp/bento4/SDK/Bento4-SDK-*.x86_64-unknown-linux/* /opt/bento4

# === Second Stage ===
FROM alpine:latest
ARG BENTO4_VERSION
LABEL "com.example.vendor"="Axiomatic Systems, LLC."
LABEL version=$BENTO4_VERSION
LABEL maintainer="[email protected]"

# Setup environment variables
ENV PATH=/opt/bento4/bin:${PATH}

# Install Dependencies
RUN apk --no-cache add ca-certificates bash python3 libstdc++

# Copy Binaries
COPY --from=0 /opt/bento4 /opt/bento4

WORKDIR /opt/bento4

CMD ["bash"]
27 changes: 27 additions & 0 deletions Build/Docker/Dockerfile.dev
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# Docker file used to create an environment with which to build a release

FROM ubuntu:bionic

# Install Dependencies
# Upgrade any ubuntu packages
RUN apt-get update && apt-get upgrade -y && apt-get install -y \
build-essential \
cmake \
python3 \
python3-pip \
git &&\
pip3 install invoke &&\
update-alternatives --install /usr/bin/python python /usr/bin/python3 1 &&\
update-alternatives --set python /usr/bin/python3

# Add a user
ARG USER=bento4
ARG UID=1000
ARG GID=1000
RUN useradd -m ${USER} --uid=${UID}

# Run as the user we have setup
USER ${UID}:${GID}
WORKDIR /home/${USER}

CMD ["bash"]
36 changes: 36 additions & 0 deletions Build/Docker/arm.Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
FROM arm64v8/alpine:latest

# Setup environment variables
ENV BENTO4_VERSION 1.6.0-639

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

# Copy Sources
COPY ./ /tmp/bento4

# Build
RUN rm -rf /tmp/bento4/cmakebuild && mkdir -p /tmp/bento4/cmakebuild/arm64-unknown-linux && cd /tmp/bento4/cmakebuild/arm64-unknown-linux && cmake -DCMAKE_BUILD_TYPE=Release ../.. && make -j$(nproc)

# Install
RUN cd /tmp/bento4 && python3 Scripts/SdkPackager.py arm64-unknown-linux . cmake && mkdir /opt/bento4 && mv /tmp/bento4/SDK/Bento4-SDK-*.arm64-unknown-linux/* /opt/bento4

# === Second Stage ===
FROM arm64v8/alpine:latest
ARG BENTO4_VERSION
LABEL "com.example.vendor"="Axiomatic Systems, LLC."
LABEL version=$BENTO4_VERSION
LABEL maintainer="[email protected]"

# Setup environment variables
ENV PATH=/opt/bento4/bin:${PATH}

# Install Dependencies
RUN apk --no-cache add ca-certificates bash python3 libstdc++

# Copy Binaries
COPY --from=0 /opt/bento4 /opt/bento4

WORKDIR /opt/bento4

CMD ["bash"]
8 changes: 8 additions & 0 deletions Build/Makefiles/Lib.mak
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@ CORE_SOURCES = \
Ap4AtomFactory.cpp \
Ap4AtomSampleTable.cpp \
Ap4AvccAtom.cpp \
Ap4VpccAtom.cpp \
Ap4Av1cAtom.cpp \
Ap4ByteStream.cpp \
Ap4Co64Atom.cpp \
Ap4ContainerAtom.cpp \
Expand Down Expand Up @@ -112,17 +114,23 @@ CORE_SOURCES = \
Ap4TencAtom.cpp \
Ap4TfdtAtom.cpp \
Ap4PdinAtom.cpp \
Ap4Ac4Utils.cpp \
Ap4AinfAtom.cpp \
Ap4BlocAtom.cpp \
Ap4PsshAtom.cpp \
Ap4Dec3Atom.cpp \
Ap4Dac4Atom.cpp \
Ap4Dac3Atom.cpp \
Ap4SidxAtom.cpp \
Ap4HvccAtom.cpp \
Ap4DvccAtom.cpp \
Ap4SgpdAtom.cpp \
Ap4SbgpAtom.cpp \
Ap4NalParser.cpp \
Ap4Ac4Parser.cpp \
Ap4AvcParser.cpp \
Ap4Ac3Parser.cpp \
Ap4Eac3Parser.cpp \
Ap4HevcParser.cpp \
Ap4SegmentBuilder.cpp \

Expand Down
35 changes: 35 additions & 0 deletions Build/Makefiles/Mp4IframeIndex.mak
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
##########################################################################
#
# Mp4Info Program
#
# (c) 2002-2008 Axiomatic Systems, LLC
#
##########################################################################
all: mp4iframeindex

##########################################################################
# includes
##########################################################################
include $(BUILD_ROOT)/Makefiles/Lib.exp

##########################################################################
# targets
##########################################################################
TARGET_SOURCES = Mp4IframeIndex.cpp

##########################################################################
# make path
##########################################################################
VPATH += $(SOURCE_ROOT)/Apps/Mp4IframeIndex

##########################################################################
# includes
##########################################################################
include $(BUILD_ROOT)/Makefiles/Rules.mak

##########################################################################
# rules
##########################################################################
mp4iframeindex: $(TARGET_OBJECTS) $(TARGET_LIBRARY_FILES)
$(LINK) $(TARGET_OBJECTS) -o $@ $(LINK_LIBRARIES)

12 changes: 8 additions & 4 deletions Build/Makefiles/TopLevel.mak
Original file line number Diff line number Diff line change
Expand Up @@ -47,9 +47,9 @@ export LIBRARIES_CPP
.PHONY: Setup
Setup:
mkdir $(OUTPUT_DIR)

# ------- Apps -----------
ALL_APPS = mp4dump mp4info mp42aac mp42ts aac2mp4 mp4decrypt mp4encrypt mp4edit mp4extract mp4rtphintinfo mp4tag mp4dcfpackager mp4fragment mp4compact mp4split mp4mux avcinfo hevcinfo mp42hevc mp42hls
ALL_APPS = mp4dump mp4info mp42aac mp42ts aac2mp4 mp4decrypt mp4encrypt mp4edit mp4extract mp4rtphintinfo mp4tag mp4dcfpackager mp4fragment mp4compact mp4split mp4mux avcinfo hevcinfo mp42hevc mp42hls mp4iframeindex
export ALL_APPS

##################################################################
Expand All @@ -72,7 +72,7 @@ apps: $(ALL_APPS)
sdk: lib apps
$(TITLE)
@$(INVOKE_SUBMAKE) -f $(BUILD_ROOT)/Makefiles/SDK.mak

mp4dump: lib
$(TITLE)
@$(INVOKE_SUBMAKE) -f $(BUILD_ROOT)/Makefiles/Mp4Dump.mak
Expand Down Expand Up @@ -132,7 +132,7 @@ mp4split: lib
mp4compact: lib
$(TITLE)
@$(INVOKE_SUBMAKE) -f $(BUILD_ROOT)/Makefiles/Mp4Compact.mak

mp4mux: lib
$(TITLE)
@$(INVOKE_SUBMAKE) -f $(BUILD_ROOT)/Makefiles/Mp4Mux.mak
Expand All @@ -153,6 +153,10 @@ mp42hls: lib
$(TITLE)
@$(INVOKE_SUBMAKE) -f $(BUILD_ROOT)/Makefiles/Mp42Hls.mak

mp4iframeindex: lib
$(TITLE)
@$(INVOKE_SUBMAKE) -f $(BUILD_ROOT)/Makefiles/Mp4IframeIndex.mak

##################################################################
# includes
##################################################################
Expand Down
Loading
Loading