Skip to content
This repository was archived by the owner on Jul 22, 2025. It is now read-only.

[do not submit] [IM360-166] no safestring and glog for android v1.8.0 #78

Draft
wants to merge 488 commits into
base: V1.8.0
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
488 commits
Select commit Hold shift + click to select a range
b08550c
Fix bugs in multi-decoder when status changes. 1. Correct EOS status …
luoying1234 Aug 19, 2020
b8f9229
Enable openhevc decoder plugin
U1X6WK Aug 25, 2020
a977612
Add missing bc install and fix error in FFmpeg install
U1X6WK Aug 26, 2020
2f3252a
Update M2HQ tracepoint. 1. Add track_selection/stitch tracepoint in d…
luoying1234 Aug 25, 2020
0fb7519
Update shell script of motion to high quality.
luoying1234 Sep 1, 2020
4a228c4
Extractor track packing optimization 1. correct additional tiles numb…
ChenXiaomin0306 Aug 28, 2020
9a27b8a
Add support for dynamically changed extractor track layout Meanwhile …
ChenXiaomin0306 Sep 3, 2020
f0ff6a9
Add fixed resolution mode in extractor track packing
ChenXiaomin0306 Sep 3, 2020
b550d6b
Add option 'fixed_extractors_res' in OMAF packing muxer plugin Suppor…
U1X6WK Sep 4, 2020
7a6e24e
Remove the hard code in getting region wising packing information to …
ChenXiaomin0306 Sep 8, 2020
3b24527
Fix the rendering issue of rotated cubemap face in player.
luoying1234 Sep 8, 2020
0a350a5
Add cubemap transform type document and add cubemap render rotation d…
luoying1234 Sep 9, 2020
e81f24b
Update documents for how to pack cube-map projected input source
ChenXiaomin0306 Sep 10, 2020
b1b16d4
Add Cubemap Content Coverage Calculation by Shape Type 0
dahanhan Sep 14, 2020
2963560
Optimize viewport prediction strategy in track selection.
luoying1234 Sep 18, 2020
3b18fff
Adjust extractor track packed sub-picture width/height ratio to a nor…
ChenXiaomin0306 Sep 18, 2020
bbf7317
Add downloaded segment trace codes in OmafDashAccess library
ChenXiaomin0306 Sep 18, 2020
d84b007
Adjust packed sub-picture width/height ratio to a normal range for la…
ChenXiaomin0306 Sep 18, 2020
1a59ff5
Enable glog wrapper in MainEncoder
U1X6WK Sep 21, 2020
4413941
Optimize tile selection when source is cubemap.
dahanhan Sep 18, 2020
e75ddb2
Enable logging callback mechanism 1. Enable common logging callback m…
ChenXiaomin0306 Sep 24, 2020
79fc9b5
Add ffmpeg dependent header file in CMakeLists.txt because the depend…
ChenXiaomin0306 Sep 27, 2020
b52a069
correct ffmpeg dependency
ChenXiaomin0306 Sep 27, 2020
d9a869b
Fixed low resolution due to coordinates of 2D faces are not transferr…
dahanhan Sep 25, 2020
5fbc93b
Add external logging callback for omaf packing muxer plugin and corre…
U1X6WK Sep 27, 2020
096b85f
Upgrade FFmpeg to version 4.3.1 Also merge libopenhevc patch and enab…
U1X6WK Sep 27, 2020
3ab5e14
Remove the dependency for boost in logging mechanism Meanwhile update…
ChenXiaomin0306 Sep 28, 2020
dbb927f
Add logcallback mechanism
dahanhan Sep 28, 2020
82b5695
Update floating point values and two params for log printing
dahanhan Sep 29, 2020
c89756b
Add external log callback mechanism.
luoying1234 Sep 29, 2020
08331ae
Enable logging callback in OmafDashAccess
ChenXiaomin0306 Sep 29, 2020
ccfbc15
Enable logging callback in packing plugin
ChenXiaomin0306 Sep 29, 2020
1f922f0
Fix string type log output issue
ChenXiaomin0306 Sep 30, 2020
e4648f9
Remove unnecessary tile selection when cubemap mode is used
dahanhan Oct 10, 2020
eb94152
Add external logging callback
U1X6WK Oct 9, 2020
923f60a
Reset tile selection flag when viewport is changed
dahanhan Oct 13, 2020
0c7b03c
update omaf dash access plugin for API change
U1X6WK Oct 13, 2020
c3c028a
Add extractor track packing mode for Cubemap projection type Meanwhil…
ChenXiaomin0306 Oct 10, 2020
bf21616
ERP tile selection accuracy improvement and add interface for new uni…
dahanhan Oct 19, 2020
6ad3f94
Enable extractor track mode parsing for cubemap projection type
ChenXiaomin0306 Oct 13, 2020
edb2245
optimize yaw and pitch steps in going through all viewports for extra…
ChenXiaomin0306 Oct 22, 2020
19870d3
adjust extractor track selection method
ChenXiaomin0306 Oct 22, 2020
18fab35
adjust default fov vertical angle to align with that in render
U1X6WK Oct 23, 2020
416270f
Update glog install steps
U1X6WK Oct 13, 2020
edb27cf
Fix glog error of too many parameters.
luoying1234 Oct 23, 2020
b01e8a3
Enable OMAF Sample on bmra case of CIR
U1X6WK Oct 27, 2020
88898f8
Adjust packet stitching layout under the limitation of max decode wid…
luoying1234 Oct 27, 2020
1517015
Fix TexSubImage2D core dump issue. 1. Set pix_fmt in VideoDecoder Ini…
luoying1234 Nov 2, 2020
57edfbf
Adjust tiles stitching timing strategy 1. change tiles selection upda…
ChenXiaomin0306 Nov 3, 2020
b606362
Update CodecAppOption setting in head file
U1X6WK Nov 9, 2020
dfc6816
Enable minimal severity level of output log
U1X6WK Nov 10, 2020
f20a0e0
Update patch for openHEVC
U1X6WK Nov 10, 2020
ce8b541
Fix incorrect calculation of total duration in Mpd generator.
luoying1234 Nov 12, 2020
f6d1951
Optimize get track information function exectuting time
dahanhan Nov 12, 2020
fc258e8
Improve ERP and Cubemap tile selection result to avoid blurring area
dahanhan Nov 13, 2020
54939f9
Fix incorrect boundary check on 1x1 tile split case
U1X6WK Nov 17, 2020
11e3d4c
Add debug log for Mp4 Reader functions
dahanhan Nov 22, 2020
59548e9
Adjust PTS alignment mechanism in tiles stitching 1. change frame PTS…
ChenXiaomin0306 Nov 24, 2020
0d7f4b8
Fix corder area blur under ERP mode. The Down right point Y axis shou…
dahanhan Nov 24, 2020
0cdf81f
Fix incorrect EOS check in LocalWorkSession
U1X6WK Nov 26, 2020
f92791f
Correct new frame PTS when skipping frames happens 1. When the first …
ChenXiaomin0306 Nov 26, 2020
094a4d6
Fix cubemap blur issue VCD-2280 when viewport is close to polar 1. Wh…
dahanhan Nov 25, 2020
baf3d7c
Fix memleak issue when using viewport prediction plugin. 1. Update tr…
luoying1234 Nov 30, 2020
852f59f
Correct total duration in Mpd generator.
luoying1234 Dec 2, 2020
21df871
Fix the local mode in parallel coredump issue
U1X6WK Dec 4, 2020
23d0890
Remote WorkerServer quit issue fix
U1X6WK Dec 7, 2020
6f61126
Add media stream process plugin 1. create media stream process plugin…
ChenXiaomin0306 Nov 12, 2020
391f594
Add OMAF 2D audio packing support 1. add MP4AudioSampleEntry structur…
ChenXiaomin0306 Dec 10, 2020
900c424
Add trace points where is necessary for bandwidth data collection 1. …
dahanhan Nov 18, 2020
d082076
Fix memory leak on local mode
U1X6WK Dec 22, 2020
2c8ae31
Update OpenMedia process by adding StartStreaming interface.
luoying1234 Dec 18, 2020
8a5a91c
Enable android player. 1. Refine and adjust structure of player. 2. A…
luoying1234 Dec 22, 2020
69c2b8b
add audio packing support in omaf packing muxer plugin
U1X6WK Dec 25, 2020
a5f77f4
Add audio channel configuration item in MPD file for AAC track Meanwh…
ChenXiaomin0306 Dec 18, 2020
fdc2947
Enable audio track MPD parsing, segment downloading, segment parsing …
ChenXiaomin0306 Dec 24, 2020
d2bb0d0
Fix incorrect bitstreams number usage when creating VROmafPacking lib…
U1X6WK Dec 29, 2020
7522d5d
Enable audio media packet output in dash access demuxer
U1X6WK Dec 29, 2020
51a77de
Optimize ERP tile selection to reduce bandwidth occupation 1. Calcula…
dahanhan Dec 28, 2020
79c362b
Fix line mismatch error in FFmpeg patch
U1X6WK Dec 30, 2020
f0da1b0
Remove redundant ANDROID NDK macro usage 1. Remove _ANDROID_NDK_OPTIO…
dahanhan Jan 5, 2021
72e6981
Fix uninitialized pointer 1. A struct pointer is not initialized and …
dahanhan Dec 30, 2020
4b99a8b
Add panzoom APIs to open source branch
dahanhan Jan 4, 2021
371d259
Remove relative header dependency in 360API header The pose.h is used…
dahanhan Jan 5, 2021
aa09f36
Update shared library due to head file change
U1X6WK Jan 5, 2021
c807c41
fix build error caused by changes of head files
U1X6WK Jan 6, 2021
c094ec2
Check face property size only for cubemap projections The face proper…
dahanhan Jan 6, 2021
7fca1ce
Add DASH packing support for planar video stream 1. add planar projec…
ChenXiaomin0306 Jan 6, 2021
df1420f
Add one option for planar video source input in both distributed enco…
U1X6WK Jan 7, 2021
d89bfca
Add logs to monitor webrtc usage The webrtc usage is enabled already.…
dahanhan Dec 30, 2020
c789f40
Add interface to calculate the Pan moving speed 1. The pan moving spe…
dahanhan Jan 11, 2021
482ed9a
Add cubemap support in android player. 1. Add Cubemap Mesh in Java ap…
luoying1234 Jan 12, 2021
ee7e236
Add DASH de-packing support for planar video 1. add DASH parsing for …
ChenXiaomin0306 Jan 5, 2021
fc290da
Make 360SCVP standalone building passed 1. Update CMakeList.txt to ad…
dahanhan Jan 14, 2021
fce9299
Support planar projection format in player. 1. Add planar render and …
luoying1234 Jan 13, 2021
f7178df
Update files for brma case of CIR
U1X6WK Jan 12, 2021
21227e0
Update CHANGELOG doc
ChenXiaomin0306 Jan 14, 2021
da3cd0b
Update shared library due to head file changes
U1X6WK Jan 18, 2021
00192f4
Fix node-gyp version
daijh Aug 14, 2020
207c4f6
Update doc
daijh Aug 14, 2020
109404f
Update release badge version in README
U1X6WK Aug 14, 2020
101f826
Update owt-deps-webrtc to fix data channel issue. Prevent pointer fro…
daijh Sep 17, 2020
fc8a2a9
Implement rtcp fov feedback
daijh Sep 30, 2020
afd9e8e
Sync OVC dockerfile template
daijh Oct 10, 2020
6f0b78e
Update doc
daijh Oct 13, 2020
aa74697
1. Clean obsolete code 2. Remove macro LOW_LATENCY_USAGE 3. Unify med…
daijh Oct 16, 2020
8f1e7a9
Fix owt-server versoin
daijh Oct 27, 2020
2646cbf
Fix webrtc player deps build
daijh Oct 15, 2020
2cc82df
fix duplicated return and other warnings reported by compiler
inteltiger Aug 27, 2020
0bc2e08
Update Dockerfile
daijh Nov 10, 2020
181a2a4
Update Dockerfile for 360SCVP v1.2.0
daijh Nov 16, 2020
c7434d2
Update WebRTC media source to new player
daijh Nov 19, 2020
ea5bce4
Control server glog level
daijh Nov 20, 2020
c0e9e90
Fix sudo
daijh Dec 14, 2020
fe56dcd
Update doc
daijh Jan 5, 2021
fb8c6e6
Bug fix in android player. 1. Modify decoder creation method by mime …
luoying1234 Jan 19, 2021
0e3c9b8
Fix webrtc deps socket io version
daijh Jan 17, 2021
d14d7bf
Fix log error on RemoteWorkServer
U1X6WK Jan 19, 2021
269069c
Fix uninitialized data issues and correct android install script.
luoying1234 Jan 19, 2021
6205483
Fix floating point exception issue in TilesStitching thread.
luoying1234 Jan 20, 2021
dda01d7
Fix klockwork issues like uninitialized variable
ChenXiaomin0306 Jan 20, 2021
fade2c7
update doc for VROmafPacking and OmafDashAccess libraries
ChenXiaomin0306 Jan 20, 2021
fd628eb
Fix memleak issues.
luoying1234 Jan 22, 2021
5b975b7
Fix klockwork issues like memory leak and uninitialized variable
ChenXiaomin0306 Jan 21, 2021
bb98a9b
Update CHANGELOG and add plugins doc
ChenXiaomin0306 Jan 22, 2021
4ce5026
Update doc and remove unused dependency in android application.
luoying1234 Jan 22, 2021
7f130be
Fix klockwork issues and ProtexIP issues
ChenXiaomin0306 Jan 25, 2021
cbb65c6
Update configurations, typos, and code wrap in documentations
U1X6WK Jan 25, 2021
5d839e3
Cubemap tile selection optimization 1. Update tile selection methond …
dahanhan Jan 21, 2021
bc0468a
Fix klockwork issues
dahanhan Jan 26, 2021
2dcd21d
Add lttng trace for E2E latency measurement
U1X6WK Jan 25, 2021
ae368ed
Replace delete with safe delete macros If the freed memory is for a s…
dahanhan Jan 26, 2021
753ee73
Fix "black border" issue and "cannot zoom out near boundary" issue in…
luoying1234 Jan 26, 2021
db42812
Update cubemap tile selection methon It's no need to modify the viewp…
dahanhan Jan 26, 2021
5e779ef
Add ViewportPredict_Plugin doc.
luoying1234 Jan 26, 2021
cb93a24
Add MPD generator status check to make sure segments destination fold…
ChenXiaomin0306 Jan 26, 2021
9b6786d
Fix klockwork issues in 360SCVP 1. Add missing copy constructor and o…
dahanhan Jan 27, 2021
4237b34
Update 360SCVP and plugin doc For 360SCVP doc, add new param element …
dahanhan Jan 26, 2021
5d4d4a7
Fix vulnerabilities in constructor of class Frame
U1X6WK Jan 26, 2021
3e9444c
Remove unncessary information and links
U1X6WK Jan 26, 2021
363080b
Replace string compare with regex to check loopback addresses
U1X6WK Jan 27, 2021
bd40461
Fix cpp file mismatch of MediaSource in player
U1X6WK Jan 27, 2021
b8df5b9
Fix klockwork issues in constructor and operator assignment 1. Some c…
dahanhan Jan 27, 2021
dcfde7f
Limit input value range before calling ArcSin function The computaion…
dahanhan Jan 27, 2021
32a64f2
Add EOS status process in audio track segments writing
ChenXiaomin0306 Jan 27, 2021
4f2c2df
Fix the incorrect check for the first audio frame in omaf packing muxer
U1X6WK Jan 28, 2021
95f5e75
Fix regex catastrophic backtracking issue
U1X6WK Jan 28, 2021
7f4e0a4
Fix core dump issue when exiting DashMediaSource class.
luoying1234 Jan 28, 2021
8a93bc0
update the compiler script for latest linux player
yanyings Jan 29, 2021
de195ae
Update dockerfile due to build process changes
U1X6WK Jan 28, 2021
4c61b60
update the source code to support the latest linux player
yanyings Jan 29, 2021
764b2fc
Correct improper log print in MPD parsing.
luoying1234 Jan 29, 2021
eb6738d
Optimize running process in main encoder
U1X6WK Feb 2, 2021
12c36d7
Add missing patches and sync changes of build scripts
U1X6WK Feb 2, 2021
802c9cd
update the build script for the player lib and qualityranking
yanyings Feb 2, 2021
5de499b
Fix debug option failure in CMakeLists.txt
U1X6WK Feb 3, 2021
797c516
solve the libboost build issue
yanyings Feb 3, 2021
47d5bf0
Update build process for player and fix errors in script
U1X6WK Feb 3, 2021
404b35e
Modify the wait time for getting next packet.
luoying1234 Feb 4, 2021
1dd29a5
Set segment timeout duration in OmafReaderManager.
luoying1234 Feb 5, 2021
d604fc7
Update release version in README and script
U1X6WK Feb 5, 2021
6420f1e
Fix build failure on player with USE_TRACE option and typos in docume…
U1X6WK Feb 5, 2021
083d6d2
Update dockerfile for travis CI
U1X6WK Feb 7, 2021
9ce286e
Merge pull request #50 from OpenVisualCloud/dev_travis_fix
ChenXiaomin0306 Feb 7, 2021
274fc54
Fix linux player build failure and update dockerfile
U1X6WK Feb 8, 2021
139cb25
Update Readme.md
U1X6WK Feb 9, 2021
be34f85
upgrade openssl to v1.1.1h
inteltiger Mar 23, 2021
3bc3ac0
Update README.md
jhou5 Apr 12, 2021
067c025
Merge pull request #61 from inteltiger/openssl111
daijh Apr 15, 2021
48b0e87
[webrtc] use socketio 2.x branch, remove boost
daijh Apr 15, 2021
8aaf098
Update FFMPEG plugins LICENSE
U1X6WK May 31, 2021
f08535d
Fix app CMakeList.txt mismatch issue
U1X6WK May 20, 2021
871a1df
Update FFmpeg patch and CMakeLists for API changes
U1X6WK Feb 28, 2021
2ba2ac1
Add possibility of motion halting as viewport prediction output.
luoying1234 Feb 26, 2021
f452581
Add HEVC B frame support in bitstream parsing and stitching 1. add HE…
ChenXiaomin0306 Mar 3, 2021
c93506f
Update dockerfile and build process
U1X6WK Mar 2, 2021
86ac452
Add HEVC B frame support
U1X6WK Mar 8, 2021
0fddd4a
Add prediction structure option in distributed_encoder plugin for HEV…
U1X6WK Mar 8, 2021
17995cb
A workaroud for necessary files of distributed encoder unit test
U1X6WK Mar 8, 2021
17c29f7
Add horizontal boundary points into cubemap viewport keypoint The vie…
dahanhan Feb 7, 2021
490c049
Update API for B frame support
U1X6WK Mar 8, 2021
e91af48
x[trace] Fix build failure with lttng trace enable
U1X6WK Mar 16, 2021
e9311f2
Refine config file parsing
U1X6WK Mar 11, 2021
bbad95b
Support webrtc under Cubemap projection 1. Fixed some parameter setti…
dahanhan Feb 1, 2021
ac3c2aa
Fix virable errors in runtime script and Dockerfile
U1X6WK Mar 22, 2021
3f19ad8
Add gop size setting in mpd.
luoying1234 Apr 2, 2021
8b2a4fc
Add in-time viewport update strategy to decrease M2HQ latency. 1. add…
luoying1234 Apr 2, 2021
da1b71d
Optimize start pts for gop skipping in catch-up stitching.
luoying1234 Apr 6, 2021
50f3a2a
Fix video flash issue in decoder.
luoying1234 Apr 7, 2021
069fff9
Fix typo in example XML config files
U1X6WK Apr 8, 2021
75c3d80
Add performance data log to trace the switch latency.
luoying1234 Apr 8, 2021
893bbeb
Fix incorrect pts in the last segment for vod streams.
luoying1234 Apr 9, 2021
1c84ff6
Optimize viewport calculation and tile selection 1. Rewrite the viewp…
dahanhan Apr 8, 2021
a602ac6
Disable avfilter erp2cubmap_mdf for comming code merge
U1X6WK Apr 16, 2021
1b6797a
Remove INFO logs to make WebRTC usable WebRTC calls 360SCVP library e…
dahanhan Apr 17, 2021
67a1965
Add patch for svt strict memory.
luoying1234 Apr 22, 2021
71a26f9
Add in-time viewport update strategy support in android player.
luoying1234 Apr 23, 2021
2ac1e95
Fix framerate calculation error in catch up path. Fix VCD-2765
luoying1234 Apr 28, 2021
104a65f
Fix webrtc player build issue
Apr 30, 2021
4d2e385
Optimize memory copy in GenerateSliceHdr
ChenXiaomin0306 May 7, 2021
4dac58b
Fix webrtc player crash & hang issue
May 11, 2021
6b7a597
Refine webrtc player build script
May 11, 2021
b848ca7
Add frame sequences log to trace motion to high quality latency in ca…
luoying1234 May 7, 2021
e59ac9e
Set option to safestring lib dependency.
luoying1234 May 21, 2021
6d422a0
Add AVX512 option in SVT-HEVC build script
U1X6WK May 20, 2021
381fde5
Add user input configuration support. 1. Design a configuration layou…
luoying1234 Jun 4, 2021
2dc3024
Fix several klocwork issues.
luoying1234 Jun 4, 2021
a3d6953
Disable pts correction when reaching EOS. Fix several Klocwork issues…
luoying1234 Jun 8, 2021
b37dc53
Fix some Klocwork Issues about Unitialization of Local Variables
dahanhan May 31, 2021
f5e0567
Fix possible buffer overflow and uninitialization issues.
luoying1234 Jun 16, 2021
0b252e7
Update CHANGELOG for V1.6 release
ChenXiaomin0306 Jun 4, 2021
d6c84d3
Fix klockwork issue When two 32bit variables are added, the result ma…
dahanhan Jun 16, 2021
1ce1722
Fix possible buffer overflow issue.
luoying1234 Jun 16, 2021
826c61a
Fix buffer overflow issue in mpd check method.
luoying1234 Jun 18, 2021
c5984f1
Merge pull request #63 from daijh/socketio-2.x
yanyings Jun 23, 2021
0db5700
Fix 8K play crash issue
Jun 23, 2021
15c588a
Add bitstream dump option
Jun 24, 2021
d42c5ca
Fix several android issues. 1. Fix "cannot launch" issue: fix fortify…
luoying1234 Jun 23, 2021
d688cda
Fix build error issue in android platform.
luoying1234 Jun 25, 2021
9897d1f
Fix white flash issue on live mode. 1. Fix error assignment in correc…
luoying1234 Jun 28, 2021
148b684
Fix mismatch issue in catch up path in android player.
luoying1234 Jun 29, 2021
cfaebb7
Update fpm package scripts
U1X6WK Jul 7, 2021
8fbbc27
Add HEVC bitstream parsing for multiple short term ref pic sets and r…
ChenXiaomin0306 Jul 8, 2021
f5cc3c7
Add the support to MSDK HEVC bitstream
jsunintel Jul 12, 2021
c008f3f
Add short-time ref list in both SPS and SDR support
jsunintel Jul 24, 2021
daaa198
Fix glog install issue
U1X6WK Jul 31, 2021
0556b4b
Fix glDrawxxx crash issue in OpenGL 4.6
luoying1234 Jul 29, 2021
8ca57aa
Add ENABLE_MSDK option
jsunintel Aug 12, 2021
d69156e
Change dash writer from static library to plugin 1. change isolib/das…
ChenXiaomin0306 Aug 17, 2021
ccaa557
Enable 8K resolution for decklink plugin
U1X6WK Sep 14, 2021
b54bf02
Enable CMAF segments generation 1. add ISOBMFF 'prft' box basic proce…
ChenXiaomin0306 Sep 17, 2021
991382f
Add CMAF support in client. 1. Add segment index parsing and enable c…
luoying1234 Sep 28, 2021
9ae6d3f
Fix hang issue when media streams contain audio track. 1. Calculate A…
luoying1234 Oct 12, 2021
fd3a505
Add CMAF support in android player. 1. Enable different framerate ren…
luoying1234 Oct 21, 2021
e98c35c
Fix some compile issues when lttng trace is enabled.
luoying1234 Oct 21, 2021
7e431a0
Fix some memory leak, null pointer check and uninitialization issues.
luoying1234 Oct 25, 2021
ee197ac
Fix variable un-initialized issue
ChenXiaomin0306 Oct 27, 2021
43bdd4b
Add null share pointer check and correct byte type conversion.
luoying1234 Oct 29, 2021
4d10227
Fix segment fault issue in last cmaf segment downloading and parsing …
luoying1234 Nov 2, 2021
227713d
Update CMAF related documents in DashAccess and RefPlayer.
luoying1234 Nov 5, 2021
c4176d0
Update docs for plugins/VROmafPacking/FFmpeg usage for CMAF support
ChenXiaomin0306 Nov 8, 2021
fed5e8d
Fix invalid URL in OMAF-Sample Dockerfile
U1X6WK Nov 15, 2021
3996a86
Fix segment fault issue in quitting process. 1. Fix null pointer non-…
luoying1234 Nov 12, 2021
473e5e0
Modify the timeout value for waiting packet according to segment dura…
luoying1234 Nov 12, 2021
26d2c00
Fix long latency for motion-to-high-quality when prediction and catch…
luoying1234 Nov 12, 2021
3270f3e
Update FFmpeg patch for latest features
U1X6WK Nov 26, 2021
7750713
Update libraries and binary along with config file
U1X6WK Nov 26, 2021
997f0b5
Fix build issue in PredictOption initialization.
luoying1234 Dec 8, 2021
7991b09
Update CHANGELOG for V1.8 release
ChenXiaomin0306 Dec 7, 2021
4f68f0f
Update build scripts and documentation typos
U1X6WK Dec 14, 2021
bba7cc3
[do not submit] [IM360-166] no safestring and glog for android
inteltiger Nov 27, 2020
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
  •  
  •  
  •  
