Original commit message from CVS:
2005-07-19 Andy Wingo <wingo@pobox.com>
* ext/dv/gstdvdec.c (gst_dvdec_decode_video): Set the proper
framerate on the outbound buffer.
Original commit message from CVS:
2005-07-19 Andy Wingo <wingo@pobox.com>
* ext/dv/gstdvdec.c (gst_dvdec_decode_video): Don't clobber
alloc_buffer's return value.
(gst_dvdec_decode_frame): Handle unlinked pads with grace and
agility.
Original commit message from CVS:
2005-07-04 Andy Wingo <wingo@pobox.com>
* ext/aalib/gstaasink.c (gst_aasink_fixate): Update for newer
fixate prototype.
Original commit message from CVS:
2005-07-01 Jan Schmidt <thaytan@mad.scientist.com>
* ext/libcaca/Makefile.am:
* ext/mad/Makefile.am:
* gst/effectv/Makefile.am:
* gst/udp/Makefile.am:
Replace GST_PLUGINS_LIBS_* with GST_PLUGINS_BASE_*
* ext/mad/gstid3tag.c: (gst_id3_tag_src_query),
(gst_id3_tag_src_event), (gst_id3_tag_sink_event),
(gst_id3_tag_chain), (plugin_init):
* ext/mad/gstmad.c: (gst_mad_src_query), (gst_mad_chain):
Signedness warning fix, use gst_pad_get_peer instead of GST_PAD_PEER
in querying and event handling, because we're not holding the pad
lock and the peer may disappear.
* gst/avi/gstavidemux.c: (gst_avi_demux_parse_subindex),
(gst_avi_demux_parse_index), (gst_avi_demux_massage_index):
Signedness warning fixes.
* gst/videofilter/gstvideotemplate.c: (plugin_init):
Remove gst_library_load
Original commit message from CVS:
* Makefile.am:
* ext/Makefile.am:
* sys/Makefile.am:
Make my automake version shut up about undefined variables
* gst/goom/gstgoom.c:
GstAdapter moved to base objects.
Original commit message from CVS:
* configure.ac: Pull in librfb from my CVS tree, because it is
too small and annoying to be separate. Move rfbsrc plugin
to gst/.
* ext/Makefile.am:
* ext/librfb/Makefile.am:
* ext/librfb/gstrfbsrc.c:
* gst/librfb/Makefile.am:
* gst/librfb/gstrfbsrc.c:
* gst/librfb/rfb.c:
* gst/librfb/rfb.h:
* gst/librfb/rfbbuffer.c:
* gst/librfb/rfbbuffer.h:
* gst/librfb/rfbbytestream.c:
* gst/librfb/rfbbytestream.h:
* gst/librfb/rfbcontext.h:
* gst/librfb/rfbdecoder.c:
* gst/librfb/rfbdecoder.h:
* gst/librfb/rfbutil.h:
Original commit message from CVS:
Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
* ext/libpng/gstpngdec.c: (gst_pngdec_init), (gst_pngdec_chain):
* ext/libpng/gstpngenc.c:
Fix byte-order, use proper fixed caps. Fixes#164197.
Original commit message from CVS:
2005-01-28 Andy Wingo <wingo@pobox.com>
* ext/dv/gstdvdec.c: Change the pixel aspect ratio of dvdec output
to reflect a different dubious internet source. Add a reference
and some commentary.
Original commit message from CVS:
2005-01-26 Amaury Jacquot <sxpert@esitcom.org>
* ext/cairo/gsttextoverlay.c: include string.h and strings.h to fix
build failure on amd64
Original commit message from CVS:
* ext/a52dec/gsta52dec.c: (gst_a52dec_push),
(gst_a52dec_handle_event), (gst_a52dec_chain):
Add some debug output. Check that a discont has a valid
time associated.
* ext/alsa/gstalsasink.c: (gst_alsa_sink_check_event),
(gst_alsa_sink_loop):
Ignore TAG events. A little extra debug for broken timestamps.
* ext/dvdnav/dvdnavsrc.c: (dvdnavsrc_init), (dvdnavsrc_loop),
(dvdnavsrc_change_state):
Ensure we send a discont to engage the link before we send any
other events.
* ext/dvdread/dvdreadsrc.c: (dvdreadsrc_init),
(dvdreadsrc_finalize), (_close), (_open), (_seek_title),
(_seek_chapter), (seek_sector), (dvdreadsrc_get),
(dvdreadsrc_uri_get_uri), (dvdreadsrc_uri_set_uri):
Handle URI of the form dvd://title[,chapter[,angle]]. Currently only
dvd://title works in totem because typefinding sends a seek that ends
up going back to chapter 1 regardless.
* ext/mpeg2dec/gstmpeg2dec.c:
* ext/mpeg2dec/gstmpeg2dec.h:
Output correct timestamps and handle disconts.
* ext/ogg/gstoggdemux.c: (get_relative):
Small guard against a null dereference.
* ext/pango/gsttextoverlay.c: (gst_textoverlay_finalize),
(gst_textoverlay_set_property):
Free memory when done. Don't call gst_event_filler_get_duration on
EOS events. Use GST_LOG and GST_WARNING instead of g_message and
g_warning.
* ext/smoothwave/gstsmoothwave.c: (gst_smoothwave_init),
(draw_line), (gst_smoothwave_dispose), (gst_sw_sinklink),
(gst_sw_srclink), (gst_smoothwave_chain):
Draw solid lines, prettier colours.
* gst/mpeg2sub/gstmpeg2subt.c: (gst_mpeg2subt_init):
Add a default palette that'll work for some movies.
* gst/mpegstream/gstdvddemux.c: (gst_dvd_demux_init),
(gst_dvd_demux_handle_dvd_event), (gst_dvd_demux_send_discont),
(gst_dvd_demux_send_subbuffer), (gst_dvd_demux_reset):
* gst/mpegstream/gstdvddemux.h:
* gst/mpegstream/gstmpegdemux.c: (gst_mpeg_demux_send_discont),
(gst_mpeg_demux_parse_syshead), (gst_mpeg_demux_parse_pes):
* gst/mpegstream/gstmpegparse.c: (gst_mpeg_parse_init),
(gst_mpeg_parse_handle_discont), (gst_mpeg_parse_parse_packhead):
* gst/mpegstream/gstmpegparse.h:
Use PTM/NAV events when for timestamp adjustment when connected to
dvdnavsrc. Don't use many discont events where one suffices.
* gst/playback/gstplaybasebin.c: (group_destroy),
(gen_preroll_element), (gst_play_base_bin_add_element):
* gst/playback/gstplaybasebin.h:
Make sure we remove subtitles from the same bin we put them in.
* gst/subparse/gstsubparse.c: (convert_encoding), (parse_subrip),
(gst_subparse_buffer_format_autodetect),
(gst_subparse_change_state):
Fix some memleaks and invalid accesses.
* gst/typefind/gsttypefindfunctions.c: (ogganx_type_find),
(oggskel_type_find), (cmml_type_find), (plugin_init):
Some typefind functions for Annodex v3.0 files
* gst/wavparse/gstwavparse.h:
GstRiffReadClass is the correct parent class.
Original commit message from CVS:
* ext/dv/gstdvdec.c:
* gst/subparse/gstsubparse.c: (parse_mdvdsub):
* gst/y4m/gsty4mencode.c: (gst_y4mencode_sinkconnect):
I'm a bad boy. using /1001. to force C to do float division
and not integer division (as it did in my last commit)
Thanks to David I. Lehn for pointing this mistake.
Original commit message from CVS:
* ext/dv/gstdvdec.c:
* ext/libfame/gstlibfame.c:
* gst/subparse/gstsubparse.c: (parse_mdvdsub):
* gst/y4m/gsty4mencode.c: (gst_y4mencode_sinkconnect):
replace framerate aproximations by their real value
(24000/1001, 30000/1001, 60000/1001)
Finish fixing bug #164049
Original commit message from CVS:
* ext/gdk_pixbuf/pixbufscale.c: (gst_pixbufscale_link),
(pixbufscale_scale), (gst_pixbufscale_chain):
* ext/gdk_pixbuf/pixbufscale.h:
Incorporate changes from Tim-Philipp Mueller <t.i.m@orange.net>
to ensure rowstrides are calculated the same way as
ffmpegcolorspace.
Use gst_buffer_stamp instead of copying timestamps manually, so
that we pick up duration and offset also.
Original commit message from CVS:
* ext/jpeg/gstjpegdec.c: (gst_jpegdec_my_output_message),
(gst_jpegdec_my_emit_message), (gst_jpegdec_init):
Make jpegdec quiet on MJPEG decoding
* gst/asfdemux/README:
Fix mimetypes for MJPEG and H263
Original commit message from CVS:
* configure.ac:
* ext/flac/gstflacenc.c: (gst_flacenc_init),
(gst_flacenc_seek_callback), (gst_flacenc_write_callback),
(gst_flacenc_tell_callback), (gst_flacenc_chain),
(gst_flacenc_change_state):
* ext/flac/gstflacenc.h:
Update for API change in flac-1.1.1. Update requirement in
configure.ac. Fixes#162974.
Original commit message from CVS:
Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
* ext/libpng/gstpngdec.c: (gst_pngdec_src_getcaps),
(gst_pngdec_chain):
Handle only 8-bppc (bits-per-pixel-component) images, better
error handling and correct strides. Fixes#163177.
* ext/libpng/gstpngenc.c: (gst_pngenc_sinklink),
(gst_pngenc_chain):
Better error handling. Fixes#163348.
Original commit message from CVS:
* ext/dv/gstdvdec.c:
really fix bpp24/32 dvdec caps (classic rgba indeed)
* gst/asfdemux/gstasfdemux.c:
(gst_asf_demux_process_ext_content_desc):
don't send text tags if they are empty (bis repetita)
Original commit message from CVS:
* ext/dv/gstdvdec.c:
remove unneeded comment from dvdec
(related to DV 4CC codes in AVI files)
moved them in gstreamer/docs/random/mimetypes
* gst/asfdemux/gstasfdemux.c:
(gst_asf_demux_process_ext_content_desc):
don't send text tags if they are empty
fix mem leak on error path
* gst/ffmpegcolorspace/avcodec.h:
* gst/ffmpegcolorspace/gstffmpegcodecmap.c:
(gst_ffmpeg_pixfmt_to_caps), (gst_ffmpeg_caps_to_pixfmt),
(gst_ffmpegcsp_avpicture_fill):
* gst/ffmpegcolorspace/imgconvert.c: (img_get_alpha_info):
* gst/ffmpegcolorspace/imgconvert_template.h:
adds BGR32 and BGRA32 to ffmpegcolorspace
(still bad colors, fixing it on next commit)
helps with dvdec outputing BGR32
Original commit message from CVS:
* ext/dv/gstdvdec.c:
Fix audio caps i just broke (missing ',')
* gst/matroska/matroska-mux.c: (gst_matroska_mux_get_type),
(gst_matroska_mux_reset):
Fix typo + add FIXME about old "x-gst-metadata" crap
Original commit message from CVS:
* ext/dv/demo-play.c: (main):
xvideosink -> xvimagesink
* ext/dv/gstdvdec.c:
change rgb 32/32 caps to 24/32 (no alpha)
change nb of channels to be a list (2 or 4, not 2)
change sample rate to be a list (32, 44.1, 48 kHz) not a range
* gst/asfdemux/gstasfdemux.c:
(gst_asf_demux_process_ext_content_desc):
Add 'date/year' to extracted metadata list
Original commit message from CVS:
* configure.ac:
Fix indentation, fix v4l2 plugin detection.
* ext/Makefile.am:
Fix libmms location (Maciej, use diff -u!).
* ext/alsa/gstalsa.c: (gst_alsa_init):
Initialize caps cache to NULL.
* gst/playback/gstplaybin.c: (gst_play_bin_change_state):
Only change state on audiosink if it exists.
Original commit message from CVS:
* ext/cairo/gsttextoverlay.c: (gst_textoverlay_render_text),
(gst_text_overlay_blit_1), (gst_text_overlay_blit_sub2x2),
(gst_textoverlay_video_chain), (gst_textoverlay_loop),
(gst_textoverlay_font_init), (gst_textoverlay_init),
(gst_textoverlay_set_property): Improvements to actually
render text as white on black outline on video, including
font selection and horizontal/vertical alignment. (Ronald's
christmas present)
* ext/cairo/gsttextoverlay.h:
Original commit message from CVS:
* configure.ac:
* ext/speex/gstspeexdec.h:
* ext/speex/gstspeexenc.h:
Fixes#158382. Make speex plugin compatible with both 1.0 and 1.1.
Fix detection code in configure.ac
Original commit message from CVS:
* configure.ac: add audioresample and cairo plugins. Remove
HAVE_MMX stuff, because it's not used.
* ext/Makefile.am: same
* ext/audioresample/Makefile.am: You are not ready for an
audio resampling element based on audioresample.
* ext/audioresample/gstaudioresample.c:
* ext/audioresample/gstaudioresample.h:
* ext/cairo/Makefile.am: You are not ready for overlay elements
based on cairo. Don't look too closely, these elements kinda
suck right now.
* ext/cairo/gstcairo.c: new
* ext/cairo/gsttextoverlay.c: new
* ext/cairo/gsttextoverlay.h: new
* ext/cairo/gsttimeoverlay.c: new
* ext/cairo/gsttimeoverlay.h: new
* gst-libs/gst/media-info/media-info-priv.h: fix compile
problem with compilers that don't support variadic macros.
Original commit message from CVS:
* ext/esd/esdsink.c: (gst_esdsink_chain):
Make error actually say something useful (fixes#156798).
* gst-libs/gst/riff/riff-media.c:
(gst_riff_create_video_caps_with_data),
(gst_riff_create_video_template_caps):
Add Intel Video 5.0 fourcc (IV50).
Original commit message from CVS:
* ext/esd/esdsink.c: (gst_esdsink_class_init),
(gst_esdsink_finalize):
Use a finalize function, not dispose, and more importantly,
call the parent class finalize function too
Original commit message from CVS:
* ext/dv/gstdvdec.c: (gst_dvdec_handle_sink_event):
Set EOS on the element when processing an EOS event.
* ext/speex/gstspeexdec.h:
* ext/speex/gstspeexenc.h:
Only keep a const ptr to the mode
* gst-libs/gst/riff/riff-media.c:
(gst_riff_create_audio_caps_with_data),
(gst_riff_create_audio_template_caps):
Allow WMAV3, with up to 6 channels.
* gst/asfdemux/gstasfmux.c: (gst_asfmux_request_new_pad):
Don't call gst_pad_set_event_function on a sink pad.
* gst/mpegstream/gstdvddemux.c:
(gst_dvd_demux_get_subpicture_stream),
(gst_dvd_demux_set_cur_audio), (gst_dvd_demux_set_cur_subpicture):
Copy the explicit caps that were set across to the cur_* pads,
instead of trying to use a possibly non-existent negotiated caps.
Reset the type of subpicture pads to UNKNOWN after calling init_stream,
so that the caps get set.
Original commit message from CVS:
* ext/dv/gstdvdec.c: (gst_dvdec_video_getcaps),
(gst_dvdec_video_link), (gst_dvdec_push), (gst_dvdec_loop):
Allow a little margin when negotiating the framerate.
Original commit message from CVS:
* ext/speex/gstspeexdec.c: (gst_speex_dec_init),
(speex_dec_convert):
sinkconvert function so oggdemux can get the file length (totem).
Original commit message from CVS:
* ext/dv/gstdvdec.c: (gst_dvdec_init), (gst_dvdec_video_getcaps),
(gst_dvdec_video_link), (gst_dvdec_push), (gst_dvdec_loop):
* ext/dv/gstdvdec.h:
Make sure we renegotiate aspect ratio when the camera switches.
Original commit message from CVS:
* ext/dv/gstdvdec.c: (gst_dvdec_video_getcaps),
(gst_dvdec_video_link), (gst_dvdec_push):
* ext/jpeg/gstsmokeenc.c: (gst_smokeenc_class_init),
(gst_smokeenc_resync), (gst_smokeenc_chain):
Fix mimetype on smoke encoder.
Add aspect ratio to dvdec. Not sure if these
values are correct though....
Original commit message from CVS:
* ext/speex/gstspeexenc.c: (gst_speexenc_class_init),
(gst_speexenc_chain):
Fix speex timestamps so that it gets muxed properly.
Original commit message from CVS:
* ext/raw1394/gstdv1394src.c: (gst_dv1394src_get_type),
(gst_dv1394src_base_init), (gst_dv1394src_class_init),
(gst_dv1394src_init), (gst_dv1394src_dispose),
(gst_dv1394src_iso_receive), (gst_dv1394src_discover_avc_node),
(gst_dv1394src_change_state), (gst_dv1394src_get_event_mask),
(gst_dv1394src_event), (gst_dv1394src_get_formats),
(gst_dv1394src_convert), (gst_dv1394src_get_query_types),
(gst_dv1394src_query), (gst_dv1394src_uri_get_type),
(gst_dv1394src_uri_get_protocols), (gst_dv1394src_uri_get_uri),
(gst_dv1394src_uri_set_uri), (gst_dv1394src_uri_handler_init):
* ext/raw1394/gstdv1394src.h:
Added conversion/query functions.
Update buffer timestamps,
Added signals.
Added uri dv:// so it might play from the firewire in playbin.
Fix a possible leak.
Added debugging.
Original commit message from CVS:
* ext/raw1394/gstdv1394src.c: (gst_dv1394src_class_init),
(gst_dv1394src_init), (gst_dv1394src_set_property),
(gst_dv1394src_get_property), (gst_dv1394src_iso_receive),
(gst_dv1394src_discover_avc_node), (gst_dv1394src_change_state):
* ext/raw1394/gstdv1394src.h:
Added AV/C VTR control support needed for some cameras.
Added automatic port detection.
Added properties for selecting the channel.
The configure.ac script is not yet updated to reflect the
new libavc1394 and librom1394 dependencies.
Original commit message from CVS:
* ext/flac/gstflacdec.c: (gst_flacdec_src_query):
Only return true if we actually filled something in. Prevents
player applications from showing a random length for flac files.
* gst-libs/gst/riff/riff-read.c: (gst_riff_read_class_init),
(gst_riff_read_use_event), (gst_riff_read_handle_event),
(gst_riff_read_seek), (gst_riff_read_skip), (gst_riff_read_strh),
(gst_riff_read_strf_vids_with_data),
(gst_riff_read_strf_auds_with_data), (gst_riff_read_strf_iavs):
OK, ok, so I implemented event handling. Apparently it's normal
that we receive random events at random points without asking
for it.
* gst/avi/gstavidemux.c: (gst_avi_demux_reset),
(gst_avi_demux_src_convert), (gst_avi_demux_handle_src_query),
(gst_avi_demux_handle_src_event), (gst_avi_demux_stream_index),
(gst_avi_demux_sync), (gst_avi_demux_stream_scan),
(gst_avi_demux_massage_index), (gst_avi_demux_stream_header),
(gst_avi_demux_handle_seek), (gst_avi_demux_process_next_entry),
(gst_avi_demux_stream_data), (gst_avi_demux_loop):
* gst/avi/gstavidemux.h:
Implement non-lineair chunk handling and subchunk processing.
The first solves playback of AVI files where the audio and video
data of individual buffers that we read are not synchronized.
This should not happen according to the wonderful AVI specs, but
of course it does happen in reality. It is also a prerequisite for
the second. Subchunk processing allows us to cut chunks in small
pieces and process each of these pieces separately. This is
required because I've seen several AVI files with incredibly large
audio chunks, even some files with only one audio chunk for the
whole file. This allows for proper playback including seeking.
This patch is supposed to fix all AVI A/V sync issues.
* gst/flx/gstflxdec.c: (gst_flxdec_class_init),
(flx_decode_chunks), (flx_decode_color), (gst_flxdec_loop):
Work.
* gst/modplug/gstmodplug.cc:
Proper return value setting for the query() function.
* gst/playback/gstplaybasebin.c: (setup_source):
Being in non-playing state (after, e.g., EOS) is not necessarily
a bad thing. Allow for that. This fixes playback of short files.
They don't actually playback fully now, because the clock already
runs. This means that small files (<500kB) with a small length
(<2sec) will still not or barely play. Other files, such as mod
or flx, will work correctly, however.