Recording what the user do

hi,
i'm thinking about an application which can record the actions on the screen and save this as an .mpg file.
The only problem is, how i can get images of the screen so i can make a video out of it.
I thought about making screenshots and save this images, but is this a good solution or do you know a better one?
Pls help me,
thx,
thomas

you're right... not only is it not necessary fast, but it'll consume major memory. If you want to provide playback, then I would suggest recording the state of the application in time slices (you could even record the mouse position and draw a mouse pointer later). During playback, you just iterate through the states and render what the game looked like at that time slice.

Similar Messages

  • Generating a PDF of what the user sees, and sending it as a binary stream to the server

    Hi All,
    On the final page of our Flex app, we allow the user to print out a copy of everything they've entered for their own records.
    I'm wondering if there is a way for me, programmatically, to generate a PDF document that is the same as their printout (I pass a particular container to the "print" button I've got for the user), and send those bytes back to the server.  We can store this PDF along with all the rest of their data, and it would be useful as a "snapshot" of exactly what the user saw when they submitted their application.
    I'm looking into Flex PDF generation, but so far haven't gotten this figured out.  I thought some folks here might be able to point me in the right direction.
    Thanks!
      -Josh

    Here is how you can take a snapshot.
    import mx.graphics.ImageSnapshot;
    import mx.graphics.codec.IImageEncoder;
    import mx.graphics.codec.PNGEncoder;
    import mx.utils.Base64Encoder;
    private function uploadImage(rSource:IBitmapDrawable):void
                        var tBitmapData:BitmapData = ImageSnapshot.captureBitmapData(rSource);
                        var tEnc:IImageEncoder = new PNGEncoder();
                        var tBA:ByteArray = tEnc.encode(tBitmapData);
                        var tB64:Base64Encoder = new Base64Encoder();
                        tB64.encodeBytes(tBA);
                        // send tB64.toString() using POST to the server to save the image.
    // call
    uploadImage(this) // where parameter is an object to get the snapshot of. Can be anything including Application. ("this" in my case).

  • Add WHERE criterias in addition to what the user enters on search page

    Hi,
    This may be a simple problem, but I have not been able to solve it.....Is there a way for me to code another search criteria in addition to what the user enters?
    I'm trying to create a simple search page. Basically, user logs on, i get his acoount number and save it in a variable. Then whatever the user's search criterias are , I want to add "AND ACCOUNT = ???."
    I've tried:
    In the processRequest, retrieve his account number using a VO, stored account number in variavle x and then call a initQuery(x) for the VO to get only the rows that he should be able to see. Problem A: I get 'SQLStmtException' when I test the page by trying to do a Simple Search. So to fix that, in the VOImpl, I added these two calls -- setWhereClauseParams(null); setWhereClause(null); -- after the executeQuery(). After I did this, ran into Problem B: the user could search any record that wasn't associated with his account.
    I also tried to dynamically create the vo using createViewObjectFromQueryStmt("Select * from table where account = " + x) but was not successful. The page didn't render and I received a ClassCastException similar to this thread -- Re: How to Create OAViewObject programatically
    I'm new to OAF and would appreciate any pointers on how to implement this.
    Thanks,
    LL

    Hi,
    I assume that you haven't tried the following steps..if you have and still get an error, give us the SQL statement error that is coming up. If I misunderstood your requirement, could you elaborate.
    I assume that when the user logs in you get the account number automatically.
    You could define the VO to have the following where condition 'WHERE ACCOUNT=:1'.
    Then you set the account id from the user using setWhereClauseParams(0,accountid) and call executeQuery. This would limit the result to that user.
    This will work in addition to any other search fields that might have been used in the query.
    For e.g with just the account id the sql that will be fired is
    Select attribute1, attribute2....from Tablexxx where account = :1
    Any other user search criteria given in the page will result in a ssql query like the following
    select * from (Select attribute1, attribute2 ...from Tablexx where accoount = :1) where newattribute like `%xx`
    Hope this helps. Let us know if you still have issues.
    Thank you,
    Arun

  • Record of the user name that created a payment proposal (F110)

    Hello,
    I would appriciate your help with a question I have regarding the payment proposal process (F110).
    I am trying to find where the system keeps a record of the user name that created the payment proposal.
    I saw this field only in the table REGUA (Change of payment proposals: user and time),
    but I didn't see it for regular payment proposals (not in REGUH and REGUP).
    In general, My goal is to be able to check that the user who is creating the payment run is different from the user who created the payment proposal.
    Thank you in advance.

    In F110, display the payment proposal log. Shift+F7.
    in the heading line 'ob log overview for job'  you can see the job name.
    say  'F110-20110104-FR4NA -X'
    if it is F110-20110104-FR4NA -X / 05170400, you have to take the part before the slash that is F110-20110104-FR4NA -X
    Go to SM37, enter this in the job name. Enter * in the user id. Enter the date , on which payement run was done.
    Then execute. YOu will see, who has run the proposal or payement run in the resulting screen.

  • How to identify which record(s) the user hasbeen checked

    i have a internal table in which first field is represented as check box in the output .
    like bellow
      loop at g_it_final into g_wa_final.
            write : 5 sy-tabix ,
                   20 g_wa_final-g_v_check as checkbox,
                   25 g_wa_final-TRKORR,
                   40 g_wa_final-AS4TEXT.
      endloop.
    now the user will select some records from the output checking the check box
    NOW the QUESTION is
    how to identify which record(s) the user hasbeen checked(selected) ?
    so that i can disply only the selected records in the secondary list.

    Hi,
    You will have to use the 'READ LINE' command within a loop to retrieve the data back into your program.
    You may want to use the HIDE command to ease the retrieval of the checkbox value.
    Check out the online help for both of these.
    Darren

  • Prompt the error message according to what the user had entered.

                   for(int i = 0; i<3; i++){     
                        do{                              
                             try{
                                  System.out.print("Input range for Question " +(i+1) +": ");     
                                  inputQuestionRange = Integer.parseInt(input.nextLine());
                             }     catch(NumberFormatException e){
                                       System.out.println("Error: Please enter a valid number.");
                                  if(inputQuestionRange > 5 || inputQuestionRange <2){
                                       System.out.println("Error: Please Range enter between 2 to 5.\n");
                        }     while(inputQuestionRange > 5 || inputQuestionRange <2);     
                             question[i] = new int[inputQuestionRange];
                   }//for rangeResult:
    Input range for Question 1: 2d
    Error: Please enter a valid number.
    Error: Please Range enter between 2 to 5.
    Input range for Question 1:
    I would like to prompt the error message according to what the user had input.
    However when user input *2d* it just print both error message as it went into the if-else block. how can i skip the if-else block ???

                   //Set Range
                   for(int i = 0; i<3; i++){     
                        do{                              
                             try{
                                  System.out.print("Input range for Question " +(i+1) +": ");     
                                  inputQuestionRange = Integer.parseInt(input.nextLine());
                                       if(inputQuestionRange > 5 || inputQuestionRange <2){
                                            System.out.println("Error: Please Range enter between 2 to 5.\n");
                                       }     else{
                                                 System.out.println("OK");
                             }     catch(NumberFormatException e){
                                       System.out.println("Error: Please enter a valid number.");
                        }     while(inputQuestionRange > 5 || inputQuestionRange <2);     
                             question[i] = new int[inputQuestionRange];                    
                   }//for rangeResult:
    Input range for Question *1*: 22
    Error: Please Range enter between 2 to 5.
    Input range for Question *1*: d
    Error: Please enter a valid number.
    Input range for Question *1*: 3
    OK
    Input range for Question *2*: ww
    Error: Please enter a valid number.
    Input range for Question *3*:
    Hi, thank you for your help, i just realize another problem.
    why does my Question number increment to 3, it should remain as 2 when i request for user input again. i try many ways by altering the for loop, when i insert the try & catch block in a while(!invalid), it just loop forever and crash. How can i solve this ?
    Edited by: metaroot on Feb 18, 2008 1:55 PM

  • What's an easy way to determine what the user typed is a date object?

    What's an easy way to determine what the user typed is a date
    object?
    Thanks!

    Thanks for trying. Sorry for not being clear. but I figured
    it out.
    the user can type in a date, or a name to search. The format
    they type in date has to be in mm/dd/yyyy.
    I was able to use:
    if (new Date(textEntered).toString()=="Invalid Date") {
    // not a date entered
    else {
    // a date is entered
    To do what I need to do.
    Thanks.

  • Recording Actions what the user do and save this as .mpg

    Hi,
    Is there a possibility to record the actions on the screen and save this to an .mpg or .avi file?
    I think about an application which can record for example games so that the user can watch this game lalter again.
    Can i make this with JMF and if it is so, how can i make this?
    thx

    you're right... not only is it not necessary fast, but it'll consume major memory. If you want to provide playback, then I would suggest recording the state of the application in time slices (you could even record the mouse position and draw a mouse pointer later). During playback, you just iterate through the states and render what the game looked like at that time slice.

  • How can I record what the sound card is outputting?

    I have an app. that I need to be able to capture what the
    sound card is outputting.  That is I want to record anything that plays
    from the sound card.  I don't want to
    have to route the speaker out to the mic in.  Is there a way to
    "capture" the sound as it is being played?
    Thanks
    Bob

    As I understand you would like to record the sound (wave, midi, others...) generated by a third party application without a cable loop between soundcard output and any soundcard input (mic, line, aux).
    Have you already tried to set the record input on the recording control panel of Windows to stereo mix and to use any standard labview vi (eg: snd read waveform) for recording?
    Tomi 
    Attachments:
    Setting of record input.png ‏59 KB

  • Adding Records In The User Exit

    I have a requirement to modify the transactional data user exit 0CO_PC_PCP_01. Currently this datasource extracts cost estimate data and using some complex rules I need to determine the active cost estimate for each month and duplicate the records according.
    ie if a cost estimate dated 01.01.2005 is valid for all of 2005 then I need to duplicate all corrsponding records 11 times ie one set of additional records per month.
    I have created the ABAP code to do this and for small volumes of data it works perfectly. However if I increase the data volume the exit seems to run and run.
    The code is as efficient as it can be and there are no database selects within it.
    My questions are:
    1)is it acceptable to add a high volume of new data in the user exit or should I be looking at an alternative.
    2) Does the user exit get called multiple times during a dataload. ie once per datapackage. If so then am I correct in saying it is dangerous to add records this way because some of the records added could already exist and be processed within another datapackage and therefore records would then be duplicated.
    3) One approach I have thought of but not yet tested is to use the function module(s) used by the SAP standard extractor to populate a table on R3 and then use a custome datasource to retrieve the data from this table.
    Any thoughts/views/answers on the above would be appreciated.
    Many thanks

    Simon,
    1. Lets say that the datapacket size is 20000 and all of your records are active. Then when it exits the user exit, the size of the datapacket would be 20000 X 12. that is a very large packet. Probably not a good idea to do this.
    2. The user exit will be called for each datapacket. That is correct and yes, it would be wrong to do this in a datapaket. If a record exists in two datapackets, then records are generated for this multiple times.
    3. Why are you not considering applying the logic in BW rather than doing it in R/3. That should be relatively easy.
    This is how you can do it. When loading the data into BW, load it into an ODS object. Add a new Infoobject to the ODS object (ZACTIVE) for example. In the update rules between infosource and ODS, apply the logic that you are using to determine if each record is active or not. Now from this ODS, load it to either INfoCube or ODS, wherver you want to. In the update rules between the two, you can use the "return table" to generate multiple records where ZACTIVE = true, or you can generate in the start routine instead.
    By doing this you emilinate the case of generating duplicate records.
    Hope that helps.
    Gova

  • Changing panels on a frame depending on what the user clicks

    I'm making a small application with a JFrame and some JPanels.
    When the application starts a start panel is added to the frame where the user can press two buttons. If he presses a button, then a new panel must be painted on the frame. In the new panel there is a button for going back to the starting panel.
    How can I accomplish this changing of panels? How does one panel give control to another panel? How can I let the frame control everything (if I should do that)?

    I guess just use CardLayout, CardLayout will solve your problem

  • I am seeing errors like:Status: 5.4.4 (Illegal host/domain name found). Almost all destinations have no A records, only MX records. The user can usually resend the message and it works.  Any ideas?

    I do have MX in tcp_local in imta.cnf

    The problem is not in the mail software, the problem is in your DNS system. 554 is a permenant failure which means that the MTA got an authoritative response from DNS reporting that the host/domain did not exist.
    When the user tries again, the MTA queries again, and this time DNS responds with a positive response.
    First see the NMS tuning guide and enable nscd, it might be related, not sure, can't hurt, will improve performance.
    Your DNS server should be waiting until it gets a positive/negative response from the root servers. Sounds like that is not happening, maybe a timeout kicking in and causing it to return a authoritative answer (which is incorrect) and then on a subsequent query the response made it and thus the lookup works.

  • HRPAD00INFTY - How to determine what action the user took (IN_UPDATE)

    Greetings, Experts.
    I've been asked to modify an existing BAdI for infotype 0167. The existing code is in method IN_UPDATE.  FYI, we have to use this method (as opposed to, say, AFTER_INPUT) since we have to make sure the user completed the operation as we're modifying data in another infotype based on their action.
    As such, the  logic depends on what the user is doing, i.e., inserting, updating, delimiting or deleting a record. I was testing different scenarios in PA30 to see what the value of IPSPAR-ACTIO would be and got some puzzling results.
    For example, I used the Edit->Copy feature in PA30 to copy and then delimit an existing record and was expecting an ACTIO of "LIS9" (Delimit) but it was "MOD". Similarly, I used the trashcan to remove an existing record and got a "MOD" operation. Finally, I deleted another record the same way (trashcan icon) and this time it was "LIS1" which I found stupefying since that's not even a valid value according to the DDIC for data element ACTIO.
    I can't seem to get a consistent way to determine what the user is doing. What is the best practice?
    Thanks.

    Hi Steve,
    You can  try with IPSYST-IOPER Parameter Which is Showing the Right Values .
    Regards,
    Kishore.S

  • AT SELECTION-SCREEN ON VALUE-REQUEST  - what has the user entered so far?

    Hi,
    the online help says to
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_xyz.
    With the events for the field and input help, no data is transported between the selection screen and the ABAP program
    p_xyz is indeed empty at this event, but is there really no way to find out what the user had entered so far?

    Did you try a call to FM DYNP_VALUES_READ (Check at [Input Help in Dialog Modules|http://help.sap.com/SAPhelp_nw70/helpdata/en/9f/dbaac935c111d1829f0000e829fbfe/frameset.htm])
    Regards,
    Raymond

  • How to get the User Details inoformation in portal?

    I had defined the user informations in "Portal User Details". But i don't know how to get it and what the user table is?
    for example: How to get the email address of user i have defined in portals?
    Tank you very much!
    Ghia Liu
    Genesyslogic.com.tw

    You would use the portal API's for this, there is one named wwsec_api.person_info that returns a record with the specified user's information, such as first name, lsat name, email, telephone, etc - a pretty long list. With release 2 of portal the data is no longer stored in the wwsec_person$ table as it was in release 1 so use the API (which actually is how I would normally do it in release 1 as well).
    To get more documentation on portal API's go to: http://portalstudio.oracle.com/pls/ops/docs/FOLDER/COMMUNITY/PDK/plsql/doc/astart.htm
    Hope that this helps you - enjoy the day!
    Art

Maybe you are looking for

  • Importing of WithholdingTaxcodes through DTW

    Hi All,        i have uploaded oWithholdingTaxcodes.But i got error  like this "The field is too small to accept the data". my template details RecordKey   WTcode    Account   WTName    1              WTC01     143033       WTN01    2              WT

  • Error VTDecoderXPXService Quit Unexpectedly

    It's a brand new iMac 27". Following this procedure as stated in the MacPro area: Launch the Terminal application in any of the following ways: ☞ Enter the first few letters of its name into a Spotlight search. Select it in the results (it should be

  • No image when embedding a video/movie into my PDF file,just a black screen?

    I cannot embed videos with an image on my computer into my Acrobat Pro 8 file. I get only a black screen, which I must click on to play the video. How do I import the visual image along with an arrow for playing or a navigation bar at the bottom for

  • How to make links open in new window

    Is it Javascript? How do you make links open in a new window.. what's the code and where do you put it, how do you end it?

  • Any Free Training Material or Courses availabel online ?

    Hi, I am new to Primavera and I would like to learn Enterprise Project Portfolio Management. Can anyone throw some light on free online training courses foir the same ? Thanks, Murthy