A web-based application that records and analyzes videos to detect stress levels using multimodal analysis (text, audio, and visual cues).
- Video recording with webcam
- Video file upload support
- Real-time video preview
- Multimodal stress analysis:
- Text Analysis
- Acoustic Analysis
- Visual Analysis
- Combined stress score calculation
- Historical recording management
- User profile management
- Professional consultation support
- React 19
- Vite
- React Router Dom
- WebRTC (MediaRecorder API)
- REST API integration
- Node.js (v16 or higher)
- npm or yarn
- Modern web browser with webcam support
- Clone the repository:
git clone [repository-url]
cd react-recorder- Install dependencies:
npm install- Start the development server:
npm run dev- Build for production:
npm run buildsrc/
├── components/ # React components
├── hooks/ # Custom React hooks
├── services/ # API services
└── assets/ # Static assets
- Navigate to the Video Recorder page
- Grant camera/microphone permissions
- Record a video or upload an existing one
- Process the video for stress analysis
- View the detailed analysis results
The system provides three types of analysis:
- Text Analysis: Analyzes speech-to-text content
- Acoustic Analysis: Analyzes voice patterns
- Visual Analysis: Analyzes facial expressions and gestures
Results include:
- Individual stress probabilities for each analysis type
- Confidence levels
- Combined stress score
- Risk level assessment
- Professional interpretation
- Fork the repository
- Create your feature branch (
git checkout -b feature/YourFeature) - Commit your changes (
git commit -m 'Add some feature') - Push to the branch (
git push origin feature/YourFeature) - Open a Pull Request
This project is part of a Final Year Project (FYP) and is subject to academic guidelines.