View Bug Details

IDProjectCategoryView StatusLast Update
0001361DCP-o-maticBugspublic2023-09-01 21:52
Reporterchr.hove Assigned Tocarl  
PriorityhighSeverityminorReproducibilityalways
Status closedResolutionfixed 
Target Version2.16.x 
Summary0001361: Crash when adding VTT subtitle file
Description

When adding the attached subtitles DCP o matic 2.12.9 on Ubuntu 14.04 64-bit crashes with this message:

An exception occurred: Programming error at ../src/lib/ffmpeg_content.cc:370 .

Steps To Reproduce

Add attached file with subtitles.

TagsNo tags attached.
Branch
Estimated weeks required
Estimated work requiredUnknown

Activities

chr.hove

2018-09-04 13:01

reporter  

test.vtt (2,304 bytes)   
WEBVTT
Kind: captions
Language: de

00:00:05.042 --> 00:00:07.083
Für Frieden und Völkerfreundschaft.

00:00:07.250 --> 00:00:08.708
- Seid bereit.
- Immer bereit.

00:00:10.417 --> 00:00:11.833
Tanzen, Kinder, tanzen!

00:00:14.042 --> 00:00:16.083
Auf die Freiheit der Völker.

00:00:16.250 --> 00:00:17.625
Ja, auf die Freiheit.

00:00:18.083 --> 00:00:21.375
Gestern Nacht
mussten die aufständischen Ungarn

00:00:21.542 --> 00:00:24.500
in ihrem Kampf um Freiheit
tragische Verluste hinnehmen.

00:00:26.667 --> 00:00:29.292
Hört mal alle.
Wir machen 'ne Schweigeminute.

00:00:29.458 --> 00:00:31.583
In Angedenken
der gefallenen ungarischen Genossen.

00:00:31.750 --> 00:00:32.917
Spinnst du jetzt völlig, Kurt?

00:00:39.125 --> 00:00:41.333
Ich will wissen,
was hier gespielt wird.

00:00:42.292 --> 00:00:44.958
Was ist hier los?

00:00:45.500 --> 00:00:47.208
Ich will wissen, was hier los ist!

00:00:49.583 --> 00:00:51.250
Es geht um die Schweigeminute,

00:00:51.417 --> 00:00:53.208
die ihr im Geschichtsunterricht
veranstaltet habt.

00:00:53.375 --> 00:00:55.208
Warum habt ihr geschwiegen?

00:00:55.917 --> 00:00:58.500
Ihr habt euch
als Freidenker zu erkennen gegeben.

00:00:58.875 --> 00:01:00.875
Ihr seid jetzt Staatsfeinde.

00:01:03.750 --> 00:01:06.542
Volksbildungsminister Lange persönlich
ist unser Gast.

00:01:06.708 --> 00:01:09.250
Ich verlange binnen einer Woche
die Namen der Rädelsführer,

00:01:09.417 --> 00:01:11.292
ansonsten wird die gesamte Klasse

00:01:11.458 --> 00:01:14.500
vom Abitur in der ganzen Republik
ausgeschlossen.

00:01:16.875 --> 00:01:19.333
Wir halten alle zusammen,
dann können die uns nix.

00:01:19.500 --> 00:01:21.458
Du versaust dir nicht
wegen so was deine Zukunft.

00:01:22.917 --> 00:01:25.500
Der Teufel weiß,
wohin diese Geschichte noch führt.

00:01:25.667 --> 00:01:27.875
Du sagst mir jetzt,
wer den Kram angezettelt hat.

00:01:28.375 --> 00:01:29.875
Jetzt, verdammt noch mal!

00:01:31.000 --> 00:01:32.542
Wer waren die Rädelsführer?

00:01:34.750 --> 00:01:36.792
Die wollen uns
gegeneinander ausspielen.

00:01:36.958 --> 00:01:38.625
Du hast ihn verraten, du Schwein!

00:01:39.875 --> 00:01:41.000
Erik!

00:01:43.125 --> 00:01:44.708
Ich brauche einen Namen.

00:01:45.375 --> 00:01:46.500
Nur einen.

test.vtt (2,304 bytes)   

carl

2018-09-04 13:04

administrator   ~0002652

We don't support WebVTT yet. It shouldn't be too hard as I think it's based on SRT.

chr.hove

2018-09-04 13:07

reporter   ~0002653

Okay, would it be possible to prevent DOM from crashing when adding unsupported subtitles?

chr.hove

2018-09-04 13:14

reporter   ~0002654

Seems that ffmpeg can do the job:

ffmpeg version 4.0.2 Copyright (c) 2000-2018 the FFmpeg developers
built with gcc 4.8 (Ubuntu 4.8.4-2ubuntu1~14.04.4)
configuration: --prefix=/tmp/ffmpeg --enable-static --disable-shared --enable-pic
libavutil 56. 14.100 / 56. 14.100
libavcodec 58. 18.100 / 58. 18.100
libavformat 58. 12.100 / 58. 12.100
libavdevice 58. 3.100 / 58. 3.100
libavfilter 7. 16.100 / 7. 16.100
libswscale 5. 1.100 / 5. 1.100
libswresample 3. 1.100 / 3. 1.100
Input #0, webvtt, from '/home/christian/tmp/test.vtt':
Duration: N/A, bitrate: N/A
Stream #0:0: Subtitle: webvtt
Output #0, srt, to 'test.srt':
Metadata:
encoder : Lavf58.12.100
Stream #0:0: Subtitle: subrip (srt)
Metadata:
encoder : Lavc58.18.100 srt
Stream mapping:
Stream #0:0 -> #0:0 (webvtt (native) -> subrip (srt))

carl

2018-09-04 13:30

administrator   ~0002655

For reasons that are lost in the mists of time we use our own subtitle decoding library, not FFmpeg. Not sure why now. Basically there are a list of known extensions and anything else we give to FFmpeg. Here we're giving it the .vtt file and then not handling it response properly.

carl

2022-11-13 23:40

administrator   ~0005292

Basic WebVTT support will be in 2.16.33.

@carl e82c83b35e7638957f3d80b12d4c59c17436473a

Bug History

Date Modified Username Field Change
2018-09-04 13:01 chr.hove New Bug
2018-09-04 13:01 chr.hove File Added: test.vtt
2018-09-04 13:04 carl Assigned To => carl
2018-09-04 13:04 carl Status new => acknowledged
2018-09-04 13:04 carl Note Added: 0002652
2018-09-04 13:07 chr.hove Note Added: 0002653
2018-09-04 13:14 chr.hove Note Added: 0002654
2018-09-04 13:30 carl Note Added: 0002655
2022-10-12 11:52 carl Target Version => 2.16.30
2022-10-12 11:53 carl Target Version 2.16.30 => 2.16.31
2022-10-12 11:53 carl Summary Crash when adding subtitle file => Crash when adding VTT subtitle file
2022-10-12 11:53 carl Priority normal => high
2022-10-19 19:47 carl Target Version 2.16.31 => 2.16.32
2022-10-26 19:07 carl Target Version 2.16.32 => 2.16.x
2022-11-13 23:40 carl Status acknowledged => resolved
2022-11-13 23:40 carl Resolution open => fixed
2022-11-13 23:40 carl Note Added: 0005292
2023-09-01 21:52 carl Status resolved => closed