Analyze recording for black/dim frames
mobile_analyze_recordingAnalyze a mobile recording to compute mean grayscale, detect black/dim runs, and classify brightness into OEM-agnostic buckets for regression testing.
Instructions
Sample mean grayscale over an MP4 (ffmpeg), detect black/dim runs, and classify OEM-agnostic brightness buckets (true_black, near_black_content, system_launcher_idle, dark_app_ui, light_app_ui). Bucket ranges are heuristics—calibrate with exportSampleFrames on the device under test. Use mode='flash' for one-call regressions. Full per-frame timeline is omitted unless includeFullTimeline=true.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| fps | No | ||
| mode | No | flash: exportSampleFrames=true, timelineDownsampleMs=100, blackThreshold=16 | default |
| path | No | ||
| marks | No | ||
| serial | No | Exact ADB serial from mobile_devices_list; never inferred when multiple devices exist | |
| artifactUri | No | ||
| dimThreshold | No | ||
| blackThreshold | No | Mean gray below this counts as black (default 16 = true_black) | |
| exportSampleFrames | No | ||
| includeFullTimeline | No | ||
| timelineDownsampleMs | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | ||
| marks | Yes | ||
| width | Yes | ||
| height | Yes | ||
| dimRuns | Yes | ||
| samples | Yes | ||
| blackRuns | Yes | ||
| sampleFps | Yes | ||
| durationMs | Yes | ||
| frameCount | Yes | ||
| hasDimFlash | Yes | ||
| maxDimRunMs | Yes | ||
| bucketCounts | Yes | ||
| dimThreshold | Yes | ||
| dimFrameCount | Yes | ||
| hasBlackFlash | Yes | ||
| maxBlackRunMs | Yes | ||
| blackThreshold | Yes | ||
| blackFrameCount | Yes | ||
| lastDimOffsetMs | Yes | ||
| timelineSummary | Yes | ||
| dimRunsTruncated | Yes | ||
| firstDimOffsetMs | Yes | ||
| meanGrayTimeline | No | ||
| lastBlackOffsetMs | Yes | ||
| blackRunsTruncated | Yes | ||
| firstBlackOffsetMs | Yes |