summaryrefslogtreecommitdiff
path: root/examples
Commit message (Collapse)AuthorAgeFilesLines
* vp9_spatial_svc_encoder: quiet -Wunused-but-set-variableJames Zern2023-04-191-3/+6
| | | | | | | with clang-17. Move frames_received under OUTPUT_FRAME_STATS; it's only used in a printf. Change-Id: Idfdd59ccd04e43df1855203db82bb4c8a1d059fb
* svc_encodeframe: clear -Wshadow warningsJames Zern2023-04-121-3/+3
| | | | | Bug: webm:1793 Change-Id: Ib65a2dff124034d8e653572f8ada65984e55ed70
* svc_encodeframe.c: fix -Wstringop-truncationJames Zern2023-03-201-1/+1
| | | | | | | | | | | | use sizeof(buf) - 1 with strncpy. fixes: examples/svc_encodeframe.c:282:3: warning: ‘strncpy’ specified bound 1024 equals destination size [-Wstringop-truncation] 282 | strncpy(si->options, options, sizeof(si->options)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Change-Id: I46980872f9865ae1dc2b56330c3a65d8bc6cf1f7
* .clang-format: update to clang-format-11clang-format2022-08-231-1/+3
| | | | | | | | only store the deltas from --style Google in the file and reapply using Debian clang-format version 11.1.0-6+build1 Bug: b/229626362 Change-Id: I3e18a2e7c17a90a48405b3cf1b37ebc652aba0db
* examples/svc_encodeframe.c: rm empty {}s in switchJames Zern2022-08-141-5/+2
| | | | | | | | these have been unnecessary since: 0e97e7049 remove spatial svc experiment Bug: b/229626362 Change-Id: I57528af4dcb9092b752161c8eaba2e2808c29c5f
* add some missing realloc checksJames Zern2022-05-061-0/+1
| | | | Change-Id: I0fd1e094085c18b1d9a32333e876c2affeb6de23
* vp9 svc sample: set fps from y4m fileJerome Jiang2022-05-031-0/+2
| | | | Change-Id: I082c0409910da4cda5bf852b20ffa11ba5c2ebd6
* examples: add missing argv_dup alloc checksJames Zern2022-04-281-0/+4
| | | | Change-Id: Ia3080cbf50071d599c7168a20466392a963f101a
* rtc-vp9: Fix intra-only for bypass modeMarco Paniconi2022-02-081-1/+2
| | | | | | | | | | | | | Allow intra-only frame in svc to also work in bypass (flexible-svc) mode. Added unittest for the flexible svc case. And fix the gld_fb_idx for (SL0, TL1) in bypass/flexible mode pattern in the sample encoder: force it to be 0 (same as lst_fb_idx), since the slot is unused on SL0. Change-Id: Iada9d1b052e470a0d5d25220809ad0c87cd46268
* Merge "Use background segmentation mask with ROI" into mainJerome Jiang2022-01-311-8/+91
|\
| * Use background segmentation mask with ROIJerome Jiang2022-01-271-8/+91
| | | | | | | | | | | | | | | | | | | | | | RTC sample encoder vpx_temporal_svc_encoder can take mask files as input when ROI_MAP is set to 1. Uses ROI and segmentation of vp9 to skip background encoding when source_sad is low and the correspond block in previous frame is also skipped. Change-Id: I8590e6f9a88cecfa1d7f375d4cc480f0f2af87b6
* | clear -Wextra-semi/-Wextra-semi-stmt warningsJames Zern2021-12-022-2/+2
| | | | | | | | | | Bug: chromium:1257449 Change-Id: Ia9aafccc09b611521d4a7aedfe3723393a840c62
* | tools_common.h: add VPX_TOOLS_FORMAT_PRINTFJames Zern2021-11-024-13/+16
|/ | | | | | | | | | and use it to set the format attribute for printf like functions. this allows the examples to be built with -Wformat-nonliteral without producing warnings. Bug: webm:1744 Change-Id: I26b4c41c9a42790053b1ae0e4a678af8f2cd1d82 Fixed: webm:1744
* vp9-rtc: Add postencode_drop control to sample encoderMarco Paniconi2021-03-121-0/+1
| | | | Change-Id: I1c989f26b0a7b9239adf37df8d96776f33b89a8b
* Use -std=gnu++11 instead of -std=c++11Jerome Jiang2021-03-041-1/+1
| | | | | | | | Cygwin and msys2 have stricter compliance requirement over standard c headers. Bug: webm:1708 Change-Id: I676b1227b9dd304149e50016468df0f057c6a78f
* Remove two pass related code from svc sample encoder.Jerome Jiang2021-02-181-63/+6
| | | | | | | SVC sample encoder is only supposed to be used for realtime SVC. Bug: webm:1705 Change-Id: I5c0c3491732db3e148073aaf7f90ee8d662b57b5
* Fix to vpx_temporal_svc_encoderMarco Paniconi2021-02-031-0/+1
| | | | | | Avoid division by zero. Change-Id: Icf3f40aa32fe30f42c46417a1437ebe235e3ac96
* Add codec control to disable loopfilter for vp9Jerome Jiang2020-10-022-0/+2
| | | | Change-Id: I6d693e84570c353d20ec314acea43363956c0590
* vp9-rtc: Add control to disable maxq on overshootMarco Paniconi2020-08-252-0/+3
| | | | | | | | | | | Add encoder control to disable feature to increase Q on overshoot detection, for CBR. Default (no usage of the control) means the feature is internally enabled. Add the control to the sample encoders, but keep it disabled as default (set to 0, so feature is on). Change-Id: Ia2237bc4aaea9770e5080dab20bfff9e3fd09199
* rtc-vp9: Fix to rcstats in vp9_spatial_svc_encoderMarco Paniconi2020-08-171-6/+9
| | | | | | Fixes the rcstats for case when #spatial_layers = 1. Change-Id: Ie28d99852033307bc4c69c7e738e1d4cab4e8cf5
* Merge changes Ib55d46e9,I4a4feeabJames Zern2020-05-1110-12/+12
|\ | | | | | | | | | | * changes: decode_api_test: add negative test for vpx_codec_error_detail examples: use die() on dec/enc_init() failure
| * examples: use die() on dec/enc_init() failureJames Zern2020-05-0710-12/+12
| | | | | | | | | | | | | | | | | | | | rather than die_codec(). calling any api functions with an uninitialized codec context is undefined. this avoids a crash in a call to vpx_codec_error_detail(). BUG=webm:1688 Change-Id: I4a4feeabc1cafa44c8d2f24587fad79e313dba6d
* | vpx_dec_fuzzer: add coverage for VP9D_SET_LOOP_FILTER_OPTJames Zern2020-05-061-0/+7
|/ | | | | | BUG=chromium:1076203 Change-Id: Ib3339a9fd7d940b69a5ef89b3fbf7f4fdeaac006
* example: Enable row-mt on low res and speed 7 8.Jerome Jiang2019-11-061-3/+1
| | | | | | Verified row-mt works for low res and speed 7 8. Change-Id: I1e7f260fe5cda40a2da80ca47692a5864712ec30
* vpx_dec_fuzzer: Remove fmemopen dependencyHarish Mahendrakar2019-06-141-58/+13
| | | | | | | | | | | | | fmemopen is not preferred during fuzzing. Removed all file operations. Removed need for allocating a different input buffer. data buffer is appropriately incremented and passed directly to decoder This will also test input being sent in an unaligned buffer to the library. Removed read_frame function and did the required parsing inline. Change-Id: I32829b0149dba9339f2e8bb4c0249a4987a630c7
* vpx_dec_fuzzer: Add -fsanitize=fuzzer-no-linkHarish Mahendrakar2019-06-121-1/+2
| | | | | | | Updated build instructions for vpx_dec_fuzzer to include -fsanitize=fuzzer-no-link while configuring library Change-Id: Id158256aa1cfe3d847720e8558cb5998ad4fd777
* Revert "Disable mismatch check on vp9 svc examples."Jerome Jiang2019-04-101-2/+1
| | | | | | This reverts commit a1857812ea6a727d9bda91b852f7b8a9f506ac3f. Change-Id: Ib33f49af7631c9a6917539a58c447624df325f7f
* svc_encodeframe: check strdup returnJames Zern2019-04-051-0/+2
| | | | | | BUG=webm:1616 Change-Id: Ic9de589154485ad2de30b0b044991e1f9b852d74
* Disable mismatch check on vp9 svc examples.Jerome Jiang2019-03-271-1/+2
| | | | Change-Id: I49902a750758ba0ffe733be9b1efd0cdea44f936
* fix redundant cast in examples.Jerome Jiang2019-03-212-7/+6
| | | | Change-Id: I84280de82053f9056bda9d813baa6165ca9bcd1e
* Merge "Enclose macro arguments in parentheses"Jerome Jiang2019-03-141-1/+1
|\
| * Enclose macro arguments in parenthesesJerome Jiang2019-03-141-1/+1
| | | | | | | | | | | | BUG=webm:1606 Change-Id: I661485b860243c95b6450035dbac77b0dd4d9ff4
* | Merge "vp9: map speed > 9 to speed 9."Jerome Jiang2019-03-112-0/+6
|\ \ | |/ |/|
| * vp9: map speed > 9 to speed 9.Jerome Jiang2019-03-052-0/+6
| | | | | | | | | | | | Report warning in example encoder. Change-Id: Iec4cdffce9faa65241756fbdac498214c8b93cc1
* | Merge "vp9 svc: add simulcast mode when inter-layer pred is off."Jerome Jiang2019-03-081-5/+16
|\ \
| * | vp9 svc: add simulcast mode when inter-layer pred is off.Jerome Jiang2019-03-071-5/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Force all upper spatial layers to be key frame if the base layer is key. Mode only works for inter-layer pred=off and non-flexible mode. Add flag to write out bitstream for each spatial layer in example encoder. Change-Id: I5db4543cf8697544ae49464f2157e692640d5256
* | | vp9-svc: Fix to sample encoder for 1 layerMarco Paniconi2019-03-071-1/+2
|/ / | | | | | | | | | | | | Fix to vp9_spatial_svc_encoder to run case of 1 spatial, 1 temporal layer. Change-Id: I93675c3c4bd2c55cb1c971679588525a8e5b889d
* | vp9 svc example: use CONFIG_VP9_DECODER guarding decoding.Jerome Jiang2019-03-051-5/+5
|/ | | | Change-Id: I91f2955f2936303c3e09e9b2dc60e32305ebae17
* Test decode and find mismatch in vp9 svc example encoder.Jerome Jiang2019-02-112-142/+115
| | | | | | | | Also write it to opsnr.stt when internal stats is enabled. Removed some redundant code in vpxenc.c and vp9cx_set_ref.c Change-Id: I3700137fff0be92a23e4ab75713db72da1dc4076
* refactor vp9 svc example encoder.Jerome Jiang2019-02-111-93/+93
| | | | | | Put rc stats related code into a separate function. Change-Id: I11808bb947079b5fd9e53dfa5894bf227ed0c4c6
* vp9 svc example encoder accept -o (--output) for output.Jerome Jiang2019-02-081-3/+7
| | | | | | Make it same as vpxenc so easier to run on borg. Change-Id: Ie19db6e828ced773cba9aef715c8fbd0f4715b27
* Merge "vp9: Write height and width to ivf header in SVC example encoder."Jerome Jiang2019-02-071-0/+2
|\
| * vp9: Write height and width to ivf header in SVC example encoder.Jerome Jiang2019-02-071-0/+2
| | | | | | | | | | | | | | | | Write height and width of top layer to ivf header in SVC. vpxdec Can't decode it correctly when output is y4m. Change-Id: I9b2f1d54696611a30e252bdfd182897d191d92b5
* | Merge "No vpx_img_alloc for y4m input in example encoders."Jerome Jiang2019-02-062-26/+42
|\ \ | |/ |/|
| * No vpx_img_alloc for y4m input in example encoders.Jerome Jiang2019-02-052-26/+42
| | | | | | | | | | | | Y4M reader has its own allocation. Change-Id: Ie02440a183126072ea773860f4e9dc9b412772f5
* | vpx_dec_fuzzer: Remove dependency on tools_common.cHarish Mahendrakar2019-02-011-10/+9
|/ | | | | | | | | | | | | | Instead of calling get_vpx_decoder_by_name(), derive decoder interface directly. This will avoid dependecy on tools_common and hence any potential updates needed to build fuzzer, when tools_common uses functions defined in a different file With this dependency removed, fuzzer no longer needs to enable examples when building vpx_dec_fuzzer binaries Change-Id: I05753edf041b4bc742a6dc06e809a8a2929d379f
* add y4m support to vp9 example encoders.Jerome Jiang2019-01-303-19/+50
| | | | | | vp9_spatial_svc_encoder and vpx_temporal_svc_encoder. Change-Id: I8dfa1dfad83c83a26ddac4e7c57b5f1ff161e588
* svc examples: resolve missing declarationsJohann2018-12-212-4/+5
| | | | | | BUG=webm:1584 Change-Id: Icb7ba5bb5a6d460c4d0419b76ee54af461ca4a52
* vpx_dec_fuzzer: Unify single and multi-thread testsHarish Mahendrakar2018-11-141-17/+6
| | | | | | | | | As thread count is now randomized, serial and threaded modes can be combined to a single binary. With this change, threads takes values between 1 to 64 and tests both single thread and multi-thread variants of the decoders Change-Id: I6dd2a3aa03bff9c0e2c126843b543d46892be696
* Added libFuzzer plugin to test decodersHarish Mahendrakar2018-11-141-0/+174
| | | | | | | vpx_dec_fuzzer.cc can be built with clang++ to generate fuzzer binary Build instructions are part of the file Change-Id: I19ba0bd49b236e27b27e81a83f6de59f15bdc994