ext/gnomevfs/gstgnomevfssrc.c: Some debug.

Original commit message from CVS:
* ext/gnomevfs/gstgnomevfssrc.c: (gst_gnomevfssrc_get),
(gst_gnomevfssrc_srcpad_query), (gst_gnomevfssrc_srcpad_event):
Some debug.
* gst/avi/gstavidemux.c: (gst_avi_demux_reset),
(gst_avi_demux_handle_src_event), (gst_avi_demux_read_superindex),
(gst_avi_demux_read_subindexes), (gst_avi_demux_add_stream),
(gst_avi_demux_stream_index), (gst_avi_demux_skip),
(gst_avi_demux_sync), (gst_avi_demux_stream_scan),
(gst_avi_demux_massage_index), (gst_avi_demux_stream_header):
* gst/avi/gstavidemux.h:
Support for openDML-2.0 indx/ix## chunks. Support for broken index
recovery (where, if part of the index is broken, we will still read
the rest of the index and recover the broken part by stream
scanning). More broken media support. EOS workarounds. General AVI
braindamage headache recovery. Aspirin included.
This commit is contained in:
Ronald S. Bultje 2004-10-12 12:29:45 +00:00
parent 1604717cbf
commit e3a0b57b75
2 changed files with 28 additions and 6 deletions

View file

@ -1,3 +1,21 @@
2004-10-12 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
* ext/gnomevfs/gstgnomevfssrc.c: (gst_gnomevfssrc_get),
(gst_gnomevfssrc_srcpad_query), (gst_gnomevfssrc_srcpad_event):
Some debug.
* gst/avi/gstavidemux.c: (gst_avi_demux_reset),
(gst_avi_demux_handle_src_event), (gst_avi_demux_read_superindex),
(gst_avi_demux_read_subindexes), (gst_avi_demux_add_stream),
(gst_avi_demux_stream_index), (gst_avi_demux_skip),
(gst_avi_demux_sync), (gst_avi_demux_stream_scan),
(gst_avi_demux_massage_index), (gst_avi_demux_stream_header):
* gst/avi/gstavidemux.h:
Support for openDML-2.0 indx/ix## chunks. Support for broken index
recovery (where, if part of the index is broken, we will still read
the rest of the index and recover the broken part by stream
scanning). More broken media support. EOS workarounds. General AVI
braindamage headache recovery. Aspirin included.
2004-10-11 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
* ext/cdparanoia/gstcdparanoia.c: (cdparanoia_open),

View file

@ -1040,6 +1040,7 @@ gst_gnomevfssrc_get (GstPad * pad)
/* deal with EOF state */
if ((src->curoffset >= src->size) && (src->size != 0)) {
gst_element_set_eos (GST_ELEMENT (src));
GST_DEBUG ("Returning EOS");
return GST_DATA (gst_event_new (GST_EVENT_EOS));
}
@ -1063,6 +1064,7 @@ gst_gnomevfssrc_get (GstPad * pad)
/* EOS? */
if (readbytes == 0) {
gst_buffer_unref (buf);
GST_DEBUG ("Returning EOS");
gst_element_set_eos (GST_ELEMENT (src));
return GST_DATA (gst_event_new (GST_EVENT_EOS));
}
@ -1107,14 +1109,13 @@ gst_gnomevfssrc_get (GstPad * pad)
result = gnome_vfs_read (src->handle, GST_BUFFER_DATA (buf),
src->bytes_per_read, &readbytes);
GST_DEBUG ("read: %s, readbytes: %" G_GINT64_FORMAT,
gnome_vfs_result_to_string (result), readbytes);
GST_DEBUG ("read: %s, readbytes: %" G_GINT64_FORMAT " @ %" G_GINT64_FORMAT,
gnome_vfs_result_to_string (result), readbytes, src->curoffset);
/* deal with EOS */
if (readbytes == 0) {
gst_buffer_unref (buf);
GST_DEBUG ("Returning EOS");
gst_element_set_eos (GST_ELEMENT (src));
return GST_DATA (gst_event_new (GST_EVENT_EOS));
}
@ -1249,7 +1250,7 @@ gst_gnomevfssrc_srcpad_query (GstPad * pad, GstQueryType type,
switch (type) {
case GST_QUERY_TOTAL:
if (*format != GST_FORMAT_BYTES) {
if (*format != GST_FORMAT_BYTES || src->size == 0) {
return FALSE;
}
*value = src->size;
@ -1298,6 +1299,8 @@ gst_gnomevfssrc_srcpad_event (GstPad * pad, GstEvent * event)
desired_offset = src->curoffset + GST_EVENT_SEEK_OFFSET (event);
break;
case GST_SEEK_METHOD_END:
if (src->size == 0)
return FALSE;
desired_offset = src->size - ABS (GST_EVENT_SEEK_OFFSET (event));
break;
default:
@ -1308,7 +1311,8 @@ gst_gnomevfssrc_srcpad_event (GstPad * pad, GstEvent * event)
result = gnome_vfs_seek (src->handle,
GNOME_VFS_SEEK_START, desired_offset);
GST_DEBUG ("new_seek: %s", gnome_vfs_result_to_string (result));
GST_DEBUG ("new_seek to %" G_GINT64_FORMAT ": %s",
desired_offset, gnome_vfs_result_to_string (result));
if (result != GNOME_VFS_OK) {
gst_event_unref (event);