Codec/ hardware/software for jumbo-frame size video playback on desktop?

Hello all,
I am looking for a codec that I can render to from AE and FCP, and can preview 1/2 or 3/4 scaled and actual scle (partial) on my 30" mac desktop.
ideal size: 3840x2160 (16:9) 25 fps 604 MB/sec CODEC for desktop PB
the AJA whack test on Dulce RX shows (720MB/sec.)easily enough disk throughput to handle 604MB/sec,
but apple uncompressed 10 bit 4:2:2 won't play more than 5sec.
my problem is not editing and rendering of which I will do a variety of methods, but rather
?????what uncompressed codec etc. to render TO????....how to see it,
1/2 or 3/4 scale or actual scale (partial)
on my 30" desktop
so I can check composition...before we finnally have it chopped up for seperate projectors or in the very fancy installation projection system
or to identify the hardware/software bottle necks to playing such a frame size on my desktop.
thanks,
Hilary

Wow, you are definitely on the bleeding edge, Hilary, trying to produce quad-HDTV on a Mac. One thing you might want to try, if you haven't already, is to post your questions at the AVScience forum. I think you will find a more focused audience there.
I don't really have answers for you, but I do have more questions and possibly some things to think about. First question; is the source material really quad-HDTV or is it lower res, like normal HDTV, and the plan is to show it through four, 1080p projectors onto a video wall? The reason I ask is, if the source material is lower res, then it seems pointless to try and encode it as quad-HD. You could just encode as HD (1080p) and then chop it up into four 960 x 540 chunks and project that.
You mention that you have encoded Apple uncompressed 10-bit 4:2:2 but that the file will only play for five seconds. What happens after that? Does it get choppy or does it just altogether stop playing? The answer may hold clues as to what the problem is.
What will the be the final platform for playing this video through the four projectors? Will it be the same G5 PowerMac that you are producing on or is the playback system based on different hardware? That could influence the encoding choice.
It seems the most ideal development system for what you are trying to do would not be on a 30" monitor but instead on four 23" Cinema Displays connected to two graphics boards installed in your G5. Then you could be working at full scale aross all the monitors and you wouldn't have to worry about 1/2 scale or 3/4 scale or partial full scale viewing.
It sounds like you have verified there to be adequate throughput off the disk to play the file at 25 fps but it's hard to imagine that a ~0.6 GBytes per second data stream isn't going to bottleneck somewhere on the G5. That's like 10x the data rate of FW800 if I am reading your post correctly. Maybe you meant 604 Mbps? That's just inside the (theoretical) envelope of FW800, but still a lot of data to be streaming real time without interruption. But where is the pinch point? That is the question. I'm guessing that it is disk related inspite of what the AJA whack test says. Are you using a raid by any chance? That should improve the AJA score and make for more headroom, especially if run off a SATA card.
Personally, I rarely use anything more powerful than Apple's Activity Monitor as a system monitoring tool. But I doubt that it has enough diagnostic power for this application. If you are running Leopard, DTrace might be helpful, but I have no experience with it personally. Just trying to find the bottleneck could turn into a whole project of its own. Again I refer you to the AVScience forum as a possible shortcut to the answers you seek. Good luck with your project.

