IRC Logs
IRC <[email protected]>
| Newsgroups | gmane.comp.video.gstreamer.daily |
|---|---|
| Message-ID | <[email protected]> |
******************************************************************* [03:15] <Company> ==23519== More than 30000 total errors detected. I'm not reporting any more. [03:15] <Company> ==23519== Final error counts will be inaccurate. Go fix your program! [03:16] <Company> ooops :) [03:16] Shoragan ([email protected]) left irc: "Leaving" [03:17] Nick change: harshyOut -> harshy [03:22] <Company> hm, it's all mpeg2dec [03:29] water ([email protected]) left #gstreamer ("The water has parted."). [03:31] <jimmy_dean> ds: would I want to copy the same caps as the volume plugin for a equalizer plugin? Meaning for the GST_STATIC_CAPS definition in the factory definition line of the plugin [03:31] <ds-work> no [03:31] <ds-work> you should choose the format you want to support [03:32] <jimmy_dean> ds-work: hmm, how do I determine what type of caps I need? it's rather confusing [03:32] <jimmy_dean> ds-work: well I assumed I'd want to support all of the same formats as the volume plugin since I'm doing a similar job, my algorithm is just different [03:34] <ds-work> do you want to support float audio? [03:34] <ds-work> how many channels? [03:34] <Company> audio is actually quite easy [03:34] <Company> the caps [03:34] <ds-work> 8-bit? [03:34] <jimmy_dean> ds-work: yeah I do, float is a higher quality than int audio, correct? [03:35] <jimmy_dean> ds-work: all of the above [03:35] <ds-work> are you going to do it all today? [03:35] <jimmy_dean> ds-work: how many channels can I support, does gstreamer include support for more than 2 (stereo) channels? [03:35] <ds-work> yes [03:35] <jimmy_dean> ds-work: heck no [03:35] <jimmy_dean> ds-work: so gstreamer can support surround sound for instance? [03:36] <Company> gstreamer supports anything [03:36] <jimmy_dean> cool [03:36] <Company> even not-yet-invented formats [03:36] <ds-work> if you tell it you support lots of audio formats today, but don't implement the code until next tuesday, it won't work until next tuesday [03:36] <jimmy_dean> ds-work: oh I gotcha, so it's easy to add more support as you go along [03:36] <Company> jimmy_dean: do you know what caps are? [03:36] <jimmy_dean> ds-work: so I could start out at 8-bit mono? [03:37] <jimmy_dean> Company: cababilities [03:37] <Company> a better idea would be 16 bit signed stereo host endian [03:37] <jimmy_dean> Company: but I know what it is, I don't know where i find out the various cap definitions [03:37] <Company> as that's the most common format [03:37] <jimmy_dean> Company: ok, or that [03:37] <Company> jimmy_dean: gstreamer core tarball, file docs/random/mimetypes [03:38] <Company> jimmy_dean: or better: look at the plugins and see what they do [03:38] <jimmy_dean> Company: I'm looking at the volume plugin right now [03:39] <Company> let me help you a bit [03:39] Action: Company grabs volume plugin file [03:39] <jimmy_dean> Company: thanks [03:40] <Company> caps can be output as strings or defined directly [03:40] <Company> if you look at the string definition at the top, you can see how it's done [03:40] <jimmy_dean> Company: yeah, the volume plugin uses strings [03:41] <Company> so you need to define channels, endianness and so on [03:41] <jimmy_dean> Company: I know what endianness is, but what does host endian specifically mean for gstreamer and my plugin? [03:42] <Company> well, you'll get buffers with data that you handle in your chain function [03:42] <jimmy_dean> Company: right, I saw that [03:42] harshy ([email protected]) left irc: Remote closed the connection [03:43] <Company> host endian or byte order means that this data contains ints in the endianness of the machine it runs on [03:43] <Company> so it's big endian on PPC and little endian on x86 [03:44] <jimmy_dean> Company: gotcha, makes sense [03:44] <jimmy_dean> Company: ok, I see a definition for raw-flot and raw-int, do I want to deal with one in particular first? [03:44] <jimmy_dean> float [03:45] <Company> you should start with the most common format i guess [03:45] <jimmy_dean> Company: which is int? [03:45] <Company> which is int 16bit signed host endian :) [03:46] <jimmy_dean> Company: what kind of signal loss do you get from using int versus float? [03:46] <jimmy_dean> Company: can you easily hear the difference? [03:46] <Company> no [03:46] thaytan ([email protected]) left irc: Read error: 110 (Connection timed out) [03:46] <Company> every audio player uses int [03:46] <jimmy_dean> Company: ahh ok, so who uses float? [03:46] <Company> pro audio mainly [03:46] <jimmy_dean> Company: ok, recording studios, etc? [03:46] <Company> everyone who considers himself a "serious audio guy", whatever that means ;) [03:46] <Company> yeah [03:46] <jimmy_dean> lol [03:47] <jimmy_dean> Company: so does rhythmbox use int then? [03:47] <Company> most of the time, yes [03:47] <jimmy_dean> Company: that's my ultimate design goal, an equalizer for RB [03:47] <Company> because the mp3 and vorbis decoders output int only [03:48] <jimmy_dean> ok, that's good to know [03:48] <ds-work> vorbis outputs float, too [03:48] <Company> it can, yeah [03:48] <Company> but it doesn't most of the time [03:48] <Company> because the soundcard prefers int [03:48] <jimmy_dean> ok, so I have this: "audio/x-raw-int, " [03:49] <Company> anyway, you probably want to fix all the values in the caps on your first try [03:49] <jimmy_dean> and this for channels: "channels = (int) [ 1, MAX ], " [03:49] <jimmy_dean> ok, like MAX [03:49] <Company> i'd fix that to one [03:49] <Company> "channels = (int) 1, " [03:49] <jimmy_dean> so in theory does MAX mean it can support an arbitrary number of channels? [03:49] sub_pop ([email protected]) joined #gstreamer. [03:49] <Company> yes [03:49] <jimmy_dean> Company: ok, is rate the bit rate? [03:49] <ds-work> argh! rhythmbox doesn't check that osssink fails to go to READY [03:50] harshy ([email protected]) joined #gstreamer. [03:50] <Company> but as i said: start by fixing it, you can make it dynamic later on [03:50] <Company> (making it dynamic is quite hard) [03:50] <Company> at least for newbies to gstreamer :) [03:50] <jimmy_dean> Company: yeah, ok...so setting it to one means the output of the plugin will be mono? [03:50] <Company> yes [03:50] <Company> and the input, too [03:50] <jimmy_dean> Company: but it will come out of every speaker, right? [03:51] <Company> if you prefer to code everything in stereo, you can set it to 2, too [03:51] <Company> yes, the soundcard takes care of that [03:51] <jimmy_dean> Company: ok, I'll try 2 [03:51] trow ([email protected]) left irc: "Leaving" [03:51] <jimmy_dean> Company: what about rate? [03:51] <Company> set it to 44100 for a start [03:52] <jimmy_dean> ok, byte order...there must be a macro for that maybe?/ [03:52] <Company> the string BYTE_ORDER does that for you [03:52] <jimmy_dean> gotcha, width should be 16 so that's fine [03:52] <jimmy_dean> and signed to TRUE or FALSE? [03:53] ChrisHJW ([email protected]) joined #gstreamer. [03:53] <Company> width depth and signed stay as they are in volume [03:53] <jimmy_dean> excellent [03:53] <jimmy_dean> Company: do I want to form the equalizer factory definition just like the volume one? [03:53] <Company> without the float part, yeah [03:54] <Company> well, and with fixed channels and rate [03:54] <ds-work> er, please don't copy anything in volume. it's not really up to date [03:54] <Company> we'Re going to delte most of that stuff soon :) [03:55] <taaz> ds-work: would that rb osssink thing be part of my troubles? hitting stop while playing iradio locks up rb. though it can be unlocked by breaking into gdb and just continuing. [03:55] <jimmy_dean> right, I mean right now the template just is "GST_PAD_EQUALIZER_FACTORY (gst_equalizer_src_factory," etc [03:55] <Company> yeah [03:56] Action: taaz thinks whoever had that Standards-Version like idea for plugins was right on. [03:56] <jimmy_dean> taaz: yeah, it's a big help to a newbie gstreamer coder :) [03:56] <ds-work> taaz: unlikely -- this was segfaulting when playing anything [03:57] <jimmy_dean> Company: alright, so then the meat of my algorithm goes into the "static void [03:57] <jimmy_dean> gst_equalizer_chain (GstPad *pad, GstData *in)" function, right? [03:57] <Company> right [03:57] <ds-work> taaz: actually, we have Standards-Version, it's just that no plugin uses it yet :) [03:58] <Company> you need to edit the gst_equalizer_init function [03:58] <jimmy_dean> Company: alright, here's a design decision that I'd care to get an opinion on...obviously I need to do a Fourier transform on the data...is it ok to link in an excellent library called FFTW (completely open source) from MIT? [03:58] <jimmy_dean> Company: ok [03:58] <Company> not a problem at all [03:58] <Company> gstreamer links to all sorts of libraries [03:58] <jimmy_dean> Company: ok, people say it is top-notch [03:59] <Company> you'll find out soon :) [03:59] <ds-work> fftw is ok [03:59] <jimmy_dean> Company: yeah, it'll take some tuning though, accuracy in the DFT versus CPU usage [04:00] <jimmy_dean> ds-work: you've used it? [04:00] <ds-work> lots [04:00] <jimmy_dean> ds-work: is it really the fastest in the west? :) [04:00] <taaz> ds-work: oh? heh. should add support to set version to 0(.0.0) and have gst-inspect print it out so it's obvious which plugins need love [04:01] <jimmy_dean> Company: what do I need to do in the gst_equalizer_init function? [04:01] <Company> first the base_init function [04:02] <Company> you can pretty much copy it from the volume plugin [04:02] <ds-work> jimmy_dean: it's fast, but not as fast as it could be [04:02] <jimmy_dean> ds-work: hmm, have you seen faster in an open source library? [04:02] Action: Company notes that ds-work is an assembler fanatic [04:02] <jimmy_dean> lol [04:03] <ds-work> jimmy_dean: I wrote some fft code one day, and it was faster than fftw. So I wasn't impressed [04:03] <jimmy_dean> Company: is it the same as volume_init? [04:03] <jimmy_dean> ds-work: hmm, no idea then...do you still have that code? [04:03] <jimmy_dean> ds-work: we could embed it in then [04:04] <ds-work> jimmy_dean: it was rather specialized, so no [04:04] <jimmy_dean> ds-work: ahh, ok [04:04] <ds-work> I ended up using fftw in the end anyway [04:04] <jimmy_dean> ds-work: I've only used MATLABS DFT [04:04] <Company> jimmy_dean: no, volume_base_init [04:04] <jimmy_dean> Company: ok [04:05] <jimmy_dean> Company: I am working off of the template, it looks pretty much the same as the volume plugin's base_init [04:06] <Company> after that, you need to add to the _init function [04:06] <jimmy_dean> Company: does an external program use the gst_equalizer_get_property and set functions to interact with the plugin? [04:07] <Company> yeah, that's one way to interact with it [04:07] <jimmy_dean> Company: ok [04:07] <jimmy_dean> Company: what do I need to add to the _init? [04:08] <jimmy_dean> Company: are you referring to gst_equalizer_init() now? [04:08] <Company> yes [04:08] <Company> filter->sinkpad = gst_pad_new_from_template ( [04:08] <Company> gst_static_pad_template_get (&volume_sink_factory), "sink"); [04:08] <Company> gst_element_add_pad (GST_ELEMENT (filter), filter->sinkpad); [04:08] <Company> and the same for the srcpads [04:08] <Company> srcpad [04:09] <jimmy_dean> Company: that's already there from the template [04:09] <Company> creat [04:09] <Company> great too [04:09] <Company> and then there's a gst_pad_set_chain_function(... [04:09] <jimmy_dean> yep, there too, and silent [04:10] <Company> that's pretty much anything that's needed [04:10] <Company> to get started at least [04:10] <jimmy_dean> Company: ok, so basically almost everything is setup in the template already...basically just customizing the caps and the chain function [04:10] <Company> well, it's the most basic plugin you could get [04:11] <Company> it does essentially nothing [04:11] <Company> and it does nothing only in one format [04:11] <Company> but it's a start [04:11] <Company> if you now make the chainfunction only contain this one line: [04:12] <jimmy_dean> Company: ok, for the equalizer obviously from a program you'll want to pass some data, probably 12 pieces of info referring to each band's equalizer setting...how do I go about passing that in...I guess I could start with maybe 2 bands or something like that [04:12] <Company> you'll use properties [04:12] <jimmy_dean> Company: ok, something like band1, band2, etc? [04:12] <Company> probably [04:12] <jimmy_dean> or probably channel1, channel2 [04:12] <Company> maybe name it after the frequencies, whatever [04:13] <jimmy_dean> ok [04:13] <jimmy_dean> what's that one line you were going to type? [04:13] <jimmy_dean> for the chain function [04:13] <Company> you should get this thing compiled before you start doing anything else [04:13] <Company> ah, that's actually 2 lines :) [04:14] <Company> GstEqualizer *equalizer = GST_EQUALIZER (gst_pad_get_parent (pad)); [04:14] <Company> gst_pad_push (equalizer->srcpad, in); [04:14] <Company> this just passes the buffer on [04:14] alley_cat ([email protected]) left irc: "May the Source be with you!" [04:14] <jimmy_dean> so is it like the passthrough plugin then? [04:15] <Company> yeah [04:15] <Company> after that you should compile it and test that it works [04:15] <jimmy_dean> do I want to keep the lines in that function from the template for now? [04:15] <Company> dunno [04:15] Action: Company generates a template [04:15] <jimmy_dean> it has lines like: filter = GST_EQUALIZER (GST_OBJECT_PARENT (pad)); [04:16] <jimmy_dean> ahh, similar to what you typed [04:16] <Company> yeah that's basically the same line as my first line [04:17] <jimmy_dean> yeah, the template is a passthrough right now [04:17] <jimmy_dean> I can see it now [04:17] <Company> ok [04:17] <Company> so you should now compile it, install it, run gst-register-0.7 to register it and then use it [04:17] <jimmy_dean> I modified the Makefile.am, so I should just have to do the autogen.sh and make then to compile, right? [04:18] <Company> right [04:18] <jimmy_dean> Company: do I do that in the src directory or the one above? [04:18] <jimmy_dean> Company: as defined by the template [04:19] <Company> what? [04:19] <jimmy_dean> Company: make install [04:19] <Company> it's ok if you do it in the directory of the equalizer [04:20] ChrisHJW ([email protected]) left irc: Read error: 54 (Connection reset by peer) [04:22] thaytan ([email protected]) joined #gstreamer. [04:22] <jimmy_dean> Company: why is it complaining about this line and the one after it in the src/Makefile.am file? "src/Makefile.am:8: invalid unused variable name: `libgstplugin_la_SOURCES'" [04:23] <Company> probably because your plugin is named libgstequalizer.la and not libgstplugin.la [04:24] <jimmy_dean> no difference: src/Makefile.am:8: invalid unused variable name: `libgstequalizer_la_SOURCES' [04:24] <jimmy_dean> fixed it [04:25] <jimmy_dean> actually it's an inconsistency I'd say in the template Makefile.am file [04:30] Miko5881 ([email protected]) joined #gstreamer. [04:30] <jimmy_dean> Company: does the template compile perfectly as is before you modify it? [04:34] <Company> it should [04:34] <jimmy_dean> Company: also, the template doesn't seem to assign something yet to the sink and src factory yet, do I want to follow the volume plugin like this? [04:34] <jimmy_dean> static GstStaticPadTemplate volume_sink_factory = [04:35] <Company> yeah, you want to follow the volume plugin there [04:39] <Company> opt totally breaks synchronization [04:39] <Company> because it cashes buffers too heavily [04:42] <jimmy_dean> Company: the sink and src factories have a parse error that is baffling me [04:42] <jimmy_dean> Company: yet it's identical to volume in every way that it should be [04:43] <Company> jimmy_dean: what does it say? [04:43] <jimmy_dean> gstequalizer.c:54: parse error before '{' token [04:43] <jimmy_dean> gstequalizer.c:70: parse error before '{' token [04:43] <jimmy_dean> Company: those are the two ')' lines for sink and src respectively [04:44] <Company> could you paste line 55-70 in a query please? [04:44] <jimmy_dean> sure [04:44] <jimmy_dean> GST_PAD_EQUALIZER_FACTORY (gst_equalizer_src_factory, [04:44] <jimmy_dean> "src", [04:44] <jimmy_dean> GST_PAD_SRC, [04:44] <jimmy_dean> GST_PAD_ALWAYS, [04:44] <jimmy_dean> GST_STATIC_CAPS ( [04:44] <jimmy_dean> "audio/x-raw-int, " [04:44] <jimmy_dean> "channels = (int) [ 1, 2 ], " [04:44] <jimmy_dean> "rate = (int) [ 1, 44100 ], " [04:45] <jimmy_dean> "endianness = (int) BYTE_ORDER, " [04:45] <jimmy_dean> "width = (int) 16, " [04:45] <jimmy_dean> "depth = (int) 16, " [04:45] <jimmy_dean> "signed = (bool) TRUE" [04:45] <jimmy_dean> ) [04:45] <jimmy_dean> ); [04:46] <Company> GST_STATIC_PAD_TEMPLATE ( [04:46] <Company> instead of the GST_PAD_EQUALIZER_FACTORY ( line [04:46] <jimmy_dean> ok [04:46] <Company> you do use cvs head, do you? [04:46] <jimmy_dean> yeah, just updated today [04:46] <jimmy_dean> anoncvs though obviously [04:47] <Company> yeah [04:49] <jimmy_dean> Company: this line no longer works in gst_equalizer_init when we changed the FACTORY definition [04:49] <jimmy_dean> filter->sinkpad = gst_pad_new_from_template (gst_equalizer_sink_factory (), [04:49] <jimmy_dean> "sink"); [04:50] <Company> filter->sinkpad = gst_pad_new_from_template (&gst_equalizer_sink_factory, [04:50] <Company> that is a bit out of date [04:50] Action: Company looks at ds-work [04:50] <jimmy_dean> hmm, what's up with my template? [04:50] <Company> we changed that part recently [04:51] <Company> but obviously didn't update the template you use [04:51] <jimmy_dean> ok [04:51] <ds-work> gst-template/gst-plugin? [04:51] <ds-work> yep, very out of date [04:52] <Company> not as bad as our status page on the website ;) [04:52] <jimmy_dean> hehe [04:52] <ds-work> thomasvs should add gst-template to the autobuild [04:53] <ds-work> although that doesn't really change much [04:53] <jimmy_dean> Company: what about this warning then (there's 4 others like it): gstequalizer.c: In function `gst_equalizer_init': [04:53] <jimmy_dean> gstequalizer.c:194: warning: passing arg 1 of `gst_pad_new_from_template' from incompatible pointer type [04:54] <Company> filter->sinkpad = gst_pad_new_from_template ( [04:54] <Company> gst_static_pad_template_get (&volume_sink_factory), "sink"); [04:54] <Company> that's the definition from volume [04:54] <Company> you're probably missing the gst_static_pad_template_get [04:55] <jimmy_dean> yep, I was [05:01] <jimmy_dean> Company: why am I getting an incompatible pointer type on this? gst_pad_set_link_function (filter->sinkpad, gst_equalizer_link); [05:01] <jimmy_dean> Company: I agree with volume there [05:02] <Company> does the linkfunction have the same prototype as in the volume case? [05:02] <Company> gst_equalizer_link ?? [05:03] <jimmy_dean> ahh, no volume has a const GstCaps *caps [05:03] <jimmy_dean> 2nd argument [05:05] <jimmy_dean> I made mine const [05:07] <jimmy_dean> Company: ok, one more compiler error (well they all stem from the same thing): gstequalizer.c:296: `GST_LICENSE' undeclared here (not in a function) [05:07] <jimmy_dean> Company: I've seen this error before while compiling rhythmbox [05:08] <Company> those are defines in gst-plugins config.h [05:08] <jimmy_dean> Company: so what's the solution to that then? [05:09] <Company> if you compile inside the gst-plugins package, just #include "config.h" [05:09] <Company> otherwise look up those values in gst-plugins' config.h and copy the actual strings [05:10] <jimmy_dean> Company: ok, hardcoding them should be temporary only though, correct [05:13] <jimmy_dean> Company: ok, my plugin is registered [05:14] <Company> try gst-inspect-0.7 equalizer [05:14] <Company> that should show you a bunch of info about your plugin [05:14] <jimmy_dean> yep, cool [05:14] <jimmy_dean> what does the 1 feature mean? [05:17] <ds-work> you only have one element in the plugin [05:17] <jimmy_dean> ok [05:17] <Company> how did you call that btw? [05:18] <Company> in the plugin_init function at the bottom [05:18] <jimmy_dean> Company: return gst_element_register (plugin, "plugin", [05:18] <jimmy_dean> GST_RANK_NONE, [05:18] <jimmy_dean> GST_TYPE_EQUALIZER); [05:19] <Company> you want to give that plugin another name as "plugin" [05:19] <Company> "equalizer" probably :) [05:20] <jimmy_dean> ok, cool [05:20] <jimmy_dean> Company: so my next step is to get a small test program to use the plugin? [05:21] <Company> jimmy_dean: gst-launch-0.7 sinesrc ! equalizer ! osssink should already do that [05:21] <Company> (after you rename it obviously) [05:21] <jimmy_dean> ok, gst-launch-0.7: relocation error: /usr/local/lib/gstreamer-0.7/libgstequalizer.so: undefined symbol: GST_CAPS_IS_FIXED [05:22] <Company> easiest solution: delete the link function [05:22] <Company> and the _set_link_function in the _init [05:22] <jimmy_dean> Company: what does it do? [05:23] <Company> you don't need it until you actually support different formats [05:23] <jimmy_dean> ok [05:25] <jimmy_dean> it makes noise :) [05:26] <jimmy_dean> that's really cool how you can specify elements on the command line like that [05:29] <jimmy_dean> Company: the next step is to try and implement basic functionality in the chain function now? [05:29] <Company> yeah [05:30] <jimmy_dean> Company: ok, is it hard dealing with GStreamer/Glib data types and external ones like in the FFTW library? [05:32] <Company> not at all [05:32] <jimmy_dean> Company: so a gint is similar to a normal int? [05:32] <Company> a gint is a normal int [05:32] <jimmy_dean> Company: I've never really used glib before [05:32] <jimmy_dean> ok [05:32] <Company> a guint is an unsigned int [05:33] <dilinger> yea, most of the glib types are straight typedefs to their ansi counterparts; they're done just for consistency [05:33] <jimmy_dean> Company: ok, there must be some good tutorials for glib on just this issue [05:33] <Company> g(u)int{8,16,32,64} are with defined sizes [05:33] <walters> argh. [05:33] <Company> probably, but i'm not in the need of tutorials, so no idea :) [05:34] Action: Company just opens /usr/include/glib-2.0/... [05:34] <dilinger> jimmy_dean: i always found the api docs really useful [05:34] <Company> walters: huh? [05:35] <Company> ah right, the API docs [05:35] <jimmy_dean> dilinger: ok, cool [05:35] <walters> Company: adding error checking to rb playback [05:35] <Company> developer.gnome.org/doc/API/2.2/glib [05:37] <jimmy_dean> Company: ok, what type of format is the GstBuffer? [05:37] <jimmy_dean> Company: is it an array? [05:37] <Company> jimmy_dean: it's a custom struct [05:38] <jimmy_dean> Company: ahh ok, is it's definition in the API documentation on gstreamer's site? [05:38] <Company> jimmy_dean: you wanna use GST_BUFFER_DATA (buffer) and GST_BUFFER_SIZE (buffer) most likely [05:39] <jimmy_dean> Company: also when using gst_launch, what are my options for input types? [05:39] <jimmy_dean> Company: is there something that varies frequency continuously? [05:40] <walters> ds-work: rb checks gst_element_set_state returns now. [05:41] <Company> jimmy_dean: nope [05:41] <Company> jimmy_dean: i dont think we have something like that [05:41] Action: Company goes to bed now [05:41] <jimmy_dean> Company: hmm, how should I test the equalizer functionality then? [05:41] <walters> oh Company [05:41] <walters> Company: 2 seconds :) [05:42] <Company> jimmy_dean: use a real sound file [05:42] <walters> Company: i tracked down the bug in tag writing... [05:42] <jimmy_dean> Company: ahh, ok [05:42] <walters> Company: basically the gstid3tag.c mode never gets set to _WRITE [05:42] <Company> gst-launch filesrc location=file.mp3 ! mad ! audioconvert ! equalizer ! osssink [05:42] <jimmy_dean> Company: so I specify a path to a file instead of the sinesrc? [05:42] <jimmy_dean> ok, sweet [05:42] <jimmy_dean> thanks, I'm off to bed too [05:43] <Company> walters: even when using filtered caps with application/x-id3? [05:43] <walters> Company: yeah [05:43] <walters> Company: well [05:44] <walters> Company: actually i tried to filter the caps, but then capsnego fails [05:44] <walters> --- retag.c.~1.1.~ 2003-12-22 16:53:58.000000000 -0500 [05:44] <walters> +++ retag.c 2004-01-15 01:12:46.000000000 -0500 [05:44] <walters> @@ -83,7 +83,8 @@ [05:44] <walters> gst_bin_add_many (GST_BIN (bin), filesrc, tag_changer, filesink, NULL); [05:44] <walters> [05:44] <walters> /* link the elements */ [05:44] <walters> - gst_element_link_many (filesrc, tag_changer, filesink, NULL); [05:44] <walters> + g_assert (gst_element_link_filtered (filesrc, tag_changer, gst_caps_new_simple ("application/x-id3", NULL))); [05:44] <walters> + g_assert (gst_element_link (tag_changer, filesink)); [05:44] <walters> [05:44] <walters> /* start playing */ [05:44] <walters> gst_element_set_state (bin, GST_STATE_PLAYING); [05:44] <walters> the second assert bombs out. [05:45] <jimmy_dean> wow, that sounds aweful :) [05:46] <Company> walters: but commancdline should work? [05:46] <walters> Company: i don't know how to set tags from gst-launch... [05:47] <jimmy_dean> Company: thanks for your help...you've been extremely helpful [05:47] <Company> np [05:47] <jimmy_dean> Company: hopefully this equalizer turns out good, I'm not giving up on it :) [05:47] <Company> walters: you can use transcoding and see if it correctly transcodes [05:49] <Company> gst-launch-0.7 -t /mnt/windows/Stuff/Mp3/Heather\ Nova\ -\ London\ Rain.mp3 ! id3tag ! application/x-id3 ! gnomevfssink location=/bla.mp3 [05:49] <Company> (filesink is broken) [05:51] <walters> Company: transcode does indeed work. [05:51] <walters> Company: hmm. [05:51] Miko5881 ([email protected]) left irc: "ChatZilla 0.8.31 [Mozilla rv:1.4/20030928]" [05:52] <Company> hm, filesink isn't broken? [05:52] Action: Company is confused [05:53] <Company> s'oh [05:53] <Company> walters: you need toset the filtered caps on the sink [05:54] <walters> Company: oh, right. [06:05] <taaz> Company: by the way, what was that response to my mail with the irc commands? [06:07] <Company> taaz: [06:07] <Company> <Company> quote Company [06:07] <Company> <Rupert> "* Company is officially stupid" --Company, 14-jan-04 [06:09] <taaz> uh... ok. ;) [06:11] <ds-work> I love object oriented programming [06:11] <ds-work> I added a print feature to a plotting program in about 1 hour [06:11] <ds-work> most of it was getting the GUI right [06:16] <taaz> do you love GObject programming too? ;) [06:17] <ds-work> for the most part. GObject is really powerful [06:19] <taaz> but... seeing stuff like that template stuff you recently committed, it's not easy to use. at least compared to GOB, Python, Java, etc etc [06:20] <taaz> at least imho [06:20] ChriHJW_log ([email protected]) joined #gstreamer. [06:25] thaytan ([email protected]) left irc: Read error: 110 (Connection timed out) [06:26] thaytan ([email protected]) joined #gstreamer. [06:34] ChrisHJW_log ([email protected]) left irc: Read error: 110 (Connection timed out) [06:49] <ds> wow. I don't have any pending GStreamer projects [06:49] Action: ds wonders what to do [06:50] <thaytan> figure out how to send nav events upstream? [06:52] <ds> did that in august [06:55] <taaz> write docs [06:55] <ds> yeah, that would be best [06:55] <ds> or work on an autoplugger [06:56] <taaz> along with examples showing how to use all the fancy features [06:56] <taaz> or work on more test code to avoid regressions [06:56] <taaz> maybe none of this is fun ;) [06:57] <ds> I should write docs at home, because all my computers are slow [06:57] <ds> thus no compilig [06:58] <thaytan> you could explain to me how to have nav events going upstream that don't cause terrible stuttering of the playback then [06:58] harshy ([email protected]) left irc: Remote closed the connection [06:58] <thaytan> or at least share any ideas [06:58] <taaz> heh... docbook is as hard to compile as c ;) [06:59] <ds> thaytan: first of all, what are you doing in the event handler in the source event? [06:59] <ds> hopefuly as little as possible [06:59] <ds> like, say, a memcpy [07:01] <thaytan> you mean the event handler in dvdnavsrc? [07:01] <thaytan> no, it's handling the event... [07:01] <ds> don't [07:02] <ds> just copy the event, and handle it later [07:03] <thaytan> is there actually a need to copy it - I could just delay unreffing it [07:03] <ds> that works, too [07:03] <thaytan> that'd be better, because it's a nav event, with a full gst-structure to copy [07:03] <ds> GstStructures are cheap to copy [07:04] <ds> two memcpys [07:04] <taaz> ds: you could give a52dec some love if you have time. [07:04] <thaytan> ds: I didn't realise they were so cheap [07:05] <ds> well, it's a bit more expensive than that. but not much [07:06] <thaytan> taaz: what are you thinking of? [07:06] <ds> I had grand visions for caps, which relied on caps being really fast [07:06] <ds> which has mostly happened [07:07] <walters> request_new_pad = 0x40359430 <gst_id3_tag_change_state>, [07:07] <walters> unf. [07:07] <thaytan> ds: yeah, I'm generall very impressed with new caps [07:07] <taaz> thaytan: right now? how i'm doomed because i have work due tomorrow. [07:07] <taaz> thaytan: but you mean about a52dec ;) [07:07] <thaytan> heh [07:07] <walters> looks like someone broke binary compat. [07:08] <thaytan> a52dec is working okay here [07:08] <thaytan> not that I've pushed it at all [07:08] <taaz> thaytan: yeah but last time i looked it was scary code. not sure it does events and stuff properly. was written long ago. [07:09] <thaytan> I'm reworking mpeg2subt at the moment [07:09] <thaytan> almost got that into shape for DVD menus and subtitles [07:09] <taaz> nice ;) [07:09] <taaz> what are you going to use to composite subtitles onto the video? [07:09] <thaytan> mpeg2subt does it for DVD.. [07:10] <thaytan> because in DVD, subtitles are a graphic [07:11] <thaytan> and it's much cheaper to write them onto the video as they're RLE decoded than to alloc a buffer for another element to composite [07:12] <taaz> i thought it was harder than that [07:12] <taaz> like you get the subpic and have to store it around and composite onto a number of frames [07:13] <thaytan> mpeg2subt knows the duration of each subtitle, and uses frame timestamps to decide whether it should composite or not [07:14] <thaytan> modulo some complication from deciding which menu button is currently active [07:16] <taaz> a minor issue that is actually quite complex ;) [07:17] <taaz> well, not really [07:17] <ds> custom events [07:17] <ds> perhaps [07:17] <taaz> easier, but less accurate, at the app level [07:18] <taaz> ie, have signals from dvdnavsrc that mpeg2subt listens for [07:18] <taaz> but those are not pipeline synced [07:18] aca ([email protected]) joined #gstreamer. [07:18] Action: taaz happy to see someone working on dvd support ;) [07:19] <thaytan> I'm sending a NAVIGATION event back down from DVDNAV [07:19] <thaytan> so yeah, custom events [07:19] <thaytan> in sync with the pipeline [07:19] <thaytan> and I'm using gst-launch as my testbed [07:21] <taaz> if you get bored, start spitting mpeg2 user_data off to vbidec in dvdmode [07:21] <taaz> and send output of vbidec to stdout [07:22] <aca> didi u KN OW THAT DAIARIY WAS STARTED ON BEBVIS ON BEVISS NAD BUTTEDEAD [07:22] <aca> WOUD L UIIKLER TO SEEWM YUHEADBCORONJOLHOLD [07:22] #gstreamer: mode change '+o ds' by ChanServ!ChanServ@services. [07:24] <aca> omh [07:24] <aca> i eatm y keyboar [07:24] <aca> d/ [07:30] <walters> hmm [07:30] <walters> automake is slow. [07:30] <walters> i wonder why it doesn't output most of the common stuff to a toplevel makefile [07:30] <walters> and then just have the subdirs include that [07:31] <ds> include is a GNU extension, iirc [07:31] <walters> ah [07:31] <walters> wow. posix make must really suck [07:32] <walters> which i guess we could have gathered from how many packages in freebsd depend on gnumake. [07:32] <ds> however, future versions of automake are apparently going to create one toplevel makefile that builds everything [07:32] <walters> that would rock [07:32] <walters> i heard the kde people were working on something like that [07:32] <walters> unsermake or something. [07:32] <ds> and lower level makefiles will just be "make -C ../../" [07:32] harshy ([email protected]) joined #gstreamer. [07:33] Action: ds considers eating more cheese [07:34] <taaz> at some point the tarball of gst-python was something like 70% auto* junk. mostly repeated Makefile.in/Makefile stuff [07:34] <ds> compresses well :) [07:35] <taaz> uncompresses poorly [07:36] <aca> dude [07:36] <aca> dp iu not love brian jophgnaspn [07:36] <aca> hje is a fuCKIGN QUEER [07:36] <aca> WTF [07:36] <aca> OPMKG BONSCOOT LONG LVIE FOREVER: ( [07:36] <walters> aca: ok, now you're annoying. [07:37] <aca> iom, ntalkimn acign about acdc [07:37] <aca> ac/dc [07:37] <aca> the rodfkl [07:37] <aca> rofl [07:37] <aca> wtf [07:37] #gstreamer: mode change '+b *!*@*.ne.client2.attbi.com' by [email protected] [07:37] aca kicked from #gstreamer by ds: ds [07:38] <walters> seemed more like a bot than a person actually [07:39] <ds> yeah, which is why I kicked first. and later I will ask questions [07:39] <taaz> i thought it was someone being funny at first since the first comments looked like the output of vbidec ;) [07:39] <ds> indeed [07:39] <walters> vbi? [07:39] <taaz> closed captioning stuff [07:39] <walters> oh he [07:39] <walters> h [07:39] <taaz> xds [07:39] <taaz> stufflike that [07:40] <walters> i bet actually it was someone playing with markov chains [07:40] <taaz> err. hmm. that code might still be gpl. i can't recall if the tvtime auther said it could be lgpl or not... [07:50] #gstreamer: mode change '-b *!*@*.ne.client2.attbi.com' by [email protected] [08:13] thaytan ([email protected]) left irc: "See y'all" [08:20] somex1 ([email protected]) left irc: "Download Gaim: http://gaim.sourceforge.net/" [09:01] kmaraas ([email protected]) joined #gstreamer. [09:44] Uraeus ([email protected]) joined #gstreamer. [09:44] kmaraas ([email protected]) left irc: "Leaving" [09:45] swentel ([email protected]) joined #gstreamer. [09:46] jdahlin ([email protected]) left irc: Read error: 104 (Connection reset by peer) [09:46] <Uraeus> morning [09:47] jdahlin ([email protected]) joined #gstreamer. [09:47] <ds> hey [09:47] Action: Uraeus is sick :( [09:48] <ds> so I hear [09:48] <ds> perfect for writing documentation :) [09:48] Nick change: mathrick|sleep -> mathrick [09:48] <mathrick> g'mornin [09:48] <mathrick> yo Uraeus :) [09:50] <Uraeus> ds: any chance you could look at this error: gstcacasink.c: In function `gst_cacasink_chain':gstcacasink.c:338: error: structure has no member named `clock'make[2]: *** [libgstcacasink_la-gstcacasink.lo] Error 1 [09:50] <Uraeus> ds: is it stopping my from compiling the plugins [09:50] <ds> change it to 'id' [09:50] <Uraeus> s/chain/id/ ? [09:50] <ds> clock [09:51] <Uraeus> ok, thanks [09:58] <mathrick> Uraeus: q: do you speak bokmal or nynorsk? [09:58] <Uraeus> mathrick: mainly bokmål [09:58] <mathrick> Uraeus: are they completely different? or just dialects? [09:59] <Uraeus> mathrick: dialects, in fact no one really speaks nynorsk, it is a written language which tries to accomodate many of the spoken dialects in western norway [10:00] <Uraeus> mathrick: bokmål is used by around 80% of the population and has a stronger danish ancestry [10:01] <mathrick> Uraeus: ic [10:01] <mathrick> Uraeus: so nynorsk is some kind of fit-them-all language? [10:02] <Uraeus> mathrick: personally I feel that nynorsk is redundant [10:02] <Uraeus> mathrick: kinda, nynorks has very very many allowed forms of every common word [10:03] <mathrick> Uraeus: heh. was it created artifically? [10:04] teuf ([email protected]) joined #gstreamer. [10:04] <teuf> hi [10:04] <mathrick> hi teuf [10:05] <teuf> Uraeus: your gstreamer article made it to the biggest french linux site ;) [10:05] <Uraeus> mathrick: nynorsk was created by an author who wanted norway to have a written language based upon the spoken traditions in western norway (which hadn't been so strongly influenced by danish) about 100 years ago, the idea was that it should be closer to historic norwegian, but it isn't in my opinion, since even in western norway they are far removed from that (and icelandic) [10:05] <Uraeus> teuf: cool :) so someone translated it? [10:05] <ds> Uraeus: btw, if a nick 'aca' shows up, kickban it. It's an annoying bot [10:05] <Uraeus> ok [10:05] <teuf> Uraeus: nope, it's a news site, so there's only a link to it and a brief summary of it [10:06] <teuf> Uraeus: http://linuxfr.org/2004/01/15/15104.html if you care ;) [10:08] <Uraeus> hmm, and once again my name is mentioned :) [10:11] <Uraeus> teuf: any interesting comments on the french site? [10:11] <teuf> Uraeus: nope, the main thread is started by some guy saying that you are exagerating when you say "we innovated" [10:12] <teuf> and people then argue about that [10:12] KoRnouille ([email protected]) joined #gstreamer. [10:12] <Uraeus> teuf: I noticed people commenting on that at Slashdot too, I wasn't aware we where so similar to DirectShow, but maybe that is something which has changed since the project conception [10:13] <Uraeus> or maybe the people who say we are don't really know GStreamer and just assumed stuff from the aricle :) [10:13] <teuf> for my part I have absolutely no idea what directshow looks like ;) [10:14] <ds> mmm... new autoplugging hacking in sandbox [10:15] <Uraeus> ds: you know directshow? are we very similar? [10:15] <mathrick> Uraeus, teuf: maybe it's because DS includes graph editor too ;) [10:16] <ds> no clue [10:16] <Uraeus> mathrick: could be, people at Slashdot at least tends to make very big declarations based on skin deep similarities, could be the case this time too :) [10:16] <ds> I imagine that *nobody* does anything like caps or spider [10:17] <mathrick> ds: DS (no pun intended ;) at least has auto{plugging,connecting}, but AFAIK it hasn't spider indeed [10:18] <mathrick> ds: and what could be used instead of caps? [10:18] <ds> mathrick: just a simple structure that defines the video format [10:19] walters ([email protected]) left irc: "out" [10:20] <mathrick> ds: I can't really imagine that - AFAIK caps is just advertising what elem can handle, and what it can produce. I cannot think of any other way to do it :) [10:22] <Uraeus> mathrick: maybe you could investigate DirectShow some and send a writeup to the list, maybe there is stuff we should learn from it [10:23] <ds> you say "I handle video formats I420 and IYUV" [10:23] <ds> that's a _long_ way from caps [10:23] <mathrick> Uraeus: heh, I'm glad I moved off from Windoze, don't really feel like going back ;) Bu i think I may grep MSDN sometime [10:24] <mathrick> ds: can you explain the difference? It may be caps are more I think they are [10:24] <Uraeus> you guys seen linuxaudio.org? I was thinking we might want to join [10:25] <teuf> isn't there a wine dude hanging in there from time to time ? he may know stuff about directshow [10:25] <Uraeus> yes, TD [10:29] <mathrick> oops, gtg, talk to you later :) [10:30] Nick change: mathrick -> mathrick|Uni [10:31] <teuf> uni is so overrrated, #gstreamer is so much more interesting ;) [10:37] dolphy ([email protected]) joined #gstreamer. [10:37] <Uraeus> bon jour dolphy [10:39] <dolphy> yo [10:39] <dolphy> Uraeus: i love the logo :) [10:39] <Uraeus> dolphy: great :) [10:39] <dolphy> Uraeus: i guess it s still not polished yet [10:54] BBB ([email protected]) joined #gstreamer. [10:54] <BBB> goodmoooooooooorning [10:54] <Uraeus> morning BBB [10:54] Action: BBB is working on profile XML loading/saving and on small MPEG stream issues [10:55] <BBB> and I still need to fix DVD audio, I presume? [10:55] <BBB> I'll work on that too... [10:55] <Uraeus> yup :) [10:55] Action: BBB has no DVD here [10:55] <Uraeus> wouldn't any vob file give the same result? [10:56] <BBB> nah... [10:56] <BBB> I'll workm on it at home [10:59] ack ([email protected]) joined #gstreamer. [10:59] Nick change: ack -> sack [10:59] <Uraeus> hi sack [10:59] <sack> hi Uraeus :-P [10:59] <BBB> it doesn't select the right pad... [10:59] <BBB> ../../../../gstreamer/tools/gst-launch filesrc location=/media/clips/Muse\ \(live\@HMH\)\ -\ New\ Born.mpg ! mpegdemux .audio_00 ! mad ! osssink -> works [10:59] <BBB> ../../../../gstreamer/tools/gst-launch filesrc location=/media/clips/Muse\ \(live\@HMH\)\ -\ New\ Born.mpg ! mpegdemux ! mad ! osssink -> doesn't work [11:02] <Company> ds-work: did you commit that autoplug stuff to sourceforge cvs? [11:03] <Uraeus> s/ds-work/ds/ [11:04] <BBB> well noticed ;) [11:12] wheels ([email protected]) left irc: "using sirc version 2.211+KSIRC/1.3.9" [11:12] jaitly ([email protected]) joined #gstreamer. [11:14] dolphy ([email protected]) left irc: "Network down, IP Packets delivered via UPS" [11:17] dolphy ([email protected]) joined #gstreamer. [11:20] KoRnouille ([email protected]) left irc: "Leaving" [11:29] rk ([email protected]) joined #gstreamer. [11:29] <rk> hi [11:30] Company ([email protected]) left irc: Remote closed the connection [11:40] _gst_newt_ joined #gstreamer. [11:40] <Uraeus> morning rk [11:49] Nick change: harshy -> harshyZ [11:50] <Uraeus> night harshyZ [11:51] <harshyZ> night Uraeus [11:52] ds-work ([email protected]) joined #gstreamer. [11:53] <Uraeus> hi ds-work [11:53] jaitly ([email protected]) joined #gstreamer. [11:57] mathrick|Uni ([email protected]) joined #gstreamer. [11:59] sublett ([email protected]) joined #gstreamer. [12:03] <BBB> Uraeus: when thomas comes in... I want to add a new task [12:03] <BBB> to the tasklist on gstreamer.net/tasks/ [12:04] <BBB> Uraeus: everything ffmpeg related [12:04] <Uraeus> BBB: I can do that, most of the tasks there I made [12:05] <Uraeus> BBB: but I need some more details on what the task should say [12:05] <BBB> we'll want someone familiar with ffmpeg, good at hacking low-level code and willing to do a lot of broad-range media file testing to get the job done [12:05] <BBB> the task should say: improve ffmpeg integration in gstreamer [12:05] Action: Uraeus thinks that is way to generic [12:06] <BBB> details: get ffmpeg codecs (and, later on, even formats) wrapped, fix bugs relating to this and - in this way - get gstreamer to play back specific media formats [12:06] <BBB> examples: wma, wmv, vp3, svq3 (extradata), etc. [12:07] <Uraeus> ok, but I will try to add one task per format or something, think the tasks needs to have a clear scope and achiveable [12:07] <BBB> the issue is that new formats are added to ffmpeg every week or month or so [12:07] <BBB> we need a maintainer for that... [12:07] <BBB> or so [12:08] <Uraeus> yes, but I don't think the tasklist is actually a good forum for that, I think instead we should have smaller tasks in the tasklist for people starting out [12:08] <Uraeus> getting such a maintainer could be done by asking apoc to take on the task for instance [12:11] iain ([email protected]) joined #gstreamer. [12:12] <BBB> hm... [12:12] <BBB> or iain [12:12] <BBB> :p [12:12] <iain> oh oh [12:12] <iain> what now? [12:12] <BBB> we just decided that you will maintain the ffmpeg plugin in gst-plugins [12:13] <iain> kick ass [12:13] <dolphy> BBB: is wrapping ffmpeg that hard ? [12:13] <iain> maintain means I do nothing doesnt it? [12:13] <BBB> dolphy: in my experience, yes [12:13] <BBB> iain: :D [12:13] <BBB> dolphy: I can do parts... but I'm affraid that during the time that I'm in the US, I won't be able to maintain it well enough [12:13] <dolphy> BBB: no way to make it more simple then ? [12:14] <BBB> no [12:14] <BBB> if we only use ffmpeg, it's simple [12:14] <iain> hmm, melt banana is not revision music then [12:14] <BBB> because ffmpeg buts all sort of ranodm data in its AVCodecContext [12:14] <BBB> and the codecs require that info [12:14] <BBB> but it's not that simple [12:15] <BBB> (basically, ffmpeg is one big ugly gruesome hack, but a very good one, and opensource) [12:21] <dolphy> lol [12:23] matrixise ([email protected]) joined #gstreamer. [12:27] Shoragan ([email protected]) joined #gstreamer. [12:29] BrandonJ ([email protected]) joined #gstreamer. [12:32] Company ([email protected]) joined #gstreamer. [12:35] gheet ([email protected]) joined #gstreamer. [12:58] Rotty ([email protected]) joined #gstreamer. [13:05] alley_cat ([email protected]) joined #gstreamer. [13:06] thread ([email protected]) got netsplit. [13:06] desrt ([email protected]) got netsplit. [13:06] ds ([email protected]) got netsplit. [13:06] ds_ ([email protected]) joined #gstreamer. [13:06] desrt ([email protected]) returned to #gstreamer. [13:07] thread ([email protected]) returned to #gstreamer. [13:12] ds ([email protected]) got lost in the net-split. [13:18] Uraeus ([email protected]) got netsplit. [13:18] _246tNt_ ([email protected]) got netsplit. [13:18] Shoragan ([email protected]) got netsplit. [13:18] gheet ([email protected]) got netsplit. [13:18] danb ([email protected]) got netsplit. [13:18] sack ([email protected]) got netsplit. [13:18] md` ([email protected]) got netsplit. [13:18] NFusi0n ([email protected]) got netsplit. [13:18] xcomp ([email protected]) got netsplit. [13:18] sjoerd ([email protected]) got netsplit. [13:18] desrt ([email protected]) got netsplit. [13:18] alley_cat ([email protected]) got netsplit. [13:18] BrandonJ ([email protected]) got netsplit. [13:18] swentel ([email protected]) got netsplit. [13:18] sub_pop ([email protected]) got netsplit. [13:18] mxpxpod ([email protected]) got netsplit. [13:18] dilinger ([email protected]) got netsplit. [13:18] taaz ([email protected]) got netsplit. [13:18] Rotty ([email protected]) got netsplit. [13:18] lilo ([email protected]) got netsplit. [13:18] BBB ([email protected]) got netsplit. [13:18] Jara[zZ] ([email protected]) got netsplit. [13:18] dennis_ ([email protected]) got netsplit. [13:18] sublett ([email protected]) got netsplit. [13:18] sxpert_work ([email protected]) got netsplit. [13:18] sxpert ([email protected]) got netsplit. [13:18] _246tNt_ ([email protected]) returned to #gstreamer. [13:18] Uraeus ([email protected]) returned to #gstreamer. [13:18] Rotty ([email protected]) returned to #gstreamer. [13:18] sublett ([email protected]) returned to #gstreamer. [13:18] BBB ([email protected]) returned to #gstreamer. [13:18] sxpert_work ([email protected]) returned to #gstreamer. [13:18] Jara[zZ] ([email protected]) returned to #gstreamer. [13:18] dennis_ ([email protected]) returned to #gstreamer. [13:18] sxpert ([email protected]) returned to #gstreamer. [13:18] lilo ([email protected]) returned to #gstreamer. [13:18] <dolphy> wb splitters [13:19] desrt ([email protected]) returned to #gstreamer. [13:19] alley_cat ([email protected]) returned to #gstreamer. [13:19] BrandonJ ([email protected]) returned to #gstreamer. [13:19] swentel ([email protected]) returned to #gstreamer. [13:19] sub_pop ([email protected]) returned to #gstreamer. [13:19] mxpxpod ([email protected]) returned to #gstreamer. [13:19] sjoerd ([email protected]) returned to #gstreamer. [13:19] dilinger ([email protected]) returned to #gstreamer. [13:19] taaz ([email protected]) returned to #gstreamer. [13:19] gheet ([email protected]) returned to #gstreamer. [13:19] Shoragan ([email protected]) returned to #gstreamer. [13:19] danb ([email protected]) returned to #gstreamer. [13:19] sack ([email protected]) returned to #gstreamer. [13:19] xcomp ([email protected]) returned to #gstreamer. [13:19] md` ([email protected]) returned to #gstreamer. [13:19] NFusi0n ([email protected]) returned to #gstreamer. [13:20] Uraeus ([email protected]) got netsplit. [13:20] _246tNt_ ([email protected]) got netsplit. [13:20] Uraeus ([email protected]) returned to #gstreamer. [13:20] _246tNt_ ([email protected]) returned to #gstreamer. [13:33] aca ([email protected]) joined #gstreamer. [13:37] Shoragan ([email protected]) left irc: "Leaving" [13:59] Company ([email protected]) left irc: Remote closed the connection [14:05] ChrisHJW ([email protected]) joined #gstreamer. [14:23] LeRoutier ([email protected]) joined #gstreamer. [14:24] <LeRoutier> hi [14:24] <LeRoutier> glad to see that mjpegtools 1.6.1.93 is out. was a long wait [14:26] <LeRoutier> the only problem is that their Changelog and NEWS files are outdated (speak about v1.2) [14:28] <BBB> mjpegtools never used changelogs, really [14:28] <BBB> or, at least, they haven't for a very long time [14:28] <BBB> and NEWs, well... same [14:31] <LeRoutier> i see no announce on their website for this new release. i just went once more to their distrib dir to see if it was out and for one time was lucky [14:32] <BBB> #0 0x40031d90 in gst_caps_copy (caps=0x8336958) at gstcaps.c:231 [14:32] <BBB> #1 0x400492d9 in gst_pad_set_explicit_caps (pad=0x818dcec, caps=0x8336958) [14:32] <BBB> at gstpad.c:2197 [14:32] <BBB> #2 0x40811bdb in gst_ffmpegenc_connect (pad=0x818dc30, caps=0x8336948) [14:32] <BBB> at gstffmpegenc.c:371 [14:33] <BBB> for ds_ or ds-work [14:41] wingo ([email protected]) joined #gstreamer. [14:41] <wingo> hey hey hey [14:41] <Uraeus> hi wingo [14:42] <LeRoutier> hello wingo [14:42] <Uraeus> wingo: are you using the jack plugins with your application? [14:43] <wingo> Uraeus: not yet, no :/ [14:43] <BBB> hi andy :0 [14:43] <BBB> :) [14:43] <wingo> happy new year to all :) [14:43] <wingo> (on the gregorian calendar :) [14:44] <Uraeus> I follow the maya calendar and we are past doomsday so there will be no new years anymore [14:45] <Uraeus> or was that the aztech one [14:45] <wingo> well then, eat drink and be merry, cause we're already dead! [14:46] <Uraeus> wingo: so is life still good in the land of the eternal tan? [14:50] danb ([email protected]) left irc: Read error: 60 (Operation timed out) [14:50] <Uraeus> dolphy: where is thomas today? [14:53] BrandonJ ([email protected]) left irc: "Bye, Bye. The CLIENT is exiting" [14:53] <dolphy> Uraeus: amsterdam i guess [14:53] <Uraeus> ah, that concert thing of his [14:54] <dolphy> yup [14:54] <BBB> ++ WARN: [lt-gst-launch] Decoder buffer running low: boosting overshoot gain! [14:54] <BBB> hm...? [14:55] <dolphy> lol [14:55] <dolphy> hyperspace turbo mode engaged [14:56] <BBB> ha, this works nicelu [14:59] matrixise ([email protected]) left irc: "Leaving" [15:01] wingo_ ([email protected]) joined #gstreamer. [15:03] <Uraeus> wb wingo_ [15:11] wingo ([email protected]) left irc: Read error: 110 (Connection timed out) [15:14] Action: BBB starts some quilt exercise [15:25] jdahlin ([email protected]) left irc: "Klienten avslutas" [15:26] wingo_ ([email protected]) left irc: Read error: 110 (Connection timed out) [15:26] wingo__ ([email protected]) joined #gstreamer. [15:30] ChrisHJW ([email protected]) left irc: Read error: 110 (Connection timed out) [15:33] mxpxpod ([email protected]) left irc: "Guns kill people as much as spoons made Rosie O'Donnell fat.." [15:33] mathrick|Uni ([email protected]) left irc: Read error: 104 (Connection reset by peer) [15:35] tlg ([email protected]) joined #gstreamer. [15:42] <dolphy> BBB: how to pass integer property on gst-launch command line ? [15:42] <dolphy> element property=22 [15:42] <dolphy> ? [15:42] <dolphy> property="22" ? [15:42] <BBB> property=22 [15:42] <BBB> just as you'd expect [15:43] <dolphy> ok [15:43] <dolphy> thx [15:43] <BBB> np [15:49] mathrick ([email protected]) joined #gstreamer. [15:51] <mathrick> re [15:57] <BBB> hi [15:59] <iain> so, do people think I should sign the Marlin project up to linuxaudio.org? [16:02] <BBB> your choice... I'm not an audio guy so have no clue what it means [16:02] Action: BBB just started using quilt [16:02] Action: BBB has two patches in quilt now! [16:08] <LeRoutier> [16:08] <LeRoutier> bbl [16:08] LeRoutier ([email protected]) left irc: "Leaving" [16:10] <iain> hmm, I think I'll wait until Marlin is a bit more usable before joining [16:12] <mathrick> ds-work, ds_: ping? [16:13] teuf ([email protected]) joined #gstreamer. [16:14] <mathrick> hi teuf [16:14] <teuf> hi [16:16] <wingo__> what's "the gstreamer.net situation"? [16:16] Nick change: wingo__ -> wingo [16:17] <BBB> I don't know exactly [16:17] <mathrick> teuf: yes, #gstreamer is more interesting, but Uni big guys tend to disregard it when deciding final marks ;) [16:18] <BBB> wingo: I think we don't really own the domain right now [16:18] <iain> hey wingo [16:22] <wingo> ak, gotta go! sorry for question and run ;) [16:22] wingo ([email protected]) left irc: Remote closed the connection [16:28] Action: mathrick notices aca is still among us. And is quiet even ;) [16:28] <BBB> qui est-il? [16:30] Company ([email protected]) joined #gstreamer. [16:30] <mathrick> BBB: annoying bot, Markov type one (if that's what you're asking about ;) [16:30] <iain> a hazelbot? [16:31] <teuf> what did he/it do ? [16:33] <mathrick> <aca> didi u KN OW THAT DAIARIY WAS STARTED ON BEBVIS ON BEVISS NAD BUTTEDEAD [16:33] <mathrick> <aca> WOUD L UIIKLER TO SEEWM YUHEADBCORONJOLHOLD [16:33] <dilinger> hrm, that's a crappy markov bot [16:33] <teuf> nice... [16:33] <dilinger> it could at least form proper words [16:34] <mathrick> yo Company, btw :) [16:34] <BBB> 'markov bot'? [16:34] <BBB> wtf is that? [16:34] <Company> it could at least alternate caps [16:34] <iain> yeah, that one sucks [16:34] <BBB> and wht is it in here? [16:34] <iain> hazelbot was far better [16:35] <Company> if you don'T want it kick it :o [16:35] #gstreamer: mode change '+o BBB' by ChanServ!ChanServ@services. [16:35] aca kicked from #gstreamer by BBB: bot? [16:35] #gstreamer: mode change '-o BBB' by [email protected] [16:35] aca ([email protected]) joined #gstreamer. [16:35] <BBB> hm... [16:35] <Company> ;) [16:36] #gstreamer: mode change '+o BBB' by ChanServ!ChanServ@services. [16:36] <mathrick> BBB: kickban dude ;) [16:36] #gstreamer: mode change '+b *!*omg@*.client2.attbi.com' by [email protected] [16:36] aca kicked from #gstreamer by BBB: bot? [16:36] #gstreamer: mode change '-o BBB' by [email protected] [16:36] <Company> they're all hackers in here, not 1337 enough [16:37] Action: Company likes opt [16:37] Action: BBB too [16:37] <Company> opt is evil from start to end [16:37] <BBB> saves me ten processes in ps -ax [16:37] <Company> ** (rhythmbox:5204): WARNING **: deadlock detected, disabling group 0x83f89d0 [16:37] Action: BBB thinks opt and spider were written by the same braintype [16:37] <Company> that's a src ! spider ! alsasink pipeline [16:38] <mathrick> BBB: Markov algo is the one used in Eliza, it forms sentences based on 'valid' word combinations, where valid is two words next to each other in training input [16:38] Action: Company claims innocence [16:38] <teuf> ok, so I'm trolling about gstreamer performance on linuxfr.org ;) [16:38] Action: BBB has XML reading working [16:38] <BBB> (untested) [16:38] Action: BBB now works on XML writing [16:38] <Company> i wrote spider when a) it was my first C stuff and b) autoplugger elements were thought impossible by the maintainers [16:39] <teuf> Company: some people said gstreamer sucked because the sound was very choppy on 2.4 kernels. I explained them that it's more a scheduler problem than anything else [16:39] <Company> and at least i'm ficing that now :p [16:39] <dolphy> teuf: yeah seen your post [16:40] <teuf> Company: and someone said that if gstreamer only sends 30ms worth of data to the soundcard, it can only blame itself and not the kernel for not being scheduled fasts enough [16:40] <Company> teuf: yeah, people fail to understand that even holy grails can suck ;) [16:40] <teuf> Company: do you have some compelling counter argument about that ;) [16:40] <teuf> dolphy: feel free to troll with me :) [16:40] <BBB> et puis c'est un peu prétencieux son *we inovated*, non ? je pense pas que apache ou gnu, dans leur globalité n'aient fait que du copier/coller... [16:40] <BBB> dans le concept de base (ils ont pas inventé le C) peut être (et encore, pas sur que tous les projets Open source ne le soient... ) mais dans la qualité de réalisation, dans la puissance du code, dans les performances... [16:40] <BBB> that's quite a troll [16:40] <alley_cat> tell them to use linux 2.6 and be done with it :) [16:40] <teuf> alley_cat: yep, I used the 2.6 argument already [16:40] <BBB> does that say our code quality sucks? [16:41] <teuf> BBB: nope [16:41] <teuf> if by "that" you are talking about what you pasted [16:41] <BBB> yes [16:41] <BBB> it basically says that we're not doing anything innovative [16:41] <Company> where is those mails? [16:42] <teuf> Company: http://linuxfr.org/2004/01/15/15104.html [16:42] <Company> omg [16:42] <Company> french [16:42] <Company> ok, i'll try :) [16:42] <teuf> BBB: yeah, but he says that because Uraeus said the project was really innovative in his article [16:42] Action: BBB can read french, sort of [16:42] <BBB> teuf: yeah, I saw... but still, it's quite a troll [16:43] <BBB> and what does code quality have to do with innovation? [16:43] <teuf> BBB: yeah, sure, but linuxfr is quite like /., except that it is in french [16:43] <dolphy> BBB: yeah uraeus fault here [16:43] <dolphy> BBB: he said that GStreamer did something nobody does "innovate" [16:43] <Uraeus> hey, we used to be innovative, but you guys are so slow to us to 1.0 that M$ was able to catch up :) [16:43] <dolphy> BBB: and people are trolling about that and DirectShow existence [16:43] <teuf> BBB: the guy doesn't talk about code quality [16:44] <BBB> [...] mais dans la qualité de réalisation, dans la puissance du code, dans les performances... [16:44] <BBB> ? [16:44] <Uraeus> s/to us/to get us/ [16:44] <Company> directshow doesn't have spider [16:44] <Company> and as ds said: directshow doesn't have caps [16:45] <mathrick> Company: ds said caps are also something unique about gst, what is more about caps than just adevrtising handled formats? [16:45] <teuf> BBB: hmm, I don't really get what this guy mean in this sentence [16:45] <teuf> BBB: it's lacking a verb [16:45] <Company> mathrick: the way it's done [16:45] <Company> mathrick: filtered connections, fixation functions, stuff like that [16:45] <mathrick> Company: and how is it done by others? [16:45] <Company> mathrick: and unlimited new formats [16:46] <Company> mathrick: no clue really, i don't care about substandard frameworks ;) [16:46] <mathrick> Company: I don't get that part about unlimited new formats [16:47] <Company> mathrick: imagine you want to support a new format [16:48] <Company> mathrick: in other frameworks you need to edit some file to add it and recompile, and gst you just write a plugin and use that [16:49] <Company> i like that "no other player has scheduling problems, so it must be gsts fault" [16:49] <mathrick> Company: AFAICT, that's how it's done in DS also, i.e. you install splitters [(de)muxers] and filters [codecs] [16:49] <Uraeus> mathrick: what about encoders? [16:49] <Uraeus> and muxers? [16:49] <mathrick> Uraeus: they fall into codecs ;) [16:49] <Company> mathrick: yeah, but now if you want another codec, don't you need to fix all the splitters? [16:50] <mathrick> Uraeus: and muxers are called whatever, I call them all splitters ;P [16:50] <iain> Ca can be seen like a hack rotted to circumvent a bug core [16:50] <iain> googles french to english rules [16:51] <mathrick> Company: I don't think so, splitters are just (de)muxers, AFAIK they don't care about streams contained [16:51] <BBB> mathrick: ds lets the demuxer select decoders [16:51] <mathrick> BBB: really? [16:51] <BBB> yes [16:51] <teuf> iain: proper translation would be more like "this can be considered as a sucky hack to workaround a kernel bug" if you didn't get it ;) [16:52] <Company> that's a bad choice for containers like ogg btw [16:52] <Company> ogg doesn't know what's inside it [16:52] <Company> gzip doesn't either [16:52] <mathrick> BBB: i got the impression it's independent... but really, if they use fourcc for anythig serious, they're doomed anyway ;) [16:52] <Company> is there a gzip decoder for direct show? [16:52] <BBB> mathrick: no... fourccs are demuxer IDs, not framework IDs [16:52] <BBB> mathrick: try playing back an ASF with mp3 in it, and then an AVI with mp3 in it [16:52] <BBB> (under WMP) [16:53] <BBB> the former doesn't work, the latter does [16:53] <BBB> that's impossible if framework selects codecs [16:53] <BBB> it's simply because the ASF demuxer doesn't know about mp3s existance [16:53] <BBB> and quicktime uses avi/asf-incompatible fourccs anyway [16:53] <iain> teuf: I figured it was something like that :) [16:53] <BBB> making things even worse [16:54] <Company> the only thing i want is support for adding fourcc/caps mappings from plugins [16:54] Action: BBB too [16:54] <mathrick> BBB: hmm, so DS is even worse I suspected ;) I know it worked better than anything on linux wrt. new formats back in days, so maybe that's why i got the false impression [16:55] <dolphy> i don't think directshow has gst-launch :) [16:55] <mathrick> dolphy: it has GraphEdit [16:55] <Company> does it preserve tags on transcoding? [16:56] <Company> (if not, i'd have innovated, woohoo) [16:56] <mathrick> dolphy: but it's really rather annoying to use if you don't know the exact graph you want to make, and autoplugging doesn't find it on first try [16:56] <mathrick> Company: no clue, I was DS user, not dev ;P [16:56] <mathrick> Company: in fact, I was DS using app user even :) [16:56] <Company> me too - media player 6.4 :o [16:56] <BBB> mathrick: I don't know how that worked... [16:57] <mathrick> BBB: what is that? [16:57] <BBB> mathrick: but the fact that (in the first versions of divx3) you had to overwrite existing codecs to get divx to work, I'm scary to say DS is ok [16:57] Action: BBB remembers the first divx3 dlls :X [16:57] <BBB> "install directshow bla bli, and then overwrite this file mpeg4v3.dll with our own version included with this divx" [16:58] <BBB> :X [16:58] <mathrick> BBB: probably, and the fact MS was able to block msmpeg4v3 for non-asf files, too [16:58] <BBB> dunno [16:58] <BBB> I never looked at that [16:58] <mathrick> BBB: it wouldn't have worked if framework decided on codecs used [17:01] lilo ([email protected]) got netsplit. [17:01] <Company> iain will soon have to make float2int work real way [17:01] <Company> iain will soon have to make float2int work really well [17:01] Action: Company shouldn't think about stuff other than what he's writing [17:01] Action: mathrick will overcome ph34r and look on DS MSDN someday ;) [17:01] <Company> vorbis only outputs float audio [17:01] <Company> so vorbisdec will only output float [17:01] <Company> in fact vorbisfile includes a float2int converter [17:01] lilo ([email protected]) returned to #gstreamer. [17:01] #gstreamer: mode change '+b *!*omg@*.client2.attbi.com' by kurland.freenode.net [17:01] <iain> Company: I think it works okay, but if there's problems I can sort them out [17:02] lilo ([email protected]) got netsplit. [17:02] Rotty ([email protected]) got netsplit. [17:02] gheet ([email protected]) got netsplit. [17:02] sack ([email protected]) got netsplit. [17:02] NFusi0n ([email protected]) got netsplit. [17:02] tlg ([email protected]) got netsplit. [17:02] md` ([email protected]) got netsplit. [17:02] xcomp ([email protected]) got netsplit. [17:02] Company ([email protected]) got netsplit. [17:02] sjoerd ([email protected]) got netsplit. [17:02] desrt ([email protected]) got netsplit. [17:02] swentel ([email protected]) got netsplit. [17:02] alley_cat ([email protected]) got netsplit. [17:02] dilinger ([email protected]) got netsplit. [17:02] sub_pop ([email protected]) got netsplit. [17:02] taaz ([email protected]) got netsplit. [17:02] BBB ([email protected]) got netsplit. [17:02] dennis_ ([email protected]) got netsplit. [17:02] Jara[zZ] ([email protected]) got netsplit. [17:02] teuf ([email protected]) got netsplit. [17:02] mathrick ([email protected]) got netsplit. [17:02] sublett ([email protected]) got netsplit. [17:02] sxpert ([email protected]) got netsplit. [17:02] sxpert_work ([email protected]) got netsplit. [17:02] lilo ([email protected]) returned to #gstreamer. [17:02] Company ([email protected]) returned to #gstreamer. [17:02] teuf ([email protected]) returned to #gstreamer. [17:02] mathrick ([email protected]) returned to #gstreamer. [17:02] tlg ([email protected]) returned to #gstreamer. [17:02] NFusi0n ([email protected]) returned to #gstreamer. [17:02] md` ([email protected]) returned to #gstreamer. [17:02] xcomp ([email protected]) returned to #gstreamer. [17:02] sack ([email protected]) returned to #gstreamer. [17:02] gheet ([email protected]) returned to #gstreamer. [17:02] taaz ([email protected]) returned to #gstreamer. [17:02] dilinger ([email protected]) returned to #gstreamer. [17:02] sjoerd ([email protected]) returned to #gstreamer. [17:02] sub_pop ([email protected]) returned to #gstreamer. [17:02] swentel ([email protected]) returned to #gstreamer. [17:02] alley_cat ([email protected]) returned to #gstreamer. [17:02] desrt ([email protected]) returned to #gstreamer. [17:02] Rotty ([email protected]) returned to #gstreamer. [17:02] sublett ([email protected]) returned to #gstreamer. [17:02] BBB ([email protected]) returned to #gstreamer. [17:02] sxpert_work ([email protected]) returned to #gstreamer. [17:02] Jara[zZ] ([email protected]) returned to #gstreamer. [17:02] dennis_ ([email protected]) returned to #gstreamer. [17:02] sxpert ([email protected]) returned to #gstreamer. [17:02] #gstreamer: mode change '+b *!*omg@*.client2.attbi.com' by tenn.freenode.net [17:02] <iain> Company: I think it works okay, but if there's problems I can sort them out [17:03] <iain> Company: so long as you don't need it by Monday [17:03] <Company> iain: i'm only hacking on vorbisdec [17:03] <Company> and that one outputs float [17:03] <Company> only [17:04] swentel ([email protected]) left irc: [17:05] <mathrick> Company: do soundcards accept any format, or int only? [17:05] <Company> mathrick: depends on soundcard [17:05] <Company> mine takes S16 and U8 only [17:06] <mathrick> btw, x-raw-int samples describe absolute level or delta? [17:08] <Company> absolute [17:08] <Company> afaik [17:08] <Company> but i never care about the contents of data, i only write frameworks ;) [17:09] Action: Company shoots vorbis [17:09] Action: mathrick heard about some SACD competitor, using 1 bit sampling [17:09] <Company> those *beep*s didn't seperate ogg and vorbis [17:09] <mathrick> but then, it takes 2M samples per second ;) [17:10] <mathrick> Company: who are *beep*s? [17:10] <Company> ask mtv, they invented that word [17:10] <teuf> Company: hmm, some guy says he still gets choppy playback with a 2.6 kernel [17:11] <Company> teuf: then he should fix his kernel (gentoo user? ;)) [17:11] <teuf> wouldn't be surprising given that he doesn't seem to read what I'm trying to explain him [17:11] <mathrick> Company: no, I'm asking which specific *beep*s you're talking of. I know plenty fitting this description ;) [17:11] <Company> mathrick: the people that wrote /usr/include/vorbis/codec.h [17:12] <mathrick> Company: it's some standard Xiph implementation? [17:13] <Company> mathrick: it's the header file for raw vorbis decoding [17:13] <Company> mathrick: and it requires ogg packets... [17:13] <mathrick> Company: but where does it come from? [17:13] <Company> mathrick: libvorbis [17:17] <Company> theora looks pretty much dead [17:20] <iain> is theora the integer version? [17:20] <Company> theora is the video codec [17:21] <iain> oh yeah [17:21] <iain> tremor is the integer thing then? [17:21] <Company> i think so, yeah [17:21] <iain> what was Tarkin? [17:22] <BBB> tarkin is the experimental video codec [17:22] <Uraeus> iain: another Ogg video codec [17:22] <BBB> and theora should be released sometime soon [17:22] <BBB> they say [17:22] <BBB> ;) [17:23] <Company> the mailing lists has seen 1 post in the last 30 days... [17:23] <iain> "Dear Theora, do you know how to please your woman???asje84" [17:24] <Company> the list is filtered [17:25] <Company> surprisingly [17:27] <Company> i don't want to put GstBuffers into ogg packets so vorbis decodes them again :o [17:27] <mathrick> Company: it's still better than "official X sound server" thing (hint: MAS ;). Its list had 30 mails since beginning in 2002 [17:28] <BBB> MAS... talking about dreams flying away [17:28] <BBB> they had the desktop for their taking [17:28] <BBB> we only had one demand: remove the framework crap and make the client setup a bit easier [17:29] <BBB> and what did they do? [17:29] <BBB> they never touched client setup code again and made the framework even more complex [17:29] <BBB> ... [17:29] <BBB> :( [17:29] Action: alley_cat likes nas as sound server [17:29] <BBB> (actually, that's 2 demands, but anyway...) [17:30] <Uraeus> alley_cat: we have a nas plugin, but I am unable to get it working with our auto* setup :( [17:30] <alley_cat> Uraeus: where is it, maybe i can take a look [17:31] <Uraeus> alley_cat: I have it here locally, I can mail it to you if you want [17:31] <alley_cat> sure [17:31] <alley_cat> [email protected] [17:32] KoRnouille ([email protected]) joined #gstreamer. [17:34] <mathrick> BBB: MAS is bizarre creation, it's one of the longest right-around-the-corner software I know of. I first heard of MAS even before GStreamer (somehow it was earlier on google page ;) when looking for linux media framework. And since then, i think there was 0.6, 0.8 is near, and MAS is as much vaporware as it was [17:34] <BBB> *nod* [17:35] <Company> mas is not a sound server [17:35] <mathrick> BBB: and also, they've never clearly stated what they want to be. Media Framework or sound server [17:35] <Company> a sound server is an interface to the soundcard [17:35] <BBB> MAS is just bizarre [17:35] <mathrick> Company: practically speaking, it is. Even some of their press call them "Official X.Org sound server" [17:36] <Company> well, in that case Rb is a sound server, too [17:36] <Company> encode your data to mp3, add file to Rb archive via bonobo, playback file [17:36] <mathrick> Company: nope, unless you can link to RB ;) [17:36] <Company> that's even easier [17:36] <BBB> monkeymedia ;) [17:37] <Company> while mp3 is played by rb, encode next mp3, add to playlist, set as next file [17:37] <Company> should work [17:37] Action: BBB goes home [17:37] <BBB> byebye [17:37] BBB ([email protected]) left irc: "Client exiting" [17:40] <mathrick> Company: they make big claims, show some pretty four colors graphs, but it boils down to being X aware sound server. Just take a look on their already available "devices". AFAIR one mp3, one raw audio, null and network one [17:41] <Company> they're an audio framework [17:41] <Company> it's basically arts with a more ancient coding style [17:45] Action: dolphy is out for the week end [17:45] <dolphy> see you sunday guys [17:45] <Company> hf [17:45] <Uraeus> have a good weekend dolphy [17:45] <mathrick> cya dolphy [17:46] <dolphy> thx [17:46] <dolphy> :) [17:46] dolphy ([email protected]) left irc: "Network down, IP Packets delivered via UPS" [17:48] teuf ([email protected]) left irc: "Client exiting" [17:49] apoc ([email protected]) joined #gstreamer. [17:50] <apoc> yo [17:50] <Uraeus> hi apoc [17:50] <Uraeus> apoc: me and BBB was talking about you earlier today :) [17:51] <apoc> Uraeus : really ? [17:52] <Uraeus> apoc: yeah, BBB said he thought we needed a ffmpeg integration maintainer and I suggested you [17:53] <apoc> Uraeus : he asked me to work on some ffmpeg codecs ... [17:53] <Uraeus> apoc: yeah, the thing is that keeping up with ffmpeg is a continuous process which if would be good if one person kept his hand over [17:54] <apoc> Uraeus : I can try if everyone is ok ;) [17:54] <Uraeus> apoc: cool :) [17:55] <iain> wow, there's 3 children being held in Guantanamo Bay [17:56] <apoc> Uraeus : I have 1 or 2 plugins to commit, is it ok or are we in feature freeze ? [17:57] <Company> apoc: what plugins? [17:57] <Uraeus> apoc: feel free, we have a kinda api-free, not a feature freeze [17:57] <Uraeus> s/free/freeaze/ [17:57] Action: Company doesn't want gst-plugins too cluttered [17:57] <apoc> Company : trm (musicbrainz) [17:57] <Company> apoc: yeah, that's ok [17:58] <Uraeus> Company: that is the gst-plugins splitting discussion, until we splitt I think gst-plugins is what we have [17:58] <apoc> Company : I have a patch for rhythmbox too that add vorbisgain support [17:58] <Company> i don't think we should add crap to it just because [17:58] Action: mathrick is evil by not recompiling RB after updating core [17:58] <Company> apoc: vorbisgain or replaygain? [17:59] <apoc> Company : oh replaygain sorry [17:59] <Company> that's cool, too [17:59] <mathrick> poor thing, now it thinks it's playing a file while it's not ;) [17:59] <Company> i just don't think we want to have plugins for all sorts of unstable libs in gst-plugins [17:59] <dilinger> apoc: hm, cool, so gst will be able to get song information using trm/musicbrainz for untagged audio files (flac/ogg/whatever)? [18:00] <Company> maybe i should just commit my cairo plugin, too [18:00] <apoc> Uraseus, Company : Is rhythmbox part of gnome-desktop now ? [18:00] <Company> no idea [18:01] <Uraeus> Company: we need to come to an agreement on splitting up gst-plugins, but I don't think the intermediate solution is blocking things out of gst-plugins [18:01] <Uraeus> apoc: still undecided [18:01] <apoc> dilinger : it just computes the trmid [18:02] <dilinger> apoc: ok, so a frontend would be able to (theoretically) do it? [18:03] <Company> Uraeus: i'd thought about just adding them to sandbox for the time being [18:03] <dilinger> have gst compute the trmid, look up the trmid in musicbrainz, get the song title/etc, and either play the track w/ correct song info or alternatively tag it [18:03] sub_pop ([email protected]) left irc: "Client exiting" [18:03] <Company> i'm all for adding useful plugins to gst-plugins [18:04] <Company> but i hate it when people add plugins just because of some two hour fun project and we're left with a mess to maintain [18:05] <Uraeus> I see that point [18:05] KoRnouille ([email protected]) left irc: "Leaving" [18:06] <taaz> dilinger: doing trms is expensive. you have to send stuff to the mb server which calculates the trm. ie, doing it all the time on every stream is not an option. or at least not very nice to their servers ;) [18:07] <apoc> dilinger : the problem with the trmid is that it can match more than one song (same problem as diskid for CDaudio) [18:07] <Company> taaz: i don't care about their servers, they could give us the algorithm [18:07] <taaz> they don't have it [18:08] <taaz> it's black box closed source junk [18:08] <Company> they do [18:08] <Company> yeah, but those guys sponsor musicbrainz [18:08] Nick change: harshyZ -> harshyWork [18:08] <Company> musicbrainz only exists because it's marketing for the "black box closed source junk" [18:08] <taaz> huh? [18:09] <taaz> it's a perfectly useful service without using trms. i don't use them. [18:09] <taaz> i'm just doing cdindex lookups to improve my tags. [18:09] <Company> sponsors: relatable [18:10] <taaz> they haven't shown any interest in releasing source. don't hold your breath. [18:10] <Company> yeah, so why should i be nice to them and not slashdot their servers? [18:10] <dilinger> apoc: i wouldn't expect it to be perfect.. still, if it could automatically recognize 90% of the songs i own, it would be nice. nothing i have is tagged, and stuff like rythmbox isn't too useful w/out tags [18:10] <taaz> Company: don't be a dick [18:11] <Company> i'm not [18:11] foser ([email protected]) joined #gstreamer. [18:11] <taaz> go argue with ruaok in #musicbrainz [18:11] <Company> i'll take patches from them [18:11] <Company> so if they get annoyed by me hiting their server, they can make it work better [18:12] <Uraeus> apoc: http://msdn.microsoft.com/dotnetrocks/en/20040115samg/dotnetrocks_0045_sam_gentile.asx [18:12] Action: Company only does interoperability with closed source projects [18:12] <Uraeus> apoc: playing that link with gstreamer would be nice, Xine plays it well [18:12] <Uraeus> apoc: all we need is in ffmpeg right? [18:15] <apoc> dilinger : if you want to test : http://qmbtagger.sourceforge.net/ ;) [18:16] <dilinger> blech, qt :) [18:16] Action: mathrick wonders how to open URL in Xine w/o using CLI [18:16] <dilinger> i'll definitely give it a try, though [18:16] <apoc> Uraeus : .asx files are text files [18:16] <apoc> dilinger : qt yes ;) [18:16] <Uraeus> apoc: oh, ok I guess the actual URL is inside then ;) [18:17] <apoc> Uraeus : have you try the URL inside ? [18:17] <dilinger> apoc: btw, have you done much w/ monkeyaudio lately? (i haven't really been paying attention) [18:18] <Uraeus> dilinger: afaik so has nothing been done with it since we made the standalone release some time ago [18:18] <dilinger> apoc: i remember the sdk that you'd used wasn't the latest version, and also didn't support older versions of ape files.. i was thinking about hacking the plugin to support multiple sdks [18:18] <dilinger> Uraeus: ah [18:20] <Uraeus> dilinger: its a separate module in CVS, so please feel free to update it [18:21] <Uraeus> dilinger: http://freedesktop.org/cgi-bin/viewcvs.cgi/gstreamer/gst-monkeyaudio/ [18:22] thibaut ([email protected]) joined #gstreamer. [18:23] <mathrick> yo thibaut [18:23] <thibaut> hi [18:24] mxpxpod ([email protected]) joined #gstreamer. [18:26] <Uraeus> dilinger, apoc: http://tta.iszf.irk.ru/index.htm <- have you guys seen this? [18:28] <NFusi0n> Uraeus: check hydrogen audio [18:28] <NFusi0n> I posted a thread on TTA2 [18:28] <NFusi0n> apparently the cds used to test were "specially selected" and tta isn't as good as it looks [18:28] <NFusi0n> just average [18:28] <Uraeus> ah :( [18:28] <NFusi0n> I know, i got all excited too :( [18:29] <Uraeus> to bad, cause their stuff is GPL unlike MA [18:29] <NFusi0n> Which is why I use FLAC =D [18:29] <Uraeus> then again I don't know if there really is a reason to MA over FLAC [18:29] <NFusi0n> too bad it's HUGE [18:30] <NFusi0n> Uraeus: APL files and file size come to mind [18:32] <Uraeus> ah, my Black Adder avi plays back with perfect sync [18:32] <apoc> NFusi0n : did you compare flac and tta2 ? [18:32] <Uraeus> argh [18:33] <Uraeus> Company: when I resized my video window it went out of sync and it seem impossible to get it back in sync, is that the issue you talked about? [18:34] <NFusi0n> apoc: there's a comparison over at HA, i'll get you a link [18:34] <NFusi0n> one sec [18:34] <NFusi0n> http://www.hydrogenaudio.org/show.php/showtopic/17593 [18:40] sub_pop ([email protected]) joined #gstreamer. [18:41] thibaut ([email protected]) left irc: "ChatZilla 0.9.52B [Mozilla rv:1.6/20040113]" [18:42] <Company> does tta allow seeking [18:42] <Company> ? [18:43] <apoc> NFusi0n : thx ... tta2 is GPL, not MA, Shorten or Wavpack ... so the question is tta2 better than flac ? and does it use the same compression technologies [18:44] <NFusi0n> apoc: wavpack is BSD [18:46] <apoc> NFusi0n : oh [18:47] <NFusi0n> Wavpack4 is supposedly going to "kick ass" and all that too [18:48] <Company> tta2 is pretty evil code [18:48] <Company> it's not endian safe for example [18:49] <NFusi0n> Wavpack's developer said january would be a release target [18:49] <NFusi0n> and if nobody stepped up to do a linux port within a month or two he would do it himself [18:50] <NFusi0n> haha [18:50] <NFusi0n> e in January, although multiplatform (and hardware) support will certainly be later. The code for WavPack 4.0 will be designed for even easier portability, but if a Linux version doesn't appear I will probably put together a Linux system and do it myself (because I want to have a Linux system anyway). But I am not buying a MAC... [18:50] <dilinger> Uraeus: yea, i mentioned it here yesterday. as NFusi0n said, 3rd party tests have shown it to not be as good as it would appear [18:50] <NFusi0n> http://www.hydrogenaudio.org/index.php?showtopic=15073& <--wackpack info [18:50] <NFusi0n> s/wackpack/wavpack [18:53] <NFusi0n> "beta towards the end of this month" [18:54] <Company> Uraeus: resizing should not affect sync - seeking could [18:55] <Uraeus> Company: do anyone have a pre-0.8 fix for our current sync issues? [18:56] <mathrick> mathrick@megumi:~/Desktop/Stellvia OST$ gst-launch-0.7 -v filesrc location="Uchu no Stellvia Original Soundtrack - 01 - Asu e no Brilliant Road -TV Size Version-.mp3" ! spider ! tee name=t ! osssink t ! { queue ! goom ! ffcolorspace ! xvimagesink } [18:56] <mathrick> [18:56] <mathrick> ** (process:4521): WARNING **: could not link osssink0 to queue0 [18:56] <mathrick> WARNING: erroneous pipeline: no element "t" [19:00] <Company> t. [19:00] <Company> Uraeus: it only works on 0.6 because of some design constraints in that version [19:01] <Uraeus> Company: I know, but that doesn't me we 'can' not have sync working somehow in 0.8 [19:01] <mathrick> Company: ah, thanks [19:01] <Uraeus> Company: at least not if we are saying that you can make video playback apps with 0.8 [19:02] <Company> no, someone will need to figure sync out [19:02] <Company> it's good enough for me right now [19:02] <Uraeus> Company: ok, so who do you think is best fitted to the job? you? ronald? david schleef? someone else? [19:03] <Company> best fitted would probably be me [19:03] <apoc> Microsoft recommends Mozilla : http://thenico.fr.eu.org/site/inico/images/msie.microsoft.com.download.mozilla.org.png ;) [19:03] <Uraeus> Company: but you are not interested? [19:04] Nick change: apoc -> apoc-away [19:04] <Company> i have A/V sync [19:04] <Company> it's good enough [19:04] <Uraeus> Company: even after seek? [19:04] <Company> yes [19:05] <Uraeus> ok good, then I guess there are other bugs I am seeing [19:05] <Company> you might need to use --gst-scheduler=basicomega [19:05] foser ([email protected]) left irc: "[ I want to believe ]" [19:05] <Uraeus> Company: ok I try that [19:05] <iain> "cos iain hasn't fixed opt yet" [19:05] <Company> iain: opt is fixed [19:05] <iain> really? [19:05] <Company> yeah [19:05] <iain> did you fix it? [19:06] <Company> it was a problem with spider [19:06] <iain> ah [19:06] <iain> I'm sure opt'll break somewhere else :) [19:06] <Company> but opt still has idiocies that make it suboptimal [19:07] <Uraeus> ...and basicomega just segfault for me... [19:07] Action: Uraeus curse at the gods [19:07] <Company> use basicgthread [19:08] Action: Uraeus wonders what % chance there is for omega saying yes if I mail him asking to fix basicomega for i686 glibc/NTPL [19:09] pb_ ([email protected]) joined #gstreamer. [19:10] <mathrick> hmm, goom isn't too easy on CPU [19:10] Zeenix ([email protected]) joined #gstreamer. [19:10] <mathrick> y0 Zeenix [19:10] <Uraeus> hi Zeenix [19:10] <Zeenix> hi [19:10] <Uraeus> Zeenix: the bug I mailed about is fixed in CVS [19:10] <iain> uraeus: probably the same as me getting a date/wtay replying to my email asking him how to fix opt/or me getting someone to do DNS hosting for me for free :) [19:11] <Uraeus> iain: well what would life be without the challenge of a 0.001 percentage chance [19:11] <Zeenix> Uraeus: was there really a bug? [19:12] <Uraeus> Zeenix: yes, s/clock/id/ on one line [19:12] <iain> Uraeus: yeah, its that .001% that keeps me going [19:13] <Zeenix> Uraeus: but how was i not getting it? [19:13] <Uraeus> Zeenix: old core? [19:13] <Zeenix> Uraeus: maybe [19:14] <Zeenix> Uraeus: ok forget it, just tell me if you enjoyed watching videos through cacasink? [19:14] Action: mathrick wonders if it's OK for vis to take 150% cpu generating 640x480 anim [19:14] <Uraeus> Zeenix: I did :) [19:14] <Uraeus> Zeenix: now you need to update it so it will work inside gst-player :) [19:14] <Company> mathrick: goom (not the gst plugin, but the real goom) has mmx optimizations [19:14] <Company> mathrick: but someone needs to port that to gst... [19:14] <Zeenix> Uraeus: I still dont have my system [19:15] <mathrick> Company: it's copy / paste plugin? not depending on some lib? [19:15] <Zeenix> Uraeus: i'll be on it ASA this HW issue is resolved [19:15] <Uraeus> Zeenix: ok good :) [19:15] <Company> mathrick: everything in gst doesn't depend on external libs [19:16] <Company> mathrick: stuff in sys only depends on base libs, ext is with external libs [19:16] <Zeenix> so is there anything specific I need to do to make it workable with gst-player? [19:16] <Uraeus> Zeenix: afaik so do you need it inherit from the same interface as ximagesink and xvimagesink [19:16] kmaraas ([email protected]) joined #gstreamer. [19:17] <Zeenix> Uraeus: well it already does inherit from gstvideosink [19:17] <mathrick> Company: it's in gst, but whatever :) [19:17] <Uraeus> Zeenix: gstvideosink is going away, it is horribly broken [19:17] <mathrick> Company: er, nvm [19:18] <Company> yeah, so it's copy/paste :) [19:18] <Zeenix> Uraeus: so whats new then? [19:19] <Uraeus> Zeenix: ask ds-work, thaytan or dolphy [19:19] <mathrick> hmm, my Emacs seems to get bored, time to do some coding :) [19:19] Nick change: mathrick -> mathrick|code [19:19] <Zeenix> Uraeus: IIRC xvideosink does inherit from gstvideosink, does'nt it? [19:20] <mathrick|code> Zeenix: xvideosink is deprecated [19:20] <Uraeus> Zeenix: hmm, gimme a sec; I will try and test cacasink in the player [19:20] <Company> you need to implement the GstXOverlay interface [19:21] gheet ([email protected]) left irc: "Download Gaim [http://gaim.sourceforge.net/]" [19:22] jaitly ([email protected]) left irc: "Leaving" [19:29] <Uraeus> Zeenix: when using the cacasink it opens a separate window instead of beeing embeded inside gst-player [19:33] trow ([email protected]) joined #gstreamer. [19:33] trow ([email protected]) left irc: Client Quit [19:33] trow ([email protected]) joined #gstreamer. [19:34] <Zeenix> Uraeus: hmm.. I dont think that libcaca provides any means to do that [19:38] sack ([email protected]) left irc: "Client Exiting" [19:41] <mathrick|code> hmm, does queue *require* to be placed on threads boundaries? [19:41] <Uraeus> Zeenix: hmm, ok, but we still need the GstXOverlay interface as Company said [19:41] <Company> mathrick|code: you need a decoupled element [19:42] <mathrick|code> Company: what is decoupled elem? [19:42] <Company> mathrick|code: the only useful decoupled element is queue - if you don't want to use pipefilter at least [19:42] <Company> mathrick|code: an element where all pads work independantly [19:42] <mathrick|code> Company: no, i mean the other way around. queue doesn't work when not on boundary [19:43] <Company> yeash, tzhat's true [19:43] <mathrick|code> Company: why is it? [19:44] <Company> because queue blocks [19:45] <Company> and waits to be woken up from the other side [19:46] <mathrick|code> how is it able to cache data when other thread is not yet active then? [19:46] <Company> it jsut puts data in until the queue is full and then blocks [19:47] <Zeenix> Company: why XOverlay? we are'nt doing any overlay in cacasink, do we? [19:47] <Company> because someone decided to name it like that [19:48] <mathrick|code> Zeenix: don't worry, almost everyone is confused by that super poor name ;) [19:48] <Zeenix> Company: who was it [19:48] <Company> bbb probably [19:48] <mathrick|code> Zeenix: overlay is clever disguise for "image i can embed in my widget" [19:49] <Company> you lay the video output over the app [19:49] <Company> so there [19:51] <mxpxpod> is there something wrong with the alsasink? [19:52] <mathrick|code> Company: it might have been good name if there wasn't established meaning for "overlay" before :) [19:53] <Company> ssshhh [19:55] <Zeenix> to embed the cacasink's video-widget into our own, we only need it's xid, right? [19:55] <Company> the other way around [19:55] <Company> you tell cacasink your xid and cacsink embeds itself [19:56] foser ([email protected]) joined #gstreamer. [20:25] <mathrick|code> hmm, how comes spider doesn't have it's own product field in bzilla? ;) [20:25] <mxpxpod> how do you pass parameters to a sink? [20:27] <mathrick|code> mxpxpod: elem ! foosink param1=val1 param2=val2 [20:27] <mxpxpod> hmm [20:27] <mathrick|code> mxpxpod: but probably you want filtered caps :) [20:27] <mxpxpod> I'm getting this error when using the alsasink with alsa-utils 1.0.1: [20:28] <mxpxpod> RUNNING pipeline ... [20:28] <mxpxpod> gst-launch-0.7: pcm_plug.c:882: snd_pcm_plug_hw_params: Assertion `err >= 0' failed. [20:28] <mathrick|code> mxpxpod: pipeline? [20:28] tlg ([email protected]) left irc: "Client exiting" [20:28] <mxpxpod> gst-launch-0.7 filesrc location="Spoken - Falling Further.flac" ! flacdec ! "alsasink" [20:29] <Company> try filesrc location="Spoken - Falling Further.flac" ! flacdec ! alsasink device=hw:0 [20:30] <mxpxpod> there it is! [20:30] <mxpxpod> thanks Company [20:32] <jimmy_dean> hey Company, is there a way to get the output to be normal timing and clear of clicking when using gst-launch-0.7 for my current plugin right now? [20:32] <jimmy_dean> Company: it's quite poor sound quality right now and the song is running very fast [20:32] <mxpxpod> Company: hmm, sorry, that's not what I want... I'm trying to get dmix to work and I need device=default... [20:33] <Company> mxpxpod: then you need to fix alsa, because that's an alsalib bug [20:33] <mxpxpod> Company: the alsasink or alsa itself? [20:33] <Company> jimmy_dean: no idea what the issue is there [20:33] <Company> mxpxpod: alsa itself [20:33] <mxpxpod> hmmm.... ok [20:33] <jimmy_dean> Company: so it should be normal timing and it shouldn't be clicking usually? [20:34] <Company> yeah [20:34] <Company> at least as long as you don't change the caps [20:34] <jimmy_dean> Company: hmm, I'll try the normal pass through plugin and see if that produces the same result as my plugin [20:36] <jimmy_dean> Company: hmm, I can't just replace equalizer with passthrough and have it do the same thing that my plugin does right now? [20:37] <jimmy_dean> ERROR: pipeline doesn't want to play. [20:37] <Company> use identity [20:37] <jimmy_dean> Company: what do you mean? [20:37] <Company> instead of the passthrough element [20:38] <jimmy_dean> ahh ok [20:38] <jimmy_dean> Company: are there docs anywhere on gst-launch? [20:38] <Company> there's a manpage [20:38] Action: mathrick|code hides [20:38] <Company> though that's a bit outdated and referencing older plugins [20:39] walters ([email protected]) joined #gstreamer. [20:39] <mathrick|code> please, wait till monday :) [20:39] <mathrick|code> yo walters [20:39] <jimmy_dean> oh ok, actually my plugin sounds better running the MP3 than the identity one [20:39] <Company> but the PIPELINE DESCRIPTION is still quite ok [20:39] <jimmy_dean> Company: ok, that's what I need [20:40] <walters> hey [20:40] <jimmy_dean> Company: oh, is there a standard way of printing debugging information in the GStreamer library such as a special call or do I use printf? [20:40] <Company> there's a whole framework [20:40] <jimmy_dean> Company: but of course :) [20:41] <jimmy_dean> Company: what's it called, I'll look for it in the API docs [20:41] <Company> it's in the API docs somewhere, though you obviously need to build them first [20:42] <jimmy_dean> Company: the docs? Can't I just look online? [20:42] <Company> i don't think there are head docs online [20:43] <jimmy_dean> Company: hmm, ok [20:47] <Company> that's the subsystem i wrote extensive docs for [20:47] <Company> but nobody ever read them [20:47] <Company> so i never did it again as i had to answer all the questions anyway [20:49] <mathrick|code> hmm, know of channel for gdb? [20:50] <Company> nope [20:50] <Zeenix> Uraeus: is it correct that there is no upgrade option in fedora & RH Enterprise for RH9 ? [20:50] <Company> try using the channel window and filter by "gdb" [20:51] <jimmy_dean> Company: it's quite good, I found what I need :) [20:53] _246tNt_ ([email protected]) left irc: "Leaving" [21:00] freerock ([email protected]) joined #gstreamer. [21:01] <freerock> is there anyway that I can set vbr-mean-bitrate with the lame plugin? I see its set to 128 right now with gst-inspect lame [21:01] <ds-work> someone should email wtay and ask him to bump one of us up to level 40 in chanserv [21:03] mxpxpod ([email protected]) left irc: Remote closed the connection [21:36] <jimmy_dean> ds-work: what is one of the current gst-plugins that link against an external library such as I want to do with FFTW? [21:37] <ds-work> jimmy_dean: anything in ext [21:37] rk ([email protected]) left irc: "seeking for a pillow" [21:37] <jimmy_dean> ds-work: ok, is the -llibmylib definition in those Makefile.am 's? [21:38] <jimmy_dean> ds-work: obvioulsly not like that, but the reference to the external libraries [21:38] <ds-work> jimmy_dean: no, that's handled by the toplevel configure.ac and various m4 macros [21:39] <jimmy_dean> ds-work: ok, how should I handle fftw linking while I'm at least coding it and testing it? [21:39] <jimmy_dean> ds-work: my plugin that is [21:39] <ds-work> add a -lfftw [21:40] <jimmy_dean> ds-work: to the generate Makefile? [21:40] <jimmy_dean> generated [21:40] <ds-work> to *_LIBADD in Makefile.am [21:40] <jimmy_dean> ds-work: ok, thanks [21:42] <jimmy_dean> ds-work: would * be libgstequalizer if I called my library filename libgstequalizer.la ? [21:43] <jimmy_dean> ds-work: actually it'd be libgstequalizer_la_LIBADD [21:45] <ds-work> you could look at other directories :) [21:45] <jimmy_dean> ds-work: true, I'm trying to deduce it so I really learn things :) [21:45] <jimmy_dean> ds-work: hopefully once I learn to make this one plugin, I'll be hooked and make some more :) [21:46] yoann ([email protected]) joined #gstreamer. [21:46] <yoann> hi [21:46] <yoann> Company: are you around ? [21:47] <yoann> Company: playing with gst-player under helgrind right now [21:58] m_wheels ([email protected]) joined #gstreamer. [21:59] Nick change: m_wheels -> wheels [22:04] <Company> yoann: good luck [22:05] <Company> yoann: valgrinding gst-player is like valgrinding all of gnome at once [22:05] trow ([email protected]) left irc: Remote closed the connection [22:06] <yoann> Company: that's what I can see right now [22:06] <yoann> gst_gconf_get_string: error: Type mismatch: [22:06] <yoann> Expected `string' got `float' for key /system/gstreamer/default/audiosink [22:06] <yoann> GConf audio sink not found, using osssinkgst_gconf_get_string: error: Type mismatch: [22:06] <yoann> Expected `string' got `float' for key /system/gstreamer/default/visualization [22:06] <yoann> [22:06] <yoann> GConf visualization plugin not found, using goom==8235== [22:06] <yoann> valgrind's libpthread.so: pthread_attr_setstacksize: requested size 2097152 >= VG_PTHREAD_STACK_SIZE [22:06] <yoann> [22:06] <yoann> that doesn't look good [22:07] <Company> edit vg_include.h and rebuild :) [22:08] <yoann> humm :) [22:08] <yoann> Company: did you already did this sucessfully, I mean, modifying the maximum stack size, and getting vg to run it ? [22:08] <Company> yes [22:09] <Company> well, not gst-player but gst-launch [22:09] wheels ([email protected]) left irc: Read error: 113 (No route to host) [22:09] <yoann> k [22:10] wheels ([email protected]) joined #gstreamer. [22:11] <yoann> valgrind --tool=helgrind gst-launch-0.7 filesrc location=Laura\ Creamer\ -\ Bonny\ Portmore.mp3 ! mad ! osssink [22:11] <yoann> playing a song without problem right now [22:12] <yoann> hpoing to see a race arise ;-) [22:16] <yoann> Company: humm... unable to reproduce anything right now [22:17] <yoann> Company: could it be that the problem are related to gst-player itself, and not gstreamer core ? [22:17] <Company> no idea [22:17] <Company> maybe [22:17] <Company> but races go away easily when running under debuggers [22:18] <yoann> Company: well, normally, helgrind is pretty handy at detecting race [22:18] <yoann> Company: I usually use it, and it work pretty well [22:19] <yoann> Company: also, is there any known issue with alsasink ? [22:19] <Company> none that i know of [22:19] <yoann> okay, thank you [22:19] <yoann> Company: btw, you were at Fosdem last year ? [22:20] <Company> nope [22:20] <mathrick|code> Company: you probably mean, none except people constantly complaining about alsasink not working? ;) [22:21] <yoann> Company: I just remember meeting some member of your team at the fosdem, in a pub, with damien sandras [22:21] <yoann> Company: wondered if you were one of thoses [22:21] <Company> mathrick|code: i don't know of any issue with alsasink - only issues with alsalib and alsas soundcard drivers [22:22] <Company> yoann: nope, I only was at last guadec [22:22] <alley_cat> alsasink works fine here as long as i give it 48khz audio, everything else doesn't work [22:22] <mathrick|code> Company: and that cannot find mixer iterface thing? is it alsa's fault? [22:23] <Company> mathrick|code: oh, right, the mixer thingy - i always forget that as i didn'T write it [22:25] <yoann> Company: gst-player clearly seem buggy [22:26] <Company> entirely possible [22:26] <yoann> Company: start playing a file, add another one to the playlist, switch to the second one -> crash [22:27] <Company> yoann: you could try gst-plugins/examples/gstplay/player [22:27] Action: ds-work kicks dolphy [22:28] BBB ([email protected]) joined #gstreamer. [22:29] <mathrick|code> yo BBB [22:29] <BBB> apoc-away: I was looking for you! [22:29] <BBB> ds-work: And for you too! [22:29] <BBB> </spam> [22:29] <BBB> hi *waves* [22:29] Action: ds-work moos [22:29] <BBB> whee [22:30] <ds-work> BBB: I fixed the ffenc thing [22:30] <BBB> ds-work: wavparse doesn't like capsnego [22:30] <BBB> ? [22:30] <BBB> no, I just fixed ffenc [22:30] <BBB> didn't I? [22:30] <ds-work> the use after free? [22:30] <BBB> or did I break it? [22:30] <BBB> yes, that [22:30] <BBB> oh, I broke it? I tested it after comitting the fix and it worked here... [22:31] <ds-work> <BBB> #1 0x400492d9 in gst_pad_set_explicit_caps (pad=0x818dcec, caps=0x8336958) [22:31] <ds-work> <BBB> at gstpad.c:2197 [22:31] <ds-work> <BBB> #2 0x40811bdb in gst_ffmpegenc_connect (pad=0x818dc30, caps=0x8336948) [22:31] <ds-work> <BBB> at gstffmpegenc.c:371 [22:31] <BBB> yes, I fixed that shortly after c/p'ing that [22:31] Action: BBB always first shouts and then looks in the actual code [22:31] Action: BBB is having bad habits [22:31] freerock ([email protected]) left #gstreamer. [22:32] <ds-work> where's our cvsweb now? [22:32] <BBB> cvs.freedesktop.org? [22:32] <ds-work> nm [22:33] <BBB> ROTFL no way. Your arrogance and stupidity is disgusting. Java isobviously irrelevant to ffmpeg. Stop thinking your meaningless companyactually matters. [22:33] <Company> http://freedesktop.org/cgi-bin/viewcvs.cgi/gstreamer/ [22:33] <BBB> is that a normal way to reply to commercial companies interested in products? [22:33] Action: BBB wonders... [22:33] <ds-work> BBB: ah, it merged your changes and mine [22:33] <BBB> even better :) [22:33] <ds-work> BBB: I freed the caps as well :) [22:33] <BBB> so we did the same ;) [22:33] Action: BBB is actually getting used to the new caps [22:33] <BBB> and I like it pretty much ;) [22:34] <ds-work> BBB: where was that? [22:34] <ds-work> (the quote) [22:34] <BBB> on ffmpeg-devel [22:34] Action: BBB is working on integrating new ffmpeg into our CVS [22:34] <Company> iain: float2int only takes 1 channel? [22:35] <ds-work> any chance we can get ffmpeg people to switch to a decent build system if someone does the work for them? [22:35] <Company> BBB said they're ok with autmake [22:35] <Company> but not libtool [22:35] <ds-work> why not libtool? [22:35] <ds-work> other than it forces them to build correct libraries :) [22:36] <ds-work> and fix their code [22:36] <yoann> Company: on the other end, I can see a whole set of race in rhythmbox [22:36] <BBB> well, ehm [22:36] <BBB> most are ok with automake [22:36] <walters> yoann: like? [22:36] <BBB> there's some idiot fanatics (not developers, fortunately ;) ) that don't like it [22:37] <BBB> they won't use libtool, but once they use autotools, patching it to use libtool is a one-liner [22:37] <BBB> so I don't mind much [22:37] <yoann> walters: you really want a dump here ? [22:37] <yoann> walters: that's big... [22:37] <walters> yoann: dump...of what? a stack trace? [22:37] <Company> valgrind [22:38] <yoann> walters: yes [22:38] <ds-work> does anyone mind if I add an optional dependency on liboil? This would be for plugins in gst/ -- if liboil is present, it will be used, otherwise there will be backup code [22:38] <walters> yoann: privmsg would probably be better [22:38] <Company> ds-work: nope [22:38] <BBB> ds-work: if it's optional, no prob [22:38] <BBB> ds-work: I'd like to delay these dependencies as obligatory until 0.10, though, if possibel [22:41] <Company> there are no obligatory dependencies in gst-pluginsa [22:42] <ds-work> there will probably be a liboil-lite, which I'd like to snarf into the tarball like ffmpeg [22:42] <Company> why? [22:42] <ds-work> except that I'd like to figure out how to do it better than ffmpeg [22:42] <ds-work> Company: because I want to make it an obligatory dependency :) [22:43] <Company> what would that be good for? [22:43] <ds-work> float2int [22:43] <ds-work> audioconvert [22:43] <ds-work> lots of gst/ plugins [22:43] Action: Company prefers the "make everything slow as hell without liboil" method [22:43] <Company> it's just like mad today [22:43] <Company> gst-plugins works without mad, but uhm.... [22:44] <ds-work> I want the liboil API without needing the full liboil package [22:44] <jimmy_dean> how can I take the GstData *in to my chain function and print the data out to the screen so that I can see it? [22:44] <alley_cat> gst-plugins without mad is fine, ffdec_mp3 is faster anyway ;) [22:44] <ds-work> it's going to be bloody slow, because liboil-lite will only have the slow stuff and compile on non-gcc compiliers [22:44] <BBB> fakesink dump=true [22:44] <Company> jimmy_dean: gst_util_memdump or something [22:44] <ds-work> gst_util_dump_mem [22:45] <Company> and fakesink dump=TRUE is the plugin that does that automagically [22:45] <jimmy_dean> ds-work: ok, do you know what type of order the data is in compared to what I need it to be in to input to FFTW? [22:45] <ds-work> huh? [22:46] <jimmy_dean> ds-work: they have an array ordering scheme for FFTW [22:46] <jimmy_dean> ds-work: such as row-major format [22:46] <jimmy_dean> http://www.fftw.org/fftw3_doc/Multi-dimensional-Array-Format.html#Multi-dimensional%20Array%20Format [22:46] <ds-work> jimmy_dean: ah, that. they have lots of options. [22:46] <ds-work> you're only processing a 1-dimensional array [22:46] <jimmy_dean> ds-work: right [22:47] <jimmy_dean> ds-work: so how do I take my GstData and shove that into the dft function for that, I mean they're not the same data types [22:47] <ds-work> yeah, you have to convert from int to float [22:48] Action: BBB will be offline parts of the weekend to integrate ffmpeg perfectly [22:48] <jimmy_dean> ds-work: ok, would that be done with a casting? [22:48] <jimmy_dean> ds-work: I should say best be done [22:48] <BBB> and I might actually start autotoolizing it [22:48] <BBB> (AC_CONFIGURE() allows me to configure a dir within my package, no?) [22:48] <ds-work> jimmy_dean: don't ever ask me for the best solution, because I might give it to you :) [22:49] <jimmy_dean> ds-work: lol [22:49] <ds-work> jimmy_dean: a for() loop on the array [22:49] <ds-work> casting for int->double conversion [22:49] <BBB> bbl... [22:49] <ds-work> i = rint (d) for double->int conversion [22:49] BBB ([email protected]) left irc: "Client exiting" [22:50] <jimmy_dean> ds-work: ok, so then I could use one of their dynamically allocated arrays like they suggest [22:50] <ds-work> yeah [22:50] <jimmy_dean> ds-work: and GStreamer has a way of detecting what optimizations are supported by a CPU? [22:50] <jimmy_dean> ds-work: because then FFTW can use those optimizations [22:52] <ds-work> jimmy_dean: fftw should do that for you [22:52] <jimmy_dean> ds-work: ahh ok, I thought there might be a flag to set or something [22:55] <jimmy_dean> ds-work: for specifying the "guint size" for gst_util_dump_mem, do I use sizeof() ? [22:55] mxpxpod ([email protected]) joined #gstreamer. [22:56] <Company> nope,. GST_BUFFER_SIZE [22:56] <jimmy_dean> ahh, right...makes sense [22:56] <jimmy_dean> thanks [22:58] <jimmy_dean> Company: wow, it printed off a ton of stuff...how many lines of output would represent one pass-through of my chain function? [22:59] <jimmy_dean> maybe 1 actually? it's 16 bits [23:18] <Company> one buffer [23:19] <Company> it prints the position on the left [23:19] <Company> s/position/offset inside the buffer [23:19] <jimmy_dean> Company: ahh ok, and what about the middle data...there are 16 sets of 2 printed out per line [23:20] <jimmy_dean> in hex [23:20] <Company> yeah, that's the data [23:21] <jimmy_dean> Company: so is that the smallest unit of data for a GstData buffer then? 16 sets of 2? [23:21] <Company> 1 byte [23:21] <jimmy_dean> ok [23:21] <ds-work> actually, 0 bytes [23:21] <jimmy_dean> 0? [23:22] <Company> 0 bytes is valid? [23:22] <ds-work> yes [23:22] <Company> ah right, fakesrc doesa that [23:22] <jimmy_dean> how can it be 0 bytes? [23:22] <ds-work> size=0 [23:23] <jimmy_dean> but that means nothings there by definition [23:23] <walters> ds-work: so did you actually find a bug by rb not checking for state change errors? [23:23] ChrisHJW ([email protected]) joined #gstreamer. [23:24] <ds-work> walters: yes. oss was in use, and rb would crash when started [23:24] <walters> ds-work: ah, ok. [23:25] <ds-work> walters: it was one of my "who caused this regression" moments, quickly followed by realizing what was going on [23:25] <ds-work> (stupid flash) [23:25] <walters> ds-work: i just synced my changes to mainline and gnome cvs [23:25] <jimmy_dean> walters: might that have been the problem that was crashing RB for me? [23:26] <Company> iain: i need you, help me! [23:30] <ds-work> how do I turn on xsync in gst-launch? [23:30] <Company> break on main and set some variable _XDebug or something [23:30] yippi ([email protected]) joined #gstreamer. [23:32] <ds-work> yippi: hey [23:32] <Company> ds-work: why is float audio transferred as 1 pad/channel? [23:32] <ds-work> Company: because interleaved float is evil, according to wingo [23:33] <Company> ds-work: why not just not interleave the floats? [23:33] <ds-work> it's evil [23:33] <Company> ds-work: x bytes channel 1 followed by x bytes channel 2 [23:33] <ds-work> fruits of the devil [23:33] <Company> any other reason? [23:33] <Company> because the autoplugger needs to know that it has to plug 2 connections :o [23:34] <ds-work> pro-audio guys would laugh at us :) [23:34] <Company> yeah [23:34] <Company> so i'm gonna change it to make vorbis work [23:34] <Company> and let them laugh [23:34] foser ([email protected]) left irc: "[ I want to believe ]" [23:34] <Company> and if people look at me funny, i'm gonna use audio/x-raw-float-2 [23:35] <jimmy_dean> printing out GST_BUFFER_SIZE() with g_print is making my plugin segfault...is there a reason why? [23:35] <ds-work> that's a good idea [23:35] <Company> just to make people have the benefit of listening to ogg in stereo [23:35] <jimmy_dean> Company: I wouldn't complain about stereo ogg :) [23:35] <ds-work> x-raw-float-interleaved [23:36] <Company> ds-work: i'd just have a property named "interleaved" and use the mighty caps system, but that's just me [23:36] <ds-work> Company: ah, yes [23:36] <Company> (though that wouldn't be backwards compatible [23:36] <Company> but i don't want interleaved float [23:36] <Company> i just don't want multiple pads [23:37] <ds-work> Company: I recommend against changing x-raw-float, but adding a new type is roughly ok [23:37] <Company> vorbis gives you a float** as output data :) [23:37] <ds-work> use a buffer of two (float *)'s :) [23:38] <jimmy_dean> grr, why would printing out g_printf(GST_BUFFER_SIZE(buf)); in my chain function be causing a segfault? [23:38] <Company> that wouldn't be a problem, because we have buffer-frames [23:38] <jimmy_dean> s/printing/executing [23:39] <Company> because you should learn how to use g_print first? [23:39] <Company> it expects a string as first argument [23:39] <jimmy_dean> Company: why didn't gcc complain about the type then? [23:39] <Company> g_print ("%u\n", GST_BUFFER_SIZE(buf)); [23:39] <Company> dunno [23:39] <mathrick|code> jimmy_dean: -Wall? [23:40] <jimmy_dean> mathrick|code: does that make gcc more verbose? [23:40] <mathrick|code> jimmy_dean: definitely ;) [23:40] <jimmy_dean> mathrick|code: ok, what does that go under in the Makefile.am? [23:40] <jimmy_dean> CFLAGS? [23:40] <mathrick|code> jimmy_dean: haha, wrong person to ask about auto* ;) [23:41] <jimmy_dean> mathrick|code: lol, yeah...I'm learning too [23:41] <mathrick|code> jimmy_dean: but rather yourplugin_CFLAGS or so [23:41] <jimmy_dean> ok, yeah that sounds right [23:41] <yippi> ds-work: heya. i'm working on it. :) [23:41] <jimmy_dean> Company: it's hard jumping back and forth between C++ and C :) [23:42] <jimmy_dean> Company: similar, yet very different in many ways [23:43] <mathrick|code> jimmy_dean: answer is simple - ypu don't need C++ when there's C and Python at hand :) [23:43] Action: ds-work finds it faster to modify the source of xvimagesink [23:43] <mathrick|code> s/ypu/you/ [23:43] <jimmy_dean> ds-work: is GST_BUFFER_SIZE return guint in bytes? [23:43] <ds-work> yes [23:44] <jimmy_dean> ok, so how would that compare to what I'm seeing with the gst_util_dump_mem call? [23:44] <jimmy_dean> I'm trying to get a feel for how to structure my int to float cast [23:44] <jimmy_dean> loop [23:45] <mathrick|code> Company: wouldn't be adding some kind of x-raw-float demuxer / splitter and then linking multiple pads better? interleaved float sounds really evil, and ppl will surely laugh ;) [23:45] <Company> mathrick|code: i'm not talking about interleaved float [23:45] <jimmy_dean> ds-work: such as, do I want to loop per chain function call from 0 to GST_BUFFER_SIZE(buf) ? [23:45] jaiserca ([email protected]) joined #gstreamer. [23:45] <Company> mathrick|code: i'm talking about putting all channels in one buffer [23:46] <wheels> Ok, who wants my "make HEAD compile on gcc 2.95" patch? [23:46] <Company> mathrick|code: i'll laugh if you need channel * 2 - 1 cothread switches for every element just because you insist on using threads... [23:46] <Company> wheels: why don't you have a cvs account? [23:46] <wheels> ( == 2 lines) [23:46] <mathrick|code> Company: yeah, i understand that. But any serious audio guy would rather expect having one pad for each channel separately I suppose? [23:46] <wheels> Company: Probably because I haven't requested one. ;-) [23:47] <Company> wheels: paste it here [23:47] <ds-work> jimmy_dean: not if your input array is composed of uint16_t's [23:47] <ds-work> wheels: I probably have them locally on my 2.95 machine [23:47] <jimmy_dean> ds-work: hmm, so divide GST_BUFFER_SIZE(buf) by 16? [23:48] <wheels> --- gstclock.c 15 Jan 2004 01:35:41 -0000 1.41 [23:48] <wheels> +++ gstclock.c 16 Jan 2004 22:47:30 -0000 [23:48] <wheels> @@ -602,11 +602,10 @@ GstClockTime [23:48] <wheels> gst_clock_get_time (GstClock *clock) [23:48] <wheels> { [23:48] <wheels> GstClockTime ret = G_GINT64_CONSTANT (0); [23:48] <wheels> + GstClockClass *cclass; [23:48] <wheels> g_return_val_if_fail (GST_IS_CLOCK (clock), G_GINT64_CONSTANT (0)); [23:48] <wheels> - GstClockClass *cclass; [23:48] <wheels> - [23:49] <ds-work> jimmy_dean: no, by 2, because there are 2 bytes in a int16_t [23:49] <mathrick|code> hmm, does that mean gcc 3.x allows declaration-as-statement ? [23:49] <ds-work> c99 does [23:49] <jimmy_dean> ds-work: ahh ok [23:49] Action: wheels might actually get a CVS account at some point though since I may need one for other XDG stuff anyway. [23:49] <ds-work> Company: G_VA_COPY() doesn't work on powerpc with gcc-2.95 [23:50] <wheels> Company: Oh, and also autogen.sh should be updated to reflect that common -> gstreamer/common. [23:50] <mathrick|code> why XDG anyway? "Cross Desktop" what? [23:50] <wheels> mathrick|code: XDG -> Freedesktop.org :-) [23:51] <wheels> mathrick|code: But I've always thought it was X Desktop Group [23:51] <mathrick|code> wheels: ahh, wouldn't have thought of that :) [23:51] <Company> ds-work: that's a glib bug - probably because it's defined in /usr/lib/glib-2.0/include/glibconfig.h for your compiler [23:51] Action: mathrick|code thinks X is abused seriously in acronyms [23:51] <ds-work> Company: argh. you're right [23:52] <ds-work> Company: it's debian, so it's for gcc-3.2 [23:52] <ds-work> that should be fixed, though [23:52] <Company> ds-work: what's gst_pad_alloc_buffer supposed to return when there's no alloc function? [23:52] <Company> ds-work: special case: when the pad is unlinked? [23:53] <ds-work> the same as gst_buffer_new_and_alloc() [23:56] <Company> it returns NULL here [23:56] <Company> if (!peer) return NULL; [23:56] <ds-work> that's wrong [23:56] <ds-work> fix it please [23:56] <Company> i'll fix it [00:00] --- Sat Jan 17 2004 [00:00] fimp ([email protected]) joined #gstreamer. [00:00] <fimp> hi [00:01] <Uraeus> hi fimp [00:03] <fimp> uhm, I recently heard of gstreamer, and the website says it is a framework for media-players. [00:03] <fimp> why is gstreamer needed? [00:03] <fimp> is mplayer not enough, or, am I asking stupid questions? :) [00:03] <Company> no mplayer is not enough [00:03] Action: wheels votes for door number 2. :-) [00:03] <fimp> why not? [00:03] <Company> mplayer doesn't encode, transcode, or work with midi [00:03] <fimp> but cant you encode with other tools? [00:03] <Company> that's the problem [00:03] <ds-work> it's a media framework, not a framework for media-players [00:03] <Company> you need to reinvent the wheel everytime [00:04] <Zeenix> fimp: if stupid questions were not welcomed here, i woud'nt be here :) [00:04] <Company> so instead you write a generic framework for media manipulation [00:04] <wheels> fimp: i.e. playing media is just a special case of the more general "doing stuff with media" ;-) [00:04] <fimp> reinvent? why? if you have mplayer and an encoding-tool and icecast(or?) what else do you need? [00:04] yippi ([email protected]) left irc: "Client exiting" [00:05] <fimp> Zeenix, cool :) [00:05] <ds-work> mplayer doesn't have non-linear editing [00:05] <fimp> whats that? [00:05] <Company> mplayer doesn't do video effects [00:06] <wheels> You guys are video weenies. ;-) [00:06] <fimp> video effects? but mplayer is not meant for editing videos? [00:06] <Company> that'sd the problem [00:06] <Uraeus> fimp: GStreamer is about creating a competitor to DirectShow and Quicktime, having lots of different libraries can't do that [00:07] <Company> gstreamer is not about creating a competitor to ds and quicktime, gstreamer is about creating the perfect media framework [00:07] <wheels> fimp: Simply put MPlayer can't easily be used by other applications -- it's not made to be used in a jukebox or a webpage with embedded video. Not that this hasn't been tried, but it's always ugly. [00:07] <Company> it just happens to be in the same realm as ds and qt ;) [00:07] <Company> gnight [00:07] <wheels> Company: Feeling ill? [00:07] <fimp> hmm, mkay, I see [00:07] Company ([email protected]) left irc: Read error: 104 (Connection reset by peer) [00:08] <fimp> so gstreamer is also an open streaming-technology? [00:08] <wheels> fimp: The "streaming" is really kind of a misnomer -- or it's at least not what most people understand with "streaming" [00:09] <fimp> what do you mean with streaming then? [00:09] <wheels> fimp: Well, GStreamer treats media (internally) as streams -- it's not about streaming over a network. [00:10] <fimp> okay, [00:10] <wheels> fimp: A more accurate name might be Unix Media Swiss-Army Knife :-) [00:10] <fimp> but network-streaming is needed to? [00:10] <fimp> right? [00:10] <fimp> k [00:11] <Zeenix> Uraeus: sh... dont tell him who is responsible for network-streaming issues.. :) [00:13] <fimp> :) okay [00:13] <fimp> thank you for your time :) [00:14] <mathrick|code> fimp: best answer would be: net streaming is possible w/ GStreamer ;) [00:14] <taaz> ds-work: forget to undo that queue notify thing? [00:14] <mathrick|code> fimp: and if someone feels it's needed, he/she can easily add it, giving instant net capability to almost all GStreamer apps [00:14] <ds-work> taaz: yes, i did [00:15] <taaz> hmm.. new jack debs out. guess i have to update gst. [00:15] <mathrick|code> fimp: that's what it's all about - you write apps, and GStreamer cares about fiddling with media [00:17] <fimp> k, cool :) [00:17] edmack ([email protected]) joined #gstreamer. [00:18] <edmack> hi, I found a bug in gstreamer-preferences, although I cannot find an entry for it in bugzilla.. perhaps its already been fixed. When you close the tester X windows before clicking 'Done' it happily crashes [00:19] Zeenix ([email protected]) left irc: "Client Exiting" [00:20] <jimmy_dean> mathrick|code: I've got a cool suggestion that could pretty easily bring a very similar concept to GStreamer for networking as just like GStreamer treats media...I already discussed it with the author...it would pretty much require just a wrapper in his library: www.omnifarious.org/StrMod/ [00:20] <mathrick|code> The application 'gstreamer-properties' lost its connection to the display :0.0; [00:20] <mathrick|code> most likely the X server was shut down or you killed/destroyed [00:20] <mathrick|code> the application. [00:20] <mathrick|code> not really crash, just not careful enough ;) [00:21] <mathrick|code> jimmy_dean: sure, it's rather universal. If it's cool enough, it'll probably end up being used by gst :) [00:21] <edmack> <mathrick|code>: happy crash in my books :) [00:21] <jimmy_dean> mathrick|code: I think you won't find a better coder than the guy who wrote this [00:21] <mathrick|code> s/\(universal\)/\1 concept/ [00:21] <jimmy_dean> mathrick|code: he helped design the bittorrent p2p software (though not the primary author) [00:22] <mathrick|code> jimmy_dean: remind me after I finish my mms:// protocol library ;) [00:22] <jimmy_dean> mathrick|code: what is mms? [00:22] <jimmy_dean> multimedia stream? [00:22] <mathrick|code> jimmy_dean: M$ shite used to stream video, asf mostly [00:22] <jimmy_dean> ahh, cool [00:22] <jimmy_dean> mathrick|code: how complete is that? [00:22] <Uraeus> mathrick|code: happy to hear you are working on that, I was missing that today :) [00:23] <mathrick|code> Uraeus: actually, little bit more, I'm really busy now. On monday i plan to sort out manpages, and then really start mms :) [00:24] <Uraeus> mathrick|code: hmm, think you are the first developer I met who started on the manpage then did the program for it :) [00:25] <jimmy_dean> mathrick|code: are you just using basic C sockets to connect to the net for asf streaming? [00:25] <mathrick|code> Uraeus: nonono, gst-launch one :) [00:26] <mathrick|code> jimmy_dean: I'm using basic code stealing-fu ;) [00:26] foser ([email protected]) joined #gstreamer. [00:26] <jimmy_dean> mathrick|code: lol, ok...well you wouldn't have to do much to use StrMod...I currently use it successfully in a server daemon that I wrote [00:27] <mathrick|code> jimmy_dean: underlying are sockets of course, but it's a (very little) bit more higher level [00:27] <jimmy_dean> mathrick|code: ok [00:27] <mathrick|code> jimmy_dean: is it possible to just convert arbitrary socket using app to StrMod? [00:27] fimp ([email protected]) left irc: "Leaving" [00:27] edmack ([email protected]) left irc: "Leaving" [00:28] <mathrick|code> jimmy_dean: like, I need to be able to choose i/o impl dynamically, due to original authors (xine) requirements [00:28] <Uraeus> jimmy_dean: would you or the author of StrMod be interested in working with us on making a plugin out of StrMod for GStreamer? [00:28] <jimmy_dean> mathrick|code: it doesn't work that way, just as GStreamer uses pads to toss media data around in streams, so does StrMod handle network data with sockets [00:28] <mathrick|code> jimmy_dean: yep, yep, bring'im here! :) [00:29] <jimmy_dean> mathrick|code: actually, he's in #StrMod on freenode [00:29] <mathrick|code> jimmy_dean: suspected that, will be more thinking then ;) [00:29] <jimmy_dean> and I'd be happy to help in any way that I could, he said even I'd be able to do it...wouldn't be that hard [00:29] <mathrick|code> jimmy_dean: nick? [00:29] <jimmy_dean> right now it's Omni|Working [00:29] <jimmy_dean> but normally Omnifarious [00:30] <jimmy_dean> he's in #sockets too [00:30] <jimmy_dean> he started both channels [00:30] <mathrick|code> i think i've seen it before [00:30] <mathrick|code> jimmy_dean: both? [00:30] <jimmy_dean> yeah, do #StrMod for library discussion though [00:30] <mathrick|code> ahh, #sockets :) [00:37] <Uraeus> ok, time for me to sleep, night [00:37] Uraeus ([email protected]) left irc: "Client exiting" [00:43] <ds-work> cool, videobalance is visually identical to xvimagesink's color balancing [00:46] <mathrick|code> yay, we're better than 95% of player apps then :) [00:46] <mathrick|code> or maybe even more [00:47] thaytan ([email protected]) joined #gstreamer. [00:47] natyaht ([email protected]) joined #gstreamer. [00:47] thaytan ([email protected]) left irc: Client Quit [00:47] <mathrick|code> hi natyaht [00:47] Nick change: natyaht -> thaytan [00:47] <thaytan> good morning [00:47] <mathrick|code> thaytan: you must be kidding, it's past midnight here :) [00:49] <thaytan> that's morning..... [00:49] <ds-work> mathrick|code: thaytan thinks it [00:49] <ds-work> mathrick|code: thaytan thinks it's summer, too [00:50] Nick change: harshyWork -> harshy [00:50] <mathrick|code> aussies are wicked anyway ;) [00:51] <thaytan> <- proud :) [00:54] mids ([email protected]) joined #gstreamer. [00:55] mids ([email protected]) left #gstreamer. [00:58] <taaz> ChrisHJW: ping? [01:02] ChrisHJW ([email protected]) left irc: Read error: 104 (Connection reset by peer) [01:02] iain ([email protected]) left irc: "leaving" [01:05] iain ([email protected]) joined #gstreamer. [01:20] Action: wheels finds some of ds-work's evil compiler busting macros. :-) [01:22] <ds-work> ? [01:22] Action: ds-work points at Company [01:22] <ds-work> I think I'll buy a new laptop this weekend [01:22] <wheels> ds-work: cvsblame points at you. :-) [01:24] Action: ds-work wonders if wheels will share the info [01:25] <wheels> gstffmpegcodecmap.c:94: parse error before `,' [01:25] <wheels> gstffmpegcodecmap.c:121: parse error before `,' [01:25] <wheels> [... about 10 lines more ...] [01:25] <wheels> I'm looking at the preprocessor output and really not seeing how it's getting to the output from the macro... [01:26] <jimmy_dean> ds-work: for the GstData that gets turned into a new GstBuffer in my chain function, is the 2 bytes that lowest chunk of data that the media data can be broken into? Meaning, do I just take the GstBuffer that comes in and directly cast that to a float? [01:27] <jimmy_dean> s/that/the [01:28] mxpxpod ([email protected]) left irc: "Guns kill people as much as spoons made Rosie O'Donnell fat.." [01:28] <ds-work> wheels: oh, right [01:29] <ds-work> wheels: I fixed it for everyone else, forgetting about gcc-2.95's stupid variadic macro stuff [01:29] <mathrick|code> jimmy_dean: it probably depends on type of data you're reading [01:30] <wheels> ds-work: Well the funny thing is that with: [01:30] <wheels> "framerate", G_TYPE_DOUBLE, 1. * context->frame_rate / \ [01:30] <wheels> context->frame_rate_base, \ [01:30] <wheels> ##props, NULL) \ [01:30] <wheels> ds-work: It's completely dropping the second line... [01:30] <jimmy_dean> mathrick|code: well right now I'm only using int 16-bit stereo caps [01:30] <wheels> ds-work: ...except for the comma -> "framerate", ((GType) (( 15 ) << (2) )), 1. * context->frame_rate / , [01:31] <mathrick|code> jimmy_dean: so, you cant get below 2 bytes for int16 i suppose [01:32] <jimmy_dean> mathrick|code: so then I could directly cast the GstBuffer data per each chain function call to a float and send it in to the fast fourier transform function [01:32] mxpxpod ([email protected]) joined #gstreamer. [01:32] <ds-work> wheels: you need to move the comma to the next line: [01:32] <ds-work> , ## props , NULL [01:33] <ds-work> or possible put a space before the comma [01:33] <mathrick|code> jimmy_dean: hmm, better ask ds-work :) [01:34] <jimmy_dean> ds-work: any comment on that? [01:34] <ds-work> gcc-2.95 interprets '##' to mean "delete the last non-whitespace chunk" [01:34] <wheels> ds-work: doesn't seem to help [01:34] <ds-work> jimmy_dean: you can't convert a GstBuffer to float. You can convert an int to a float [01:35] <ds-work> jimmy_dean: which means if you have 100 ints in the buffer, you need to convert 100 ints to 100 floats [01:35] <jimmy_dean> ds-work: ok, how do I get the GstBuffer data in int format? [01:35] <ds-work> GST_BUFFER_DATA() returns a pointer to the data [01:35] <jimmy_dean> ds-work: ok, how do I iterate over it then by each element? [01:37] pb_ ([email protected]) left irc: "Client exiting" [01:37] <jimmy_dean> ds-work: is it an array? [01:37] <ds-work> yes [01:37] <jimmy_dean> ds-work: that i can loop over 0 to GST_BUFFER_SIZE(buf)/2 elements? [01:38] <mathrick|code> jimmy_dean: GST_BUFFER_SIZE(buf)/sizeof(datatype) sounds little bit safer [01:39] <jimmy_dean> mathrick|code: where does datatype come from? [01:39] <jimmy_dean> mathrick|code: Company told me to start with just a really hardcoded form, since this is my first plugin [01:39] <mathrick|code> jimmy_dean: datatype is int16 in you case [01:39] <mathrick|code> jimmy_dean: just general style issue :) [01:39] <mathrick|code> s/issue/advice/ [01:40] <jimmy_dean> mathrick|code: right, eventually of course I want to do that [01:40] <jimmy_dean> mathrick|code: if I take in float data in the future, no casting is needed then I'm assuming since the fourier transform is expecting floats anyway [01:41] <mathrick|code> jimmy_dean: if you caps say so, there's should be no need to cast anything [01:42] <jimmy_dean> mathrick|code: right [01:43] Action: wheels just disables the ffmpeg build for now -- will revisit this later... [01:43] sub_pop ([email protected]) left irc: "Client exiting" [01:51] water ([email protected]) joined #gstreamer. [02:06] <jimmy_dean> ds-work: can I do this to convert the data to float like the volume plugin does (this code is from the volume plugin): [02:06] <jimmy_dean> data = (gfloat *)GST_BUFFER_DATA(out_buf); [02:06] <jimmy_dean> num_samples = GST_BUFFER_SIZE(out_buf)/sizeof(gfloat); [02:07] <ds-work> that doesn't convert anything [02:07] <jimmy_dean> ds-work: well isn't data a float buffer of out_buf then? [02:08] <jimmy_dean> not convert but cast, err [02:08] <ds-work> no, it's a pointer to float [02:08] <mathrick|code> jimmy_dean: you'd only get bitwise representation of floats read in as ints [02:08] <mathrick|code> jimmy_dean: not nice thing to do ;P [02:08] <jimmy_dean> mathrick|code: ok, why does the volume plugin do this then? [02:09] <mathrick|code> jimmy_dean: no clue, ask author ;P. Maybe there is some reason [02:09] <ds-work> it doesn't [02:09] <jimmy_dean> mathrick|code: well this is what the plugin does with the data then which is I assume what increases or decreases the volume [02:09] <jimmy_dean> while(GST_DPMAN_PROCESS(filter->dpman, i)) { [02:09] <jimmy_dean> data[i++] *= filter->real_vol_f; [02:10] <ds-work> jimmy_dean: pick a better plugin, like int2float [02:10] <jimmy_dean> ds-work: ok [02:13] bluejay ([email protected]) joined #gstreamer. [02:13] Miko5881 ([email protected]) joined #gstreamer. [02:13] <jimmy_dean> ds-work: so I want to do what that plugin does basically [02:13] <jimmy_dean> ds-work: for (i=0; i<this->numsrcpads; i++) { [02:13] <jimmy_dean> for (j=0; j<to_process; j++) [02:13] <jimmy_dean> data_out[i][j] = ((gfloat)data_in[(j*channels) + (i%channels)]) / 32767.0; [02:13] <jimmy_dean> data_out[i] += to_process; [02:13] <jimmy_dean> } [02:14] <jimmy_dean> why is data_out multidimensional though? [02:16] <mathrick|code> int nsamples = GST_BUFFER_SIZE(data)/sizeof(int16); [02:16] <mathrick|code> int *intbuf = calloc(nsamples * sizeof(int16)); [02:16] <mathrick|code> while(nsamples--) [02:16] <mathrick|code> intbuf[nsamples] = (int) GST_BUFFER_DATA(data)[nsamples]; [02:16] <mathrick|code> should be correct I hope [02:16] <jimmy_dean> mathrick|code: I want to cast to float though [02:17] <mathrick|code> ahh, should be (float) [02:17] <jimmy_dean> k [02:17] <mathrick|code> and calloc(nsamples, sizeof(int16)) [02:18] <mathrick|code> should use more sophisticated allocation scheme, but that can be done later [02:19] <jimmy_dean> mathrick|code: actually for the float array I'll be using a malloc from the FFTW library eventualyl [02:20] <mathrick|code> I messed int's and float's totally, it seems, but code is basically correct :_ [02:20] <jimmy_dean> that's ok, I fixed that [02:21] <jimmy_dean> mathrick|code: ok, that compiled...I assumed you meant gint16 and not int16 [02:22] <jimmy_dean> mathrick|code: except that that code segfaults :) [02:22] <mathrick|code> jimmy_dean: is it on my code? [02:23] <jimmy_dean> mathrick|code: yeah [02:23] <jimmy_dean> mathrick|code: I don't have any code yet :) [02:23] <jimmy_dean> mathrick|code: it's basically just a pass through plugin otherwise from the template [02:23] <mathrick|code> int nsamples = GST_BUFFER_SIZE(data)/sizeof(float); [02:23] <mathrick|code> nono, wait [02:23] <iain> hmm, interesting question: [02:24] sub_pop ([email protected]) joined #gstreamer. [02:24] <iain> do people who use right to left writing systems need a sample editor that draws the sample from right to left? [02:24] <mathrick|code> int *float = calloc(nsamples, sizeof(float)); <-- you corrected that? [02:24] <mathrick|code> s/*float/*floatbuf/ [02:25] <mathrick|code> iain: probably [02:25] <iain> I should probably make marlin do that then :) [02:25] <jimmy_dean> mathrick|code: yeah, ok [02:25] <mathrick|code> iain: and then Asians would need top to bottom one :) [02:25] <jimmy_dean> mathrick|code: ok, that doesn't segfault [02:26] <mathrick|code> and is it mongolian that uses bottom to top? ;) [02:26] <jimmy_dean> mmm, mongolian barbeque...good place to eat :) [02:26] <iain> mongolian bbq closed down here :( [02:26] <jimmy_dean> iain: yeah, they over charge in my opinion [02:27] <mathrick|code> never tried that, it involves lots of meat I assume? [02:27] <ds-work> iain: at least in scientific fields, data is usually plotted left to right [02:27] <ds-work> iain: i.e., with the same axes [02:27] <iain> ds-work: even for right-to-left countries? [02:27] <ds-work> iain: yes [02:27] <iain> hmm, ok [02:28] <mathrick|code> ds-work: it's because they are always in positive directions [02:28] <ds-work> iain: one thing I could never find out, though -- in RtoL locales, do the forward and reverse browser buttons point in the opposite direction? [02:28] <mathrick|code> heh :) [02:28] <ds-work> they should [02:28] <iain> hmm, I don't think so :) [02:28] <mathrick|code> should probably [02:28] <iain> probably, yeah [02:29] <iain> file a bug [02:29] <ds-work> honestly, I don't care [02:29] <ds-work> I'll let an israeli file the bug [02:29] <ds-work> or a palesinian [02:29] <iain> they've probably got more important things to work out [02:30] <ds-work> ya think? [02:30] <iain> Okay Arafat, lets get you and Sharon together and sort this out [02:30] sub_pop ([email protected]) left irc: "Client exiting" [02:31] <iain> Should the forward and back button icons be switched around for r-t-l languages? [02:31] <iain> Maybe that can be the issue that brings them together in harmony and lets them see that they have things in common and should work together [02:33] Action: ds-work starts a browser in ar_TN.UTF-8 [02:34] <mathrick|code> mathrick@megumi:~/Desktop/Stellvia OST$ LANG=he_IL epiphany [02:34] <mathrick|code> [02:34] <mathrick|code> (epiphany-browser:12373): Gtk-WARNING **: Locale not supported by C library. [02:34] <mathrick|code> Using the fallback 'C' locale. [02:34] <iain> oh, so thats how you do it [02:35] <iain> hmm, looks weird... [02:35] <iain> the vertical ruler is on the other side... [02:35] <ds-work> indeed, they're in the opposite direction [02:36] <iain> http://62.188.60.41/~iain/marlin-r2l.png [02:36] <ds-work> hmmm, this is a problem for the plotting program I'm writing [02:37] <iain> I think I'll swap the sample-view round...shouldn't be that hard to do [02:38] <iain> then I'll find someone who uses r2l and ask them [02:38] <ds-work> positive time should probably still be toward the right [02:39] Action: ds-work grumbles about the lack of hebrew translation in epiphany [02:40] <iain> yey, 17 things on my TODO list now for when my exams end at 5:30 tomorrow [02:41] <mathrick|code> anime.swat.pl/~mathrick/epi_r2l.png <-- ha, it's not swapped [02:41] <mathrick|code> i.e. history buttons aren't [02:43] <ds-work> history buttons should be [02:43] sub_pop ([email protected]) joined #gstreamer. [02:43] <ds-work> because the previous page in a book is to the right [02:43] <iain> but previous in time might still be to the left ... [02:44] <ds-work> only on a graph [02:44] <ds-work> note that browsers it's "previous as a book", not "previous in time" [02:44] <iain> I've never thought of it in that way [02:44] <iain> I've always thought of it as in time [02:45] <ds-work> then the forward button never makes sense [02:45] <iain> true [02:45] <iain> which might be why I never use it [02:45] <iain> ever [02:45] <ds-work> it wasn't the wisest UI decision ever made [02:45] <mathrick|code> http://anime.swat.pl/~mathrick/galeon_r2l.png <-- it doesn't swap toolbars at all [02:46] <iain> ds-work: but now we've got to live with it being shoved into ever application ever [02:46] <ds-work> mathrick|code: galeon is broken [02:46] <mathrick|code> ds-work: why? i like forward buttons [02:47] <mathrick|code> ds-work: but still more usable than epi [02:47] Action: mathrick|code doesn't like epi at all [02:47] <ds-work> mathrick|code: galeon doesn't follow HIG [02:47] <ds-work> so I'm not surprised that it has broken arrows [02:48] <ds-work> mathrick|code: just because you like a UI feature doesn't mean it's good [02:48] iain ([email protected]) left irc: "broken arrooooooww" [02:48] <mathrick|code> ds-work: not entirely true, it just has some HIG issues, but follows it in general [02:48] <ds-work> I happen to like and use the forward button as well [02:49] <ds-work> last I heard, it was "we follow the HIG except when we disagree with it" [02:50] <mathrick|code> ds-work: i agree they should adhere a little bit more, but nevertheless it's the most usable browser available [02:50] <mathrick|code> epi certainly isn't usable for real world [02:51] <ds-work> funny, I have no issues with epiphany. Perhaps it's because I want a simple browser [02:51] <ds-work> I don't need features [02:51] <mathrick|code> ds-work: two things: no gestures, no scroll-on-MMB [02:51] <mathrick|code> lack of these just disqualifies browser for me [02:52] <ds-work> I do not find either useful [02:52] <mathrick|code> ds-work: they're essentail [02:52] <mathrick|code> s/tail/tial/ [02:52] <ds-work> the fact that browsers existed for 10 years without them indicates that they're not essential [02:53] <mathrick|code> ds-work: the fact that 8086-286 were sold w/o mmu indicates it's not essential? [02:54] <mathrick|code> at least, I don't see a reason to give up gestures *now*, when they're already invented [02:54] <ds-work> then don't use eiphany [02:54] <mathrick|code> ds-work: i don't :) [02:55] <ds-work> but don't pretend that epiphany is useless [02:56] <mathrick|code> well, it's still waaaaay better than IE, that's for sure. and probably pretty good overall, it's just galeon that's so much better :) [02:56] <mathrick|code> and than Konqueror, for that matter, too [02:57] <ds-work> IE still renders pages about 5 times faster, though [02:57] <ds-work> (not a galeon problem, though) [02:57] <mathrick|code> ds-work: i don't think so, it onluy does for non-standard dynamic content [02:57] walters ([email protected]) left irc: "=> paycheck" [02:58] <ds-work> um, yes [02:58] <ds-work> when I use IE, I think "damn, this is fast" [02:58] <ds-work> consistently [02:58] <mathrick|code> I agree that gecko could see some improvement in heavily dynamic things, but for not so dynamic ones, it's faster [02:58] sublett ([email protected]) left irc: "I like food, food is good!" [02:59] <water> IE does the http-cheating, that's most of the reason [02:59] <mathrick|code> water: you mean, HTTP pipelining? [02:59] <water> why did i say anything? [02:59] <water> bye [02:59] water ([email protected]) left #gstreamer ("The water has parted."). [02:59] <mathrick|code> huh? he's easily scared :) ------------------------------------------------------- The SF.Net email is sponsored by EclipseCon 2004 Premiere Conference on Open Tools Development and Integration See the breadth of Eclipse activity. February 3-5 in Anaheim, CA. http://www.eclipsecon.org/osdn