The fuzzer can either pass random utf-8 into the SDP parser or swap lines in the generated SDP offer or answer. I've tried to implement the fuzzer so that all random choices are coded into the javascript page so that the sole source of randomness is in the fuzzer program. I initially tried to load stored sample SDP offers and fuzz them in the fuzzer program, but it didn't work since the SDP message seems to contain some magic checksum that causes the parser to choke quickly.
There's a lot of ideas for follow up patches:
- Fuzz ALL input parameters to ALL functions, not just SDP
- Swap letters/words in SDP messages
- Insert random location.reload() anywhere in the call sequence
- Swap lines in the call sequence itself
BUG=
Review URL: https://webrtc-codereview.appspot.com/784004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@2772 4adac7df-926f-26a2-2b94-8c16560cd09d
This is a very simple tool which takes a test and reference YUV files and compares the frames in them.
The interesting part is that the test video is the video formed by the frames captured from the browser
(WebRTC output). The test video frames has been decoded and the correspondence between evrey frame in the
test video and the decoded barcode, i.e. the frame number in the refrence video has been written to a stats
file in the form frame_xxxx yyyy, where xxxx is the number of the frame in the test video and yyyy is the
number of the frame in the reference video.
We can have jumping over frames or duplicate frames in the test video, as well as incorrectly decoded barcodes.
The tool takes care of these cases.
I haven't used the video_metrics.h because the functions in there seem to do much more than we need and not to
do things that I needed.
The tool may need to be changed so that it could produce output which in turn will be used by PythonCharts or
other chart-drawing tool or library that we decide to use.
BUG=
TEST=
./out/Debug/frame_analyzer --reference_file=reference.yuv --test_file=test.yuv --stats_file=stats.txt --width=352 --height=288
Review URL: https://webrtc-codereview.appspot.com/701005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@2620 4adac7df-926f-26a2-2b94-8c16560cd09d
- Made the output file to open in write mode instead of append mode.
- Now the tool deletes the RGBA frames after conversion.
- Other minor cleanup work.
BUG=
TEST=
rgba_to_i420_converter --frames_dir=<directory_to_rgba_frames> --output_file=<output_yuv_file> --width=<width_of_input_frames> --height=<height_of_input_frames>
Review URL: https://webrtc-codereview.appspot.com/728004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@2611 4adac7df-926f-26a2-2b94-8c16560cd09d
BUG=
TEST=
tgbra_to_i420_converter --frames_dir=<directory_to_rgba_frames> --output_file=<output_yuv_file> --width=<width_of_input_frames> --height=<height_of_input_frames>
<output_yuv_file> should be an empty file because we open it in append mode
Review URL: https://webrtc-codereview.appspot.com/673006
git-svn-id: http://webrtc.googlecode.com/svn/trunk@2475 4adac7df-926f-26a2-2b94-8c16560cd09d