diff --git a/assUtils.py b/assUtils.py
index 510e639f8c31ea0d41365f84233cf7abffabe374..3345d5b1665b0c9b21812ab3fcfbf6a9ee3a82c8 100644
--- a/assUtils.py
+++ b/assUtils.py
@@ -51,12 +51,24 @@ Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
 '''
         self.file.write(header)
 
-    def writeSyls(self, syl_timings):
+    def writeSyls(self, syl_timings, syls_per_line=10000):
         last_syl_dur = 500
-        start_time = timeToDate(syl_timings[0][0])
+        syl_index = 0
+        while syl_index < (len(syl_timings) - syls_per_line):
+            start_time = timeToDate(syl_timings[syl_index][0])
+            end_time = timeToDate(syl_timings[syl_index + syls_per_line][0])
+            line = f'Dialogue: 0,{start_time},{end_time},Default,,0,0,0,,'
+            for i in range(syl_index, syl_index + syls_per_line):
+                syl_dur = round((syl_timings[i+1][0] - syl_timings[i][0]) * 100)
+                line += f'{{\k{syl_dur:d}}}{syl_timings[i][1]:s}'
+            line += '\n'
+            self.file.write(line)
+            syl_index += syls_per_line
+
+        start_time = timeToDate(syl_timings[syl_index][0])
         end_time = timeToDate(syl_timings[-1][0] + last_syl_dur//100)
         line = f'Dialogue: 0,{start_time},{end_time},Default,,0,0,0,,'
-        for i in range(len(syl_timings) - 1):
+        for i in range(syl_index, len(syl_timings) - 1):
             syl_dur = round((syl_timings[i+1][0] - syl_timings[i][0]) * 100)
             line += f'{{\k{syl_dur:d}}}{syl_timings[i][1]:s}'
         line += f'{{\k{last_syl_dur:d}}}{syl_timings[-1][1]:s}\n'
diff --git a/autokara.py b/autokara.py
index 033aaf421fd735d61eeefa4b47ef3c1e72bc04d4..e7f69b174336edf669cc884c52275ae95fdea7f7 100644
--- a/autokara.py
+++ b/autokara.py
@@ -48,6 +48,6 @@ print("Syls found, writing ASS file...")
 writer = AssWriter()
 writer.openAss(ass_file)
 writer.writeHeader()
-writer.writeSyls(syls)
+writer.writeSyls(syls, syls_per_line=10)
 writer.closeAss()