Started by user Alex
Building in workspace /var/lib/jenkins/jobs/mlv_dump_4k/workspace
[src] $ hg showconfig paths.default
[src] $ hg pull --rev b65d01a
pulling from https://bitbucket.org/hudson/magic-lantern
no changes found
[src] $ hg update --clean --rev b65d01a
47 files updated, 0 files merged, 0 files removed, 0 files unresolved
[src] $ hg log --rev . --template {node}
[src] $ hg log --rev . --template {rev}
[src] $ hg log --rev 2116dce1307ffac70e2b766d2149c19e1921237b --template exists\n
exists
[src] $ hg log --template "<changeset node='{node}' author='{author|xmlescape}' rev='{rev}' date='{date}'><msg>{desc|xmlescape}</msg><added>{file_adds|stringify|xmlescape}</added><deleted>{file_dels|stringify|xmlescape}</deleted><files>{files|stringify|xmlescape}</files><parents>{parents}</parents></changeset>\n" --rev "ancestors('b65d01a') and not ancestors(2116dce1307ffac70e2b766d2149c19e1921237b)" --encoding UTF-8 --encodingmode replace
[workspace] $ /bin/bash -v /tmp/hudson6449369453592969009.sh
#!/bin/bash -v
# setup environment
cd src
echo "VERSION:=${JOB_NAME}.\$(shell LC_TIME=EN date +'%Y%b%d').\$(MODEL)\$(FW_VERSION)" > Makefile.user
echo "MINGW=~/mingw-w32/bin/i686-w64-mingw32" >> Makefile.user
cd modules/mlv_rec/
# mlv_dump with code coverage enabled
echo "MLV_CFLAGS += --coverage" >> Makefile
echo "MLV_LIBS += --coverage" >> Makefile
make clean &> build.log
make mlv_dump &>> build.log
# move to modules/mlv_rec/test/
mkdir -p test/
mv mlv_dump test/
# regular mlv_dump (without code coverage)
hg revert Makefile &>> build.log
make clean &>> build.log
make mlv_dump.exe &>> build.log
make mlv_dump &>> build.log
[workspace] $ /bin/bash -v /tmp/hudson126910457135276687.sh
#!/bin/bash -v
# go to mlv_dump testing directory
cd src/modules/mlv_rec/test/
# now testing mlv_dump
./mlv_dump
MLV Dumper
-----------------
[ERROR] Error: Missing input filename
Usage: ./mlv_dump [options] <inputfile>
Parameters:
-o output_file write video data into a MLV file
-v verbose output
--version print version information
--batch format output message suitable for batch processing
--relaxed do not exit on every error, skip blocks that are erroneous
-- DNG output --
--dng output frames into separate .dng files. set prefix with -o
--no-cs no chroma smoothing (default)
--cs2x2 2x2 chroma smoothing
--cs3x3 3x3 chroma smoothing
--cs5x5 5x5 chroma smoothing
--no-fixcp do not fix cold pixels
--fixcp2 fix non-static (moving) cold pixels (slow)
--no-stripes do not fix vertical stripes in highlights
-- RAW output --
-r output into a legacy raw file for e.g. raw2dng
-- MLV output --
-b bits convert image data to given bit depth per channel (1-16)
-z bits zero the lowest bits, so we have only specified number of bits containing data (1-16) (improves compression rate)
-f frames frames to save. e.g. '12' saves frames 0 to 12, '12-40' saves frames 12 to 40.
-A fpsx1000 Alter the video file's FPS metadata
-x build xref file (indexing)
-- MLV autopsy --
--skip-block <block#> skip given block number, as if it wasn't present
--skip-type <type> skip given block type (e.g. VIDF, AUDF, etc), as if they weren't present
--extract <block#> extract the block at given position into autopsy file
--extract-type <type> extract the block type (e.g. VERS, LENS, etc) into autopsy file
--replace <block#> replace block with data from given autopsy file; requires --autopsy-file
--payload-only extract/replace affect not the whole block, but only payload
--header-only extract/replace affect not the whole block, but only header
--autopsy-file <file> extract/replace from this file
--hex extract prints the selected data as hexdump on screen
--ascii extract prints the selected data as ASCII on screen (only suitable for VERS and DEBG)
--visualize visualize block types, most likely you want to use --skip-xref along with it
-- MLV manipulation --
--skip-xref skip loading .IDX (XREF) file, read block in the MLV file's order instead of presorted
-m write only metadata, no audio or video frames
-n write no metadata, only audio and video frames
-I <mlv_file> inject data from given MLV file right after MLVI header
-X type extract only block type int output file
-- Image manipulation --
-a average all frames in <inputfile> and output a single-frame MLV from it
--avg-vertical [DARKFRAME ONLY] average the resulting frame in vertical direction, so we will extract vertical banding
--avg-horizontal [DARKFRAME ONLY] average the resulting frame in horizontal direction, so we will extract horizontal banding
-s mlv_file subtract the reference frame in given file from every single frame during processing
-t mlv_file use the reference frame in given file as flat field (gain correction)
-- Processing --
-e delta-encode frames to improve compression, but lose random access capabilities
-c compress video and audio frames using LJ92. if already compressed, then decompress and recompress again.
specify twice to pass through unmodified compressed (lossless) data to DNG which speeds up writing, but skips preprocessing
-d decompress compressed video and audio frames using LZMA or LJ92
-- bugfixes --
--black-fix=value set black level to <value> (fix green/magenta cast). if no value given, it will be set to 2048.
--white-fix=value set white level to <value>. if no value given, it will be set to 15000.
--fix-bug=id fix some special bugs. *only* to be used if given instruction by developers.
for f in *.MLV; do
./mlv_dump $f
./mlv_dum- $f --visualize
./mlv_dump $f -v
./mlv_dump $f --dng
md5sum *.dng
rm *.dng
done
MLV Dumper
-----------------
Mode of operation:
- Input MLV file: '*.MLV'
- Verify file structure
[ERROR] Failed to open file '*.MLV'
/tmp/hudson126910457135276687.sh: line 11: ./mlv_dum-: No such file or directory
MLV Dumper
-----------------
Mode of operation:
- Input MLV file: '*.MLV'
- Verbose messages
- Verify file structure
- Dump all block information
[ERROR] Failed to open file '*.MLV'
MLV Dumper
-----------------
Mode of operation:
- Input MLV file: '*.MLV'
- Decompressing before writing DNG
- Enforcing 14bpp for DNG output
- Using output path '*_' for DNGs
- Convert to DNG frames
- Output into '*_'
[ERROR] Failed to open file '*.MLV'
md5sum: '*.dng': No such file or directory
rm: cannot remove '*.dng': No such file or directory
for bug in 1 2 3; do
for f in `ls bug/$bug/*.MLV`; do
./mlv_dump $f --fix-bug=$bug
./mlv_dum- $f --visualize --fix-bug=$bug
./mlv_dump $f -v --fix-bug=$bug
./mlv_dump $f --dng --fix-bug=$bug
md5sum *.dng
rm *.dng
done
done
ls bug/$bug/*.MLV
ls: cannot access 'bug/1/*.MLV': No such file or directory
ls bug/$bug/*.MLV
ls: cannot access 'bug/2/*.MLV': No such file or directory
ls bug/$bug/*.MLV
ls: cannot access 'bug/3/*.MLV': No such file or directory
# todo: add some clips here, check output files...
# code coverage report
OUT_DIR=`realpath coverage`
realpath coverage
BINDIR=`realpath .`
realpath .
SRCDIR=`realpath ..`
realpath ..
lcov -c -i -d .. -o base.info --no-external -b $SRCDIR &> coverage.log
lcov -c -d .. -o test.info --no-external -b $SRCDIR --rc lcov_branch_coverage=1 &>> coverage.log
lcov -a base.info -a test.info -o total.info --rc lcov_branch_coverage=1
Combining tracefiles.
Reading tracefile base.info
Reading tracefile test.info
Writing data to total.info
Summary coverage rate:
lines......: 3.1% (242 of 7761 lines)
functions..: 0.9% (4 of 431 functions)
branches...: 1.2% (32 of 2710 branches)
genhtml total.info --output-directory $OUT_DIR --branch-coverage &>> coverage.log
Archiving artifacts
[htmlpublisher] Archiving HTML reports...
[htmlpublisher] Archiving at PROJECT level /var/lib/jenkins/jobs/mlv_dump_4k/workspace/src/modules/mlv_rec/test/coverage to /var/lib/jenkins/jobs/mlv_dump_4k/htmlreports/Code_coverage_report_for_mlv_dump
Warning: you have no plugins providing access control for builds, so falling back to legacy behavior of permitting any downstream builds to be triggered
Triggering a new build of mlv_dump_4k_test
Triggering a new build of mlv_dump_darktest
Finished: SUCCESS