Commit graph

40 commits

Author SHA1 Message Date
Mathieu Duponchelle
caca46e0e6 subparse: convert from pango-markup to utf8 ..
when downstream requires it
2020-03-27 15:27:06 +00:00
Antonio Ospite
f8bed33d4b test: add subparse test for SRT subtitles with no newline at the end
Add a test to verify that SRT subtitles work even if the last chunk does
not have an empty line after it.
2019-05-06 13:28:02 +02:00
Antonio Ospite
1c454fdafc subparse: fix pushing WebVTT cue when last is not an empty line
If the last WebVTT cue does not have an empty line after it, or if it
does not end with a newline at all, it does not get pushed out and it
won't be displayed.

gst_sub_parse_sink_event() already handles the issue for other subtitle
formats, enable handling it for GST_SUB_PARSE_FORMAT_VTT too.

While at it also add a test for this case.
2019-05-06 13:28:02 +02:00
Jordan Petridis
5396ef6e45 subparse: do not assert when failing to parse subrip timestamp
If a badly formatted was passed into `parse_subrip_time` it would
assert instead of exiting gracefully. This is problematic since
the input is provided by the user, and will trigger a crash.

https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/532
2019-01-14 11:43:57 +00:00
Philippe Normand
8cfd85ec61 subparse: support for more than 32 unclosed markup tags
https://bugzilla.gnome.org/show_bug.cgi?id=796043
2018-05-12 17:05:06 +01:00
Tim-Philipp Müller
778589cd5b test: fix indentation 2016-03-30 22:41:54 +01:00
Jan Schmidt
fd2a14144a subparse: WebVTT parsing support
WebVTT is a new subtitle format for HTML5 video. In this first
version of the parser the cue settings are parsed but only stored in
the internal parser state structure. Later on these settings could be
part of the GstBuffer metadata.

https://bugzilla.gnome.org/show_bug.cgi?id=629764
2016-03-25 00:58:42 +11:00
Tim-Philipp Müller
0c992c5065 tests: subparse: add unit test for closing tag detection
</ i> should be handled like </i>

https://bugzilla.gnome.org/show_bug.cgi?id=755875
2015-09-30 18:18:15 +01:00
Sebastian Dröge
4f4ff6bda6 subparse: Add unit test for LRC subtitles 2013-12-18 15:52:53 +01:00
Tim-Philipp Müller
60e87090eb tests: add unit test for samiparser issue
https://bugzilla.gnome.org/show_bug.cgi?id=712805
2013-11-21 16:34:25 +00:00
Young-Ho Cha
6cea51c962 tests: update sami parser testcases
Remove libxml dependency for sami parser
and add more testcases.

