--- libogmrip/ogmrip-codec.h.orig Wed Aug 24 17:44:16 2005 +++ libogmrip/ogmrip-codec.h Wed Aug 24 17:44:33 2005 @@ -59,10 +59,10 @@ void ogmrip_codec_set_chapters (OGMRipCodec *codec, guint start, - guint end); + gint end); void ogmrip_codec_get_chapters (OGMRipCodec *codec, guint *start, - guint *end); + gint *end); G_END_DECLS --- libogmrip/ogmrip-codec.c.orig Wed Aug 24 17:44:10 2005 +++ libogmrip/ogmrip-codec.c Wed Aug 24 17:45:10 2005 @@ -115,17 +115,26 @@ } void -ogmrip_codec_set_chapters (OGMRipCodec *codec, guint start, guint end) +ogmrip_codec_set_chapters (OGMRipCodec *codec, guint start, gint end) { g_return_if_fail (OGMRIP_IS_CODEC (codec)); codec->priv->dirty = TRUE; - codec->priv->start = MIN (start, end); - codec->priv->end = MAX (start, end); + + if (end < 0) + { + codec->priv->start = start; + codec->priv->end = -1; + } + else + { + codec->priv->start = MIN (start, end); + codec->priv->end = MAX (start, end); + } } void -ogmrip_codec_get_chapters (OGMRipCodec *codec, guint *start, guint *end) +ogmrip_codec_get_chapters (OGMRipCodec *codec, guint *start, gint *end) { g_return_if_fail (OGMRIP_IS_CODEC (codec)); g_return_if_fail (start != NULL); --- libogmrip/ogmrip-backend.c.orig Wed Aug 24 17:44:22 2005 +++ libogmrip/ogmrip-backend.c Wed Aug 24 17:47:30 2005 @@ -274,7 +274,8 @@ GPtrArray *argv; const gchar *device; - gint vid, aid, start, end; + gint vid, aid, end; + guint start; g_return_val_if_fail (OGMRIP_IS_AUDIO (audio), NULL); @@ -370,7 +371,8 @@ GPtrArray *argv; const gchar *device; - gint vid, aid, start, end; + gint vid, aid, end; + guint start; g_return_val_if_fail (OGMRIP_IS_AUDIO (audio), NULL); @@ -619,8 +621,8 @@ GString *options; const gchar *device; - gint vid, pass, start, end; - gint bitrate; + gint vid, pass, bitrate, end; + guint start; g_return_val_if_fail (OGMRIP_IS_VIDEO (video), NULL); @@ -729,9 +731,8 @@ GString *options; const gchar *device; - gint vid, pass, start, end; - guint cmp, precmp, subcmp; - gint dia, predia; + gint vid, pass, end, dia, predia; + guint start, cmp, precmp, subcmp; g_return_val_if_fail (OGMRIP_IS_VIDEO (video), NULL); @@ -836,7 +837,8 @@ GString *options; const gchar *device; - gint vid, pass, start, end/*, subq*/; + gint vid, pass, end/*, subq*/; + guint start; g_return_val_if_fail (OGMRIP_IS_VIDEO (video), NULL); @@ -936,7 +938,9 @@ GPtrArray *argv; const gchar *device; - gint vid, start, end; + gint vid, end; + guint start; + guint crop_x, crop_y, crop_width, crop_height; guint scale_width, scale_height; gboolean crop, scale; @@ -1407,7 +1411,8 @@ GPtrArray *argv; const gchar *device; - gint vid, sid, start, end; + gint vid, sid, end; + guint start; g_return_val_if_fail (OGMRIP_IS_SUBP (subp), NULL); --- subrip/spudec.c.orig Wed Aug 24 17:48:10 2005 +++ subrip/spudec.c Wed Aug 24 17:48:22 2005 @@ -365,7 +365,7 @@ unsigned int next_off; unsigned int start_pts = 0; unsigned int end_pts = 0; - unsigned int current_nibble[2]; + unsigned int current_nibble[2] = { 0, 0 }; unsigned int control_start; unsigned int display = 0; unsigned int start_col = 0; --- subrip/vobsub.h.orig Wed Aug 24 17:49:10 2005 +++ subrip/vobsub.h Wed Aug 24 17:49:54 2005 @@ -13,7 +13,7 @@ extern int vobsub_get_packet (void *vobhandle, float pts, void **data, int *timestamp); extern int vobsub_get_next_packet (void *vobhandle, void **data, - int *timestamp); + unsigned int *timestamp); extern void vobsub_close (void *this); extern unsigned int vobsub_get_indexes_count (void * /* vobhandle */ ); extern char *vobsub_get_id (void * /* vobhandle */ , @@ -27,7 +27,7 @@ extern void vobsub_out_output (void *me, const unsigned char *packet, int len, double pts); extern void vobsub_out_close (void *me); -extern int vobsub_set_from_lang (void *vobhandle, unsigned char *lang); +extern int vobsub_set_from_lang (void *vobhandle, char *lang); extern unsigned int vobsub_get_forced_subs_flag (void const *const vobhandle); extern void vobsub_seek (void *vobhandle, float pts); --- subrip/vobsub.c.orig Wed Aug 24 17:48:45 2005 +++ subrip/vobsub.c Wed Aug 24 17:49:45 2005 @@ -1417,7 +1417,7 @@ } int -vobsub_set_from_lang (void *vobhandle, unsigned char *lang) +vobsub_set_from_lang (void *vobhandle, char *lang) { int i; vobsub_t *vob = (vobsub_t *) vobhandle; @@ -1471,7 +1471,7 @@ } int -vobsub_get_next_packet (void *vobhandle, void **data, int *timestamp) +vobsub_get_next_packet (void *vobhandle, void **data, unsigned int *timestamp) { vobsub_t *vob = (vobsub_t *) vobhandle; if (vob->spu_streams && 0 <= vobsub_id