[gst-devel] Daily IRC logs

wim.taymans at chello.be wim.taymans at chello.be
Tue May 15 06:28:12 CEST 2001

[06:40] Nick change: aj_uni -> ajmitch
[06:40] <omega_> yo
[06:41] <walken> yop
[06:41] <ajmitch> hi
[06:41] <ajmitch> just came back from a fun-filled afternoon of chemistry ;)
[06:41] <omega_> neat
[06:41] <omega_> blow anything up?
[06:41] <ajmitch> nah, was all computer-based analysis :(
[06:42] <omega_> darn
[06:42] <omega_> chemistry isn't fun inless you can either a) burn things, or b) blow things up (which is just a special case of a, actually...)
[06:43] <ajmitch> hehe, i know
[06:45] <omega_> grr, no wtay
[06:45] Action: omega_ has questions about refcounting
[07:15] Nick change: ajmitch -> ajbusy
[07:50] steveb (steveb at node1ee0c.a2000.nl) joined #gstreamer.
[07:50] <omega_> yo
[07:50] <steveb> yo
[07:50] Action: omega_ is confused
[07:50] <steveb> ?
[07:50] <omega_> refcounting debug isn't adding up (or subtracting) right
[07:51] <steveb> ah
[07:51] <omega_> nor is the sequence sane
[07:52] <omega_> ref to 2, sink to 1
[07:52] <omega_> then an unref from 2 to 1
[07:52] <omega_> then lots and lots of stuff, a shutdown, destroy, then an unref from 1->0
[07:52] <omega_> all in completely the wrong order
[07:52] Action: steveb is getting rsi from typing gstdynparmsgrp
[07:53] <omega_> hehehe
[07:53] <steveb> need a friendlier name
[07:53] <walken> hehehe
[07:53] <omega_> you need an editor with tab completion
[07:53] <omega_> or better yet, a DSP with ESP <g>
[07:53] <steveb> VB for apps has that
[07:53] <walken> I knew someone who wrote a lot of asm and had no imagination finding out good label names
[07:53] <omega_> a1:
[07:53] <omega_> b3:
[07:54] <walken> so he would just bang on his keyboard and come up with names like alhalnfessdalknalfs
[07:54] <walken> and copy/paste this everywhere
[07:54] <steveb> i knew someone who did that!
[07:54] <omega_> hrm, I think I know who you're talking about.  he's called 'gcc' <g>
[07:54] <walken> no need to say his code was not very readable :)
[07:54] <steveb> dsjfhals=lkahfl+1
[07:54] <omega_> sure he wasn't just a lapplander or something?
[07:55] <omega_> maybe that all makes sense to him
[07:55] <steveb> the one i knew was from Atlanta
[07:55] <omega_> maybe not ;-)
[07:55] <walken> no he was french :)
[07:55] <walken> pretty good coder actually
[07:55] <omega_> ah, same difference <g>
[07:55] Action: omega_ runs
[07:55] Action: walken runs faster
[07:55] Action: omega_ ducks
[07:55] <walken> hehe
[07:56] Action: walken working on ac3dec
[07:56] Action: omega_ causes walken to pitch forward over omega_'s back, onto the ground
[07:56] Action: omega_ goes back to being confused about refcounting
[07:57] <steveb> anyway, gstdynparmsgrp. i need something shorter with more vowels.  the functions in it are basically all of the element side bits of dynparms
[07:58] <omega_> gstdpg <g>
[07:58] <walken> cal it aeiou
[07:58] <walken> shorter and more vowels
[07:58] Action: omega_ bangs on the keyboard and comes up with a name <g>
[07:59] <steveb> gee, thanks for the help :p
[07:59] Action: omega_ banks walken's head on the keyboard to come up with a name ;-)
[08:00] <omega_> oh boy.  this stack doesn't look good
[08:00] <walken> ouch
[08:01] <steveb> maybe i'll use gst_dpg_ for funcs dpg for the instance name and leave the rest as it is
[08:02] <omega_> sounds ok
[08:03] <steveb> anyway, commute beckons
[08:03] <omega_> bleck
[08:03] <steveb> later
[08:03] <omega_> l8r
[08:03] steveb (steveb at node1ee0c.a2000.nl) left irc: [x]chat
[08:10] <omega_> ok, the stack looks ok, I'm just being paranoid
[08:11] <omega_> and there's actually a good chance that it indicates that I'm not quite implementing cothreads just right on x86
[08:12] <omega_> in fact...  I'm pretty sure I'm not
[08:14] taaz (dlehn at left irc: Ping timeout for taaz[]
[08:14] <omega_> there, better
[08:14] <omega_> s/call/jmp/
[08:15] ajbusy (ajmitch at p11-max6.dun.ihug.co.nz) left irc: Ping timeout for ajbusy[p11-max6.dun.ihug.co.nz]
[08:32] ajbusy (ajmitch at p11-max6.dun.ihug.co.nz) joined #gstreamer.
[09:36] steveb (stevebaker at 212186169160.chello.com) joined #gstreamer.
[09:39] <omega_> yo
[09:41] Action: omega_ downloads from www.nr.com
[09:41] <steveb> yo
[09:42] <omega_> autoplug is working better and better ;-)
[09:42] <omega_> the only think left is to plug in the actual autoplug call, afaict
[09:43] <omega_> at least for my current test scenarios
[09:43] <steveb> NR looks cool
[09:43] <omega_> yeah, wget -r -l 1 http://lib-www.lanl.gov/numerical/bookcpdf.html
[09:43] <steveb> [3.1] polint polynomial interpolation 
[09:43] <steveb> [3.2] ratint rational function interpolation 
[09:43] <steveb> [3.3] spline construct a cubic spline 
[09:43] <steveb> [3.3] splint cubic spline interpolation 
[09:43] <steveb> [3.4] locate search an ordered table by bisection 
[09:43] <steveb> [3.4] hunt search a table when calls are correlated 
[09:43] <steveb> [3.5] polcoe polynomial coefficients from table of values 
[09:43] <steveb> [3.5] polcof polynomial coefficients from table of values 
[09:43] <steveb> [3.6] polin2 two-dimensional polynomial interpolation 
[09:43] <steveb> [3.6] bcucof construct two-dimensional bicubic 
[09:43] <steveb> [3.6] bcuint two-dimensional bicubic interpolation 
[09:43] <steveb> [3.6] splie2 construct two-dimensional spline 
[09:43] <steveb> [3.6] splin2 two-dimensional spline interpolation 
[09:43] <steveb> thats what we like to see!
[09:44] Action: omega_ waits for wget to get to 13.10: wavelets
[09:47] <omega_> this things at least 25MB....
[09:47] <walken> hehe
[09:48] Action: walken remembers when he had to implement 11.7
[09:48] Action: walken thinks this is a really weird algorithm
[09:48] <walken> converges very fast, you just never understand quite why
[09:48] <omega_> neat <g>
[09:48] Action: omega_ is lost
[09:50] <walken> hmmmm
[09:50] <walken> probably wasnt 11.7
[09:50] <omega_> * 11.7 Improving Eigenvalues and/or Finding Eigenvectors by Inverse Iteration 493
[09:50] <walken> well it was an iterative method to find eigenvalues
[09:51] <walken> actually I couldnt find any non-iterative methods at all
[09:51] <walken> the thing is I never saw it take more than 3 iterations
[09:51] <omega_> neat
[09:54] <omega_> hrm.  page 593 claims that one should 'immediately' see that the inverse transform matrix for wavelets using the Daubechies coeffs require that c0,c1,c2,c3 follow certain rules: their squares total 1, and c2*c0+c3*c1 = 0
[09:54] <omega_> that wasn't immediately obvious to me, somehow
[09:55] <walken> hehe
[09:55] <omega_> oh, and c3 - c2 + c1 - c0 = 0, and 0c3 - 1c2 + 2c1 - 3c0 = 0 too
[09:56] <omega_> but of course, what an idiot am I to miss such obvious things!
[09:56] Action: walken thinks you should see this immediately
[09:56] Action: walken done with ac3 coding for today
[09:56] <walken> simplified the parsing a bit
[09:57] <omega_> know where the problems are yet with higher bitrates, and such?
[09:57] <walken> problems ?
[09:57] <walken> what problems
[09:57] <walken> you have streams that dont play right with 0.6.1 ?
[09:57] <omega_> I've heard that at higher bitrates ac3dec sounds horrible
[09:57] <walken> if so send them to me
[09:57] <omega_> actually I have had serious problems with CVS, but they're more breakup problems
[09:57] <omega_> testing, sec.
[09:58] <walken> dont use cvs
[09:58] <walken> use 0.6.1
[09:58] <omega_> click, click, click
[09:58] <walken> cvs is broken
[09:58] <omega_> ok, you're fixing it?
[09:58] <walken> yeah - basically starting from 0.6.1 :)
[09:58] <omega_> isn't even the right rate <g>
[09:58] <omega_> ok, I'll use 0.6.1 then for now <g>
[09:58] <walken> cvs contains all the patches aaron had bounced
[09:58] <omega_> doh
[09:59] Action: omega_ asks to have permission to shoot at will
[09:59] <walken> welcome to oms cvs :)
[09:59] <omega_> no thanx <g>
[09:59] <walken> shoot at who ?
[09:59] <omega_> whoever committed those patches
[09:59] <walken> heheh
[10:01] <walken> ok
[10:01] <walken> going for lunch
[10:01] <omega_> huh?
[10:01] <walken> please email me if you find any bugs
[10:01] <walken> errr
[10:01] <walken> going for midnight fix
[10:01] Action: omega_ thought walken was in the same timezone as omega_
[10:01] <walken> or something
[10:01] <walken> where are you again ?
[10:01] <omega_> portland, OR
[10:02] <walken> CA here
[10:02] <omega_> right, same tz <g>
[10:02] <omega_> lunch was 12+hrs ago, walken
[10:02] Action: walken says midnight fixes are totally normal for a programmer :)
[10:02] <omega_> yes, but not post-midnight 'lunch'es, afaik
[10:02] <omega_> whaddya think I've been doing all this time <g>
[10:02] <omega_> you think this sledgehammer is just for looks??
[10:03] <walken> no comment :p
[10:03] Action: omega_ goes back to smacking some sense into his code
[10:04] <walken> ok
[10:04] <walken> but tell me if you have any streams that bug 0.6.1
[10:04] <omega_> walken: ignore the screams
[10:04] <omega_> ok, will do
[10:05] walken (foobar at c1583255-a.smateo1.sfba.home.com) left irc: midnight fix
[10:12] taaz (dlehn at joined #gstreamer.
[10:12] <omega_> yo
[10:12] <omega_> oooh, reaction down to 2sec <g>
[10:12] <omega_> is this a real taaz or a ghost taaz?
[10:14] Action: omega_ thinks it's a ghost taaz ;-(
[10:15] <steveb> ooo
[10:16] Action: omega_ just saw something amazing
[10:16] <omega_> out of 28,168 messages, a search for subject contains 'gst-' took ~1sec
[10:17] <omega_> $MAIL is 144MB, pine has an RSS of 33MB
[10:17] Nick change: ajbusy -> ajmitch
[10:18] arik (arik at sdn-ar-001waseatP066.dialsprint.net) joined #gstreamer.
[10:18] <omega_> yo
[10:18] <arik> lo all
[10:18] <omega_> darn, I though I'd get to sleep soon
[10:18] <arik> hey
[10:18] <ajmitch> hey ;)
[10:18] <arik> heh
[10:18] <ajmitch> omega_: you don't get away that easily...
[10:18] <arik> ajmitch: hey
[10:18] <omega_> yeah I can
[10:18] <omega_>  /quit
[10:18] <arik> do i need some new libraries with the latest gstreamer?
[10:18] <omega_> depends....
[10:19] <arik> cause gstplay suddenly core dumps for me 
[10:19] <arik> with some interesting errors
[10:19] <omega_> the vast majority of dependencies are optional, only affecting plugins
[10:19] <arik> oh wait i bet i know what is wrong
[10:19] <omega_> -register?
[10:19] <arik> *nod*
[10:19] <omega_> hrm, we need to figure out why that's so fragile
[10:19] <ajmitch> heh
[10:19] <ajmitch> fragile is not the word ;)
[10:20] Action: omega_ smacks ajmitch again <g>
[10:20] <steveb> can a register be forced if it is required?
[10:20] <arik> nope
[10:20] <arik> still crashed
[10:20] <omega_> I thought that's what happened, but looking at the code a few days ago, it seems not
[10:20] <omega_> what're the errors?
[10:20] <arik> avidecoder: could not load support library: 'gstriff'
[10:20] <arik> mpeg_play:: could not load support library: 'gstgetbits'
[10:20] <omega_> hmm, cd libs/riff;make
[10:20] <omega_> cd libs;make
[10:20] Action: ajmitch runs cvs update
[10:21] <arik> omega_: k
[10:21] <arik> oh i get it
[10:21] <arik> dammnit
[10:21] <arik> i think i have some prefix problems
[10:21] <omega_> you're not still installing the thing, are you? I hope not...
[10:23] <arik> heh no not any more
[10:23] <arik> how does gstplay find the libs though if i am not installing?
[10:24] <omega_> --enable-plugin-srcdir
[10:24] <arik> hmm
[10:24] <omega_> a configure option that autogen.sh sets by default
[10:24] <arik> omega_: ah ok
[10:24] <omega_> compiles the build directory into the search path
[10:24] <omega_> gstplugin.c somewhere
[10:24] <arik> omega_: ah
[10:25] <omega_> it goes to the front, so if you do have it installed, the installed copies won't load because they're already loaded
[10:25] <arik> right
[10:25] <omega_> this is good, since the builddir copies are always the same or newer anyway
[10:25] <omega_> but still, don't install it <g>
[10:25] <arik> heh ;-)
[10:26] <ajmitch> yay, time for me to pull up in front of a warm glowing monitor and watch gstreamer compile ;)
[10:26] <omega_> as you probably noticed, I had a discussion with Owen and Havoc on the pkgconfig stuff necessary to build one package against another's builddir, and I'm gonna have to go implement that soon
[10:27] <omega_> I think I've convinced Owen... he wasn't too sure it'd be at all useful when I suggested it at GUADEC
[10:27] <arik> heh
[10:27] <arik> hmm
[10:27] <arik> owen is a reasonable person
[10:27] <ajmitch> i saw a little bit of discussion on osssrc/sink, you don't expect me to implement it do you? ;)
[10:27] <arik> so is havoc
[10:27] <omega_> afaict, yeah <g>
[10:27] <arik> owen is a hardass code wise though
[10:27] <omega_> heh
[10:28] <omega_> ajmitch: did I hear you voluteer? <g>
[10:28] Action: ajmitch cowers in corner
[10:28] Action: omega_ wonders when ajmitch will learn <g>
[10:28] Action: omega_ hopes never ;-)
[10:29] Action: ajmitch takes foot out of mouth
[10:29] <ajmitch> why did i ever suggest that i would look at those?
[10:29] Action: omega_ goes to find Freud
[10:30] <ajmitch> hehe
[10:30] <ajmitch> i got a psychology test tomorrow ;)
[10:30] <arik> oh good god
[10:30] <arik> the next x hours of my life are gonna suck
[10:30] <omega_> ?
[10:30] <ajmitch> arik: yes, He is good ;)
[10:30] <arik> i have been sick for a week or so
[10:30] <omega_> uh oh
[10:31] Action: omega_ too
[10:31] <arik> and now i have to update mozilla and rebuild to get back to work
[10:31] Action: ajmitch has always been a sick person
[10:31] <omega_> doh
[10:31] <arik> one week of mozilla changes, good lord ;-(
[10:31] <arik> at least i'm not sick anymore ;-)
[10:31] <omega_> oh, right.... /me has a cold too
[10:31] <arik> omega_: i have the fullscreen stuff done btw, just can't really test it as gstplay is h0rked for me atm
[10:31] <omega_> doh
[10:32] Action: omega_ is working on autoplug as fast as he can understand what's breaking
[10:32] <arik> heh
[10:32] Action: ajmitch is unfortunately not working on gstreamer atm
[10:32] <arik> omega_: ;-)
[10:32] <omega_> hrm, why is it that both arik and ajmitch have atm and I just have this lousy dsl? <g>
[10:32] Action: omega_ ducks
[10:33] <ajmitch> haha
[10:33] Action: ajmitch smurfs omega_ from his 33.6k modem
[10:33] <omega_> oh wait, dsl *is* atm <g>
[10:33] <omega_> hah, I forgot ;-)
[10:33] <arik> heh
[10:33] <arik> atm i am on 56.6 ;-P
[10:34] <omega_> you mean a 53k ;-(
[10:34] Action: arik is at his parents house for the next few weeks
[10:34] <arik> heh, yep
[10:34] <arik> max
[10:34] <omega_> I never figured that one out....
[10:34] <ajmitch> hehe
[10:35] <arik> it's for everyone's safety ;-P
[10:35] <omega_> ah, sure <g>
[10:36] Action: ajmitch wonders why gstreamer isn't at version 1.0 yet
[10:36] <ajmitch> ;)
[10:36] <arik> hah
[10:36] Action: omega_ takes yet another swing at ajmitch
[10:36] <arik> that's why
[10:36] <omega_> heheheh
[10:36] <ajmitch> omega_'s too busy taking swings at users ;)
[10:38] <arik> just you ;-)
[10:38] <omega_> yeah, stats would probably reveal that ajmitch is the most frequent target
[10:38] <omega_> hmmmm, I wonder why??
[10:38] <ajmitch> dunno
[10:38] Action: ajmitch is innocent
[10:39] <omega_> rofl
[10:40] <ajmitch> omega_: i suppose i should start trying to learn about caps negotiation then so that you stop hitting me? ;)
[10:41] <omega_> if that's what you want to tackle first...
[10:41] <omega_> remember that it'll be changing again
[10:41] <omega_> but you're aproaching it from the plugin perspective, right?
[10:41] <ajmitch> unfortunately...
[10:41] <omega_> so the concepts should remain at least somewhat the same
[10:41] <ajmitch> i want to use those plugins in an app tho
[10:42] hadess (hadess at pc2-guil2-0-cust121.gui.cable.ntl.com) joined #gstreamer.
[10:42] <omega_> yo
[10:42] <ajmitch> hey hadess
[10:42] <ajmitch> hadess: watch out, omega_ is trying to hit people again ;)
[10:42] <hadess> heya guys
[10:42] Action: hadess dodges volunteer work: "Woosh, Wooooo...."
[10:42] <ajmitch> lol
[10:43] Action: omega_ almost has dynamic autoplugging working <g>
[10:43] <hadess> excellent
[10:43] <omega_> hadess: ah, I have video of you doing that, I think <g>
[10:43] <omega_> bullet.vob
[10:43] <ajmitch> lol
[10:43] <hadess> hehe
[10:43] <hadess> i'm happy
[10:43] Action: omega_ hands hadess two bandages
[10:44] <omega_> that reminds me, anyone else pick up on a significant continuity screwup in that scene?
[10:44] <ajmitch> omega_: so where should i start looking to try and understand this mess you've created? ;)
[10:44] <omega_> hey, I didn't do capsnego....
[10:44] <hadess> i just contacted my old recruitment agency, and they will set me up an interview at redhat, down the road
[10:44] <ajmitch> omega_: which screwup? ;)
[10:44] <omega_> "Trinity, HELP!", Neo drops his two guns
[10:44] <hadess> lol
[10:45] <omega_> camera pans around Neo
[10:45] <omega_> no guns
[10:45] <arik> ok!
[10:45] <arik> well it doesn't crash anymore
[10:45] Action: ajmitch loads his copy of the matrix to see what omega_ means
[10:45] <arik> now it just prints out endless: cothread: can't switch to NULL cothread! errors
[10:45] <arik> and never shows anything
[10:45] <omega_> just look on gstreamer.net at the screenshot
[10:45] <omega_> http://gstreamer.net/matrix.png
[10:45] <omega_> arik: what kind of media?
[10:45] <arik> omega_: mpg
[10:46] <omega_> 1/2, system or video only?
[10:46] <arik> video
[10:46] <arik> er
[10:46] <arik> video/audio
[10:46] <hadess> omega_: how did you manage to take a shot there ? you were not using Xv, were you ?
[10:46] <ajmitch> omega_: hey, the first reason i was interested in gstreamer was to try and play some of the matrix ;)
[10:46] <omega_> hadess: nope
[10:46] <omega_> ajmitch: hehehe
[10:47] <omega_> hadess: that's an interesting live pipeline reconfig problem, now that you mention it
[10:47] <omega_> how to take a screengrab of something going to Xv
[10:47] <arik> hadess: how goes the itunes project?
[10:47] <ajmitch> i managed to get a shot of gstplay playing a divx file, after it had crashed ;)
[10:47] <omega_> you'd have to ask the xvideosink for the last frame in YUV, then convert it with a small standalone pipeline
[10:47] <hadess> arik: pretty well, still need some mad fixing before i can import in on gnome's cvs
[10:47] <omega_> ajmitch: poor man's freeze-frame
[10:47] <arik> hadess: ;-)
[10:48] <arik> omega_: i guess not crashing but not working is better then crashing ;-)
[10:48] <omega_> sorta
[10:48] <omega_> you're using HEAD ?
[10:48] <arik> INCSHED1
[10:48] <omega_> ok
[10:48] <omega_> doesn't surprise me
[10:48] <omega_> there are still dragons there
[10:48] <hadess> arik: best is not crashing and working <g>
[10:48] <ajmitch> omega_: yeah, that was awhile ago, when it was unstable ;)
[10:48] <arik> hadess: very true ;-)
[10:48] Action: ajmitch coughs
[10:48] <arik> omega_: ;-) i can wait ;-)
[10:48] <omega_> ajmitch: don't make me take another swing at you, boy <g>
[10:49] <ajmitch> omega_: now now, you want me to make an attempt on these plugins? ;)
[10:49] <omega_> erm, yeah ;-)
[10:49] Action: ajmitch gets out butcher knives
[10:49] Action: omega_ runs, ducks, and hides simultaneously
[10:49] <ajmitch> time to 'edit' some code
[10:50] <arik> hadess: marius makes all the sites trae hosts rock except mine
[10:50] <omega_> doh
[10:50] <ajmitch> omega_: don't worry, i'm perfectly sane, calm, and composed
[10:50] <ajmitch> (at least that's what my psychiatrist wants me to repeat to myself)
[10:50] <hadess> arik: heh, he doesn't write my code, but he admins the hosting box
[10:50] <omega_> yeah, <cough> right ;-) <cough>
[10:51] <arik> hadess: yeh same here, but i have had two requests for ever that he said he would do that never happened
[10:51] <hadess> arik: well, i'm still waiting for my dyndns server, but he's pretty busy you know
[10:51] <arik> hadess: *nod*
[10:51] <arik> hadess: that's why i have never bugged him
[10:52] <hadess> arik: what was the problem ?
[10:52] <arik> hadess: two things
[10:52] <ajmitch> omega_: there are no up-to-date docs on caps nego, right?
[10:52] <ajmitch> omega_: we have to UTSL?
[10:52] <arik> hadess: one, he said he would setup hosting for my domain which never happened
[10:52] <omega_> ajmitch: utsl it is, afaict
[10:52] <arik> hadess: two, he said he would get perl cgi scripts working which also never happened
[10:52] <arik> afaik
[10:53] <ajmitch> omega_: righto, i can but try, do you need results soonish?
[10:53] <hadess> arik: you can set up cgi scripts yourself, but what do you mean about the domain hosting ?
[10:53] <omega_> ajmitch: it'd be nice, but it depends on what plugins you're working on
[10:53] <omega_> check with wtay for advise, examples, etc., of course
[10:53] <arik> hadess: no i set them up and the server kept saying permission denied
[10:54] <ajmitch> omega_: i got exams from the 9th till the 14th of next month, need to actually do some study before then :(
[10:54] <arik> hadess: i own a domain, i setup the domain with the correct nameservers he just never added it to the hosts info on the box i guess
[10:54] <omega_> ajmitch: and after that?
[10:54] <hadess> arik: you have full rewrite on .htaccess files, you can override anything that's in the apache config
[10:54] <arik> hadess: i can't blame him, he is really busy, i'm not complaning
[10:54] <ajmitch> omega_: look at the plugin roadmap, anyway ;)
[10:54] <arik> hadess: hmmm
[10:54] <ajmitch> omega_: 3 & 1/2 weeks of nothing (i need a paid job tho, preferably coding)
[10:54] Action: arik knows almost nothing about apache
[10:54] <arik> that is interesting though
[10:55] <omega_> ajmitch: 3.5wks???
[10:55] <hadess> arik: just send him an email about the dns, it took him over a week to set mine up, but he did in the end
[10:55] <arik> hadess: ;-)
[10:55] <arik> hadess: atm if you go to a cgi script in my cgi-bin dir it just prints out the contents as plain text
[10:55] <ajmitch> omega_: yeah, the time between my last exam and when i start back at uni ;)
[10:56] Action: omega_ feels sorry for ajmitch
[10:56] <hadess> arik: hehe, config def broken :)
[10:56] Action: omega_ is happy he ditched the school thing a long time ago
[10:56] <ajmitch> omega_: umm, june-july is winter here, we get 3 months at the end of the year ;)
[10:56] <omega_> oh, right. duh.
[10:56] <arik> hadess: yep, not idea how to fix it however, oh well
[10:56] Action: ajmitch wonders if omega_ feels sorry for ajmitch & the amount of work he has to do ;)
[10:57] Action: omega_ sticks his head in the toilet to try to make it spin the other way as a, um, hint
[10:57] <hadess> omega_: dirty man
[10:57] <omega_> well, I have to have something to remind me that .nz is on the bottom half of the globe.....
[10:58] <omega_> cw,c/cw, etc.
[10:58] <ajmitch> the proper half ;)
[10:58] <hadess> ajmitch: hehe
[10:58] <omega_> or maybe this is all just a hint that I need sleep RSN
[10:59] <hadess> omega_: <g>
[10:59] <ajmitch> it's actually the top half, but you northern-hemisphere people can't accept that you're at the bottom ;)
[10:59] <omega_> ajmitch: you may be right, but remember who you're a colony of <g>
[10:59] Action: ajmitch should start moving very fast, very soon ;)
[10:59] <ajmitch> omega_: *were* a colony of ;)
[10:59] <omega_> yeah, yeah, were...
[11:00] <omega_> the point is that they decide a long time ago that they were the king of the world, and what king would want to have to be strapped to his throne to keep from falling, er, "off"? it....
[11:00] <ajmitch> omega_: so i guess i'm in for some wonderful guesswork w.r.t the oss plugins, and the others
[11:01] <omega_> ajmitch: I'd start with 'volume', as that's the most interesting case initially
[11:01] <ajmitch> omega_: but back then the world was flat, right? ;)
[11:01] <omega_> well, after that <g>
[11:01] <omega_> so naturally, they were on the 'top' of the world...
[11:01] Action: hadess pokes ajmitch with an imperial stick
[11:02] <omega_> so, down there... do you have to use magnetic shoes to avoid falling off the planet?
[11:02] Action: ajmitch grabs the stick and bites it in half
[11:02] Action: omega_ runs
[11:02] <hadess> omega_: lol
[11:02] <hadess> omega_: well, at least they speak _english_
[11:02] <ajmitch> omega_: yeah, it's why we have to be strapped down near our computers, cos we can't wear our shoes near them ;)
[11:03] <omega_> doh.  so that's why data loss is so prevalent down there ;-)
[11:03] Action: ajmitch thinks omega_ should sleep soon ;)
[11:03] Action: omega_ thinks omega_ should have gone to sleep a long time ago
[11:03] <ajmitch> ;)
[11:04] <ajmitch> well is it nearly dawn?
[11:04] <omega_> here? not yet
[11:04] <omega_> another 3.x hours (I know, I was up that late/early two days ago)
[11:04] <ajmitch> ah, then not bedtime yet ;)
[11:04] <omega_> er
[11:05] <omega_> that next day I woke up at 2
[11:05] <omega_> pm
[11:05] <ajmitch> hmm, it's not that hard to stay up all night, then get 4 hours sleep the next...
[11:06] Action: omega_ reminds ajmitch to speak for himself
[11:06] <ajmitch> hey, i was fine the day after as well ;)
[11:06] <omega_> and that /me is sick (a cold!)
[11:06] <ajmitch> the amazing powers of caffiene...
[11:07] Action: ajmitch falls down in awe of the almighty caffiene...
[11:07] Action: ajmitch is surprisingly not addicted
[11:07] Action: omega_ watches ajmitch fall down and twitch uncontrollably on the floor
[11:08] <omega_> sorry, 'twitch uncontrollably in awe on the floor'
[11:08] <ajmitch> hehe, i can drink lots of coca cola one night (like 5 litres), and then be fine not having any more for a couple of weeks ;)
[11:08] Action: ajmitch is just weird ;)
[11:09] Action: omega_ doesn't wanna know what 'fine' means for ajmitch
[11:09] <ajmitch> eager & willing to code? :)
[11:09] <omega_> good enough for me <g>
[11:10] <ajmitch> ah well, time for that after my psycho test tomorrow
[11:10] Action: omega_ hopes ajmitch realizes what he just said
[11:10] Action: ajmitch wonders why people start moving away from him when he says he's learning psycho
[11:11] <omega_> I think it has something to do with the knife in your hand.  oh, and that evil-looking grin too
[11:11] <arik> night all
[11:11] <omega_> arik: night <g>
[11:11] <ajmitch> night arik
[11:11] <arik> ;-)
[11:11] arik (arik at sdn-ar-001waseatP066.dialsprint.net) left irc: leaving
[11:11] <ajmitch> damn, one got away...
[11:11] Action: omega_ runs further
[11:12] <ajmitch> muahaha
[11:12] Action: omega_ hesitates to think what a field day a psychiatrist would have reading these logs
[11:13] <ajmitch> they'd probably take one look and lock you away ;)
[11:13] <omega_> who, me?
[11:14] <ajmitch> yeah, for trying to inflict this gstreamer upon your foolish victims ;)
[11:14] <omega_> honest sir, I'm <twitch> normal as can be! <twitch>
[11:14] Action: ajmitch ducks
[11:15] <ajmitch> umm, these logs end up on the mailin list, right? ;)
[11:15] <omega_> yup <G>
[11:16] Action: ajmitch hacks into wtay's computer and 'edits' the logs...
[11:16] <ajmitch> ;)
[11:16] <omega_> uh, yeah ;-)
[11:17] <ajmitch> anyway, you need sleep, right? ;)
[11:17] <omega_> er, yeah
[11:17] Action: ajmitch recalls one night omega_ saying he would go to sleep, and 3 hours later he was still on irc
[11:18] <omega_> um, yeah
[11:18] <omega_> ok, I sleep now
[11:18] <omega_> l8r
[11:18] omega_ (omega at omegacs.net) left irc: you are getting sleepy, veeery sleeeeeepyyyyyyyy
[11:19] Nick change: ajmitch -> ajzzzz
[11:42] steveb (stevebaker at 212186169160.chello.com) left irc: quit has steveb, yes
[12:34] Dr_Zaius (jeff at h00a0244bc361.ne.mediaone.net) left irc: Ping timeout for Dr_Zaius[h00a0244bc361.ne.mediaone.net]
[12:41] Dr_Zaius (jeff at h00a0244bc361.ne.mediaone.net) joined #gstreamer.
[14:54] Nick change: hadess -> hds-gone
[17:32] Uraeus (cschalle at c224s9h5.upc.chello.no) joined #gstreamer.
[17:32] <Uraeus> hi
[17:51] <hds-gone> heya dude
[17:51] Nick change: hds-gone -> hadess
[17:53] <Uraeus> hi hadess, I am putting togheter the summary now so if you have a secret you need spread let me know :)
[17:57] <hadess> hmm, no, not yet =)
[18:08] <Uraeus> is the divx stuff in CVS yet?
[18:10] <hadess> what divx stuff ?
[18:11] <Uraeus> hadess: the free divx people are contributing a divx codec plugin and a quicktime plugin
[18:12] <hadess> one for gstreamer ?
[18:13] <hadess> Uraeus: one for gstreamer ?
[18:13] <Uraeus> yes
[18:14] <hadess> cool
[18:14] <hadess> didn't know about that...
[18:14] <Uraeus> sorry about late reply, too many windows at one time :)
[18:14] <hadess> heh, i know, i've seen your screenshots :)
[18:28] Nick change: hadess -> hds-gone
[19:40] ole (oka at diff.ping.uio.no) joined #gstreamer.
[19:40] <ole> Hepp
[19:41] ole (oka at diff.ping.uio.no) left irc: Up! Up! And Away...
[19:43] steveb (steveb at node1ee0c.a2000.nl) joined #gstreamer.
[19:48] <Uraeus> hi ole
[19:49] <Uraeus> hi steveb
[19:49] Action: Uraeus is in pain, managed to bite myself to hard in the tongue it bleeds heavily :(
[19:54] <steveb> yo
[19:54] Nick change: wtay-zZz -> wtay
[19:54] <wtay> hi guys
[19:54] <Uraeus> hi wtay (me cringes in pain from talking)
[19:56] <steveb> yo
[19:59] <wtay> yo
[20:00] Action: wtay has to take a bath :(
[20:00] <steveb> poo
[20:04] Nick change: wtay -> wtay-away
[20:23] thomas (thomas at 212-100-172-175.adsl.easynet.be) joined #gstreamer.
[20:23] thomas (thomas at 212-100-172-175.adsl.easynet.be) left irc: [x]chat
[20:47] Nick change: hds-gone -> hadess
[21:04] Nick change: ajzzzz -> ajmitch
[21:04] <ajmitch> mornin' all
[21:04] <hadess> heya ajmitch
[21:05] <steveb> yo
[21:05] <hadess> hey steveb
[21:05] <ajmitch> hadess: how's your latest program (can't remember it's latest name) going?
[21:06] <wtay-away> yo aj
[21:06] Nick change: wtay-away -> wtay
[21:06] <ajmitch> heh, people start turning up ;)
[21:06] <hadess> ajmitch: rhythmbox ? doing quite fine, need to get myself to code, but i'm all knackered and busy
[21:06] <ajmitch> hadess: sounds familiar ;)
[21:07] <hadess> ajmitch: dude, you're not the one who cleaned up my flat, trust me that's a hell of a job :P
[21:08] <ajmitch> oh, ok <g>
[21:10] <hadess> shopping is tiring as well :P
[21:10] Action: hadess runs
[21:13] <ajmitch> hmm, breakfast time, then time for uni :(
[21:13] <ajmitch> hacking will have to wait until l8r, i fear
[21:13] Nick change: ajmitch -> aj_uni
[21:27] omega_ (omega at omegacs.net) joined #gstreamer.
[21:29] <steveb> yo
[21:30] Action: omega_ groans
[21:30] <Uraeus> hi
[21:32] Nick change: hadess -> hds-food
[21:32] <wtay> yo
[21:33] <Uraeus> wtay, omega_: what is the status of the quicktime/divx stuff?
[21:33] <wtay> omega_: http://developer.gnome.org/doc/GGAD/sec-finalization.html
[21:33] <wtay> omega_: that's how it's done in GTK and also in Gstreamer now
[21:34] <wtay> Uraeus: it's supposed to work but we haven't seen any code yet...
[21:36] <omega_> wtay: ok, though I'm seeing really odd debug output here
[21:36] <wtay> omega_: such as?
[21:36] <omega_> finding
[21:38] <omega_> ./gstreamer-launch disksrc location=~/music/tmbg_older.ogg ! autoplugger ! vorbisdec ! osssink --gst-mask=-1 .....
[21:38] <wtay> uh?
[21:38] <omega_> typefind is doing:
[21:38] <omega_> ref 1->2, sink/unref 2->1
[21:39] <omega_> that's normal
[21:39] <omega_> the next debug is unref 2->1 *agai*
[21:39] <omega_> then stuff happens, and the sequence is:
[21:40] <omega_> shutdown, element_destroy, unref/shutdown/destroy sinkpad
[21:40] <omega_> but I have no idea why it's shutting down that late
[21:40] BBB-zZz (BBB at ucu-105-116.ucu.uu.nl) left irc: [x]chat
[21:40] <omega_> typefind is removed from the pipeline quite a ways up of that
[21:41] <wtay> when does the real destroy happen?
[21:41] <omega_> but the code is running from a signal handler of typefind's have_type signal, and that sequence occurs immediately after the return from the signal handler
[21:42] <wtay> can I try that too here?
[21:42] <omega_> yeah, I have to commit some stuff....
[21:42] <omega_> oh, yeah
[21:42] Nick change: omega_ -> omega_breakfast
[21:59] Nick change: omega_breakfast -> omeag_
[21:59] Nick change: omeag_ -> omega_
[22:00] steveb (steveb at node1ee0c.a2000.nl) left irc: Ping timeout for steveb[node1ee0c.a2000.nl]
[22:01] steveb (steveb at node1ee0c.a2000.nl) joined #gstreamer.
[22:03] <Uraeus> since I am finally finished with the boat, do you guys want me to finish up the roadmap thingie? Guess what I am asking is if it is usefull
[22:04] <omega_> yeah.  the plugin roadmap has a number of cells colored wrong
[22:04] <omega_> and the higher-level roadmap is definitely useful
[22:04] <Uraeus> ok, I clean it up then
[22:08] <omega_> megapatch in INCSCHED1
[22:08] <wtay> ok
[22:09] <Uraeus> anyone seen Richard Boulton lately? seems like he feel of the planet or something
[22:09] <omega_> I get mail from him every night <g>
[22:11] <hds-food> hey gang
[22:11] <Uraeus> heh, that is an automated one if I am not mistaken :)
[22:11] Nick change: hds-food -> hadess
[22:11] <hadess> Uraeus: no shit, sherlock
[22:13] <Uraeus> hadess: no, thank you dr.watson
[22:13] <hadess> <g>
[22:17] steveb (steveb at node1ee0c.a2000.nl) left irc: Ping timeout for steveb[node1ee0c.a2000.nl]
[22:17] <omega_> wtay: you reading gstautoplugger.c ?
[22:18] <wtay> omega_: I just compiled the thing...
[22:18] <wtay> trying to run your example..
[22:18] <omega_> it fails, for some strange reason
[22:19] <omega_> somehow the typefind element gets mangled in memory (freed?), yet something is still using it
[22:19] <wtay> ok, I have this same problem while working on thread destruction...
[22:20] <wtay> does the scheduler change the manager of the pad?
[22:20] <omega_> it's supposed to
[22:20] <wtay> s/manager/parent
[22:20] <omega_> no, not the parent, the sched
[22:21] <wtay> ok
[22:21] <wtay> btw, I'm now subscribed to LAD
[22:21] <omega_> heh, ok
[22:21] <wtay> just lurking :)
[22:22] <wtay> does that happen when you remove the typefind element?
[22:22] <omega_> yeah
[22:23] Action: omega_ just had a thought
[22:24] <omega_> for certain things, like the scheduler, we should have _freeze()/_thaw() like gtk does
[22:24] <omega_> so we don't overwork ourselves generating a chain plan for every little event when we know there are several of them that are happening all at once
[22:24] <omega_> like state change
[22:24] <wtay> yes
[22:25] <wtay> hmm, the error happens in _pad_disconnect...
[22:25] <omega_> eh?
[22:25] <omega_> what error?
[22:25] <wtay> refcounting error
[22:26] <wtay> or you don't have that error?
[22:26] <omega_> how do I ID it?
[22:26] <wtay> ID?
[22:26] <omega_> identify
[22:26] <omega_> what am I looking for?
[22:26] <wtay> Gtk-WARNING **: invalid cast from (NULL) pointer to `GstElement'
[22:26] <wtay> Segmentation fault
[22:27] <omega_> ok, yeah, I get that
[22:27] <wtay> ok, that happens on pad disconnect (when the pad is destroyed)
[22:27] <omega_> I get it right after finalize 'unnamed_typefind'
[22:27] <wtay> yup
[22:27] <omega_> erm
[22:27] <omega_> waitasec
[22:28] <omega_> typefind was disconnected from its only peer long before
[22:28] <omega_> DEBUG( 1265: 5)gst_autoplugger_typefind_have_type:263: disconnecting typefind from the cache
[22:28] <wtay> ok, then the disconnect shouldn't happen
[22:28] <omega_> right
[22:28] <omega_> or something isn't getting zeroed
[22:28] <wtay> GST_PAD_PEER == GST_RPAD_PEER ?
[22:28] <omega_> or something
[22:28] <omega_> ==
[22:29] <omega_> except PAD_PEER works on ghostpads too
[22:29] <wtay> ok
[22:29] <omega_> but internally that shouldn't be relevant
[22:29] <omega_> well, it could be, but only for metaelements
[22:29] <omega_> and I'm storing the realpads anyway, in autoplugger
[22:30] <wtay> trying to track down where it fails..
[22:30] <wtay>   if (realsrc->sched)
[22:30] <wtay>     GST_SCHEDULE_PAD_DISCONNECT (realsrc->sched, (GstPad *)realsrc, (GstPad *)realsink);
[22:30] <wtay> realsrc->sched == TRUE
[22:30] <omega_> no, != NULL
[22:31] <wtay> ok
[22:31] <wtay> is that normal after a disconnect?
[22:31] <omega_> yeah
[22:31] <omega_> line 586/7 ?
[22:32] <wtay> yup
[22:32] <omega_> but I think what's failing is line 1042/43
[22:32] <wtay>  gst_pad_disconnect (GST_PAD (object), GST_PAD (GST_PAD_PEER (object)));
[22:32] <omega_> I doubt it's that line's fault
[22:32] <wtay> while entering this function
[22:32] <omega_> er, sorta
[22:32] <omega_> that's why this is odd
[22:33] Action: wtay has g_print("1\n"); all over the place
[22:33] <omega_> the refcounting stuff is stuck right into the middle of code that shouldn't ever do refcounting
[22:33] <wtay> uh?
[22:33] <omega_> hrm, nevermind
[22:33] Action: omega_ adds back an INFO line
[22:33] <wtay> well, it shouldn't do refcounting, it should properly cleanup when a pad is destroyed
[22:34] <omega_> right
[22:34] steveb (steveb at node1ee0c.a2000.nl) joined #gstreamer.
[22:35] <wtay> omega_: ok, this is the offending line: gstscheduler.c line 1137/14
[22:35] <omega_> right, but that code is not supposed to get called ata ll
[22:35] <omega_> because typefind:sink was disconnected in the have_type handler
[22:36] <wtay> why not, it is code to disconnect a pad after all?
[22:36] <omega_> and somehow refcounting real_destroy is disconnecting the pads again
[22:36] <wtay> that might be the other pad that is destroyed...
[22:36] <omega_> regardless, somehow the original disconnect is not being 'completed'
[22:36] <wtay> it shouldn't do that when the peer is set to NULL
[22:36] <omega_> you'd think, but somehow....
[22:38] <wtay> I vote for checking for GST_PAD_PARENT (src/sinkpad) != NULL in gstscheduler.c line 1137
[22:38] <wtay> hmm or check for that in the destroy function...
[22:39] <wtay> ohohoh
[22:39] <omega_> yes, that's obvious, because the pad has already been disconnected and deparented
[22:39] <omega_> somehow the GST_PAD_PEER(pad) check is not returning NULL, causing the destroy() code to disconnect it again
[22:40] <wtay> in gstpad you set the peers to NULL and then you call disconnect...
[22:40] <omega_> where?
[22:40] <wtay> line 578
[22:40] <omega_> so?
[22:40] <wtay> no prob :)
[22:40] <omega_> checking
[22:40] steveb (steveb at node1ee0c.a2000.nl) left irc: [x]chat
[22:41] <omega_> that's correct
[22:41] <wtay> hmm the shutdown code shouldn't unparent..
[22:41] <wtay> it's run before the destroy...
[22:41] <omega_> I'm still unsure why the refcounting debugs are coming out in strange places
[22:41] <omega_> and how typefind is getting ref'd to 2 without a debug
[22:42] <wtay> hmm, must be a INFO line missing
[22:42] <omega_> nope, it'd be in the refcounting code, and I'm getting other ref()'s all over the place
[22:42] <omega_> the only thing that can ref++ is gst_object_ref(), correct?
[22:42] <wtay> we still use thr gtk refcounting code
[22:43] <wtay> yes
[22:43] <wtay> unless somebody calls gtk_object_ref instead
[22:43] <omega_> I greped for that, didn't find anything
[22:43] <omega_> checking again
[22:43] <wtay> can't find anything either
[22:43] <omega_> nope, one instance
[22:44] <omega_> in fact, object_ref is only referred to once outside of gstobject.c.....
[22:44] <omega_> that seems odd
[22:44] <wtay> when do you see the strange refcount?
[22:44] <omega_> @#%#&
[22:44] <omega_> neither backspace nor delete work on a / line in less
[22:45] <omega_> I have no idea how one screws up that badly with termcap in place
[22:45] <wtay> hmm, I see the strange refcount too now....
[22:46] <omega_> it gets a ref of 1 as usual, but then after 'removed child' it magically has gone to 2 before being unref'd to 1 again
[22:46] <wtay> its reffed right before emitting the signal, that's why..
[22:46] <omega_> where?
[22:46] <omega_> and where's the debug?
[22:46] <wtay> in gtk_signal_emit probably
[22:46] <omega_> oh, right
[22:47] <wtay> and when the signal exits, it's unreffed again
[22:47] <wtay> makes sense
[22:47] <omega_> makes sense, so we're not the only ones crazy enough to remove an object from that object's own callback <g>
[22:47] <wtay> right :)
[22:47] <omega_> of course, this is a major hole in even glib 2.0
[22:47] <omega_> refcounts are not threadsafe, even in 2.0
[22:48] <wtay> true
[22:48] <omega_> so they're only partially useful, and we must make sure we keep that in mind
[22:48] <wtay> we need a wrapper around them anyway
[22:49] <omega_> but if they ref/unref inside glib code, we can't make that safe
[22:49] <wtay> we can obtain a lock ourselves before we call the glib signal emitter
[22:49] <omega_> ref/unref need to be implemented as class methods
[22:49] <omega_> ick
[22:50] <wtay> class methods are a better solution..
[22:50] <omega_> they're not set up that way in glib 2.0
[22:50] <omega_> maybe we should post to gtk-list ASAP
[22:50] <wtay> yup
[22:50] Action: omega_ starts
[22:51] <wtay> I'm removing the unparent code from the sutdown handler now...
[22:51] <omega_> erm
[22:51] <omega_> why?
[22:51] <wtay> because the shutdown is called before the disconnect and we need the parent in disconnect
[22:51] <omega_> oh
[22:52] <omega_> hmmm
[22:52] <wtay> s/disconnect/destroy
[22:52] <omega_> so you'll move unparent to destroy ?
[22:52] <wtay> but only when the scheduler is present (that's why the testsuite does not detect it)
[22:52] <wtay> yes
[22:52] <wtay> and that's why I get the same error with the thread
[22:53] Action: wtay reruns the testsuite
[22:54] Action: wtay removes the g_print statements before running a loop of 100000 iterations...
[22:54] <omega_> hehehe
[22:55] <wtay> actually *after* :-)
[22:55] <omega_> btw, I tried changing it so it would allocate 100000, then deallocate them.  the thing had a ccow
[22:55] <omega_> it allocated some undetermined number, then started spewing massive CRITICALs
[22:56] <omega_> Gtk-CRITICAL **: file gtkobject.c: line 1173 (gtk_object_unref): assertion `object->ref_count > 0' failed.
[22:56] <wtay> you cannot image the amount of memleaks it had before I took a look at it :-)
[22:56] <omega_> I can <g>
[22:56] <wtay> hum.. same error it seems..
[23:00] <wtay> grrrr, element destroy unparent its pads too...
[23:01] <omega_> er, waitasec
[23:01] <omega_> I think you're still missing what I said
[23:01] <omega_> somehow the pad is disconnected *twice*
[23:01] <wtay> I don't see that
[23:01] <omega_> way way up above the shutdown, typefind:sink gets disconnected, and somehow that doesn't 'complete'
[23:01] <omega_> DEBUG( 2011: 5)gst_autoplugger_typefind_have_type:263: disconnecting typefind from the cache
[23:02] <omega_> just before the WARNING:
[23:02] <omega_> INFO ( 2011: 5)gst_schedule_pad_disconnect:1134: disconnecting pads unnamed_autoplugcache:src and '':sink
[23:02] <omega_> that would be the typefind, which has already been thoroughly trashed by shutdown code (so yes, you may be fixing a valid problem, but not the one that's causing this code to run in the first place)
[23:02] <wtay> ok, that's because I made a modification to disconnect...
[23:03] <omega_> wtay: you're no longer the only 'Wim' here <g>
[23:03] <wtay> omega_: so it seeme :-) a belgian guy too 
[23:05] <wtay> omega_: ok, got the same arror you have, and I know why...
[23:05] <omega_> btw, while I remember, Brock is anxiously awaiting word as to whether he should proceed with the logo and new gstreamer.net look
[23:05] <wtay> I think he should
[23:05] <wtay> proceed that is
[23:05] <omega_> ok, you saw the screenshot?
[23:05] <wtay> yes, I like them
[23:06] <omega_> ok
[23:06] <wtay> omega_: I do a g_list_remove whil walking the same g_list...
[23:06] <omega_> oops
[23:07] Action: wtay make a copy of the list now...
[23:08] <wtay> ok, getting closer...
[23:12] <omega_> wtay: btw, after 0.2.0 I'd like to finally do a semi-formal code review
[23:12] <wtay> omega_: ok, I'm in
[23:13] <omega_> what'd be neat is if we can get rtpreceive and gstmenc/dec built
[23:13] <wtay> menc?
[23:13] <omega_> er, sorry, so used to typing 'gst'
[23:13] <omega_> gsmenc/dec
[23:14] <omega_> Uraeus: you didn't send it to me for proofreading ;-(
[23:14] <Uraeus> omega_: ;)
[23:15] <omega_> is Uraeus afraid of me?
[23:15] <Uraeus> yes
[23:15] <omega_> doh
[23:15] <Uraeus> with good reason
[23:15] <omega_> ehhehehe
[23:15] <hadess> omega_: what does src->fd contain in the gstfdsrc ?
[23:15] <omega_> muhahaha
[23:15] <wtay> omega_: got serious leaks now in testsuite... shall I commit
[23:15] <omega_> hadess: the filedescriptor to read from
[23:15] <omega_> wtay: er, I guess <g>
[23:15] <hadess> omega_: where we get that from ?
[23:15] <omega_> from the application
[23:16] <omega_> see disksrc for an idea of where that comes from within a plugin
[23:16] <wtay> omega_: it fails somewhere else now, so...
[23:16] <hadess> omega_: ok, so here we need to get the GnomeVFS handle instead of the fd
[23:16] <omega_> right, and see disksrc for the change_state code that shows you where to open/close
[23:16] <omega_> since fdsrc doesn't open/close anything, that's the apps job
[23:17] <hadess> omega_: huh, i was supposed to start from disksrc, wasn't i ...
[23:17] <omega_> not necessarily
[23:17] <omega_> because disksrc uses mmap()
[23:17] <omega_> fdsrc is closer to what gnomevfssrc will look like
[23:17] <omega_> as far as the actual _get function, at least
[23:17] <omega_> disksrc is closer for change_state
[23:18] <omega_> so you end up with a hybrid of them <g>
[23:18] <hadess> god, now i remember why i want to use gstreamer for my apps...
[23:18] <hadess> because i didn't want to code that !
[23:18] <omega_> heheheh
[23:19] <Uraeus> hadess: there is POW for you in the new GNOME summary
[23:19] <omega_> if you put it in cvs shortly, I can help you out
[23:20] <hadess> omega_: ok, i will try to get something working, even if it crashes and stuff
[23:20] <hadess> Uraeus: url ?
[23:20] <omega_> http://lists.ximian.com/archives/public/gnome-vfs/2001-May/000316.html
[23:20] <Uraeus> http://developer.gnome.org/news/summary/2001_May06-May12.html
[23:21] <hadess> rats
[23:22] <hadess> Uraeus: dude, you forgot uf-view in the released apps
[23:22] <Uraeus> hadess: think it was in last week
[23:23] <hadess> Uraeus: yeah, there was a new release this week as well ! yesterday
[23:23] <Uraeus> hadess: ah, but my summary ended friday
[23:23] <Uraeus> hadess: it will be in the next one
[23:23] <hadess> Uraeus: oh, ok, cool then :)
[23:23] <wtay> Uraeus: uh, I only have half the summary...
[23:24] <Uraeus> wtay: weird, since I use Galeon too and it displays fine
[23:24] <Uraeus> aargh, shite, I sent the GNOME summary to the gnome-announce list with the same message as the to the publishing sites, yuck
[23:24] <hadess> "Stuart Parameter" <- lol
[23:25] <wtay> Uraeus: it's the mail in evolution that is wrong, galeon/web is fine
[23:25] <omega_> Uraeus: doh
[23:25] <hadess> Uraeus: it's Stuart Parmenter, not Parameter
[23:25] <omega_> hehehehe
[23:25] <hadess> rotfl
[23:25] <wtay> hehehe
[23:25] Action: omega_ hands Uraeus a BPB or two
[23:25] <Uraeus> opps, I will fix that, (and no omega you wouldn't have seen that one )
[23:25] <omega_> actually, I proabbly would have
[23:25] <omega_> I recognize the name
[23:26] Action: omega_ suggests again that Uraeus send me a preview <g>
[23:26] Action: Uraeus starts to cry again
[23:27] <hadess> "you can reach both me and Steve George" <- style
[23:28] <hadess> "you can reach both Steve George and me"
[23:28] <omega_> myself, imo
[23:28] <hadess> well, in any case it's in the end
[23:29] Action: wtay hand Uraeus a handkerchief
[23:29] <Uraeus> ok, name fixed on the web, but it is to late for the mail :(
[23:29] <omega_> esp since you sent it to gnome-announce...
[23:29] <omega_> you can resend to lwn, etc.
[23:30] <hadess> Uraeus: no worries, send a patch :)
[23:30] <omega_> diff -u is your friend
[23:30] <hadess> Stuart Parameter isn't your friend anymore though
[23:31] Action: wtay laughs at omegas INFO statements...
[23:31] <omega_> you should've seen the fiasco in irc last night <g>
[23:32] <wtay> here?
[23:32] <hadess> what's happened yesterday ?
[23:32] <omega_> just lots and lots of silliness
[23:33] <omega_> read the top several hundred lines of tonights logs
[23:33] <omega_> oh wait. don't <g>
[23:33] <wtay> hmm, I skimmed over it and it seemed unrelated :-)
[23:34] <wtay> omega_: what's autoplugger->srcpadpeer? is that a pad of typefind?
[23:34] <wtay> omega_: in gstautoplugger.c line 265..
[23:34] <wtay> err 272
[23:35] <wtay> ignore that last line..
[23:36] <omega_> no, it's the pad of the peer element outside the autoplugger, like osssink
[23:36] <wtay> yup
[23:36] <Uraeus> ok, mail resent, and it seems like I have to creep to the cross and ask for omega_'s help in checking the thing :)
[23:37] Action: omega_ grabs for the hammer and nails <g>
[23:37] <hadess> rule #1 of irc on #gstreamer, do not talk right after the mail is sent
[23:37] <hadess> i'm wondering who reads the logs...
[23:37] <Uraeus> i do :)
[23:37] Action: omega_ doesn't wanna know <g>
[23:39] <omega_> still trying to figure out why the disconnect is happening twice ;-(
[23:39] <wtay> me too
[23:46] Action: omega_ cleans up real_pad_destroy
[23:47] <omega_> should we kill all the ghostpad tied to a realpad when we destroy it?
[23:47] <omega_> I think we should
[23:47] <wtay> I think we do...
[23:47] <omega_> nope
[23:47] <omega_>   g_list_free (GST_REAL_PAD(pad)->ghostpads);
[23:47] Action: omega_ adds a FIXME
[23:47] <wtay> hmm..
[23:48] <omega_>   // FIXME we should destroy the ghostpads, because they are nothing without the real pad
[23:48] <omega_> one major thing to make sure of is that a top-down destroy never triggers all these bottom-up afterthought destroys
[23:48] <wtay> meybe we should leave the disconnect out of it for now...
[23:48] <omega_> by the time a top-down destroys the pad, it should have no parent, and no ghostpads
[23:49] <omega_> no, we need to squash this bug
[23:49] <omega_> else we'll never get back to it
[23:49] <hadess> what GTK_VALUE_* should i use for a struct (binary data) ?
[23:49] <omega_> um
[23:49] <omega_> what is it?
[23:49] <hadess> the gnomevfs hamdle
[23:49] <hadess> handle even
[23:50] <wtay> POINTER?
[23:50] <omega_> it isn't required to be touched in normal usage, right?
[23:50] <hadess> sounds good
[23:50] <omega_> provided as a convenience?
[23:50] <wtay> isn't ther a GNOME_TYPE_VFS or something?
[23:50] <omega_> yeah, I would expect there would be, actually
[23:50] <hadess> omega_: hmm, yeah, broken me
[23:50] <omega_> hadess: huh?
[23:51] <omega_> no TYPE_VFS
[23:51] <hadess> nah, that's the bits from fdsrc, i shouldn't be using that
[23:51] <omega_> it can be useful
[23:51] <omega_> cause the app can get the handle to get file details
[23:51] <omega_> just don't let it get set
[23:51] <omega_> just READABLE
[23:51] <hadess> expect a handle instead of a uri, which makes it messy
[23:52] <omega_> right, should take a string uri, construct the handle, make it readable for app to get details
[23:52] <hadess> omega_: and how would i set it, i need to add some more code in any case
[23:52] <omega_> right, you'd have to only allow it in the NULL state, and delete the existing handle, retrieve the uri, etc.
[23:53] <wtay> omega_: is a pad useless without it's parent or can it be reparented?
[23:53] <omega_> it could be reparented, but it's so closely tied to an element....
[23:53] Nick change: aj_uni -> ajmitch
[23:53] <omega_> the pad has pointers to the element's functions, so...
[23:53] <hadess> i'll work on it tomorrow morning, i'm falling asleep
[23:53] <omega_> hadess: can you email it to me?
[23:54] <omega_> maybe I can get it in CVS and closer to working
[23:54] <wtay> omega_: ok I'll destroy it then when the parent is destroyed
[23:54] <hadess> omega_: i haven't written anything useful, i'll email it to you tomorrow
[23:54] <omega_> ok
[23:54] <Uraeus> night guys
[23:54] Uraeus (cschalle at c224s9h5.upc.chello.no) left #gstreamer.
[23:54] <omega_> wtay: destroy what?
[23:54] <wtay> the pad
[23:54] <hadess> night all
[23:54] <omega_> hadess: night
[23:54] <wtay> in the elemen_real_destroy
[23:54] hadess (hadess at pc2-guil2-0-cust121.gui.cable.ntl.com) left irc: mooooh!
[23:54] <wtay> night
[23:55] <omega_> right
[23:55] <ajmitch> hi ppl
[23:55] <wtay> so... I only have one disconnect now..
[23:55] Action: ajmitch is baaack
[23:55] <wtay> commiting
[23:55] Action: ajmitch hears the sound of running feet
[23:55] <wtay> ajmitch, nice to have you back <g>
[23:56] <omega_> ajmitch: wtay scanned the logs already
[23:56] <ajmitch> goody ;)
[23:56] <ajmitch> wtay: you agree with me that omega_ is mad?
[23:56] <omega_> dunno if wtay has called in a psychiatrist just yet, but it's unavoidable
[23:57] <wtay> I didn't read it, I just skimmed over it... I'll read it you want :-)
[23:57] <ajmitch> no no, it's fine
[23:57] <wtay> your last chance to force a DOS on my PC or xchat... ;)
[23:58] <ajmitch> hmm
[23:58] <omega_> wtay: don't read it !
[23:58] <omega_> dunno if wtay has called in a psychiatrist just yet, but it's unavoidable
[23:58] Last message repeated 1 time(s).
[23:58] <omega_> doh
[23:58] <ajmitch> lol
[23:58] Action: wtay runs to the phone
[23:58] <omega_> that sucked, I wanned to repeat that line over and over and crash wtay's xchat and X server
[23:58] <ajmitch> omega_: we were seriously discussing things weren't we?
[23:58] <omega_> ajmitch: of course
[23:59] Action: wtay has saved the IRC logs
[23:59] <ajmitch> from time to time...
[00:00] --- Tue May 15 2001
[00:00] <wtay> omega_: ok, now typefind does something strange...
[00:00] <omega_> what?
[00:00] <wtay> in the signal, typefind is destroyed...
[00:01] <wtay> typefind then checks for its state after fireing the signal
[00:01] <wtay> we need a ref to typefind 
[00:01] <omega_> good point
[00:02] <wtay> which is not good IMO
[00:02] <omega_> nope
[00:03] <wtay> should we keep a ref to the element when we call its chain function?
[00:04] <omega_> ick
[00:04] <wtay> yeah
[00:04] <wtay> actually we should keep a ref around the signal..
[00:04] <omega_> oh boy, this is where refcounting gets fun <g>
[00:04] <omega_> yeah, we should keep our own refcount
[00:05] <wtay> in the end the thing you do in typefind should go into the emit wrapper
[00:05] <omega_> right
[00:05] <omega_> autoplugcache has the same code
[00:06] Action: ajmitch tries to follow
[00:06] <ajmitch> ok, what parts are you discussing now? ;)
[00:06] <omega_> refcounting, signal emission, in the context of massive live reconfig during autoplug
[00:06] <wtay> ajmitch: the part where I'm going to say that it's getting time fot bed :-)
[00:06] <omega_> in case you really, truly wanted to know <g>
[00:06] <omega_> wtay: you can't go until you fix it !!!! <g>
[00:07] <wtay> omega_: just a refcount here and there and it's fixed :-)
[00:07] <omega_> is it still doubly disconnecting?
[00:07] <wtay> nope
[00:08] <wtay> ok, with the ref I don't get *ERROR*s, just a segfault :)
[00:08] <omega_> checking
[00:08] <omega_> grrrr
[00:08] <ajmitch> ah, sounds exciting ;)
[00:08] <wtay> DEBUG(18641: 3)cothread_switch:322: enter thread #3 1 0xbfe5fffc<->0xbfe60000 (4)
[00:08] <wtay> DEBUG(18641: 3)gst_schedule_pullfunc_proxy:177: new pad in mid-switch!
[00:08] <wtay> Segmentation fault
[00:09] <wtay> omega_: err, I still get two disconnects..
[00:10] <omega_> hmmmm
[00:10] <wtay> all code in gst_schedule_pad_disconnect
[00:11] Action: omega_ adds more debug
[00:11] <wtay> omega_: check out line 584 in gstpad.c
[00:11] <omega_> bleagh.  it's a different pad somehow
[00:12] <wtay> omega_: I accidentally added that piece of code...
[00:12] <omega_> the pointer to the srcpad is different in both cases of disconnect, even though they have the same parent & name!
[00:12] <wtay> hmm
[00:13] <wtay> omega_: ok reverting to your version only disconnects once
[00:14] <omega_> huh?
[00:15] <omega_> line 584 in my copy is a signal_emit
[00:15] <wtay> in gstpad.c?
[00:15] <omega_> yeah, give me the line
[00:15] <omega_> changes in my copy cause line mismatch
[00:15] <wtay> sec... 
[00:16] <wtay> right after the 2 signal emit lines, the lines with GST_SCHEDULE_PAD_DISCONNECT
[00:16] <omega_> what did you change?
[00:16] <wtay> I added one GST_SCHEDULE_PAD_DISCONNECT 
[00:16] <omega_> I thought I added that?
[00:17] <omega_> regardless, that's not the issue
[00:17] <wtay> meybe we both did :)
[00:17] <omega_> we're still getting pad_disconnect called twice
[00:17] <wtay> those lines are responsible
[00:17] <omega_> howso?
[00:17] <omega_> those call the scheduler, not pad_disconnect
[00:17] <wtay> uhm
[00:17] <wtay> sec..
[00:18] Action: wtay add g_print to _disconnect
[00:19] <omega_> +  GST_INFO (GST_CAT_ELEMENT_PADS, "disconnecting %s:%s(%p) and %s:%s",
[00:19] <omega_> +            GST_DEBUG_PAD_NAME(srcpad), srcpad, GST_DEBUG_PAD_NAME(sinkpad));
[00:19] <omega_> +
[00:19] <omega_> the %p is different on the two calls, with the same names
[00:19] <wtay> uhm, I only see one...
[00:20] <wtay> right after the typefind destroy
[00:20] <omega_> ok, lemme commit my changes with debug and minor cleanups
[00:20] <omega_> committed, gstpad.c
[00:22] <wtay> DEBUG should have a line number...
[00:22] <omega_> doesn't it?
[00:23] <omega_> it does
[00:23] <wtay> I mean, so we can say: look at debug line X
[00:23] <omega_> oh
[00:23] <omega_> oh, you mean an output serial number
[00:23] <wtay> yes
[00:23] <omega_> we'll end up with the same problem as source line numbers ;-9
[00:24] <wtay> I guess, plugin loading will screw up things...
[00:24] <wtay> I see 2 disconnects but...
[00:24] <wtay> only one after the SCHEDULE DUMP FOR MANAGING BIN "launch"
[00:25] <omega_> key on the gst_autoplugger debugs, in blue
[00:26] <omega_> those are what I key on to locate things, since there are 4 sched_show's
[00:26] <wtay> INFO (23810: 5)gst_autoplugger_typefind_have_type:281: typefind_have_type finished
[00:26] <wtay> SCHEDULE DUMP FOR MANAGING BIN "launch"
[00:26] <wtay> schedule has 4 elements in it: osssink0, mad0, unnamed_autoplugcache, disksrc0, 
[00:26] <wtay> schedule has 2 chains in it
[00:26] <omega_> ok, so after DEBUG( 4949: 5)gst_autoplugger_typefind_have_type:263: disconnecting typefind from the cache
[00:27] <wtay> INFO (23810: 5)gst_pad_disconnect:558: disconnecting unnamed_typefind:sink(0x81350a8) and unnamed_autoplugcache:src
[00:27] <wtay> INFO (23810: 5)gst_pad_disconnect:593: disconnected unnamed_typefind:sink and unnamed_autoplugcache:src
[00:27] <wtay> and then, no more disconnects
[00:27] <omega_> ah, after 'typefind_have_type finished' there's another one
[00:28] <wtay> yes
[00:28] <omega_> and the pointer is different, right?
[00:28] <wtay> ok, I see what you mean
[00:29] <wtay> yes
[00:29] <omega_> that's very odd
[00:29] arik (arik at sdn-ar-002waseatP175.dialsprint.net) joined #gstreamer.
[00:29] <omega_> yo
[00:29] <arik> morning ;-)
[00:29] <wtay> hi
[00:29] <ajmitch> hi arik
[00:29] <arik> hey all
[00:30] <wtay> omega_: it's kinda hard to tell, the pads are reversed and the pointer to the second pad is not shown
[00:30] <omega_> uh?
[00:30] <omega_> oh, so they are
[00:30] <omega_> doh
[00:30] <omega_> ok, updating info
[00:31] <wtay> me too
[00:31] <wtay> they are the same now
[00:31] <ajmitch> just reading an (old) story about an MS backdoor - what do you have lined up for us in gstreamer? ;)
[00:32] <omega_> ok, so that still leaves the original mystery of why the second disconnect ever happens....
[00:32] <wtay> if can only happen if the GST_PAD_PEER is != NULL
[00:32] thomas (thomas at urgent.rug.ac.be) joined #gstreamer.
[00:32] <wtay> INFO (24511: 5)gst_pad_connect:669: connected unnamed_autoplugcache:src and unnamed_typefind:sink
[00:32] <omega_> ajmitch: um, that's the ERROR call there... gives me a gdb (theoretically should give me a prompt too), so if (sorry, when <g>) gstreamer crashes and you're running as root, it can be used to subvert the system
[00:32] <wtay> uh?
[00:32] <wtay> yo
[00:32] <thomas> hi
[00:33] <ajmitch> omega_: ok, i'll keep that in mind
[00:33] <omega_> heheheh
[00:33] Action: thomas is still at work trying to copy an NTFS disk...
[00:33] Action: ajmitch goes and tries to play an mpeg...
[00:34] <wtay> omega_: did you notice that it gets connected again?
[00:34] <arik> ajmitch: bwahahah ;-)
[00:34] <omega_> where?
[00:34] <wtay> after the first disconnect
[00:34] <omega_> oh
[00:34] <omega_> doh
[00:34] Action: omega_ knows why, and /me is an idiot
[00:34] <ajmitch> woohoo, gstmediaplay crashes ;)
[00:34] <omega_> I moved the srcpadpeer assignment into src_connected
[00:34] Action: wtay hands omega_ a couple or more BPBs
[00:35] <omega_> and when typefind is attached during one callback, the src_connected gets called
[00:35] <wtay> ok, one more bug down...
[00:35] Action: omega_ turns one BPB around and puts it on top of another, so no eye-holes
[00:36] <wtay> omega_: don't cover your eyes, it helps :-)
[00:36] Action: omega_ can type just fine without looking at the keyboard
[00:36] <omega_> oh,right.  look at the screen....
[00:37] <ajmitch> hmm, it crashed in the flxdec_typefind again... i ran gstreamer-register, and it didn't crash...
[00:37] <ajmitch> small bug? ;)
[00:38] <ajmitch> arik: you been enhancing gstmediaplay, right?
[00:38] <arik> ajmitch: yep
[00:38] <omega_> bleagh, didn't fix it
[00:38] <ajmitch> arik: what you added so far?
[00:38] <arik> ajmitch: double and fullscreen play
[00:38] Action: thomas is away - Automatically set away. - messages will be saved.
[00:38] <ajmitch> ooh, nice ;)
[00:38] <arik> ajmitch: ;-)
[00:39] <omega_> hrm, it didn't compile, that's why
[00:39] Action: ajmitch wonders why this mpeg sounds like it is played thru a tin can...
[00:39] <omega_> there...
[00:39] <omega_> it works again
[00:40] <ajmitch> hmm, gstmediaplay needs a volume control, i think ;)
[00:40] <omega_> but there's still an invalid cast
[00:40] <arik> ajmitch: i am planning on doing that
[00:40] Action: omega_ still wishes that WARNING had a lineno on it
[00:40] <arik> ajmitch: i have many plans ;-)
[00:40] <ajmitch> arik: such as? ;)
[00:41] <wtay> I have to sleep now :(
[00:41] <omega_> mu
[00:41] <omega_> this is your bug
[00:41] <arik> ajmitch: volume control, playlists, more or less total code cleanup, basically any feature in wmp or quicktime
[00:41] <wtay> hmm
[00:41] <omega_> I think. it's right after finalize of unnamed_typefind
[00:41] <wtay> hmm
[00:41] <arik> ajmitch: new interface
[00:41] <omega_> did you add that ref/unref?
[00:41] <wtay> omega_: yup
[00:42] <omega_> to typefind?
[00:42] <wtay> yes
[00:42] <wtay> lemme commit it
[00:42] <ajmitch> arik: ok
[00:42] <omega_> ah, right <g>
[00:42] <ajmitch> arik: looked at noatun in KDE?
[00:42] <arik> ajmitch: at one point, not recently
[00:42] <wtay> commited
[00:42] <omega_> it's destroying the typefind right after the signal, before it as a chance to determine whether itself still exists
[00:42] <ajmitch> arik: it has a core, and the UI, playlists, etc are implemented as plugins
[00:42] <arik> ajmitch: interesting
[00:43] <ajmitch> good thing dobey isn't here ;)
[00:43] <omega_> there
[00:43] <wtay> omega_: ?
[00:43] <omega_> it works
[00:43] Last message repeated 1 time(s).
[00:43] <wtay> cool
[00:43] <ajmitch> omega_: you committing these changes to HEAD or INCSCHED1?
[00:43] <omega_> doh, wrong window
[00:44] <omega_> incsched
[00:44] <wtay> omega_: my bug is closed? :-)
[00:44] <arik> does the gst i am currently compiling work?
[00:44] <wtay> omega_: can I sleep?
[00:44] <omega_> which as soon as this works better, we can rebuild gstplay to use this autoplugger, and merge down into HEAD finally
[00:44] <omega_> wtay: you may. <g>
[00:44] <wtay> thx <g>
[00:44] <wtay> cya guys
[00:44] <omega_> .vob
[00:44] Nick change: wtay -> wtay-zZz
[00:45] <arik> omega_: that sounds like a good idea
[00:45] <thomas> omega_: did you ever use a vga to tv convertor, and what's the quality ?
[00:45] <omega_> oh btw, matth isn't here because he's at home, because the ridgerun offices are ~90 degrees F
[00:45] <omega_> thomas: nope, never have
[00:45] <thomas> omega_: the only way to get the ati tv out working is thru the vesa framebuffer
[00:45] <thomas> xine runs sloooooow
[00:45] <omega_> bleck
[00:46] <omega_> all that code *should* be merged back into XFree
[00:46] <thomas> I think that until there's a good tv/out card (where the g400 might be one, not sure) I should use a vga convertor
[00:46] <thomas> there's someone with a site at www.media-box.org who does it that way
[00:46] <omega_> or just a VGA monitor for now
[00:46] <thomas> he's really happy
[00:46] <omega_> I'm just gonna use a monitor initially
[00:47] <thomas> omega_: yeah, but that's a bit clunky on top of the tv
[00:47] <omega_> and besides, you get better definition that way
[00:47] <thomas> though you can watch two channels at the same time ;)
[00:47] <omega_> oh, well, I don't have a TV where I'll be working on this project <g>
[00:47] <ajmitch> bbl
[00:47] Nick change: ajmitch -> aj_uni
[00:52] <arik> todats gstplay still doesn't work for me ;-)
[00:52] <arik> shocking i know
[00:52] Action: omega_ is working on it as fast as he can
[00:55] <taaz> how's incsched coming along? ;)
[00:55] <omega_> autoplugger is starting to work nicely
[00:55] <taaz> excellent
[00:55] <arik> omega_: i know
[00:56] <taaz> still planning on merging back to HEAD in about -3 weeks? ;)
[00:56] Action: taaz ducks and runs
[00:56] <omega_> yup, no change
[00:56] Action: omega_ needs a longer stick
[00:57] <taaz> you know the LAD people will bitch and moan about gst being too complex
[00:57] <omega_> that's fine
[00:57] <arik> then tell them to write there own media architecture
[00:58] <omega_> exactly
[00:58] <taaz> it looks like they are going to try
[00:58] <omega_> of course they're gonna try.  they've tried N times already
[00:58] <taaz> err.. not a media arch.. but a audio arch
[00:58] <arik> hehe
[00:58] <arik> what is LAD?
[00:59] <omega_> taaz: you answering, or do I?
[00:59] <taaz> pbd has his conference speach "linux audio: 2 years of reinventing the wheel" (or something like that)... guess they're still going...
[00:59] <taaz> linux audio development/developers
[00:59] <omega_> linux-audio-dev
[00:59] <taaz> mailing list
[00:59] <arik> heh
[00:59] <arik> ok
[01:04] Action: thomas reboots again (and again and again)
[01:04] thomas (thomas at urgent.rug.ac.be) left irc: I'm outta here!
[01:08] <omega_> ooooooh, it works!
[01:08] <arik> omega_: works?
[01:09] <arik> omega_: what works?
[01:09] <omega_> the autoplugger, so far
[01:09] <taaz> what is a boxed type?
[01:09] <omega_> doesn't actually autoplug, but all the really nasty things it does to scheduling, and just the whole system in general, works!
[01:09] <omega_> taaz: absolutely no clue ;-(
[01:10] <arik> neeto
[01:10] <omega_> this little 416-line meta-element is by far the hardest test of incsched ever
[01:10] <arik> heh
[01:10] Action: omega_ takes a break to get some food
[01:10] Nick change: omega_ -> omega_food
[01:18] arik (arik at sdn-ar-002waseatP175.dialsprint.net) left irc: leaving
[01:46] Nick change: omega_food -> omega_
[01:50] <taaz> any more major issues left with incsched?
[01:50] Action: taaz wants to see omega_ attack the event system issues
[01:51] <omega_> there are more still, yes, but once autoplug works, we can merge
[01:51] <omega_> next major thing is gobjectification
[01:52] <omega_> that's a major issue at ridgerun, moreso than the event system
[01:53] <taaz> heh... school graduation was saturday here...  my apt bandwidth doubled since last week ;)
[01:53] <omega_> hehehe
[01:54] <taaz> gobject in order to not need X i suppose?
[01:54] <omega_> right
[01:55] <taaz> plus it may be fun hacking ;)
[01:55] <omega_> quite
[01:55] <omega_> a lot less work than incsched, and probably less than the event system
[01:56] <taaz> how big are the new glib libs?
[01:56] <omega_> checking
[01:56] Action: omega_ builds glib cvs
[01:56] Action: taaz should do the same
[01:57] <taaz> i was looking into the python bindings
[01:57] <taaz> current pygtk development is working with new glib/gtk
[01:58] <omega_> I want to get perl bindings for gst
[01:58] <taaz> i'm thinking it may be easier to just wait till gobjectification is done before working on python bindings
[01:58] <omega_> yeah
[01:59] <taaz> looks like alot of stuff has been improved.  gclosures and more runtime introspection support
[01:59] <taaz> why do you want perl bindings?  python rules!
[01:59] <omega_> because I know perl <g.
[01:59] <omega_> I hear more and more about python, maybe I should look into it
[02:00] <omega_> bleck.  mozilla has noticable *keyboard* latency when typing a new location
[02:00] <taaz> i intentionally haven't learned perl ;)   no one asks me to help them with their perl bugs this way
[02:00] <omega_> hey taaz, I've got this perl issue....
[02:00] <taaz> hey omega_, use python
[02:02] <omega_> ok, fresh build:
[02:02] <omega_> glib is 862KB, gobject is 581KB ;-(
[02:02] <omega_> way way way way too big
[02:02] <taaz> i started to write some python gst scripts (as if bindings were working ;)... the code looks alot nicer when its OOPified and uses exceptions instead of all that NULL checking
[02:02] <taaz> is that stripped?
[02:02] <omega_> no
[02:03] <omega_> 200KB stripped
[02:03] <omega_> for gobject
[02:03] <omega_> 325KB for glib
[02:03] <taaz> hmm... i thought it would be smaller
[02:03] <omega_> 513KB
[02:04] <omega_> compiled without assertions it might be much smaller
[02:04] <omega_> using minimal debug, rebuilding
[02:05] <taaz> how much space did rr want glib + gst to fit in?
[02:06] <omega_> don't have numbers, but I'd like it to fit in 512KB total, or less
[02:06] <taaz> um... and how do you plan on doing that?  strip out all the data structures and unused functions from glib?
[02:07] <omega_> possibly
[02:07] <omega_> most likely is trimming a lot of stuff from gstreamer that's not relevant to that environment
[02:07] <omega_> which means making gstreamer somewhat modular even at the libgst.la level, at least for configure options (say, --disable-xml)
[02:08] <taaz> could play with -Os too
[02:08] <omega_> yeah
[02:09] <omega_> there are 12KB of code just in the save_thyself/restore_thyself routines
[02:10] <omega_> grrr, minimal debug in glib only strips 3KB
[02:11] <omega_> that's screwed up
[02:27] <omega_> ok, no debug, no nls totals 403KB for both glib and gobject
[02:27] <omega_> another 13.5 KB for gthread
[02:36] <omega_> ok, that's something I don't like about python: syntactic indentation
[02:37] <taaz> congrats, you just listed #1 new-to-python gripe
[02:37] <omega_> yup
[02:38] <taaz> i'm one of the 1% that saw the syntax and said "wow! what a great idea!!!"
[02:38] <omega_> personally, I think ever using whitespace as part of the language is a mistake
[02:38] <omega_> hrm, shades of tcl
[02:38] Action: omega_ reads the tutorial
[02:39] <taaz> i think using languages that are 90% symbols like perl is a mistake ;)
[02:39] <omega_> yeah, that's true too
[02:40] <taaz> hey, if we're going to argue... we should all be using smalltalk anyway
[02:40] Action: omega_ shudders
[02:40] <omega_> don't you mean perl?
[02:40] <omega_> er, java?
[02:40] <omega_> er, c#?
[02:41] <omega_> or LIthP
[02:41] <taaz> i started to play with Squeak once... i had to stop because i knew if i kept playing i would never use anything else again ;)
[02:41] <taaz> go ahead and try to modify gstreamer algorithms -while- the code is running
[02:42] <omega_> yeah, you reset a chain pointer...
[02:42] Action: omega_ ducks
[02:43] <taaz> hey, i'm fine with using proper tool for the job
[02:43] <taaz> C is good for low level codecs and stuff
[02:43] <omega_> -O6 makes glib bigger by 22 KB, vs -O2
[02:43] <omega_> -fno-inline should help <g>
[02:43] <taaz> my plan is make the low level gstreamer objects for dvd decoding... then hook up an app in python
[02:44] <omega_> neat
[02:44] <taaz> no reason to torture myself with writing applications in C ;)
[02:44] <omega_> although the way things are going, I wouldn't be surprised if we can make the following work:
[02:44] <omega_> gstreamer/examples/autoplug /dev/dvd
[02:44] <omega_> and get a full player
[02:45] <omega_> either Gtk or Qt depending on which libs you have and which session manager you're running <g>
[02:45] <taaz> please, enlighten me.  i have no idea how that would work.  because:
[02:45] <taaz> you have to deal with nav issues.  i'm not sure where that goes and how that gets autoplugged
[02:45] <omega_> here's my though (very unformed still):
[02:45] <omega_> er, thought
[02:45] <taaz> the mpeg2parser has to throw DSI (priv stream 2) streams at the nav component
[02:46] <taaz> but it also is pretty tightly integrated with the source
[02:46] <omega_> hold on, lemme walk through my ideas <g>
[02:46] <taaz> ok
[02:46] <omega_> autoplugger looks at the uri, sees its a device, loads up dvdsrc
[02:46] <omega_> dvdsrc has a pad to the navigator and one to the actual video pipeline
[02:47] <omega_> the navigator does push/pull to the dvdsrc to read what it needs, and it takes care of autoplugging the decoder pipeline with some help
[02:47] <omega_> so it can get access to the various elements for control
[02:47] <omega_> then the navigator opens up a window via some plugable windowing system (which I need for -launch) anyway, and sticks a xvideosink inside of that
[02:48] <omega_> using another plugin for the interface it does its thing
[02:48] <omega_> lots of details there to be explored, but I think it's possible
[02:48] <omega_> consider that directshow has a 'DVD Navigator' plugin type
[02:49] <omega_> http://msdn.microsoft.com/library/psdk/directx/dx8_c/ds/dvd/DVD_DecoderDev_Intro.htm
[02:49] <omega_> that may not be all of it, but somewhere in the directshow docs they talk about it
[02:55] <taaz> there certainly are more issues... need to have feedback from UI (button presses and so on) highlights or regions, sub pics,  choices of audio and subpic streams... fun fun fun
[02:59] <taaz> oh no! all LAD logo votes to the list...   i hope there aren't 1000 votes ;)
[03:15] Nick change: aj_uni -> ajmitch
[03:15] <ajmitch> ah, back to the normality of IRC ;)
[04:43] <omega_> for ~$600 I could build a 100hr tivo
[04:43] <omega_> the 60hr from Phillips is $700
[04:49] Action: omega_ watches mozilla commit suicide
[04:50] <ajmitch> ;)
[04:50] <ajmitch> hey omega_, what's up?
[04:51] <omega_> the size of libgst.so ;-(
[04:51] <ajmitch> lol, what'd you do to it?
[04:51] <omega_> well, it's been getting more, um, features <g>
[04:51] <ajmitch> hard drives & ram are cheap ;)
[04:51] <omega_> Duron 750               $37
[04:51] <omega_> ECS K7VMA               $76
[04:51] <omega_> 64MB RAM                $20
[04:51] <omega_> Case                    $17
[04:51] <omega_> * Main system total:    = $150
[04:51] <omega_> 80GB disk               $212
[04:51] <omega_> WinTV PVR               $231
[04:51] <omega_> TOTAL:                  $593
[04:52] <ajmitch> i just cleared mandrake off my computer, plus some other crap, got a bit more space for gstreamer now ;)
[04:52] <omega_> doh
[04:53] <ajmitch> what 'features' have you been adding, btw?
[04:53] <ajmitch> an 'xmmscodersareweenies' backdoor? ;)
[04:53] <omega_> hehehe
[04:54] <ajmitch> hmm, what wonderful features does noatun have that gstmediaplay lacks?
[04:54] Action: ajmitch wants to see a better media player than Njaard's ;)
[05:10] _gst_newt_ joined #gstreamer.
[05:37] <taaz> omega_?
[05:37] <omega_> ?
[05:38] <taaz> any ideas on how to best handle dvd audio track selection?
[05:38] <omega_> you mean system stream audio stream selection?
[05:38] <taaz> whatever ;)
[05:38] <omega_> there's a difference
[05:38] <taaz> oh?
[05:39] <omega_> the first is /dvd/audio_ts/*
[05:39] <omega_> which I've never seen populated, but....
[05:40] <taaz> i was thinking the various tracks that will pop out of mpeg2parse
[05:40] <omega_> right
[05:40] <taaz> i'm thinking some custom element will be needed
[05:40] <omega_> mpeg2parse is smart enough to not push data out to pad that don't have peers
[05:40] <omega_> so you just disconnect the audio_queue from one and connect it to the other
[05:40] <omega_> that's it
[05:41] <taaz> hmm... ok
[05:42] <omega_> is this hard for some reason in oms?
[05:42] <taaz> not in the current code
[05:42] <omega_> good.  I'd hope not
[05:43] <taaz> i don't quite understand the logic that is choosing between ac3/pcm/dtts modes though
[05:43] <omega_> hmm
[05:43] <omega_> well, so I have no idea how pcm audio tracks work
[05:44] <omega_> maybe that's what goes in audio_ts
[05:44] <omega_> I've never seen a disk disk any, so that could be interesting
[05:48] <taaz> for autopluging wouldn't it be so much easier to use URI-ish syntax?  ie dvd:/dev/dvd http:/foo.com/bar.mp3, v4l:/dev/video0 etc?  default to file mode i guess  that way you have a known source vs guessing the media type as well as format
[05:57] <omega_> that's what the gnomevfssrc will do
[06:03] <omega_> YES!
[06:03] <omega_> muhahahaah
[06:09] <taaz> ?
[06:09] <omega_> dynamic autoplugger works <g>
[06:12] <omega_> disksrc location=audiofile ! autoplugger ! osssink
[06:12] <taaz> neat
[06:12] <taaz> can it do video+audio?
[06:13] <omega_> not yet
[06:13] <omega_> it can autoplug any caps to any caps, as long as there's a path, though
[06:14] <omega_> so if you have a visualizer that goes from audio to video/raw and disksrc location=audiofile ! autoplugger ! xvideosink
[06:14] <omega_> it should work <g>
[06:15] <taaz> so... is doing AV a matter of hooking up new pad signals from parsers to an autoplugger with 2 possible output sinks? and just use the one that succeeds?
[06:16] <omega_> not yet, but that's the idea, sorta
[06:16] <omega_> I'll post to the list with what I do, and what I might do to generalize the solution
[06:19] <omega_> what's your vote for LAD logo?
[06:20] <taaz> i like the circle one... though it really has nothing to do with LAD ;)
[06:20] <omega_> but I can't even tell what the first one is....
[06:20] <omega_> if that's supposed to read 'lad', someone's got more imagination than me
[06:20] <taaz> heh
[06:21] <omega_> and if you were here last night, you'd know what I mean <g>
[06:21] <taaz> and i still say my gst newt logo is really cool ;)
[06:21] <taaz> uh.. what?
[06:21] <omega_> btw, did you see the mockup of the webpage that Brock did?
[06:22] <taaz> um.. i dont recall
[06:22] <omega_> lemme put it on the web, sec..
[06:25] <omega_> gstreamer.net/gst-net.gif
[06:26] <taaz> <shrug>  different... better? worse?  i dunno...
[06:26] <omega_> better, I think
[06:26] <omega_> he's working on the .shtml's to make it a drop-in
[06:27] <taaz> personally i wish people would let me choose the background color; i live in dark rooms... white backgrounds hard on my eyes...

More information about the gstreamer-devel mailing list