[gst-devel] Daily IRC logs

wim.taymans at chello.be wim.taymans at chello.be
Sat Apr 28 06:27:49 CEST 2001


[06:34] wtay-sleeping (wim at cable-195-162-214-190.upc.chello.be) left irc: Ping timeout for wtay-sleeping[cable-195-162-214-190.upc.chello.be]
[06:34] wtay-sleeping (wim at cable-195-162-214-190.upc.chello.be) joined #gstreamer.
[06:34] ajbusy (me at p56-max11.dun.ihug.co.nz) left irc: Ping timeout for ajbusy[p56-max11.dun.ihug.co.nz]
[06:34] dobey (dobey at dreadnought.ximian.com) left irc: Ping timeout for dobey[dreadnought.ximian.com]
[06:34] dobey (dobey at dreadnought.ximian.com) joined #gstreamer.
[06:35] dobey (dobey at dreadnought.ximian.com) left #gstreamer.
[06:36] ajbusy (me at p56-max11.dun.ihug.co.nz) joined #gstreamer.
[07:18] herring (seth at null.Stanford.EDU) left irc: Read error to herring[null.Stanford.EDU]: Connection reset by peer
[08:03] Nick change: taaz -> taazzzz
[08:10] _gst_newt_ joined #gstreamer.
[08:28] seth (seth at null.Stanford.EDU) joined #gstreamer.
[09:05] Nick change: ajbusy -> ajmitch
[09:24] ajmitch (me at p56-max11.dun.ihug.co.nz) left irc: Ping timeout for ajmitch[p56-max11.dun.ihug.co.nz]
[09:50] ajmitch (me at p40-max5.dun.ihug.co.nz) joined #gstreamer.
[10:32] ajmitch (me at p40-max5.dun.ihug.co.nz) left irc: Ping timeout for ajmitch[p40-max5.dun.ihug.co.nz]
[10:45] ajmitch (me at p40-max5.dun.ihug.co.nz) joined #gstreamer.
[10:52] ajmitch (me at p40-max5.dun.ihug.co.nz) left irc: Ping timeout for ajmitch[p40-max5.dun.ihug.co.nz]
[10:54] ajmitch (me at p40-max5.dun.ihug.co.nz) joined #gstreamer.
[11:42] ajmitch (me at p40-max5.dun.ihug.co.nz) left irc: Ping timeout for ajmitch[p40-max5.dun.ihug.co.nz]
[11:46] ajmitch (me at p40-max5.dun.ihug.co.nz) joined #gstreamer.
[12:18] ajmitch (me at p40-max5.dun.ihug.co.nz) left irc: Ping timeout for ajmitch[p40-max5.dun.ihug.co.nz]
[12:21] ajmitch (me at p40-max5.dun.ihug.co.nz) joined #gstreamer.
[12:36] ajmitch (me at p40-max5.dun.ihug.co.nz) left irc: Ping timeout for ajmitch[p40-max5.dun.ihug.co.nz]
[12:37] ajmitch (me at p40-max5.dun.ihug.co.nz) joined #gstreamer.
[12:54] ajmitch (me at p40-max5.dun.ihug.co.nz) left irc: Ping timeout for ajmitch[p40-max5.dun.ihug.co.nz]
[12:58] ajmitch (me at p40-max5.dun.ihug.co.nz) joined #gstreamer.
[13:15] ajmitch (me at p40-max5.dun.ihug.co.nz) left irc: Ping timeout for ajmitch[p40-max5.dun.ihug.co.nz]
[13:19] ajmitch (me at p40-max5.dun.ihug.co.nz) joined #gstreamer.
[14:15] Nick change: ajmitch -> ajzzzz
[14:26] thomas (thomas at 212-100-172-175.adsl.easynet.be) joined #gstreamer.
[14:54] Nick change: ajzzzz -> ajmitch
[16:10] matth_ (matth at 63.228.189.94) left irc: Ping timeout for matth_[63.228.189.94]
[16:26] iGN_ (ign at login1.simplemente.net) got netsplit.
[16:26] Gandalf_ (gandalf at tux.rsn.bth.se) got netsplit.
[16:26] taazzzz (dlehn at 66.37.66.32) got netsplit.
[16:26] BBB-zZz (BBB at ucu-105-116.ucu.uu.nl) got netsplit.
[16:26] taazzzz (dlehn at 66.37.66.32) returned to #gstreamer.
[16:26] iGN_ (ign at login1.simplemente.net) returned to #gstreamer.
[16:26] Gandalf_ (gandalf at tux.rsn.bth.se) returned to #gstreamer.
[16:27] BBB-zZz (BBB at 131.211.105.116) joined #gstreamer.
[16:53] Nick change: taazzzz -> taaz
[16:53] wtay-sleeping (wim at cable-195-162-214-190.upc.chello.be) left irc: Client Exiting
[20:54] _gst_newt_ joined #gstreamer.
[20:54] <wtay> _gst_newt_: hi
[20:55] <ChiefHighwater> hehe
[20:56] Action: wtay should add _gst_newt_ to rc.init...
[21:00] Action: BBB-zZz is away: I'm busy
[21:00] Action: BBB-zZz is back (gone 00:00:01)
[21:00] Nick change: BBB-zZz -> BBB
[21:09] Nick change: omega_lunch -> omega_
[21:10] <wtay> omega_: I got an mpeg1 system stream working with autoplug
[21:10] <omega_> hrm, that was quick
[21:10] <wtay> but...
[21:10] <wtay> cothread: there's no thread, strange...
[21:10] Last message repeated 1 time(s).
[21:10] <wtay> etc...
[21:10] <omega_> hmm
[21:10] <wtay> do you check EOS?
[21:11] <omega_> no
[21:11] <wtay> examples/autoplug in CVS
[21:11] <wtay> mp3 and ogg work too
[21:11] <wtay> avi/mpeg2 don't work
[21:12] <wtay> try with everest.mpg
[21:12] <omega_> massive cothread problems
[21:13] <wtay> AlienSong crashes...
[21:14] <wtay> to what state should I switch before adding elements and connecting pads?
[21:14] <omega_> it depends
[21:14] <omega_> can you outline the steps the autoplugger takes in the mpeg1video case ?
[21:14] <wtay> ok
[21:15] <wtay> first a disksrc is added to a pipeline
[21:15] <wtay> then typefind is connected to it and the pipeline foes trough 1 _iterate()
[21:15] <wtay> If all goes well, the caps on the disksrc are set to the type
[21:15] <omega_> how?
[21:16] <wtay> then the typefind element is removed and the autoplugger is called with an osssink/xvideosink as the target and the disksrc src caps as the source
[21:16] <wtay> just gst_bin_remove
[21:16] <omega_> ok, so what I see is:
[21:17] <wtay> after setting the pipeline to NULL
[21:17] <omega_> new bin
[21:17] <omega_> new disksrc
[21:17] <omega_> add disksrc to bin
[21:17] <omega_> new typefind
[21:17] <omega_> add typefind to bin
[21:17] <omega_> connect src to typefind
[21:17] <omega_> iterate bin once
[21:17] <omega_> (which means setting to PLAYING, iterate(), and back to PAUSED)
[21:17] <wtay> set to PLAYING first...
[21:17] <wtay> back to NULL actually
[21:17] <Happyfeet> someone should write a "state of the gstream address" to cover all the bases in regards to where the project stands today
[21:18] <omega_> that's the difference, incsched makes that set to NULL not necessary
[21:18] <wtay> ok
[21:18] <omega_> Happyfeet: quite
[21:18] <wtay> PAUSE should do then?
[21:18] <omega_> incsched allows changes during paused
[21:18] <omega_> actually...
[21:18] <wtay> but not during PLAYING?
[21:18] <omega_> you can even do it during playing if you know what you're doing
[21:18] <Happyfeet> sorry i'll be quiet
[21:19] <wtay> I don't know what I'm doing :-)
[21:19] <omega_> Happyfeet: no, I agree, but good luck finding someone with time to do it <g>
[21:19] <Happyfeet> oh, heh, i thought you said quiet... omega, your the man :> take a break, drink a coffee, ahem
[21:19] <omega_> Happyfeet: hehehe
[21:20] <wtay> heh
[21:20] <wtay> hum, cothread: there's no thread, strange...
[21:20] <wtay> cothread: there's no thread, strange...
[21:20] Last message repeated 1 time(s).
[21:20] <wtay> happens all the time now
[21:21] <wtay> everest still plays though
[21:21] <omega_> yay <g>
[21:21] <omega_> doesn't show anything for me
[21:21] <wtay> ?
[21:21] <wtay> ./autoplug /opt/data/everest.mpg 
[21:21] <wtay> works reliable here
[21:22] <wtay> oh well.. inside the autoplugged bin, pads are connected in the PLAYING state, maybe I should hange that first
[21:23] <omega_> um, hmm
[21:24] <omega_> um
[21:24] <wtay> ?
[21:25] <omega_> I get nothing, are you sure you have the whole thing in CVS?
[21:25] <omega_> grrr!
[21:25] <omega_> less doesn't do colors
[21:25] <omega_> that's so broken
[21:25] <wtay> gmm
[21:26] <wtay> lemme commit everything I have 
[21:26] <omega_> less -r works
[21:27] Action: omega_ aliases less
[21:31] <omega_> gstreamer.net/patches/color-debug.diff
[21:31] <omega_> touches acconfig.h, configure.in, gst/gst.c, gst/gstinfo.[ch]
[21:32] <omega_> I'll commit this to HEAD in a sec
[21:32] <wtay> cool
[21:34] <omega_> the patch is messed up, but I can get it into HEAD
[21:34] <Happyfeet> is there a plugin for gstreamer that'll make my voice sound like peter frampton's guitar yet ?
[21:35] <omega_> nope
[21:35] Action: omega_ has no idea what peter frampton's guitar sounds like anyway <g>
[21:35] <Happyfeet> too bad, thats a real must :)
[21:36] <wtay> you'll need a guitar too of course..
[21:37] <omega_> that helps
[21:37] <wtay> :)
[21:37] Action: omega_ vaguely remembers a dream from last night where he decided to learn to play the guitar
[21:37] Action: omega_ is not joking
[21:38] Action: wtay broke a guitar string yesterday :(
[21:39] Nick change: taaz-away -> taaz
[21:39] <omega_> Uraeus: another feature is about to go into HEAD: colorized debug/info statements <g>
[21:39] <taaz> omega_: those colored logs look nice... but i can't figure out what the colors mean ;)
[21:39] <omega_> nothing yet, the commit will make them based on categories
[21:39] <omega_> though /me needs to fix up half of them still
[21:42] <Uraeus> :)
[21:42] Action: wtay is tired...
[21:42] Action: omega_ hands wtay some caffeine
[21:43] <ChiefHighwater> hehe
[21:43] <omega_> since today is friday, you're supposed to be up until well after I get back to pdx, right? <g>
[21:43] Action: wtay fetches something to drink
[21:43] <wtay> omega_: pfff, I had a rough week...
[21:45] <Happyfeet> hello my name is luka, i live on the second floor
[21:45] <wtay> I live upstairs from you?
[21:45] <Happyfeet> :) You got it
[21:46] <wtay> anything you want?
[21:46] Action: omega_ urges Happyfeet to walk upstairs and aid wtay in the operation of his coffee-machine
[21:46] <wtay> (roy orbison)
[21:47] <Happyfeet> got a tougher one here for ya, wanna try
[21:47] <wtay> yup
[21:48] <Happyfeet> "lately i've had this strangest feeling"  first line
[21:48] <taaz> omega_: any chance you want dual colored mode?  like the DEBUG/INFO colored based on catagory and the filenames based on some hashing scheme?
[21:48] <omega_> possibly
[21:48] <wtay> Happyfeet: nope...
[21:48] <omega_> we can rev it until it blinds us for life, yes
[21:48] <omega_> <BLINK> <BLINK> !!!! <evil-laugh>
[21:49] Action: wtay is trying to find out why autoplug fails on mpeg2
[21:50] Action: omega_ is trying to figure out what he broke to make most of the output appear in white
[21:50] <seth> hullo
[21:51] <omega_> also, we need to add some signal handlers to output '\033[00m' before exitting, else the cmdline stays the most recent color
[21:51] <omega_> seth: yo
[21:51] <omega_> FYI seth == herring
[21:51] <wtay> yo
[21:52] <seth> omega_: herring==seth
[21:52] <omega_> yeah
[21:52] <omega_> diff ?
[21:52] <omega_> <g>
[21:52] <seth> seth != rutabega
[21:52] <omega_> seth == penguin-fodder <g>
[21:53] <seth> omega_: seth == eazel weazel
[21:53] <omega_> hehehe
[21:53] <omega_> any news on that nautilus multimedia competition?
[21:53] <seth> omega_: I think its Andy's domain, and he's never on IRC
[21:54] <omega_> heh
[21:54] Action: wtay has had orders from higher powers to implement the g-force plugin...
[21:54] <omega_> heheh
[21:54] <taaz> you could bold, reverse, or underline output too
[21:54] <omega_> yeah, see GstDebugColors node
[21:55] <omega_> but /me doesn't want to be driven into an epileptic fit just trying to debug stuff
[21:55] <seth> omega_: Darin doesn't think we are :-(
[21:55] Action: wtay has been told that the higher power needs more RAM..
[21:55] <omega_> seth: darn, I feared the sourcexchange thing would kill it
[21:56] <seth> "the sourcexchange thing" ?
[21:56] <omega_> sourcexchange is no nore
[21:56] <omega_> er, more
[21:57] Action: taaz has never heard '*' pronounced as "Splat!"
[21:58] <omega_> think about it, it looks like something gone splat <g>
[21:58] <taaz> yeah, i see where it comes from but i've just never heard it before
[21:58] <omega_> hehe
[21:58] <omega_> and when animated, it's even cooler <g>
[21:58] Action: omega_ tried to get povray blobs to cooperate last night, didn't get very far
[21:59] Action: omega_ will work on his particle simulation system to do that better
[21:59] Action: omega_ listens to two RR people describing GStreamer to two visitors <g>
[22:00] <seth> omega_: So what are the top things GStreamer is needing right now to be "consumer usable" ?
[22:00] <omega_> stability <g>
[22:00] <omega_> and apps
[22:00] <seth> Apps?
[22:00] <omega_> yeah, like rhythmbox
[22:00] <seth> One would think a basic media player would suffice
[22:01] <seth> Consumer usable == plays movies found on the net
[22:01] <omega_> for most people, yes
[22:01] <omega_> right
[22:01] <seth> right
[22:01] <omega_> unfortunately, we also need things like codecs, which for a lot of stuff on the net means Sorenson
[22:01] <seth> I mean, there's lots of other cool segments that could potentially use gstreamer
[22:01] <omega_> bleck
[22:01] <seth> Sorenson and DivX
[22:01] <omega_> yup
[22:01] <wtay>  hmmm, vob does play after all...
[22:01] Action: omega_ hopes we could pull the original DiVX trick with quicktime .dll's <g>
[22:01] <seth> Has somebody ported the Project Mayo CODEC yet?
[22:02] <omega_> 3ivx is porting to gstreamer right now, from what they say
[22:02] <taaz> DivX works, it's just ~1 second off sync
[22:02] <omega_> right now it's the old .dll hack
[22:02] <seth> omega_: 3ivx?
[22:02] Action: seth is not familiar with 3ivx
[22:02] <omega_> another mpeg4 group
[22:02] <omega_> closed codec though, afaik
[22:03] <seth> OK
[22:03] Action: wtay notices that vobs don't play when -register is done first...
[22:03] <omega_> whoops
[22:03] <omega_> that's a switch
[22:03] <seth> It seems that a CODEC for gstreamer based on ProjectMayo's OpenDivX would make sense
[22:04] <omega_> yup
[22:04] <omega_> though I'd rather use something like sampeg, which is a from-scratch mpeg4 codec
[22:04] <omega_> opendivx is *heavily* based on the reference codec, which by definition sucks
[22:04] <seth> yes
[22:04] <BBB> omega_: you'll get it, no worry - andrew knows how to do such things
[22:05] <seth> omega_: It does produce good quality results given enough CPU though
[22:05] <seth> omega_: Which would be a step up from the current situation
[22:05] <omega_> not from the comparisons I've seen...
[22:05] <omega_> but those may be bogus
[22:05] Action: seth prefers a stable if unoptimised CODEC to a buggy crashy codec
[22:05] <omega_> true
[22:05] <seth> Which seems to be the favoured approach on Linux
[22:06] <seth> Everyone MMX optimizes the hell out of their AVI decoders before they are even algorithmically sound or even *stable*
[22:06] <omega_> heh
[22:06] <taaz> another Gbox name... '*' == 'asterisk', so take root 'aster' add box == asterbox.  maybe just codename it 'splat' ;)
[22:06] <omega_> that's one of the aism of libcodec, so they don't have to make that choice, they just use a known math kernel implementation
[22:06] <omega_> taaz: hrm, run that past some naming people first <g>
[22:07] <taaz> is there a naming committee? ;)
[22:07] <seth> omega_: So is 3ivx compatible with standard "Microsoft" DivX encoded files?
[22:07] <omega_> no, but consider how the name would compete with TiVO and Xbox....
[22:07] <omega_> seth: no idea
[22:07] <omega_> M$ files come in 4 variants, v1, v2, v3, and ISO
[22:07] <omega_> ISO is the only one that 'complies'
[22:07] <seth> yes
[22:08] <omega_> divx hack is v3, they worked on ISO but dunno how far they got
[22:08] <seth> But I see an awful lot of v3 and v2
[22:08] <omega_> opendivx is ISO
[22:08] <omega_> and 3ivx should be ISO
[22:08] <seth> omega_: You want to be able to read all 4
[22:08] <taaz> oh jeez... Xbox can kiss my a$$. _gst_newt_ can quote me on that.
[22:08] <omega_> but /me hates the whole DiVX ;-) name, it's *stupid*
[22:08] <seth> yes
[22:09] <omega_> we need to add the a '_gst_newt_ can quote me on that' pattern to the GstIrcWishList
[22:09] <seth> omega_: Did you know Apple had a version of QT w/ Sorenson running on Linux but decided not to release it? :-(
[22:09] <omega_> I think I heard that at one point
[22:09] Action: omega_ hates Apple
[22:10] <seth> I actually have no comprehension of their motives here.
[22:10] <taaz> apple killed my nice openstep desktop... i've still not over that
[22:10] <omega_> one of the reasons I made libgst LGPL'd was in hopes that it'd gain enough momentum for Apple to release closed codecs
[22:10] <seth> If they didn't release for Windows, that would make sense (e.g. Macintosh is the only platform with the "superior" Sorenson CODEC)
[22:10] <taaz> s/i've/i'm/
[22:11] <taaz> does someone know the tricks needed to use win32 dlls to vies sorenson stuff in gstreamer?
[22:11] Action: omega_ hopes that RR's connections and potential customers can assist in the process of getting Sorenson for Linux
[22:11] <omega_> sorenson codec is hidden deep in quicktime stuff, not .dll's
[22:11] <omega_> so it's a very non-trivial problem
[22:11] <seth> *very* non-trivial
[22:11] Action: seth has tried before
[22:12] <seth> damn.
[22:12] Action: seth having no luck compiling gstreamer
[22:12] <omega_> same old?
[22:12] <seth> damn you auto*, damn you
[22:12] <seth> yes
[22:12] <omega_> you running sid?
[22:12] <seth> yes
[22:12] <omega_> hrm
[22:13] <omega_> wtay: aren't you running sid too?
[22:13] Action: seth likes having arrows embedded in his back <g>
[22:13] <taaz> heh..  i watched auto* tools go to 100M mem usage yesterday ;) that's neat
[22:13] <omega_> richardb is working on fixing that
[22:13] <wtay> omega_: dunno
[22:13] <taaz> yeah... i never noticed till he pointed it out
[22:13] <richardb> Hello!
[22:13] <richardb> Just got home. :)
[22:13] <omega_> wtay: you don't know what debian release you're using??
[22:13] <seth> *woah*
[22:13] <seth> It just worked
[22:13] <taaz> omega_: call it 'unstable' and it makes more sense
[22:13] <wtay> omega_: I have all sources I could find listed in sources.list
[22:14] <seth> wtay: (*eek*)
[22:14] <seth> taaz: you gave me the missing clue
[22:14] <omega_> taaz: true, but I like 'sid', Perens' best contribution of all (IMO)
[22:14] <richardb> I know of one automake problem which causes it to go to >100Mb mem usage when generating plugins/Makefile.in
[22:14] <seth> taaz: I have a fair bit of RAM, but 100 is enough that it might need to dig into swap
[22:14] <seth> taaz: Which I have disabled :-)
[22:14] <omega_> mu
[22:14] <richardb> Bug report sent.
[22:14] Action: seth enabled his swap and presto it works
[22:14] <omega_> doh
[22:14] <seth> richardb: Which is the first file I Couldn't generate ;)
[22:15] <wtay> omega_: hmm, got something wierd...
[22:15] Action: omega_ is getting very frustrated by this colorization stuff, it's just not happening
[22:15] <omega_> wtay: ?
[22:15] <wtay> s/wierd/weird
[22:16] <wtay> omega_: in the autoplugger I construct a bin and add elements to it... this seems to crash now
[22:16] <omega_> oh?
[22:16] <wtay> omega_: hmm, I think I mad a mistake...
[22:17] <wtay> omega_: I guess you can't set it to PLAYING when it is not yet insed a pipeline
[22:18] <wtay> s/insed/inside
[22:18] <omega_> could be, yeah, a Bin doesn't like that, and should be more explicit
[22:20] Action: omega_ is confused by a mismatch in categories
[22:20] <omega_> ah, I added a lot of non-zero categories to incsched, but not to HEAD
[22:20] <omega_> ok, /me commits the colorization patch now
[22:22] <omega_> committed, you'll need to either autogen or add #define GST_DEBUG_COLOR to your config.h as a quick patch
[22:22] <omega_> then rebuild everything, since DEBUG is a macro, or just rebuild gstinfo.c if you only care about INFO colors
[22:23] thomas (thomas at adsl-63648.turboline.skynet.be) joined #gstreamer.
[22:23] <omega_> yo
[22:23] <thomas> hi
[22:23] <thomas> omega_: you're thinking about making that gbox ?
[22:24] <thomas> how about making it an open-source DIY type of thing ?
[22:24] <omega_> basically, yes
[22:24] <thomas> I've been thinking about it as well the past months
[22:24] Action: omega_ is gonna start with a G400-TV probably
[22:24] <thomas> I had some other ideas for it as well
[22:24] <thomas> like : you're watching tv from your computer...
[22:24] <omega_> put them in the wiki <g>
[22:24] <thomas> ... and when the phone rings or you get mail...
[22:24] <omega_> GboxUsageIdeas, i think
[22:24] <thomas> ... it says so on top of the screen
[22:24] <thomas> ok... will do.
[22:25] <omega_> yeah, a lot of those are in the /. story too
[22:25] <thomas> I have a trident blade 3d lying around...
[22:25] <thomas> would that work with gstreamer ?
[22:25] <thomas> I mean, me being new to video
[22:25] <omega_> that chip? of course, though I dunno if it'd do Xv YUV stuff
[22:25] <omega_> checking...
[22:26] <thomas> What exactly us Xv YUV stuff ?
[22:26] <omega_> video colorspace conversion acceleration in hardware
[22:26] <thomas> Basically I'd like a combination of two cards with the least degradation in video quality as possible
[22:26] <thomas> ah ok.
[22:26] <thomas> I'm going to talk with some friends at a computer store and propose the idea to them
[22:26] <thomas> and see how much they're willing to sponsor
[22:26] <omega_> heh
[22:27] <thomas> so an Xv YUV card is a must then ?
[22:27] <wtay> yes
[22:27] <wtay> hi thomas
[22:27] <omega_> yeah, for any speed
[22:27] <thomas> hi wtay
[22:27] <thomas> and for input ? Do I need something like a brooktree card ?
[22:28] <thomas> or is any linux-supported video in card with a tuner ok ?
[22:28] <omega_> problem with brooktree is that it's raw
[22:28] <omega_> you want a mjpeg card for maximum speed/quality
[22:28] <thomas> are there cards that take coax in and put mpeg out ?
[22:28] <omega_> yes, they're very expensive
[22:28] <omega_> mjpeg is much cheaper
[22:28] <omega_> miro dc10+ can be had for $80, but doesn't have a tuner
[22:29] <thomas> what's mjpeg ? a sequence of jpegs that looks like mpeg ?
[22:29] <omega_> G400-TV is ~$200, but has mjpeg capture with tuner, mpeg accel, VGA, and TV out
[22:29] <omega_> yup
[22:29] <thomas> G400, that's matrox right ? I have a dualhead at work without tvout though
[22:29] Action: omega_ can't tell whether the blade3d does Xv or not, but it looks like it might
[22:29] <omega_> yup
[22:29] <thomas> so a G400 would be good... they should have that at that store
[22:30] <thomas> so then you need only one card as well
[22:30] <omega_> not cheap though, the G400-TV
[22:30] <omega_> then again, if you want two tuners, you've got a problem
[22:30] <thomas> yeah... can you put in two G400's ?
[22:30] <omega_> thats why I want to work toward onboard video (like the ProSavage) and have just a mjpeg tuner/decoder/coder card, so I can have 2+
[22:30] <omega_> you can have two if you can get AGP + PCI, or 2x PCI
[22:31] <omega_> good luck
[22:31] <thomas> you too ;)
[22:31] <omega_> you'd be better off with two Rainbow runner's
[22:31] <thomas> but they seem to be hard to find, right ?
[22:31] <omega_> but those aren't built anymore,a faict
[22:31] Action: wtay has no luck with autoplug
[22:31] Action: omega_ heads for pdx in 1:10
[22:31] <thomas> omega_: how's incsched moving along ?
[22:31] <thomas> omega_: I want to get on it
[22:32] <omega_> we hope to have it merged by Monday
[22:32] <thomas> cool...
[22:33] <omega_> if wtay can figure out autoplug <g>
[22:33] <thomas> what format is being used for timestamps right now ?
[22:33] <omega_> where they're used, UST
[22:33] <omega_> == nanoseconds since zero
[22:33] <omega_> zero == boot for system clock, zero == origin for stream times
[22:33] <wtay> omega_: I'm going to taka another approach, I'll make some code that does exactly what autoplug does and try to work with that
[22:34] <omega_> ok, then commit it so I can examine it
[22:34] <omega_> can you have that in <1hr ?
[22:34] <wtay> yup
[22:34] <omega_> so I can look over it on the plane...
[22:34] <wtay> I doubt it...
[22:34] <thomas> wtay: if I use timestamps in the mixer...
[22:34] <thomas> ... I should probably give a new channel some kind of timestamp offset as well
[22:34] <thomas> to get sample-precise control on the mixing ?
[22:34] <omega_> yup
[22:35] <omega_> wtay: can you commit what you've got at least?
[22:35] <omega_> fyi, mp1vid works, if that helps
[22:35] <wtay> omega_: I have nothing yet...
[22:35] <thomas> wtay: if I download aalib... what's the easiest way to see it work ?
[22:35] <omega_> no, I mean the latest autoplug attempts
[22:35] <thomas> with gstreamer and a movie i mean
[22:35] <wtay> omega_: ok
[22:36] <omega_> gstreamer-launch disksrc location=mpeg1videofile.mpg ! mpeg_play ! aasink
[22:36] <wtay> insert mp1videoparse too...
[22:37] <omega_> why? if it's elementary you don't need it
[22:37] <omega_> everest.m1v works fine
[22:37] <wtay> mpeg_play expects data on sync boundaries
[22:37] ajmitch (me at p49-max3.dun.ihug.co.nz) joined #gstreamer.
[22:39] <wtay>  ./gstreamer-launch disksrc location=/opt/data/everest.mpg ! mp1videoparse ! mpeg_play ! aasink
[22:39] <wtay> runs perfect
[22:39] <ajmitch> hi
[22:40] omega_ (omega at qwest.dsplinux.net) left irc: Ping timeout for omega_[qwest.dsplinux.net]
[22:40] <wtay> it also works without mp1videoparse but that's only by accident
[22:40] <wtay>  ./gstreamer-launch disksrc location=/opt/data/everest.mpg ! mpeg2dec ! aasink
[22:40] <wtay> also works
[22:42] <thomas> wtay: your rename command was a script, right ?
[22:42] <thomas> is it bash or perl ?
[22:42] <wtay> thomas: ?
[22:42] <matth_> wtay: sorry to interrupt... are you working on INCSCHED1?
[22:43] <thomas> well, if you check your "rename" command with whereis rename
[22:43] <wtay> matth_: trying to get the autoplugger to work
[22:43] <thomas> and look at it... wasn't it a script ?
[22:43] <thomas> because mine is a binary and I'm trying to figure out what it belongs to
[22:43] <wtay> thomas: a script
[22:43] <thomas> because I've always used that on red hat
[22:43] <thomas> I didn't even know there was an alternate version
[22:44] <thomas> is it bash or perl ?
[22:44] <matth_> wtay: cool!  i have thread sync working (i think ;-) but i haven't checked it in...  i'll do so...
[22:44] <wtay> perl
[22:44] <wtay> matth_: ok
[22:44] omega_ (omega at qwest.dsplinux.net) joined #gstreamer.
[22:44] <omega_> grrr
[22:44] <omega_> FYI, it seems that -R might be a better option for less than -r
[22:45] Action: wtay always uses more
[22:45] <omega_> ah, that works too <g>
[22:45] <omega_> but less is more!
[22:45] Action: thomas is going to try to get the trident card working
[22:45] <ajmitch> less is more than more
[22:45] <wtay> right :-)
[22:46] <omega_> so, everyone like colorized output?
[22:46] <ajmitch> yup, once i see it ;)
[22:46] <ajmitch> we can change the colours? 
[22:46] <omega_> yeah, in gstinfo.c
[22:47] Action: wtay thinks we need a ccapplet to configure the colours
[22:47] <ajmitch> without recompiling?
[22:47] <thomas> hmmm... gstinfo causes error on my new cvs compile
[22:48] <omega_> which?
[22:48] <thomas>   [GST_CAT_NEGOTIATION] = "",   
[22:48] <thomas>   [31] = "";
[22:48] <thomas> this is the last line of the colorization struct
[22:48] <omega_> oops, I thought I fixed
[22:48] <omega_> s/;/,/
[22:49] <thomas> delete that 31 line ?
[22:49] <matth_> wtay: i checked in.  sorry i checked the files in separately...
[22:49] <omega_> no, replace ; with ,
[22:49] <omega_> or update
[22:49] <wtay> matth_: compiling..
[22:49] <omega_> fix in cvs
[22:49] <wtay> patching gstinfo...
[22:49] <omega_> incsched has it correct afaik
[22:51] <wtay> gstinfo.c:98: warning: excess elements in array initializer
[22:51] <wtay> gstinfo.c:98: warning: (near initialization for `_gst_category_colors')
[22:51] <wtay> gstinfo.c: In function `_gst_debug_stringhash_color':
[22:51] <wtay> gstinfo.c:104: warning: `filecolor' might be used uninitialized in this function
[22:51] <omega_> eh??
[22:51] <wtay> looks evil...
[22:51] <omega_> checking
[22:52] <wtay> only a warning
[22:52] <thomas> isn't it just the ; that has to be deleted in this line
[22:52] <omega_> are you sure you have the latest?
[22:52] <thomas>   [31] = "";
[22:52] <omega_> yes, delete it works too
[22:52] <ajmitch> you know who to blame... ;)
[22:52] <thomas> my compile is ok now
[22:52] <wtay> omega_: pretty sure..
[22:52] <wtay> omega_: I'm in head now
[22:52] <seth> omega_: hmm...so its compiled now, but gstmediaplay seems to segfault on everything
[22:53] Action: thomas is going to be away for some time
[22:53] <wtay> brb
[22:53] <omega_> wtay: why are you on HEAD ?
[22:54] <omega_> seth: not sure, can you backtrace it?
[22:56] <seth> omega_: Are there a set of reference files to excercise each plugin?
[22:57] <omega_> no ;-(
[22:57] <seth> argh
[22:57] <seth> That would be another good thing to collect
[22:57] <seth> Is there a bugzilla for gstreamer somewhere?
[22:58] <wtay> omega_: hmm, good question...
[22:58] <wtay> omega_: ah, I found a bug in gstutils.c
[22:59] Uraeus (cschalle at c224s9h5.upc.chello.no) left irc: syntax error - user imploded
[23:00] <omega_> incsched has fixes to colorization
[23:01] <omega_> seth: sourceforge bug system, not in use yet
[23:01] <omega_> wtay: which function?
[23:01] <omega_> I think 0.2.0 will mark the beginning of when we can start sanely collecting and dealing with bugs
[23:01] <wtay> omega_: enum passing from -launch (to swith the aasink driver)... not serious
[23:01] <omega_> hmm, ok
[23:03] <seth> omega_: Well I get a string of CRITICALs on assertions that various items aren't NULL when I startup gstmediaplay
[23:03] <seth> omega_: I don't know if this is expected behavior or not
[23:03] <omega_> did you make install?
[23:03] <omega_> cause you don't want to
[23:03] <seth> eh?
[23:04] <seth> ok...what do I want to do?
[23:04] <omega_> make uninstall <g>
[23:04] <omega_> just run it all from the builddir
[23:04] Action: seth smacks omega_ with a fresh trout
[23:04] <omega_> it's designed for that, and there are still some issues with having an installed copy as well, which we'll deal with
[23:04] <seth> ugh.
[23:04] <omega_> there are some plugin system changes that make that much easier
[23:04] <seth> My system gets raped when I do a make uninstall
[23:04] <omega_> oh?
[23:05] <seth> Gettext bug, I am told
[23:05] <seth> oh well
[23:05] <omega_> ick
[23:05] Action: omega_ is annoyed by the colorization, it broke again
[23:05] <seth> colourisation?
[23:06] <omega_> debug and info lines are now colorized by category, for readability
[23:06] <wtay> ./gstreamer-launch disksrc location=/opt/data/everest.mpg ! mpeg2dec ! aasink driver=2
[23:06] <seth> ah
[23:07] <omega_> ooh, it still works in incshed even <g>
[23:07] <wtay> well, that's an easy one...
[23:07] <wtay> :)
[23:08] <omega_> true
[23:08] <omega_> which driver outputs to stdout? <g>
[23:08] <wtay> after the cvs update in HEAD it'll show inside the current console using libslang
[23:08] <omega_> it doesn't seem to set the driver, I can use any value with no change
[23:09] <wtay> omega_: after cvs update?
[23:09] <omega_> checking
[23:09] <omega_> yes
[23:09] <wtay> in HEAD?
[23:12] <omega_> no, incsched
[23:12] <omega_> I only work in incsched right now <g>
[23:12] <wtay> oh ok
[23:13] <wtay> it'll work when you merge HEAD then :-)
[23:13] <omega_> anyone know offhand what the ENV var is to turn off bug-buddy on segfault?
[23:15] Nick change: ajmitch -> ajfood
[23:15] <wtay> oohh colours ;)
[23:16] <wtay> hmm, only everest somewhat works with insched/autoplug
[23:16] <seth> omega_: So should I gstreamer-register or not ?
[23:16] <wtay> seth: yes
[23:17] <seth> (!!!!)
[23:17] <seth> It wants to write to /etc/gstreamer (!)
[23:17] <seth> I'm not even using the / or /usr prefix
[23:18] <wtay> seth: It's hardcoded to /etc/gstreamer for now
[23:18] <seth> CaaaRASH!
[23:19] <seth> seth at null /gnome-source/gstreamer/gstplay $ ./gstmediaplay ~/sunset.mpg 
[23:19] <seth> INFO(22849:-1): Initializing GStreamer Core Library
[23:19] <seth> INFO(22849:-1): CPU features: (0c040843) MMX 
[23:19] <seth> ** CRITICAL **: file gstbin.c: line 172 (gst_bin_add): assertion `element != NULL' failed.
[23:19] <seth> ** CRITICAL **: file gstelement.c: line 577 (gst_element_connect): assertion `src != NULL' failed.
[23:19] <seth> ** CRITICAL **: file gstelement.c: line 326 (gst_element_get_pad): assertion `element != NULL' failed.
[23:19] <seth> ** CRITICAL **: file gstelement.c: line 273 (gst_element_add_ghost_pad): assertion `pad != NULL' failed.
[23:19] <seth> Segmentation fault
[23:19] <wtay> no indication of what element was not found?
[23:19] <wtay> do gstreamer-inspect
[23:20] <seth> And I can't debug very well without installing
[23:20] <omega_> wtay: key point: you can't go to PAUSED or PLAYING unless you have a managing parent
[23:20] <seth> wtay: Passing it the filename, or?
[23:20] <omega_> matth is adding a check in set_state for this
[23:20] <omega_> seth: why not?
[23:21] <seth> omega_: You can't run GDB on the libtool scripts
[23:21] <wtay> omega_: mpeg2parse2 in cvs has exactly the same problem
[23:21] <omega_> libtool gdb
[23:21] <wtay> omega_: it hangs 
[23:21] <wtay> DEBUG(28296:2)gst_element_set_state:739: setting element 'thread' to state PAUSED
[23:21] <wtay> DEBUG(28296:2)gst_element_set_state:754: intermediate: setting element 'thread' to state PAUSED
[23:21] <wtay> DEBUG(28296:2)gst_thread_change_state:227("thread"): entering
[23:21] <wtay> DEBUG(28296:2)gst_thread_signal_thread:437: sync-main: locking
[23:21] <wtay> DEBUG(28296:2)gst_thread_signal_thread:441: sync-main: waiting for spindown
[23:22] <seth> wtay: gstreamer-inspect returns a long list of plugins
[23:22] <omega_> give it a plugin name for details
[23:22] <wtay> seth: hmm good..
[23:22] <omega_> or element name
[23:22] <seth> backtrace from gstmediaplay crash:
[23:22] <seth> #0  0x407b196f in gst_static_autoplug_to_render (autoplug=0x809c788, 
[23:22] <seth>     srccaps=0x8078d78, target=0x8099078, args=0xbffff4b0)
[23:22] <seth>     at gststaticautoplugrender.c:270
[23:22] <seth> #1  0x4001f0c0 in gst_autoplug_to_renderers (autoplug=0x809c788, 
[23:22] <seth>     srccaps=0x8078d78, target=0x8099078) at gstautoplug.c:167
[23:22] <seth> #2  0x4059e87e in gst_play_set_uri (play=0x8096808, 
[23:22] <seth>     uri=0xbffff766 "/home/seth/sunset.mpg") at gstplay.c:395
[23:22] <seth> #3  0x4059fe20 in gst_media_play_start_uri (play=0x8070240, 
[23:22] <seth>     uri=0xbffff766 "/home/seth/sunset.mpg") at gstmediaplay.c:238
[23:22] <seth> #4  0x8048a44 in main (argc=2, argv=0xbffff5ac) at main.c:24
[23:22] <seth> #5  0x405c116b in __libc_start_main () from /lib/libc.so.6
[23:22] Action: omega_ leaves in 20min
[23:22] <omega_> sounds like wtay's problem <g<>
[23:23] <wtay> seth: do you have Hermes?
[23:23] <seth> Hermes?
[23:23] <wtay> omega_: check out mpeg2parse2 on a vob and see what I mean...
[23:23] <omega_> rg->rgb colorspace conversion with mmx
[23:24] <seth> wtay: Where do I get hermes?
[23:24] <omega_> wtay: matth's code is what you're in there...
[23:24] ChiefHighwater (paul at temple-baptist.com) left irc: Ping timeout for ChiefHighwater[temple-baptist.com]
[23:25] <wtay> omega_: it's actually very similar to mp1vid.c...
[23:25] <seth> wtay: OK, I just downloaded hermes 1.3...what do I want to do with hermes?
[23:25] <wtay> omega_: It does have an extra thread though...
[23:26] <wtay> seth: rm config.cache and rerun autogen.sh
[23:26] <omega_> autogen.sh removes config.cache
[23:26] <wtay> oh ok
[23:26] <seth> Is hermes something required that isn't configure checked yet?
[23:26] <wtay> seth: it is checked for but it's not fatal
[23:27] <taaz>  /etc/gstreamer isn't hardcoded... there's a configure option
[23:27] <wtay> taaz: true
[23:28] <wtay> omega_: do I need to set the toplevel pipeline to PAUSE or just the thread that has the element I'm working with?
[23:30] <omega_> just the thread you're working with
[23:30] <omega_> but /me leaves in <15min, I'd just suggest building a 1-for-1 static copy of an autoplug, even if it doesn't run
[23:31] <omega_> that's the only way I'll be able to reason about what autoplug needs to do in incsched, because I don't have any idea how autoplug works now
[23:32] <omega_> wtay: aasink driver=3 works <g>
[23:33] <wtay> omega_: try with mpeg2parse2 for now
[23:33] <omega_> ?
[23:33] <omega_> does that do the same thing basically?
[23:33] <omega_> if so, I'll work from that on the plane
[23:34] <omega_> aasink is so cool!
[23:34] <wtay> omega_: just like mp1vid but with a thread, and it locks in a very similar way autoplug does
[23:35] <wtay> omega_: basically when the video pad is created, the decoder in the thread is connected to the new pad, when going to PAUSED, it locks
[23:36] Nick change: ajfood -> ajmitch
[23:36] <wtay> omega_: the change state is triggered from the other thread context so maybe that's an issue
[23:38] <omega_> ok, I'll work through it
[23:38] Action: omega_ packs to head home
[23:39] <wtay> omega_: ok, have a nice flight then..
[23:40] <thomas> wtay: where should mpeg2dec be installed ? I compiled and installed it but configure can't find it.
[23:40] <omega_> taaz: does mpeg2dec 0.2.0 create libmpeg2dec by default?
[23:41] <matth_> wtay: 2 things...
[23:42] <matth_> 1. i'm in the process of reproducing the hang you got -- i'll let you know when i get there
[23:43] <matth_> 2. i added a check to gstelement.c::gst_element_set_state() but autoplugging still segfaults (when it tries to iterate element not in PLAYING state?  or without sched?)
[23:43] <matth_> the check was:   g_return_val_if_fail (element->sched != NULL, GST_STATE_FAILURE);
[23:43] <matth_> wtay: i'm going to drive omega to the airport -- back in 30 min
[23:44] Nick change: matth_ -> matth-driving
[23:44] Action: thomas curses at configure
[23:45] <thomas> why isn't configure smart enough to check libraries again (not from cache) if they weren't there before ?
[23:46] <richardb> That would kind-of defeat the purpose of having a cache...
[23:46] <richardb> Though I agree it's annoying.
[23:47] <omega_> yeah, autoconf should have a macro that tells it to recheck regardless of cached value if the answer was 'no;'
[23:47] <richardb> Personally, I would prefer it without a cache: I think you can turn it of somehow.
[23:47] <omega_> autogen.sh now does rm -f config.cache anyway, so....
[23:47] Action: BBB is away: zzz
[23:47] <omega_> bleagh
[23:47] Nick change: BBB -> BBB-zZz
[23:48] <richardb> Alternatively, an option to configure which disabled the cache would be useful.
[23:48] Action: richardb plays his new Dream Disciples CD happily.
[23:48] <richardb> Went to shop to buy it today, and they were playing it when I got there. :)
[23:49] <ajmitch> dream disciples?
[23:49] <richardb> Hmm. Goth/rock.  Ish.
[23:49] <ajmitch> oh
[23:49] omega_ (omega at qwest.dsplinux.net) left irc: omega go home
[23:50] <seth> wtay: yay! that fixed it...
[23:50] <wtay> seth: does it work?
[23:50] <seth> wtay: If the library is required to prevent segfaults, shouldn't it be required rather than optional?
[23:51] <seth> wtay: At least on one MPEG, yes
[23:51] <wtay> seth: I tend to agree..
[23:51] <seth> hmm...it doesn't want to play again w/o closing the app, but whatever
[23:51] <wtay> seth: yup, that's still an issue
[23:52] <seth> wtay: So is somebody working on a DivX/MPEG-4 plugin for gstreamer?
[23:53] <wtay> seth: the guys from 3ivx are working on something
[23:54] <seth> wtay: Not open source it sounds like though...
[23:54] <seth> wtay: Do you know of existing free software MPEG-4 codecs besides project mayo?
[23:55] <wtay> seth: using the windows .dlls is an option
[23:55] <seth> wtay: not free software option !
[23:55] <wtay> sampeg is going to do mpeg4
[23:55] <wtay> or doing as a matter of fact..
[23:55] <seth> wtay: I'm interested not as an end-user atm, but towards the evolution of a decent media architecture from GNOME
[23:55] Action: wtay is transcoding his copenhagen .dv to mpeg1
[23:56] <wtay> seth: I think you came to the right project then :)
[23:56] <seth> wtay: I have been working on a media architecture with one of the people who designed the Be media architecture
[23:57] <wtay> seth: oh cool
[23:57] <seth> wtay: However with Eazel going down the tubes its not clear how much longer he'll be involved with the project
[23:57] <thomas> wtay: I redid configure from scratch, compiled, and now gstreamer-register insists on only checking /usr/local/lib/gst...
[23:57] <thomas> what gives ?
[23:57] <seth> wtay: So I'm looking at porting some of our CODECs / better aspects of the framework over to gstreamer
[23:57] <wtay> thomas: hmm, you only did ./configure, not ./autogen.sh?
[23:58] <wtay> seth: that would be very valuable and welcome
[23:58] <thomas> I did autogen.sh an hour aggo
[23:58] <thomas> was that bad ?
[23:59] <wtay> thomas: depends, if you do ./configure after that you'll have the problems you describe now
[23:59] <thomas> ok... I'll try and change something in the makefile in the tools dir then
[23:59] <seth> wtay: Really it looks like the primary thing gstreamer needs right now is some stability and either Sorenson / OpenDivX codecs
[00:00] --- Sat Apr 28 2001
[00:00] <wtay> seth: stability is a problem now, too much is still evolving...
[00:00] <wtay> seth: you have access to Sorenson?
[00:00] <seth> wtay: Gene does, I don't
[00:00] <seth> wtay: But its not an option for either of us, since it would be illegal ;-)
[00:00] <wtay> seth: you think they'll consider a port?
[00:00] <seth> wtay: They have already ported but decided not to release
[00:01] <wtay> seth: why?
[00:01] <seth> wtay: Who knows
[00:01] <seth> wtay: They are dumb-fucks maybe? <g>
[00:01] <wtay> seth: you think they'll get a clue someday?
[00:01] <seth> wtay: Only if its applied with a giant clue-stick
[00:01] <thomas> wtay: ok so how do I fix this then ?
[00:01] <seth> wtay: And maybe not even then
[00:01] <wtay> thomas: rerun autogen.sh
[00:02] <wtay> seth: can you apply some pressure on Gene?
[00:02] <seth> wtay: Nothing Gene can do...
[00:02] Nick change: ajmitch -> ajbusy
[00:02] <wtay> hmmm
[00:02] <seth> wtay: I'm sure he'd love to if he could. He's the other person working on Tadpole (though we haven't done much since Eazel got shakey)
[00:03] <wtay> Tadpole?
[00:03] <seth> wtay: Tadpole is a media framework somewhat similar to Be's
[00:03] <seth> wtay: (unsurprising since Gene designed Be's)
[00:03] <wtay> cool
[00:03] <wtay> seth: do you see any obvious flaws in gstreamer yet?
[00:03] <seth> wtay: The real thing that bothers me about Linux media frameworks is all the CODECs seem to basically be based off the same (flawed) sources
[00:04] <seth> wtay: Which would be OK, except in the end everyone ends up kludging things seriously
[00:04] <seth> wtay: There were a few things that bristled a little, but Erik has been convincing me that they are "ok" ;-)
[00:05] <wtay> seth: ok :)
[00:05] <wtay> seth: any example of a flawed codebase?
[00:05] ajbusy (me at p49-max3.dun.ihug.co.nz) left irc: Ping timeout for ajbusy[p49-max3.dun.ihug.co.nz]
[00:06] <seth> wtay: I don't know if gstreamer shares it, but libavi tends to be a mess
[00:06] <seth> wtay: It barfs on all sorts of things
[00:06] <wtay> libavifile?
[00:06] <seth> yes
[00:06] <wtay> ok, I tend to agree
[00:07] <wtay> well, gstreamers one is even worse, but...
[00:07] <seth> wtay: hm
[00:07] <seth> wtay: I haven't tried AVI
[00:07] <seth> wtay: Really, having high quality CODECs is a pretty important factor in achieving stability
[00:07] karltk (karltk at tunnel-44-97.vpn.uib.no) joined #gstreamer.
[00:07] <seth> wtay: You want users to not have to know about the media architecture
[00:07] <wtay> very true
[00:08] <seth> wtay: They should just pick up a file and it should either play, or it should report exactly what CODEC is needed to play it (or "No CODEC exists")
[00:08] <wtay> yes
[00:08] <seth> On both Windows and Macintosh users don't have to think, pretty much anything will play.
[00:09] <seth> But on every Linux system I've played with lots of things won't play for quirky little reasons
[00:09] Action: seth shrugs
[00:09] <seth> That seems like the most important thing to get right at first
[00:09] <taaz> speaking of just playing files... i think the mpeg2 es stream detection is still busted
[00:09] <seth> Course its probably one of the hardest too :-)
[00:09] <karltk> seth: that's not a sexy problem.
[00:09] <wtay> hi karltk
[00:09] <karltk> hi wtay
[00:10] <karltk> mind if I shoot of a few typical RTFM questions just now ? people idle enough for that ? 
[00:11] <wtay> karltk: go ahead :)
[00:11] <karltk> thx ;) 
[00:11] <karltk> how reliant is the gstreamer 'backend' reliant on GTK and GNOME ? 
[00:12] <karltk> can I conceivably use it as a media re-encoder or similar on a server (which has no X libs installed)
[00:12] <taaz> the most common FAQ...
[00:12] <wtay> karltk: we currently use Gtk as an object system, so you'll need an X server...
[00:12] <wtay> karltk: we plan to move to glib2.0 when feasable to fix this problem
[00:12] <karltk> taaz: I figured. That's why I added the disclamer ;)
[00:13] <karltk> wtay: how high a priority is that currently ? 
[00:13] <wtay> karltk: zaheer has build a media server with gstreamer (OpenTeleMedia)
[00:13] <thomas> karltk: you can use Xfvb, a dummy X server
[00:13] <wtay> karltk: pretty high, but not top priority
[00:13] <wtay> karltk: it shouldn't be hard, somebody just has to step up and do it
[00:14] <seth> karltk: damn right
[00:14] <seth> karltk: Which end up being the sort of problems that are hard to solve in the free software community
[00:14] Action: karltk wishes he had a *lot* more free time.
[00:14] <karltk> seth: agree completely. it's sad, really. 
[00:14] <seth> karltk: I sure as hell don't want to work on these problems, but I do because its pretty much required :-(
[00:14] <seth> karltk: I mean, its quite understandable...yet... ;-)
[00:15] <karltk> seth: it's the typical problem that gets fixed when some coder is annoyed enough to go ahead and fix it. when he's had to add his .conf file for Nth time that day, the autodetect will come ;)
[00:15] <wtay> and glib2.0 is not exactly widespread nowadays
[00:15] <karltk> wtay: <sarcastic>neither is gstreamer ;p</sarcastic>
[00:16] <karltk> thomas: thx. I'll toy around with that, then.
[00:16] <seth> wtay: Its on most RH 7.x systems
[00:16] <wtay> omega want to have backward compatibility with Gtk too, for now
[00:17] <wtay> seth: glib2.0? it's not even out yet!
[00:17] <karltk> wtay: any url for the opentelemedia except the one on SF ? or isn't it released to the hordes yet ? 
[00:18] <wtay> karltk: hmm, sec...
[00:18] <seth> wtay: Well, glib 1.3, which is a pre-release thereof
[00:19] <wtay> seth: oh
[00:19] <taaz> wait until glib2.0 hits debian unstable before doing the port ;)
[00:19] <wtay> karltk: can't find an url on the wiki, so only the sf/fm one 
[00:19] <thomas> wtay: Cool ! I just watched everest with aalib !
[00:20] <thomas> I think I saw a mountain
[00:20] <wtay> If we do the port now we should have a configure option --with-glib2 or somesuch
[00:20] <seth> taaz: I'm actually rather suprised 1.3 isn't already :-/
[00:20] <seth> wtay: That's what Nautilus is doing
[00:20] <wtay> thomas: lol
[00:20] <wtay> seth: cool
[00:20] <seth> well, for some definition of cool
[00:20] <wtay> thomas: try again on a video you never saw before :-)
[00:21] <taaz> uh.. let's not fill the source with #ifdefs...  
[00:21] <thomas> wtay: can I get sound as well ?
[00:21] <wtay> thomas: everest doesn't have sound
[00:21] <seth> taaz: I think this is the route most people are going to need to take to port to glib2
[00:21] <seth> and gtk2, of course
[00:21] <wtay> I think we would wrap them inside gst_object_set macros etc...
[00:21] <taaz> I added aound support to mpeg2parse2.c... maybe i should check that in as mpeg2parse3.c
[00:22] <wtay> which we will need eventually to avoid thread issues
[00:22] <wtay> taaz: yup
[00:22] <thomas> hmmm... I don't have any MPEG2 video lying around...
[00:22] <thomas> oh well... I'll try tomorrow.  Someone keeps calling me to bed
[00:23] <wtay> thomas: care if I upload one to gstreamer.net/media?
[00:23] <karltk> another question: any plans for a binary plugin repository where the streamer can download plugins as it needs to, much like media player ? (of course, this gives you security headaches)
[00:23] <taaz> hmm... i'm tempted to start adding cmd line parsing for output driver options and stuff like that...  i need to resist the temptation ;)
[00:23] <wtay> karltk: yes
[00:23] <thomas> wtay: yeah sure.  That way I can show her what i was doing
[00:23] <wtay> thomas: ok, just a sec... need to find a non illegal one <g>
[00:24] <taaz> google: "dolby vob"
[00:24] <wtay> yeah, I've got a couple of dobly ones here...
[00:25] <wtay> 29MB though...
[00:25] <thomas> wtay: I'll try and see how far I get
[00:25] <thomas> unless it takes you a long time to up it
[00:25] Action: taaz has 1.5G test stream dir ;)
[00:26] <wtay> thomas: it'll take some time, yeah
[00:26] <wtay> oh, I found a 16MB startrek one...
[00:26] <taaz> ftp://www.videolan.org/pub/streams/
[00:26] <wtay> "the borg" :-)
[00:28] <thomas> wtay: I'll try tomorrow.
[00:28] <taaz> ohh... ts stream.  didn't have one of those before ;)
[00:28] <thomas> wtay: if you want you can upload it during the night
[00:28] <thomas> I'll check tomorrow
[00:28] <thomas> btw: if you stand away a few metres from your screen, the aalib output really looks good
[00:28] <thomas> does it do color ?
[00:30] <taaz> whoops... ts stream is 661M!  hmm... that may take a while to download
[00:30] <wtay> thomas: nope
[00:31] <wtay> thomas: I'll upload it...
[00:31] ajbusy (me at p51-max6.dun.ihug.co.nz) joined #gstreamer.
[00:32] <wtay> ETA 20min
[00:34] karltk (karltk at tunnel-44-97.vpn.uib.no) left irc: postmature shutdown
[00:37] <thomas> okay, night all...
[00:37] <wtay> cya
[00:37] thomas (thomas at adsl-63648.turboline.skynet.be) left irc: Client Exiting
[00:38] Action: wtay is downloading 2 vobs, uploading a vob and apt-updating...
[00:40] ChiefHighwater (paul at temple-baptist.com) joined #gstreamer.
[00:41] <wtay> hmm what's more bleeding edge, woody or potato?
[00:41] <taaz> 'unstable' is the most fun
[00:41] Action: taaz can never remember what the codenames are for
[00:44] <wtay> any idea how to get the new ximian gnome 1.4?
[00:44] <taaz> nope.
[00:45] <ChiefHighwater> you guys read that google article mentioned on /. ?
[00:46] <ChiefHighwater> 8000 rh linux boxes tied together
[00:47] <wtay> oh yeah, google is pretty cool
[00:48] <ChiefHighwater> i knew it was a good search engine..is my favorite, but 8000 boxes tied together, wow
[00:48] <ChiefHighwater> i think they need GStreamer...let's speed them up 8-]
[00:49] <ChiefHighwater> I'm no programmer, butthat's a lot of datastreams,,,and nobody streams better than we do
[00:49] <wtay> ChiefHighwater: maybe after we make the "make coffee" plugin.. :)
[00:49] <ChiefHighwater> <g>
[00:49] <ChiefHighwater> hehe
[00:50] Nick change: matth-driving -> matth_
[00:50] <matth_> wtay: i think i see problem - i'll try to fix...
[00:52] <wtay> matth_: aha
[00:57] <matth_> wtay: of course, it's not in my stuff.  ;-)
[00:58] <wtay> matth_: <sinical>of course not</sinical> :0
[00:59] <matth_> fyi s/sinical/cynical   ;)
[00:59] <wtay> doh
[01:00] <wtay> fyi gdict is broken :)
[01:00] <matth_> :)
[01:02] rambokid (timj at hmbg-3e36c561.pool.mediaWays.net) joined #gstreamer.
[01:03] rambokid (timj at hmbg-3e36c561.pool.mediaWays.net) left irc: Read error to rambokid[hmbg-3e36c561.pool.mediaWays.net]: EOF from client
[01:04] <taaz> my head is spinning trying to understand oms code :(
[01:14] <Happyfeet> Breakfast at Tiffany's
[01:49] ChiefHighwater (paul at temple-baptist.com) left irc: 
[02:08] richardb (richard at ixion.tartarus.org) left irc: bong timeout
[02:24] <matth_> wtay: i was wrong... i'm not sure what the problem is.
[02:24] Action: matth_ continues to look
[02:25] <wtay> hmm, too bad..
[02:39] omega_ (omega at omegacs.net) joined #gstreamer.
[02:39] Action: omega_ got colors working even better
[02:40] <taaz> hello mr commute-via-airplane ;)
[02:41] <taaz> oms is really confusing me... i can't figure out how this nav stuff works
[02:42] <omega_> does it?
[02:42] <taaz> it works to some extent
[02:46] omega_sonic (omega at omegacs.net) joined #gstreamer.
[02:46] Action: omega_sonic gets ready to try his new 1394 camera
[02:47] <taaz> how much does one cost?
[02:47] <omega_sonic> the Orange Micro iBot was $140
[02:47] <taaz> 140?!  i can aford that ;)  i thought it was going to be $1400 
[02:48] <omega_sonic> er, $120 plus shipping I mean
[02:51] <wtay> zzzzz
[02:51] Nick change: wtay -> wtay-sleeping
[02:51] <omega_sonic> 'gnight
[02:51] <wtay-sleeping> cya
[02:51] wtay-sleeping (wim at cable-195-162-214-190.upc.chello.be) left irc: Client Exiting
[02:54] <taaz> damnit omega_... you should have lied to me.  now i'm going to have to buy that camera
[02:54] <omega_sonic> you have a firewire card?
[02:54] <taaz> no, i'll have to buy one of those too
[02:54] <omega_sonic> hmm, ok
[02:55] <omega_sonic> you are aware that this is raw video, not DV ?
[02:55] <taaz> so? gstreamer-launch 1394src ! convert-to-mpeg2 ! diskink ;)
[02:55] <omega_> dc1394src
[02:55] <omega_> as opposed to dv1394src
[02:56] <taaz> hey, this is why gst exists right?
[02:56] <omega_> yes
[02:57] <omega_> better colorization committed
[02:57] <taaz> when i first heard of firewire many many years ago i got all excited.  i had dreams of having my keyboard, mouse, camera, harddrives, cdrom, dvd, etc all on one sweat firewire bus, hotplugable and so on.
[02:58] <taaz> then the evil bastards at intel came up with USB
[02:58] <omega_> we have usb for most of that <g>
[02:58] <omega_> usb is better for kb, mouse
[02:58] <taaz> which killed off momentum for firewire...
[02:58] <omega_> still camera is debatable
[02:58] <taaz> oh? 
[02:58] <omega_> the firewire is the obvious choice
[02:59] <matth_> omega_: i think i know the problem (again ;)...
[02:59] <taaz> i don't see how anyone can argue that usb is useful.  would be -much- cooler to have firewire for everything
[02:59] wtay (wim at cable-195-162-214-190.upc.chello.be) joined #gstreamer.
[02:59] Nick change: wtay -> wtay-sleeping
[03:00] Action: wtay-sleeping has updated to latest ximian-gnome
[03:00] <matth_> omega_: but i think i'm going to go home -- i'll deal with it later (tomorrow?)
[03:00] <matth_> omega_: actually, i'll ask you now:
[03:00] <matth_> what's a good way to check if an element pulls data from another thread's queue?
[03:01] <matth_> ...or pushes to (another thread's queue)
[03:01] <omega_sonic> a) it has a queue for a peer
[03:01] <omega_sonic> b) that pads' peers' parents' sched/manager (whew!) is different from self's sched/manager
[03:04] <omega_sonic> coriander can't capture, /me will have to debug the dc1394 system ;-(
[03:08] <omega_sonic> hehehe
[03:08] <omega_sonic> gscanbus has a coronary when there are two DV cameras and a DC camera on the bus
[03:08] <omega_sonic> it finds a topology loop somehow
[03:09] <omega_sonic> just wait till there's a firewire hub on here <g.
[03:11] <omega_> matth_: that help?
[03:11] <omega_> taaz: can you test out the latest colorization stuff in incsched1 ?
[03:18] <matth_> omega_: still trying to get pad's peer's parent's sched...
[03:18] <omega_> pad->peer->parent->sched <g>
[03:19] <matth_> doesn't work.   the parent of pad is the gstobject parent?
[03:19] <matth_> it's not a gst_element
[03:19] <omega_> cast it
[03:20] <omega_> GST_ELEMENT_SCHED(GST_PAD_PARENT(GST_PAD_PEER(pad)))
[03:20] <matth_> using GST_ELEMENT()?  doesn't work
[03:21] <matth_> hold on
[03:21] <matth_> nope.  doesn't work.  i even tried:
[03:21] <matth_> GST_ELEMENT_SCHED(GST_ELEMENT(GST_PAD_PARENT(GST_PAD(GST_RPAD_PEER(p)))))
[03:21] <matth_> i get Gtk-WARNING **: invalid cast from `GstRealPad' to `GstElement'
[03:22] <omega_> GST_ELEMENT_SCHED(GST_ELEMENT(GST_PAD_PARENT(GST_PAD_PEER(pad)))) should work
[03:23] <omega_> though RPAD_PEER would save a bit if you know it's a real pad
[03:23] <matth_> didn't work
[03:24] <matth_> ?
[03:24] <omega_> compile or runtime?
[03:24] <matth_> runtime
[03:24] <omega_> error?
[03:24] <matth_> Gtk-WARNING **: invalid cast from `GstRealPad' to `GstElement'
[03:24] <omega_> um
[03:24] <matth_> then a Gnome app error dialog
[03:25] <omega_> you sure it's that line?
[03:25] <matth_> checking...
[03:25] <matth_> son of a bitch!
[03:25] <matth_> hold on...
[03:25] <omega_> heh
[03:28] <omega_> have you grabbed the latest colorization changes?
[03:29] <omega_> don't unless you're willing to do some recompiling though <g>
[03:30] <matth_> omega_: i haven't grabbed the colorization stuff -- i'll stick with what i have.
[03:30] <matth_> thx.vob played, but no audio
[03:30] <matth_> also, got some errs:
[03:30] <matth_> ** CRITICAL **: file gstcaps.c: line 161 (gst_caps_ref): assertion `caps != NULL' failed.
[03:31] <omega_> hmmm
[03:31] <matth_> ** CRITICAL **: file gstcaps.c: line 161 (gst_caps_ref): assertion `caps != NULL' failed.
[03:31] <omega_> this is autoplugged?
[03:31] <matth_> should there be audio?
[03:31] <omega_> yeah, though you may not want to try it yet
[03:31] <omega_> ac3 is probably not caps'd yet
[03:31] <omega_> try aliensong instead
[03:32] <matth_> okay... btw, mpeg2parse2.c does not use autoplug
[03:32] <omega_> ah, ok
[03:32] <omega_> it doesn't play audio, either
[03:33] <matth_> cool... that means it works!
[03:33] <matth_> right?
[03:33] <omega_> theoretically, es
[03:33] <matth_> ha!
[03:33] <omega_> commit and lemme try it! ;-)
[03:33] <matth_> hold on
[03:37] <matth_> okay.  i've got to get out of here - i've hit my limit.
[03:38] <omega_> heh
[03:38] Nick change: matth_ -> matth-away
[03:38] <omega_> have fun
[03:38] <matth-away> let me know how it goes
[03:38] <omega_> ok, will do
[03:38] <omega_> er
[03:38] <omega_> update and build before you leave
[03:38] <omega_> let it build after you leave, that is
[03:38] <omega_> so you can get the latest+greatest colorization stuff <g>
[03:39] <omega_> it runs
[03:39] Action: omega_ can't find the video window though
[03:53] <taaz> i haven't ever checked out the incsched branch...  still want me to try it?
[04:21] <taaz> well... the colorization in HEAD is rather weak right now
[04:38] <omega_> what would you suggest?
[04:39] <taaz> is it suppused to look like that earlier screen shot?
[04:39] <omega_> no
[04:39] <taaz> it's mostly just white output right now
[04:40] Action: omega_ is fixing that
[04:40] <omega_> but in incsched
[04:40] <omega_> if you're willing to be a guinnea pig, grab a copy of incsched and build it
[04:41] <taaz> kinda working on groking oms right now
[04:41] <omega_> ok
[04:41] <omega_> you can do that in the background <g>
[04:41] <omega_> just to see what the colors look like
[04:41] <taaz> yeah.. ok
[04:41] <omega_> I have a bunch of stuff to commit, you'll want to wait to autogen until I'm done
[04:42] <omega_> but you can get a start on checkingout
[04:42] <omega_> actually, you can autogen too, just update gst/ before you build
[04:43] <taaz> um.. you updating configure or just source?
[04:43] <omega_> source
[04:44] <taaz> ok, i'll start the build ;)
[04:44] <omega_> but I touch headers
[04:44] <omega_> so don't bother, it'll get rebuilt anyway
[04:44] <omega_> gimme another 2min
[04:46] <omega_> ok, committed in gst/
[04:46] Action: omega_ just realized that we get significant coverage
[04:46] <taaz> coverage?
[04:46] <omega_> the number of DEBUG and INFO statements we rarely see is very very small
[04:46] <omega_> which means that complex programs like mpeg2parse2 hit most of libgst.la
[04:47] <omega_> this is good, it means that a) we're testing most of the code, and b) we have very little extraneous code
[04:47] <taaz> have you tried gcov?
[04:47] <omega_> no, we need to use that in the test suite
[04:47] Action: omega_ doesn't have it anyway, it seems
[04:49] <omega_> re: 'asterbox', I meant that the target audience for the name is the audience that thinks that 'TiVo' and Xbox' are cool names
[04:52] <taaz> that .pc file should be in .cvsignore
[04:52] <taaz> Streamer-media framework?   maybe Streaming media framework?
[04:53] <omega_> yes, it should
[04:53] <omega_> hrm, did I spell something wrong?
[04:53] <omega_> oops
[04:53] <omega_> fixed
[04:57] <seth> hi omega_
[04:57] <omega_> yo
[04:57] <seth> Finally got stuff running
[04:57] <omega_> cool
[04:57] <seth> omega_: Is their any published information on sampeg's movement into MPEG-4?
[04:58] <omega_> dunno, I onnly heard about sampeg last night
[04:58] <omega_> I have sampeg-4.*.tar.gz somewhere
[04:58] <seth> hmm...
[04:59] Action: seth very interested in getting an MPEG-4 CODEC into circulation
[04:59] <seth> anyway...must go
[04:59] <omega_> ok, cya round
[05:05] <taaz> hmm... done building
[05:05] <omega_> run something like test/mpeg2parse2 mpegsystemstream.mpg --gst-mask=-1 2>&1 | less -R
[05:06] <omega_> -R is critical else less will kill the colors
[05:06] <omega_> but it's safe enough to put in your  ~/.aliases file
[05:06] <taaz> ^c screws up current color like you said ;)
[05:06] <omega_> yes
[05:07] <omega_> need some sighandlers to output \033[00m
[05:10] <omega_> fyi, INFO is the most advanced of the outputs
[05:10] <omega_> colorized cothread numbers and such
[05:10] <omega_> unsure how to do the pthread id, since it's a PID
[05:11] <omega_> could just %6 it and hope for the best
[05:12] <taaz> DEBUG(28869:-1)gst_thread_init:133: initializing thread '(null)'
[05:13] <taaz> any idea why that's null?
[05:13] Action: taaz too lazy to debug it ;)
[05:13] <omega_> because the init gets called before the name is assigned
[05:13] <omega_> so it's probably best to remove the name entirely, since it's *always* null at that point
[05:14] <taaz> too bad name cant be set then
[05:14] <omega_> I'm also going to make some other changes, like pid is always 5chars wide, cothread id is always 2 chars wide
[05:14] <omega_> INFO is space-padded to be 5chars to match DEBUG
[05:15] <omega_> erm, I just got a cothread id of 711
[05:15] <omega_> oops
[05:15] <omega_> and another that's even bigger
[05:15] <omega_> this is not good
[05:16] <omega_> it's reproducible too
[05:16] <taaz> DEBUG() vs INFO():
[05:18] <taaz> could even do xfree style and save a few chars  II EE ** DD whatever
[05:18] <taaz> since whoever is running that stuff probably knows what that means
[05:19] <omega_> true
[05:19] <taaz> or hey... output XML logging info and | to a formatter/colorizer ;)
[05:19] <omega_> D, I, E
[05:19] <omega_> well, actually...
[05:19] <omega_> it seems that I may want to convert DEBUG over to a function ptr call just like INFO is....
[05:20] <omega_> which means that since you can replace the function pointer......
[05:20] <taaz> can debug/info be compiled out?  is the whole system lots faster that way?
[05:20] <omega_> no idea what the speed difference is
[05:22] <omega_> but the infrastructure for debug/info is significant, so it's probably easily measurable
[05:22] <omega_> but...
[05:22] <omega_> it's all behind a bittest, in all cases
[05:22] <omega_> every printf call is skipped if that category is turned off
[05:22] <omega_> so it can't be too bad, except in code size....
[05:22] <omega_> if gcc even tried to outline stuff, that would be a non-issue
[05:24] <omega_> see http://www.cosource.com/cgi-bin/cos.pl/wish/info/141
[05:27] <omega_> I'd even want it to outline those calls no matter what....
[05:28] <omega_> I was printing the cothread ID after malloc but before init of that variable. fixed.
[05:29] <taaz> added mpeg2parse3.c
[05:29] <omega_> what is it?
[05:29] <taaz> adds audio
[05:29] <omega_> hmm, ok
[05:29] <omega_> does it work on incsched branch?
[05:30] <taaz> it's a vob player 
[05:30] <taaz> i have no idea ;)
[05:30] <omega_> um
[05:30] <taaz> it's in HEAD
[05:30] <omega_> ok
[05:31] <omega_> oooh, mpeg2parse2 works
[05:31] <omega_> here's a killer demo:
[05:32] <taaz> how about 3?
[05:32] <omega_> not tested
[05:32] <omega_> create an xterm that fills the entire screen, and run:
[05:32] <omega_> gstreamer-launch disksrc location=thx.mp2 ! mpeg2dec ! aasink driver=3
[05:33] <taaz> i'm confused
[05:34] <omega_> howso?
[05:34] <taaz> how did you compile aasink in incsched?
[05:34] <omega_> I merged a few days back, why?
[05:34] <taaz> you see that %VAR -> $VAR patch to configure.in in HEAD?
[05:34] <omega_> when?
[05:34] <taaz> day or so ago
[05:34] <taaz> its not in incsched
[05:35] <omega_> I merged on the evening of the 25th
[05:35] <omega_> but I probably did a make -C plugins/aasink
[05:35] <taaz> grrr... its going to rebuild everything since this changes config.h :(
[05:36] <omega_> hmm, no idea why it worked, lemme check
[05:36] <omega_> hrm, it's broken in incsched
[05:36] <omega_> ok, ENOCLUE
[05:37] <omega_> I think I just did a make -C
[05:37] <taaz> just need to merge that patch forward
[05:37] <omega_> yeah
[05:37] <omega_> done
[05:37] <omega_> will commit soon
[05:38] <omega_> but I didn't get audio from mpeg2parse3
[05:38] <omega_> there's some kidn of race, debugging
[05:38] <taaz> maybe want to check my coding ;)   i may have done threads/bins/whatever totally wrong
[05:39] <omega_> you broke video too
[05:40] <omega_> hmm, well, mpeg2parse* is the wrong structure for incsched anyway, afaict
[05:41] <omega_> I'll rewrite mpeg2parse3 as necessary to get it to work
[05:41] <omega_> I think you need ac3parse
[05:42] <taaz> oh... well it worked for me ;)
[05:42] <omega_> it did?
[05:42] <taaz> in head, yeah
[05:42] <omega_> hmm, ok
[05:43] <omega_> I can -launch thx.ac3 with incsched
[05:43] <omega_> this is good
[05:45] <omega_> ok, I can get it working in HEAD too
[05:45] <omega_> I see what the problem is, I think
[05:45] <omega_> and I see a hole in the API too
[05:46] <taaz> ?
[05:46] <omega_> there should be a routine that finds an element of a given name, regardless of where it is in the pipeline
[05:46] <omega_> the signal handler should be able to ask for "a_thread" in *pipeline and get it
[05:47] <omega_> the problem is that the *_thread's are getting set to PLAYING long before they're even connected
[05:49] <omega_> still no audio though
[05:49] <omega_> but video works again
[05:49] <taaz> need to add that have_size stuff in there  somewhere too
[05:49] <omega_> yeah, but I never see that triggered, from my experiments
[05:49] <omega_> I just hardcoded gtk_widget_set_usize(gtk_socket,320,240) in there for now
[05:49] <omega_> since Xv doesn't care how big it is, it "just works" <g>
[05:50] Action: omega_ thinks "try that with any other player out there...."
[05:52] <omega_> can you check out GstDebugColors and see if you have ideas for the categories that don't have colors yet?
[05:52] <omega_> everything that shows with white on red, is unassigned yet
[05:52] <taaz> so, is this design the 'right' way to do it?  I was wondering if you want the threads to do the decoding or if it would be better to have the queue/thread just around the sinks
[05:52] <omega_> ?
[05:53] <taaz> um... just wondering about worst-case situations
[05:53] <omega_> you could do it either way I suppose
[05:53] <omega_> ideally even there'd be only two threads:
[05:53] <omega_> well, three
[05:54] <omega_> 1) source, 2) parse, decode, decode, 3) sink, sink
[05:54] <omega_> where the audio and video sinks are very closely coupled clock-wise
[05:54] <omega_> to the point where the clock actually forces out-of-band cothread switches <g>
[05:55] <omega_> even have a highly custom AVSinkThread that uses SIGALRM to force switches to the video sink at just the right time <g>
[05:55] <omega_> would then have to abstract out [Pt]Thread a little bit so AVSinkThread could effectively derive from it though
[05:57] <omega_> the a_queue and v_queue
[05:57] <omega_> 's weren't added to any Bin... they should be on in the decoder thread
[05:57] <taaz> if you are cpu starved wouldn't you want data queued at sinks?  if it's still at the front of the decoders you may have dropouts
[05:57] <omega_> yes
[05:58] <omega_> well, right, there are tradeoffs
[05:58] <omega_> the key would be to have good queue-management
[05:58] <taaz> if you are memory starved its another case i guess
[05:58] Action: taaz thinks it's very cool that this can be easily changed
[05:58] <omega_> i.e. low/high watermarks and queues that intentionally block for longer and longer as you get closer toward full/empty
[05:59] <omega_> or, implement a queue/thread pair that actually talk tot he kernel scheduler, as in the research OGI did a year or more ago
[05:59] <omega_> audio + video works!!!!
[05:59] <omega_> but there's a problem that causes 'cothread: there's no thread, strange...' to be printed constantly
[06:00] Action: omega_ can fix that
[06:00] <omega_> unfortunately, this thing actually pegs my CPU ;-(
[06:00] <taaz> the printf? ;)
[06:00] <omega_> um, no ;-(
[06:00] <omega_> the decoder, afaict
[06:01] <omega_> decoder(s)
[06:01] <taaz> really? its not pegging my cpus
[06:01] <omega_> uh, duh!
[06:01] <omega_> what speed?
[06:02] <taaz> dual 500 celerons
[06:02] <omega_> right
[06:02] <omega_> and you have no locking problems?
[06:02] <taaz> hmm
[06:03] <taaz> not they type you mean
[06:03] <omega_> ok
[06:04] <taaz> maybe seeking related with gstmediaplay
[06:04] <omega_> the nastiest test for that right now is tests/mp1vid
[06:04] <taaz> and watching a divx with gstmp...
[06:04] <taaz> i do have an annoying gnome popup thing at the end of every stream
[06:04] <taaz> Gtk-WARNING **: invalid cast from (NULL) pointer to `GstPad'
[06:05] <omega_> yeah, those are EOS-related things
[06:05] <taaz> that's getting old...  i was hoping someone else would fix it ;)
[06:05] <omega_> EOS has been the thorn in our side(s) since we first tried to do anything about it ;-(
[06:05] <omega_> it's driven all of this (incsched, event system, interlocking, etc.)
[06:06] <omega_> so you should be thankful for EOS <g>
[06:11] <omega_> there, added colorization to pthread id too <g>
[06:11] <omega_> oooh, pretty colors!
[06:15] <omega_> ok, update in gst/ and test/, try mpeg2parse3
[06:16] <taaz> heh... mpeg2dec (the app) plays AlienSong.mpg quick:
[06:16] <taaz> 1018 frames decoded in 3.84 seconds (265.10 fps)
[06:18] omega_ (omega at omegacs.net) left irc: Ping timeout for omega_[omegacs.net]
[06:26] omega_ (omega at omegacs.net) joined #gstreamer.
[06:26] <omega_> um...
[06:26] <omega_> taaz: ping?
[06:26] <omega_> what was the last thing you heard from me?
[06:26] <taaz> 0.305s
[06:26] <taaz> 12:24AM <omega_> ok, update in gst/ and test/, try mpeg2parse3




More information about the gstreamer-devel mailing list