Commit graph

410 commits

Author SHA1 Message Date
Ronald S. Bultje
02029d218d gst/matroska/: fix signed integer reading/writing.
Original commit message from CVS:
2004-01-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>

* gst/matroska/ebml-read.c: (gst_ebml_read_sint):
* gst/matroska/ebml-write.c: (gst_ebml_write_sint):
fix signed integer reading/writing.
2004-01-02 20:38:59 +00:00
Jan Schmidt
782af83621 src pad was being created twice - oops.
Original commit message from CVS:
src pad was being created twice - oops.
2004-01-02 15:32:40 +00:00
David Schleef
725711e93c Fix some regressions caused by caps conversion
Original commit message from CVS:
Fix some regressions caused by caps conversion
2004-01-02 08:12:12 +00:00
David Schleef
e9f6be3a04 Negotiation fixes
Original commit message from CVS:
Negotiation fixes
2004-01-02 07:25:10 +00:00
David Schleef
6c1b114eed Convert elements to use gst_pad_use_explicit_caps() where appropriate.
Original commit message from CVS:
Convert elements to use gst_pad_use_explicit_caps() where appropriate.
2004-01-02 07:09:23 +00:00
Ronald S. Bultje
39a338d51c configure.ac: Fix configure check for mpeg2enc. We need 1.6.1.93 instead of 1.6.1.92, since the pkg-config file of 1....
Original commit message from CVS:
2004-01-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>

