SAVRN
Search Contact SAVRN

Dataset · Speech recognition

dhravani-mit-test

by Shrikant Nayak shrikanth-19/dhravani-mit-test

Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference A web-based interface for preparing audio datasets to fine-tune OpenAI's Whisper model.

Rows50
Configurations3
Size9.4 MB
Licensecc-by-4.0
AccessPublicly accessible
Monthly Downloads78

Dataset Card

By Shrikant Nayak, published under cc-by-4.0, revision cc8aadcb395a.

Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference

Dataset Preparation Interface for Fine-tuning Whisper

A web-based interface for preparing audio datasets to fine-tune OpenAI's Whisper model. This tool helps in recording, managing, and organizing voice recordings with their corresponding transcriptions, with support for cloud storage and authentication.

Features

  • User authentication via Pocketbase
  • Cloud storage support (Hugging Face Datasets)
  • Multi-language support with native names
  • Modern Material Design recording interface
  • CSV transcript file support
  • Session-based recording workflow
  • Advanced recording controls
  • ⌨ Keyboard shortcuts for efficiency
  • Progress tracking and navigation
  • Local and cloud metadata management
  • Responsive, mobile-friendly UI

Getting Started

  1. Create a transcript CSV file with your content:
transcript
"First sentence to record"
"Second sentence to record"
# For multi-language support:
transcript_en,transcript_es
"English sentence","Spanish sentence"
  1. Start the Flask application:
python app.py
  1. Access the interface:
http://localhost:5000

Usage

  1. Authentication
  • Sign in using your Google account 2. Session Setup

  • Upload your transcript CSV

  • Select language and recording location
  • Enter speaker details
  • Click "Start Session" 3. Recording

  • Use on-screen controls or keyboard shortcuts:

    • R: Start recording / Stop recording
    • Space: Play recording
    • Enter: Save recording
    • Backspace: Re-record
    • : Previous transcript
    • : Skip current
  • Navigate using row numbers
  • Adjust transcript font size as needed

Data Storage

Recordings are stored in language-specific directories:

  • Storage:

datasets/ ├── en/ │ ├── audio/ │ │ ├── {user_prefix}_{YYYYMMDD_HHMMSS}.wav │ │ └── ... │ └── en.parquet # English recordings metadata ├── es/ │ ├── audio/ │ │ ├── {user_prefix}_{YYYYMMDD_HHMMSS}.wav │ │ └── ... │ └── es.parquet # Spanish recordings metadata │

Technical Details

Audio Recording

  • Browser Recording Format: 48kHz mono WebM
  • Storage Format: 16bit mono WAV
  • Maximum Duration: 30 seconds
  • Audio Processing: WebM -> WAV conversion with sample rate adjustment
  • Channels: 1 (mono)

Data Management

  • Metadata Organization:
  • stats.json: Global recording statistics
  • {language_code}.parquet: Language-specific metadata files
  • File Naming: {user_id_prefix}_{YYYYMMDD_HHMMSS}.{format}
  • Unicode Handling: NFC normalization for text

Authentication

  • Provider: Pocketbase with Google OAuth
  • Session Management: Server-side Flask sessions

Languages

  • Support: 74 languages with native names
  • Codes: ISO 639-1 standard
  • CSV Format:
  • Single language: transcript column
  • Multi-language: transcript_${lang_code} columns

Upload Management

  • Queue System: Background worker thread
  • Status Tracking: Real-time upload status polling
  • Error Handling: Automatic retries with timeout
  • Progress Updates: Toast notifications
  • Temporary Storage: ./temp folder for conversions

Frontend Features

  • Keyboard Shortcuts: Recording and navigation
  • Real-time Status: Progress tracking and notifications

Security

  • Authentication Required: All routes except static/login
  • File Validation: MIME type and extension checking
  • Secure Context: HTTPS recommended

Performance

  • Upload Queue: Asynchronous processing
  • Audio Conversion: Server-side processing
  • Session Caching: Browser storage optimization
  • Progress Tracking: Real-time websocket updates

Browser Support

  • Chrome (recommended)
  • Brave
  • Edge
  • Safari

