Re: [LAD] [ANN] IR: LV2 Convolution Reverb

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Chris Cannam <cannam@...>
Cc: <linux-audio-dev@...>
Date: Wednesday, February 23, 2011 - 10:13 pm

On Wed, 2011-02-23 at 20:21 +0000, Chris Cannam wrote:

Entirely Redland free. I hand-wrote a Turtle parser and serialiser.

> And: why?

In short, it's been a PITA for everyone in numerous ways since day one.
Some abandoned SLV2 entirely because of it. Others were in the process
of doing so, until I decided enough was enough. Clearly SLV2 was
deficient somehow if people were abandoning it, and they were abandoning
it explicitly because of Redland...

Redland is great if you really need a fully featured RDF implementation,
and I still use it in such cases. To simply implement LV2, however, you
don't, and such a heavyweight dependency certainly doesn't induce the
best knee-jerk reaction. Often the librdf packages would pull in
ridiculously massive mysql libraries and such - to implement a simple
LADSPA based plugin API?! That this left a bad taste in people's mouths
is completely understandable. It has definitely hurt LV2 adoption.

(Because of historical reasons, "RDF" can seem bloatey, but it's really
just an elegant abstract data model, and we are using a terse and simple
syntax for it. The new lean-and-mean SLV2 implementation shows that
there is no bloat inherent in LV2, and it's all a much easier pill to
swallow in practice).

Some less hand-wavey practical reasons: there were mysterious and very
un-fun problems with librdf-in-librdf that crop up when you have plugins
that load plugins (e.g. Ingen, NASPRO(*)). Portability was also an
issue. Stefano D'Angelo (of NASPRO) and myself are now cooperating on
LV2 implementation rather than duplicating effort because of Redland
related problems (e.g. he'll be helping with win32 portability, and
Ingen now depends on NASPRO for LADSPA support). I am all about
resolving any fragmentation that has happened in the LV2 world, and
dropping Redland has been a big positive step in that regard.

The new implementation is thousands of times smaller, lighter, and
faster. The entire thing is much smaller than libxml2 alone, for
example. I should have just written one like this from the get-go, and
the initial reception of LV2 would have been a lot better. Oh well, live
and learn.

SLV2 is now based on two new libraries: Serd (RDF syntax) and Sord (RDF
store). Both are roughly 2 thousand lines of C, solid and thoroughly
tested (about 95% code coverage, like SLV2 itself). Serd has zero
dependencies, Sord depends only on Glib (for the time being, possibly
not in the future). There is still some optimization to be done, but
it's already so much leaner it's not a huge priority for me.

The new SLV2 should be appropriate for, say, implementing LV2 on
embedded hardware with limited resources. The old one, frankly, smelled
of bloat even on a desktop system.

Unfortunately, this ground-up reimplementation thing consumed the
majority of my January, but I am very happy with the outcome.

-dr

(* For the unfamiliar, NASPRO is a bridge which transparently exposes
LADSPA, VST, etc. plugins as LV2 plugins, among other things)

