|  | ||
|---|---|---|
| .. | ||
| Android.bp | ||
| README.md | ||
| mediaplayer_fuzzer.cpp | ||
| mediarecorder_fuzzer.cpp | ||
| metadataretriever_fuzzer.cpp | ||
		
			
				
				README.md
			
		
		
			
			
		
	
	Fuzzer for libmediaplayerservice
Table of contents
Fuzzer for StagefrightMediaRecorder
StagefrightMediaRecorder supports the following parameters:
- Output Formats (parameter name: setOutputFormat)
- Audio Encoders (parameter name: setAudioEncoder)
- Video Encoders (parameter name: setVideoEncoder)
- Audio Sources (parameter name: setAudioSource)
- Video Sources (parameter name: setVideoSource)
- Microphone Direction (parameter name: setMicrophoneDirection)
You can find the possible values in the fuzzer's source code.
Steps to run
- Build the fuzzer
  $ mm -j$(nproc) mediarecorder_fuzzer
- Run on device
  $ adb sync data
  $ adb shell /data/fuzz/arm64/mediarecorder_fuzzer/mediarecorder_fuzzer
Fuzzer for StagefrightMetadataRetriever
StagefrightMetadataRetriever supports the following data sources:
- Url (parameter name: url)
- File descriptor (parameter name: fd)
- DataSource (parameter name: source)
| Parameter | Valid Values | Configured Value | 
|---|---|---|
| url | Url of data source | Value obtained from FuzzedDataProvider | 
| fd | File descriptor value of input file | Value obtained from FuzzedDataProvider | 
| source | DataSource object | Data obtained from FuzzedDataProvider | 
Steps to run
- Build the fuzzer
  $ mm -j$(nproc) metadataretriever_fuzzer
- To run on device
  $ adb sync data
  $ adb shell /data/fuzz/arm64/metadataretriever_fuzzer/metadataretriever_fuzzer
Fuzzer for MediaPlayer
MediaPlayerService supports the following data sources:
- Url (parameter name: url)
- File descriptor (parameter name: fd)
- IStreamSource  (parameter name: source)
- IDataSource (parameter name: source)
- RTP Parameters  (parameter name: rtpParams)
MediaPlayerService supports the following parameters:
- Audio sessions (parameter name: audioSessionId)
- Audio stretch modes (parameter name: mStretchMode)
- Audio fallback modes  (parameter name: mFallbackMode)
- Media parameter keys (parameter name: key)
- Audio Stream Types (parameter name: streamType)
- Media Event Types (parameter name: msg)
- Media Info Types (parameter name: ext1)
You can find the possible values in the fuzzer's source code.
Steps to run
- Build the fuzzer
  $ mm -j$(nproc) mediaplayer_fuzzer
- To run on device
  $ adb sync data
  $ adb shell /data/fuzz/arm64/mediaplayer_fuzzer/mediaplayer_fuzzer