Automated solution to convert or directly filter based on the discontinued local flags?

Hi,
I really liked a lot of the LR 4 features and thus upgraded LR and my main catalogue as soon as v 4 was released. While a lot of stuff is very welcome (soft proofing!), I just realized that Adobe has horribly screwed up my workflow by dropping local pick/rejected flags from V4. I really hate this change as it was very useful for me to reject images for a certain collection (but still being able to know that at some point I had considered it to be included). For the future I guess I will have to find another workflow, probably by creating additional "archive" collections...
But the real problem is the literally tens of thousands of images I have flagged as rejected in collections in my big lightroom catalogue. If I go into any of my old collections I see the entire selection including all the rejects. I know I can get a context menu to select all the items that were locally flagged rejected via the "Select Old Contextual Rejected" action. But to do this for several hundred collections is out of the question. (I am not kidding btw, I am a wedding photographer and have about 400000 photos in my catalogue and about 1000 collections).
So my question is: does anyone know of an automated solution to get the old local flag infomration back? I guess it would be possible to write a plugin that creates 3 collections for every collection that used the old local picked/rejected flags (one with -picked, one with -rejected and one -unflagged). Has anyone done this yet? Or create a plugin that can filter based on the old information (as it is still in the database, just not accessible in the UI).
I am a software developer as well as a photographer so if no one has done this yet I might consider giving it a try myself but I would hate to do something that has been done already...
And btw I am pretty angry at adobe for making this a breaking change.
Best,
Daniel
http://www.iconoclash-photography.com

To build on John's response: While we're still awaiting the LR 4 SDK documentation and can't say for sure, I'm skeptical that the LR 4 SDK exposes the old collection-based flags, given that the LR 3 SDK didn't expose them. 
One solution would be for a plugin to read the catalog database outside of LR, e.g. in the manner of the SQLiteroom plugin.  Accessing the database directly isn't supported by Adobe, but in this case, doing so to do a one-time recovery of legacy data is likely more than robust enough.