* configure.ac:
Fix configure check for mpeg2enc. We need 1.6.1.93 instead of
1.6.1.92, since the pkg-config file of 1.6.1.92 is borked and
it therefore uses the wrong include paths. Too bad... Note
that 1.6.1.93 is not release yet. ;).
Also add a check for mplex, which is now using the lib'ified
mplex from mjpegtools, too.
* ext/ffmpeg/gstffmpegcodecmap.c:
Add codec_tag for 3ivx/xvid. For xvid, this should fix playback
issues. I don't think ffmpeg handles 3ivx correctly, so this
probably won't work. But it won't hurt either.
* ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_connect),
(gst_ffmpegdec_chain):
* ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_connect),
(gst_ffmpegenc_chain_audio):
Fix memleak in audio encoding. Close codec if open fails, this
calls the cleanup routines so we can re-use the context.
* ext/mpeg2enc/gstmpeg2enc.cc:
Fix pad template names/types, fix memory issue with getcaps().
* ext/mpeg2enc/gstmpeg2encoder.cc:
* ext/mpeg2enc/gstmpeg2encoder.hh:
Fix compile issue with new caps system (const thingy).
* ext/mpeg2enc/gstmpeg2encpicturereader.cc:
* ext/mpeg2enc/gstmpeg2encpicturereader.hh:
We read a first frame right on initing, so that we have a caps
when we init the output. This caps is cached in padprivate and
read as first frame.
* ext/mplex/Makefile.am:
* ext/mplex/gstmplex.cc:
* ext/mplex/gstmplex.h:
* ext/mplex/gstmplex.hh:
* ext/mplex/gstmplexibitstream.cc:
* ext/mplex/gstmplexibitstream.hh:
* ext/mplex/gstmplexjob.cc:
* ext/mplex/gstmplexjob.hh:
* ext/mplex/gstmplexoutputstream.cc:
* ext/mplex/gstmplexoutputstream.hh:
We wrap mjpegtools mplex. So I rewrote the plugin. The old plugin
had issues, didn't do capsnego, supported only a subset of the
mplex features and required a mplex fork in our local CVS. Plus
that it worked agaist a very old mplex version. Rewriting was
faster than updating it.
* gst-libs/ext/Makefile.am:
* gst-libs/ext/mplex/INSTRUCT:
* gst-libs/ext/mplex/Makefile.am:
* gst-libs/ext/mplex/README:
* gst-libs/ext/mplex/TODO:
* gst-libs/ext/mplex/ac3strm_in.cc:
* gst-libs/ext/mplex/audiostrm.hh:
* gst-libs/ext/mplex/audiostrm_out.cc:
* gst-libs/ext/mplex/aunit.hh:
* gst-libs/ext/mplex/bits.cc:
* gst-libs/ext/mplex/bits.hh:
* gst-libs/ext/mplex/buffer.cc:
* gst-libs/ext/mplex/buffer.hh:
* gst-libs/ext/mplex/fastintfns.h:
* gst-libs/ext/mplex/format_codes.h:
* gst-libs/ext/mplex/inputstrm.cc:
* gst-libs/ext/mplex/inputstrm.hh:
* gst-libs/ext/mplex/lpcmstrm_in.cc:
* gst-libs/ext/mplex/mjpeg_logging.cc:
* gst-libs/ext/mplex/mjpeg_logging.h:
* gst-libs/ext/mplex/mjpeg_types.h:
* gst-libs/ext/mplex/mpastrm_in.cc:
* gst-libs/ext/mplex/mpegconsts.cc:
* gst-libs/ext/mplex/mpegconsts.h:
* gst-libs/ext/mplex/mplexconsts.hh:
* gst-libs/ext/mplex/multplex.cc:
* gst-libs/ext/mplex/outputstream.hh:
* gst-libs/ext/mplex/padstrm.cc:
* gst-libs/ext/mplex/padstrm.hh:
* gst-libs/ext/mplex/stillsstream.cc:
* gst-libs/ext/mplex/stillsstream.hh:
* gst-libs/ext/mplex/systems.cc:
* gst-libs/ext/mplex/systems.hh:
* gst-libs/ext/mplex/vector.cc:
* gst-libs/ext/mplex/vector.hh:
* gst-libs/ext/mplex/videostrm.hh:
* gst-libs/ext/mplex/videostrm_in.cc:
* gst-libs/ext/mplex/videostrm_out.cc:
* gst-libs/ext/mplex/yuv4mpeg.cc:
* gst-libs/ext/mplex/yuv4mpeg.h:
* gst-libs/ext/mplex/yuv4mpeg_intern.h:
* gst-libs/ext/mplex/yuv4mpeg_ratio.cc:
We don't fork mjpegtools' mplex in our CVS anymore.
* gst/avi/gstavidemux.c: (gst_avi_demux_src_getcaps),
(gst_avi_demux_add_stream):
* gst/avi/gstavidemux.h:
Add getcaps() function for proper caps nego. This makes some
parts of AVI playback/reading work.
* sys/ximage/ximagesink.c: (gst_ximagesink_sinkconnect):
Resize window on new capsnego. This is probably wrong, but
I'm still committing it because with current capsnego, the
first successfull capsnego is auto-fixated, therefore rounded
down to the lowest values in the caps. this results in a 16x16
XWindow that is not reized when real capsnego finishes.
Dave, I see more cases of this, do you know a proper solution?
* tools/gst-launch-ext.in:
Fix MPEG-4 AAC (Apple iPod/iTunes) file commandline.
2004-01-01 22:45:57 +00:00
David Schleef
079a91cc80 Change gst_pad_proxy_link() to gst_pad_try_set_caps()
Original commit message from CVS:
Change gst_pad_proxy_link() to gst_pad_try_set_caps()
2003-12-31 08:41:48 +00:00
David Schleef
7bbd7da502 Negotiation fixes.
Original commit message from CVS:
Negotiation fixes.
2003-12-31 08:02:04 +00:00
Jeremy Simon
dec4f2b8a3 Fix warnings
Original commit message from CVS:
Fix warnings
2003-12-27 19:37:16 +00:00
Benjamin Otte
07a0396381 gst/qtdemux/qtdemux.c: qtdemux requires bytestream
Original commit message from CVS:
2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* gst/qtdemux/qtdemux.c: (plugin_init):
qtdemux requires bytestream
2003-12-22 19:05:34 +00:00
David Schleef
ce51f6173c Merge CAPS branch
Original commit message from CVS:
Merge CAPS branch
2003-12-22 01:47:09 +00:00
Ronald S. Bultje
ae91d7c717 configure.ac: Improve mpeg2enc detection. This is for distributions that do ship mjpegtools, but without mpeg2enc. Al...
Original commit message from CVS:
2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>

