Optimizing Java for speed ...

I have created a GUI program, that relies heavily on Swing components. I use a JDesktop with multiple JInternalFrames with JToolBars in both the desktop and the frames. Everything is working fine...
however, loading the application (creating a new instance) takes 35 secs!!
It's getting quite big (27 classes), but besides loading a couple of images of a (local) webserver, I don't see how it should take this amount of time to set up.
Any hints on general optimalization techniques? (links? articles?)
Beforehand thanks to anyone answering!!

OK, here's some optimization tricks.
1. Build your dialog boxes (or at least the dialog boxes that you use most often) ahead of time during the splash screen.
2. Instead of killing your dialog boxes when you close them just use setVisible(false). This keeps them in memory so the next time you want to view that dialog box just do setVisible(true).
3. Using a Singleton design pattern will help you with both of the above issues.
public class MyDialog extends JDialog {
   private static MyDialog theOnlyOne = null;
   // The constructor is private.  Build your Dialog box's GUI
   // here.  Because it's private nothing outside this class can call it.
   private MyDialog(){
   public static MyDialog getInstance() {
      if(theOnlyOne == null) {
         theOnlyOne = new MyDialog();
      return theOnlyOne;
}By looking at this code you can see that instead of creating an instance of MyDialog you instead use the static method getInstance() The first time getInstance is called it will construct the dialog box. The 2nd and all subsequent times getInstance is called it will return the already constructed instance of MyDialog. This will allow you to simply use setVisible with true or false to turn the dialog box on or off. This means you spend the time to construct the dialog box only once.
Also never mix AWT components (Button, Checkbox, Frame) with Swing components (JButton, JCheckbox, JFrame) Always use Swing. They're "lighter weight" and the look better.
Another technique is to call the garbage collection explicitly. One of the great things about Java is that it does automatic garbage collection (gc) . The bad thing about that is that the gc runs whenever the JVM decides it needs more memory. If this happens while you're using your app then you get a "hiccup" of slowness.
So, if you're in a part of the code where you know that immediate reaction isn't important at that moment then you can call the garbage collection manually with System.gc();
For example, let's say your program just ran a big database query and returned all that data in a JTable. Let's say that you KNOW that when the user runs that process they always take at least a few seconds to look at the data they just retrieved. That may be a good time to run System.gc(); That way, you make the garbage collector run when it doesn't effect the user.
If you were writing a game then you could run System.gc(); when you load a new level. Essentially, just run it when you know that the user experience won't be effected.
Once Gui components are constructed I've found that they work pretty darn fast. I use Jext, a programming editor written in Java every single day and the only slowness I've found when using it is when the garbage collector kicks in.
Hope it helps.
Greg

Similar Messages

  • Image Moment - Optimizing Code for Speed

    Hello 
    I'm want to find the moment of inertia of an 2d-array. The array is converted from an image using "IMAQ ImageToArray".
    The algorithm I'm using is discribed here:
    Wikipedia - Image Moments
    I need to calculate this formula with different values for i and j:
    i.j = 0.0 - 0.1 - 1.0 - 1.1 - 0.2 - 2.0
    I programmed the code shown above/attached VI, but I need the optimize it for speed.
    The 2d array can be any size with a maximum of 2048 x 2048 with values varying between 0 and 4095.
    My question:
    How can I make this code faster?  
    Thank you and kudos will be given! 
    The Enrichment Center is required to remind you that you will be baked, and then there will be cake.
    Solved!
    Go to Solution.
    Attachments:
    Image Moment.vi ‏19 KB

    Hello falkpl,
    " If you are looking at moments, the IMAQ particle analysis will do moments on particles all in imaq to avoide the slower image to array.
    As for optomizing your code a few observations
    1. why are you using doubles- your image is 12 (actually 16bit in imaq)
    2. do nor calculate intedex on each itteration pre calculate these and cache.
    3. when possible do calculation on arrays at a time, ie multiple 2 arrays instead of doing it in a loop. "
    Thank you for your reply, sir.  As stated before, the "IMAQ Particle Analysis" only calculates moments on non-weighted (e.g. binary) particles.
    The formula above includes the weight of each pixel.
    1. The doubles are because the image is first filtered. This filter needs to convert the image to the DBL Type.
    2. Could you please elaborate this, sir? I do not understand what you mean.
    3. Effectively done in the solution. Thank you.
    The Enrichment Center is required to remind you that you will be baked, and then there will be cake.

  • Tips for optimizing for speed?

    It may be awhile before I can afford a new computer, so I was wondering of any tips for optimizing my current computer for speed.
    *Of particular interest is the CPU usage graph of the Activity Monitor: why isn't the graph pegged* when an application is running an intensive process? In other words, when I am doing something with the computer, I expect it to be giving 200% effort (because I have two CPUs in my computer). So why isn't it?
    And what can I do to fix it? How can I get the CPUs to work at full power? I've already maxed out the memory, using quality (Kingston) RAM.
    I fully realize that the bottleneck in speed in most computers is the hard drive. I do what I can in that regard (keep them optimized, repair permissions, and so on).
    +*I just want the CPUs to be giving their all when required.*+ Is there a third party app that would help? Any tips, advice or suggestions will be appreciated!
    And, on a related note, why was it, when Macs used PowerPCs, were we told that "RISC always beats CISC"? That is, PowerPCs were faster and more efficient than Intel chips? But now, with Macs using Intel exclusively, we are told as to how wonderful Intel chips are? Any thoughts on that?

    Software applications and OS don't, and it is a myth of sorts that 100% per core is being efficient, sometimes it is, usually it is not.
    There isn't much bandwidth to begin with, and some have tried 10K VelociRaptor in their G5 1.8s only to find the WD Black 640GB was just as good or better, but you don't want drives older than a year ago in there.
    Mac Pro used - and there are some 2009's 2.66GHz 4-core $1800, or from Apple, or look at $900 iMac even.
    http://store.apple.com/us/browse/home/specialdeals/mac/mac_pro
    A lot of applications are not optimized or can't or are still stuck in pre-multi-threaded era, especially under PPC code.
    And what pray tell instead of generalities are you running, so people can provide more specifics?

  • Optimal configurations for webobjects using Java Monitor

    Can someone please let me know the optimal configurations for webobjects? We need details on the number of instances which can be created per cpu on the application server. Please also provide information on the thread configurations per instance in java monitor.

    I do need the threads to communicate. The fact is that I simplified the thing just to understand better responses from you :). The real problem is more complicated. I have a arbitrary number of threads of two different classes. These threads have to access a shared resource (I used the boolean free). Moreover I have to give precedence to one of these two classes. So, I used to integers to represent two queues. The fact is that only the first thread to be ran reaches the end. The others, I saw, reach the wait() method, but then they stops and the program does not finish.
    I mean that I thought this: the first thread to reach the wait() passes. Then, this first thread starts to use the resource (free becomes false). Every other thread which reach the while(...) stops there (there is the wait()). Then the first process, at a particular time, release the resource (free = true) and communicate this to another thread which was stuck at the wait() instruction (through the notify()). The problem I see is that every thread reach the wait() and stops there. After the first one is finished, no more... The notify() does not give the monitor to another thread (which would find free = true). This is my problem. Do you understand?
    Many thanks for yuor answer anyway.

  • JAVA for embedded systems: just a myth ?

    Hi,
    I'm relatively new to JAVA (a year or so), and so far I'm fascinated. I've only developed for PC using J2SE, although I'heard a lot of hipe about J2ME, which I guess is the JAVA for embedded systems (correct me if I'm wrong here).
    I worked a lot with microcontrollers, and I think it would be really nice to program them using JAVA. I googled serched for JAVA enabled embedded systems, but I couldn't find anything.
    Anyway, this morning I got to this site and find a very interesting article, which I'd like to share with you and hear your opinions about the 5th myth.
    The link is: http://www.chipcenter.com/knowledge_centers/embedded/todays_feature/showArticle.jhtml?articleID=10300909
    Cheers!!

    >... very interesting article, which I'd like to share with
    you and hear your opinions about the 5th myth.
    Very interesting. I'd always wondered what happened to the Java chips...
    Here's a thought, and an associated question, if any of you reading this happen to be up on modern processor architecture...
    What about microcode? Back in school (decades ago) I learned a bit about microcode, which was like very simple, low-level instructions that a processor would "execute" to execute each assembly/machine language instruction. The idea was that if you needed to tweak the instruction set of a processor, you could rewrite its microcode. Seems like this would lend itself nicely to implementing a JVM in "hardware"... The question is, do they even use microcode anymore? With the pursuit of speed and optimization, I wonder if they didn't abandon it and go with highly specialized/optimized circuits instead...
    Back to the original question -- it would be somewhat ironic if Java weren't available for embedding systems. The original target system was set-top boxes, etc. I've tried a few JVMs on my Palm -- they're getting there!

  • HT4884 java for 10.6.8 is not working

    my iMac says all software is up to date but websites that need java still say that i need to update to the latest version of java.

    For OS 10.6.8, I found the latest Java update didn't work right, either. I restored full functionality by reinstalling Snow Leopard from the DVD, then updating to 10.6.8, plus updating Safari, etc, BUT NOT JAVA. Java works fine as long as you don't go too far with the updates: make sure they say they're for 10.6.x .
    I think the problems begin with update 11, which seems to be tailored for OS 10.7 Lion and higher, but the installer doesn't check what OS you have before updating, nor is there any warning before you click install.
    John
    Model Identifier:
    iMac8,1
      Processor Name:
    Intel Core 2 Duo
      Processor Speed:
    2.4 GHz
    Mac OS X 10.6.8

  • New stream, low upload rate... Optimal Settings for streaming games?

    I've been fiddling around with FMLE for the past few days/weeks and trying to find the best quality to stream quality games such as Bad Comapny 2, Starcraft 2, Mass Effect 2, etc
    I am able to play games at max settings, but when I do the stream will lag so I choose to make the settings low enough so I can stream.
    The only probably right now is they seem quite blurry/pixelated - which is probably due to my upload rate of 0.8mbps from SpeedTest.net1
    My specs are:
    Resolution of 1680x1050 (Most of my games like Bad Company 2 are played at 1280x720 windowed mode)
    i5-2500K
    GTX 560 Ti
    12GB Ram
    1TB Hard Disk Space
    Windows 7 64bit
    Upload rate of 0.8mbps (and 5.0mbps download incase it is needed)
    http://www.justin.tv/mrshotzzzz/videos - Bad Company 2 at the moment... There seems to be a LOT of blurryness, but it seems quite smooth.
    http://www.twitch.tv/mrshotzzzz/b/293073526?id=293073526&channel=mrshotzzzz - This is my latest... (skip to 1:25 where I configure it to be good)
    When I fullscreen it, around the edges mainly, I see it is pixleted.
    I use 1280x720 input, and 640x360 output with 800kbps. Is it possible to make it better?
    Would an output of 640x360 with a bitrate of 650kbps be better?
    Would an output of 854x480 be better?
    Could changing my input size to 1920x1080 make my quality better?
    tl;dr What is the optimal settings for a good specced computer, but with a low upload rate (0.8mbps)?

    Hi,
    In iChat 3 or iChat 4 setting System Preferences > Quicktime > Streaming to 1.5Mbps is quite important.
    In Tiger (10.4.x) the Automatic Setting here is read as Zero by iChat and can cause issues even when the Speed is high enough.
    In Leopard for iChat 4 this Automatic setting is read as 384k by iChat (although this is the Minimum for a 4 way Video chat it may still cap your Internet Speed).
    If you have to change this iChat will need a restart if open.
    The real controlling factor is the Upload speed the Internet Connection speed has.
    There is one other place to help with the Bandwidth/Internet Connection speed.
    This is in iChat menu > Preferences > Video Section > Bandwidth Limit drop down.
    This can be changed during A/V chat and changes to the Bit rate iChat is using is shown in the Connection Doctor (Video Menu).
    This is best used when Really Fast Buddies (Processors and Internet Speeds) can tend to "Over-run" lesser speeded Buddies. It can also help if your ISP manages the Bandwidth/Internet Connection speed making it run slower or faster at different times of the day (Also look at Fair Usage Policies).
    There is no independent way to reduce the Frame rate that would have a direct effect on this.
    There are other apps that do use less demanding picture quality that in turn effects the Frame rate which can effect the Bandwidth needed/Used
    See this link http://www.ralphjohns.co.uk/page5.html#_other
    Scroll to numbers 5 through 8 for Apps, 9 through 12 for Web Browser options.
    13 is a PC app.
    14 & 15 works in Video only to MSN Buddies.
    The list does not have a reference to the Yahoo Beta 3 for Mac
    http://messenger.yahoo.com/mac/
    7:23 PM Wednesday; August 5, 2009
    Please, if posting Logs, do not post any Log info after the line "Binary Images for iChat"

  • Wirefusion and Java for 3D

    I have a general knowledge of how 3D software operates but no knowledge of Java. I would like to become proficient with the program called Wirefusion and I read that it involves Java.
    I understand that I can program Java applications and Wirefusion has the ability to place a Java app on a web page. That is as much as I know, and I could be wrong about even this!
    Please point me towards a very good first step for learning Java from a book and using whatever utility I need to practice on a computer. Is there such a thing as an actual software that will teach me Java programming? I am especially interested in Java for 3D.
    Thanks!

    There's tutorials/trails you can follow online. But I'm not sure of much software that will "train" you in Java. Sun has training CD's they will send you that sorta do that, but they are $$$.
    I'd recommend starting with The Java Tutorial and learn the basic language. Then you can start looking at Java3D (if you're already familiar with real-time 3D concepts). If you've already programmed 3D stuff before then you won't need long to get up to speed.
    I'd download JDK 1.6, Eclipse, and get some basic Java programs running. Then install the Java3D package and get the HelloUniverse demo running. Then you can keep working your way up.

  • I can't adjust to wide screen mode in Need For Speed: Carbon

    Dear guys,
    I can't adjust the graphic to Wide Screen Mode in EA game "Need For Speed: Carbon", I had tried to adjust the dpi in "Options", but it seems no wide screen mode there!
    Is that normal? Thank you guys!
    -DANIEL

    The '''''Yahoo! Toolbar''''' and the '''''Babylon''''' extension have been reported to cause that problem. They seem to invisibly extend downward over the top of the web page display area. Disable or uninstall those add-ons.
    *See --> http://support.mozilla.com/en-US/kb/Uninstalling+add-ons
    *See --> http://support.mozilla.com/en-US/kb/Cannot%20uninstall%20an%20add-on
    *See --> http://kb.mozillazine.org/Uninstalling_toolbars
    *See --> https://support.mozilla.com/kb/Troubleshooting+extensions+and+themes
    '''If this reply solves your problem, please click "Solved It" next to this reply when <u>signed-in</u> to the forum.'''
    Not related to your question, but...
    You may need to update some plug-ins. Check your plug-ins and update as necessary:
    *Plug-in check --> http://www.mozilla.org/en-US/plugincheck/
    *Adobe Shockwave for Director Netscape plug-in: [https://support.mozilla.com/en-US/kb/Using%20the%20Shockwave%20plugin%20with%20Firefox#w_installing-shockwave Installing ('''''or Updating''''') the Shockwave plugin with Firefox]
    *Adobe PDF Plug-In For Firefox and Netscape: [https://support.mozilla.com/en-US/kb/Using%20the%20Adobe%20Reader%20plugin%20with%20Firefox#w_installing-and-updating-adobe-reader Installing/Updating Adobe Reader in Firefox]
    *Shockwave Flash (Adobe Flash or Flash): [https://support.mozilla.com/en-US/kb/Managing%20the%20Flash%20plugin#w_updating-flash Updating Flash in Firefox]
    *Next Generation Java Plug-in for Mozilla browsers: [https://support.mozilla.com/en-US/kb/Using%20the%20Java%20plugin%20with%20Firefox#w_installing-or-updating-java Installing or Updating Java in Firefox]

  • Java for Simulation

    I wanted to seek people's advice on using Java for simulation of physical/numerical processes, for example (but not only), Monte Carlo simulations. Are there any distinct advantages/disadvantages in using Java over, say, Fortran, C++ or other, more common (indeed, more "acceptable") languages used for simulation?
    I am not asking in regard to any specific problem, but in general. There must be people here who have a lot of experience in this area, and can offer some advice (eg. "Learn another language"), or point out things that I would never think of.
    (I did a brief search for this, but only found questions relating to specific aspects of specific projects.)
    Thanks :)

    These comments are really good, and just what I was after :)
    The obvious answer is that the order of raw speed will be, from fastest to slowest, FORTRAN, C, C++, Java. You already know this. [...]
    The advantage [...] is object-oriented abstraction
    This is probably at the core of it. I'd read that for most applications, speed is not too much of issue. I would probably comprimise speed if it meant I spent less time debugging and making sure it actually worked like it should (the worst bugs are the non-fatal ones). But for all I know that could change significantly for simulations. I guess there's also native compilers if speed is really slowing things down. (Do they help? Do people use them?)
    The Colt distribution covers some areas good for sumulations not in the "standard" Java API's...
    I use it a lot, it's very nice :)
    What about using a mix of Java and other libraries, like Fortran or MatLab, for example? Is this widely done, or is it better to keep it all in one language?
    As for the built in memory management, I hadn't actually thought about that.
    I've picked up the impression somewhere along the line (I'm technically a student, see) that Java isn't a simulation language - to stick with Fortran, C or C++. I did deliberately post in a Java forum, not so much to get bias the other way, but to get a wider view. And also because I really like the language.
    Incidentally, would anyone recommend any books on the subject?

  • Possible Java for OS X 2013-005 malware on my MBP?

    Hello all, so I was looking for some android file transfer software for my MBP (running maverick OS) the other day and I got a pop up asking me to install java. One of the apps had said it was cloud based, so i figured the java went with it. It prompted me to install Java for OS X 2013-005. I did so.
    Afterwards I had heard that Java is not good to have on macs due to vulnerabilities. So i looked into uninstalling it.
    I found a way using terminal with sudo rm -fr /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin and also a way where I search for JavaAppletPlugin.plugin and delete that.
    I tried to do both and did not find java....this worried me. I also saw that the latest version of Java is Java for OS X 2014....So I was wondering why it asked me to install an older version....
    Did I somehow install malware on my mac? And if so, how do I check and get rid of it?

    1. This procedure is a diagnostic test. It changes nothing, for better or worse, and therefore will not, in itself, solve the problem. But with the aid of the test results, the solution may take a few minutes, instead of hours or days.
    Don't be put off by the complexity of these instructions. The process is much less complicated than the description. You do harder tasks with the computer all the time.
    2. If you don't already have a current backup, back up all data before doing anything else. The backup is necessary on general principle, not because of anything in the test procedure. Backup is always a must, and when you're having any kind of trouble with the computer, you may be at higher than usual risk of losing data, whether you follow these instructions or not.
    There are ways to back up a computer that isn't fully functional. Ask if you need guidance.
    3. Below are instructions to run a UNIX shell script, a type of program. As I wrote above, it changes nothing. It doesn't send or receive any data on the network. All it does is to generate a human-readable report on the state of the computer. That report goes nowhere unless you choose to share it. If you prefer, you can act on it yourself without disclosing the contents to me or anyone else.
    You should be wondering whether you can believe me, and whether it's safe to run a program at the behest of a stranger. In general, no, it's not safe and I don't encourage it.
    In this case, however, there are a couple of ways for you to decide whether the program is safe without having to trust me. First, you can read it. Unlike an application that you download and click to run, it's transparent, so anyone with the necessary skill can verify what it does.
    You may not be able to understand the script yourself. But variations of it have been posted on this website thousands of times over a period of years. The site is hosted by Apple, which does not allow it to be used to distribute harmful software. Any one of the millions of registered users could have read the script and raised the alarm if it was harmful. Then I would not be here now and you would not be reading this message. See, for example, this discussion.
    Nevertheless, if you can't satisfy yourself that these instructions are safe, don't follow them. Ask for other options.
    4. Here's a summary of what you need to do, if you choose to proceed:
    ☞ Copy a line of text in this window to the Clipboard.
    ☞ Paste into the window of another application.
    ☞ Wait for the test to run. It usually takes a few minutes.
    ☞ Paste the results, which will have been copied automatically, back into a reply on this page.
    The sequence is: copy, paste, wait, paste again. You don't need to copy a second time. Details follow.
    5. You may have started the computer in "safe" mode. Preferably, these steps should be taken in “normal” mode, under the conditions in which the problem is reproduced. If the system is now in safe mode and works well enough in normal mode to run the test, restart as usual. If you can only test in safe mode, do that.
    6. If you have more than one user, and the one affected by the problem is not an administrator, then please run the test twice: once while logged in as the affected user, and once as an administrator. The results may be different. The user that is created automatically on a new computer when you start it for the first time is an administrator. If you can't log in as an administrator, test as the affected user. Most personal Macs have only one user, and in that case this section doesn’t apply. Don't log in as root.
    7. The script is a single long line, all of which must be selected. You can accomplish this easily by triple-clicking anywhere in the line. The whole line will highlight, though you may not see all of it in the browser window, and you can then copy it. If you try to select the line by dragging across the part you can see, you won't get all of it.
    Triple-click anywhere in the line of text below on this page to select it:
    PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/libexec;clear;cd;p=({Soft,Hard}ware Memory Diagnostics Power FireWire Thunderbolt USB Bluetooth SerialATA Extensions Applications Frameworks PrefPane Fonts 1024 85 percent 20480 1 MB/s 25000 ports KiB/s DYLD_INSERT_LIBRARIES\ DYLD_LIBRARY_PATH 10 "` route -n get default|awk '/e:/{print $2}' `" 25 N\\/A down up 102400 25600 recvfrom sendto CFBundleIdentifier 25 25 25 1000 MB 'com.adobe.AAM.Updater-1.0 com.adobe.AAM.Updater-1.0 com.adobe.AdobeCreativeCloud com.adobe.CS4ServiceManager com.adobe.CS5ServiceManager com.adobe.fpsaud com.adobe.SwitchBoard com.adobe.SwitchBoard com.apple.aelwriter com.apple.AirPortBaseStationAgent com.apple.FolderActions.enabled com.apple.installer.osmessagetracing com.apple.mrt.uiagent com.apple.ReportCrash.Self com.apple.rpmuxd com.apple.SafariNotificationAgent com.apple.usbmuxd com.citrixonline.GoToMeeting.G2MUpdate com.google.keystone.agent com.google.keystone.daemon com.microsoft.office.licensing.helper com.oracle.java.Helper-Tool com.oracle.java.JavaUpdateHelper com.oracle.java.JavaUpdateHelper org.macosforge.xquartz.privileged_startx org.macosforge.xquartz.privileged_startx org.macosforge.xquartz.startx' '879294308 4071182229 461455494 3627668074 1083382502 1274181950 1855907737 2758863019 1848501757 464843899 3694147963 1233118628 2456546649 2806998573 2778718105 2636415542 842973933 2051385900 3301885676 891055588 998894468 695903914 1443423563 4136085286 523110921 2883943871 3873345487' 51 5120 files 4 1000 25 5120 -\\t PlistBuddy{,' 2>&1'}' -c Print' OSBundleRequired 1173 20 ' function f() { n++;sub(/^/,"^");gsub(/\./,"\\.");gsub(/\+/,"\\+");gsub(/\-/,"\\-");gsub(/\?/,"\\?");print|"sort|uniq";};function g(N,d) { if(n<N) print d;};' {{,'\.'{kext,xpc,'(appex|pluginkit)'}'\/(Contents\/)?'}Info,'Launch[AD].+'}'\.plist' Label '|sort|uniq'{,\ -c} );N5=${#p[@]};p[N5]=` networksetup -listnetworkserviceorder|awk ' NR>1 { sub(/^\([0-9]+\) /,"");n=$0;getline;} $NF=="'${p[26]}')" { sub(/.$/,"",$NF);print n;exit;} ' `;f=(\\n%s{:\ ,\\n\\n}%s\\n '\nRAM details\n%s\n' %s\ %s '%s\n'"${p[50]}"'%s\n' '%s (UID %s) is using %s %s' '\nContents of %s\n   '"${p[50]}"'mod date: %s\n   '"${p[50]}"'checksum: %s\n%s\n' '\n   ...and %s more line(s)\n' 'RSSI: %s\nNoise: %s\nTx rate: %s\n' {Privacy,Mode}': %s\n' );S0() { echo ' { q=$NF+0;$NF="";u=$(NF-1);$(NF-1)="";gsub(/^ +| +$/,"");if(q>='${p[$1]}') printf("'"${f[5]}"'",$0,u,q,"'${p[$2]}'");} ';};S4() { echo "${p[56]}"\ ' /'${p[$1]}'$/ { p="'"${p[52]}"'\\ :'${p[$2]}' \""$0"\"";p|getline;close(p);if($0!~/ /) f();};END{g('$3',"^com\.apple\.")} ';};s=(' s/[0-9A-Za-z._]+@[0-9A-Za-z.]+\.[0-9A-Za-z]{2,4}/EMAIL/g;/faceb/s/(at\.)[^.]+/\1NAME/g;/\/Shared/!s/(\/Users\/)[^ /]+/\1USER/g;s/[-0-9A-Fa-f]{22,}/UUID/g;' ' s/^ +//;/de: S|[nst]:/p;' ' {sub(/^ +/,"")};/er:/;/y:/&&$2<'${p[46]} ' 1s/://;3,6d;/[my].+:/d;s/^ {4}//;H;${ g;s/\n$//;/s: (E[^m]|[^EO])|x([^08]|02[^F]|8[^0])/p;} ' ' 5h;6{ H;g;/P/!p;} ' ' ($1~/^Cy/&&$3>'${p[47]}')||($1~/^Cond/&&$2!~/^N/) ' ' /:$/{ N;/:.+:/d;s/ *://;b0'$'\n'' };/^ *(V.+ [0N]|Man).+ /{ s/ 0x.... //;s/[()]//g;s/(.+: )(.+)/ (\2)/;H;};$b0'$'\n'' d;:0'$'\n'' x;s/\n\n//;/Apple[ ,]|Genesy|Intel|SMSC/d;s/\n.*//;/\)$/p;' ' s/^.*C/C/;H;${ g;/No th|pms/!p;} ' '/= [^GO]/p' '{$1=""};1' ' /Of/!{ s/^.+is |\.//g;p;} ' ' BEGIN{FS=":"};{ if($2&&$2!="-") { $2="status: "$2;printf("'"${f[4]}"'",$1,$2);} else print $1;} ' ' { sub(/ :/,"");print|"tail -n'${p[48]}'";} ' ' NR==2&&$4<='${p[49]}' { print $4;} ' ' END { $2/=256;if($2>='${p[15]}') print int($2) } ' ' NR!=13{next};{sub(/[+-]$/,"",$NF)};'"`S0 21 22`" 'NR!=2{next}'"`S0 37 17`" ' NR!=5||$8!~/[RW]/{next};{ $(NF-1)=$1;$NF=int($NF/10000000);for(i=1;i<=3;i++){$i="";$(NF-1-i)="";};};'"`S0 19 20`" 's:^:/:p;' "`S4 58 35 80`" 's/^.{52}(.+) <.+/\1/p' "`S4 61 62 80`" "`S4 59 35 80`" ' NR>1&&$3!~/0x|\.([0-9]{3,}|[-0-9A-F]{36})$/ { print $3":"$2;} ' ' /\.(framew|lproj)|\):/d;/plist:|:.+(Mach|scrip)/s/:.+//p ' '/^root$/p' "${p[56]}"\ ' /\.(bundle|component|framework|kext|mdimporter|plugin|qlgenerator|saver|wdgt)$/{f()} END{g(900,"^/System/")} ' ' /\.dylib$/!d;s/(\.|\+|\-|\?)/\\\1/g;s/^/^/p;' "${p[56]}"\ ' /Temp|emac/{next};/(etc|Preferences|Launch[AD].+)\// { sub(".(/private)?","");f();} END { split("'"${p[41]}"'",b);split("'"${p[42]}"'",c);for(i in b) print b[i]"\.plist\t"c[i];g(500,"Launch");} ' ' /^\/(Ap|Dev|Inc|Prev)/d;/((iTu|ok).+dle|\.(component|mailbundle|mdimporter|plugin|qlgenerator|saver|wdgt))$/p;' 's/Pr.+n //p' ' /^\// { sub("/dev/","",$1);printf("%s: %s\n",$1,$9);} ' p '{print $3"\t"$1}' 's/\'$'\t''.+//p' 's/1/On/p' '/Prox.+: [^0]/p' '$2>'${p[43]}'{$2=$2-1;print}' ' BEGIN { i="'${p[26]}'";M1='${p[16]}';M2='${p[18]}';M3='${p[31]}';M4='${p[32]}';} !/^A/{next};/%/ { getline;if($5<M1) a="user "$2"%, system "$4"%";} /disk0/&&$4>M2 { b=$3" ops/s, "$4" blocks/s";} $2==i { if(c) { d=$3+$4+$5+$6;next;};if($4>M3||$6>M4) c=int($4/1024)" in, "int($6/1024)" out";} END { if(a) print "CPU: "a;if(b) print "I/O: "b;if(c) print "Net: "c" (KiB/s)";if(d) print "Net errors: "d" packets/s";} ' ' /r\[0\] /&&$NF!~/^1(0|72\.(1[6-9]|2[0-9]|3[0-1])|92\.168)\./ { print $NF;exit;} ' ' !/^T/ { printf "(static)";exit;} ' '/apsd|BKAg|OpenD/!s/:.+//p' ' (/k:/&& $3!~/(255\.){3}0/)||(/v6:/&&$2!~/A/) ' ' $1=="op" {m=$3};$1~"lN" {N=$2};$1~"lR" {S=$2};$1~"Tx" {T=$2};$1~/^st/ {s=$2};$1~"li"&&$3!~"wpa2" {printf("'"${f[9]}"'",toupper($3))};END { if(S*N*T&&(S-N<'${p[25]}'||T<'${p[55]}')) printf("'"${f[8]}"'",S,N,T);if(s~/^r/&&m!~/^st/) printf("'"${f[10]}"'",m);} ' ' BEGIN { FS=":";p="uniq -c|sed -E '"'s/ +\\([0-9]+\\)\\(.+\\)/\\\2 x\\\1/;s/x1$//'"'";} { n=split($3,a,".");sub(/_2[01].+/,"",$3);print $2" "$3" "a[n]$1|p;b=b$1;} END { close(p);if(b) print("\n\t* Code injection");} ' ' NR!=4{next} {$NF/=10240} '"`S0 27 23`" ' END { if($3~/[0-9]/)print$3;} ' ' BEGIN { L='${p[36]}';} !/^[[:space:]]*(#.*)?$/ { l++;if(l<=L) f=f"\n   "$0;} END { F=FILENAME;if(!F) exit;if(!f) f="\n   [N/A]";"cksum "F|getline C;split(C, A);C=A[1];"stat -f%Sm "F|getline D;"file -b "F|getline T;if(T~/^Apple b/) { f="";l=0;while("'"${p[51]}"' "F|getline g) { l++;if(l<=L) f=f"\n   "g;};};if(T!~/^(AS.+ (En.+ )?text(, with v.+)?$|(Bo|PO).+ sh.+ text ex|XM)/) F=F"\n   '"${p[50]}"'"T;printf("'"${f[6]}"'",F,D,C,f);if(l>L) printf("'"${f[7]}"'",l-L);} ' ' s/^ ?n...://p;s/^ ?p...:/-'$'\t''/p;' 's/0/Off/p' ' END{print NR} ' ' /id: N|te: Y/{i++} END{print i} ' ' /kext:/ { split($0,a,":");s=system("'"${p[51]}"'\\ :'${p[53]}' \""a[1]"\"/*/I*|grep -q Sa");if(!s) a[1]=a[1]" S";if(!a[2]) a[2]="'"${p[28]}"'";printf("'"${f[4]}"'",a[1],a[2]);next;} !/^ *$/ { p="'"${p[52]}"'\\ :'"${p[35]}"' \""$0"\"/*/'${p[57]}'";p|getline b;close(p);if(b~/ /||b=="") b="'"${p[28]}"'";printf("'"${f[4]}"'",$0,b);} ' '/ en/!s/\.//p' ' NR!=13{next};{sub(/[+-M]$/,"",$NF)};'"`S0 39 40`" ' $10~/\(L/&&$9!~"localhost" { sub(/.+:/,"",$9);print $1": "$9|"sort|uniq";} ' '/^ +r/s/.+"(.+)".+/\1/p' 's/(.+\.wdgt)\/(Contents\/)?'${p[57]}'$/\1/p' 's/^.+\/(.+)\.wdgt$/\1/p' ' /l: /{ /DVD/d;s/.+: //;b0'$'\n'' };/s: /{ /V/d;s/^ */- /;H;};$b0'$'\n'' d;:0'$'\n'' x;/APPLE [^:]+$/d;p;' ' /^find: /d;p;' "`S0 44 45`" ' BEGIN{FS="= "} /Path/{print $2} ' ' /^ *$/d;s/^ */   /;' ' s/^.+ |\(.+\)$//g;p ' "`S4 60 35 20`" ' /2/{print "WARN"};/4/{print "CRITICAL"};' ' /EVHF|MACR|^s/d;s/^.+: //p;' ' $3~/^[1-9][0-9]{0,2}(\.[1-9][0-9]{0,2}){2}$/ { i++;n=n"\n"$1"\t"$3;} END { if(i>1) print n;} ' ' s/:[^:]+$//;s/ +([0-9]+)(.+)/\2: \1/p;' ' { gsub(/[()"]/,"",$3);if($2!="="||!$3) $3="N/A";print $3;} ' ' /es: ./{ s/^.+://;b0'$'\n'' };/^ +C.+ted: +[NY]/H;/:$/b0'$'\n'' d;:0'$'\n'' x;/: +N/d;s/\n.+//p;' ' 1d;/:$/b0'$'\n'' $b0'$'\n'' /(D|^ *Loc.+): /{ s/^.+: //;H;};/(By|m): /H;d;:0'$'\n'' x;/[my]: [AM]|^\/Vo/d;s/(^|\n) [ -~]+//g;s/(.+)\n(.+)/\2:\1/;s/\n//g;/[ -~]/p;' 's/$/:(0|-(4[34])?)$/p' );c1=(system_profiler pmset\ -g nvram fdesetup find syslog df vm_stat sar ps crontab iotop top pkgutil "${p[52]}\\" whoami cksum kextstat launchctl smcDiagnose sysctl\ -n defaults\ read stat lsbom 'mdfind -onlyin /' ' for i in ${p[24]};do ${c1[18]} ${c2[27]} $i;done;' pluginkit scutil dtrace profiles sed\ -En awk /S*/*/P*/*/*/C*/*/airport networksetup mdutil lsof test osascript\ -e netstat mdls kextfind );S1() { printf kMDItemContentTypeTree=com.apple.$1;};S2() { printf 'L*/Ca*/com.ap*.Saf*/E*/* -d 1 -name '${p[57]}' -exec '"${c1[14]}"' :'$1' {} \;|uniq';};c2=(com.apple.loginwindow\ LoginHook ' /L*/P*/loginw*' "'tell app \"System Events\" to get properties of login items'|tr , \\\n" "`S2 CFBundleDisplayName`" '~ $TMPDIR.. \( -flags +sappnd,schg,uappnd,uchg -o ! -user $UID -o ! -perm -600 \)' '-F \$Message -k Sender kernel -k Message CReq "a underr|I/O e"'"${p[64]}" '-nl -print' '-F \$Sender -k Level Nle 3 -k Facility CReq "apple\.(bird|i?clou)"'"${p[64]}" '{/,}L*/{Con,Pref}* -type f ! -size 0 -name *.plist -exec plutil -s {} \;' "-f'%N: %l' Desktop L*/Keyc*" therm sysload boot-args status " -F '\$Time \$(RefProc): \$Message' -k Sender Req 'fsev|kern|launchd' -k RefProc Rne 'Aq|WebK' -k Message Rne '08012|Goog|ksadm|probe|Roame|SMC:|smcD|sserti|suhel| VALI|ver-r|xpma' -k Message Req 'abn|bad |Beac|caug|corru|dead[^bl]|FAIL|fail|GPU |hfs: Ru|idle ex|inval|jnl:|last value [1-9]|lv_c|NVDA\(|pagin|pci pa|proc: t|Roamed|rror|SL|TCON|Throttli|tim(ed? ?|ing )o|WARN' " '-du -n DEV -n EDEV 1 10' 'acrx -o comm,ruid,%cpu' '-t1 10 1' '-f -pfc /var/db/r*/com.apple.*.{BS,Bas,Es,J,OSXU,Rem,up}*.bom' '{/,}L*/Lo*/Diag* -type f -regex .\*[cght] ! -name .?\* ! -name \*ag \( -exec grep -lq "^Thread c" {} \; -exec printf \* \; -o -true \) -execdir stat -f:%Sc:%N -t%F {} \;|sort -t: -k2 |tail -n'${p[38]} '/S*/*/Ca*/*xpc* >&- ||echo No' '-L /{S*/,}L*/StartupItems -type f -exec file {} +' "`S1 "{bundle,mach-o-dylib}"`" "`S2 ${p[35]}`" "/e*/{auto,{cron,fs}tab,hosts,{[lp],sy}*.conf,mach_i*/*,pam.d/*,ssh{,d}_config,*.local} {,/usr/local}/etc/periodic/*/* /L*/P*{,/*}/com.a*.{Bo,sec*.ap}*t {/S*/,/,}L*/Lau*/*t .launchd.conf" list getenv /Library/Preferences/com.apple.alf\ globalstate --proxy '-n get default' -I --dns -get{dnsservers,info}\ "${p[N5]}" -P -m\ / '' -n1 '-R -l1 -n1 -o prt -stats command,uid,prt' '--regexp --files com.apple.pkg.*'"${p[63]}" -kl -l -s\ / '-R -l1 -n1 -o mem -stats command,uid,mem' '+c0 -i4TCP:0-1023' com.apple.dashboard\ layer-gadgets '-d /L*/Mana*/$USER&&echo On' '-app Safari WebKitDNSPrefetchingEnabled' "+c0 -l|awk '{print(\$1,\$3)}'${p[64]}|sort -n|tail -1|awk '{print(\$2,\$3,\$1)}'" -m 'L*/{Con*/*/Data/L*/,}Pref* -type f -size 0c -name *.plist.???????|wc -l' kern.memorystatus_vm_pressure_level '3>&1 >&- 2>&3' " -F '\$Time \$Message' -k Sender kernel -k Message CSeq 'n Cause: -' " -i '-app Safari UserStyleSheetEnabled' -name\ kMDItem${p[35]} -T\ hfs '-F "" -k Sender hidd -k Nle 3|wc -l' );N1=${#c2[@]};for j in {0..14};do c2[N1+j]=SP${p[j]}DataType;done;N2=${#c2[@]};for j in 0 1;do c2[N2+j]="-n ' syscall::'${p[33+j]}':return { @out[execname,uid]=sum(arg0) } tick-10sec { trunc(@out,1);exit(0);} '";done;l=({Restricted\ ,Lock,Pro}files POST Battery {Safari,App,{Bad,Loaded}\ kernel}\ extensions Heat System\ load boot\ args FileVault Diagnostic\ reports Log {Free\ space,Swap}' (MiB)' Activity 'CPU per process' Login\ hook 'I/O per process' Mach\ ports User Daemons Agents XPC\ cache Startup\ items {Admin,Root}\ access Bundles {,Inserted\ }dylibs Stylesheet Font\ issues Firewall Proxies DNS TCP/IP Wi-Fi 'Elapsed time (sec)' {Root,User}\ crontab {Global,User}' login items' Spotlight Memory Listeners Widgets Parental\ Controls Prefetching Nets Descriptors Bad\ plists {I/O,iCloud,HID}\ errors Shutdowns 'High file counts' Memory\ pressure Volumes SMC );N3=${#l[@]};for i in {0..8};do l[N3+i]=${p[5+i]};done;N4=${#l[@]};for j in 0 1;do l[N4+j]="Current ${p[29+j]}stream data";done;A0() { Q=5;v[2]=1;id -G|grep -qw 80;v[1]=$?;((v[1]))||{ Q=7;sudo true;v[2]=$?;((v[2]))||Q=8;};v[3]=`date +%s`;clear >&-;date '+Start time: %T %D%n';printf '\n[Process started]\n\n'>&4;printf 'Revision: %s\n\n' ${p[54]};};for i in 0 1;do eval ' A'$((1+i))'() { v=` eval "${c1[$1]} ${c2[$2]}"|'${c1[30+i]}' "${s[$3]}" `;[[ "$v" ]];};A'$((3+i))'() { v=` while read i;do [[ "$i" ]]&&eval "${c1[$1]} ${c2[$2]}" \"$i\"|'${c1[30+i]}' "${s[$3]}";done<<<"${v[$4]}" `;[[ "$v" ]];};A'$((5+i))'() { v=` while read i;do '${c1[30+i]}' "${s[$1]}" "$i";done<<<"${v[$2]}" `;[[ "$v" ]];};A'$((7+i))'() { v=` eval sudo "${c1[$1]} ${c2[$2]}"|'${c1[30+i]}' "${s[$3]}" `;[[ "$v" ]];};';done;A9(){ v=$((`date +%s`-v[3]));};B2(){ v[$1]="$v";};for i in 0 1;do eval ' B'$i'() { v=No;((v['$((i+1))']==0))&&v=;};B'$((3+i))'() { v[$2]=`'${c1[30+i]}' "${s[$3]}"<<<"${v[$1]}"`;} ';done;B5(){ v[$1]="${v[$1]}"$'\n'"${v[$2]}";};B6() { v=` paste -d: <(printf "${v[$1]}") <(printf "${v[$2]}")|awk -F: ' {printf("'"${f[$3]}"'",$1,$2)} ' `;};B7(){ v=`grep -Ev "${v[$1]}"<<<"$v"|sort`;};C0() { [[ "$v" ]]&&sed -E "$s"<<<"$v";};C1() { [[ "$v" ]]&&printf "${f[$1]}" "${l[$2]}" "$v"|sed -E "$s";};C2() { v=`echo $v`;[[ "$v" != 0 ]]&&C1 0 $1;};C3() { v=`sed -E "${s[63]}"<<<"$v"`&&C1 1 $1;};C4() { echo "Part $((++P)) of $Q done at $((`date +%s`-v[3])) sec">&4;};C5() { pbcopy<<<"$o";exit 2>&-;};for i in 1 2 7 8;do for j in 0 2 3;do eval D$i$j'(){ A'$i' $1 $2 $3; C'$j' $4;};';done;done;trap C5 2;o=$({ A0;D20 0 $((N1+1)) 2;D10 0 $N1 1;B0;C2 27;B0&&! B1&&C2 28;D12 15 37 25 22;A1 0 $((N1+2)) 3;C0;D13 0 $((N1+3)) 4 3;D23 0 $((N1+4)) 5 4;D13 0 $((N1+9)) 59 $((N3+4));for i in 0 1 2;do D13 0 $((N1+5+i)) 6 $((N3+i));done;D13 0 $((N1+8)) 71 $((N3+3));D13 1 10 7 9;D13 1 11 8 10;B1&&D73 19 53 67 60;D22 2 12 9 11;D12 3 13 10 12;D23 4 19 44 13;B0&&{ D13 5 5 69 53&&D23 6 58 31 59;D12 5 59 32 55;D13 5 54 30 56;C4;D23 5 14 12 14;C4;};D22 6 36 13 15;D22 20 52 66 58;D22 7 37 14 16;D23 8 15 38 17;D22 9 16 16 18;C4;B1&&{ D82 35 49 61 51;D82 11 17 17 20;for i in 0 1;do D82 28 $((N2+i)) 45 $((N4+i));done;C4;};D22 12 44 54 45;D22 12 39 15 21;D13 40 6 32 7;A1 13 40 18;B2 4;C4;B4 4 5 19;A1 17 41 20;B7 5;C3 8;B4 4 6 21;B4 4 7 22;B5 6 7;B3 6 6 73;B1&&{ A8 18 26 23;B7 6;B4 0 0 11;C3 23;};A2 18 26 23;B7 6;B4 0 0 11;C3 24;D13 4 21 24 26;B4 4 12 26;C4;for i in {0..3};do A1 0 $((N1+10+i)) 72;B7 12;B4 0 0 52;C3 $((N3+5+i));done;A1 24 22 29;B7 12;B2 14;A4 39 57 70 0;B2 15;B6 14 15 4;C3 29;C4;B3 4 13 27;A1 24 23 32;B7 13;C3 30;B4 4 16 65;A1 26 50 64;B7 16;C3 6;D13 25 37 32 31;A2 23 18 28;B2 16;A2 16 25 33;B7 16;B3 0 0 34;B2 21;A6 47 21&&C0;B1&&{ D73 21 0 32 19;D73 10 42 32 40;D82 29 35 46 2;};D23 14 1 62 42;D12 34 43 53 44;D12 22 20 32 25;D22 0 $((N1+14)) 51 33;D13 4 8 41 52;D12 21 28 35 34;D13 27 29 36 35;A2 27 32 39&&{ B2 19;A2 33 33 40;B2 20;B6 19 20 3;};C2 36;D23 38 55 68 50;D23 33 34 42 37;B1&&D83 35 45 55 46;D23 32 31 43 38;D12 36 47 32 48;D13 10 42 32 41;D13 37 2 48 43;A1 4 3 60;B2 30;A1 4 24 60;B2 31;B6 30 31 4;C3 5;D12 21 56 35 32;D12 21 48 49 49;B3 4 22 57;A1 21 46 56;B7 22;B3 0 0 58;C3 47;D13 5 7 69 54;D22 4 4 50 0;D12 4 51 32 1;D23 22 9 37 57;A9;C2 39;C4;} 4>&2 2>/dev/null;);C5
    Copy the selected text to the Clipboard by pressing the key combination command-C.
    8. Launch the built-in Terminal application in any of the following ways:
    ☞ Enter the first few letters of its name into a Spotlight search. Select it in the results (it should be at the top.)
    ☞ In the Finder, select Go ▹ Utilities from the menu bar, or press the key combination shift-command-U. The application is in the folder that opens.
    ☞ Open LaunchPad and start typing the name.
    Click anywhere in the Terminal window and paste by pressing command-V. The text you pasted should vanish immediately. If it doesn't, press the return key.
    9. If you see an error message in the Terminal window such as "Syntax error" or "Event not found," enter
    exec bash
    and press return. Then paste the script again.
    10. If you're logged in as an administrator, you'll be prompted for your login password. Nothing will be displayed when you type it. You will not see the usual dots in place of typed characters. Make sure caps lock is off. Type carefully and then press return. You may get a one-time warning to be careful. If you make three failed attempts to enter the password, the test will run anyway, but it will produce less information. In most cases, the difference is not important. If you don't know the password, or if you prefer not to enter it, just press return three times at the password prompt. Again, the script will still run.
    If you're not logged in as an administrator, you won't be prompted for a password. The test will still run. It just won't do anything that requires administrator privileges.
    11. The test may take a few minutes to run, depending on how many files you have and the speed of the computer. A computer that's abnormally slow may take longer to run the test. While it's running, there will be a series of messages in the Terminal window like this:
    [Process started]
    Part 1 of 8 done at … sec
    Part 8 of 8 done at … sec
    [Process completed]
    The messages won't be spaced equally apart in time, but they give a rough indication of progress. The total number of parts may be different from what's shown here.
    Wait for the final message "Process completed" to appear. If you don't see it within half an hour or so, the test probably won't complete in a reasonable time. In that case, press the key combination control-C or command-period to stop it. Then go to the next step.
    12. When the test is complete, or if you stopped it because it was taking too long, quit Terminal. The results will have been copied to the Clipboard automatically. They are not shown in the Terminal window. Please don't copy anything from there. All you have to do is start a reply to this comment and then paste by pressing command-V again.
    At the top of the results, there will be a line that begins with the words "Start time." If you don't see that, but instead see a mass of gibberish, you didn't wait for the "Process completed" message to appear in the Terminal window. Please wait for it and try again.
    If any private information, such as your name or email address, appears in the results, anonymize it before posting. Usually that won't be necessary.
    13. When you post the results, you might see an error message on the web page: "You have included content in your post that is not permitted," or "You are not authorized to post." That's a bug in the forum software. Please post the test results on Pastebin, then post a link here to the page you created.
    14. This is a public forum, and others may give you advice based on the results of the test. They speak only for themselves, and I don't necessarily agree with them.
    Copyright © 2014, 2015 by Linc Davis. As the sole author of this work, I reserve all rights to it except as provided in the Use Agreement for the Apple Support Communities website ("ASC"). Readers of ASC may copy it for their own personal use. Neither the whole nor any part may be redistributed.

  • Optimizing clips for multiclip playback

    I'm stretching the limits of my hardware and attempting a 9-camera multiclip edit (in the multiclip 9-up view).
    Original footage is [email protected]
    I've downmixed audio to stereo at 48KHz/24bit
    The format of my final edit is TBD but meanwhile to create an EDL I'm happy to work in clip sizes that will allow the 3x3 multiclip playback (assuming it's possible on my hardware)
    I'm sure there are many ways of approaching this but I have a relatively straightforward question:
    What's the best clip format to use for optimal multiclip playback speed (I dont need audio)?
    Forget about output format ... I just need to be able to see the individual clips in the multiclip view at, say a certain minimum resolution (remember my max of 640x480 anyway) and playback in realtime for editing.
    I suspect I may also need some creativity here, eg: some clips internal; some external?

    bogiesan: Well, without going into great details I need multiclip enough that I just spent several days trying to work out how to do it ... and it seems to be working with my humble ("toy") setup.
    Regarding toys: all our machines will be toys next year.
    The setup: (specs and requirements as above) ... I converted all clips to *Photo JPEG* at 320x240 resulting in file sizes about twice the original but a reasonable data rate (about 700K/s <= FW400 can easily deal with this) and moderate decode requirements. The encode was also pretty efficient with Compressor. I made the 9UP multiclip and put it in a _sequence set to NTSC DV (3:2)_ at 29.97fps. Everything plays smoothly in RT and I can do normal RT multiclip editing. Finally!
    I couldn't get any other setup to work: MPEG1; certainly not DV due to data (and decode?) rate; in a rash move I even tried uncompressed 8-bit splitting files across the external FW400 and internal SATA but it couldn't deal (only talking 320x240).
    Any comments before I put this to bed?

  • Optimal Setup for New Time Capsule with Wireless AC

    I'm curious to see what the hypotehtical optimal setup for my Time Capsule.  I understand that wireless speeds depend on a ton of factors and that part of getting the best connection is just trying different options.  I have a new Time Capsule that's connected to the following devices: iPhone 5S; new MacBook Air with wireless AC; old iMac from 2007; old AirPort Express that only supports b/g and a newish Apple TV that supports wireless N, I believe.  I was connecting to the network (which was not designated with the 5ghz) and I recently chose the option to label the 5ghz.  I'm using that now to stream music with the new iPhone and the Apple TV with no problems, but I have no longer have the option of using the old Airport express because it's an old one.  I'm thinking of just getting a new Airport Express and leaving it at that, but wanted to know if anyone has some thoughts on this.  I'm sure there's a more concise and direct way to ask this question, but my knowledge is pretty limited here.  Thanks in advance.

    The Time Capsule is already set up for optimal performance when you open up the box.
    You can assign a separate name to the 5 GHz network and point devices that are capable to that network. This works well if the device is located close to the Time Capsule.
    But, 5 GHz signals are much weaker than 2.4 GHz signals, so once you move a room or two away, or the signal has to pass through several walls, the 2.4 GHz will be stronger.....and probably faster as well.
    But...your device will try to stay locked on the 5 GHz network since you set it up that way.
    This type of setup may or may not work best for you.  For most users, it is simpler and more effective to use the default settings on the Time Capsule to have both bands use the same network name.
    Then, your wireless devices will automatically connect to the signal with the best quality. Best quality may not be the fastest signal since there are lot of factors involved with signal quality. But, if you think about it a bit more, don't you want to have your wireless device connect to the signal with the best quality?
    Some users swear by assigning a separate name to the 5 GHz band. I'm not one of them, but If it works well for them and they are happy, then there is no reason to change.
    An older AirPort on your network is going to drag down the speeds. You need the new AirPort Express, or better yet an AirPort Extreme if you want to be able to extend the new 802.11ac signal.

  • Optimal OS for MacBook 2.3 GHz?

    Which is the optimal OS for a MacBook 2.3 Ghz, 2 GB RAM ?
    I'm running Lion now, but it's taking too much of RAM ans processor ressources. I don't need the MacBook for daily work any more, just for playing music, so I could downgrade to the OS that offers as much as possible for such a machine without slowing it down too much. I ran Leopard and Snow Leopard before, but the loss of speed was so gradual that I can't tell when it became annoying (until Lion).
    Any suggestions?
    Thanks a lot!

    On an intel mac, Snow Leopard. Leopard is best for the last generation of PPC macs, 2004- early-mid 2006 series, late G4 and G5 series.
    Nevertheless, I wonder why you dislike Lion. I installed it on a 2006, first core 2 duo, series and was as fast as SL, now is running on 3 macs around, including indeed a recent mini with Lion preinstalled. In the overwhelming majority of situations, slow behavior of Lion or frequent crashes/freezing etc. is/are due to older, incompatible apps, often utilitites startin up at log-in. I make this note because Apple is not going on to support older systems, including SL. But, of course, if you feel better with SL, downgrade.
    One more note: Mail.app folders, if any, cannot be downgraded into SL or earliers systems, you must use an export feature and reimport or use MailStteward.

  • MSI ti 4200 128 MB and Problems with "Need for Speed: HighStakes"

    Does any one know of a fix for "Need for Speed: HighStakes" with the new 45.32 drivers. When trying to start this game it won't even load, the screen goes dark for a second and then falls back to the desktop. Did the same thing with 43.45, but if I install the drivers that came with the Video card ( I think they were 31.XX) then the game works fine. Haven't come across any other games that won't run except this one, some examples that work fine are UT 2003, C&C: Generals, Warcraft 3, Hot Pursuit 2.
    System:
    XP pro OS (sevice pack 1) DirectX 9
    Athlon 1800
    512 MB RAM
    MSI nforce 2 Main board
    MSI GeForce 4 4200 ti 128 MB 8X AGP
    Thanks for any info.

    well I "bugged" the game makers (EA) and the response is that the game doesn't suport Windows XP. Strange that the older nVidia 31.xx drivers work fine with the game. Also played it on my last machine which had XP and a ATI radeon video card. OH well who ever said Direct X was supposed to be backward compatible.
    Too bad the older drivers don't work so well with the newer games.

Maybe you are looking for