Known Limitations

  • Requires microphone permissions
  • Internet connection needed
  • Maximum recording duration: 30 seconds
  • File size limits based on storage backend

Structure

kn 38 rows

SplitRowsSize
train389.1 MB
file_namestringuser_idstringtranscriptionstringspeaker_namestringaudioAudiosampling_rateint64durationfloat64genderstringcountrystringstatestringcitystringstatusstringverified_bystringageint64accentstringmother_tonguestringuser_infostring

ml 2 rows

SplitRowsSize
train2148.1 KB
user_idstringfile_namestringtranscriptionstringspeaker_namestringaudioAudiosampling_rateint64durationfloat64genderstringcountrystringstatestringcitystringstatusstringverified_bystringageint64accentstringmother_tonguestringuser_infostring

ta 10 rows

SplitRowsSize
train101.9 MB
file_namestringuser_idstringtranscriptionstringspeaker_namestringaudioAudiosampling_rateint64durationfloat64genderstringcountrystringstatestringcitystringstatusstringverified_bystringageint64accentstringmother_tonguestringuser_infostring

Details

Repository
shrikanth-19/dhravani-mit-test
Publisher
Shrikant Nayak
Task category
Speech recognition
Tags
Not stated by the source
Size category
Not stated by the source
Languages
kn, ml, ta
Revision
cc8aadcb395af52de49009a73ffb380cfdc5334a
Last updated
2026-09-18

Files

18 files, 9.4 MB in total.

Data3 files · 6.7 MB
Documentation1 file · 4.5 KB
Other13 files · 2.7 MB
Repository1 file · 2.5 KB
Every file
FileTypeSizeSHA-256
kn/kn.parquetData6.0 MBb942c7ebb1ce
ml/ml.parquetData122.9 KB0dc526d88217
ta/ta.parquetData569.0 KB55c64b15ab27
README.mdDocumentation4.5 KB
kn/audio/kan_1_shrikanth_22cs150_sode_edu_in/unknown_20260730_123427.wavOther288.7 KBb3bb4c9d342f
kn/audio/kan_1_shrikanth_22cs150_sode_edu_in/unknown_20260730_123446.wavOther354.3 KB8841f244144a
kn/audio/kan_1_shrikanth_22cs150_sode_edu_in/unknown_20260730_123453.wavOther217.9 KBb8a7db1487c2
kn/audio/kan_1_shrikanth_22cs150_sode_edu_in/unknown_20260911_165901.wavOther112.0 KB22a6324e865a
kn/audio/kan_1_shrikanth_22cs150_sode_edu_in/unknown_20260911_165907.wavOther82.0 KB5b6288958312
kn/audio/kan_2_nayakshrikant56_gmail_com/nayakshrikant56_20260730_123544.wavOther403.4 KB26748d0d3d3a
kn/audio/kan_2_nayakshrikant56_gmail_com/nayakshrikant56_20260730_123551.wavOther329.7 KB42a97dd0d7d4
kn/audio/kan_2_nayakshrikant56_gmail_com/nayakshrikant56_20260730_123557.wavOther305.1 KB5549a4f374e5
kn/audio/kan_2_nayakshrikant56_gmail_com/nayakshrikant56_20260730_123612.wavOther337.9 KB498ae7ba3148
kn/audio/kan_2_nayakshrikant56_gmail_com/nayakshrikant56_20260911_154035.wavOther106.5 KB99698cb51b7d
kn/audio/kan_2_nayakshrikant56_gmail_com/nayakshrikant56_20260911_154040.wavOther76.5 KBf1b573612d85
kn/audio/kan_2_nayakshrikant56_gmail_com/nayakshrikant56_20260911_154046.wavOther60.1 KBaa498d6cfdf1
kn/audio/kan_2_nayakshrikant56_gmail_com/nayakshrikant56_20260911_154051.wavOther65.6 KB2d4e487d0d3e
.gitattributesRepository2.5 KB

License and Download

License
cc-by-4.0
Access
No access gate
Download from Shrikant Nayak

Released by Shrikant Nayak through its official repository on Hugging Face. Read the license.