* configure.ac:
Improve mpeg2enc detection. This is for distributions that do
ship mjpegtools, but without mpeg2enc. Also does object check
for might there ever be ABI incompatibility.
* ext/mpeg2enc/gstmpeg2enc.cc:
Add Andrew as second maintainer (he's helping me), and also add
an error if no caps was set. This happens if I pull before capsnego
and that's something I should solve sometime else.
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_parse_blockgroup):
Fix time parsing.
* gst/matroska/matroska-mux.c: (gst_matroska_mux_audio_pad_link),
(gst_matroska_mux_track_header):
Add caps to templates.
* gst/mpegaudioparse/gstmpegaudioparse.c: (mp3_sink_factory):
Add mpegversion=1 to prevent confusion with MPEG/AAC.
* gst/mpegstream/gstmpegdemux.c:
Remove layer since it causes warnings about unfixed caps.
* gst/videotestsrc/gstvideotestsrc.c: (gst_videotestsrc_get):
Fix obvious typo (we error out if caps were set, we should of
course error out if *no* caps were set).
* sys/oss/gstosselement.c: (gst_osselement_convert):
Fix format conversion, we confused bits/bytes.
* sys/oss/gstosselement.h:
Improve documentation for 'bps'.
* sys/v4l/TODO:
Remove stuff about plugins that need removing - this was done
ages ago.
* sys/v4l/gstv4lmjpegsrc.c: (gst_v4lmjpegsrc_init),
(gst_v4lmjpegsrc_src_convert), (gst_v4lmjpegsrc_src_query):
* sys/v4l/gstv4lsrc.c: (gst_v4lsrc_init), (gst_v4lsrc_src_convert),
(gst_v4lsrc_src_query):
* sys/v4l2/gstv4l2src.c: (gst_v4l2src_init),
(gst_v4l2src_src_convert), (gst_v4l2src_src_query):
Add get_query_types(), get_formats() and query() functions.
2003-12-21 18:44:34 +00:00
Ronald S. Bultje
69482984d5 Quickfix for wrong timestamps... No final solution yet
Original commit message from CVS:
Quickfix for wrong timestamps... No final solution yet
2003-12-19 16:07:00 +00:00
Ronald S. Bultje
76a5c85de7 Sorry Dave... Add mpegversion=1 to mp3 caps everywhere so that the autoplugger uses mad and not faad for mp3 decoding...
Original commit message from CVS:
Sorry Dave... Add mpegversion=1 to mp3 caps everywhere so that the autoplugger uses mad and not faad for mp3 decoding. This should fix mp3 playback.
2003-12-18 09:31:49 +00:00
Ronald S. Bultje
fd6b022682 Fix compilation on BE, see #129224
Original commit message from CVS:
Fix compilation on BE, see #129224
2003-12-13 17:08:26 +00:00
Benjamin Otte
26492d2076 make videofilter handle RGB correctly
Original commit message from CVS:
make videofilter handle RGB correctly
2003-12-09 01:17:28 +00:00
Ronald S. Bultje
ada54a1cdd More riff stuff that I forgot to commit first
Original commit message from CVS:
More riff stuff that I forgot to commit first
2003-12-07 23:05:58 +00:00
Ronald S. Bultje
12e856c26d Riff, EBML, fourcc etc. work. Not fully finished, but better than what we used to have and definately worth a first b...
Original commit message from CVS:
Riff, EBML, fourcc etc. work. Not fully finished, but better than
what we used to have and definately worth a first broad testing.

I've revived rifflib. Rifflib used to be a bytestream-for-riff, which
just dup'ed bytestream. I've rewritten rifflib to be a modern riff-
chunk parser that uses bytestream fully, plus adds some extra functions
so that riff file parsing becomes extremely easy. It also contains some
small usability functions for strh/strf and metadata parsing. Note that
it doesn't use the new tagging yet, that's a TODO.

