parseSRT static method
Parse SRT subtitle format
Implementation
static List<SubtitleCue> parseSRT(String content) {
final cues = <SubtitleCue>[];
final blocks = content.split('\n\n');
for (final block in blocks) {
final lines = block.trim().split('\n');
if (lines.length < 3) continue;
// Skip sequence number (first line)
final timeLine = lines[1];
if (!timeLine.contains('-->')) continue;
final parts = timeLine.split('-->');
if (parts.length != 2) continue;
final startTime = _parseSRTTime(parts[0].trim());
final endTime = _parseSRTTime(parts[1].trim());
final text = lines.sublist(2).join('\n').trim();
if (startTime != null && endTime != null && text.isNotEmpty) {
cues.add(SubtitleCue(start: startTime, end: endTime, text: text));
}
}
return cues;
}