Back to Home / #mythtv / 2003 / 02 / Prev Day | Next Day
#mythtv IRC Logs for 2003-02-20

00:10-!-FredFunk [] has joined #mythtv
00:13<Chutt>"Would whoever is responsible for the SQL code email me privately, please?"
00:13* awwas amused by that too
00:14<bigguy>isn't that the myth radio guy?
00:14<Chutt>no, that was the guy bragging about his mysql sk1llz
00:15<bigguy>oh ok
00:16<bigguy>oh I see mike is the mythradio guy
00:22-!-gimpy [] has joined #mythtv
00:24<aw>uhoh, tried remote playback on a box w/ builtin SiS audio, it apparently sucks differently
00:25<aw>audio_buffer_unused = 0 fix still works
00:25<Chutt>that's no fun
00:26<aw>too many crappy sound cards...
00:27<gimpy>[root:/home/gimpy/mythtv-0.7]: make
00:27<gimpy>make: qmake: Command not found
00:27<gimpy>make: *** [Makefile] Error 127
00:27<gimpy>why does it say i need qmake?
00:28<Chutt>probably because you don't have it?
00:28<gimpy>it really need qmake?
00:28<Chutt>you need a full install of qt.
00:28<Chutt>you don't have one
00:28<gimpy>know where i can get the latest source?
00:28<gimpy>of qt
00:28<Chutt>qt comes in every single linux distribution
00:29<Chutt>there's no reason you should be compiling it from source
00:29<bigguy>unless your one of those "trendy" gentoo users
00:29<bigguy>you're even
00:29<bigguy>oh slackmare
00:30<bigguy>haven't heard much from thme lately
00:31<gimpy>i hate kde so thats why it probubly wasnt installed.
00:31<Chutt>it probably wasn't installed because you didn't install the qt -dev package
00:31<gimpy>who knows.
00:31<Chutt>it has nothing to do with kde.
00:31<gimpy>i dont.
00:32<gimpy>its in the kde part of the slack cd
00:32<gimpy>hence.. it wasnt installed
00:34<Chutt>aw, if you feel like playing with that, could you see what it takes to get the fallback in getSpaceOnSoundCard() NuppelVideoPlayer.cpp to trigger?
00:34<Chutt>should be pretty simple, similar to what we were doing last night
00:34<aw>Chutt: yep, looking now
00:35<Chutt>excellent, thanks
00:48<aw>so on the SiS, we never see a negative space more than twice, so we don't trigger the fallback
00:49<aw>then we get into a state where there's more to write then the card ever gets free
00:49<aw>waiting for space to write 6320 bytes on soundcard whish has 4608 bytes free
00:53<aw>guess it eventually gets to a state of waiting twice, writing twice... makes it pretty choppy
00:57<moegreen>Now here's an interesting line: Would whoever is responsible for the SQL code email me privately, please?
00:58<rkulagow_>the SQL code in Qt, the SQL code in MySQL, the SQL code in MythTV, etc, etc. i'm curious as to what that's all about. but not that curious.
01:01<rkulagow_>i always find it curious when people offer to help on something and then nothing happens. redesign, mythradio, all the various doco promises that never get followed up on. chutt, you've probably seen them all by now...
01:03<moegreen>heh, well who knows - maybe something will happen eventually :) Although I wouldn't hold my breath.
01:09<rkulagow_>i just posted to the openpvr mailing list. i think it's dead; last commit was a few months ago and there haven't been any messages since November...
01:14<bigguy>I miss eMusic. it was Chutt's best work
01:15<rkulagow_>back before i heard about mythtv, i actually wrote a perl module that took the xmltv data and put it into MySQL for the openpvr project. brian murrell didn't like the concept of using SQL; i tried to explain that relative to the task of writing the audio/video stuff, that he should take the help of managing the data any way he could, and MySQL was a powerful tool that would let him worry about other stuff. his method was to keep a gzipped copy of the X
01:19<aw>Chutt: howabout this - if the (bytesperframe > space_on_soundcard) check is true, resize audio_buffer_unused
01:19<aw>perhaps just a /= 2 if non-zero
01:21<rkulagow_>do you guys realize that MythTV is actually becoming what Moxi promised? and chutt didn't even win "Best of Show" at CES or burn through a few $mil in VC money.
01:21<aw>hmm, that will probably just make it go to nearly zero... something along those line, but with a better threshold
01:21<rkulagow_>off to bed. chutt, i'm still amazed at the code that you and the other developers are writing. good job.
01:50-!-bigguy [] has quit [Read error: 113 (No route to host)]
01:57-!-bigguy [] has joined #mythtv
03:09-!-bigguy [] has quit ["bbl"]
04:29-!-FredFunk [] has quit [Read error: 110 (Connection timed out)]
04:42-!-gimpy [] has quit [Connection timed out]
05:09-!-FredFunk [] has joined #mythtv
05:24-!-choenig [] has joined #mythtv
05:24<-- choenig( has left #mythtv ("Client exiting")
05:30-!-choenig [] has joined #mythtv
06:35-!-Viddy [] has joined #mythtv
06:36-!-Viddy [] has quit [Client Quit]
06:37-!-Viddy [] has joined #mythtv
06:53-!-FredFunk [] has quit [Read error: 110 (Connection timed out)]
07:30-!-FredFunk [] has joined #mythtv
08:42-!-gimpy [] has joined #mythtv
08:43<gimpy>[gimpy:~/mythtv-0.7]$ make
08:43<gimpy>cd libs && qmake -o Makefile
08:43<gimpy>QMAKESPEC has not been set, so configuration cannot be deduced.
08:43<gimpy>Error processing project file:
08:43<gimpy>make: *** [libs/Makefile] Error 2
08:43<gimpy>qt-3.0.4 thats the version i have
08:50<choenig>gimpy: I don't know where $QMAKESPEC normaly is set, but mine looks so:
08:50<choenig>chris@luna ~ > echo $QMAKESPEC
08:51-!-FredFunk [] has quit [Read error: 60 (Operation timed out)]
09:54<mdz_>ln -s linux-g++ $QTDIR/mkspecs/default
09:55<mdz_>then you don't need to set $QMAKESPEC
10:25-!-aw [] has quit ["Client Exiting"]
10:37<rkulagow_>looks like the "email me privately" SQL guy actually produced a patch for mythmusic SQL code, which is nice, because while plenty of people on the ML talk about doing stuff, few actually do anything.
10:53<rkulagow_>chutt: are you opposed to more sound manipulation being brought into myth, like selecting the recording source in setup, or do you want that done with an external mixer?
11:54<Chutt>i really think that should be taken care of with an external mixer
11:55<Chutt>and that guy optimized something that happens _once_ during execution
11:55<Chutt>wow, very impressive
12:01<Chutt>rkulagow, i'll probably integrate that newer volume patch
12:09<rkulagow_>chutt: sounds fine by me. are you going in integrate it in a general way so that it's available to mythmusic as well, or just in tv_play?
12:10<Chutt>ya know, it'll probably take not much time to make a volume control class
12:10<Chutt>i'll just go ahead and do it
12:15<Chutt>are you sure it's supposed to be opened readonly?
12:17<rkulagow_>yeah, i'm looking at that now. weird. i wonder why it works?
12:18<rkulagow_>i just checked my stand-alone sample code, and it definately works RDONLY
12:20<rkulagow_>i'm checking the OSS programmers guide too. maybe it explains about that. hold on.
12:26<rkulagow_>basically, all the programmers guide says is "don't open the mixer directly; use the fd for the open DSP instead since you don't know DSP1 == MIXER1" along with some other stuff. nothing specific about why if we're opening the mixer as RD_ONLY it's still allowing us to make changes via IOCTLs.
13:31<Chutt>Can i get CVS commit access!@#!@#!@#!
13:34<mdz_>as soon as I can get mythfrontend running :)):):)
13:35<Chutt>the guy's sent in a single patch that i'm rejecting
13:35<Chutt>and he thinks that that deserves write access
13:42<mdz_>what is
13:42<Chutt>i wouldn't know
13:42<mdz_>is that for Qt designer or something?
13:42<mdz_>google says Kaptain uses it
13:43<mdz_>ah, and GNU indent
13:44<Chutt>yeah, it's my fault he didn't copy the existing indentation style.
13:50<Chutt>he's got a _really_ annoying email quoting thing, too.
13:56<Chutt>_and_ he replied to me cc'd the list
13:58<mdz_>heh, yeah, that #ifdef thing
14:01<choenig>Chutt: now you're really nitpicking ;)
14:01-!-rkulagow_ [] has quit [Read error: 104 (Connection reset by peer)]
14:02<Chutt>i emailed my response only to him since i didn't notice
14:02<Chutt>emailing someone on the list and cc-ing the list is just bad manners.
14:02<choenig>thats right
14:03<Chutt>his email's not so important that i need two copies of it
14:08-!-rkulagow [~rkulagow@] has joined #mythtv
14:09<mdz_>goes to show that setting reply-to on the list doesn't fix things :-)
14:19<Chutt>mdz, the per-host stuff add an extra query if the value doesn't have a hostname
14:19<Chutt>everything should have a hostname, so it's no more queries than before
14:23<mdz_>hmm...why was he seeing extra queries then?
14:23<mdz_>oh, because he hasn't run the frontend
14:24<mdz_>wouldn't be a big deal to have mythmusic write out defaults for the settings that it uses
14:24<Chutt>i want to move most of its settings to the db sometime
14:27<mdz_>would it make sense to move the settings shared between mythfrontend and mythmusic into a top-level setup menu?
14:28<Chutt>or even move all the settings into a top level menu
14:28<Chutt>then have 'General' 'TV' 'Music' 'Weather'
14:28<Chutt>and could have a 'mythmusic --configure'
14:28<Chutt>or something, that just shows the settings for that module
14:54<gimpy>/usr/include/linux/param.h:4:23: asm/param.h: No such file or directory
14:54<Chutt>you don't have the kernel headers properly installed.
14:55<mdz_>check whether /usr/include/asm or /usr/include/linux is a symlink
14:55<mdz_>if one of them is, try a different Linux distribution
14:56<Chutt>but slack's the greatest distribution ever!
14:56<mdz_>you misspelled 'evar'
14:56<gimpy>no my dumb ass
14:56<gimpy>ran cleanlinks
14:56<gimpy> removed all my damn symlinks
14:57<mdz_>cleanlinks only removes dangling symlinks
14:57<gimpy>it removed
14:57<gimpy>ALL OF MINE
14:57<gimpy>i sware to god rofl
14:58<gimpy>thats why /usr/src/linux ../dev/cdrom is gone just a few that i know were not 'dangling'
14:58<mdz_>I'm afraid not
14:58<gimpy>..they were dangling then right
14:58* gimpynods
14:59<mdz_>it's not a good idea to run such a program on your entire system anyway
14:59<gimpy>..but the point is they were dangling
15:00<mdz_>that's correct
15:00<gimpy>weren't rather.
15:00<mdz_>try it and see. it'll be fun
15:00<gimpy>/dev/cdrom -> /dev/hdd
15:00<mdz_>ln -s /etc/passwd exists && ln -s /does/not/exist doesnotexist && cleanlinks
15:00<gimpy>ill run.. cleanlinks
15:01<gimpy>passwd isnt a symlink
15:01<gimpy>but okay.
15:01<mdz_>man ln
15:01<gimpy>yes i know what ln is thanks.
15:01<gimpy>wow you are a fucking grump ass.
15:02<mdz_>then you realize that the first argument is the target of the link
15:02<mdz_>so the fact that /etc/passwd is not a symlink is completely irrelevant
15:02<gimpy>i wasnt looking at your argument
15:02<mdz_>if you run that command, you'll find that the 'exists' symlink is not removed, while 'doesnotexist' is
15:03<gimpy>/usr/include/linux/param.h exsists though anyway
15:03<mdz_>I give up
15:05<mdz_>you've already realized that cleanlinks does exactly what I said it does, and did not remove all of your symlinks
15:27<gimpy>i just reinstalled my kernel headers and such its fixed
15:39-!-Sliptonic [] has joined #mythtv
15:41<mdz_>Chutt: sql guy sounds like he is going to take his toys and go home
15:41<Chutt>oh no
15:41<Chutt>i'll be really sad then
15:41<Chutt>his patch he just sent has lots of tabs in it
15:42<Chutt>ok, so, 2 tables is obviously better than 1
15:43<Chutt>i still think it's way overcomplicating things
15:47<mdz_>I don't even know how the current stuff works, I don't really use mythmusic
15:47<mdz_>nor did I bother reading his patch for that matter
15:48<mdz_>so I'm obviously qualified to criticize
15:51<Sliptonic>Is anyone else having trouble compiling mythmusic under debian sid (errors related to qarray.h)?
15:53<mdz_>apt-get install libqt3-compat-headers
15:54<Chutt>does anything use that header in the source?
15:54<Chutt>i know it's in mainvisual.h, but is it needed?
15:54<mdz_>./mythmusic/mainvisual.h: QMemArray<double> magnitudes;
15:54<mdz_>should probably be changed to <qmemarray.h>
15:56<mdz_>it is stupid to split those headers into a separate package
15:57<mdz_>this came up on debian-devel and they went forward with it even though it was clearly stupid
15:57<mdz_>it's only 288k of headers
15:57<mdz_>and if they're obsolete, they should have a #warning
16:01<Sliptonic>That's got it. Thanks. I've been in QT3 hell since they started changing things around.
16:34<PeteCool>Chutt: anywhere in the code where it calls an external program?
16:34<Chutt>petecool, like what?
16:35<PeteCool>Chutt: I wanna call mpg123 with shoutcast options... it'll suck, but I'll get streaming mp3 in myth, at least for me
16:36<PeteCool>Chutt: Just something to try out... if you already do something like that somewhere it would be a bit faster coded
16:36<Chutt>it'd be really easy to write code that handles the http stuff
16:37<PeteCool>Chutt: I could copy-paste some stuff from mpg321/mpg123 for a start
16:37<Chutt>again, nasty =)
16:38<PeteCool>Chutt: I don't intend to distribute it, too many people would get sick when seeing it :)
16:44-!-gimpy [] has quit [Remote closed the connection]
16:45<mdz>Qt even includes http client stuff I believe
16:46<mdz>and the decoder is already there
16:47<PeteCool>mp3 decoder?
16:47<PeteCool>or http decoder?
16:47<Chutt>mostly a matter of including stuff to parse out the crap shoutcast adds to the stream
16:48<mdz>Mr. Davidoff does not seem to understand that the upgrade tool approach is actually simpler than doing it on the fly
16:48<Chutt>and, i really don't care about people's default saved playlists
16:48<Chutt>it's not like it's anything important
16:49<Chutt>and it's really easy to recreate things
16:50<Chutt>the funny thing is
16:51<Chutt>he's manually editing things to add my email address to the reply list
16:51-!-Sliptonic [] has quit [Read error: 110 (Connection timed out)]
16:51<Chutt>and even taking the time to edit my email address
16:51<Chutt>and he still sent a response to me off-list, instead of to the list, saying he'll 'fix things'
16:51<PeteCool>Chutt: so I'd need to initiate a connection/get a stream with Qhttp, and "pipe" it to myth's mp3 decoder?
16:52<Chutt>pretty much
16:52<PeteCool>Chutt: obvisouly removing the non-mp3 stuff
16:52<Chutt>should be fairly easy to do
16:55<PeteCool>and that mp3 decoder is libavcodec... the structure is simpler than I thought :)
16:55<mdz>I thought mythmusic used libmad
16:55<Chutt>the mp3 decoder is in mythmusic
16:55<Chutt>i believe
16:56<Chutt>actually, if i have time tonight, i'll look into adding http support
16:56<Chutt>since i really do think it'll be easy =)
16:57<PeteCool>Chutt: alright then... I wouldn't have really started doing it until a few days, I just got some long Java schoolwork :(
16:57<Chutt>i probably won't do the shoutcast stuff, though
16:57<Chutt>but just straight http streaming
16:58<PeteCool>they can't be mangling the stream too much, I'll try doing the shoutcast part (can't promise anything - I hate that)
17:06<PeteCool>oh, Chutt, I have some characters that display wrong in the "Watch a recording" section, but look fine in other places (I'll wait for the recordings to stop before checking)... I think I'll look into that, should be easy
17:06<PeteCool>copy-paste easy :)
17:08<PeteCool>The characters are: \xE9\xE0\xE8 (french stuff)
17:09<PeteCool>\xE9 shows up as ©, \xE8 as ¬
17:10<PeteCool>the sign over the A maybe differ (crappy TV)
17:10<PeteCool>but it shows up fine the ALT epg
17:12-!-PeteCool [] has quit ["Client Exiting"]
17:14-!-PeteCool [] has joined #mythtv
17:38<PeteCool>I'm seeing those weird characters in the description field, btw
18:23<PeteCool>Where exactly does Watch A Recording decide how to display the description string? playbackbox.cpp ?
18:27-!-Sliptonic [] has joined #mythtv
18:46-!-PeteCool_ [] has joined #mythtv
18:46-!-PeteCool [] has quit [Read error: 104 (Connection reset by peer)]
18:48<PeteCool_>Chutt: had you answered my previous question? If yes I didn't see the answer (nasty win2k crash)
18:48-!-PeteCool_ is now known as PeteCool
18:54-!-Sliptonic [] has quit [Read error: 60 (Operation timed out)]
19:06<moegreen>PeteCool: he didn't answer it, but the programs/mythfrontend/playbackbox.cpp is the place to look
19:18<rkulagow>chutt: the generic mute function that you implemented may be nice during a channel change. IIRC, people complain of large bursts of static; maybe put a muteon / mute off around the channel change code?
19:18<rkulagow>(meaning, some people; i haven't noticed it)
19:19<PeteCool>rkulagow: I get a "pop" when I change to some channels
19:45-!-choenig [] has quit [Read error: 54 (Connection reset by peer)]
19:50-!-TheAsp [] has joined #mythtv
19:50<TheAsp>hmmm... can't seem to set /dev/adsp as my audio device
19:53<TheAsp>ahhh, much better
20:07-!-jonny [] has joined #mythtv
20:07-!-jonny is now known as JonnyRo
20:07<JonnyRo>How can I force mono encoding in mythtv
20:08<JonnyRo>my tv card only has mono audio capture
20:08<JonnyRo>and when i watch recorded movies I only get sound out of the right speaker, If I force mono I think it should come out of both speakers during playback
20:09<moegreen>hmm...I have a mono tv card and I'm pretty sure sound comes out of both speakers
20:14<JonnyRo>yea, it's wierd
20:14<JonnyRo>maybe my mplayer settings are off
20:14<JonnyRo>where are the mythtv commands set up in mythtv CVS
20:27<moegreen>which commands?
20:31<PeteCool>did vektor disappear or what?
20:32<moegreen>he's connected, I think he's been spending some time in #livid
21:45<PeteCool>what's the point of loading v4l in XF86Config? I don't have it and myth is working fine
21:46<TheAsp>PeteCool: so you can use xawtv...
21:47<PeteCool>TheAsp: I think it worked fine without that module too... I'll have to check again, but I'm pretty sure I didn't have it at that time either
21:48<TheAsp>well, if its working fine for what you are using it for, then whatever :P
22:05<PeteCool>Chutt: is it possible to get an fps counter for some of the mythmusic vis's ?
22:07<PeteCool>removing glx from my XF86Config made most vis's faster by a bit... weird
22:09-!-TheAsp [] has quit ["Client exiting"]
22:24<Chutt>petecool, well, for goom and synaesthesia, they should be limiting themselves to ~20fps
22:24<Chutt>otherwise, i suppose something could be added
22:24<PeteCool>Chutt: they can't get over 20fps? I'm maxing it out then, cool :)
22:25<Chutt>no, i just artificially limit them to cut down on cpu usage
22:26<PeteCool>Doesn't X automatically use hardware accelerated GL drivers? At least the rendering part would be offloaded (if it is, it doesn't seem so)
22:27<PeteCool>Or maybe it is... lots of math in there
22:31<PeteCool>I don't see where is the description String contents defined for playbackbox.cpp... I need to change that to get my \xE9\xEA\xE0 back
22:34<PeteCool>Since the characters are indeed fine in the DB
22:46<PeteCool>probably has to do with the fact that I haven't seem pointers yet
22:48<mdz>the fellow trying to build mythtv with icc is going to be disappointed if he gets it working
22:51<JonnyRo>how can i tell mythtv to capture tv in mono mode?
22:51<JonnyRo>for audio
22:52<PeteCool>mdz: why would he be disappointed?
22:56<PeteCool>it won't work? the benchmarks are faked, and thus it will be as fast/slow as it's now?
22:58<mdz>PeteCool: er...those benchmarks are for C and C++ code
22:59<mdz>PeteCool: mythtv spends all but a small fraction of its CPU time in the MPEG encoder, the critical parts of which are written in hand-optimized assembler
23:00<JonnyRo>Does myth use mencoder?
23:00<JonnyRo>or it's own library
23:00<mdz>it uses libavcodec from ffmpe
23:01<JonnyRo>mdz, where are the audio settings stored for where myth controls libavcodec, i want to find a part in the code where I can force it to record the audio in mono mode
23:01<JonnyRo>since my capture card only supports mono
23:01<JonnyRo>right now it is playing back the input stream out of only one speaker
23:02<mdz>JonnyRo: NuppelVideoRecorder.cpp
23:03<JonnyRo>hmm, i wonder if alsamixer set to Mix Mono would do the trick
23:03<JonnyRo>without modifying mythtv
23:03<JonnyRo>looking into that first
23:03<JonnyRo>alsamixer (the command line ver) is fairly cryptic with the sblive, there are like 50 different interfaces
23:17<mdz>I just do alsactl store and edit the file
23:19-!-aw [] has joined #mythtv
23:22<PeteCool>Chutt: Synesthaesia is looking great at 30fps, and the cpu usage is around 60%... I'll keep it like that ;)
23:23<PeteCool>It's even impressive =)
23:26<aw>Chutt: I think the 'space' check in getSpaceOnSoundcard is unecessary w/ the new audio_buffer_unused backoff
23:26<aw>works w/o it on both my crappy sound cards
23:29<PeteCool>Chutt: would an X resolution reduction from 800x600 to 640x480 help the funky math in the vis's at all?
23:33-!-bigguy [] has joined #mythtv
23:34<bigguy>lotta pics and in a forign tongue
23:35<bigguy>but nice homemade pvr case
23:36<PeteCool>The fan in the front looks stupid|weird though
23:38<bigguy>someone said he shoulda used louvers or something
23:39<bigguy>I still think it's a nice inexpensive pvr case if you have a few wood working tools handy
23:40<PeteCool>or just use duct-taped plywood :)
23:40<PeteCool>that's the kind of experience I have with wood
23:41<PeteCool>He could have used extenders instead of soldering directly on the cards... he must be a good solderer (is that a word?) to do it that way
23:43<bigguy>yeah he can speak english but that page was meant for his friends to see so
23:43<bigguy>he's a great at soldering. He's done some other stuff that I wouldn't have even attempted with a regular iron
23:44<bigguy>but I like to do alot of different things
23:45<bigguy>I worked in car/home audio for a few years,do a little carpentry, aut maechanicing, electrician etc etc ;)
23:46<bigguy>I need to spell check before I hit enter ;)
23:46<bigguy>course I'm a "typical" geek
23:46<bigguy>excelled in math and sciences and was a poor student of english
23:48<bigguy>I need to finish wireing up the lcd and vfd
23:48<bigguy>but this EMT course is taking up a ton of my free time
23:48<PeteCool>I too was good at math... now I barely pass... but it isn't related to stupidity, but totally complete lack of effort
23:48<PeteCool>Statistics is SOO boring
23:49<PeteCool>anyways... I'll survive, might even become a myth hacker someday :)
23:49<bigguy>I was great at math before I started drinking alot of diet drinks with nutrasweet :(
23:50<bigguy>nutrasweet had a bad effect on me
23:50<bigguy>I wish I had known about the side effects 5 years ago
23:51<PeteCool>nutrasweet = aspartame?
23:51<PeteCool>are the effects permanent? I'm taking lots of it now...
23:51<bigguy>sacchrine(sp) isn't any better for you either
23:52<bigguy>PeteCool: my aunts research says that some people get Altzheimer like symptoms that don't go away after the person stops using
23:53<bigguy>I found alot of stuff online that seems to back it
23:53<bigguy>and the Megamemory guy advises people not to use it
23:53<PeteCool>got an URL for that?
23:55<bigguy>thats one
23:55<bigguy>google for "aspartame side effects" fir more
23:55<bigguy>for even
23:55<PeteCool>does this match with your aunt's research:
23:56<bigguy>by my aunt's research I ment for a class ;) when she went back to school
23:56<bigguy>she did a paper
23:57<bigguy>my mother said that alot of doctor's were against the fda approval of nutrasweet
23:59<bigguy>the FDA won't approve stavia as a sweetener but they allow it's sale as a nutritional supplement(stavia has been used in japan for 40+ years and is what's in Diet Coke there.