10 changes: 10 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
.vscode
build
FFmpeg
player/360SCVPAPI.h
player/MediaSource/360SCVPAPI.h
player/MediaSource/OmafDashAccessApi.h
player/OmafStructure.h
player/data_type.h
player/error.h
player/ns_def.h
36 changes: 36 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
language: generic
os: linux
dist: bionic

env:
global:
- DOCKER_CACHE_FILE=/home/travis/docker/cache.tar.gz
- DOCKER_REPOSITORY=immersive
- DOCKER_TAG=ci

cache:
directories:
- /home/travis/docker/

before_install:
- | # Load docker image.
if [ -f ${DOCKER_CACHE_FILE} ]; then
gunzip -c ${DOCKER_CACHE_FILE} | sudo docker load || true
fi

install:
- | # Build docker image from cache or from scratch.
if [ -f ${DOCKER_CACHE_FILE} ]; then
sudo docker build --cache-from ${DOCKER_REPOSITORY}:${DOCKER_TAG} -t ${DOCKER_REPOSITORY}:${DOCKER_TAG} -f src/external/dockerfile src/external
else
sudo docker build -t ${DOCKER_REPOSITORY}:${DOCKER_TAG} -f src/external/dockerfile src/external
fi

script:
- sudo docker run -it -v `pwd`:`pwd` -w `pwd` ${DOCKER_REPOSITORY}:${DOCKER_TAG} bash -c 'cd src/external && ./build.sh ci && ./build.sh test && ./run_test.sh'
- | # Save built image to Travis cache directory only if not a pull request.
if [ ${TRAVIS_PULL_REQUEST} == "false" ]; then
mkdir -p $(dirname ${DOCKER_CACHE_FILE})
sudo docker save $(docker history -q ${DOCKER_REPOSITORY}:${DOCKER_TAG} | grep -v '<missing>') ${DOCKER_REPOSITORY}:${DOCKER_TAG} | gzip > ${DOCKER_CACHE_FILE}
echo "Saved cache successfuly"
fi
109 changes: 80 additions & 29 deletions OMAF-Sample/README.md
100644 → 100755
Original file line number Diff line number Diff line change
@@ -1,72 +1,123 @@
# Immersive Video OMAF Sample

