#Design of multimedia applications Lab Session1
This is a lab session / project of the course 'Design of multimedia application' which is part of The ir. Computer science @UGent. The program will simulate missing macroblocks and try to conceal them as good as possible.
Decoder_with_error_concealment.exe enc file output file error pattern method
- enc file: the encoded file (see 'Encoding' on how to encode video files)
- output file: the output in yuv format (you can use the Test_environment\YUVDisplay.exe to open it)
- error pattern: the error pattern to simulate the missing macroblocks There're two error patterns: simple and complex. Simple means that a missing block will always have all his neighbours. This is no longer the case with complex.
- method: the concealment method Multiple are available 0:Interpolate the surrounding blocks, using the two closest neighbours 1:Interpolate the surrounding blocks, using the available neightbours 2:Use edge detection and try to conceal block by drawing the edges 3:No motion estimation. Block missing? Use the previous 4:Try to interpolate the motion vectors and use that to conceal the missing block. This is done by using a subsize of 2, the method may fall back on method 1 oif the error is too big. 5:same as 4, but with subsize of 4 6:same as 4, but with subsize of 8 7:same as 4, but with subsize of 16 (== size of a macroblock) 8:Motion intelligently optimized to tackle the complex pattern. (uses a combination of 9 and 1) 9:same as 4, but with a dynamical subsize.
##notes:
- method 8 will always call 1 first and then try to improve the solution.
- Assignment => Contains the assignment
- Test_environment => exe's for encoding and measurement
- err_correction_src_vs13 => source code for vs2013
- data => sample error patterns
- README => this file
- .gitignore => obvious reasons
- runall.bat => debugging, will decode and enc file with all possible methods
- use Test_environment\Encoder.exe
- Dont forget that the width and height should be mentioned in macroblocks (size= 16x16)
Test_environment\Encoder.exe data\beowulf_848x352.yuv 53 22 20 20 solutions\common_natural_8.enc
Test_environment\Encoder.exe data\elephants_dream_816x576.yuv 51 36 25 10 solutions\common_synthetic_8.enc
Test_environment\Encoder.exe data\o_jerusalem_480x192.yuv 30 12 24 14 solutions\group_8.enc
- In VS press f7 or do a make
- go to error_correction_src_vs13\Debug in your terminal.
- Run the decoder as follows: Decoder_with_error_concealment.exe ....\solutions\common_natural_8.enc test.yuv ....\data\error_pattern_complex_beowulf.txt 1
- Open yuv file with Test_environment\YUVDisplay.exe
- set height & width (depends on video, look in Assigment\test_files_overview.pdf)