<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
Thanks for the reply Russell. See below<br>
<br>
Russell Penney wrote:
<blockquote cite="midmd5:64756D6D79206D657373616765206964" type="cite">
  <meta http-equiv="Content-Type" content="text/html; ">
  <meta name="Generator" content="Microsoft Word 11 (filtered medium)">
<!--[if !mso]>
<style>
v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style>
<![endif]--><o:SmartTagType
 namespaceuri="urn:schemas-microsoft-com:office:smarttags" name="place">
  <o:SmartTagType
 namespaceuri="urn:schemas-microsoft-com:office:smarttags"
 name="PersonName"><!--[if !mso]>
<style>
st1\:*{behavior:url(#default#ieooui) }
</style>
<![endif]-->
  <style>
<!--
 /* Font Definitions */
 @font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
        {font-family:Verdana;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
        {font-family:-moz-fixed;
        panose-1:0 0 0 0 0 0 0 0 0 0;}
 /* Style Definitions */
 p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman";
        color:black;}
a:link, span.MsoHyperlink
        {color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {color:purple;
        text-decoration:underline;}
p
        {mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:12.0pt;
        font-family:"Times New Roman";
        color:black;}
span.EmailStyle18
        {mso-style-type:personal-reply;
        font-family:Arial;
        color:blue;
        font-weight:normal;
        font-style:normal;
        text-decoration:none none;}
@page Section1
        {size:612.0pt 792.0pt;
        margin:72.0pt 90.0pt 72.0pt 90.0pt;}
div.Section1
        {page:Section1;}
-->
  </style><!--[if gte mso 9]><xml>
 <o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
 <o:shapelayout v:ext="edit">
  <o:idmap v:ext="edit" data="1" />
 </o:shapelayout></xml><![endif]-->
  </o:SmartTagType></o:SmartTagType>
  <div class="Section1">
  <p class="MsoNormal"><font color="blue" face="Arial" size="3"><span
 style="font-size: 12pt; font-family: Arial; color: blue;">Brad,<o:p></o:p></span></font></p>
  <p class="MsoNormal"><font color="blue" face="Arial" size="3"><span
 style="font-size: 12pt; font-family: Arial; color: blue;">&nbsp;&nbsp; I am
seeing a lot of synergy
actually. You do the audio tidy up, Blake does tools and doco, Dean
does some
very cool low level stuff which I sure forms the basis of a bunch of
later work
(i.e. better algorithms for OGG, etc than straight ports of &#8220;C&#8221;),
Yoshiki,
Martin and others do video, I handle file formats (with lots of help :)
and the
others test.<o:p></o:p></span></font></p>
  <p class="MsoNormal"><font color="blue" face="Arial" size="3"><span
 style="font-size: 12pt; font-family: Arial; color: blue;"><o:p>&nbsp;</o:p></span></font></p>
  <p class="MsoNormal"><font color="blue" face="Arial" size="3"><span
 style="font-size: 12pt; font-family: Arial; color: blue;">The main
things I see happening from here
that we need to resolve ASAP are a bunch of questions. <o:p></o:p></span></font></p>
  <p class="MsoNormal"><font color="blue" face="Arial" size="3"><span
 style="font-size: 12pt; font-family: Arial; color: blue;">What do
people see as the interfaces?<o:p></o:p></span></font></p>
  <p class="MsoNormal"><font color="blue" face="Arial" size="3"><span
 style="font-size: 12pt; font-family: Arial; color: blue;">What have
others seen in a multimedia
framework? Is there a good one we can steal, I mean be influenced by.<o:p></o:p></span></font></p>
  <p class="MsoNormal"><font color="blue" face="Arial" size="3"><span
 style="font-size: 12pt; font-family: Arial; color: blue;">What are the
lowest common denominators?<o:p></o:p></span></font></p>
  <p class="MsoNormal"><font color="blue" face="Arial" size="3"><span
 style="font-size: 12pt; font-family: Arial; color: blue;">What
functionality does everyone want?</span></font></p>
  </div>
</blockquote>
I think it's a bit more than that, at least in the audio area clean up
-- not hard, but we need agreement from a few more people that are
smarter than me. I don't want to go about changing the concept of the
audio functionality (which is needed IMHO) w/o agreement from both the
people who will use it, and from the general community on how it will
fit into the overall design/usability of Squeak.<br>
<br>
>From my experience, some audio classes are intertwined. For instance:
something you probably already found, AbstractSound has instance
methods that store audio files. Some of these methods use other audio
class methods. As an example:&nbsp; AbstractSound&gt;&gt;storeAIFFSamplesOn:
uses the SoundPlayer samplingRate class variable -- and this class
variable is hard coded at initialize -- not good for the SoundPlayer
tool and worse, it makes storeAIFFSamplesOn: not reusable. <br>
This isn't a hard problem to fix in code -- but it is in the overall
design of the system: I think it boils down to what object should
maintain attributes of the audio capture -- a design issue.&nbsp; I think
it's obvious, but we just need agreement before we change the design.
(ok, maybe it's not a great example cause it's easy. But, I've had to
override audio classes so that I could make them usable -- I didn't
want to fork off and not be compatible with future versions.)<br>
<br>
Other things are easier to tidy up. For instance, the same method uses
an instance method named AbstractSound&gt;&gt;isStereo --- but it is
hard coded to return 'false'. yuck.<br>
<br>
So, for me, I think we need to look at all the audio classes, uncover
the problems, and come up with a design (and I'm not saying a complete
redesign) and a plan to execute.<br>
<blockquote cite="midmd5:64756D6D79206D657373616765206964" type="cite">
  <div class="Section1">
  <p class="MsoNormal"><font color="blue" face="Arial" size="3"><span
 style="font-size: 12pt; font-family: Arial; color: blue;"><o:p></o:p></span></font></p>
  <p class="MsoNormal"><font color="blue" face="Arial" size="3"><span
 style="font-size: 12pt; font-family: Arial; color: blue;"><o:p>&nbsp;</o:p></span></font></p>
  <p class="MsoNormal"><font color="blue" face="Arial" size="3"><span
 style="font-size: 12pt; font-family: Arial; color: blue;">Just as an
example what about these?<o:p></o:p></span></font></p>
  <p class="MsoNormal"><font color="blue" face="Arial" size="3"><span
 style="font-size: 12pt; font-family: Arial; color: blue;">aURI
playVideo<o:p></o:p></span></font></p>
  <p class="MsoNormal"><font color="blue" face="Arial" size="3"><span
 style="font-size: 12pt; font-family: Arial; color: blue;">aURI
playAudio<o:p></o:p></span></font></p>
  <p class="MsoNormal"><font color="blue" face="Arial" size="3"><span
 style="font-size: 12pt; font-family: Arial; color: blue;">aURI
play&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#8220;uses
a specific player based on the file type&#8221;<o:p></o:p></span></font></p>
  <p class="MsoNormal"><font color="blue" face="Arial" size="3"><span
 style="font-size: 12pt; font-family: Arial; color: blue;">aURI
edit&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#8220;opens
a specific editor based on the file type&#8221;<o:p></o:p></span></font></p>
  <p class="MsoNormal"><font color="blue" face="Arial" size="3"><span
 style="font-size: 12pt; font-family: Arial; color: blue;">aURI
editAudio&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#8220;opens
an audio editor on just the audio stream of the file&#8221;<o:p></o:p></span></font></p>
  <p class="MsoNormal"><font color="blue" face="Arial" size="3"><span
 style="font-size: 12pt; font-family: Arial; color: blue;"><o:p>&nbsp;</o:p></span></font></p>
  <p class="MsoNormal"><font color="blue" face="Arial" size="3"><span
 style="font-size: 12pt; font-family: Arial; color: blue;">When we
figure out where we want to get
to, we can work out how to get there.<o:p></o:p></span></font></p>
  <p class="MsoNormal"><font color="blue" face="Arial" size="3"><span
 style="font-size: 12pt; font-family: Arial; color: blue;"><o:p>&nbsp;</o:p></span></font></p>
  <p class="MsoNormal"><font color="blue" face="Arial" size="3"><span
 style="font-size: 12pt; font-family: Arial; color: blue;">As for the
question below, yes I am
interested in re-useability, something that everyone raves about for OO
and
Smalltalk but something that Squeak is very bad at doing in practice. <o:p></o:p></span></font></p>
  <p class="MsoNormal"><font color="blue" face="Arial" size="3"><span
 style="font-size: 12pt; font-family: Arial; color: blue;">I am not a
&#8220;programmer&#8221;
although I program ;) so I will write code for the framework. I already
have a
simple MM framework but I need some help with the design, I am not
experienced
enough to know which are the better OO ways of doing things.<o:p></o:p></span></font></p>
  <p class="MsoNormal"><font color="blue" face="Arial" size="3"><span
 style="font-size: 12pt; font-family: Arial; color: blue;"><o:p>&nbsp;</o:p></span></font></p>
  <p class="MsoNormal"><font color="blue" face="Arial" size="3"><span
 style="font-size: 12pt; font-family: Arial; color: blue;">Russell<o:p></o:p></span></font></p>
  </div>
</blockquote>
Can you explain more about what you mean by framework? What are you
proposing and at what level?<br>
Is this an analysis of the current design? Or is this from a user
perspective as you described above (aURI playAudio)<br>
<br>
If you take my example above that focuses on audio only, and blow it up
to add other MM types, it becomes a bigger and more complicated design
issue. Thus, my initial cry to the Squeak community. It's not
rocket-surgery, but it's bigger than me.<br>
<br>
brad<br>
</body>
</html>