OSMF 1.5 - Buffering UI - SerialElement with PreloadingProxyElement

Hoping someone can help me with a few issues that I am seeing. I'm starting to think there is a bug with the buffering and using PreloadingProxyElement, but it's possible that I am using it in the wrong way.
The first question, is there a concise and self contained example that explains the method for monitoring the buffering of a video? I know how to determine if the player is buffering using the buffer traits, but trying to get some sort of progress and percentage is eluding me.
That being said I have a video player that supports SerialElement videos if there is more then one and I am using the LightweightVideoElement along with PreloadingProxyElement and I am getting this error when there is a slow connection:
TypeError: Error #2007: Parameter listener must be non-null.
at flash.events::EventDispatcher/addEventListener()
at MethodInfo-2070()
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at org.osmf.media::MediaElement/setLocalTrait()
at org.osmf.media::MediaElement/addTrait()
at MethodInfo-1688()
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at org.osmf.traits::TimeTrait/durationChangeEnd()
at org.osmf.traits::TimeTrait/setDuration()
at org.osmf.net::NetStreamTimeTrait/onMetaData()
at Function/http://adobe.com/AS3/2006/builtin::apply()
at org.osmf.net::NetClient/invokeHandlers()
at MethodInfo-767()
Here's the code I am using to create the videos from an XML list of videos (keep in mind I was using only one video but I doubt that would be an issue):
_videoElements = new Vector.<LightweightVideoElement>();
_serialElement = new SerialElement();
for (var i : int = 0; i < videoList.length(); i++) {
_videoElements[i] = new LightweightVideoElement();
_videoElements[i].resource = new URLResource(videoList[i].src);
_serialElement.addChild(new PreloadingProxyElement(_videoElements[i]));
_videoElements[i].addMetadata(LayoutMetadata.LAYOUT_NAMESPACE, layoutMetadata);
_videoElements[i].addEventListener(MediaElementEvent.TRAIT_ADD, onMediaElementTraitsChange);
//_videoElements[i].addEventListener(BufferEvent.BUFFERING_CHANGE, onBufferUpdated);
_videoElements[i].smoothing = true;
It seems like the traits are not properly being inited and depending on how slow the connection is, it's creating an issue. I moved to a single video configuration just as a quick fix and it seems to be fine using this code:
var media:VideoElement = new VideoElement( new URLResource(videoList[0].src));
media.addMetadata(LayoutMetadata.LAYOUT_NAMESPACE, layoutMetadata);
media.addEventListener(MediaElementEvent.TRAIT_ADD, onMediaElementTraitsChange);
media.smoothing = true;
Wondering if this is a bug when using buffering with the proxy element and Serial playback?
Any insight into any of my questions would be greatly appreciated.
Cheers,
Donovan

Hi,
Interesting bug indeed. Can you please log a bug with the details you provided on our bug system, http://bugs.adobe.com/jira/browse/FM so we can better track this issue? It will be also useful if you will give us also the code used for switching to full screen.
Thanks,
Gelu

Similar Messages

  • [svn:osmf:] 14765: Put gate around autoRewind code, to prevent possibility of an infinite loop ( which could happen if you create a SerialElement with the last child a DurationElement of duration zero ).

    Revision: 14765
    Revision: 14765
    Author:   [email protected]
    Date:     2010-03-15 13:48:04 -0700 (Mon, 15 Mar 2010)
    Log Message:
    Put gate around autoRewind code, to prevent possibility of an infinite loop (which could happen if you create a SerialElement with the last child a DurationElement of duration zero).
    Modified Paths:
        osmf/trunk/framework/OSMF/org/osmf/media/MediaPlayer.as

    Step by step, how did you arrive at seeing this agreement?

  • NI 6602 buffered pulse width and buffered period measurement with 2 counters synchronized

    I modify the example buffered event counting with 8 counters for use with 2.I obtain error 10600 or 10455 and never the waited values.Can you give me a VI example . Thank you for your help

    What changes did you make to the VI? If you attached the altered example I could take a look at it. The example program for using 8 counters performs some configuration that you won't need for just two counters. For instance, if you just want to use counters 0 and 1, you won't need to perform pad synchronization.
    I've altered the program to use with two counters and attached it to this response. Hopefully this will work for you.
    Regards,
    Todd D.
    NI Applications Engineer
    Attachments:
    Buffered_Event_Counting_(2).vi ‏126 KB

  • Use buffering and psp with datasocket-VIs and without any binding and shared variable node

    Hello,
    I'm using LV 8.5.
    I'm trying to develop a multiplatform (windows and mac os x) and multi-computer application. II want to get executables running on each device, communicating through the network. Communication process includes datas (such as images) and events messages (something like "Hello, I got an error" or "youyou, my work is done" or "I'm hereeeee!!!!...."). I do need a communication without any loss of data.
    I worked a lot and wanted to test a psp-based design, without any binding nor shared variable node (mac os...) using data socket VIs and SVE buffering.
    I managed to :
    - deploy shared variable library dynamically (even in an executable)
    - communicate between two PCs with datasocket VIs
    However, I never managed to enjoy buffering (even locally with one VI doing the deployment and writing datas and another one for reading).
    I worked hard (dynamic buffering setting, dynamic buffering watching like in  http://zone.ni.com/reference/en-XX/help/371361D-01/lvconcepts/buffering_data/ and in the example "DS send image" and "DS receive image" in the labview examples, trying to use "?sync=true" in the URL, etc...) but no way to get things work.
    I attached a jpeg of an example of receiver and sender. I use wait commands in both receiver and sender to test buffering
    Receiver do receive datas (the last written) but buffering doesn't work.
    Did somebody did that before ? (better than me...)
    Thanks
    Bo
    Attachments:
    Sender.JPG ‏87 KB
    Receiver.JPG ‏96 KB

    Hello,
    Indeed my problem has been solved. My error : in the While loop of the receiver VI, I always reactualize the PacketsMaxBuffer and OctetsMawBuffer parameters, what resets the buffer and make it appears ineffective.
    I now set  the PacketsMaxBuffer and OctetsMawBuffer values only once at the begining of the VI and the psp buffering works perfectly.
    Sorry for the desagreement...
    Bo

  • [svn:osmf:] 13027: Fix bug in SerialElement where the durationReached event was dispatched on a child-to-child transition due to the base class thinking that the duration had been reached  (since the second child didn't have a duration yet).

    Revision: 13027
    Revision: 13027
    Author:   [email protected]
    Date:     2009-12-16 18:09:46 -0800 (Wed, 16 Dec 2009)
    Log Message:
    Fix bug in SerialElement where the durationReached event was dispatched on a child-to-child transition due to the base class thinking that the duration had been reached (since the second child didn't have a duration yet).  Injection from trait refactoring.
    Modified Paths:
        osmf/trunk/framework/MediaFramework/org/osmf/composition/CompositeTimeTrait.as

    http://ww2.cs.fsu.edu/~rosentha/linux/2.6.26.5/docs/DocBook/libata/ch07.html#excatATAbusErr wrote:
    ATA bus error means that data corruption occurred during transmission over ATA bus (SATA or PATA). This type of errors can be indicated by
    ICRC or ABRT error as described in the section called “ATA/ATAPI device error (non-NCQ / non-CHECK CONDITION)”.
    Controller-specific error completion with error information indicating transmission error.
    On some controllers, command timeout. In this case, there may be a mechanism to determine that the timeout is due to transmission error.
    Unknown/random errors, timeouts and all sorts of weirdities.
    As described above, transmission errors can cause wide variety of symptoms ranging from device ICRC error to random device lockup, and, for many cases, there is no way to tell if an error condition is due to transmission error or not; therefore, it's necessary to employ some kind of heuristic when dealing with errors and timeouts. For example, encountering repetitive ABRT errors for known supported command is likely to indicate ATA bus error.
    Once it's determined that ATA bus errors have possibly occurred, lowering ATA bus transmission speed is one of actions which may alleviate the problem.
    I'd also add; make sure you have good backups when ATA errors are frequent

  • M-Series Buffered Event Counting with DMA -- gating problem

    Hi --
    I am implementing DMA-based buffered event counting on a PCIe-6259 board.  I use G0_Out as the gate for G1, which counts events on a PFI pin.   So by setting the speed of G0, I get an event count (either cumulative or non-cumulative) on a periodic basis, which is directly DMA'd to my buffer, and synchronized with other i/o operations.
    This is working well right now, except for one problem, which is that the I only get data if there is at least one  source edge between gates.  i.e. if there are no edges, nothing gets pumped to the dma buffer.
    I am guessing that a stale data error is somehow choking off the DMA transfer from the counter.   Is that possible?
    Is there some magic that I need to do to avoid this, because for this application, especially if I am counting cumulatively, I don't care about a missing edge, but I do care if the dma transfers get out of phase with the rest of my timing.
    Thanks in advance for any help!
    --spg
    Here is a snippet of the code that sets up the event counting on G1, partly based on gpctex6.cpp:
    const int sDMASelect[] = {1,2,4,8,3,5};
    // source:  pfi, or -1 for 20Khz clock
    void eventTimerSetup(tMSeries *board, tTIO *tio, int dmaChannel, bool cumulative, int source)
        int sourceSelect = (source==-1) ? 0 : (source+1);
        //MSeries.CTR.Source
        tio->G1_Input_Select.setG1_Source_Select(sourceSe​lect); // (pfi+1) or 20Khz=0
        tio->G1_Input_Select.setG1_Source_Polarity(0); //rising=0
        tio->G1_Input_Select.setG1_OR_Gate(0);
        tio->G1_Input_Select.flush();
        //MSeries.CTR.Gate
        tio->G1_Input_Select.setG1_Gate_Select(20); //the G_OUT signal from other clock=20
        tio->G1_Input_Select.setG1_Output_Polarity(0); //active high=0
        tio->G1_Input_Select.flush();
        //MSeries.CTR.IncrementRegisters
        tio->G1_AutoIncrement.writeRegister(0);
        //MSeries.CTR.InitialCountRegisters
        tio->G1_Mode.writeG1_Load_Source_Select(tTIO::tG1​_Mode::kG1_Load_Source_SelectLoad_A);
        tio->G1_Load_A.writeRegister(0);
        tio->G1_Command.writeG1_Load(1);
        tio->G1_Load_B.writeRegister(0);
        tio->G1_Load_A.writeRegister(0);
        tio->G1_Command.setG1_Bank_Switch_Enable(tTIO::tG​1_Command::kG1_Bank_Switch_EnableBank_X);
        tio->G1_Command.setG1_Bank_Switch_Mode(tTIO::tG1_​Command::kG1_Bank_Switch_ModeGate);
        tio->G1_Command.flush();
        //MSeries.CTR.ApplicationRegisters
        tio->G1_Input_Select.setG1_Gate_Select_Load_Sourc​e(0);
        tio->G1_Mode.setG1_Reload_Source_Switching(tTIO::​tG1_Mode::kG1_Reload_Source_SwitchingAlternate);
        tio->G1_Mode.setG1_Loading_On_Gate(cumulative ? tTIO::tG1_Mode::kG1_Loading_On_GateNo_Reload : tTIO::tG1_Mode::kG1_Loading_On_GateReload_On_Stop_​Gate);
        tio->G1_Mode.setG1_Loading_On_TC(tTIO::tG1_Mode::​kG1_Loading_On_TCRollover_On_TC);
        tio->G1_Mode.setG1_Gating_Mode (tTIO::tG1_Mode::kG1_Gating_ModeEdge_Gating_Active​_High);
        tio->G1_Mode.setG1_Gate_On_Both_Edges (tTIO::tG1_Mode::kG1_Gate_On_Both_EdgesBoth_Edges_​Disabled);
        tio->G1_Mode.setG1_Trigger_Mode_For_Edge_Gate(tTI​O::tG1_Mode::kG1_Trigger_Mode_For_Edge_GateGate_Do​es_Not_Stop);
        tio->G1_Mode.setG1_Stop_Mode(tTIO::tG1_Mode::kG1_​Stop_ModeStop_On_Gate);
        tio->G1_Mode.setG1_Counting_Once(tTIO::tG1_Mode::​kG1_Counting_OnceNo_HW_Disarm);
        tio->G1_Second_Gate.setG1_Second_Gate_Gating_Mode​(0);
        tio->G1_Input_Select.flush();
        tio->G1_Mode.flush();
        tio->G1_Second_Gate.flush();
        //MSeries.CTR.UpDown.Registers
        tio->G1_Command.writeG1_Up_Down(tTIO::tG1_Command​::kG1_Up_DownSoftware_Up); //kG1_Up_DownSoftware_Down
        //MSeries.CTR.OutputRegisters
        tio->G1_Mode.writeG1_Output_Mode(tTIO::tG1_Mode::​kG1_Output_ModePulse);
        tio->G1_Input_Select.writeG1_Output_Polarity(0);
        //MSeries.CTR.BufferEnable
        board->G1_DMA_Config.writeG1_DMA_Reset(1);
        board->G1_DMA_Config.setG1_DMA_Write(0);  
        board->G1_DMA_Config.setG1_DMA_Int_Enable(0);
        board->G1_DMA_Config.setG1_DMA_Enable(1);   
        board->G1_DMA_Config.flush();
        tio->G1_Counting_Mode.setG1_Encoder_Counting_Mode​(0);
        tio->G1_Counting_Mode.setG1_Alternate_Synchroniza​tion(0);
        tio->G1_Counting_Mode.flush();
        //MSeries.CTR.EnableOutput
        //board->Analog_Trigger_Etc.setGPFO_1_Output_Enab​le(tMSeries::tAnalog_Trigger_Etc::kGPFO_1_Output_E​nableOutput);
        //board->Analog_Trigger_Etc.setGPFO_1_Output_Sele​ct(tMSeries::tAnalog_Trigger_Etc::kGPFO_1_Output_S​electG_OUT);
        //board->Analog_Trigger_Etc.flush();
        //MSeries.CTR.StartTriggerRegisters
        tio->G1_MSeries_Counting_Mode.writeG1_MSeries_HW_​Arm_Enable(0);    
        board->G0_G1_Select.writeG1_DMA_Select(sDMASelect​[dmaChannel]);   
        tio->G1_Command.writeG1_Arm(1); // arm it
    Scott Gillespie
    http://www.appliedbrain.com
    scott gillespie
    applied brain, inc.
    Solved!
    Go to Solution.

    Okay, I have it working now.  In addition to your suggested changes, I had to remove the following line:
    tio->G1_MSeries_Counting_Mode.writeG1_MSeries_HW_A​rm_Enable(0);    
    It appears that writing something to MSeries_Counting_Mode causes that register to supersede the Counting_Mode register.  Is that right?
    So code that now works for  me is listed below.
    thanks Tom!
    -spg
    void eventCounterSetup(tMSeries *board, tTIO *tio, int dmaChannel, bool cumulative, int source) // pfi, or -1 for 20Khz clock
    int sourceSelect = (source==-1) ? 0 : (source+1);
    //MSeries.CTR.Source
    tio->G1_Input_Select.setG1_Source_Select(sourceSel​ect); // (pfi+1) or 20Khz=0
    tio->G1_Input_Select.setG1_Source_Polarity(0); //rising=0
    tio->G1_Input_Select.setG1_OR_Gate(0);
    tio->G1_Input_Select.flush();
    //MSeries.CTR.Gate
    tio->G1_Input_Select.setG1_Gate_Select(20); //the G_OUT signal from other clock=20
    tio->G1_Input_Select.setG1_Output_Polarity(0); //active high=0
    tio->G1_Input_Select.flush();
    //MSeries.CTR.IncrementRegisters
    tio->G1_AutoIncrement.writeRegister(0);
    //MSeries.CTR.InitialCountRegisters
    tio->G1_Mode.writeG1_Load_Source_Select(tTIO::tG1_​Mode::kG1_Load_Source_SelectLoad_A);
    tio->G1_Load_A.writeRegister(0);
    tio->G1_Command.writeG1_Load(1);
    tio->G1_Load_B.writeRegister(0);
    tio->G1_Load_A.writeRegister(0);
    tio->G1_Command.setG1_Bank_Switch_Enable(tTIO::tG1​_Command::kG1_Bank_Switch_EnableBank_X);
    tio->G1_Command.setG1_Bank_Switch_Mode(tTIO::tG1_C​ommand::kG1_Bank_Switch_ModeGate);
    tio->G1_Command.flush();
    //MSeries.CTR.ApplicationRegisters
    tio->G1_Input_Select.setG1_Gate_Select_Load_Source​(0);
    tio->G1_Mode.setG1_Reload_Source_Switching(tTIO::t​G1_Mode::kG1_Reload_Source_SwitchingAlternate);
    tio->G1_Mode.setG1_Loading_On_Gate(cumulative ? tTIO::tG1_Mode::kG1_Loading_On_GateNo_Reload : tTIO::tG1_Mode::kG1_Loading_On_GateReload_On_Stop_​Gate);
    tio->G1_Mode.setG1_Loading_On_TC(tTIO::tG1_Mode::k​G1_Loading_On_TCRollover_On_TC);
    tio->G1_Mode.setG1_Gating_Mode (tTIO::tG1_Mode::kG1_Gating_ModeEdge_Gating_Active​_High);
    tio->G1_Mode.setG1_Gate_On_Both_Edges (tTIO::tG1_Mode::kG1_Gate_On_Both_EdgesBoth_Edges_​Disabled);
    tio->G1_Mode.setG1_Trigger_Mode_For_Edge_Gate(tTIO​::tG1_Mode::kG1_Trigger_Mode_For_Edge_GateGate_Doe​s_Not_Stop);
    tio->G1_Mode.setG1_Stop_Mode(tTIO::tG1_Mode::kG1_S​top_ModeStop_On_Gate);
    tio->G1_Mode.setG1_Counting_Once(tTIO::tG1_Mode::k​G1_Counting_OnceNo_HW_Disarm);
    tio->G1_Second_Gate.setG1_Second_Gate_Gating_Mode(​0);
    tio->G1_Input_Select.flush();
    tio->G1_Mode.flush();
    tio->G1_Second_Gate.flush();
    //MSeries.CTR.UpDown.Registers
    tio->G1_Command.writeG1_Up_Down(tTIO::tG1_Command:​:kG1_Up_DownSoftware_Up); //kG1_Up_DownSoftware_Down
    //MSeries.CTR.OutputRegisters
    tio->G1_Mode.writeG1_Output_Mode(tTIO::tG1_Mode::k​G1_Output_ModePulse);
    tio->G1_Input_Select.writeG1_Output_Polarity(0);
    //MSeries.CTR.BufferEnable
    board->G1_DMA_Config.writeG1_DMA_Reset(1);
    board->G1_DMA_Config.setG1_DMA_Write(0);  
    board->G1_DMA_Config.setG1_DMA_Int_Enable(0);
    board->G1_DMA_Config.setG1_DMA_Enable(1);   
    board->G1_DMA_Config.flush();
    // from Tom:
    // The "magic" you need is referred to as synchronous counting mode (or Duplicate Count Prevention in NI-DAQmx).  
    // Try setting G1_Encoder_Counting_Mode to 6 (synchronous source mode) and G1_Alternate_Synchronization to 1 (enabled).
    tio->G1_Counting_Mode.setG1_Encoder_Counting_Mode(​6); // 0
    tio->G1_Counting_Mode.setG1_Alternate_Synchronizat​ion(1); // 0
    tio->G1_Counting_Mode.flush();
    board->G0_G1_Select.writeG1_DMA_Select(sDMASelect[​dmaChannel]);   
    tio->G1_Command.writeG1_Arm(1); // arm it
    scott gillespie
    applied brain, inc.

  • Benchmarks for Buffered Counter Input with X-Series Devices

    Hi,
    Does anyone know the maximum transfer rate (using dma) for the x-series cards? 
    I'm looking for data simillar to the one in this link:
    http://digital.ni.com/public.nsf/allkb/72A7E41EE5A8756A862571DA0076F1D7?OpenDocument
    More specifically I want to know the transfer rate for the PCIe 6343.
    Thank you,
    Eyal
    Solved!
    Go to Solution.

    I benchmarked 8MS/s on a single channel on a USB-6353 (should have similar performance to the USB-6356/66) with a buffered counter input task. This was only a 10 minute test on my Dell E6400 laptop ( Windows 7 32 bit, Dual core P8600, 4GB memory) so a sustained 24/7 rate is likely less. Also, I wasn't doing much with the data, just displaying it in an array. This is pretty much topping out USB streaming on this system (32MB/s) so I wouldn't expect to get higher. I wasn't running much else in the back ground (Explorer, Powerpoint, Lotus Notes) and CPU was at ~20%.
    Hope this helps,   
    Andrew S
    Getting Started with NI-DAQmx
    Measurement Fundamentals

  • [svn:osmf:] 13228: Updating ExamplePlayer to work with the latest API changes.

    Revision: 13228
    Revision: 13228
    Author:   [email protected]
    Date:     2009-12-30 04:33:34 -0800 (Wed, 30 Dec 2009)
    Log Message:
    Updating ExamplePlayer to work with the latest API changes.
    Modified Paths:
        osmf/trunk/apps/samples/framework/ExamplePlayer/org/osmf/examples/chromeless/ChromelessPl ayerElement.as
        osmf/trunk/apps/samples/framework/ExamplePlayer/org/osmf/examples/text/TextElement.as
        osmf/trunk/apps/samples/framework/ExamplePlayer/org/osmf/examples/traceproxy/TraceListene rProxyElement.as
    Added Paths:
        osmf/trunk/apps/samples/framework/ExamplePlayer/org/osmf/examples/text/TextDisplayObjectT rait.as
    Removed Paths:
        osmf/trunk/apps/samples/framework/ExamplePlayer/org/osmf/examples/text/TextViewTrait.as

    Revision: 13228
    Revision: 13228
    Author:   [email protected]
    Date:     2009-12-30 04:33:34 -0800 (Wed, 30 Dec 2009)
    Log Message:
    Updating ExamplePlayer to work with the latest API changes.
    Modified Paths:
        osmf/trunk/apps/samples/framework/ExamplePlayer/org/osmf/examples/chromeless/ChromelessPl ayerElement.as
        osmf/trunk/apps/samples/framework/ExamplePlayer/org/osmf/examples/text/TextElement.as
        osmf/trunk/apps/samples/framework/ExamplePlayer/org/osmf/examples/traceproxy/TraceListene rProxyElement.as
    Added Paths:
        osmf/trunk/apps/samples/framework/ExamplePlayer/org/osmf/examples/text/TextDisplayObjectT rait.as
    Removed Paths:
        osmf/trunk/apps/samples/framework/ExamplePlayer/org/osmf/examples/text/TextViewTrait.as

  • [svn:osmf:] 10644: fixed some layout issues with the MediaPlayerWrapper.

    Revision: 10644
    Author:   [email protected]
    Date:     2009-09-28 09:36:33 -0700 (Mon, 28 Sep 2009)
    Log Message:
    fixed some layout issues with the MediaPlayerWrapper.
    Modified Paths:
        osmf/trunk/apps/samples/framework/MediaPlayer/src/com/adobe/strobe/players/MediaPlayerWra pper.as
        osmf/trunk/apps/samples/framework/MetadataSample/src/MetadataSample.mxml
    Property Changed:
        osmf/trunk/libs/VAST/

    Hi Chanh
    I have not come upto the level of testing the file generated with IRS.  Will keep you posted what happens there.
    Shannon,
    Apparently the new version of 1546868 fixes the issue for box number 7.  But if the amounts are huge in box numbers 1 or 3 or 15a (they use these in my client) then the amount overflows to the nearby box.  So we have again opened an issue again with SAP & will keep you posted withwhat SAP comes up with.
    Thanks
    Regards
    Morgan

  • Buffered ring acquisition with IMAQ 1394 2.0 (beta)

    Hi,
    the IMAQ 1394 low level buffer access topic comes up again. National Instruments promised that low level buffer
    access will be feasible in the 2.0 (beta) version of the IMAQ 1394 driver. However, I still encounter problems.
    I want to run a continuous ring acquisition. The ring shall consist of 40 buffer cells. I configure the acquisition
    using IMAQ 1394 configure acquisition.vi and wiring "40" to "number of buffers" and "continuous" to "continuous?".
    If I am testing the ring, it appears that the ring only has 20 buffer cells. After an image had been written into cell
    no. 19, the next image is written into cell no. 0 and not into no. 20.
    Is there a maximum number of buffer cells implemented? In the online help, nothing is written about such a fact. In
    addition, the help statements are quite puzzling. There they write:
    Use the Continuous? and Number of buffers parameters to select the type of acquisition that you want to configure,
    as follows:
    Snap One-shot; one buffer
    Sequence One-shot; multiple buffers
    Grab Continuous; one buffer
    The combination of "continuous" and "one buffer"
    sounds rather antithetically. Is any beta tester around there who can make sense out of this?
    Thankful for any hint,
    Peter

    What I want to do is to setup the camera and store the settings to the camera memory and do a flat-field calibration of the camera (and maybe also store the calibration image in the camera).
    I will use your method to handle the default settings. Thanks!!!
    Then I will remove the camera from the calibration setup and use it in a machine performing measurements not using LabVIEW. I could make all the setup in the machine again but that would mean more work than to use LabVIEWs functionality (I'm just lazy).
    I just want to be sure that all settings have reached the camera memory and that they were stored there. It does not seem that the Property Node communicates directly with the camera like the "IMAQ1394 Write Registers" command does.
    Richard

  • [svn:osmf:] 16225: 856 - Fixed one issue with Example players SWF.

    Revision: 16225
    Revision: 16225
    Author:   [email protected]
    Date:     2010-05-19 14:55:45 -0700 (Wed, 19 May 2010)
    Log Message:
    856 - Fixed one issue with Example players SWF.
    Modified Paths:
        osmf/trunk/apps/samples/framework/ExamplePlayer/org/osmf/examples/AllExamples.as

    BUMP, just incase its been missed by a new board member

  • NI 6602 buffered pulse width and buffered period measurement with 2 counters synchronized during a defined time "

    it is OK for 2 counters if I count a defined number but I would like the values during a time for example 10 s .It seems that the acquisition is not complete.Is a problem of circular buffer, time out error .....?

    Hi:
    I am assuming that you are using 2 counters to generate a finite pulse train for 10 seconds and are using this pulse train to gate the other counter. If this is your setup, you should not have a problem in retrieving the correct number of readings.
    You can monitor to the backlog and number read by wiring indicators to Read Buffer VI. Please also look at the Count Buffered Edges (DAQ-TIO).vi examples to learn how you can correctly set up a buffered counter acquisition.
    To open up the example, click on Help -> Find Examples -> Hardware Input & Output -> Traditional DAQ -> Counter -> NI-TIO.
    Regards,
    Bharat Sandhu
    Applications Engineer
    National Instruments
    Penny

  • Constant buffering on website with vista laptop

    I have 5 computers on a network. All work seamlessly but for
    my laptop. I'm thinking its flash player 9 that's causing the
    problem. Uninstalled and reinstalled player more than once and
    problem still occurs. very frustrating. Help appreciated.

    Apparently the proper procedure for upgrading to the Adobe
    Flash Player 9 is to first completely uninstall the current player
    and do a fresh install of the new player, otherwise there could be
    problems.
    Also, you cannot really uninstall using the control panel
    because all of the files may not be deleted unless you are
    knowledgable enough to know that all programs which may be running
    flash player must all be completely shut down.
    I'm not sure why Adobe doesn't tell people this. I discovered
    it by accident myself. Here is the info I found at another source -
    the links provided, interestingly, are all from ADOBE!
    Apparently, it is not enough to apply a straight upgrade to
    Flash. You actually have to uninstall Flash in it's entirety, and
    then do a fresh Flash install. There's a specific program for this
    which can be downloaded from Adobe (the makers of Flash) at:
    Windows Uninstall File:
    http://download.macromedia.com/pub/flashplayer/current/uninstall_flash_player.exe
    Mac OS X Uninstall File:
    http://download.macromedia.com/pub/flashplayer/installers/8/uninstall_flash_player_osx.dmg
    To understand more about how to unistall your Flash Player
    and plugins read the following article:
    http://www.adobe.com/cfusion/knowledgebase/index.cfm?id=tn_14157
    To check your version of Flash and get the latest and
    greatest Flash players, go to:
    http://www.adobe.com/shockwave/welcome/

  • Buffered Edge Counting 20 MHz with duplicate count prevention

    Dear all,
    I went through the specs of several boards (M- series, S- and E- series, 6602 etc...). It seems that these boards can count edges with duplicate count prevention on at a maximum rate <= 20 MHz (i.e., 1/4 of 80 MHz) - but maybe I have misunderstood the docs.
    Is there a NI board capable of buffered edge counting with a general purpose counter for random events going at rates from 0 Hz to > 20 MHz? Do I need to look for a reconfigurable board?
    Thanks in advance.

    Dear Elizabeth,
    Thanks for the answer.
    In my application, events arrive asynchronously (actually, randomly). During the duration of a gate (namely, 1 microsecond), one expects anything from 0 to many (i.e., possibly more than 20, up to 80) events. This requires duplicate count prevention. 
    I may have misunderstood the specs for M series boards, but the document:
    Using Duplicate Count Prevention for Counter Tasks in NI-DAQmx
    from the NI web site, for instance, states that:
    "All the other timebase edges that occur while the external source input is high are ignored. If no source edges are detected between two gate edges, as shown in Figure 3, duplicate count prevention ensures that pulse measurements return zero because the external source must be logic high to allow the internal timebase to increment the count register. This reduces your maximum source frequency to quarter of the original maximum (80MHz) timebase for NI-STC II and NI-TIO boards. Therefore duplicate count prevention should only be used if the frequency of the Source signal is 20 MHz or less.
    Duplicate count prevention should only be use in the following situations:
    Counter measurements
    The counter Source is using an external signal (such as PFI x)
    The frequency of the external source is 20 MHz or less
    What's your take on that?
    Thanks for your time.

  • How can I output several simultaneo​us buffered waveforms with NI-DAQmx

    I am using a PCI 6229 card and NI-DAQmq in LabWindows CVI 7.1. I can not figure out how
    to implement waveform generation in four channels simultaneously. This has to be buffered wavefrom
    generation with internal clock timing.
    Are there any simple examples done without using the daq assistant that I can see to learn how to use the
    NI-DAQmx functions?.
    I need to write a number of periods on four waveforms, while I count digital pulses.
    Many thanks,
    Fundadero.

    Alan,
    Thank you for your help. I did look at that example and played with the number of analog outputs.
    But It was not clear how to modify this example in order to perform buffered analog output
    with updates corresponding to one of the internal clocks. I will output two sinchronous analog waveforms
    and use the other two analog outputs to update their voltage on demand to control y and z positions.
    The two synchronous waveforms, are AO_0 : a voltage staircase, 256 steps increasing from V1 to V2, 2ms duration steps , followed by 256 steps decreasing back from V2 to V1 (controls the x axis position). The second waveform, is a sequence of 256/n smaller staircases, with step durations of n*2ms, spanning a voltage range from 0.0 to 1.0 volts.
    It turns out that I could do this in the traditional NIDAQ but I am struggling to migrate it to the NI-DAQmx platform, and I could not resolve this with the example that you suggested.
    Do you have any more suggestions after I described what I am trying to do?
    I will very much appreciate it.
    Many thanks
    Fundadero

Maybe you are looking for

  • Time Based Workflow - how to make it work?

    Hello, Has anyone successfully built a Time Based Workflow? Could you share your examples? For me it does not work properly. I have tried to set up 2 workflows: on Opportunity Close Date and Account Contract Expiration Date. - Account Contract Expira

  • Using StartsWith for String Comparision in Business rules

    hi, I need to compare whether a particular string starts with some pre-defined prefixes. These are bound to change from time to time and hence we wanted to use the business rule engine for this. We declared prefixes using "list of values" vocab and d

  • I have an Apple TV and everyday I have to go in and update my billing info the my cc SEC code?

    I have to go in everyday on my app tv and upadte my SEC code on my billing cc to rent movies from i tunes?

  • Safari opens and then crashes

    I have an IMac G5 os10.3 with Safari 1.2 that I have used for 3 yrs. Today it started crashing after briefly opening. I have reloaded the software, run the disk repair all to no avail. Any directions from here? The computer runs internet explorer onl

  • Sorting by groups

    I managed to group my students by phone nbr. But, in these groups I want to sort by name or birthday. As soon as I try to sort by name, I lose my group format. Please help. Thanks e.g. jackson, earl jackson, sandy smith, bob smith, edith