Avidemux has been rewritten to use this. I think we all agreed that
avidemux was pretty much a big mess, which is because it used all
sort of bytestream magic all around the place. It was just ugly.
This is a lot nicer, very complete and safe. I think this is far more
robust than what the old avidemux could ever have been. Of course, it
might contain bugs, please let me know.

EBML writing has also been implemented. This is useful for matroska.
I'm intending to modify avidemux (with a riffwriter) similarly. Maybe
I'll change wavparse/-enc too to use rifflib.

Lastly, several plugins have been modified to use rifflib's fourcc
parsing instead of their own. this puts fourcc parsing in one central
place, which should make it a lot simpler to add new fourccs. We might
want to move this to its own lib instead of rifflib.

Enjoy!
2003-12-07 20:00:41 +00:00
Andy Wingo
e46d34995d remove copyright field from plugins
Original commit message from CVS:
remove copyright field from plugins
2003-12-04 10:37:38 +00:00
David Schleef
f1d94660c5 Change everyone to video/x-msvideo
Original commit message from CVS:
Change everyone to video/x-msvideo
2003-11-27 21:49:39 +00:00
Iain Holmes
9c81eec41c Added audio/x-m4a to the sink caps
Original commit message from CVS:
Added audio/x-m4a to the sink caps
2003-11-27 17:35:00 +00:00
Benjamin Otte
4db301b2e5 License is GST_LICENSE, make own debugging category and fix some debug statements
Original commit message from CVS:
License is GST_LICENSE, make own debugging category and fix some debug statements
2003-11-24 23:11:42 +00:00
Benjamin Otte
8b4dbbc044 add a rank to allow autoplugging
Original commit message from CVS:
add a rank to allow autoplugging
2003-11-24 15:25:21 +00:00
Benjamin Otte
1c7db040a3 tagging stuff and build fixes. In detail:
Original commit message from CVS:
tagging stuff and build fixes. In detail:
- make gdk-pixbuf loader work when distchecking
- fix invalid syntax in ffmpeg Makefile. wildcards for EXTRA_DIST are not allowed. This broke builds where distdir != srcdir
- fix ffmpeg cvs grabbing when srcdir != distdir
- new id3tag plugin for id3 tag reading/writing (uses mad's libid3tag)
- mad and libid3tag require mad/libid3tag v0.15. Fixed configure to require that
- added ogg demuxer in ext/ogg. The demuxer does not handle events yet. Especially getting seeking right will require some effort or code copying from libvorbis.
- added raw vorbis detection to typefinding. oggdemux requires a typefind function to detect its contents.
- tags plugin in gst/tags. Provides API in <gst/tags/gsttagediting.h>. API includes tag matching GStreamer <=> ID3 and GStreamer <=> vorbis and writing/reading vorbiscomments or ID3v1 tags. Also included is a simple vorbiscomment reader/writer. Writing will not really work though until someone writes oggmux.
- various build fixes. Mostly missing (DIST)CLEANFILES.
- vorbisenc handles tag writing.

Now it's YOUR turn to fix and write more plugins that handle writing/reading of tags. :)
2003-11-24 04:08:47 +00:00
Ronald S. Bultje
5dca8dcdf7 so disable it during plugin registering too
Original commit message from CVS:
Muxer is disabled (under development), so disable it during plugin registering too
2003-11-22 12:10:00 +00:00
Ronald S. Bultje
29e9ebcfda Add C-based local matroska/EBML plugin, remove libmatroska/libebml c++ one
Original commit message from CVS:
Add C-based local matroska/EBML plugin, remove libmatroska/libebml c++ one
2003-11-21 21:34:27 +00:00
David Schleef
5d592f709f Fix segfault in #125471 by denying a state change to PLAYING when not inited. This is arguably not the right fix.
Original commit message from CVS:
Fix segfault in #125471 by denying a state change to PLAYING when not
inited.  This is arguably not the right fix.
2003-11-19 03:46:21 +00:00
Leif Johnson
5c244e8374 + checking in plugin category changes
Original commit message from CVS:
+ checking in plugin category changes
2003-11-16 22:02:22 +00:00
Iain Holmes
b8a295b778 Don't flush if we come across a cue tag.
Original commit message from CVS:
Don't flush if we come across a cue tag.
Emit the got metadata signal once we've parsed the adtl tag
2003-11-14 15:02:42 +00:00
David Schleef
dc1936977b Change GstCaps to GstStructure in navigation events. Fix x[v]imagesink to scale navigation events.
Original commit message from CVS:
Change GstCaps to GstStructure in navigation events.  Fix x[v]imagesink
to scale navigation events.
2003-11-11 00:43:29 +00:00
David Schleef
e9b809fdba change video/x-jpeg to image/jpeg
Original commit message from CVS:
change video/x-jpeg to image/jpeg
2003-11-10 22:47:38 +00:00
David Schleef
ea4a82a5ad navigation tester
Original commit message from CVS:
navigation tester
2003-11-10 22:33:43 +00:00
Christian Schaller
a61cc265fe disting fixes, pixbuf loader still borked in regards to disting
Original commit message from CVS:
disting fixes, pixbuf loader still borked in regards to disting
2003-11-09 22:48:58 +00:00
Ronald S. Bultje
ef93dc47b4 Since padtemplates are now owned by the class, we should use the class function to retrieve them for comparison
Original commit message from CVS:
Since padtemplates are now owned by the class, we should use the class function to retrieve them for comparison
2003-11-09 13:48:36 +00:00
David Schleef
19c9bdf5d7 remove pesky g_print()s
Original commit message from CVS:
remove pesky g_print()s
2003-11-08 03:02:14 +00:00
David Schleef
4a7080ae85 break up Id: in s/ pattern
Original commit message from CVS:
break up Id: in s/ pattern
2003-11-08 03:00:07 +00:00
David Schleef
1307da3508 Add tag to output .c file
Original commit message from CVS:
Add tag to output .c file
2003-11-08 02:58:08 +00:00
David Schleef
d312ad6641 recommmit to get the make_filter tag correct
Original commit message from CVS:
recommmit to get the make_filter tag correct
2003-11-08 02:57:18 +00:00
David Schleef
aee9dba783 much cleanup hacking made possible by plugin changes
Original commit message from CVS:
much cleanup hacking made possible by plugin changes
2003-11-08 02:52:41 +00:00
David Schleef
bd2c86e953 Update the videofilter template
Original commit message from CVS:
Update the videofilter template
2003-11-08 02:48:59 +00:00
Jeremy Simon
a8fcbcd43b Do not demux only 2 trak atoms
Original commit message from CVS:
Do not demux only 2 trak atoms
2003-11-07 20:36:47 +00:00
Ronald S. Bultje
5621eae1c5 Remove all config.h includes from header files, add it to each source file and remove duplicate config.h includes fro...
Original commit message from CVS:
Remove all config.h includes from header files, add it to each source file and remove duplicate config.h includes from several source files
2003-11-07 12:47:01 +00:00
David Schleef
db94ea181b add config.h
Original commit message from CVS:
add config.h
2003-11-06 22:17:19 +00:00
David Schleef
95f73bcf6d make sure config.h is included first
Original commit message from CVS:
make sure config.h is included first
2003-11-06 22:14:17 +00:00
David Schleef
62c24a3419 Fixes for new plugin system
Original commit message from CVS:
Fixes for new plugin system
2003-11-03 08:54:57 +00:00
Benjamin Otte
3c6cdb7d7c fix template, too
Original commit message from CVS:
fix template, too
2003-11-02 23:03:44 +00:00
Ronald S. Bultje
673bb31a92 Bla
Original commit message from CVS:
Bla
2003-11-02 22:54:47 +00:00
Benjamin Otte
0c394ebe6c forgot to make the element details static in here
Original commit message from CVS:
forgot to make the element details static in here
2003-11-02 22:53:56 +00:00
Benjamin Otte
309bd248b1 fix for new plugin system
Original commit message from CVS:
fix for new plugin system
2003-11-02 22:34:11 +00:00
Ronald S. Bultje
1075f2109f SMPTE transitions done
Original commit message from CVS:
SMPTE transitions done
2003-11-02 22:26:51 +00:00