Age | Commit message (Collapse) | Author | Files | Lines |
|
following changes [--ds]
Original commit message from CVS:
reviewed by David Schleef
* configure.ac: bump required gstreamer version to 0.8.1.1
because of following changes [--ds]
* gst-libs/gst/riff/riff-read.c: Include gst/gstutils.h.
(gst_riff_peek_head, gst_riff_peek_list, gst_riff_read_list)
(gst_riff_read_header): Use GST_READ_UINT*
macros to access possibly unaligned memory.
* gst/typefind/gsttypefindfunctions.c: Include gst/gstutils.h.
(mp3_type_find): Use GST_READ_UINT*
macros to access possibly unaligned memory.
(mp3_type_find, mpeg1_parse_header, qt_type_find)
(speex_type_find): Likewise
* gst/tags/gstvorbistag.c: (ADVANCE): Likewise
* gst/qtdemux/qtdemux.c: Include stdlib.h (needed by realloc).
(QTDEMUX_GUINT32_GET, QTDEMUX_GUINT16_GET, QTDEMUX_FP32_GET)
(QTDEMUX_FP16_GET, QTDEMUX_FOURCC_GET)
(gst_qtdemux_loop_header, gst_qtdemux_loop_header)
(qtdemux_node_dump_foreach, qtdemux_tree_get_child_by_type)
(qtdemux_tree_get_sibling_by_type): Use GST_READ_UINT*
macros to access possibly unaligned memory.
* gst/mpegstream/gstmpegpacketize.c: (parse_generic, parse_chunk):
Likewise.
* gst/mpegstream/gstmpegdemux.c: (gst_mpeg_demux_parse_syshead)
(gst_mpeg_demux_parse_packet, gst_mpeg_demux_parse_pes): Likewise.
* gst/mpegaudioparse/gstmpegaudioparse.c: (gst_mp3parse_chain):
Likewise.
* gst/mpeg2sub/gstmpeg2subt.c: (GST_BUFFER_DATA)
(gst_mpeg2subt_chain_subtitle): Likewise.
* gst/mpeg1videoparse/gstmp1videoparse.c: (mp1videoparse_parse_seq)
(gst_mp1videoparse_time_code, gst_mp1videoparse_real_chain):
Likewise.
* gst/mpeg1sys/buffer.c: (mpeg1mux_buffer_update_audio_info):
Likewise.
* gst/cdxaparse/gstcdxaparse.c: (gst_bytestream_peek_bytes):
Likewise.
* gst/asfdemux/gstasfdemux.c: (_read_var_length, _read_uint):
Likewise.
|
|
esds atom and put it into the caps. (bug #1...
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_handle_sink_event),
(qtdemux_parse), (qtdemux_type_get), (qtdemux_dump_mvhd),
(qtdemux_dump_tkhd), (qtdemux_dump_stsd), (qtdemux_dump_unknown),
(qtdemux_parse_trak), (qtdemux_video_caps), (qtdemux_audio_caps):
A number of new features and hacks to extract the esds atom and
put it into the caps. (bug #137724)
|
|
Original commit message from CVS:
* ext/gsm/gstgsmdec.c: (gst_gsmdec_init), (gst_gsmdec_getcaps),
(gst_gsmdec_link), (gst_gsmdec_chain):
Fix capsnego, simplify chain function slightly.
* gst/qtdemux/qtdemux.c: (qtdemux_audio_caps):
Add GSM.
|
|
into strf chunks and the data behind it. Thi...
Original commit message from CVS:
reviewed by: <delete if not using a buddy>
* gst-libs/gst/riff/riff-media.c:
(gst_riff_create_video_caps_with_data),
(gst_riff_create_video_caps), (gst_riff_create_audio_caps),
(gst_riff_create_video_template_caps),
(gst_riff_create_audio_template_caps):
* gst-libs/gst/riff/riff-media.h:
* gst-libs/gst/riff/riff-read.c:
(gst_riff_read_strf_vids_with_data), (gst_riff_read_strf_vids):
* gst-libs/gst/riff/riff-read.h:
* gst/avi/gstavidemux.c: (gst_avi_demux_add_stream):
Add MS RLE support. I added some functions to read out strf chunks
into strf chunks and the data behind it. This is usually color
palettes (as in RLE, but also in 8-bit RGB). Also use those during
caps creation. Lastly, add ADPCM (similar to wavparse - which
should eventually be rifflib based).
* gst/matroska/matroska-demux.c: (gst_matroska_demux_class_init),
(gst_matroska_demux_init), (gst_matroska_demux_reset):
* gst/matroska/matroska-demux.h:
Remove placeholders for some prehistoric tagging system. Didn't add
support for any tag system really anyway.
* gst/qtdemux/qtdemux.c:
Add support for audio/x-m4a (MPEG-4) through spider.
* gst/wavparse/gstwavparse.c: (gst_wavparse_parse_fmt),
(gst_wavparse_loop):
ADPCM support (#135862). Increase max. buffer size because we
cannot split buffers for ADPCM (screws references) and I've seen
files with 2048 byte chunks. 4096 seems safe for now.
|
|
buffer parsing, and for some potential overfl...
Original commit message from CVS:
* gst/mpeg1videoparse/gstmp1videoparse.c: (gst_mp1videoparse_init),
(gst_mp1videoparse_real_chain), (gst_mp1videoparse_change_state):
* gst/mpeg1videoparse/gstmp1videoparse.h:
Fix for some slight mis-cuts in buffer parsing, and for some
potential overflows or faults-causers. Adds disconts. Also fixes
#139105 while we're at it.
|
|
support (bug #139532)
Original commit message from CVS:
* gst/colorspace/gstcolorspace.c: Don't advertise a conversion
we don't support (bug #139532)
|
|
Original commit message from CVS:
a52dec: Use a debug category, Output timestamps correctly
Emit tag info, Handle events, tell liba52dec about cpu
capabilities so it can use MMX etc.
dvdec: Fix a crasher accessing invalid memory
dvdnavsrc:Some support for byte-format seeking.
Small fixes for still frames and menu button overlays
mpeg2dec: Use a debug category. Adjust the report level of several items to
LOG. Call mpeg2_custom_fbuf to mark our buffers as 'custom buffers'
so it doesn't lose the GstBuffer pointer
navseek: Add the navseek debug element for seeking back and forth in a
video stream using arrow keys.
mpeg2subt:Pretty much a complete rewrite. Now a loopbased element. May still
require work to properly synchronise subtitle buffers.
mpegdemux:
dvddemux: Don't attempt to create subbuffers of size 0
Reduce a couple of error outputs to warnings.
y4mencode:Output the y4m frame header correctly
|
|
other colorspaces.
Original commit message from CVS:
* ext/hermes/gsthermescolorspace.c: (plugin_init): decrease rank
by 2 to not interfere with other colorspaces.
* ext/pango/gsttextoverlay.c: (plugin_init): change rank to NONE
* gst/colorspace/gstcolorspace.c: (plugin_init): decrease rank by
one to not interfere with ffmpeg_colorspace.
|
|
Original commit message from CVS:
* ext/alsa/gstalsa.c: (gst_alsa_fixate): Don't fixate fields that
aren't in the caps.
* gst/sine/gstsinesrc.c: change rate caps to [1,MAX]
* gst/videocrop/gstvideocrop.c: (plugin_init): Change rank to NONE.
|
|
compression ratio (needed for MACE audio)
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_handle_sink_event),
(gst_qtdemux_loop_header), (qtdemux_parse_moov), (qtdemux_parse),
(qtdemux_node_dump_foreach), (qtdemux_dump_mvhd),
(qtdemux_dump_tkhd), (qtdemux_dump_elst), (qtdemux_dump_mdhd),
(qtdemux_dump_hdlr), (qtdemux_dump_vmhd), (qtdemux_dump_dref),
(qtdemux_dump_stsd), (qtdemux_dump_stts), (qtdemux_dump_stss),
(qtdemux_dump_stsc), (qtdemux_dump_stsz), (qtdemux_dump_stco),
(qtdemux_dump_co64), (qtdemux_dump_dcom), (qtdemux_dump_cmvd),
(qtdemux_parse_tree), (qtdemux_parse_trak): Fix debugging
messages. Divide the chunk size by the compression ratio
(needed for MACE audio)
|
|
Original commit message from CVS:
* gst/mpegaudioparse/gstmpegaudioparse.c: (gst_mp3parse_chain):
Fix buffer overflow read error.
|
|
Original commit message from CVS:
* ext/alsa/gstalsa.h:
Remove unused entry.
* gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps):
Add cinepak.
* gst/videodrop/gstvideodrop.c: (gst_videodrop_getcaps),
(gst_videodrop_link), (gst_videodrop_chain):
Fix, sort of. Was horribly broken with new capsnego. Bah...
|
|
Original commit message from CVS:
don't mix tabs and spaces
|
|
Original commit message from CVS:
* *.h: Revert indenting
|
|
Original commit message from CVS:
gst-indent c++ files
|
|
Original commit message from CVS:
gst-indent
|
|
Original commit message from CVS:
* gst/modplug/gstmodplug.cc:
* gst/modplug/gstmodplug.h:
set correct timestamps on outgoing buffers
|
|
arrives that's not necessary
Original commit message from CVS:
* gst/modplug/gstmodplug.cc:
handle events - don't do crap when a discont arrives that's not
necessary
This allows correct loading and playback of mods in Rhythmbox
|
|
rebuilt properly
Original commit message from CVS:
* configure.ac:
* gst-libs/gst/gconf/Makefile.am:
* pkgconfig/Makefile.am:
move gstreamer-gconf pkgconfig files to pkgconfig/ dir. Make sure
they get rebuilt properly
* configure.ac:
when checking for vorbis, try pkgconfig first.
* gst/modplug/gstmodplug.cc:
add fixate function
|
|
offset and then read a samplesize element as...
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (qtdemux_parse_trak):
Fix for obvious mistake, where we first shift the offset and then
read a samplesize element assuming the old offset. Note that this
part still has something weird, i.e. my movies containing those
don't actually play well, but at least there's something that looks
like sound now.
|
|
Original commit message from CVS:
* configure.ac: the Hermes library controls hermescolorspace, not
colorspace.
* ext/mpeg2dec/gstmpeg2dec.c: (gst_mpeg2dec_base_init),
(gst_mpeg2dec_init): minor pet peeve: disable code with #ifdef,
not /* */
* ext/sdl/sdlvideosink.c: Change XID to unsigned long.
* ext/sdl/sdlvideosink.h: ditto.
* gst/colorspace/gstcolorspace.c: Fix old comments about Hermes
|
|
call gst_element_yield anymore
Original commit message from CVS:
* ext/mikmod/gstmikmod.c: (gst_mikmod_init), (gst_mikmod_loop),
(gst_mikmod_change_state):
* ext/mikmod/gstmikmod.h:
make mikmod's loop function not loop infinitely and call
gst_element_yield anymore
* gst/modplug/gstmodplug.cc:
fix pad negotiation
|
|
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (qtdemux_video_caps): Added Cinepak
format (bug #136470)
|
|
which case we're writing outside the allocate...
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_add_stream),
(qtdemux_parse_trak):
Fix crash (j might be greater than n_samples, in which case we're
writing outside the allocated space for the array) and memleak.
|
|
buffer), should fix some leaks. I hope I did...
Original commit message from CVS:
2004-03-06 Christophe Fergeau <teuf@gnome.org>
* ext/faac/gstfaac.c: (gst_faac_chain):
* ext/flac/gstflactag.c: (gst_flac_tag_chain):
* ext/libpng/gstpngenc.c: (user_write_data):
* ext/mikmod/gstmikmod.c: (gst_mikmod_loop):
* gst/ac3parse/gstac3parse.c: (gst_ac3parse_chain):
* gst/mpeg2sub/gstmpeg2subt.c: (gst_mpeg2subt_chain_subtitle):
* gst/mpegstream/gstrfc2250enc.c: (gst_rfc2250_enc_add_slice):
Fix several misuse of gst_buffer_merge (it doesn't take ownership
of any buffer), should fix some leaks. I hope I didn't unref buffers
that shouldn't be...
|
|
Original commit message from CVS:
* ext/faad/gstfaad.c: (gst_faad_init), (gst_faad_srcgetcaps),
(gst_faad_chain): Fix negotiation.
* ext/librfb/gstrfbsrc.c: (gst_rfbsrc_handle_src_event): Add
key and button events.
* gst-libs/gst/floatcast/floatcast.h: Fix a minor bug in this
dung heap of code.
* gst-libs/gst/gconf/gstreamer-gconf-uninstalled.pc.in: gstgconf
depends on gconf
* gst-libs/gst/gconf/gstreamer-gconf.pc.in: same
* gst-libs/gst/play/play.c: (gst_play_pipeline_setup),
(gst_play_video_fixate), (gst_play_audio_fixate): Add a fixate
function to encourage better negotiation, particularly between
audioconvert and osssink.
* gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_chain):
* gst/qtdemux/qtdemux.c: (qtdemux_parse_trak): Make some debugging
more important.
* gst/typefind/gsttypefindfunctions.c: Fix mistake in flash
typefinding.
* gst/vbidec/vbiscreen.c: Add glib header
* pkgconfig/gstreamer-play.pc.in: Depends on gst-interfaces.
|
|
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_get_src_formats),
(gst_qtdemux_src_convert), (gst_qtdemux_get_src_query_types),
(gst_qtdemux_get_event_mask), (gst_qtdemux_handle_src_query),
(gst_qtdemux_handle_src_event), (gst_qtdemux_add_stream):
Add prototype code for handling seeking and querying.
|
|
Original commit message from CVS:
fix plugin names
move gstvideosink.h to videosink.h
|
|
Original commit message from CVS:
add error handler
fix mixmatrix plugin filename
|
|
based on the expected framerate from the inp...
Original commit message from CVS:
* gst/videodrop/gstvideodrop.c: (gst_videodrop_init),
(gst_videodrop_chain), (gst_videodrop_change_state):
* gst/videodrop/gstvideodrop.h:
Work based on timestamp of input data, not based on the expected
framerate from the input. The consequence is that this element now
not only scales framerates, but also functions as a framerate
corrector or framerate stabilizer/constantizer.
|
|
Original commit message from CVS:
2004-02-27 Benjamin Otte <otte@gnome.org>
* gst-libs/gst/audio/audio.h:
add macro to make sure header isn't included twice
* gst/asfdemux/gstasfdemux.c: (gst_asf_demux_process_chunk):
don't use gst_buffer_free
* gst/playondemand/filter.func:
don't usae gst_data_free. Free data only once.
|
|
debug category. Attempt to fix timestam...
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (plugin_init), (gst_qtdemux_loop_header),
(qtdemux_parse_moov), (qtdemux_parse), (qtdemux_node_dump_foreach),
(qtdemux_dump_mvhd), (qtdemux_dump_tkhd), (qtdemux_dump_elst),
(qtdemux_dump_mdhd), (qtdemux_dump_hdlr), (qtdemux_dump_vmhd),
(qtdemux_dump_dref), (qtdemux_dump_stsd), (qtdemux_dump_stts),
(qtdemux_dump_stss), (qtdemux_dump_stsc), (qtdemux_dump_stsz),
(qtdemux_dump_stco), (qtdemux_dump_co64), (qtdemux_dump_dcom),
(qtdemux_dump_cmvd), (qtdemux_parse_tree), (qtdemux_parse_trak):
Cleanups. Convert g_prints to GST_LOGs. Add qtdemux debug
category. Attempt to fix timestamp calculation.
|
|
Original commit message from CVS:
2004-02-20 Benjamin Otte <otte@gnome.org>
* ext/xine/Makefile.am:
* ext/xine/gstxine.h:
* ext/xine/xine.c:
* ext/xine/xineaudiodec.c:
* ext/xine/xinecaps.c:
add first version of xine plugin wrapper. Currently only wraps the
QDM2 win32 DLL, and even that only in proof-of-concept quality.
* configure.ac:
* ext/Makefile.am:
add xine plugin wrapper, disabled by default. Use --enable-xine to
build. Note that it'll segfault on gst-register if you don't remove
the goom and tvtime post plugins from xine.
* gst/qtdemux/qtdemux.c: (gst_qtdemux_handle_sink_event),
(qtdemux_parse), (qtdemux_parse_trak), (qtdemux_audio_caps):
add extradata parsing for QDM2.
change around debugging prints.
|
|
Original commit message from CVS:
2004-02-15 Julien MOUTTE <julien@moutte.net>
* gst/switch/gstswitch.c: (gst_switch_loop): More fixes for
correct data refcounting.
|
|
mostly the EOS flag.
Original commit message from CVS:
2004-02-15 Julien MOUTTE <julien@moutte.net>
* gst/switch/gstswitch.c: (gst_switch_change_state),
(gst_switch_class_init): Cleaning the sinkpads correctly on state
change, mostly the EOS flag.
|
|
switch correctly.
Original commit message from CVS:
2004-02-14 Julien MOUTTE <julien@moutte.net>
* gst-libs/gst/play/play.c: (gst_play_connect_visualization): Disable
visualization until i find a way to fix switch correctly.
* gst-libs/gst/riff/riff-read.c: (gst_riff_peek_head): Fix a bug when
EOS arrives.
* gst/switch/gstswitch.c: (gst_switch_release_pad),
(gst_switch_request_new_pad), (gst_switch_poll_sinkpads),
(gst_switch_loop), (gst_switch_dispose), (gst_switch_class_init):
Reworked switch to get a more correct behaviour with events and refing
of data stored in sinkpads.
* gst/switch/gstswitch.h: Adding an eos flag for every sinkpad so that
we don't pull from a pad in EOS.
|
|
Original commit message from CVS:
2004-02-12 Julien MOUTTE <julien@moutte.net>
* gst/vbidec/vbiscreen.c: Fixing thomasvs fixes. Missing header.
|
|
Original commit message from CVS:
fixes for #133316, #133663 and #133528 (Stefan Kost)
|
|
Original commit message from CVS:
Build fixes for OS X: (see #129600)
* gst-libs/gst/riff/riff-read.c: (gst_riff_read_strh),
(gst_riff_read_strf_vids), (gst_riff_read_strf_auds),
(gst_riff_read_strf_iavs):
* gst/avi/gstavidemux.c: (gst_avi_demux_stream_avih),
(gst_avi_demux_stream_odml):
* gst/playondemand/Makefile.am:
* gst/rtp/rtp-packet.c:
|
|
Ronald)
Original commit message from CVS:
* gst/mpegaudioparse/gstmpegaudioparse.c: (gst_mp3parse_chain):
Unref leaked buffer. (Noticed by Ronald)
|
|
Original commit message from CVS:
Convert GST_DEBUG_CAPS() to GST_DEBUG():
* gst/mpeg1videoparse/gstmp1videoparse.c:
(mp1videoparse_parse_seq):
* gst/realmedia/rmdemux.c: (gst_rmdemux_add_stream):
* gst/videoscale/gstvideoscale.c: (gst_videoscale_getcaps):
* sys/xvideo/gstxwindow.c: (_gst_xwindow_new):
* sys/xvideo/xvideosink.c: (gst_xvideosink_sinkconnect),
(gst_xvideosink_getcaps):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_get_xv_support):
* testsuite/gst-lint: more tests
|
|
autopluggers can plug correctly.
Original commit message from CVS:
2004-02-03 Benjamin Otte <in7y118@public.uni-hamburg.de>
* gst/qtdemux/qtdemux.c: (gst_qtdemux_add_stream):
set explicit caps before adding the element, so the autopluggers can
plug correctly.
* gst/typefind/gsttypefindfunctions.c: (mp3_type_find),
(mpeg2_sys_type_find), (mpeg1_sys_type_find),
(mpeg_video_type_find), (mpeg_video_stream_type_find),
(dv_type_find):
fix memleaks in typefind functions. gst_type_find_suggest takes a const
argument.
|
|
Original commit message from CVS:
code cleanup. Change bzero() to memset(). Remove duplicate ; at ends
of lines.
* ext/cdparanoia/gstcdparanoia.c: (cdparanoia_event):
* ext/flac/gstflactag.c: (gst_flac_tag_chain):
* ext/xvid/gstxviddec.c: (gst_xviddec_src_link):
* gst-libs/gst/play/play.c: (gst_play_get_sink_element):
* gst/ac3parse/gstac3parse.c: (gst_ac3parse_chain):
* gst/effectv/gstedge.c: (gst_edgetv_sinkconnect):
* gst/effectv/gstvertigo.c: (gst_vertigotv_sinkconnect):
* gst/intfloat/float22int.c: (gst_float2_2_int_getcaps),
(gst_float2_2_int_link):
* gst/mpeg2sub/gstmpeg2subt.c: (gst_mpeg2subt_chain_subtitle):
* gst/rtjpeg/RTjpeg.c: (RTjpeg_init_mcompress):
* gst/tcp/gsttcpsink.c: (gst_tcpsink_init_send):
* gst/tcp/gsttcpsrc.c: (gst_tcpsrc_init_receive):
* gst/udp/gstudpsink.c: (gst_udpsink_init_send):
* gst/udp/gstudpsrc.c: (gst_udpsrc_init_receive):
* sys/v4l/gstv4lelement.c: (gst_v4lelement_init):
* sys/v4l2/v4l2src_calls.c: (gst_v4l2src_set_capture):
* testsuite/gst-lint: Add tests for bzero and ;;
|
|
Original commit message from CVS:
change NULL to (NULL) for GST_ELEMENT_ERROR
Make sure errors end with "."
|
|
ffmpeg (thank you! :) ).
Original commit message from CVS:
2004-01-30 Ronald Bultje <rbultje@ronald.bitfreak.net>
* gst/mpegaudioparse/gstmpegaudioparse.c:
(mp3_type_frame_length_from_header):
Fix header parsing - stolen from ffmpeg (thank you! :) ).
|
|
Original commit message from CVS:
GST_ELEMENT_ERROR
|
|
Grr... Didn't notice until now.
Original commit message from CVS:
2004-01-29 Ronald Bultje <rbultje@ronald.bitfreak.net>
* gst/mpeg1videoparse/gstmp1videoparse.c:
(gst_mp1videoparse_real_chain):
Committed wrong version last week... Grr... Didn't notice until now.
|
|
Original commit message from CVS:
2004-01-26 Jeremy Simon <jesimon@libertysurf.fr>
* ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps),
(gst_ffmpeg_caps_to_extradata), (gst_ffmpeg_caps_to_pixfmt):
* gst/qtdemux/qtdemux.c: (plugin_init), (qtdemux_parse_trak),
(qtdemux_video_caps):
* gst/qtdemux/qtdemux.h:
Add SVQ3 specific flags to qtdemux and ffmpeg
|
|
Still have an issue with switch blocking wh...
Original commit message from CVS:
2004-01-25 Julien MOUTTE <julien@moutte.net>
* gst-libs/gst/play/gstplay.c: (gst_play_pipeline_setup),
(gst_play_identity_handoff), (gst_play_set_location),
(gst_play_set_visualization), (gst_play_connect_visualization): Another
try in visualization implementation. Still have an issue with switch
blocking when pulling from video_queue and only audio comes out of
spider.
* gst/switch/gstswitch.c: (gst_switch_release_pad),
(gst_switch_poll_sinkpads), (gst_switch_class_init): Implementing pad
release method. And check if the pad is usable before pulling.
|
|
Original commit message from CVS:
2004-01-25 Ronald Bultje <rbultje@ronald.bitfreak.net>
* gst-libs/gst/riff/riff-read.c: (gst_riff_read_info):
Additional pad usability check.
* gst/mpeg1videoparse/gstmp1videoparse.c: (gst_mp1videoparse_init),
(mp1videoparse_find_next_gop), (gst_mp1videoparse_time_code),
(gst_mp1videoparse_real_chain):
Fix MPEG video stream parsing. The original plugin had several
issues, including not timestamping streams where the source was
not timestamped (this happens with PTS values in mpeg system
streams, but MPEG video is also a valid stream on its own so
that needs timestamps too). We use the display time code for that
for now. Also, if one incoming buffer contains multiple valid
frames, we push them all on correctly now, including proper EOS
handling. Lastly, several potential segfaults were fixed, and we
properly sync on new sequence/gop headers to include them in next,
not previous frames (since they're header for the next frame, not
the previous). Also see #119206.
* gst/mpegaudioparse/gstmpegaudioparse.c: (gst_mp3parse_chain),
(bpf_from_header):
Move caps setting so we only do it after finding several valid
MPEG-1 fraes sequentially, not right after the first one (which
might be coincidental).
* gst/typefind/gsttypefindfunctions.c: (mpeg1_sys_type_find),
(mpeg_video_type_find), (mpeg_video_stream_type_find),
(plugin_init):
Add unsynced MPEG video stream typefinding, and change some
probability values so we detect streams rightly. The idea is as
follows: I can have an unsynced system stream which contains
video. In the current code, I would randomly get a type for either
system or video stream type found, because the probabilities are
being calculated rather randomly. I now use fixed values, so we
always prefer system stream if that was found (and that is how it
should be). If no system stream was found, we can still identity
the stream as video-only.
|