Hardware improvements for fcp ?

I have recently started working with fcp and my computer is happy for about an hour before it grinds almost to a halt and I need to restart. I have a Mac Pro Quad 2.8ghz with 6gb ram and an ati radeon hd 2600 xt. Is there anything I add to this system to make it work for longer and more quickly ?
Thank you !

oncebrewed wrote:
Would you mind explaining RAID as I don't know what this is. Thanks.
A RAID is when you take several hard drives and "stripe" them so that machine connected to them sees them as one drive. There are several iterations possible. Like RAID 0, RAID 1, RAID 5, others.
RAID 0 = the fastest setup, least secure. Zero redundancy. If one drive fails in the RAID you lose it all.
RAID 5 = slower, redundant safety. If one drive fails, you pull it out, slide in the replacement and the computer will re-build the data for you. A RAID 5 scenario requires hardware.
You can set up a "Soft RAID" RAID 0 right now, if you wanted. Soft RAID = software only. Not controlled by hardware. Or you could get a card to do a full hardware RAID setup.
(MORE)

Similar Messages

  • Optimal Hardware/Software configuration for FCP

    I switched from PCs to Macs about 1/2 a year ago to due overwhelming frustration at numerous Windows crashes. I have used Adobe Premiere Pro, Audition and Encore on a PC desktop to do video projects. I now have a 17" 1.67 Powerbook with 2gb of ram and the FCP suite. On a Windows PC, I tweaked everything to get the most out of the computer, partitioned a drive for the video projects, did regular defragging etc etc.
    Now that I am on a Mac, I am not sure what needs to be done and what doesn't. I have an external 320 gb Firewire 800 HD that has my iTunes library, some backup files and will be the drive I use to capture video to and edit from. The drive is not partitioned. I have read that partitioning is not really necessary in Mac OS as the file management is much better. I would like to partition it anyway to make a small boot drive in case the hard drive on the Powerbook fails. Is there any benefit to partitioning a drive for video/sound files for FCP projects?
    Any other suggestions would be greatly appreciated. I haven't found much information on system optimization for FCP.
    Thanks,
    Philip
    17" 1.67 Powerbook   Mac OS X (10.4.3)   2gb of ram

    Creating a back up system drive is a really good idea and it makes sense to partition your external drive to organize things. The other option is to just purchase another drive for that purpose.
    If you want to back up your system, Carbon Copy Cloner is a great app.
    There is a very nice program called Volume Works which will do partitioning and resizing partitioning on the fly. Very useful if you like to use partions as a way to organize system drives and media on the same disk.
    Since the Mac OS is essentially Unix at the core, it was designed from the ground up as a robust 24/7 OS. There are maintenence things that need to be regularly run ( called CRONs) and there are other disk file and directory maintenence activities listed below. Other than that, if you REALLY enjoy getting down with text based interfaces and mucking about you can find all sorts of folks who are tweeking the system - for example - moving the location of the system swap file on the system disk. Not for the faint hearted...
    General things to do ...
    Repair Disk Permissions
    Repairing disk permissions is simply good system maintenance and should be done as part of ANY upgrade and/or application addition. In addition it should be run regularly just as a preventative tool. It makes sure that the permissions on application files are set to the read/write/execute permissions they should have. Sometimes these are changed through the addition of new/updated programs which can cause varied and difficult to track down problems.
    Verify Directory Structure
    Disk Warrior is a file directory repair/optimization program. It analyzes and repairs your disk directory structure as well as optimizing it. It will pick up and repair problems that the OSX included Disk Repair Utility can not address. It is an essential tool.
    Run the Cron Utilities
    If you leave your machine on 24/7 these ought to run on a regular basis. If you turn the machine off at night (or, are like me - during the day - vampires anyone?) you want to force these crititcal utilities to run. Download and run a program such as OnyX which gives you a number of options regarding CRON, flushing caches, prebinding (aka optimizing) dumping log and temp files and so on and so forth.
    Down load and have ready to run the application FCP RESCUE. You can find it on Versiontracker. It is another one of the those really useful tools. It deletes all your preference files when they become corrupt. Once the system is working again and set the way you like it, it will back up the same files so the next time things go south, you simply overwrite the corrupt with the good -sounds like batman doesn't it...
    Take care of your machine and it will take care of you!
    x

  • Please help me configure a new 8core for FCP

    PLEASE HELP A PC GUY MOVE OVER...
    I need to configure a new 8-core for FCP mainly. I need to keep the expense reasonable so dont want to spend extra $$$ if i dont have to.
    I edit files from many different camera's these days. Mostly weddings & demos.
    I want to go with an 8 core either Two 2.26GHz, OR 2.66GHz? Is the 2.2 fast enough with FCP?
    How much ram do i need?
    Do I need to stripe 2 sata drives together for the video?
    Which video card?
    Can you recommend any other software/hardware that will help me?
    Here is a link to apples spec page:
    http://www.apple.com/macpro/specs.html
    THANKS

    sarecco wrote:
    PLEASE HELP A PC GUY MOVE OVER...
    Welcome to the family. if you are not familiar with the Macintosh operating system, get yourself a book.
    sarecco wrote:
    I want to go with an 8 core either Two 2.26GHz, OR 2.66GHz? Is the 2.2 fast enough with FCP?
    Either will work fine.
    sarecco wrote:
    How much ram do i need?
    As much as you want but 8G will be adequate. More might not help significantly.
    sarecco wrote:
    Do I need to stripe 2 sata drives together for the video?
    Depends on the video you're trying to use or if you want to do 9 camera multiclips. Maybe.
    sarecco wrote:
    Which video card?
    The stock 4870 is the gold standard for Motion; the current rev of FCP does not care much about the GPU but we are hoping future revs will use the card directly.
    sarecco wrote:
    Can you recommend any other software/hardware that will help me?
    Umm, withotu knowing what you need to do, of course not.
    sarecco wrote:
    THANKS
    No sweat, ignore those other guys. We see this post about once a week around here so you can easily research it on the forum. Strongly urge you to locate your local Macintosh user group.
    bogiesan

  • My computer - how can I improve for editing

    I am a hobby-editor . . . :-)
    Still I am curious to get some hints on which parts of my computer could be improved for video editing.
    So hopefully someone here could have a look on my hardware!
    Here are the specs: (in german!)
    Mainboard:
    Asus P6X58D-E
    ATX, Sockel 1366, Intel X58 / ICH10R Chipsatz, DDR3-1600
    Hersteller      Asus
    Modellbezeichnung      P6X58D-E
    CPU Sockel      1366
    unterstützte Prozessoren      Intel Core i7, Core i7 EE, Xeon (Nehalem)
    Mainboard Chipsatz      Intel X58 / ICH10R
    BIOS Hersteller      AMI
    Formfaktor      ATX
    QuickPath Interconnect QPI (MT/s)      6400
    ATX 12V Anschluss (8polig)      1
    ATX 2.0 Anschluss (24polig)      1
    Arbeitsspeichertyp      DDR3
    Arbeitsspeicher maximal (MB)      24576
    Speichertakt (MHz)      1600/1333/1066 (2000* *OC)
    Speichersteckplätze      6
    Triple Channel Unterstützung      vorhanden
    PCI (32-Bit) Steckplätze      2
    PCIe x1 Steckplätze      1
    PCIe x16 2.0 Steckplätze      3
    SLI / Crossfire Unterstützung      2/3 Way SLI/Quad CrossFireX
    SATA Controller      Intel ICH10R + Marvell® 9128
    SATA Anschlüsse      6x SATAII + 2x SATAIII
    SATA Protokolle      SATAI-III
    Unterstützte RAID Level      0,1,5,10
    USB Protokolle      USB 3.0/2.0/1.1
    USB Anschlüsse extern      4x USB 2.0 intern + 4x USB 2.0 extern + 2x USB 3.0 extern
    Soundchip      Realtek® ALC889
    Audiokanäle      8
    SPDIF Ausgang      1x optisch, 1x koaxial
    LAN Chipsatz      Marvell 88E8056®
    LAN-Ports      1
    LAN-Transferrate (MBit)      10/100/1000
    Anschlüsse für Lüfter      5
    PS/2 Schnittstelle (Tastatur)      1
    PS/2 Schnittstelle (Maus)      1
    IEEE1394a Firewire Schnittstelle      1
    CPU:
    Intel Core i7 950 (3,06GHz)
    Sockel 1366, Box - inkl. Kühler
    Hersteller/Modellbezeichnung
    Hersteller      Intel
    Prozessor Modell      Core i7
    Sockeltyp
    Prozessor Typ - Taktfrequenz      950 (3,06GHz)
    CPU Modellnummer      BX80601950
    Sockel      1366
    Packungstyp      Box - inkl. Kühler
    Prozessorkern      Bloomfield
    Anzahl Kerne      4
    QuickPath Interconnect QPI (MT/s)      4800
    Cache
    Energieverbrauch
    L1 Cache (kB)      4 x 64
    L2 Cache (kB)      1024
    L3 Cache (kB)      8192
    Energieverbrauch (Watt)      130
    Herstellungsprozess (nm)      45
    Kühler      Original Intel Box Kühler
    RAM:
    6144MB DDR3 Kingston KVR1333D3N9K3/6G
    DDR3 - 1333 (PC3 - 10600)
    Hersteller/Modellbezeichnung
    Hersteller      Kingston
    Herstellernummer      KVR1333D3N9K3/6G
    Technische Daten
    Kapazität (MB)      6144
    Kit bestehend aus      3 x 2048MB
    Speichertyp      DDR3
    Speicherstandard      DDR3 - 1333 (PC3 - 10600)
    Anschluss      DIMM 240-Pin
    Timings
    CAS Latency (CL)      9
    RAS-to-CAS-Delay (tRCD)      9
    RAS-Precharge-Time (tRP)      9
    Festplatte:
    1000GB Western Digital Caviar Black WD1002FAEX
    3,5", Serial-ATA/600 (6Gb/s), 64 MB Cache
    Hersteller      Western Digital
    Modellbezeichnung      Caviar Black WD1002FAEX
    Festplattenkapazität (GB)      1000
    Formfaktor (Zoll)      3,5
    Schnittstelle      Serial-ATA/600 (6Gb/s)
    Umdrehungen / Min.      7.200
    Geräuschentwicklung Betrieb (dB)      33
    Geräuschentwicklung StandBy (dB)      28
    Max. Transferrate (lesen) MB/s      keine Herstellerangaben verfügbar
    Max. Transferrate (schreiben) MB/s      keine Herstellerangaben verfügbar
    Zugriffszeit (ms)      4,2
    Cache (MB)      64
    Gewicht (g)      690
    Abmessungen (BxHxT) (mm)      101,6 x 25,4 x 147
    ARLT Garantie      Kein OEM. 5 Jahre Herstellergarantie. 3 Jahre ARLT Garantie davon 6 Monate Soforttausch bei Defekt
    wegen mehr Platz, größerem Cache, halber Zugriffszeit und SATA3-Schnittstelle, Transfer Rate (Buffer To Disk) 126 MB/s (Max) - sehr guter Wert !
    Brenner:
    LG GH22NS 22/22/48/32 DVD-Brenner, S-ATA
    Super Multi DVD-Brenner ? mit S-ATA Schnittstelle
    INTERNER 22x/22x Super Multi DVD-Brenner mit SecurDisk Unterstützung. Der perfekte Alleskönner für Ihren PC. Brennt nicht nur die gängigen Formate (DVD+R/+RW,-R/-RW) sondern auch DVD-RAM und ist außerdem durch die Double/Dual Layer Funktionalität für die Zukunft gerüstetHersteller      LG
    Modellbezeichnung      GH22NS40
    Farbe      schwarz
    Bauart      intern
    Schnittstelle      Serial-ATA
    Formfaktor (Zoll)      5,25
    Medienaufnahme      Schublade
    Puffer (Kb)      2048
    Zugriffszeit CD-ROM (ms)      120
    Zugriffszeit DVD-ROM (ms)      140
    Zugriffszeit DVD-RAM (ms)      175
    Lesen CD-ROM      48
    Lesen DVD-ROM      16
    Lesen DVD-RAM      5
    Schreiben CD-R      48
    Schreiben DVD-R      22
    Schreiben DVD+R      22
    Schreiben CD-RW      32
    Schreiben DVD-RW      6
    Schreiben DVD+RW      8
    Schreiben DVD-R DL      10
    Schreiben DVD+R DL      10
    Schreiben DVD-RAM      12
    Betriebs-LED      vorhanden
    Grafikkarte:
    Gainward Geforce 9500GT
    1024MB, PCIe 2.0, DVI, VGA, HDMI
    Hersteller/Modellbezeichnung
    Hersteller      Gainward
    Anschlussart      PCI-Express 2.0
    Stromversorgung
    Maximaler Verbrauch bei Volllast (Watt)      75
    GPU
    GPU Hersteller      NVIDIA
    GPU Bezeichnung      Geforce 9500GT
    GPU Takt (MHz)      550
    Kühlung      passiv
    DirectX Version      10
    Shader Model Version      4.0
    OpenGL Version      2.0
    HDCP Unterstützung      Ja
    NVIDIA CUDA-fähig      Ja
    Grafikspeicher
    Speicherkapazität (MB)      1024
    Speichertyp      DDR2
    Speichertakt (MHz)      800
    Speicheranbindung (Bit)      128
    RAMDAC (MHz)      400
    Dual-Link Unterstützung      ja
    unterstützte Auflösungen
    Max Auflösung (dpi)      2560x1600x32Bit 60 Hz (Dual Link)
    SLI / Crossfire Unterstützung      SLI
    Anschlüsse
    DVI Schnittstelle      1
    VGA D-Sub Schnittstelle      1
    HDMI Schnittstelle      1
    Unterstützte Betriebssysteme      Windows XP, Windows Vista
    Zubehör      Treiber CD
    Packungstyp      Retail
    Netzteil:
    550Watt, ARLT Netzteil, 12cm Lüfter, 20+4pin, schwarz
    Anschluß Mainboard
    ATX (20pin. + 4pin. Buchse)
    Anschlüsse Endgeräte
    8x 4 Pin Stromanschlüsse (HDD), 2x 4 Pin Stromanschlüsse (FDD), 2x SATA Stromanschlüsse, 1x 6 Pin Stromanschluss (VGA), 1x 4 Pin Stromanschluss (CPU)
    Eingänge
    230V Netz
    Leistung
    550Watt
    Lüfter
    1x 12x12cm silent
    Hersteller/Modellbezeichnung
    Leistung
    Hersteller      Arlt
    Modellbezeichnung      LowNoise
    Watt      550
    Anschlüsse
    ATX 12V Anschluss (4polig)      1
    ATX Anschluss (20polig)      1
    ATX 2.0 Anschluss (24polig)      1
    S-ATA Stromanschlüsse      2
    3,5" Anschlüsse      2
    5,25" Anschlüsse      8
    Eingangsspannung (V)      230
    Sonstiges
    Bauform      ATX
    Lüfter (mm)      120
    CPU Kühler:
    Scythe Mugen 2 Rev. B, CPU Kühler für Sockel 1366/1156/775/478/754/939/AM2/AM2+/AM3/940
    Hersteller      Scythe
    Modellbezeichnung      Mugen 2 Rev. B
    Material Kühlkörper      Kupfer / Aluminium
    kompatible CPU Sockel      1366/1156/775/478/754/939/AM2/AM2+/AM3/940
    Freigegeben bis (MHz)      alle Taktraten
    Lüfterdrehzahl (U/Min)      1400
    Geräuschentwicklung Betrieb (dB)      26,5
    Abmessungen (BxHxT) (mm)      130 x 158 x 100
    Gewicht (g)      870
    Besonderheiten      bis zu 4 Lüfter verbaubar
    mitgeliefertes Zubehör      Backplates
    Schrauben
    Installationsanleitung
    Luftdurchfluss (m³/h)      126
    Kühlung      aktiv
    Cardreader:
    Apacer AE700, Kartenlesegerät 30-in-1
    intern, USB, Schwarz
    Hersteller      Apacer
    Modellbezeichnung      Embeded Card Reader AE700
    Kartenleser Typ      30-in-1
    Farbe (Gehäuse)      Schwarz
    Anschluss      USB
    Breite (mm)      101
    Höhe (mm)      25
    Tiefe (mm)      100
    lesbare Formate
    XD PictureCard      ja
    mini-/micro SD      ja
    SD Memorycard      ja
    MultimediaCard      ja
    Microdrive      ja
    MemoryStick      ja
    CompactFlash      ja
    OS:
    Windows 7 Professional 64-Bit System-Builder-Version
    Windows 7 Professional 64-Bit System-Builder-Version, EnglischHersteller      Microsoft
    Art der Software      Betriebssystem
    Datenträger      DVD
    Lizenz (Anzahl PC's)      1
    Softwareversion      OEM
    Produktaktivierung erforderlich      ja
    2 x eSATA als PCIe:
    Delock Controller Karte 2x eSATA, 2xSATA, 1x IDE
    2x intern SATA oder 2x eSATA Spezifikation
    1x intern PATA IDE Spezifikation
    Datentransferraten:
    SATA II bis zu 3 Gbps
    PATA bis zu 133 Mbps
    PCI Express x1 Standard
    Unterstützt PCI Express 1.0a Spezifikation
    Unterstützt bis zu 2 HDD am SATA, sowie 2 HDD am IDE Controller
    Unterstützt Native Command Queue (NCQ)
    Raid 0, 1
    Festplatte:
    2000GB Western Digital RE4-GP (WD2002FYPS)
    3,5", Serial-ATA/300 (3Gb/s), 64 MB Cache
    Hersteller      Western Digital
    Modellbezeichnung      RE4-GP (WD2002FYPS)
    Festplattenkapazität (GB)      2000
    Bauart      intern
    Formfaktor (Zoll)      3,5
    Schnittstelle      Serial-ATA/300 (3Gb/s)
    Umdrehungen / Min.      5.400 - 7.200 (dynamisch je nach Auslastung)
    Geräuschentwicklung Betrieb (dB)      29
    Geräuschentwicklung StandBy (dB)      25
    Max. Transferrate (lesen) MB/s      110
    Zugriffszeit (ms)      8,9
    Cache (MB)      64
    MTBF (h)      1.200.000
    Gewicht (g)      730
    Abmessungen (BxHxT) (mm)      101,6 x 26,1 x 147
    Besonderheiten      Energiesparende Green Power Festplatte
    Please have a look at my system and give me ideas how I could eventuially improve it.
    regards

    I agree completely with Harm. A 550W PSU of average (or middling) quality like the one that you have (which, by the way, is based on a CWT PSH or PSH-II platform) is not quite enough to power a power-hungry CPU like the i7-950 of yours, especially if a better-performing GPU such as the the GTX 560 Ti that Harm suggested is added along with two or more additional hard drives. (Your system currently has exactly two hard drives, which is the absolute minimum that you should have in an editing system unless you want performance to be slower than an old Pentium 4. However, one of those hard drives spins at only 5400 RPM - far from ideal for an editing system. You really want all of the hard drives inside that system to spin at 7200 RPM.)
    Speaking of the GTX 560 Ti, you don't need the one with 448 cores since a non-overclocked (read: stock speed) i7-950 can't take full advantage of that higher-end GPU (and please note that the GTX 560 Ti 448 is actually a GTX 570 with one of its shader units disabled whereas the standard GTX 560 Ti is a different chip altogether). The standard GTX 560 Ti, with its 384 CUDA cores and a 256-bit DDR5 memory bus width, would suffice. However, if you do wish to overclock the i7-950 (to at least 3.8GHz), then the 448-core edition of the GTX 560 Ti would make more sense. (The 9500 GT that you currently have is not only old, it's slow and weak as well: It has only 32 CUDA cores, and it uses really, really crummy DDR2 RAM with only a 128-bit memory bus width. Such a card would have made the GPU-accelerated mode significantly slower than software-only mode during certain operations within CS5.x.)
    By the way, I was wrong six months ago about the Dell systems sold during Fall 2011 that came with a 1.25GB version of the GTX 560 Ti: I had assumed that that card had 448 cores. Well, I did more research, and discovered that there was an OEM version of the GTX 560 Ti which did use a 320-bit DDR5 memory bus - but it had only 352 CUDA cores. It uses the same GPU as the GTX 570 and GTX 580, but with only 11 of its 16 shader units enabled, making it a GTX 570 with four of that GPU's shader units disabled. The Dell version of the GTX 560 Ti is, indeed, only a 352-core unit that was based off of a GTX 570. That made the Dell GTX 560 Ti expensive for what it is - at around $300, it cost as much money as the 448-core version of the GTX 560 Ti sold for around that time.

  • Magic stable OS X + QT combo for FCP

    I'm self-moderating and moving this from a different thread:
    I just ordered my Mac Pro and will be sticking with FCS1 (FCP 5.1.4) for now. I will be doing a fresh and squeeky clean install and want to make sure I have a rock solid system from the start.
    Shane Ross wrote:
    Magic Combo for FCP 5.1.4:
    OS 10.4.11 or 10.4.10
    QT 7.1.6. 7.3 also works fine...but 7.1.6 is solid.
    What about using with OS X 10.5? I'm looking forward to the OS upgrade which comes along with the hardware.

    Zebulun wrote:
    Do yourself a favor and move to FC Studio 2.
    Is that an offer to cover the cost?
    I very much want to move to FCS2, I don't need to be talked into it at all -- but it just is not in my budget at the moment. I've already sunk into as much debt as I can handle with the machine upgrade.
    Zebulun wrote:
    Shane is right with those versions. Do a bit of searching and you'll find folks have problems with QT 7.4.x and FCP 5.1.4
    I actually haven't had any issues at all running FCP 5.1.4 with QT 7.4.1 on OS X 10.4.11. So, I guess I'm one of the lucky few.

  • Low cost Mackie control surface for FCP 6?

    Could someone recommend an inexpensive control surface for FCP 6? Perhaps a bit more expensive than the Berhinger but cheaper than the Tascam.

    I've had nothing but grief since installing the FW-1082 and sure could use some help when you return. Here is my current situation (copied from my post on the TASCAM forum which yielded zero responses):
    I know the instructions say that the FW-1082 should be plugged directly into the computer interface and that nothing should be plugged into it. Unfortunately my Intel iMac only has one FW400 and one FW800 port. There are other FW400 peripherals such as HDD's and camcorder video capture. With only one FW400 port, it means either I plug the FW-1082 directly into the computer and then connect the FW400 hub to the second FW-1082 port, or plug the hub directly into the computer and the FW-1082 into it. Which ever approach I use, it results in very unstable operation. Sometimes the 'Firewire' LED never lights. Other times the FW-1082 keeps reseting itself every few seconds. Unfortunately I no longer have the option of returning it, so I must find some way to use it with my existing hardware.
    I just installed V1.06 of the Mac drivers and 'Fix for Mac OSX 10.4.10 FireWire' from the TASCAM website, restarted the computer, and now the Firewire LED on the FW-1082 never lights. The 'fix' mentioned above rolls back the extension 'AppleFWAudio' to V2.0.1. to resolve a problem with the OSX 10.4.10 update. Unfortunately, I don't know how to restore it to its previous state. Help!
    (I apologize for posting this in the FCP forum, but this is the only place I've been able to find fellow FW-1082 users.)

  • Not sure which Mac to get for FCP/Avid... Input much appreciated

    Hello,
    My question is...
    I work in television production and I am making the move to get into editing and I plan on purchasing a Mac in the next few weeks, and I am looking for a bit of advice.
    Basically I would like to run FCP on the Mac, and if possible I would like to be able to run a version of Avid Express. The projects that I will work on at home will probably be run through FCP, but if possible I would like to be able to install some version of Avid on the same machine to help me learn.
    My main question is... I actually have a television that I purchased about 2 1/2 years ago that has an easy option to use it as a computer monitor, and first off I would like to see if you can tell if this will work for a Mac Pro... Secondly, would it make more sense to shell out $2500 for the Mac Pro and use my existing monitor, or should I go with an Imac and not use my monitor. Basically I would like to know if there is a major difference between a low level Mac Pro and a higher end Imac. I am just a bit uncertain what would be the best way to go. My limit would be $2500 but I would really like to keep it around $1700.
    I am not sure if my tv/monitor can handle graphically what would be done so I have included a link for the model that I have.
    Any input would be appreciated.
    Westinghouse LTV-27W2 27" Widescreen Progressive-Scan LCD TV

    You might - just - get a Mac Pro for $1700, if you bargain-hunt, but bear in mind that you'll likely need to upgrade the RAM, and certainly get hold of a decent amount of HD space for your media and renders for both programs. Check lowendmac.com regularly - they have a good range of vendors with used and refurb models.
    Avid no longer sells Xpress Pro - it's all Media Composer now. Note that Avid does have very specific hardware requirements for supported systems. Not even every Mac Pro is supported (which doesn't necessarily mean it won't run, but you may have problems with it). Pay close attention to which graphics card you're getting, and check that table. Also, Media Composer requires specific versions of OS X and Quicktime, so you'll either have to settle on one system (and avoid Software Updates) or have different systems (eg, two partitions) for the two programs.
    Your television has a DVI input, which will work fine with either a Mac Pro or an iMac. Note that Mac Pros still have one DVI port; for an iMac, you'll need the separately-sold Mini DisplayPort to DVI adaptor. Either way, it will be fine for video editing.
    Matt
    Message was edited by: Matt Clifton

  • Hardware Requirements for OC4J and Oracle DB

    Hi,
    I'm looking for some information about hardware requirements for a server that will run a Oracle DB and OC4J. It will be used for training purpose (about 10 people) and for running small apps using ADF.
    Does anybody knows how much hardware I need?
    Is there any documents from Oracle for hardware requirements?
    Any help appreciated. Thanks

    Greetings,
    We routinely develop and test on a Dell Vostro laptop with OS Windows XP and 4GB RAM. The key is to either run the Oracle db in a VM (10.2.0.1) with at least 0.5 GB RAM for the VM or use the XE db. I personally prefer the XE db as it is lightweight and easily configured or uninstalled. As far as oc4j is concerned, a lot can be done to improve the efficiency by modifying the oc4j.cmd file in driveletter:/oc4j/bin:
    set JVMARGS=-Xmx512m -XX:-UseGCOverheadLimit -server -XX:MaxPermSize=256m -Dclass.load.trace=class-not-found -Dclass.load.log.level=finestThe JVM args settings are fully explained at:
    http://java.sun.com/javase/technologies/hotspot/vmoptions.jsp-Michael
    Edited by: Michael F. Hardy on Jan 28, 2009 7:20 AM

  • Which Mac to get for FCP/AVid work.... Input appreciated

    Hello,
    My question is...
    I work in television production and I am making the move to get into editing and I plan on purchasing a Mac in the next few weeks, and I am looking for a bit of advice.
    Basically I would like to run FCP on the Mac, and if possible I would like to be able to run a version of Avid Express. The projects that I will work on at home will probably be run through FCP, but if possible I would like to be able to install some version of Avid on the same machine to help me learn.
    My main question is... I actually have a television that I purchased about 2 1/2 years ago that has an easy option to use it as a computer monitor, and first off I would like to see if you can tell if this will work for a Mac Pro... Secondly, would it make more sense to shell out $2500 for the Mac Pro and use my existing monitor, or should I go with an Imac and not use my monitor. Basically I would like to know if there is a major difference between a low level Mac Pro and a higher end Imac. I am just a bit uncertain what would be the best way to go. My limit would be $2500 but I would really like to keep it around $1700.
    I am not sure if my tv/monitor can handle graphically what would be done so I have included a link for the model that I have.
    Any input would be appreciated.
    Westinghouse LTV-27W2 27" Widescreen Progressive-Scan LCD TV

    You might - just - get a Mac Pro for $1700, if you bargain-hunt, but bear in mind that you'll likely need to upgrade the RAM, and certainly get hold of a decent amount of HD space for your media and renders for both programs. Check lowendmac.com regularly - they have a good range of vendors with used and refurb models.
    Avid no longer sells Xpress Pro - it's all Media Composer now. Note that Avid does have very specific hardware requirements for supported systems. Not even every Mac Pro is supported (which doesn't necessarily mean it won't run, but you may have problems with it). Pay close attention to which graphics card you're getting, and check that table. Also, Media Composer requires specific versions of OS X and Quicktime, so you'll either have to settle on one system (and avoid Software Updates) or have different systems (eg, two partitions) for the two programs.
    Your television has a DVI input, which will work fine with either a Mac Pro or an iMac. Note that Mac Pros still have one DVI port; for an iMac, you'll need the separately-sold Mini DisplayPort to DVI adaptor. Either way, it will be fine for video editing.
    Matt
    Message was edited by: Matt Clifton

  • Raid card and scratch disk setup for FCP

    Hi Guys
    Can anybody tell me what is the correct way to set up a raid card and scratch disk for FCP if you have 3 x 2TB internal hard drives, with the OS on HD1 and drives 2 and 3 dedicated for FCP
    Also with this i also have all my documents i.e work stuff, invoices, pictures, music ect from my old windows PC and used to have them stored on HD2 with the Windows 7 OS on HD1 - i have been told that it is fine if i put this on the same drives as FCP is this correct...?
    i only ask this as i have been told how to do it in different ways by 3 people......

    Thanks John, although i'm rather embarrassed to admit that I am a complete newbie when it comes to technical/computer hardware terms (i.e. I have no idea about different types of disks, other than a HDD and a SSD, or even what the difference is between your media cache and a scratch disk).
    This means that after reading all the links you so helpfully provided hasn't done much other than making me feel even more stupid!
    The best that I can conclude from what I think that i've understood is that I will use:
    Intel 530 Series 120GB SSD for O/S, Programs (and Pagefile?? No idea what this is, sorry)
    Samsung 840BW 500GB - Scratch Disk (is this the media cache?) and preview
    Seagate Barracuda 3TB HDD - media, projects, and exports
    Please tell me if i've got something around the wrong way....
    Thanks again.

  • Have a 3.06GHz intel core 2 duo for FCP?

    I all... I have a 3.06GHz intel core 2 duo IMac that I'm using for FCP.
    At 3+ years old, I'm wondering if it's time to invest in a new Imac?
    GHz speeds haven't gone up by a lot but I have to believe that speeds have?
    Are render times in FCP or Compressor substantially improved to justify this purchase?
    Thanks so much for your help!
    - BK

    If you want flexibility then consider moving up to a mac pro, that'll give you a solid base for a performance boost. Unless theres anything wrong with your current machine, you might want to wait a month or so and see what kind of horsepower the new version FCPX plays best with.
    cheers
    Andy

  • DVD Footage for FCP Edit - how to tell if NTSC or PAL?!

    Hi all, apologies if this seems like a stupid request but I have a job at the moment calling for me to extract footage from a DVD, edit in FCP, add a few bits from Motion etc., but I can't work out if the DVD is NTSC or PAL!
    I intend to extract the video (no issues with copyright) via DVDxDVPro but am unsure if the DVD has been encoded in NTSC or PAL. The footage it contains is from both the States (NTSC) and South Africa (PAL) so how do I tell? I don't want to go through a standards conversion if I can help it.
    I am keen to try to retain as much quality as possible (client can't provide tape) so also any thougts on the best output from DVDxDVPRo for FCP editing?
    Thanks all,
    Best wishes
    Michael

    Hi Thomas, that's it!
    Thanks for this - it clearly shows the TV standard and the resolution plus 4:3 etc., so everything I needed for confirmation.
    Glad I cheked because it was in Pal - thought the conversion in DVDxDVPro looked a bit ropey.
    This realy baffled me - seemed so simple but couldn't find a way to tell the standard. Learn something everyday...
    I am using DVCPro for export from DVDxDVPro - anyone thoughts on a better option?
    Thanks again for the answer - and so quick on a Sunday too!
    Kind regards
    Michael

  • How do I troubleshoot a blue screen on a Pavilion dv4-1123us with "hardware malfunction call hardware vendor for support" message?

    I keep getting this screen and before I have to call and pay and wanted to see if there was something that I could do.
    Pavilion dv4-1123us  get blue screen with "hardware malfunction    call hardware vendor for support"
    This question was solved.
    View Solution.

    I would say its just a conicidence and recommend you to do a system restore. As its an intermittent problem, you never know if you face same issue once again.
    //Click on Kudos and Accept as Solution if my reply was helpful and answered your question//
    I am an HP employee!!

  • DO i need some extra hardware interface for receving both Audio and video

    hi i m doing e-learning project. i have to capture video from webcam and voice from headphone and send to client.
    but my code is working fine for either one at a time.
    DO i need some extra hardware interface for receving both Audio and video. im using code AVTransmit and AVReceive found from this site only
    After running TX
    i give Dsound:// & vfw://0 in Media Locater only sound is received and no vedio
    and when i give vfw://0 in Media Locater only live video is transmited.
    im using JMF1.1.2e.
    if any one know the method to run or cause of it plz reply me soon. i will be very thankfull
    transmiter/server side code .first run TX on server
    import java.io.*;
    import java.awt.*;
    import java.awt.event.*;
    import java.net.*;
    import java.util.*;
    import javax.media.rtp.*;
    import javax.swing.*;
    import javax.swing.event.*;
    import javax.swing.border.*;
    public class Tx extends JFrame implements ActionListener, KeyListener,
    MouseListener, WindowListener {
    Vector targets;
    JList list;
    JButton startXmit;
    JButton rtcp;
    JButton update;
    JButton expiration;
    JButton statistics;
    JButton addTarget;
    JButton removeTarget;
    JTextField tf_remote_address;
    JTextField tf_remote_data_port;
    JTextField tf_media_file;
    JTextField tf_data_port;
    TargetListModel listModel;
    AVTransmitter avTransmitter;
    RTCPViewer rtcpViewer;
    JCheckBox cb_loop;
    Config config;
    public Tx() {
    setTitle( "JMF/RTP Transmitter");
         config= new Config();
         GridBagLayout gridBagLayout= new GridBagLayout();
         GridBagConstraints gbc;
         JPanel p= new JPanel();
         p.setLayout( gridBagLayout);
         JPanel localPanel= createLocalPanel();
         gbc= new GridBagConstraints();
         gbc.gridx= 0;
         gbc.gridy= 0;
         gbc.gridwidth= 2;
         gbc.anchor= GridBagConstraints.CENTER;
         gbc.fill= GridBagConstraints.BOTH;
         gbc.insets= new Insets( 10, 5, 0, 0);
         ((GridBagLayout)p.getLayout()).setConstraints( localPanel, gbc);
         p.add( localPanel);
         JPanel targetPanel= createTargetPanel();
         gbc= new GridBagConstraints();
         gbc.gridx= 1;
         gbc.gridy= 1;
         gbc.weightx= 1.0;
         gbc.weighty= 1.0;
         gbc.anchor= GridBagConstraints.CENTER;
         gbc.fill= GridBagConstraints.BOTH;
         gbc.insets= new Insets( 10, 5, 0, 0);
         ((GridBagLayout)p.getLayout()).setConstraints( targetPanel, gbc);
    p.add( targetPanel);
         JPanel mediaPanel= createMediaPanel();
         gbc= new GridBagConstraints();
         gbc.gridx= 1;
         gbc.gridy= 2;
         gbc.weightx= 1.0;
         gbc.weighty= 1.0;
         gbc.anchor= GridBagConstraints.CENTER;
         gbc.fill= GridBagConstraints.BOTH;
         gbc.insets= new Insets( 10, 5, 0, 0);
         ((GridBagLayout)p.getLayout()).setConstraints( mediaPanel, gbc);
    p.add( mediaPanel);
    JPanel buttonPanel= new JPanel();
    rtcp= new JButton( "RTCP Monitor");
    update= new JButton( "Transmission Status");
         update.setEnabled( false);
         rtcp.addActionListener( this);
         update.addActionListener( this);
         buttonPanel.add( rtcp);
         buttonPanel.add( update);
         gbc= new GridBagConstraints();
         gbc.gridx = 0;
         gbc.gridy = 3;
    gbc.gridwidth= 2;
         gbc.weightx = 1.0;
         gbc.weighty = 0.0;
         gbc.anchor = GridBagConstraints.CENTER;
         gbc.fill = GridBagConstraints.HORIZONTAL;
         gbc.insets = new Insets( 5,5,10,5);
         ((GridBagLayout)p.getLayout()).setConstraints( buttonPanel, gbc);
         p.add( buttonPanel);
    getContentPane().add( p);
         list.addMouseListener( this);
         addWindowListener( this);
    pack();
    setVisible( true);
    private JPanel createMediaPanel() {
    JPanel p= new JPanel();
         GridBagLayout gridBagLayout= new GridBagLayout();
    GridBagConstraints gbc;
         p.setLayout( gridBagLayout);
         JLabel label= new JLabel( "Media Locator:");
         gbc= new GridBagConstraints();
         gbc.gridx = 0;
         gbc.gridy = 0;
         gbc.weightx = 0.0;
         gbc.weighty = 0.0;
         gbc.anchor = GridBagConstraints.EAST;
         gbc.fill = GridBagConstraints.NONE;
         gbc.insets = new Insets( 5,5,10,5);
         ((GridBagLayout)p.getLayout()).setConstraints( label, gbc);
         p.add( label);
         tf_media_file= new JTextField( 35);
         gbc= new GridBagConstraints();
         gbc.gridx = 1;
         gbc.gridy = 0;
         gbc.weightx = 1.0;
         gbc.weighty = 0.0;
         gbc.anchor = GridBagConstraints.WEST;
         gbc.fill = GridBagConstraints.HORIZONTAL;
         gbc.insets = new Insets( 5,5,10,5);
         ((GridBagLayout)p.getLayout()).setConstraints( tf_media_file, gbc);
         p.add( tf_media_file);
         tf_media_file.setText( config.media_locator);
         cb_loop= new JCheckBox( "loop");
         startXmit= new JButton( "Start Transmission");
         startXmit.setEnabled( true);
         startXmit.addActionListener( this);
         gbc= new GridBagConstraints();
         gbc.gridx = 2;
         gbc.gridy = 0;
         gbc.weightx = 0.0;
         gbc.weighty = 0.0;
         gbc.anchor = GridBagConstraints.WEST;
         gbc.fill = GridBagConstraints.NONE;
         gbc.insets = new Insets( 5,5,10,5);
         ((GridBagLayout)p.getLayout()).setConstraints( cb_loop, gbc);
         p.add( cb_loop);
         cb_loop.setSelected( true);
         cb_loop.addActionListener( this);
         gbc= new GridBagConstraints();
         gbc.gridx = 1;
         gbc.gridy = 1;
         gbc.weightx = 0.0;
         gbc.weighty = 0.0;
         gbc.anchor = GridBagConstraints.CENTER;
         gbc.fill = GridBagConstraints.NONE;
         gbc.insets = new Insets( 5,5,10,5);
         ((GridBagLayout)p.getLayout()).setConstraints( startXmit, gbc);
         p.add( startXmit);
         TitledBorder titledBorder= new TitledBorder( new EtchedBorder(), "Source");
         p.setBorder( titledBorder);
         return p;
    private JPanel createTargetPanel() {
    JPanel p= new JPanel();
         GridBagLayout gridBagLayout= new GridBagLayout();
    GridBagConstraints gbc;
         p.setLayout( gridBagLayout);
         targets= new Vector();
         for( int i= 0; i < config.targets.size(); i++) {
         targets.addElement( config.targets.elementAt( i));
    listModel= new TargetListModel( targets);
    list= new JList( listModel);
         list.addKeyListener( this);
         list.setPrototypeCellValue( "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx");
    JScrollPane scrollPane= new JScrollPane( list,
    ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED,
    ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
         gbc= new GridBagConstraints();
         gbc.gridx= 0;
         gbc.gridy= 0;
         gbc.weightx= 1.0;
         gbc.weighty= 1.0;
         gbc.anchor= GridBagConstraints.CENTER;
         gbc.fill= GridBagConstraints.BOTH;
         gbc.insets= new Insets( 10, 5, 0, 0);
         ((GridBagLayout)p.getLayout()).setConstraints( scrollPane, gbc);
         p.add( scrollPane);
    JPanel p1= new JPanel();
         p1.setLayout( gridBagLayout);
         JLabel label= new JLabel( "IP Address:");
         gbc= new GridBagConstraints();
         gbc.gridx = 0;
         gbc.gridy = 0;
         gbc.weightx = 0.0;
         gbc.weighty = 0.0;
         gbc.anchor = GridBagConstraints.EAST;
         gbc.fill = GridBagConstraints.NONE;
         gbc.insets = new Insets( 5,5,0,5);
         ((GridBagLayout)p1.getLayout()).setConstraints( label, gbc);
         p1.add( label);
         tf_remote_address= new JTextField( 15);
         gbc= new GridBagConstraints();
         gbc.gridx = 1;
         gbc.gridy = 0;
         gbc.weightx = 0.0;
         gbc.weighty = 0.0;
         gbc.anchor = GridBagConstraints.WEST;
         gbc.fill = GridBagConstraints.NONE;
         gbc.insets = new Insets( 5,5,0,5);
         ((GridBagLayout)p1.getLayout()).setConstraints( tf_remote_address, gbc);
         p1.add( tf_remote_address);
         label= new JLabel( "Data Port:");
         gbc= new GridBagConstraints();
         gbc.gridx = 0;
         gbc.gridy = 1;
         gbc.weightx = 0.0;
         gbc.weighty = 0.0;
         gbc.anchor = GridBagConstraints.EAST;
         gbc.fill = GridBagConstraints.NONE;
         gbc.insets = new Insets( 5,5,0,5);
         ((GridBagLayout)p1.getLayout()).setConstraints( label, gbc);
         p1.add( label);
         tf_remote_data_port= new JTextField( 15);
         gbc= new GridBagConstraints();
         gbc.gridx = 1;
         gbc.gridy = 1;
         gbc.weightx = 0.0;
         gbc.weighty = 0.0;
         gbc.anchor = GridBagConstraints.WEST;
         gbc.fill = GridBagConstraints.NONE;
         gbc.insets = new Insets( 5,5,0,5);
         ((GridBagLayout)p1.getLayout()).setConstraints( tf_remote_data_port, gbc);
         p1.add( tf_remote_data_port);     
    JPanel p2= new JPanel();
    addTarget= new JButton( "Add Target");     
    removeTarget= new JButton( "Remove Target");
         p2.add( addTarget);
         p2.add( removeTarget);
         addTarget.addActionListener( this);
         removeTarget.addActionListener( this);
         gbc= new GridBagConstraints();
         gbc.gridx = 0;
         gbc.gridy = 2;
         gbc.weightx = 1.0;
         gbc.weighty = 0.0;
         gbc.gridwidth= 2;
         gbc.anchor = GridBagConstraints.CENTER;
         gbc.fill = GridBagConstraints.HORIZONTAL;
         gbc.insets = new Insets( 20,5,0,5);
         ((GridBagLayout)p1.getLayout()).setConstraints( p2, gbc);
         p1.add( p2);
         gbc= new GridBagConstraints();
         gbc.gridx= 1;
         gbc.gridy= 0;
         gbc.weightx= 1.0;
         gbc.weighty= 1.0;
         gbc.anchor= GridBagConstraints.CENTER;
         gbc.fill= GridBagConstraints.BOTH;
         gbc.insets= new Insets( 10, 5, 0, 0);
         ((GridBagLayout)p.getLayout()).setConstraints( p1, gbc);
         p.add( p1);
         TitledBorder titledBorder= new TitledBorder( new EtchedBorder(), "Targets");
         p.setBorder( titledBorder);
         return p;
    private JPanel createLocalPanel() {
    JPanel p= new JPanel();
         GridBagLayout gridBagLayout= new GridBagLayout();
    GridBagConstraints gbc;
         p.setLayout( gridBagLayout);
         JLabel label= new JLabel( "IP Address:");
         gbc= new GridBagConstraints();
         gbc.gridx = 0;
         gbc.gridy = 0;
         gbc.weightx = 0.0;
         gbc.weighty = 0.0;
         gbc.anchor = GridBagConstraints.EAST;
         gbc.fill = GridBagConstraints.NONE;
         gbc.insets = new Insets( 5,5,0,5);
         ((GridBagLayout)p.getLayout()).setConstraints( label, gbc);
         p.add( label);
         JTextField tf_local_host= new JTextField( 15);
         gbc= new GridBagConstraints();
         gbc.gridx = 1;
         gbc.gridy = 0;
         gbc.weightx = 0.0;
         gbc.weighty = 0.0;
         gbc.anchor = GridBagConstraints.WEST;
         gbc.fill = GridBagConstraints.NONE;
         gbc.insets = new Insets( 5,5,0,5);
         ((GridBagLayout)p.getLayout()).setConstraints( tf_local_host, gbc);
         p.add( tf_local_host);
         try {
    String host= InetAddress.getLocalHost().getHostAddress();     
         tf_local_host.setText( host);
         } catch( UnknownHostException e) {
         label= new JLabel( "Data Port:");
         gbc= new GridBagConstraints();
         gbc.gridx = 0;
         gbc.gridy = 1;
         gbc.weightx = 0.0;
         gbc.weighty = 0.0;
         gbc.anchor = GridBagConstraints.EAST;
         gbc.fill = GridBagConstraints.NONE;
         gbc.insets = new Insets( 5,5,0,5);
         ((GridBagLayout)p.getLayout()).setConstraints( label, gbc);
         p.add( label);
         tf_data_port= new JTextField( 15);
         gbc= new GridBagConstraints();
         gbc.gridx = 1;
         gbc.gridy = 1;
         gbc.weightx = 0.0;
         gbc.weighty = 0.0;
         gbc.anchor = GridBagConstraints.WEST;
         gbc.fill = GridBagConstraints.NONE;
         gbc.insets = new Insets( 5,5,10,5);
         ((GridBagLayout)p.getLayout()).setConstraints( tf_data_port, gbc);
         p.add( tf_data_port);
         tf_data_port.setText( config.local_data_port);
         TitledBorder titledBorder= new TitledBorder( new EtchedBorder(), "Local Host");
         p.setBorder( titledBorder);
         return p;
    public void actionPerformed( ActionEvent event) {
    Object source= event.getSource();
         if( source == addTarget) {
         String ip= tf_remote_address.getText().trim();
         String port= tf_remote_data_port.getText().trim();
         String localPort= tf_data_port.getText().trim();
         addTargetToList( localPort, ip, port);
         if( avTransmitter != null) {
         avTransmitter.addTarget( ip, port);
         } else if( source == removeTarget) {
         int index= list.getSelectedIndex();
         if( index != -1) {
              Target target= (Target) targets.elementAt( index);
              if( avTransmitter != null) {
         avTransmitter.removeTarget( target.ip, target.port);
              targets.removeElement( target);
              listModel.setData( targets);          
         } else if( source == startXmit) {
         if( startXmit.getLabel().equals( "Start Transmission")) {          
         int data_port= new Integer( tf_data_port.getText()).intValue();
              avTransmitter= new AVTransmitter( this, data_port);
         avTransmitter.start( tf_media_file.getText().trim(), targets);          
              avTransmitter.setLooping( cb_loop.isSelected());
         startXmit.setLabel( "Stop Transmission");
         } else if( startXmit.getLabel().equals( "Stop Transmission")) {
              avTransmitter.stop();
              avTransmitter= null;
              removeNonBaseTargets();
              listModel.setData( targets);
         startXmit.setLabel( "Start Transmission");          
         } else if( source == rtcp) {
         if( rtcpViewer == null) {
         rtcpViewer= new RTCPViewer();
         } else {
              rtcpViewer.setVisible( true);
              rtcpViewer.toFront();
         } else if( source == cb_loop) {
         if( avTransmitter != null) {
              avTransmitter.setLooping( cb_loop.isSelected());
    private void removeNonBaseTargets() {
         String localPort= tf_data_port.getText().trim();
         for( int i= targets.size(); i > 0;) {
         Target target= (Target) targets.elementAt( i - 1);
         if( !target.localPort.equals( localPort)) {
    targets.removeElement( target);
         i--;
    public void addTargetToList( String localPort,
                             String ip, String port) {     
    ListUpdater listUpdater= new ListUpdater( localPort, ip,
                                  port, listModel, targets);
    SwingUtilities.invokeLater( listUpdater);           
    public void rtcpReport( String report) {
         if( rtcpViewer != null) {
         rtcpViewer.report( report);
    public void windowClosing( WindowEvent event) {
         config.local_data_port= tf_data_port.getText().trim();
         config.targets= new Vector();
         for( int i= 0; i < targets.size(); i++) {
         Target target= (Target) targets.elementAt( i);
         if( target.localPort.equals( config.local_data_port)) {
              config.addTarget( target.ip, target.port);
         config.media_locator= tf_media_file.getText().trim();
         config.write();
    System.exit( 0);
    public void windowClosed( WindowEvent event) {
    public void windowDeiconified( WindowEvent event) {
    public void windowIconified( WindowEvent event) {
    public void windowActivated( WindowEvent event) {
    public void windowDeactivated( WindowEvent event) {
    public void windowOpened( WindowEvent event) {
    public void keyPressed( KeyEvent event) {
    public void keyReleased( KeyEvent event) {
    Object source= event.getSource();
         if( source == list) {
         int index= list.getSelectedIndex();
    public void keyTyped( KeyEvent event) {
    public void mousePressed( MouseEvent e) {
    public void mouseReleased( MouseEvent e) {
    public void mouseEntered( MouseEvent e) {
    public void mouseExited( MouseEvent e) {
    public void mouseClicked( MouseEvent e) {
    Object source= e.getSource();
         if( source == list) {
         int index= list.getSelectedIndex();
         if( index != -1) {
              Target target= (Target) targets.elementAt( index);
              tf_remote_address.setText( target.ip);
              tf_remote_data_port.setText( target.port);
         int index= list.locationToIndex( e.getPoint());
    public static void main( String[] args) {
    new Tx();
    class TargetListModel extends AbstractListModel {
    private Vector options;
    public TargetListModel( Vector options) {
         this.options= options;
    public int getSize() {
         int size;
         if( options == null) {
         size= 0;
         } else {
         size= options.size();
         return size;
    public Object getElementAt( int index) {
    String name;
    if( index < getSize()) {
         Target o= (Target)options.elementAt( index);
    name= o.localPort + " ---> " + o.ip + ":" + o.port;
         } else {
         name= null;
         return name;
    public void setData( Vector data) {
         options= data;
         fireContentsChanged( this, 0, data.size());
    class ListUpdater implements Runnable {
    String localPort, ip, port;
    TargetListModel listModel;
    Vector targets;
    public ListUpdater( String localPort, String ip, String port,
                   TargetListModel listModel, Vector targets) {
         this.localPort= localPort;
         this.ip= ip;
         this.port= port;
         this.listModel= listModel;
         this.targets= targets;
    public void run() {
    Target target= new Target( localPort, ip, port);
         if( !targetExists( localPort, ip, port)) {
         targets.addElement( target);
    listModel.setData( targets);
    public boolean targetExists( String localPort, String ip, String port) {
         boolean exists= false;
         for( int i= 0; i < targets.size(); i++) {
         Target target= (Target) targets.elementAt( i);
         if( target.localPort.equals( localPort)
         && target.ip.equals( ip)
              && target.port.equals( port)) {          
              exists= true;
         break;
         return exists;
    >>>>>>>>>>>>>>>>>
    import java.awt.*;
    import java.io.*;
    import java.net.InetAddress;
    import java.util.*;
    import javax.media.*;
    import javax.media.protocol.*;
    import javax.media.format.*;
    import javax.media.control.TrackControl;
    import javax.media.control.QualityControl;
    import javax.media.rtp.*;
    import javax.media.rtp.event.*;
    import javax.media.rtp.rtcp.*;
    public class AVTransmitter implements ReceiveStreamListener, RemoteListener,
    ControllerListener {
    // Input MediaLocator
    // Can be a file or http or capture source
    private MediaLocator locator;
    private String ipAddress;
    private int portBase;
    private Processor processor = null;
    private RTPManager rtpMgrs[];
    private int localPorts[];
    private DataSource dataOutput = null;
    private int local_data_port;
    private Tx tx;
    public AVTransmitter( Tx tx, int data_port) {
         this.tx= tx;
         local_data_port= data_port;
    * Starts the transmission. Returns null if transmission started ok.
    * Otherwise it returns a string with the reason why the setup failed.
    public synchronized String start( String filename, Vector targets) {
         String result;
         locator= new MediaLocator( filename);
         // Create a processor for the specified media locator
         // and program it to output JPEG/RTP
         result = createProcessor();
         if (result != null) {
         return result;
         // Create an RTP session to transmit the output of the
         // processor to the specified IP address and port no.
         result = createTransmitter( targets);
         if (result != null) {
         processor.close();
         processor = null;
         return result;
         // Start the transmission
         processor.start();
         return null;
    * Use the RTPManager API to create sessions for each media
    * track of the processor.
    private String createTransmitter( Vector targets) {
         // Cheated. Should have checked the type.
         PushBufferDataSource pbds = (PushBufferDataSource)dataOutput;
         PushBufferStream pbss[] = pbds.getStreams();
         rtpMgrs = new RTPManager[pbss.length];
         localPorts = new int[ pbss.length];
         SessionAddress localAddr, destAddr;
         InetAddress ipAddr;
         SendStream sendStream;
         int port;
         SourceDescription srcDesList[];
         for (int i = 0; i < pbss.length; i++) {
         // for (int i = 0; i < 1; i++) {
         try {
              rtpMgrs[i] = RTPManager.newInstance();     
              port = local_data_port + 2*i;
              localPorts[ i]= port;
              localAddr = new SessionAddress( InetAddress.getLocalHost(),
                                  port);
              rtpMgrs.initialize( localAddr);          
              rtpMgrs[i].addReceiveStreamListener(this);
              rtpMgrs[i].addRemoteListener(this);
         for( int k= 0; k < targets.size(); k++) {
              Target target= (Target) targets.elementAt( k);
              int targetPort= new Integer( target.port).intValue();
              addTarget( localPorts[ i], rtpMgrs[ i], target.ip, targetPort + 2*i);
              sendStream = rtpMgrs[i].createSendStream(dataOutput, i);          
              sendStream.start();
         } catch (Exception e) {
              e.printStackTrace();
              return e.getMessage();
         return null;
    public void addTarget( String ip, String port) {
         for (int i= 0; i < rtpMgrs.length; i++) {
         int targetPort= new Integer( port).intValue();
         addTarget( localPorts[ i], rtpMgrs[ i], ip, targetPort + 2*i);
    public void addTarget( int localPort, RTPManager mgr, String ip, int port) {
         try {
         SessionAddress addr= new SessionAddress( InetAddress.getByName( ip),
                                  new Integer( port).intValue());
         mgr.addTarget( addr);
         tx.addTargetToList( localPort + "", ip, port + "");
         } catch( Exception e) {
         e.printStackTrace();
    public void removeTarget( String ip, String port) {
         try {     
         SessionAddress addr= new SessionAddress( InetAddress.getByName( ip),
                                  new Integer( port).intValue());
         for (int i= 0; i < rtpMgrs.length; i++) {
         rtpMgrs[ i].removeTarget( addr, "target removed from transmitter.");
         } catch( Exception e) {
         e.printStackTrace();
    boolean looping= true;
    public void controllerUpdate( ControllerEvent ce) {
         System.out.println( ce);
         if( ce instanceof DurationUpdateEvent) {
         Time duration= ((DurationUpdateEvent) ce).getDuration();
         System.out.println( "duration: " + duration.getSeconds());
         } else if( ce instanceof EndOfMediaEvent) {
         System.out.println( "END OF MEDIA - looping=" + looping);
         if( looping) {
         processor.setMediaTime( new Time( 0));
              processor.start();
    public void setLooping( boolean flag) {
         looping= flag;
    public void update( ReceiveStreamEvent event) {
         String timestamp= getTimestamp();
         StringBuffer sb= new StringBuffer();
         if( event instanceof InactiveReceiveStreamEvent) {
         sb.append( timestamp + " Inactive Receive Stream");
         } else if( event instanceof ByeEvent) {
         sb.append( timestamp + " Bye");
         } else {
         System.out.println( "ReceiveStreamEvent: "+ event);
         tx.rtcpReport( sb.toString());     
    public void update( RemoteEvent event) {     
         String timestamp= getTimestamp();
         if( event instanceof ReceiverReportEvent) {
         ReceiverReport rr= ((ReceiverReportEvent) event).getReport();
         StringBuffer sb= new StringBuffer();
         sb.append( timestamp + " RR");
         if( rr != null) {
              Participant participant= rr.getParticipant();
              if( participant != null) {
              sb.append( " from " + participant.getCNAME());
              sb.append( " ssrc=" + rr.getSSRC());
              } else {
              sb.append( " ssrc=" + rr.getSSRC());
              tx.rtcpReport( sb.toString());
         } else {
         System.out.println( "RemoteEvent: " + event);
    private String getTimestamp() {
         String timestamp;
         Calendar calendar= Calendar.getInstance();
         int hour= calendar.get( Calendar.HOUR_OF_DAY);
         String hourStr= formatTime( hour);
         int minute= calendar.get( Calendar.MINUTE);
         String minuteStr= formatTime( minute);
         int second= calendar.get( Calendar.SECOND);
         String secondStr= formatTime( second);
         timestamp= hourStr + ":" + minuteStr + ":" + secondStr;     
         return timestamp;
    private String formatTime( int time) {     
         String timeStr;
         if( time < 10) {
         timeStr= "0" + time;
         } else {
         timeStr= "" + time;
         return timeStr;
    * Stops the transmission if already started
    public void stop() {
         synchronized (this) {
         if (processor != null) {
              processor.stop();
              processor.close();
              processor = null;
         for (int i= 0; i < rtpMgrs.length; i++) {
         rtpMgrs[ i].removeTargets( "Session ended.");
              rtpMgrs[ i].dispose();
    public String createProcessor() {
         if (locator == null) {
         return "Locator is null";
         DataSource ds;
         DataSource clone;
         try {
         ds = javax.media.Manager.createDataSource(locator);
         } catch (Exception e) {
         return "Couldn't create DataSource";
         // Try to create a processor to handle the input media locator
         try {
         processor = javax.media.Manager.createProcessor(ds);
         processor.addControllerListener( this);     
         } catch (NoProcessorException npe) {
         return "Couldn't create processor";
         } catch (IOException ioe) {
         return "IOException creating processor";
         // Wait for it to configure
         boolean result = waitForState(processor, Processor.Configured);
         if (result == false)
         return "Couldn't configure processor";
         // Get the tracks from the processor
         TrackControl [] tracks = processor.getTrackControls();
         // Do we have atleast one track?
         if (tracks == null || tracks.length < 1)
         return "Couldn't find tracks in processor";
         // Set the output content descriptor to RAW_RTP
         // This will limit the supported formats reported from
         // Track.getSupportedFormats to only valid RTP formats.
         ContentDescriptor cd = new ContentDescriptor(ContentDescriptor.RAW_RTP);
         processor.setContentDescriptor(cd);
         Format supported[];
         Format chosen;
         boolean atLeastOneTrack = false;
         // Program the tracks.
         for (int i = 0; i < tracks.length; i++) {
         Format format = tracks[i].getFormat();
         if (tracks[i].isEnabled()) {
              supported = tracks[i].getSupportedFormats();
              // We've set the output content to the RAW_RTP.
              // So all the supported formats should work with RTP.
              // We'll just pick the first one.
              if (supported.length > 0) {
              if (supported[0] instanceof VideoFormat) {
                   // For video formats, we should double check the
                   // sizes since not all formats work in all sizes.
                   chosen = checkForVideoSizes(tracks[i].getFormat(),
                                       supported[0]);
              } else
                   chosen = supported[0];
              tracks[i].setFormat(chosen);
              System.err.println("Track " + i + " is set to transmit as:");
              System.err.println(" " + chosen);
              atLeastOneTrack = true;
              } else
              tracks[i].setEnabled(false);
         } else
              tracks[i].setEnabled(false);
         if (!atLeastOneTrack)
         return "Couldn't set any of the tracks to a valid RTP format";
         // Realize the processor. This will internally create a flow
         // graph and attempt to create an output datasource for JPEG/RTP
         // audio frames.
         result = waitForState(processor, Controller.Realized);
         if (result == false)
         return "Couldn't realize processor";
         // Set the JPEG quality to .5.
         setJPEGQuality(processor, 0.5f);
         // Get the output data source of the processor
         dataOutput = processor.getDataOutput();
         return null;
    static SessionAddress destAddr1, destAddr2;
    * For JPEG and H263, we know that they only work for particular
    * sizes. So we'll perform extra checking here to make sure they
    * are of the right sizes.
    Format checkForVideoSizes(Format original, Format supported) {
         int width, height;
         Dimension size = ((VideoFormat)original).getSize();
         Format jpegFmt = new Format(VideoFormat.JPEG_RTP);
         Format h263Fmt = new Format(VideoFormat.H263_RTP);
         if (supported.matches(jpegFmt)) {
         // For JPEG, make sure width and height are divisible by 8.
         width = (size.width % 8 == 0 ? size.width :
                        (int)(size.width / 8) * 8);
         height = (size.height % 8 == 0 ? size.height :
                        (int)(size.height / 8) * 8);
         } else if (supported.matches(h263Fmt)) {
         // For H.263, we only support some specific sizes.
         if (size.width < 128) {
              width = 128;
              height = 96;
         } else if (size.width < 176) {
              width = 176;
              height = 144;
         } else {
              width = 352;
              height = 288;
         } else {
         // We don't know this particular format. We'll just
         // leave it alone then.
         return supported;
         return (new VideoFormat(null,
                        new Dimension(width, height),
                        Format.NOT_SPECIFIED,
                        null,
                        Format.NOT_SPECIFIED)).intersects(supported);
    * Setting the encoding quality to the specified value on the JPEG encoder.
    * 0.5 is a good default.
    void setJPEGQuality(Player p, float val) {
         Control cs[] = p.getControls();
         QualityControl qc = null;
         VideoFormat jpegFmt = new VideoFormat(VideoFormat.JPEG);
         // Loop through the controls to find the Quality control for
         // the JPEG encoder.
         for (int i = 0; i < cs.length; i++) {
         if (cs[i] instanceof QualityControl &&
              cs[i] instanceof Owned) {
              Object owner = ((Owned)cs[i]).getOwner();
              // Check to see if the owner is a Codec.
              // Then check for the output format.
              if (owner instanceof Codec) {
              Format fmts[] = ((Codec)owner).getSupportedOutputFormats(null);
              for (int j = 0; j < fmts.length; j++) {
                   if (fmts[j].matches(jpegFmt)) {
                   qc = (QualityControl)cs[i];
                   qc.setQuality(val);
                   System.err.println("- Setting quality to " +
                             val + " on " + qc);
                   break;
              if (qc != null)
              break;
    * Convenience methods to handle processor's state changes.
    private Integer stateLock = new Integer(0);
    private boolean failed = false;
    Integer getStateLock() {
         return stateLock;
    void setFailed() {
         failed = true;
    private synchronized boolean waitForState(Processor p, int state) {
         p.addControllerListener(new StateListener());
         failed = false;
         // Call the required method on the processor
         if (state == Processor.Configured) {
         p.configure();
         } else if (state == Processor.Realized) {
         p.realize();
         // Wait until we get an event that confirms the
         // success of the method, or a failure event.
         // See StateListener inner class
         while (p.getState() < state && !failed) {
         synchronized (getStateLock()) {
              try {
              getStateLock().wait();
              } catch (InterruptedException ie) {
              return false;
         if (failed)
         return false;
         else
         return true;
    * Inner Classes
    class StateListener implements ControllerListener {
         public void controllerUpdate(ControllerEvent ce) {
         // If there was an error during configure or
         // realiz

    I do this all the time, I put my MBP to a 60 inch Sharp. If you have the video working do the simple thing first. Check to make sure your sound is on your TV and Mac. Then if that doesn't work go to System Prefrences and under sound go to a tab called Output and see if your TV is listed and if it is change it to that setting
    Hope It Works

  • HT4480 I have redemption codes for FCP from my university - how many machines can I install on?

    I have redemption codes for FCP from my university - how many machines can I install on?

    Do you have these codes because this will be your app? Or is this a "loan" from the school to install on your machine? Do you use your own Apple ID to redeem the code and install the app?
    If it is your app, then you may install it on as many Macs as you own or have in your control.

Maybe you are looking for