https://bugzilla.gnome.org/show_bug.cgi?id=693056
2013-07-16 18:10:37 +01:00
Sebastian Dröge
d8a3895ac9 tests: Fix event order and missing events 2013-05-10 12:29:15 +02:00
Tim-Philipp Müller
5f59b4f7ee Fix FSF address
https://bugzilla.gnome.org/show_bug.cgi?id=687520
2012-11-03 23:05:09 +00:00
Tim-Philipp Müller
7c2e7b1a4f text/plain + text/x-pango-markup -> text/x-raw 2012-09-02 02:45:41 +01:00
Mark Nauwelaerts
0acef1dbe9 tests: various fixes
... such as setting input caps, ensuring to unmap and bearing in
mind that gst_buffer_make_writable usually does not provide
a separate memory copy/area.
2012-04-03 18:31:27 +02:00
Wim Taymans
345dc31f20 update for buffer api change 2012-03-30 18:15:30 +02:00
Edward Hervey
4935af23e7 tests: Fix subparse test
It wasn't checking the srt_input2
2012-03-30 11:56:18 +02:00
Wim Taymans
63f3f27164 update for new memory api 2012-02-22 02:05:24 +01:00
Wim Taymans
fcdc385aa1 port to new map API 2012-01-25 12:30:53 +01:00
Wim Taymans
a01fad7024 tests: port and enable more unit tests 2012-01-04 16:41:53 +01:00
Wim Taymans
6cb590ba16 tests: fix more unit tests 2011-03-28 17:46:52 +02:00
Wim Taymans
40dc12da3a tests: work on porting the unit tests 2011-03-28 14:12:24 +02:00
Iago Toral
f63643bd54 subparse: Add support for DKS subtitle format
Fixes bug #598936.
2009-10-22 10:02:11 +02:00
Tim-Philipp Müller
40bea96ff6 subparse: recognise more subrip timestamp variants
Be even less restrictive in what we accept for .srt timestamps when
typefinding and parsing subrip subtitles and add a unit test for
the 'new' format. Fixes #585197.
2009-06-10 14:41:41 +01:00
Sebastian Dröge
60bf63486b Add support for subtitle files with UTF-8 BOM at the beginning by simple stripping it from the first line before pass...
Original commit message from CVS:
* gst/subparse/gstsubparse.c:
(gst_sub_parse_data_format_autodetect), (handle_buffer),
(gst_sub_parse_change_state):
* gst/subparse/gstsubparse.h:
* tests/check/elements/subparse.c: (GST_START_TEST):
Add support for subtitle files with UTF-8 BOM at the beginning
by simple stripping it from the first line before passing it
to any parsing code. Fixes bug #555257 and playback of files
created by Gnome Subtitles.
2008-10-10 17:13:40 +00:00
Sebastian Dröge
b735321f58 Make the detection of the used subtitle a bit less strict for srt subtitles. Fixes bug #555607.
Original commit message from CVS:
Based on a patch by: xavierb at gmail dot com
* gst/subparse/gstsubparse.c:
(gst_sub_parse_data_format_autodetect):
* tests/check/elements/subparse.c: (GST_START_TEST):
Make the detection of the used subtitle a bit less strict
for srt subtitles. Fixes bug #555607.
2008-10-10 15:32:10 +00:00
Stefan Kost
1875564b65 Rework last change, so that we build subparse, but just disable the sami parse functionality, if we're configured to ...
Original commit message from CVS:
* configure.ac:
* gst/subparse/Makefile.am:
* gst/subparse/gstsubparse.c:
* gst/subparse/samiparse.c:
* tests/check/elements/subparse.c:
Rework last change, so that we build subparse, but just disable the
sami parse functionality, if we're configured to not use xml. In the
tests only the sami test is disabled now.
2008-09-03 10:12:04 +00:00
Tim-Philipp Müller
206f91995b Limit duration to a maximum of five seconds for tmplayer format where we can guess the duration only from the timesta...
Original commit message from CVS:
* gst/subparse/gstsubparse.c: (parser_state_init),
(gst_sub_parse_format_autodetect), (handle_buffer):
* gst/subparse/gstsubparse.h:
* tests/check/elements/subparse.c: (test_tmplayer_style3b):
Limit duration to a maximum of five seconds for tmplayer format where
we can guess the duration only from the timestamp of the next line of
text. We don't want to show a text for eternities just because nothing
else is being said for a while.
2008-05-25 20:51:35 +00:00
Sebastian Dröge
9333eb4899 gst/subparse/samiparse.c: Remove trailing, leading and double whitespaces.
Original commit message from CVS:
* gst/subparse/samiparse.c: (handle_start_sync),
(end_sami_element), (characters_sami):
Remove trailing, leading and double whitespaces.
Correctly timestamp buffers and output the last buffer too.
* tests/check/elements/subparse.c: (GST_START_TEST),
(subparse_suite):
Add a simple unit test for SAMI parsing.
2008-05-05 12:33:05 +00:00
Tim-Philipp Müller
1157de776a tests/check/elements/subparse.c: Add unit test for the tmplayer variant from bug #530962.
Original commit message from CVS:
* tests/check/elements/subparse.c: (do_test),
(test_tmplayer_style3b), (subparse_suite):
Add unit test for the tmplayer variant from bug #530962.
2008-05-03 16:00:04 +00:00
Tomasz Sałaciński
6ab3a0e0c0 Forward slashes at the beginning and end of a line also signify italics (Fixes: #518162).
Original commit message from CVS:
Based on patch by: Tomasz Sałaciński <tsalacinski gmail com>
* gst/subparse/gstsubparse.c: (parse_mdvdsub):
* tests/check/elements/subparse.c: (test_microdvd_with_italics),
(subparse_suite):
Forward slashes at the beginning and end of a line also signify
italics (Fixes: #518162).
2008-02-23 09:51:26 +00:00
Robin Stocker
7bbbf15ad8 gst/subparse/gstsubparse.c: Some .srt files start with chunk number 0 and not chunk number 1, recognise and accept th...
Original commit message from CVS:
Patch by: Robin Stocker <robin dot stocker at gmx dot ch>
* gst/subparse/gstsubparse.c: (gst_sub_parse_data_format_autodetect):
Some .srt files start with chunk number 0 and not chunk number 1,
recognise and accept those as well (fixes #502497).
* tests/check/elements/subparse.c: (srt_input), (srt_input0),
(test_src):
Add unit test for the above.
2007-12-08 18:38:39 +00:00
Sven Arvidsson
0cffe4be7d gst/subparse/gstsubparse.*: Add support for SubViewer version 1 and 2 subtitles. Fixes #394061.
Original commit message from CVS:
Based on a patch by Sven Arvidsson <sa at whiz dot se>:
* gst/subparse/gstsubparse.c: (parse_subrip),
(subviewer_unescape_newlines), (parse_subviewer),
(gst_sub_parse_data_format_autodetect),
(gst_sub_parse_format_autodetect), (gst_subparse_type_find):
* gst/subparse/gstsubparse.h:
Add support for SubViewer version 1 and 2 subtitles. Fixes #394061.
* tests/check/elements/subparse.c: (GST_START_TEST),
(subparse_suite):
Add a unit test for both SubViewer formats.
2007-06-05 21:36:11 +00:00
Tim-Philipp Müller
5de913c273 tests/check/elements/subparse.c: Add unit test for MPL2 subtitle format (#413799).
Original commit message from CVS:
* tests/check/elements/subparse.c: (GST_START_TEST),
(subparse_suite):
Add unit test for MPL2 subtitle format (#413799).
2007-03-10 11:21:08 +00:00
Tim-Philipp Müller
5f186351a1 gst/subparse/gstsubparse.c: For SubRip (.srt) subtitles, ignore all markup tags we don't handle (like font tags, for ...
Original commit message from CVS:
* gst/subparse/gstsubparse.c: (subrip_remove_unhandled_tag),
(subrip_remove_unhandled_tags), (parse_subrip):
For SubRip (.srt) subtitles, ignore all markup tags we don't
handle (like font tags, for example).
* tests/check/elements/subparse.c:
Add test for this.
2007-02-10 18:19:37 +00:00
Tim-Philipp Müller
9052dc4681 gst/subparse/gstsubparse.*: Remove spurious 1000 subtrahend when calculating the timestamp from the frame number and ...
Original commit message from CVS:
* gst/subparse/gstsubparse.c: (parse_mdvdsub):
* gst/subparse/gstsubparse.h:
Remove spurious 1000 subtrahend when calculating the timestamp from
the frame number and the frame rate . Also, use the frames/second
value specified in the first line of the file, if one is specified
there. Should fix #357503.
* tests/check/elements/subparse.c: (do_test),
(test_tmplayer_do_test), (test_microdvd_do_test), (GST_START_TEST),
(subparse_suite):
Add some basic unit tests for the microdvd subtitle format.
2007-01-08 12:30:03 +00:00
Stefan Kost
5f8d6ab7a0 tests/check/elements/: consistent pad (de)activation
Original commit message from CVS:
* tests/check/elements/audioresample.c: (cleanup_audioresample):
* tests/check/elements/audiotestsrc.c: (cleanup_audiotestsrc):
* tests/check/elements/gdpdepay.c: (setup_gdpdepay),
(cleanup_gdpdepay):
* tests/check/elements/gdppay.c: (setup_gdppay), (cleanup_gdppay):
* tests/check/elements/subparse.c: (teardown_subparse):
* tests/check/elements/textoverlay.c: (cleanup_textoverlay):
* tests/check/elements/videorate.c: (cleanup_videorate):
* tests/check/elements/videotestsrc.c: (cleanup_videotestsrc):
* tests/check/elements/volume.c: (cleanup_volume):
* tests/check/elements/vorbisdec.c: (setup_vorbisdec),
(cleanup_vorbisdec):
* tests/check/elements/vorbistag.c: (setup_vorbistag),
(cleanup_vorbistag):
consistent pad (de)activation
2006-12-21 08:12:26 +00:00
Tim-Philipp Müller
1b6b21adab gst/subparse/: Add support for TMPlayer-type subtitles (#362845).
Original commit message from CVS:
* gst/subparse/Makefile.am:
* gst/subparse/gstsubparse.c:
(gst_sub_parse_data_format_autodetect),
(gst_sub_parse_format_autodetect), (handle_buffer),
(gst_sub_parse_chain), (gst_subparse_type_find), (plugin_init):
* gst/subparse/gstsubparse.h:
* gst/subparse/tmplayerparse.c: (tmplayer_parse_line),
(parse_tmplayer):
* gst/subparse/tmplayerparse.h:
Add support for TMPlayer-type subtitles (#362845).
* tests/check/elements/subparse.c: (test_tmplayer_do_test),
(GST_START_TEST), (subparse_suite):
Add some basic unit tests for the above.
2006-10-23 12:06:44 +00:00
Tim-Philipp Müller
ad087e01ff gst/subparse/gstsubparse.c: Add missing closing tags for markup and fix broken markup, otherwise pango won't render a...
Original commit message from CVS:
* gst/subparse/gstsubparse.c: (subrip_fix_up_markup),
(parse_subrip), (handle_buffer):
Add missing closing tags for markup and fix broken markup,
otherwise pango won't render anything (fixes #357531). Also,
make sure the text we send out is always NUL-terminated
(better safe than sorry etc.).
* tests/check/elements/subparse.c: (test_srt_do_test),
(test_srt):
Some more tests for .srt incl. tests for the above stuff.
2006-10-20 17:02:19 +00:00
Tim-Philipp Müller
1103d38c01 tests/check/: Add very simple unit test for subparse.
Original commit message from CVS:
* tests/check/Makefile.am:
* tests/check/elements/.cvsignore:
* tests/check/elements/subparse.c: (buffer_from_static_string),
(setup_subparse), (teardown_subparse), (test_srt_do_test),
(GST_START_TEST), (subparse_suite):
Add very simple unit test for subparse.
2006-10-19 09:17:48 +00:00