Similar Messages

  • Best codec/practice/software for importing Screen Demo Video

    Hello!
    I have access to Snagit 8, Microsoft Media Encoder, and Flash
    8. What I'd like to do is use these three programs to capture on
    screen interaction with websites via Explorer, import it into Flash
    8 and add text and interactivity.
    Obviously, I'm trying to do what Captivate was designed to
    do, but due to my position outside of a certain department, I am
    not allowed to access Captivate (ah, corporate politics).
    So, I can capture uncompressed video using Snagit 8 and then
    import it into Flash, embedding it into the timeline. I embedding
    the video compromises the quality a bit, but it's much easier to
    get the timing of text and graphics to the video if it's embedded.
    Is there a certain codec available to one of these two
    programs that Flash would like more? Is there a certain codec that
    Captivate uses to create such crisp video? Would anyone be willing
    to share that with me? I would totally go out and get Captivate if
    the boss would let me...
    Any advice would be greatly appreciated!
    CMF

    Hi Brian
    This morning I posted a small tip for working with large capture areas. Perhaps it will be helpful here?
    Cheers... Rick
    Helpful and Handy Links
    Captivate Wish Form/Bug Reporting Form
    Adobe Certified Captivate Training
    SorcerStone Blog
    Captivate eBooks

  • Netflix says"Video Playback Error  Your device has a hardware issue, which is preventing Premium Video Playback. Contact Apple Support for more information. Error Code: S7363-1261-FFFFD000" What is wrong?

    My mac is working fine. No noticeable problems. Then went onto netflix everything was working apart from the watching of the film and it popped up
    "Video Playback Error  Your device has a hardware issue, which is preventing Premium Video Playback. Contact Apple Support for more information. Error Code: S7363-1261-FFFFD000".
    Not sure what is wrong but would appreciate any help

    Netflix not working with yosemite
    Re: I think there is a hardware issue with my computer and i am not sure what to do it won't let me play netflix
    Netflix streaming gives Error Code: S7363-1261-FFFFD000

  • Best video Hardware/software for converting VHS DVD and others on Mac?

    Hello,
    I am having problems finding some much needed details on what the best software/hardware is for converting video formats on a Mac. I should note I am using a NEW iMac 4GB memory and Leopard OS so what I use needs to be compatible. Perhaps next year I will get a Mac Pro, but for now I'm using this setup. Here's is what I need to do:
    1. Transfer old VHS tapes (home movies and such) to DVD. I need to be able to use DL DVD discs for my recordings so I don't have to switch DVDs. In other words make them just like the DVDs you play that you buy. Therefore, they also must be able to playback in home theater DVD players, not just on the computer. I would assume the best way as for encoding is to get the VHS tape in digital format on the hard drive, then use the codecs to turn them into DVDs?
    2. Once on the hard drive I also need to convert them to a format neutral playback on both the Mac and PC. What is the best, MPEG 4?
    3. The ability to do some nice editing of making bookmarks, chapters and thumbnails for the DVD menu and divisions I wish to make. In other words, if I have a home movie containing my Summer and Winter vacation, I want to insert bookmarks at points to skip to like in a movie DVD and also have a thumbnail of it just like DVD movies does.
    4. A nice MAIN menu for the DVD that will let me hit the main categories, not just chapters for the TOP level DVD menu. Such as Summer Vacation, Winter vacation.
    5. The software should be easy to use so I don't have to take a HUGE crash course requiring lots of work making the project a chore. Also, I don't want or need a professional package, just something simple that is less than $200 per software program. Not the expensive $500+ software options for movie makers.
    Thank you for any tips and advice on this matter.

    "Best software/hardware" depends on your exact needs & wants.
    One simple way to transfer your VHS tapes to DVD is with a *DVD Recorder*. Many of these come with VHS and DVD decks already built in. Insert your VHS tape, a blank DVD, hit record and off it goes. When finished, you have a playable DVD.
    To transfer your VHS tapes to DV for editing you will need a converter. The *Canopus ADVC-110* is a very nice, relatively inexpensive device that will do that job for you. (It's also possible to use most modern DV camcorders as converters, too.) You would connect your VHS deck to the Canopus box via their analog video & audio connections, then connect the Canopus box via FW to your Mac, and then when you play the VHS tape you would capture the video in iMovie or FCE.
    Once your videos are captured on your Mac, you could use iMovie or *Final Cut Express* to do whatever editing you might want to do. Regardless of which one you edit with, however, it's iDVD that you would use to create your DVD menus and burn your DVDs.
    So, overall, the workflow would be like this: *VHS Deck > Converter (camcorder or converter box) > Capture on Mac (iMovie or FCE) > Editing application (iMovie or FCE) > iDVD > DVD*
    For playback on computers MPEG4 would be an ok choice, H.264 is probably a better choice, and then there's the matter of whether or not you want to export as a QuickTime movie and/or AVI.
    iLife came with your Mac, so you already have iMovie and iDVD. How about giving them a try before you consider investing in a significantly more sophisticated application like Final Cut Express. (just my opinion)

  • Do I need FC Pro for custom frame sizes?

    I recently purchased Final Cut Express HD for editing computer based software training videos. These videos are captured using Snapz Pro X2 at 1024x768 and will be played back on a computer at the same size, or reduced to 800x600. They won't be output to tape or DVD.
    I thought FCE HD would allow me to edit at 1024x768 resolution but I now it seems that isn't possible.
    Am I correct that FCE HD won't let me edit at the frame sizes I specified? Do I need Final Cut Pro 5?
    Thanks,
    Mythago
    Mac Mini (PowerPC 1.25)   Mac OS X (10.4.5)   1 GB RAM, 250GB Firewire External

    FCEHD will let you use QuickTime videos of different frame sizes, but it will only output in 720x480 (NTSC) or... whatever the PAL rez is.
    Keep in mind that your maximum resolution for DVD output is (essentially) 640x480 anyway, in square pixels. So, even if you were to edit in 1024x768, you will need to downsample it in order to get it on DVD.
    On other training videos, I've often seen them show the full screen for some parts, but then zoom in on the areas where they're doing action. That would definitely be possible in FCEHD. For the full screen shots, scale the computer screen image to fit in the frame. Then, when you need to show detail, cut the clip and scale it up to make it bigger, and center the action in the video frame.
    Look at some training DVD's by places like Digital Tree or someplace like that to get some ideas on how to do that. Hope that makes sense.

  • BEST/SUGGESTED NETWORKING HARDWARE & SOFTWARE FOR MULTI-MACS

    I WISH TO NETWORK 4 APPLE PC'S; 2-MACBOOK PRO, 1-iMAC 24" AND 1-iBOOK G4 ALL RUNNING TIGER OSX 10.4+. I HAVE 4-WESTERN DIGITAL EXTERNAL 500G HD'S, A LINKSYS DUAL-NETWORK STORAGE LINK, LINKSYS WIRELESS ROUTER WTR300-N TO START. I WISH TO UE THE WESTERN DIGITAL EXT-HD FOR DATA AND ALLOW ALL MAC'S SECURED WIRED/WIRELESS ACCESS TO SHARED DATA. I HAVE (1-MAIN CONTROL) VOIP/TV/DVD/iTUNES/8-CAMERA SECURITY SYSTEM AND (3) MULTI-MONITOR LCD SETS FOR ALL OTHER MAC'S BASE SET-UP. IS A 10/100/1000 MULTI-PORT VPN ROUTER SUGGESTED? WHAT OTHER HARDWARE & SOFTWARE AND SET-UP COMMENTS ARE SUGGESTED? THANKS!

    I WISH TO NETWORK 4 APPLE PC'S; 2-MACBOOK PRO, 1-iMAC 24" AND 1-iBOOK G4 ALL RUNNING TIGER OSX 10.4+. I HAVE 4-WESTERN DIGITAL EXTERNAL 500G HD'S, A LINKSYS DUAL-NETWORK STORAGE LINK, LINKSYS WIRELESS ROUTER WTR300-N TO START. I WISH TO UE THE WESTERN DIGITAL EXT-HD FOR DATA AND ALLOW ALL MAC'S SECURED WIRED/WIRELESS ACCESS TO SHARED DATA. I HAVE (1-MAIN CONTROL) VOIP/TV/DVD/iTUNES/8-CAMERA SECURITY SYSTEM AND (3) MULTI-MONITOR LCD SETS FOR ALL OTHER MAC'S BASE SET-UP. IS A 10/100/1000 MULTI-PORT VPN ROUTER SUGGESTED? WHAT OTHER HARDWARE & SOFTWARE AND SET-UP COMMENTS ARE SUGGESTED? THANKS!

  • Sound capture hardware/software for voice over work

    Sorry if this is a little off topic,
    Environment: Production Premium CS3 (Windows)
    I'm doing voice over audio capture for web videos. Currently, I use Soundbooth or the sound card software (Creative Labs) to capture.
    1. What is the best mic setup? I use a $30 headset boom mic. Is there a better way? I would rather record clean than spend time trying to clean up the audio. Any links to tutorials on setting up an audio studio?
    2. Should I use Soundbooth to capture?
    thanks for any ideas,
    fred

    I use a $50 headset. I use Sb to capture VO audio. I also use Sb to clean up the audio.
    If your room is fairly quiet or if the background noise is constant, then you can clean up the audio in Sb quickly. No need to go to the expense and trouble of creating a studio.
    The trick is to capture 15-30 seconds (sometimes you can get away with less) of "silence" in the room so that you can use it as a noise print for the NR tool in Sb.
    I've had good success using about 75%-80% for the amount of reduction.
    Example here:
    Creative Cow Tutorial
    -Jeff

  • Required hardware,Software for iOS development

    Hi everyone,
            Myself Yogesh Mahajan want to start iOS application development. Please suggest me required hardware and software configure.
    Thanks in advance.

    https://developer.apple.com/programs/ios/

  • Is there software for a sound activated video recording?

    Basically, I want to have a webcam (with a mic) hooked up that can start recording a short video when a set sound pressure level is reached. Thanks

    For a scanned (raster) image, you need an image editor; which Paint is a very simplified version of. For small and kind of cheap, there's Acorn. Though really, if a person is going to spend $50 on that, you may as well go for Photoshop Elements and get a much more powerful app for $64. Normally $99 from Adobe, that's quite a bit of a discount for a full version copy.

  • I can't play Netflix movies on my MacBook Pro.  I keep getting this message:  "Video Playback Error  Your device has a hardware issue, which is preventing Premium Video Playback. Contact Apple Support for more information."  Any good ideas?  Thanks!

    Can't stream movies on Netflix.

    I have the same problem and I tried installing and unistalling Silverlight from my system but did not work. I had a chat with someone on Netflix and he told me that this is a Silverlight problem an Mac and the browser who use it, he refer me to use Google Chrome instead because don't need Silverlight and it worked. Now for Netflix on my Macbook I'll use Chrome.

  • USB Drive not downloading software for Camera and other new devices - HP Desktop G5418uk

    Product:- HP Desktop G5418uk
    Operating system:- Windows 7
    Error message:-Installing Device Driver Software - followed by - Device Driver Software was not succesfuly installed, no Driver found. 
    I purchased a new Creative Plug and play WebCam which I could not get to work although it worked on shops Desk Top. I returned it and the shop changed it for a  Microsoft WebCam but the same thing happened. I have since tried to use 2 separate pen drives and the drivers will not down load. Existing plug and play such as my external Hard drive work as normal so the problem has only risen for new equipment. Don't know how long ago but this has been going on for 6 months. I have also successfully installed the Camera on my old desk top without any problems. Any help someone can give would be very much appreciated.
    This question was solved.
    View Solution.

    When asking for assistance, the basic questions need to be answered.
    1) I have also successfully installed the Camera on my old desk top without any problems.   What OS? 
    2) Have you checked within Device Manager for any Yellow or red flagged USB ports?
    I am a volunteer. I am not an HP employee.
    To say THANK YOU, press the "thumbs up symbol" to render a KUDO. Please click Accept as Solution, if your problem is solved. You can render both Solution and KUDO.
    The Law of Effect states that positive reinforcement increases the probability of a behavior being repeated. (B.F.Skinner). You toss me KUDO and/or Solution, and I perform better.
    (2) HP DV7t i7 3160QM 2.3Ghz 8GB
    HP m9200t E8400,Win7 Pro 32 bit. 4GB RAM, ASUS 550Ti 2GB, Rosewill 630W. 1T HD SATA 3Gb/s
    Custom Asus P8P67, I7-2600k, 16GB RAM, WIN7 Pro 64bit, EVGA GTX660 2GB, 750W OCZ, 1T HD SATA 6Gb/s
    Custom Asus P8Z77, I7-3770k, 16GB RAM, WIN7 Pro 64bit, EVGA GTX670 2GB, 750W OCZ, 1T HD SATA 6Gb/s
    Both Customs use Rosewill Blackhawk case.
    Printer -- HP OfficeJet Pro 8600 Plus

  • Does the WRT310N support jumbo frames?

    Greetings one and all.
    Does anyone know if the WRT310N Wireless-N Gigabit Router support jumbo frames?  I have a Buffalo Linkstation Mini NAS that contains a Gigabit Ethernet card.  The NAS can support jumbo frames provided the switch it's connected to has the capability.
    Thanks

    I did a live sesion with the tech support desk
    The WRT320N does have hardware support for Jumbo Frames.
    Only on the Firmware (Software Side) it's not enabled yet what can easy be done by the Linksys/Cisco development team.
    see PDF broadcom BMC53115
    http://www.dutchmans.serverthuis.nl/BCM53115.pdf
      (Mod Note: Removed chat script)
    Message Edited by daikunzeon on 11-27-2009 10:53 PM

  • Any futures plans to include a real video editing software for hp sprout, like Adobe premiere pro?

    Very simple question.
    Is there any plans to include a real video editing software for HP Sprout?
    Video editing software like Adobe premire Pro?
    It will be amazing if you (HP people) can develop and integrate a video editing software like Adobe premiere Pro into the HP Sprout.
    Thank you in advance!

    Diodio wrote:
    Very simple question.
    Is there any plans to include a real video editing software for HP Sprout?
    Video editing software like Adobe premire Pro?
    It will be amazing if you (HP people) can develop and integrate a video editing software like Adobe premiere Pro into the HP Sprout.
    Thank you in advance!
    HP is pretty reticent to revealing "Future Plans".  It would be a real shot in the arm though if this happens!
    How about it @Ty1 ?  Can you shed any light on the subject?
    WyreNut
    I am a Volunteer here, not employed by HP.
    You too can become an HP Expert! Details HERE!
    If my post has helped you, click the Kudos Thumbs up!
    If it solved your issue, Click the "Accept as Solution" button so others can benefit from the question you asked!

  • Compression: what's right frame size for anamorphic film using H.264 Lan?

    i have an anamorphic (16:9) 25 minute film i want to export using Compression's H.264 Lan option (for web-posting purposes). What settings do I need for the frame size to keep it at its original proportions? i thought that 720 x 405 would do the trick, but it is slightly off, makes some of the images rather oval.
    thanks much....

    x & patrick,
    thanks for your help & desire for further clarification.
    i am dealing with a sequence composed largely of footage from a panasonic pv-gs500 using the widescreen mode. i don't know if it's "true" anamorphic or 16:9, but it's on an anamorphic timeline and looks just fine there.
    i experimented all nite last nite trying to get the right ratio for the compression type i mentioned. it looks like i finally succeeded using 740 x 416. i have no idea WHY this works, but when viewing the final exported product, it looks pretty perfect. i think it cuts off a teeny tiny bit of the height, not even noticeable.
    any explanation of WHY this ratio works would be welcome, to help along my understanding....

  • This is how you extract frames from video

    right then, in answer to many posts about how to get the individual frames from video, here is my solution. it seems to work with mpg files but it doesnt seem to work with any of the avi files i tried. not sure why it doesnt work with those. i have modified javas frame access.
    nothing is displayed except it prints which frame it is doing.
    if anyone wants to improve it, please do. i still dont understand fully how it works so i probably wont be able to answer many questions about it. anyway here it is:
    * @(#)FrameAccess.java 1.5 01/03/13
    * Copyright (c) 1999-2001 Sun Microsystems, Inc. All Rights Reserved.
    * Sun grants you ("Licensee") a non-exclusive, royalty free, license to use,
    * modify and redistribute this software in source and binary code form,
    * provided that i) this copyright notice and license appear on all copies of
    * the software; and ii) Licensee does not utilize the software in a manner
    * which is disparaging to Sun.
    * This software is provided "AS IS," without a warranty of any kind. ALL
    * EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES, INCLUDING ANY
    * IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR
    * NON-INFRINGEMENT, ARE HEREBY EXCLUDED. SUN AND ITS LICENSORS SHALL NOT BE
    * LIABLE FOR ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING
    * OR DISTRIBUTING THE SOFTWARE OR ITS DERIVATIVES. IN NO EVENT WILL SUN OR ITS
    * LICENSORS BE LIABLE FOR ANY LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT,
    * INDIRECT, SPECIAL, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER
    * CAUSED AND REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF THE USE OF
    * OR INABILITY TO USE SOFTWARE, EVEN IF SUN HAS BEEN ADVISED OF THE
    * POSSIBILITY OF SUCH DAMAGES.
    * This software is not designed or intended for use in on-line control of
    * aircraft, air traffic, aircraft navigation or aircraft communications; or in
    * the design, construction, operation or maintenance of any nuclear
    * facility. Licensee represents and warrants that it will not use or
    * redistribute the Software for such purposes.
    import java.awt.*;
    import javax.media.*;
    import javax.media.control.TrackControl;
    import javax.media.Format;
    import javax.media.format.*;
    import java.io.*;
    import javax.imageio.*;
    import javax.imageio.stream.*;
    import java.awt.image.*;
    import java.util.*;
    import javax.media.util.*;
    * Sample program to access individual video frames by using a
    * "pass-thru" codec. The codec is inserted into the data flow
    * path. As data pass through this codec, a callback is invoked
    * for each frame of video data.
    public class FrameAccess implements ControllerListener {
         Processor p;
         Object waitSync = new Object();
         boolean stateTransitionOK = true;
         public boolean alreadyPrnt = false;
         * Given a media locator, create a processor and use that processor
         * as a player to playback the media.
         * During the processor's Configured state, two "pass-thru" codecs,
         * PreAccessCodec and PostAccessCodec, are set on the video track.
         * These codecs are used to get access to individual video frames
         * of the media.
         * Much of the code is just standard code to present media in JMF.
         public boolean open(MediaLocator ml) {
              try {
                   p = Manager.createProcessor(ml);
              } catch (Exception e) {
                   System.err.println(
                        "Failed to create a processor from the given url: " + e);
                   return false;
              p.addControllerListener(this);
              // Put the Processor into configured state.
              p.configure();
              if (!waitForState(Processor.Configured)) {
                   System.err.println("Failed to configure the processor.");
                   return false;
              // So I can use it as a player.
              p.setContentDescriptor(null);
              // Obtain the track controls.
              TrackControl tc[] = p.getTrackControls();
              if (tc == null) {
                   System.err.println(
                        "Failed to obtain track controls from the processor.");
                   return false;
              // Search for the track control for the video track.
              TrackControl videoTrack = null;
              for (int i = 0; i < tc.length; i++) {
                   if (tc.getFormat() instanceof VideoFormat) videoTrack = tc[i];
                   else     tc[i].setEnabled(false);
              if (videoTrack == null) {
                   System.err.println("The input media does not contain a video track.");
                   return false;
              String videoFormat = videoTrack.getFormat().toString();
              Dimension videoSize = parseVideoSize(videoFormat);
              System.err.println("Video format: " + videoFormat);
              // Instantiate and set the frame access codec to the data flow path.
              try {
                   Codec codec[] = { new PostAccessCodec(videoSize)};
                   videoTrack.setCodecChain(codec);
              } catch (UnsupportedPlugInException e) {
                   System.err.println("The process does not support effects.");
              // Realize the processor.
              p.prefetch();
              if (!waitForState(Processor.Prefetched)) {
                   System.err.println("Failed to realise the processor.");
                   return false;
              p.start();
              return true;
         /**parse the size of the video from the string videoformat*/
         public Dimension parseVideoSize(String videoSize){
              int x=300, y=200;
              StringTokenizer strtok = new StringTokenizer(videoSize, ", ");
              strtok.nextToken();
              String size = strtok.nextToken();
              StringTokenizer sizeStrtok = new StringTokenizer(size, "x");
              try{
                   x = Integer.parseInt(sizeStrtok.nextToken());
                   y = Integer.parseInt(sizeStrtok.nextToken());
              } catch (NumberFormatException e){
                   System.out.println("unable to find video size, assuming default of 300x200");
              System.out.println("Image width = " + String.valueOf(x) +"\nImage height = "+ String.valueOf(y));
              return new Dimension(x, y);
         * Block until the processor has transitioned to the given state.
         * Return false if the transition failed.
         boolean waitForState(int state) {
              synchronized (waitSync) {
                   try {
                        while (p.getState() != state && stateTransitionOK)
                             waitSync.wait();
                   } catch (Exception e) {
              return stateTransitionOK;
         * Controller Listener.
         public void controllerUpdate(ControllerEvent evt) {
              if (evt instanceof ConfigureCompleteEvent
                   || evt instanceof RealizeCompleteEvent
                   || evt instanceof PrefetchCompleteEvent) {
                   synchronized (waitSync) {
                        stateTransitionOK = true;
                        waitSync.notifyAll();
              } else if (evt instanceof ResourceUnavailableEvent) {
                   synchronized (waitSync) {
                        stateTransitionOK = false;
                        waitSync.notifyAll();
              } else if (evt instanceof EndOfMediaEvent) {
                   p.close();
                   System.exit(0);
         * Main program
         public static void main(String[] args) {
              if (args.length == 0) {
                   prUsage();
                   System.exit(0);
              String url = args[0];
              if (url.indexOf(":") < 0) {
                   prUsage();
                   System.exit(0);
              MediaLocator ml;
              if ((ml = new MediaLocator(url)) == null) {
                   System.err.println("Cannot build media locator from: " + url);
                   System.exit(0);
              FrameAccess fa = new FrameAccess();
              if (!fa.open(ml))
                   System.exit(0);
         static void prUsage() {
              System.err.println("Usage: java FrameAccess <url>");
         * Inner class.
         * A pass-through codec to access to individual frames.
         public class PreAccessCodec implements Codec {
              * Callback to access individual video frames.
              void accessFrame(Buffer frame) {
                   // For demo, we'll just print out the frame #, time &
                   // data length.
                   long t = (long) (frame.getTimeStamp() / 10000000f);
                   System.err.println(
                        "Pre: frame #: "
                             + frame.getSequenceNumber()
                             + ", time: "
                             + ((float) t) / 100f
                             + ", len: "
                             + frame.getLength());
              * The code for a pass through codec.
              // We'll advertize as supporting all video formats.
              protected Format supportedIns[] = new Format[] { new VideoFormat(null)};
              // We'll advertize as supporting all video formats.
              protected Format supportedOuts[] = new Format[] { new VideoFormat(null)};
              Format input = null, output = null;
              public String getName() {
                   return "Pre-Access Codec";
              //these dont do anything
              public void open() {}
              public void close() {}
              public void reset() {}
              public Format[] getSupportedInputFormats() {
                   return supportedIns;
              public Format[] getSupportedOutputFormats(Format in) {
                   if (in == null)
                        return supportedOuts;
                   else {
                        // If an input format is given, we use that input format
                        // as the output since we are not modifying the bit stream
                        // at all.
                        Format outs[] = new Format[1];
                        outs[0] = in;
                        return outs;
              public Format setInputFormat(Format format) {
                   input = format;
                   return input;
              public Format setOutputFormat(Format format) {
                   output = format;
                   return output;
              public int process(Buffer in, Buffer out) {
                   // This is the "Callback" to access individual frames.
                   accessFrame(in);
                   // Swap the data between the input & output.
                   Object data = in.getData();
                   in.setData(out.getData());
                   out.setData(data);
                   // Copy the input attributes to the output
                   out.setFlags(Buffer.FLAG_NO_SYNC);
                   out.setFormat(in.getFormat());
                   out.setLength(in.getLength());
                   out.setOffset(in.getOffset());
                   return BUFFER_PROCESSED_OK;
              public Object[] getControls() {
                   return new Object[0];
              public Object getControl(String type) {
                   return null;
         public class PostAccessCodec extends PreAccessCodec {
              // We'll advertize as supporting all video formats.
              public PostAccessCodec(Dimension size) {
                   supportedIns = new Format[] { new RGBFormat()};
                   this.size = size;
              * Callback to access individual video frames.
              void accessFrame(Buffer frame) {
                   // For demo, we'll just print out the frame #, time &
                   // data length.
                   if (!alreadyPrnt) {
                        BufferToImage stopBuffer = new BufferToImage((VideoFormat) frame.getFormat());
                        Image stopImage = stopBuffer.createImage(frame);
                        try {
                             BufferedImage outImage = new BufferedImage(size.width, size.height, BufferedImage.TYPE_INT_RGB);
                             Graphics og = outImage.getGraphics();
                             og.drawImage(stopImage, 0, 0, size.width, size.height, null);
                             //prepareImage(outImage,rheight,rheight, null);
                             Iterator writers = ImageIO.getImageWritersByFormatName("jpg");
                             ImageWriter writer = (ImageWriter) writers.next();
                             //Once an ImageWriter has been obtained, its destination must be set to an ImageOutputStream:
                             File f = new File(frame.getSequenceNumber() + ".jpg");
                             ImageOutputStream ios = ImageIO.createImageOutputStream(f);
                             writer.setOutput(ios);
                             //Finally, the image may be written to the output stream:
                             //BufferedImage bi;
                             //writer.write(imagebi);
                             writer.write(outImage);
                             ios.close();
                        } catch (IOException e) {
                             System.out.println("Error :" + e);
                   //alreadyPrnt = true;
                   long t = (long) (frame.getTimeStamp() / 10000000f);
                   System.err.println(
                        "Post: frame #: "
                             + frame.getSequenceNumber()
                             + ", time: "
                             + ((float) t) / 100f
                             + ", len: "
                             + frame.getLength());
              public String getName() {
                   return "Post-Access Codec";
              private Dimension size;

    The quality of the produced video from this example is very poor.
    It comes to huuuuge surprise the following fact.
    If you comment the line where you set the PostAccessCodec, the chain of the codecs is:
    MPEG-1 decoder -> YUV2RGB -> Direct Draw Renderer. ( The one used from the system to decode and render)
    If you run the example purely as is above you get the following sequence(as long with the poor quality):
    MPEG-1 decoder -> YUV2RGB -> Windows GDI Renderer.
    So you say lets set another Renderer. So
    you add the following line videoTracker.setRenderer( new DDRenderer() )
    What comes to a surprise is the following chain of codecs:
    MPEG-1 decoder -> YUV2RGB -> Post Codec -> Java RGB Converter - > DDRenderer
    The quality now may be perfect but video runs to slow. The surprising thing here is that even though we have set the outputFormat of the PostAccessFrame codec to RGBFormat the system converts it again to RGB through codec Java RGB Format.
    After searching a lot and reaching the conclusion that the deference between the 2 RGB's is their sizes I sudently was brought in front of a method called grabFrame(). Bels started ringing inside my head. Starts were comming up. Looking at the definition of the class com.sun.media.renderer.video.DDRenderer I descovered that this damn class implements the FrameGrabbingControl Interface. What the f.....? The problem that consumed 4 days of my life and multiplied with 10 to give hours has finally come to an and.
    Summing up the solution for grabbing frames is this!!!!!
    DDRenderer renderer = new DDRenderer();
    videoTrack.setRenderer( renderer );
    and in your actionPerformed implementation
    FrameGrabbingControl fr = (FrameGrabbingControl)renderer.getControl( "javax.media.control.FrameGrabbingControl");
    Buffer frame = fr.grabFrame();
    The following stuff ...are stated in FrameAccess
    --Sniper

Maybe you are looking for

  • Problem with VirtualBox Appliance Image Solaris 10 10/09 (solaris_10_u8)

    I'm running Virtualbox 3.1.2 r56127 on Mac OS X Leopard 10.5.8. I click File > Import Appliance and choose solaris_10_u8.ovf. I leave all the default settings and click Import. I then receive the error "Cannot register the machine 'Solaris_10_u8' bec

  • Itunes9 crashes when CD put into computer

    Hello Everytime i put a CD into my computer itunes crashes.So its impossible for me to put any of my music onto my nano. Ive tried reinstalling itunes and quick time but i keep getting the same message "itunes has stopped working". Ive even tried ins

  • Need help ASAP fixing my BB Torch. Anyone???

    I was just getting off a call with my provider's customer's service when my BB Torch went completely blank on me. It has not been wanting to turn on for me even when on the charger. I tried every possible basic thing to try and fix it but nothing see

  • Changing my primary email address

    hi, i have just moved over to bt and they have set up a primary email address that i have not asked for can any one tell me how i change this to something of my own choice . thanks wayne

  • Flash video skins

    Are there any plug ins I can use to add more options to the skins that are currently available in CS3?  I need a skin that displays UNDER the video, not on top of it and with timing and video length.  I am not a programmer, I'm just inserting flash v