Similar Messages

  • How can I filter based on the IPTC core information?

    How can I filter based on the IPTC core information? (CS6)

    "Substitution Variables" can do what you are asking for.

  • OBIEE Report - filter based on the result from another analysis

    Hi,
    I am using OBIEE 11g,
    I am trying to use a filter which is based on the result from another analysis. I have an analysis A which is as table 1, and I want to filter the respective columns of analysis B (Table B) based on analysis A to remove the duplicates for march 01, 02, and 07 , but it is not working properly. I took a max of start and end time when I created analysis A. Please let me know if I did anything wrong. thanks.
    Table 1
    Employee Number
    Date
    IN
    Out
    Start Time
    End Time
    xxxxxxx
    2015-02-26
    9:00
    13:00
    00:00:00
    00:00:00
    2015-02-27
    12:00
    18:00
    00:00:00
    00:00:00
    2015-02-28
    8:00
    14:00
    00:00:00
    00:00:00
    2015-03-01
    14:00
    20:00
    14:00:00
    20:00:00
    2015-03-02
    16:00
    20:00
    16:00:00
    20:00:00
    2015-03-07
    14:06
    20:02
    14:00:00
    20:00:00
    2015-03-11
    16:00
    20:00
    16:00:00
    20:00:00
    2015-03-14
    8:00
    14:00
    00:00:00
    00:00:00
    2015-03-25
    14:00
    20:00
    16:00:00
    20:00:00
    Table 2
    Employee Number
    Date
    IN
    Out
    Start Time
    End Time
    Hours
    xxxxxxx
    2015-02-26
    9:00
    13:00
    00:00:00
    00:00:00
    -3
    2015-02-27
    12:00
    18:00
    00:00:00
    00:00:00
    6
    2015-02-28
    8:00
    14:00
    00:00:00
    00:00:00
    6
    2015-03-01
    14:00
    20:00
    00:00:00
    00:00:00
    6
    14:00:00
    20:00:00
    6
    2015-03-02
    16:00
    20:00
    00:00:00
    00:00:00
    4
    16:00:00
    20:00:00
    4
    2015-03-07
    14:06
    20:02
    00:00:00
    00:00:00
    6
    14:00:00
    20:00:00
    6
    2015-03-11
    16:00
    20:00
    16:00:00
    20:00:00
    4
    2015-03-14
    8:00
    14:00
    00:00:00
    00:00:00
    6
    2015-03-25
    14:00
    20:00
    16:00:00
    20:00:00
    4

    Why avg here?
    What columns you want to show in the report?
    for a employee for given date if he have 2 rows then you may sum up hours right?
    Employee Number
    Date
    IN
    Out
    Start Time
    End Time
    Hours

  • Missed Incident Resoultion Time Filter Based on the Assignee in SAP BO

    Greetings!
    I am trying to find a way to filter the below results in SAP BO using the BMC ITSM universe, based on the person who missed the Incident Resolution Time.
    However, I have filtered the below result based on the following query:
    Due Date Time > Last Assigned Date. - (Applied in the query object filter)
    & Min (Last Assigned Date). - Applied on the formula of inserted tables
    But, when I try to insert the Last Modified By column and the Assignment Group, it ignores all my filters and puts all the assignees who had worked on this > than the due date and time.
    Please help me out to filter only the person who breached the ticket, eg: In this case, INC58518 was breached by "hlayiseka.mkhombo". I need to display only this assignee and his assigned group.
    Incident
      ID
    Due Date Time
    Last Assigned
      Date
    Last Modified
      By
    Assignment
      Detail.Assigned Group
    Goal
    Progress
    INC000000058518
    2/10/2015
      1:27:03 PM
    3/1/2015
      1:52:10 PM
    dalia.serhal
    Business
      Relationship Management
    Incident
      Resolution Time
    Missed
    INC000000058518
    2/10/2015
      1:27:03 PM
    3/1/2015
      2:14:37 PM
    dalia.serhal
    Service
      Design
    Incident
      Resolution Time
    Missed
    INC000000058518
    2/10/2015
      1:27:03 PM
    2/26/2015
      2:35:48 PM
    guruprasath.jayarama
    Service
      Design
    Incident
      Resolution Time
    Missed
    INC000000058518
    2/10/2015 1:27:03 PM
    2/11/2015
      11:26:32 AM
    hlayiseka.mkhombo
    Service
      Improvement
    Incident
      Resolution Time
    Missed
    Thanks in advance for your feedback and inputs.
    Regards
    Sherwin

    I have also tried using the formula First (Last Modified By), but it doesn't give me the correct value. i.e, the actual assignee doesn't seem to match with the Last Assigned Date.

  • "How do you build a filter based on the conditions of two columns?"

    Hi all,
    line desc     Period     Amount1     Amount2
    jan feb 0 10
    jan mar 0 20
    jan jan 0 30
    jan apr 0 40
    I have a report like this with four columns
    Line Descr is from one table and period from other table and amounts 1 and amounts 2 are respective amounts.
    now i need to see the only one column in the Result i,e. jan jan 0 30
    I need to write a sql in the column formula so that i need to get this Result
    Any suggestions like what sql do i need to write
    thanks
    Xavier.
    Edited by: Xavier on Jul 1, 2011 12:03 PM
    Edited by: Xavier on Jul 1, 2011 12:04 PM
    Edited by: Xavier on Jul 1, 2011 12:05 PM
    Edited by: Xavier on Jul 1, 2011 12:05 PM
    Edited by: Xavier on Jul 1, 2011 12:06 PM
    Edited by: Xavier on Jul 1, 2011 12:07 PM
    Edited by: Xavier on Jul 2, 2011 11:37 AM

    David,
    Thank you very much for your Reply.I was looking,who could understand my situation and guess "YOU DID'
    I'll tell my situation David.
    We used to have a sql filter for this Report .In 11.1.1.3 version it used to work ,but in 11.1.1.5 we have a bug .if you have a sql filter in the Report it is not allowing us to use navigation links on that report it is saying some "Assertion Error".
    We are using this Report on Dashboard .If we use the report on Dashboard and if that Report contains the Sql Filter than it's throwing the "ASSERTION ERROR".
    but if i open the same Report from the catalog then the navigation links works fine
    Can you help me out with this one .
    Thanks
    Xavier

  • In an Analyzer report how can I filter based on the last member of a dimension?

    Using Analyzer 6.2.1What I'm trying to do is to create a report that shows always the last month available on the cube.I'd rather like to avoid having to add UDA or Alias or whatever in my outline.Is there a way to retrieve the last member of a dimension directly in Analyzer?

    "Substitution Variables" can do what you are asking for.

  • Is there an add-in for FF that will direct files based on the type? i.e. put graphic files in a folder called graphics, program files in a folder called exe etc?

    I would like FF to be able to sort my downloads into categories, to put program files into a folder called exe, to put graphic files into a folder called pics ,etc. Can this be done?

    The Firefox download manager isn't set up to do that, but I understand there are a few external download managers that offer a feature like that.

  • Filter based on the count of value

    Hi All,
    I have the table below and want to show the prop_code if the rent_review_date count is less than 1 in 12 months. This means to show only propcode if there has not been any rent update since the first rent_review_date. For few prop_code the rent was
    updated twice on the same day and we need to take the max for that date using time.
    DECLARE @table TABLE
    ( Prop_Code INT
    ,Current_Rent INT
    ,Revised_Rent INT
    ,Rent_Review_Date varchar(10)
    ,Rent_Review_Time DATEtime)
    INSERT INTO @table (PROP_CODE,Current_Rent,Revised_Rent,Rent_Review_Date,Rent_Review_Time) VALUES
    (2977,372,339.15,'2013-07-08','7:44')
    ,(2977,372,339.15,'2013-07-03','11:01')
    ,(2977,372,372,'2014-06-30','9:07')
    ,(2977,372,372,'2014-07-07','11:06')
    ,(2981,372,372,'2014-07-07','11:06')
    ,(2981,372,340.15,'2013-07-08','7:23')
    ,(2981,372,314.15,'2013-07-08','7:44')
    ,(2981,372,340.15,'2013-07-29','7:16')
    ,(3089,205.63,400,'2014-10-27','8:38')
    ,(3089,205.63,205.63,'2014-02-03','8:29')
    ,(3089,205.63,127.64,'2014-01-20','0:52')
    ,(3089,205.63,123.02,'2013-08-12','8:28')
    ,(3089,205.63,205.63,'2014-12-15','8:46')
    ,(3109,252.62,198,'2014-01-20','0:52')
    ,(3109,252.62,252.62,'2014-04-07','8:30')
    ,(3109,252.62,198,'2013-08-12','8:28')
    ,(3117,284.96,336,'2014-04-21','1:03')
    ,(3125,267.53,267.53,'2014-02-03','8:29')
    Select * from @table
    Thanks
    Jag

    >> I have the table below and want to show the property_id if the rent_review_date count is less than 1 in 12 months. This means to show only property_id if there has not been any rent update since the first rent_review_date. For few property_id
    the rent was updated twice on the same day and we need to take the max for that date using time. <<
    Thank you for trying to post DDL. But it is wrong. Why do you think that “table” is a valid table name? Please do not use DECLARE..TABLE. You have no key or constraints. You have no way to have a key! You split a time stamp! You cast a date as a string! You
    have a money amount as an INTEGER! And then posted decimal to it! 
    You put a comma at the start of each line of SQL. We do not do that, but old punch card programmer do (I was one!). I bet you do not even know why! What you call a property_code looks like a property_id. Why was it a string? What math do you do on it? None! 
    CREATE TABLE Rentals
    (prop_id CHAR(4) NOT NULL,
     current_rent DECIMAL(8,2) NOT NULL,
     revised_rent DECIMAL(8,2) NOT NULL,
     rent_review_timestamp DATETIME2(0) NOT NULL,
     PRIMARY KEY (propery_id, rent_review_timestamp))
    INSERT INTO Rentals
    VALUES
    ('2977' 372.00, 339.15, '2013-07-08 07:44:00'),
     ('2977' 372.00, 339.15, '2013-07-03 11:01:00'),
     ('2977' 372.00, 372.00, '2014-06-30 09:07:00'),
     ('2977' 372.00, 372.00, '2014-07-07 11:06:00'),
     ('2981', 372.00, 372.00, '2014-07-07 11:06:00'),
     ('2981', 372.00, 340.15, '2013-07-08 07:23:00'),
     ('2981', 372.00, 314.15, '2013-07-08 07:44:00'),
     ('2981', 372.00, 340.15, '2013-07-29 07:16:00'),
     ('3089', 205.63, 400.00, '2014-10-27 08:38:00'),
     ('3089', 205.63, 205.63, '2014-02-03 08:29:00'),
     ('3089', 205.63, 127.64, '2014-01-20 00:52:00'),
     ('3089', 205.63, 123.02, '2013-08-12 08:28:00'),
     ('3089', 205.63, 205.63, '2014-12-15 08:46:00'),
     ('3109', 252.62, 198.00, '2014-01-20 00:52:00'),
     ('3109', 252.62, 252.62, '2014-04-07 08:30:00'),
     ('3109', 252.62, 198.00, '2013-08-12 08:28:00'),
     ('3117', 284.96, 336.00, '2014-04-21 01:03:00'),
     ('3125', 267.53, 267.53, '2014-02-03 08:29:00');
    My SQL Server crashed, so this is untested. I am guessing at the specs, too. 
    WITH Last_Rent_Change (property_id,  last_rent_change)
    AS
    (SELECT property_id, MAX (rent_review_timestamp) 
        FROM Rentals
    WHERE rent_review_timestamp BETWEEN CAST (CURRENT_TIMESTAMP AS DATE)
                     AND DATEADD( YEAR, -1, CAST (CURRENT_TIMESTAMP AS DATE))
    GROUP BY propery_id
    HAVING COUNT(*) > 1) 
    SELECT R.*
      FROM Last_Rent_Change AS L, Rentals AS R
    WHERE R.property_id = L.property_id ;
    Most of the work in SQL is in the DDL. Once it is right, the DML is usually easy. 
    --CELKO-- Books in Celko Series for Morgan-Kaufmann Publishing: Analytics and OLAP in SQL / Data and Databases: Concepts in Practice Data / Measurements and Standards in SQL SQL for Smarties / SQL Programming Style / SQL Puzzles and Answers / Thinking
    in Sets / Trees and Hierarchies in SQL

  • Filter the report based on the parent report column values

    Hi,
    period --- jan12 feb12 mar12...
    tickets --- _3_ _10_ _16_ .....
    This is my report layout.When i click on the no.of total tickets 3/10/16.It need to navigate to another report which should be filtered based on the reporting period as well as total tickets.
    How can i achieve this requirement.Is there any possibility to pass the column values from one report to another report?
    I tried "filter based on the another request" but it not worked for me.
    The summary of the requirement is when i click on 3 it need to display the 3 tickets details only...
    Anyone please help me out.
    thanks,
    prassu

    If your query means that for Jan 12 there are 3 tickets and for Feb 12 there are 10 tickets in the database, then you should only need to make the Period Column Is Prompted in the detail report. If the action link is not working this way then something else is wrong. Is the detail made from the same subject area?

  • Dashboard Prompt - Bypass filter based on value selected in prompt

    Hi All
    I need to create a dummy dashboard prompt that has displays two values 'Y' and 'N' (Yes and No). If 'Y' is selected, I want the report to 'Filter based on the results of another request'. If 'N', then the report takes the usual filters (not taking the 'Filter through another request' filter).
    I have achieved this in the report filter by using an 'OR' clause (The Project Number is in Project Number Report OR 'N' = 'N' (presentation variable from the prompt) ). So if 'N' is selected the OR clause is satisfied and the results from the report are not taken in. If 'Y', the results from the report are taken in. This part is fine.
    The problem is, on the dashboard prompt, there are a few constrained prompts. When these are selected, WHERE clause is attached 'N'='N' (the clause above). So when 'Y' is selected in the prompt, the condition fails and the constrained prompts do not show any results.
    So, basically the idea is: How do I make my report run against 'Filter based on results of another request' when 'Y' is selected and bypass this (i.e. take the other filters) when 'N' is selected (Keeping in mind the constrained prompts).
    Thanks
    Ananth

    Hi
    I searched a little and found the following link
    http://obiee101.blogspot.com/2009/02/obiee-switching-between-filters.html
    This half-solves my problem. The issue is that, the above link uses a example of a dashboard prompt where there is only one 'Yes/No' prompt. What if there is a constrained prompt as well. In that case, when Yes/No is selected, a WHERE clause will be attached to the Constrained prompt (saying 'NO'='YES') and it will show 'No results'.
    Thanks
    Ananth

  • Using javascript to populate one menu based on the choice in another menu

    I have several menus which are dynamically populated (with PHP and MYSQL). The information is category based. How do I dynamically populate the second menu based on the choice the user makes in the first menu (without having to submit and refresh the page-- i.e. I need to use javascript instead of the server-side PHP).
    Example:
    Main Categories: 1) Numbers     2) Letters
    Sub Categories:        1                      a
                                   2                      b 
                                   3                      c
                                  etc.                  etc.
    the first menu contains the two main categories. I want the second list to be populated with only the sub categories of the main category the user chooses in the first menu (i.e. 1,2,3 etc. if he chose the main category 'Numbers' and a,b,c, etc. if he chose the main category 'Letters')
    Is there an easy way to do this in Dreamweaver?
    Thanks,
    YWSW

    How many items do you have in each dropdown? If it's a small number, you can download all of the options for the second dropdown and use client side javascript to filter based on the choice of the first dropdown. If the number is large, you'll need to use AJAX to dynamically pull the related items from the database.
    Search the web for "dependent dropdown" or "cascading dropdown" for some technical details.

  • How to create LDAP filter-based rule to check Group membership in OAM

    Hi folks,
    I'm having hard time creating an authorization rule to verify ldap group membership. I've followed "Configure User Authorization" article from Oracle website (http://download.oracle.com/docs/cd/E10761_01/doc/oam.1014/b32420/v2authz.htm#BABHBFEJI) and created an Authorization scheme w ldap_attribute_name as User Parameter and ruleExpression as Required Parameter. Then, inside my policy I created an Authorization Rule based on my Authz scheme w Allow Access attrib filter-based Rule which looks like this:
    ldap://ldap_server:port/ou=People,o=Company,c=US??sub?(ldap_attribute_name=ldap_attribute_value)
    This works fine.
    Now, I've added another filter-based rule under the same Authz Rule/Allow Access:
    ldap://ldap_server:port/ou=Groups,o=Company,c=US?uniqueMember?sub?(&(objectClass=groupOfUniqueNames)(cn=ldap_group_name))
    While query looks somewhat correct and works as a command-line argument (slightly modified format), it does not work in OAM (meaning people w out req-d group membership can still login).
    Can someone steer me to the right direction as to what do I need to do:
    1. Change/fix the ldap query
    2. Create new Authz scheme with uniqueMember userParameter; create new Authz rule based on new authz scheme; create new Allow Access filter rule with the ldap query I have
    3. Do smth else
    Any help is greatly appreciated.
    Thank you, Roman

    You can create two authorization rules
    First for user with attribute
    and second for group
    and then in authorization expression you can have AND of these two.
    Regarding your query...
    First ... If your requirement is to give access to all the members of a particular group then you don't require any ldap filters
    All you have to do is in the authorization rule -> Allow access -> Select People (here you have to select group so click on the group tab, its little hard to see but its there in light blue color on dark blue tab) -> select the group you want to give access
    Second.. If your requirement is such that you want to give access to a member of a group which has certain attribute lets say group with status active ( In this case you are not aware of the name of the group because user can be a member of any group but you want to give access only to the group with specific attribute.) then you have to write custom authorization plugin.
    If the option is second let me know i can give you a solution which will work for a single domain without any effort of developing a major plugin.
    Hope this helps,
    Sagar

  • Is there an easy way to filter a 2-d array based on the values of two of the fields?

    Is there an easy way to filter a 2-d array based on the values of one of the fields. In my attached VI the output array has the following format:
    TimeStamp        Ident                Frame Type          Bytes    Data
    10:57:07.621   3AD00016   CAN Data Frame   8          0000000000000000
    10:57:07.622   3AD00017   CAN Data Frame   8          000005E000000000
    10:57:07.624   3AD00018   CAN Data Frame   8          0000000003300000
    10:57:07.625   2DC00000   CAN Data Frame   8          0000000000000000
    10:57:07.626   3AD00019   CAN Data Frame    4         0000030000000000
    I would like to delete any rows that do not have an "Ident" between the values of 3AD00000 and 3AD0001E. So for the above data the fourth row would be deleted. The only way I can see to do it is to form a 1-d array. Is there a better approach?
    Thank you.
    Solved!
    Go to Solution.
    Attachments:
    CMM_SN_MULTI.vi ‏20 KB

    Hi chuck72352,
    after you have sorted your data, you can use the InRange Function. Combined with a "search 1D Array" you'll get the range you really want.
    Mike
    Attachments:
    ArraySubset.PNG ‏25 KB

  • Automator won't convert pdf to word

    I found directions on-line for converting a pdf file to a Word document, followed the directions precisely, using the Automator application. It all seemed to go according to the directions, except that when I opened the rich-text document, there was nothing in it. What do I need to do to fix the problem? Here are the directions that I used:
    1
    In an open Finder window, select"Applications" in your window Side Bar and scroll down to theAutomator application.Double-click the "Automator" application to launch it.
    2
    Select "Custom" in the upper-left corner ofthe new "Automator" window that opens, and then click"Choose" in the lower-right corner to begin constructing your"Automator" PDF-to-text application.
    3
    In the new "Automator" window, click"PDFs" in the first column under Actions, and then double-click"Extract PDF Text" in the second column. A new option dialogue boxwill open to the right of the columns. Click the "Rich Text" radiobutton. Make any changes, if you wish, to where the new file will be savedusing the "Save File to:" pop-up menu and the name of the new file inthe "Output File Name" options.
    4
    Click "File" in the Mac Menu Bar and dragthe cursor to "Save As" in the File menu. Release the mouse and a"Save As Dialogue" window will appear. Click the "FileFormat" button and select "Application." Enter a name for yournew PDF-to-text"application in the "Save As" field. Use"PDF to text" or any name that's easy for you to remember. Click "Save" to save theapplication. Quit "Automator."
    5
    Single-click the PDF file to convert it to a Rich Texttext file you wish to use in Word, and drag and drop the file on top of thePDF-to-text application that you just created. Release the mouse and thePDF-to-text application will automatically convert the PDF file to a Rich Textfile.
    6
    To open the file in Word or any other word processingapplication, click and select the new Rich Text file created by the PDF-to-textapplication; then drag and drop the file on your Word application icon. Releasethe mouse and the text file will open in Word, with its text formatting intact.

    Not all PDFs contain text.  Some contain only images of text.  (I receive a few newsletters in this format.)
    Quick test.  Open your PDF in Preview.  Can you select a few words by highlighting them?  If so, there's text that you can extract; if not, it's an image and that Automator workflow won't help you.

  • Solution for Converting OAS JWEB to 9iAS

    Hello community.
    I just wanted to let you know that there is a solution for migrating from JWEB to Servlet (MVC) type J2EE framework. I am not sure why Oracle did not do this?
    1) We created some java classes that replace the PStringBuffer, PDouble, Session classes etc. We still need to keep these around, but you can't use the jar file that contains these classes as they contain JNI lookup references to shared libraries/dll's.
    2) We created a class to replicate what PL2JAVA produces. So, the interface to the routines are the same, but we swap in JDBC calls and a JDBC connection pool. The only limitation is the fact that booleans are not handled as nicely with JDBC, so we had to change a couple of the SPs to work with numbers instead (0=false, 1=true). Other than that, no database interface code needs changing.
    The Session object that is passed in is actually a wrapper for a JDBC Connection Cache object that the generated SP Java wrapper can grap connections from. The only problem here is that once a SP call is made, the transaction is commited and the connection released back to the connection pool. We did it this way as we did not want to have to add too much transaction management in 100s of classes that use the Java SP interface. We might be able to tweak this a bit so that this functionality is possible by changing the constructor to handle a connection object instead. That way we have more control.
    3) We replaced all local variables with HttpSession object setting and getting. This was very tedious, but not too bad.
    4) We created a servlet controller that would load the JWeb pages appropriately based on the request.
    If anyone is interested, we probably will be doing up a small summary of this. The Java class interface generator could be utilized for any stored procedure work. It is too large to ship up here, but if anyone wants it, I may be convinced to share :) ....
    Again, Oracle should have had a migration plan well documented instead of saying, you have to rewrite this. We should have our JWeb app converted with about 2 weeks of part time effort by 3 developers. Now that we have some of these tools, it should be half that time.
    Good luck!
    Sincerely,
    Brad Worsfold

    It looks like the LabVIEW Sound and Measurement Suite would do the trick, or possibly Diadem, though I'm not sure if you have LabVIEW.  What program are you trying to open the file with?  It may also have a package you can download that supports all of the formats.  For instance, there appears to be a UFF file reader and writer if you Google "uff files" in the top result, but that's only if you were using a specific program.  But I suppose the easiest way would be if you already had the Sound and Measurement Suite.
    Regards,
    Jake G.
    National Instruments
    Applications Engineer

Maybe you are looking for