_______________________________________________
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[LAD] [ANN] IR: LV2 Convolution Reverb, Tom Szilagyi, (Thu Jan 13, 6:37 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Tom Szilagyi, (Fri Jan 14, 8:29 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, David Robillard, (Wed Feb 9, 4:51 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Chris Cannam, (Wed Feb 23, 8:21 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, David Robillard, (Wed Feb 23, 10:13 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Fons Adriaensen, (Thu Feb 24, 11:47 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, David Robillard, (Thu Feb 24, 4:57 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Jörn Nettingsmeier, (Thu Feb 24, 1:00 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Paul Coccoli, (Thu Feb 10, 5:54 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, David Robillard, (Mon Feb 21, 7:40 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Rui Nuno Capela, (Wed Feb 9, 7:59 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, David Robillard, (Mon Feb 21, 7:22 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Jeremy Salwen, (Tue Feb 22, 4:53 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, David Robillard, (Tue Feb 22, 6:08 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Stefano D'Angelo, (Tue Feb 22, 6:50 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, David Robillard, (Tue Feb 22, 8:29 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Alexandre Prokoudine, (Wed Feb 23, 10:20 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, David Robillard, (Wed Feb 23, 4:32 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Philipp Überbacher, (Tue Feb 22, 10:31 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Alexandre Prokoudine, (Wed Feb 23, 9:52 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Philipp Überbacher, (Wed Feb 23, 11:00 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Alexandre Prokoudine, (Wed Feb 23, 1:43 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Fons Adriaensen, (Wed Feb 23, 3:05 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Alexandre Prokoudine, (Wed Feb 23, 4:55 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Gordon JC Pearce, (Wed Feb 23, 10:58 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Alexandre Prokoudine, (Thu Feb 24, 12:55 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, David Robillard, (Thu Feb 24, 12:23 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Paul Davis, (Thu Feb 24, 12:11 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Gordon JC Pearce, (Thu Feb 24, 12:33 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Paul Davis, (Thu Feb 24, 12:39 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Paul Davis, (Thu Feb 24, 12:42 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Fons Adriaensen, (Thu Feb 24, 11:43 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Alexandre Prokoudine, (Thu Feb 24, 1:07 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Fons Adriaensen, (Thu Feb 24, 2:46 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Paul Davis, (Thu Feb 24, 1:45 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Paul Davis, (Thu Feb 24, 1:02 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Fons Adriaensen, (Thu Feb 24, 3:23 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Paul Davis, (Thu Feb 24, 4:17 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Fons Adriaensen, (Thu Feb 24, 4:46 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Paul Davis, (Thu Feb 24, 5:39 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Fons Adriaensen, (Sat Feb 26, 3:41 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Mark Knecht, (Sun Feb 27, 12:18 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Fons Adriaensen, (Sun Feb 27, 1:17 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Thomas Vecchione, (Sun Feb 27, 12:05 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Jörn Nettingsmeier, (Sun Feb 27, 9:38 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Andres Cabrera, (Sun Feb 27, 10:41 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Thomas Vecchione, (Sun Feb 27, 11:21 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Fons Adriaensen, (Sun Feb 27, 1:19 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Paul Davis, (Sat Feb 26, 3:52 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Renato, (Sat Feb 26, 9:44 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Fons Adriaensen, (Thu Feb 24, 8:45 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Alexandre Prokoudine, (Thu Feb 24, 9:20 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Fons Adriaensen, (Thu Feb 24, 9:39 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, David Robillard, (Thu Feb 24, 11:48 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Fons Adriaensen, (Fri Feb 25, 12:34 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, David Robillard, (Fri Feb 25, 5:52 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Alexandre Prokoudine, (Fri Feb 25, 6:01 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Paul Giblock, (Fri Feb 25, 8:43 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Jens M Andreasen, (Fri Feb 25, 12:43 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Fons Adriaensen, (Fri Feb 25, 11:28 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Jens M Andreasen, (Fri Feb 25, 1:03 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Joel Roth, (Sat Feb 26, 4:59 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Alexandre Prokoudine, (Thu Feb 24, 10:05 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Fons Adriaensen, (Thu Feb 24, 10:13 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Paul Davis, (Thu Feb 24, 9:13 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Fons Adriaensen, (Thu Feb 24, 9:58 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Nick Copeland, (Thu Feb 24, 10:02 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Jörn Nettingsmeier, (Thu Feb 24, 5:59 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, torbenh, (Thu Feb 24, 4:28 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Paul Davis, (Thu Feb 24, 4:31 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Jörn Nettingsmeier, (Thu Feb 24, 12:56 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Thorsten Wilms, (Thu Feb 24, 12:08 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, David Robillard, (Thu Feb 24, 5:11 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Arnold Krille, (Thu Feb 24, 6:35 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Michael Bechard, (Thu Feb 24, 6:49 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Harry Van Haaren, (Thu Feb 24, 8:11 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Michael Bechard, (Thu Feb 24, 8:13 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Paul Davis, (Thu Feb 24, 6:41 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Fons Adriaensen, (Thu Feb 24, 12:29 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Alexandre Prokoudine, (Wed Feb 23, 2:53 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Fons Adriaensen, (Wed Feb 23, 10:39 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Folderol, (Wed Feb 23, 1:42 pm)
Re: [LAD] [OT] IR: LV2 Convolution Reverb, Nick Copeland, (Tue Feb 22, 8:34 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Paul Davis, (Tue Feb 22, 6:55 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, David Robillard, (Tue Feb 22, 8:36 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Rui Nuno Capela, (Mon Feb 21, 8:27 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, David Robillard, (Mon Feb 21, 10:41 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Rui Nuno Capela, (Mon Feb 21, 11:18 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, David Robillard, (Tue Feb 22, 2:56 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Rui Nuno Capela, (Tue Feb 22, 9:44 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, David Robillard, (Tue Feb 22, 5:39 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, michael noble, (Wed Feb 23, 3:33 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, David Robillard, (Wed Feb 23, 8:00 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Rui Nuno Capela, (Wed Feb 23, 9:03 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, David Robillard, (Wed Feb 23, 4:17 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, torbenh, (Wed Feb 23, 9:57 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Rui Nuno Capela, (Wed Feb 23, 11:03 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, David Robillard, (Wed Feb 23, 5:23 pm)
[LAD] libsuil (was: IR: LV2 Convolution Reverb), Rui Nuno Capela, (Wed Feb 23, 7:03 pm)
Re: [LAD] libsuil (was: IR: LV2 Convolution Reverb), David Robillard, (Wed Feb 23, 7:39 pm)
Re: [LAD] libsuil, Rui Nuno Capela, (Wed Feb 23, 8:11 pm)
Re: [LAD] libsuil, David Robillard, (Thu Feb 24, 9:21 am)
Re: [LAD] libsuil, Rui Nuno Capela, (Thu Feb 24, 9:39 am)
Re: [LAD] libsuil, David Robillard, (Thu Feb 24, 4:46 pm)
Re: [LAD] libsuil, David Robillard, (Wed Feb 23, 9:29 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, torbenh, (Wed Feb 23, 11:44 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Rui Nuno Capela, (Tue Feb 22, 6:31 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, David Robillard, (Tue Feb 22, 8:02 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Paul Giblock, (Tue Feb 22, 10:22 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, David Robillard, (Wed Feb 23, 1:22 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Paul Giblock, (Wed Feb 23, 1:33 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Gabriel M. Beddingfield, (Wed Feb 23, 1:31 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Paul Davis, (Mon Feb 21, 8:32 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Rui Nuno Capela, (Mon Feb 21, 10:53 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, David Robillard, (Tue Feb 22, 2:06 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Philipp Überbacher, (Fri Jan 14, 8:44 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Ralf Mardorf, (Sat Jan 15, 12:22 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Ralf Mardorf, (Sat Jan 15, 12:30 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Ralf Mardorf, (Sat Jan 15, 12:56 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Tom Szilagyi, (Fri Jan 14, 10:29 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, David Robillard, (Mon Feb 21, 7:32 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Fons Adriaensen, (Mon Feb 21, 8:56 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, David Robillard, (Mon Feb 21, 10:58 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Fons Adriaensen, (Mon Feb 21, 11:12 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, David Robillard, (Tue Feb 22, 2:27 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Fons Adriaensen, (Tue Feb 22, 12:43 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, David Robillard, (Tue Feb 22, 5:52 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Paul Davis, (Tue Feb 22, 2:14 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Philipp Überbacher, (Tue Feb 22, 4:48 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Gabriel M. Beddingfield, (Tue Feb 22, 6:54 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Paul Davis, (Tue Feb 22, 4:57 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Philipp Überbacher, (Tue Feb 22, 8:50 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Fons Adriaensen, (Tue Feb 22, 12:18 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Paul Davis, (Tue Feb 22, 1:46 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Nick Copeland, (Tue Feb 22, 12:45 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, David Cornette, (Wed Feb 23, 2:57 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Jörn Nettingsmeier, (Tue Feb 22, 9:55 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Sean Bolton, (Tue Feb 22, 5:06 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Gabriel M. Beddingfield, (Tue Feb 22, 1:31 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Fons Adriaensen, (Tue Feb 22, 1:11 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Nick Copeland, (Tue Feb 22, 1:46 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Fons Adriaensen, (Tue Feb 22, 4:02 pm)
Re: [LAD] [OT] IR: LV2 Convolution Reverb, Nick Copeland, (Tue Feb 22, 6:33 pm)
Re: [LAD] [OT] IR: LV2 Convolution Reverb, Fons Adriaensen, (Tue Feb 22, 7:48 pm)
Re: [LAD] [OT] IR: LV2 Convolution Reverb, David Robillard, (Tue Feb 22, 9:14 pm)
Re: [LAD] [OT] IR: LV2 Convolution Reverb, Jörn Nettingsmeier, (Tue Feb 22, 10:10 pm)
Re: [LAD] [OT] IR: LV2 Convolution Reverb, Philipp Überbacher, (Tue Feb 22, 9:31 pm)
[LAD] On LAD (WAS: Re: [OT] IR: LV2 Convolution Reverb), David Robillard, (Wed Feb 23, 1:11 am)
Re: [LAD] On LAD (WAS: Re: [OT] IR: LV2 Convolution Reverb), Lorenzo Sutton, (Wed Feb 23, 10:29 am)
Re: [LAD] On LAD (WAS: Re: [OT] IR: LV2 Convolution Reverb), Alexandre Prokoudine, (Wed Feb 23, 9:40 am)
Re: [LAD] [OT] IR: LV2 Convolution Reverb, Nick Copeland, (Tue Feb 22, 8:36 pm)
Re: [LAD] [OT] IR: LV2 Convolution Reverb, Arnold Krille, (Tue Feb 22, 8:59 pm)
Re: [LAD] [OT] IR: LV2 Convolution Reverb, Paul Davis, (Tue Feb 22, 8:41 pm)
Re: [LAD] [OT] IR: LV2 Convolution Reverb, Nick Copeland, (Tue Feb 22, 9:11 pm)
Re: [LAD] [OT] IR: LV2 Convolution Reverb, Devin Anderson, (Tue Feb 22, 9:43 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Paul Davis, (Tue Feb 22, 1:50 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Tom Szilagyi, (Tue Feb 22, 1:07 pm)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, David Robillard, (Tue Feb 22, 3:00 am)
Re: [LAD] [ANN] IR: LV2 Convolution Reverb, Michael Beer, (Thu Jan 13, 9:00 pm)