## Introduction
The Immersive Video Delivery OMAF Sample provides a quick trial to setup E2E OMAF-Compliant 360 video streaming. OMAF 360 Video streaming sample can support both VOD and Live streaming for 4K and 8K contents.
The Immersive Video Delivery OMAF Sample provides a quick trial to setup E2E OMAF-Compliant 360 video streaming. OMAF 360 Video streaming sample can support both VOD and Live streaming for 4K and 8K contents.

## Software Requirements
OMAF sample can be deployed with [Kubernetes](#kubernetes-deployment-steps) or directly with [Docker image](#docker-image-deployment-steps).

- Server OS : CentOS Linux release<br>7.6.1810 (Core)
## Software Requirements

- Server OS : CentOS Linux release 7.6.1810 (Core)
- Client OS : Ubuntu 18.04 LTS
- Docker version : 1.13.1
- Docker version : 19.03.12

## Hardware Tested
## Test Environment Hardware
| Platform | Server | Client |
|:----:|:----:|:----:|
| CPU SKU | Intel® Xeon® Platinum<br>8280M CPU @ 2.70GHz | Intel® Core™ i7-6770HQ<br>CPU @ 2.60GHz x 8 |
| Memory | 128G | 16G |

## Installation
---

## Docker image deployment steps

### Installation

- [Install docker engine in server](https://docs.docker.com/install)

- Server :
```bash
cd OMAF-Sample/server && ./deploy.sh <proxy> # Proxy config is optional.
docker image ls # Created an image. [REPOSITORY:immersive_server, TAG:v0.1]
cd path_to/Immersive-Video-Sample/OMAF-Sample/server
mkdir build && cd build
cmake .. -DHTTP_PROXY=<proxy> # proxy is optional
make build -j $(nproc)
docker image ls # [REPOSITORY:immersive_server, TAG:v1.8]
```

- Client :

```bash
cd OMAF-Sample/client && ./deploy.sh
cd package # Copy the packages to any client machine to install.
sudo dpkg -i immersive-client-1.0.0-1.el7_amd64.deb
```

## How To Run (HTTPS)
### How To Run (HTTPS)

- Server :

```bash
docker run -p 5000:443 -p 5001:8080 -it immersive_server:v0.1 bash # Map the port.
/usr/local/nginx/sbin/nginx # Start nginx.
cd Sample-Videos && ./run.sh <RES> <TYPE> # <RES>:[4k,8k] <TYPE>:[LIVE,VOD]
docker run --privileged -p 30001:443 -p 30002:8080 -it immersive_server:v1.8 bash # Map the port.
cd /usr/local/nginx/conf/
./configure.sh CN Shanghai A B C D E@F.com # './configure.sh -h' for details.
/usr/local/nginx/sbin/nginx # Start nginx.
cd /home/immersive/Sample-Videos && ./run.sh <RES> <TYPE> # <RES>:[4K,8K] <TYPE>:[LIVE,VOD]
```

For details in FFmpeg plugins' parameters, refer to the [FFmpeg usage doc](../src/doc/Immersive_Video_Delivery_FFmpeg_usage.md).

- Client :
```bash
sudo su
cd path_to/Immersive-Video-Sample/src/build/client/player
export LD_LIBRARY_PATH=/usr/local/lib/:$LD_LIBRARY_PATH
vim config.xml # Set up configuration, details in table at bottom.
./render # Press 'q' button to quit.
```

---

## Kubernetes deployment steps

### Installation

- Node set up steps same as [docker image deployment](#docker-image-deployment-steps).

- Master set up steps:
1. Follow the [instructions](https://kubernetes.io/docs/setup) to setup your Kubernetes cluster.
2. All cluster nodes must have the same user (uid) and group (gid).
3. Setup password-less access from the Kubernetes controller to each worker node:
```bash
ssh-keygen
ssh-copy-id <worker-node>
```


### How To Run
- Master start/stop services as follows:
```
cd path_to/Immersive_Video_Sample/OMAF-Sample/server
mkdir build && cd build
cmake ..
make start -j $(nproc) # choose to start or stop
```

- Client :
```bash
sudo su
cd /usr/bin/immersive/
export LD_LIBRARY_PATH=/usr/lib64/immersive-client:$LD_LIBRARY_PATH
vim config.xml # Set up configuration, details as following table
./render # Press 's' button to start
cd path_to/Immersive-Video-Sample/src/build/client/player
export LD_LIBRARY_PATH=/usr/local/lib/:$LD_LIBRARY_PATH
vim config.xml # Set up configuration, details in table at bottom.
./render # Press 'q' button to quit.
```

---

**Config.xml**
| Parameters | Descriptions | Examples |
| :----:| :----: | :----: |
| windowWidth | The width of render window | 960 for 4k, 1920 for 8k |

| **Parameters** | **Descriptions** | **examples** |
| --- | --- | --- |
| windowWidth | The width of render window | 960 for 4k, 1920 for 8k |
| windowHeight | The height of render window | 960 for 4k, 1920 for 8k |
| url | The resource URL path | Remote URL |
| sourceType | Source type | 0 is for Dash Source |
| decoderType | FFmpeg Decoder type | 0 is for software decoder |
| contextType | OpenGL context type | 0 is for glfw |
| useDMABuffer | DMA Buffer flag | 0 means no DMA buffer |
| enableExtractor | extractor track path or later binding path | 1 is for extractor track and 0 is for later binding |
| StreamDumpedOption | dump packet streams or not | 0 for false, 1 for true |
| viewportHFOV | Viewport horizon FOV degree | 80 |
| viewportVFOV | Viewport vertical FOV degree | 80 |
| viewportWidth | Viewport width | 960 for 4k, 1920 for 8k |
| viewportHeight | Viewport height | 960 for 4k, 1920 for 8k |
| cachePath | Cache path | /tmp/cache |

| minLogLevel | min log level | INFO / WARNING / ERROR / FATAL |
| maxVideoDecodeWidth | max video decoded width | decoded width that is supported |
| maxVideoDecodeHeight | max video decoded height | decoded height that is supported |
| predict | viewport prediction plugin | 0 is disable and 1 is enable |
| PathOf360SCVPPlugins | path of 360SCVP plugins | needed for planar format rendering |

- **Note** : So far, some parameters settings are limited. URL need to be a remote dash source URL, example : `https://172.18.0.2:5000`. The parameter sourceType must set to 0, which represents dash source. The parameter decoderType must set to 0, which stands for FFmpeg software decoder. The parameter contextType need to be 0, which represents glfw context. And useDMABuffer flag should be set to 0.
- **Note** : So far, some parameters settings are limited. URL need to be a remote dash source URL, choose `./run.sh 8K LIVE` for example : `https://xxx.xxx.xxx.xxx:30001/LIVE8K/Test.mpd`. The parameter `sourceType` must set to 0, which represents dash source. The parameter `decoderType` must set to 0, which stands for FFmpeg software decoder. The parameter `contextType` need to be 0, which represents glfw context. And `useDMABuffer` flag should be set to 0.
3 changes: 1 addition & 2 deletions OMAF-Sample/client/deploy.sh
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
#!/bin/bash -ex
cd ../../src/external
./build_client.sh
./fpm.sh 1.0.0
./build.sh client y
Empty file removed OMAF-Sample/server/.gitkeep
Empty file.
11 changes: 11 additions & 0 deletions OMAF-Sample/server/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
CMAKE_MINIMUM_REQUIRED(VERSION 2.8)

ADD_CUSTOM_TARGET(build ALL
${CMAKE_CURRENT_SOURCE_DIR}/deploy.sh
${CMAKE_CURRENT_SOURCE_DIR} ${HTTP_PROXY})

ADD_CUSTOM_TARGET(start ALL
${CMAKE_CURRENT_SOURCE_DIR}/start.sh)

ADD_CUSTOM_TARGET(stop ALL
${CMAKE_CURRENT_SOURCE_DIR}/stop.sh)
Loading