Commit 933424d7 authored by Rémi Denis-Courmont's avatar Rémi Denis-Courmont

vcdx: remove unmaintained module

parent 6297968f
......@@ -192,6 +192,7 @@ Removed modules
* QuartText text renderer module (use Freetype instead)
* Win32 GDI text renderer module (use Freetype instead)
* Growl notification (replaced by osx_notifications)
* VCDX "extended" Video CD access module (use the normal VCD module)
Changes between 2.2.0 and 2.2.1:
......
......@@ -1803,11 +1803,6 @@ fi
AM_CONDITIONAL(HAVE_DECKLINK, [ test "${have_decklink}" != "no" ])
dnl
dnl VCDX modules
dnl
PKG_ENABLE_MODULES_VLC([VCDX], [vcdx], [libcdio >= 0.78.2 libiso9660 >= 0.72 libvcdinfo >= 0.7.22], [navigate VCD with libvcdinfo], [no])
dnl
dnl Built-in CD-DA and VCD module
dnl
......
......@@ -16,7 +16,6 @@ nobase_doc_DATA = $(LIBVLC_SAMPLES)
doc_DATA = \
fortunes.txt \
intf-vcd.txt \
$(NULL)
CHANGELOGS = \
......@@ -49,7 +48,6 @@ EXTRA_DIST = \
$(man1_MANS) \
$(LIBVLC_SAMPLES) \
fortunes.txt \
intf-vcd.txt \
release-howto.txt \
Doxyfile.in \
lirc/example.lircrc \
......
This diff is collapsed.
......@@ -411,7 +411,6 @@ $Id$
* vaapi_x11: VAAPI hardware-accelerated decoding with x11 backend
* vc1: VC-1 Video demuxer
* vcd: input module for accessing Video CDs
* vcdx: input module for accessing Video CDs with navigation & stills
* vda: VDADecoder hardware-accelerated decoding
* vdpau_adjust: VDPAU color adjust video filter
* vdpau_avcodec: VDPAU hardware-accelerated decoding
......
......@@ -272,23 +272,6 @@ endif
EXTRA_LTLIBRARIES += libvcd_plugin.la
access_LTLIBRARIES += $(LTLIBvcd)
libvcdx_plugin_la_SOURCES = \
access/vcdx/access.h access/vcdx/access.c \
access/vcdx/vcd.c access/vcdx/vcd.h \
access/vcdx/vcdplayer.h access/vcdx/vcdplayer.c \
access/vcdx/info.c access/vcdx/info.h
libvcdx_plugin_la_CPPFLAGS = $(AM_CPPFLAGS)
libvcdx_plugin_la_LIBADD = $(VCDX_LIBS)
if HAVE_WIN32
libvcdx_plugin_la_LIBADD += -lwinmm
endif
libvcdx_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(accessdir)'
if HAVE_DARWIN
libvcdx_plugin_la_LDFLAGS += -Wl,-framework,IOKit,-framework,CoreFoundation
endif
EXTRA_LTLIBRARIES += libvcdx_plugin.la
access_LTLIBRARIES += $(LTLIBvcdx)
libdvdnav_plugin_la_SOURCES = access/dvdnav.c demux/mpeg/ps.h demux/mpeg/pes.h
libdvdnav_plugin_la_CFLAGS = $(AM_CFLAGS) $(DVDNAV_CFLAGS)
libdvdnav_plugin_la_LIBADD = $(DVDNAV_LIBS)
......
This diff is collapsed.
/*****************************************************************************
* access.h : VCD access.c routine headers
*****************************************************************************
* Copyright (C) 2004 VLC authors and VideoLAN
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation; either version 2.1 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this program; if not, write to the Free Software Foundation,
* Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
*****************************************************************************/
#ifndef VCD_ACCESS_H
#define VCD_ACCESS_H
void VCDSetOrigin( access_t *p_access, lsn_t i_lsn, track_t i_track,
const vcdinfo_itemid_t *p_itemid );
int VCDOpen ( vlc_object_t * );
void VCDClose ( vlc_object_t * );
#endif /* VCD_ACCESS_H */
This diff is collapsed.
/*****************************************************************************
* info.h : VCD information routine headers
*****************************************************************************
* Copyright (C) 2004 VLC authors and VideoLAN
* $Id$
*
* Authors: Rocky Bernstein <rocky@panix.com>
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation; either version 2.1 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this program; if not, write to the Free Software Foundation,
* Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
*****************************************************************************/
#ifndef VCD_INFO_H
#define VCD_INFO_H
#include "vcdplayer.h"
/*
Sets VCD meta information and navigation/playlist entries.
*/
void VCDMetaInfo( access_t *p_access, /*const*/ char *psz_mrl );
#if 0
char * VCDFormatStr(vcdplayer_t *p_vcdplayer,
const char *format_str, const char *mrl,
const vcdinfo_itemid_t *itemid);
#endif
void VCDUpdateTitle( access_t *p_access );
#endif /* VCD_INFO_H */
/*****************************************************************************
* vcd.c : VCD input module for vlc
*****************************************************************************
* Copyright (C) 2000, 2003, 2004, 2005 VLC authors and VideoLAN
* $Id$
*
* Authors: Rocky Bernstein <rocky@panix.com>
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation; either version 2.1 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this program; if not, write to the Free Software Foundation,
* Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
*****************************************************************************/
/*****************************************************************************
* top-level module code - handles options, shortcuts, loads sub-modules.
*****************************************************************************/
/*****************************************************************************
* Preamble
*****************************************************************************/
#ifdef HAVE_CONFIG_H
# include "config.h"
#endif
#include <vlc_common.h>
#include <vlc_plugin.h>
#include "vcd.h"
#include "access.h"
/*****************************************************************************
* Option help text
*****************************************************************************/
#define DEBUG_LONGTEXT \
"This integer when viewed in binary is a debugging mask\n" \
"meta info 1\n" \
"event info 2\n" \
"MRL 4\n" \
"external call 8\n" \
"all calls (10) 16\n" \
"LSN (20) 32\n" \
"PBC (40) 64\n" \
"libcdio (80) 128\n" \
"seek-set (100) 256\n" \
"seek-cur (200) 512\n" \
"still (400) 1024\n" \
"vcdinfo (800) 2048\n"
#define VCD_TITLE_FMT_LONGTEXT \
"Format used in the GUI Playlist Title. Similar to the Unix date \n" \
"Format specifiers that start with a percent sign. Specifiers are: \n" \
" %A : The album information\n" \
" %C : The VCD volume count - the number of CDs in the collection\n" \
" %c : The VCD volume num - the number of the CD in the collection.\n" \
" %F : The VCD Format, e.g. VCD 1.0, VCD 1.1, VCD 2.0, or SVCD\n" \
" %I : The current entry/segment/playback type, e.g. ENTRY, TRACK, SEGMENT...\n" \
" %L : The playlist ID prefixed with \" LID\" if it exists\n" \
" %N : The current number of the %I - a decimal number\n" \
" %P : The publisher ID\n" \
" %p : The preparer ID\n" \
" %S : If we are in a segment (menu), the kind of segment\n" \
" %T : The MPEG track number (starts at 1)\n" \
" %V : The volume set ID\n" \
" %v : The volume ID\n" \
" A number between 1 and the volume count.\n" \
" %% : a % \n"
/*****************************************************************************
* Module descriptor
*****************************************************************************/
vlc_module_begin ()
set_shortname( N_("(Super) Video CD"))
set_description( N_("Video CD (VCD 1.0, 1.1, 2.0, SVCD, HQVCD) input") )
add_usage_hint( N_("vcdx://[device-or-file][@{P,S,T}num]") )
add_shortcut( "vcdx" )
set_category( CAT_INPUT )
set_subcategory( SUBCAT_INPUT_ACCESS )
set_capability( "access", 55 /* slightly lower than vcd */ )
set_callbacks( VCDOpen, VCDClose )
/* Configuration options */
add_integer ( MODULE_STRING "-debug", 0,
N_("If nonzero, this gives additional debug information."),
DEBUG_LONGTEXT, true )
add_integer ( MODULE_STRING "-blocks-per-read", 20,
N_("Number of CD blocks to get in a single read."),
N_("Number of CD blocks to get in a single read."),
true )
add_bool( MODULE_STRING "-PBC", false,
N_("Use playback control?"),
N_("If VCD is authored with playback control, use it. "
"Otherwise we play by tracks."),
false )
add_obsolete_bool( MODULE_STRING "-track-length" )
add_bool( MODULE_STRING "-extended-info", false,
N_("Show extended VCD info?"),
N_("Show the maximum amount of information under Stream and "
"Media Info. Shows for example playback control navigation."),
false )
add_string( MODULE_STRING "-author-format", "%v - %F disc %c of %C",
N_("Format to use in the playlist's \"author\" field."),
VCD_TITLE_FMT_LONGTEXT, true )
add_string( MODULE_STRING "-title-format", "%I %N %L%S - %M %A %v - disc %c of %C %F",
N_("Format to use in the playlist's \"title\" field."),
VCD_TITLE_FMT_LONGTEXT, false )
vlc_module_end ()
/*****************************************************************************
* vcd.h : VCD input module header for vlc
* using libcdio, libvcd and libvcdinfo
*****************************************************************************
* Copyright (C) 2003, 2004 VLC authors and VideoLAN
* $Id$
*
* Authors: Rocky Bernstein <rocky@panix.com>
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation; either version 2.1 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this program; if not, write to the Free Software Foundation,
* Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
*****************************************************************************/
#include <libvcd/info.h>
#include <vlc_interface.h>
#define VCD_MRL_PREFIX "vcdx://"
/*****************************************************************************
* vcd_data_t: structure for communication between access and intf.
*****************************************************************************/
typedef struct {
#ifdef FINISHED
vcdplay_ptr vmg;
#endif
#ifdef DEMUX_FINISHED
int i_audio_nb;
int i_spu_nb;
#endif
int i_still_time;
bool b_end_of_cell;
#ifdef FINISHED
vcdplay_event_t event;
vcdplay_ctrl_t control;
vcdplay_highlight_t hli;
#endif
} vcd_data_t;
int VCDSetArea ( access_t * );
int VCDSeek ( access_t *, uint64_t );
This diff is collapsed.
/*****************************************************************************
* Copyright (C) 2003, 2004 Rocky Bernstein (for VLC authors and VideoLAN)
* $Id$
*
* Authors: Rocky Bernstein <rocky@panix.com>
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation; either version 2.1 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this program; if not, write to the Free Software Foundation,
* Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
*****************************************************************************/
/* VCD Player header. More or less media-player independent. Or at least
that is the goal. So we prefer bool to vlc_bool.
*/
#ifndef _VCDPLAYER_H_
#define _VCDPLAYER_H_
#include <libvcd/info.h>
#include <vlc_meta.h>
#include <vlc_input.h>
#include <vlc_access.h>
#define INPUT_DBG_META 1 /* Meta information */
#define INPUT_DBG_EVENT 2 /* input (keyboard/mouse) events */
#define INPUT_DBG_MRL 4 /* MRL parsing */
#define INPUT_DBG_EXT 8 /* Calls from external routines */
#define INPUT_DBG_CALL 16 /* routine calls */
#define INPUT_DBG_LSN 32 /* LSN changes */
#define INPUT_DBG_PBC 64 /* Playback control */
#define INPUT_DBG_CDIO 128 /* Debugging from CDIO */
#define INPUT_DBG_SEEK 256 /* Seeks to set location */
#define INPUT_DBG_SEEK_CUR 512 /* Seeks to find current location */
#define INPUT_DBG_STILL 1024 /* Still-frame */
#define INPUT_DBG_VCDINFO 2048 /* Debugging from VCDINFO */
#define INPUT_DEBUG 1
#if INPUT_DEBUG
#define dbg_print(mask, s, args...) \
if (p_vcdplayer && p_vcdplayer->i_debug & mask) \
msg_Dbg(p_access, "%s: "s, __func__ , ##args)
#else
#define dbg_print(mask, s, args...)
#endif
#define LOG_ERR(...) msg_Err( p_access, __VA_ARGS__ )
#define LOG_WARN(...) msg_Warn( p_access, __VA_ARGS__ )
/*------------------------------------------------------------------
General definitions and structures.
---------------------------------------------------------------------*/
/* Value for indefinite wait period on a still frame */
#define STILL_INDEFINITE_WAIT 255
/* Value when we have yet to finish reading blocks of a frame. */
#define STILL_READING -5
typedef struct {
lsn_t start_LSN; /* LSN where play item starts */
size_t size; /* size in sector units of play item. */
} vcdplayer_play_item_info_t;
/*****************************************************************************
* vcdplayer_t: VCD information
*****************************************************************************/
typedef struct vcdplayer_input_s
{
vcdinfo_obj_t *vcd; /* CD device descriptor */
/*------------------------------------------------------------------
User-settable options
--------------------------------------------------------------*/
unsigned int i_debug; /* Debugging mask */
unsigned int i_blocks_per_read; /* number of blocks per read */
/*-------------------------------------------------------------
Playback control fields
--------------------------------------------------------------*/
bool in_still; /* true if in still */
int i_lid; /* LID that play item is in. Implies
PBC is on. VCDPLAYER_BAD_ENTRY if
not none or not in PBC */
PsdListDescriptor_t pxd; /* If PBC is on, the relevant
PSD/PLD */
int pdi; /* current pld index of pxd. -1 if
no index*/
vcdinfo_itemid_t play_item; /* play-item, VCDPLAYER_BAD_ENTRY
if none */
vcdinfo_itemid_t loop_item; /* Where do we loop back to?
Meaningful only in a selection
list */
int i_loop; /* # of times play-item has been
played. Meaningful only in a
selection list. */
track_t i_track; /* current track number */
/*-----------------------------------
location fields
------------------------------------*/
lsn_t i_lsn; /* LSN of where we are right now */
lsn_t end_lsn; /* LSN of end of current
entry/segment/track. This block
can be read (and is not one after
the "end").
*/
lsn_t origin_lsn; /* LSN of start of seek/slider */
lsn_t track_lsn; /* LSN of start track origin of track
we are in. */
lsn_t track_end_lsn; /* LSN of end of current track (if
entry). */
lsn_t * p_entries; /* Entry points */
lsn_t * p_segments; /* Segments */
bool b_valid_ep; /* Valid entry points flag */
bool b_end_of_track; /* If the end of track was reached */
/*--------------------------------------------------------------
(S)VCD Medium information
---------------------------------------------------------------*/
char *psz_source; /* (S)VCD drive or image filename */
bool b_svd; /* true if we have SVD info */
vlc_meta_t *p_meta;
track_t i_tracks; /* # of playable MPEG tracks. This is
generally one less than the number
of CD tracks as the first CD track
is an ISO-9660 track and is not
playable.
*/
unsigned int i_segments; /* # of segments */
unsigned int i_entries; /* # of entries */
unsigned int i_lids; /* # of List IDs */
/* Tracks, segment, and entry information. The number of entries for
each is given by the corresponding i_* field above. */
vcdplayer_play_item_info_t *track;
vcdplayer_play_item_info_t *segment;
vcdplayer_play_item_info_t *entry;
unsigned int i_titles; /* # of navigatable titles. */
unsigned int i_cur_title;
unsigned int i_cur_chapter;
/*
# tracks + menu for segments + menu for LIDs
*/
input_title_t *p_title[CDIO_CD_MAX_TRACKS+2];
/* Probably gets moved into another structure...*/
int i_audio_nb;
int i_still;
bool b_end_of_cell;
input_thread_t *p_input;
access_t *p_access;
} vcdplayer_t;
/* vcdplayer_read return status */
typedef enum {
READ_BLOCK,
READ_STILL_FRAME,
READ_ERROR,
READ_END,
} vcdplayer_read_status_t;
/* ----------------------------------------------------------------------
Function Prototypes
-----------------------------------------------------------------------*/
/*!
Return true if playback control (PBC) is on
*/
bool vcdplayer_pbc_is_on(const vcdplayer_t *p_vcdplayer);
/*!
Play item assocated with the "default" selection.
Return false if there was some problem.
*/
bool vcdplayer_play_default( access_t * p_access );
/*!
Play item assocated with the "next" selection.
Return false if there was some problem.
*/
bool vcdplayer_play_next( access_t * p_access );
/*!
Play item assocated with the "prev" selection.
Return false if there was some problem.
*/
bool vcdplayer_play_prev( access_t * p_access );
/*!
Play item assocated with the "return" selection.
Return false if there was some problem.
*/
bool vcdplayer_play_return( access_t * p_access );
/*
Set's start origin and size for subsequent seeks.
input: p_vcd->i_lsn, p_vcd->play_item
changed: p_vcd->origin_lsn, p_vcd->end_lsn
*/
void vcdplayer_set_origin(access_t *p_access, lsn_t i_lsn, track_t i_track,
const vcdinfo_itemid_t *p_itemid);
void vcdplayer_play(access_t *p_access, vcdinfo_itemid_t itemid);
vcdplayer_read_status_t vcdplayer_read (access_t * p_access_t, uint8_t *p_buf);
#endif /* _VCDPLAYER_H_ */
/*
* Local variables:
* c-file-style: "gnu"
* tab-width: 8
* indent-tabs-mode: nil
* End:
*/
......@@ -46,7 +46,7 @@
static const char ppsz_supported_uri_schemes[][9] = {
"file", "http", "https", "rtsp", "realrtsp", "pnm", "ftp", "mtp", "smb",
"mms", "mmsu", "mmst", "mmsh", "unsv", "itpc", "icyx", "rtmp", "rtp",
"dccp", "dvd", "vcd", "vcdx"
"dccp", "dvd", "vcd"
};
static const char ppsz_supported_mime_types[][26] = {
......
......@@ -268,13 +268,6 @@ modules/access/vcd/cdrom.c
modules/access/vcd/cdrom.h
modules/access/vcd/cdrom_internals.h
modules/access/vcd/vcd.c
modules/access/vcdx/access.c
modules/access/vcdx/info.c
modules/access/vcdx/info.h
modules/access/vcdx/vcd.c
modules/access/vcdx/vcd.h
modules/access/vcdx/vcdplayer.c
modules/access/vcdx/vcdplayer.h
modules/access/vdr.c
modules/access/vnc.c
modules/access/wasapi.c
......
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