Commit graph

6 commits

Author SHA1 Message Date
Rob Clark
4dc648d343 dvdspu: add YV12 and NV12 support
https://bugzilla.gnome.org/show_bug.cgi?id=667220

Conflicts:
	gst/dvdspu/gstdvdspu.c
	gst/dvdspu/gstdvdspu.h
	gst/dvdspu/gstspu-pgs.c
	gst/dvdspu/gstspu-vobsub-render.c
2012-10-03 03:35:51 +10:00
Jan Schmidt
b68a05dbfa gstspu: Implement PGS rendering and alpha blending
Refactor the DVD subpicture compositing, switching it to 8-bit alpha
calculations. Reuse some of the resulting code to implement PGS
subpicture blending.

Implement parsing and collecting of composition objects properly, but
assuming a single active window and colour palette for now. I need more
PGS samples.
2009-05-26 15:58:09 +01:00
Jan Schmidt
571a7746fc dvdspu: Add a guard when we don't have any subpicture buffer to render 2009-05-11 17:04:08 +01:00
Wim Taymans
5704bc8f89 dvdspu: do some basic clipping
Add some basic clipping of the subtitle region when the subtitle is bigger than
the image we should put it on.
2009-04-30 14:20:16 +02:00
Tim-Philipp Müller
e96cd36332 gst/dvdspu/: Fix up dvdspu element again after previous namespace mangling: rename debug category variable to old nam...
Original commit message from CVS:
* gst/dvdspu/gstdvdspu-render.c: (gst_dvd_spu_render_spu):
* gst/dvdspu/gstdvdspu.c: (dvdspu_debug), (GST_CAT_DEFAULT),
(subpic_sink_factory), (gst_dvd_spu_base_init),
(gst_dvd_spu_class_init), (gst_dvd_spu_init), (gst_dvd_spu_clear),
(gst_dvd_spu_dispose), (gst_dvd_spu_finalize),
(gst_dvd_spu_flush_spu_info), (gst_dvd_spu_buffer_alloc),
(gst_dvd_spu_src_event), (gst_dvd_spu_video_set_caps),
(gst_dvd_spu_video_proxy_getcaps), (gst_dvd_spu_video_event),
(gst_dvd_spu_video_chain), (dvspu_handle_vid_buffer),
(gst_dvd_spu_redraw_still), (gst_dvd_spu_parse_chg_colcon),
(gst_dvd_spu_exec_cmd_blk), (gst_dvd_spu_finish_spu_buf),
(gst_dvd_spu_setup_cmd_blk), (gst_dvd_spu_handle_new_spu_buf),
(gst_dvd_spu_handle_dvd_event), (gst_dvd_spu_advance_spu),
(gst_dvd_spu_check_still_updates), (gst_dvd_spu_subpic_chain),
(gst_dvd_spu_subpic_event), (gst_dvd_spu_change_state),
(gst_dvd_spu_plugin_init):
* gst/dvdspu/gstdvdspu.h: (GST_TYPE_DVD_SPU):
Fix up dvdspu element again after previous namespace mangling:
rename debug category variable to old name, matching that in
dvdspu-render.c, to avoid undefined symbol error when loading
the module; same for the _render function in dvdspu-render.c:
we must use the same name in both .c files; change functions
now called gstgst_* back to gst_* again; and while we're at it,
we may as well canonicalise the namespace properly, namely to
gst_dvd_spu_*.
2008-01-21 11:01:30 +00:00
Jan Schmidt
077f84ac1f dvdspu element donated by Fluendo. It implements a DVD Sub-Picture
Original commit message from CVS:
* configure.ac:
* gst/dvdspu/.cvsignore:
* gst/dvdspu/Notes.txt:
* gst/dvdspu/gstdvdspu-render.c: (dvdspu_recalc_palette),
(dvdspu_update_palettes), (dvdspu_clear_comp_buffers),
(dvdspu_get_nibble), (dvdspu_get_rle_code), (dvdspu_draw_rle_run),
(rle_end_x), (dvdspu_render_line), (dvdspu_update_chgcol),
(dvdspu_render_line_with_chgcol), (dvdspu_blend_comp_buffers),
(gstdvdspu_render_spu):
* gst/dvdspu/gstdvdspu.c: (dvdspu_base_init), (dvdspu_class_init),
(dvdspu_init), (dvdspu_clear), (dvdspu_dispose), (dvdspu_finalize),
(dvdspu_flush_spu_info), (dvdspu_buffer_alloc), (dvdspu_src_event),
(dvdspu_video_set_caps), (dvdspu_video_proxy_getcaps),
(dvdspu_video_event), (dvdspu_video_chain),
(dvspu_handle_vid_buffer), (dvdspu_redraw_still),
(gstdvdspu_parse_chg_colcon), (dvdspu_exec_cmd_blk),
(dvdspu_finish_spu_buf), (dvdspu_setup_cmd_blk),
(dvdspu_handle_new_spu_buf), (dvdspu_handle_dvd_event),
(dvdspu_dump_dcsq), (dvdspu_advance_spu),
(dvdspu_check_still_updates), (dvdspu_subpic_chain),
(dvdspu_subpic_event), (dvdspu_change_state),
(gstdvdspu_plugin_init):
* gst/dvdspu/gstdvdspu.h:
dvdspu element donated by Fluendo. It implements a DVD Sub-Picture
Unit, decoding and overlaying DVD subtitles and menu graphics.
* gst/mpeg2sub/.cvsignore:
* gst/mpeg2sub/Makefile.am:
* gst/mpeg2sub/Notes.txt:
* gst/mpeg2sub/gstmpeg2subt.c:
* gst/mpeg2sub/gstmpeg2subt.h:
* gst/mpeg2sub/mpeg2subt.vcproj:
Delete old and broken mpeg2subt element that was never ported from 0.8
2007-08-27 14:33:59 +00:00