Commit a276a98a authored by Johan Bilien's avatar Johan Bilien

Added VCD input plugin for Linux :

The Linux specific stuff is located in linux_cdrom_tools files.
For the time being, it only has title (tracks). Chapters will come if I
ever can read .vcd files.
I've modified Gnome and GTK+, not the others.
I've noticed a big bug, it segfaults at the end of a title. I will
have a look on this tomorrow.
Please be indulgent, it's my first peace of code ;-)
parent 66cf4426
......@@ -13,12 +13,12 @@ endif
#
# All possible plugin directories, needed for make clean
#
PLUGINS_DIR := alsa beos darwin directx dsp dummy dvd esd fb ggi glide gtk downmix idct imdct kde macosx mga motion mpeg qt sdl text x11 yuv
PLUGINS_DIR := alsa beos darwin directx dsp dummy dvd esd fb ggi glide gtk downmix idct imdct kde macosx mga motion mpeg qt sdl text vcd x11 yuv
#
# All possible plugin objects
#
PLUGINS_TARGETS := alsa/alsa beos/beos darwin/darwin directx/directx dsp/dsp dummy/dummy dummy/null dvd/dvd esd/esd fb/fb ggi/ggi glide/glide gtk/gnome gtk/gtk downmix/downmix downmix/downmixsse downmix/downmix3dn idct/idct idct/idctclassic idct/idctmmx idct/idctmmxext idct/idctaltivec imdct/imdct imdct/imdct3dn imdct/imdctsse kde/kde macosx/macosx macosx/macosx_qt mga/mga motion/motion motion/motionmmx motion/motionmmxext motion/motion3dnow motion/motionaltivec mpeg/es mpeg/ps mpeg/ts qt/qt sdl/sdl text/ncurses text/rc x11/x11 x11/xvideo yuv/yuv yuv/yuvmmx
PLUGINS_TARGETS := alsa/alsa beos/beos darwin/darwin directx/directx dsp/dsp dummy/dummy dummy/null dvd/dvd esd/esd fb/fb ggi/ggi glide/glide gtk/gnome gtk/gtk downmix/downmix downmix/downmixsse downmix/downmix3dn idct/idct idct/idctclassic idct/idctmmx idct/idctmmxext idct/idctaltivec imdct/imdct imdct/imdct3dn imdct/imdctsse kde/kde macosx/macosx macosx/macosx_qt mga/mga motion/motion motion/motionmmx motion/motionmmxext motion/motion3dnow motion/motionaltivec mpeg/es mpeg/ps mpeg/ts qt/qt sdl/sdl text/ncurses text/rc vcd/vcd x11/x11 x11/xvideo yuv/yuv yuv/yuvmmx
#
# C Objects
......
This diff is collapsed.
......@@ -659,6 +659,19 @@ AC_ARG_WITH(dvdcss,
LIB_DVD_PLUGIN="${LIB_DVD_PLUGIN} -ldl"
fi ])
dnl
dnl vcd module
dnl
AC_ARG_ENABLE(vcd,
[ --enable-vcd VCDs support (default disabled)],
[if test x$enable_vcd = xyes; then
PLUGINS="${PLUGINS} vcd"
fi])
dnl
dnl dummy plugin
dnl
......
......@@ -526,7 +526,7 @@ create_intf_window (void)
(GtkDestroyNotify) gtk_widget_unref);
gtk_box_pack_start (GTK_BOX (vbox8), dvd_box, TRUE, TRUE, 0);
label21 = gtk_label_new (_("DVD "));
label21 = gtk_label_new (_("Disc"));
gtk_widget_ref (label21);
gtk_object_set_data_full (GTK_OBJECT (intf_window), "label21", label21,
(GtkDestroyNotify) gtk_widget_unref);
......@@ -561,7 +561,6 @@ create_intf_window (void)
gtk_widget_show (button_title_prev);
gtk_box_pack_start (GTK_BOX (title_chapter_box), button_title_prev, FALSE, FALSE, 0);
gtk_tooltips_set_tip (tooltips, button_title_prev, _("Select previous title"), NULL);
gtk_button_set_relief (GTK_BUTTON (button_title_prev), GTK_RELIEF_NONE);
button_title_next = gnome_stock_button (GNOME_STOCK_BUTTON_NEXT);
gtk_widget_ref (button_title_next);
......@@ -569,7 +568,6 @@ create_intf_window (void)
(GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show (button_title_next);
gtk_box_pack_start (GTK_BOX (title_chapter_box), button_title_next, FALSE, FALSE, 0);
gtk_button_set_relief (GTK_BUTTON (button_title_next), GTK_RELIEF_NONE);
vseparator1 = gtk_vseparator_new ();
gtk_widget_ref (vseparator1);
......@@ -606,7 +604,6 @@ create_intf_window (void)
gtk_widget_show (button_chapter_prev);
gtk_box_pack_start (GTK_BOX (dvd_chapter_box), button_chapter_prev, FALSE, FALSE, 0);
gtk_tooltips_set_tip (tooltips, button_chapter_prev, _("Select previous chapter"), NULL);
gtk_button_set_relief (GTK_BUTTON (button_chapter_prev), GTK_RELIEF_NONE);
button_chapter_next = gnome_stock_button (GNOME_STOCK_BUTTON_NEXT);
gtk_widget_ref (button_chapter_next);
......@@ -615,7 +612,6 @@ create_intf_window (void)
gtk_widget_show (button_chapter_next);
gtk_box_pack_start (GTK_BOX (dvd_chapter_box), button_chapter_next, FALSE, FALSE, 0);
gtk_tooltips_set_tip (tooltips, button_chapter_next, _("Select next chapter"), NULL);
gtk_button_set_relief (GTK_BUTTON (button_chapter_next), GTK_RELIEF_NONE);
network_box = gtk_hbox_new (TRUE, 0);
gtk_widget_ref (network_box);
......@@ -1250,7 +1246,6 @@ create_intf_disc (void)
(GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show (disc_vcd);
gtk_box_pack_start (GTK_BOX (vbox4), disc_vcd, FALSE, FALSE, 0);
gtk_widget_set_sensitive (disc_vcd, FALSE);
frame2 = gtk_frame_new (_("Starting position"));
gtk_widget_ref (frame2);
......
......@@ -625,7 +625,7 @@ create_intf_window (void)
gtk_box_pack_start (GTK_BOX (window_vbox), dvd_box, TRUE, TRUE, 0);
gtk_widget_set_usize (dvd_box, 500, 24);
dvd_label = gtk_label_new (_("DVD"));
dvd_label = gtk_label_new (_("Disc"));
gtk_widget_ref (dvd_label);
gtk_object_set_data_full (GTK_OBJECT (intf_window), "dvd_label", dvd_label,
(GtkDestroyNotify) gtk_widget_unref);
......@@ -1455,7 +1455,6 @@ create_intf_disc (void)
(GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show (disc_vcd);
gtk_box_pack_start (GTK_BOX (vbox5), disc_vcd, FALSE, FALSE, 0);
gtk_widget_set_sensitive (disc_vcd, FALSE);
frame3 = gtk_frame_new (_("Starting position"));
gtk_widget_ref (frame3);
......
......@@ -640,7 +640,7 @@
<widget>
<class>GtkLabel</class>
<name>label21</name>
<label>DVD </label>
<label>Disc</label>
<justify>GTK_JUSTIFY_CENTER</justify>
<wrap>False</wrap>
<xalign>0.5</xalign>
......@@ -711,7 +711,7 @@
<last_modification_time>Sat, 19 May 2001 03:13:28 GMT</last_modification_time>
</signal>
<stock_button>GNOME_STOCK_BUTTON_PREV</stock_button>
<relief>GTK_RELIEF_NONE</relief>
<relief>GTK_RELIEF_NORMAL</relief>
<child>
<padding>0</padding>
<expand>False</expand>
......@@ -730,7 +730,7 @@
<last_modification_time>Sat, 19 May 2001 03:13:23 GMT</last_modification_time>
</signal>
<stock_button>GNOME_STOCK_BUTTON_NEXT</stock_button>
<relief>GTK_RELIEF_NONE</relief>
<relief>GTK_RELIEF_NORMAL</relief>
<child>
<padding>0</padding>
<expand>False</expand>
......@@ -806,7 +806,7 @@
<last_modification_time>Tue, 29 May 2001 13:13:41 GMT</last_modification_time>
</signal>
<stock_button>GNOME_STOCK_BUTTON_PREV</stock_button>
<relief>GTK_RELIEF_NONE</relief>
<relief>GTK_RELIEF_NORMAL</relief>
<child>
<padding>0</padding>
<expand>False</expand>
......@@ -826,7 +826,7 @@
<last_modification_time>Sat, 19 May 2001 03:13:08 GMT</last_modification_time>
</signal>
<stock_button>GNOME_STOCK_BUTTON_NEXT</stock_button>
<relief>GTK_RELIEF_NONE</relief>
<relief>GTK_RELIEF_NORMAL</relief>
<child>
<padding>0</padding>
<expand>False</expand>
......@@ -1574,7 +1574,6 @@ Henri Fallon &lt;henri@via.ecp.fr&gt;
<widget>
<class>GtkRadioButton</class>
<name>disc_vcd</name>
<sensitive>False</sensitive>
<can_focus>True</can_focus>
<signal>
<name>toggled</name>
......
......@@ -639,7 +639,7 @@
<widget>
<class>GtkLabel</class>
<name>dvd_label</name>
<label>DVD</label>
<label>Disc</label>
<justify>GTK_JUSTIFY_CENTER</justify>
<wrap>False</wrap>
<xalign>0.5</xalign>
......@@ -1626,7 +1626,6 @@ Henri Fallon &lt;henri@via.ecp.fr&gt;</label>
<widget>
<class>GtkRadioButton</class>
<name>disc_vcd</name>
<sensitive>False</sensitive>
<can_focus>True</can_focus>
<signal>
<name>toggled</name>
......
......@@ -4,7 +4,7 @@
* decoders.
*****************************************************************************
* Copyright (C) 1998, 1999, 2000 VideoLAN
* $Id: input.c,v 1.144 2001/10/22 02:33:54 xav Exp $
* $Id: input.c,v 1.145 2001/10/23 03:06:50 jobi Exp $
*
* Authors: Christophe Massiot <massiot@via.ecp.fr>
*
......@@ -592,6 +592,13 @@ static void FileOpen( input_thread_t * p_input )
psz_name += 4;
i_stat = stat( psz_name, &stat_info );
}
else if( ( i_size > 4 )
&& !strncasecmp( psz_name, "vcd:", 4 ) )
{
/* get rid of the 'vcd:' stuff and try again */
psz_name += 4;
i_stat = stat( psz_name, &stat_info );
}
else if( ( i_size > 5 )
&& !strncasecmp( psz_name, "file:", 5 ) )
{
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment