Handling 25p/30p footage shot using "PsF" method in FCP X?

Most consumer camcorders that provide a Progressive shooting mode use a system called Progressive segmented Frames (PsF).
Basically they shoot interlaced footage but the 2 fields are recorded at the same instant  instead of sequentially as in normal interlaced video.
When combined, this creates a frame which should be virtually identical to a normal progressive one.
PsF is used because it is a cheap and easy way of enabling interlaced equipment to shoot and edit progressive video. Panasonic calls it Digital Cinema Mode and Canon's name is Cinema Mode  or  PF.
So what  project properties in FCP X  should be chosen?
1.  Progressive or Interlaced?
2.  Does it actually matter which is used?
3.  What settings should be used when outputting to DVD, Blu-ray or the web to ensure the progressive quality is preserved?

As nobody replied in the first 5 minutes  ( )  I did some further trawling of the web and came up with what is possibly the perfect answer together with reasons, posted by TecnoTurd*.
http://provideocoalition.com/index.php/atepper/story/psfs_missing_workflow_part_ 10_fcp_x/
This is one of a series of related articles concerning Benign and Malignant PsFs.
From what I can deduce, most consumer camcorders produce Malignant  PsFs, which simply means that the editing system thinks they are interlaced and treats them as such, thereby reducing their quality.
Apparently selecting a Progressive project is not enough and you have to force the Inspector to change the clips' status from 1080i to 1080p as described later in the article.
My Panasonic SD800 produces malignant PsF video but after following the steps detailed, I converted them to proper 1080p.
So when we get some decent weather I will get down to some serious testing of progressive video.
* Unintentional typo 

Similar Messages

  • No bars for 16:9 footage shots using XL2

    I'm using FCS 2 (FCP 6), recently have completed my shooting using XL2 (Cine Gamma, Cine Matrix) 25p, 16:9.
    Now, when imported footage and placed in the timeline (settings: PAL 48 kzh) I don't see top and bottom bars.
    Even tried with PAL 48 kzh Anamorphic.
    Its quite urgent to complete the project, hence I look forward to see your valued inputs and suggestions.
    Regards
    Roy

    Santu Roy wrote:
    You mean it does not show bars in the Canvas? then why I see gray bars sometime?
    Hi Roy,
    Yes I mean you are not supposed to see black bars in the Canvas!!
    My guess is that the grey bars you are seeing are part of the Viewer or Canvas because you have changed the aspect ratio of your footage as you described above. They are not part of your footage! so you can ignore them. They are part of the FCP User Interface.
    Here is a way to verify this...
    Create a project in FCP Make sure that it is DV PAL 48 KHz with a 4:3 aspect ratio, i.e. Anamorphic is off.
    Create a sequence in the project and make sure the Sequence settings are the same as the project settings.
    Reset the View in FCP by selecting Window> Arrange> Standard.
    You should now have 4:3 aspect Viewer and Canvas.
    Now import some footage into the project. Doesn't matter what it is.
    In the Bin Ctrl>Click on the imported footage and choose Item Properties> Format... from the Menu.
    Scroll through the format properties until you see Anamorphic and make sure it is NOT ticked. This indicates that the footage will display as 4:3 which is what we want for the purpose of this test.
    Click OK to exit the format properties.
    In the BIn double click on the footage to load it into the viewer. The footage should fill the Viewer with no bars on top bottom or sides.
    Drag the footage to the Canvas to insert it into the sequence. The footage should fill the Canvas with no bars on top bottom or sides.
    Now go back to the bin. Ctrl>Click on the footage again and choose Item Properties> Format... again.
    Scroll to the Anamorphic field again but this time turn on Anamorphic by clicking in the Clip column. A tick should appear next to Anamorphic and...
    Grey bars will appear above and below the footage in the Viewer.
    The same thing will happen in the Canvas if you select Sequence> Settings and click the Anamorphic check box in the General Tab.
    Now... If these are the grey bars you are referring to then as you can see they are nothing to do with your footage. They belong to FCP. So you can ignore them. If you want to get rid of them Here's how...
    Resize the Viewer and Canvas windows so that the grey bars dissappear, (drag the windows from the bottom right corner to resize). This will also free up more workspace area for you which is a bonus.
    If you want to avoid seeing the grey bars again then save a custom window layout in Window> Arrange> Save Window Layout...
    I think that should solve that one... Happy days!
    Now for the second part of your question...
    Santu Roy wrote:
    Else how do I get bars while exporting as MPEG2?
    There is more confusion here...
    Why do you want the Bars in your MPEG2?
    The only reason reason to create an MPEG2 with black bars from your source footage, (which is 16:9 FHA) is if you intend your master to be viewed or displayed only on 4:3 devices or frames. i.e. 4:3 TV's, 4:3 Computer Monitors, 4:3 Studio Monitors, 4:3 Projecters, or on a website in a 4:3 frame such as YouTube. Most of those just mentioned are "old technology" now.
    All 16:9 devices will automatically display the footage correctly if set to do so.
    If you really need to do this then it is something that can be easily done in Compressor using the letterbox filter. However, be sure you need it to do it. Remember that you are basically reducing the size of your original footage and also, if people view it on a 16:9 display it will look strange.
    I've always referred to this process as "Deep letterbox 16:9 for 4:3 output" but I'm sure it is called other things as well.
    Whether you decide to add the bars to your MPEG or not, remember it is something you would do on your edit master so you can go ahead with the edit without the bars for now anyway.
    Hope this helps you,
    Best regards.

  • Using compressor with h.264 footage shot at 29.97

    when i try to drag in a bunch of h.264 footage shot at 29.97 into a new batch to transcode to apple pro res, compressor runs really slow. It takes a long time for the clips to appear in the new batch document window. If I do the same with h.264 footage shot at 23.98 the clips appear almost instantaneously. Once it appears in window the 29.97 footage can be submitted and it does compress. Anybody else out there have this problem?

    I am using compressor 4

  • Using footage shot at 24fps

    What type of settings do I need utilize when capturing and editing footage shot at 24fps?
    Anyone able tohelp
    Thanks
    Mike

    Well,
    I shot the footage already. I shot on the Canon XL2. I was trying to figure out how to capture it. When I set the audio/visual settings and have the timeline set at 24fps then bring the footage in, it needs to be rendered. The only way I can capture and have the footage not need to be rendered is when I have both the capture settings and the sequence settings set at 29.97. I do not know if it will effect my footage or not if I have it playing on the timeline at 29.97.
    Thanks
    Mike

  • 24p 25p 30p 50p : what's recommended for HD in a PAL environement

    While i'm choosing a new digicam that can shoot movies (1920x1080), I wondering what's the frame rate to prefer for editing with FCS to produce Bluray
    in a "PAL world".
    I'm very interested in a Nikon P510 with its huge zoom but it record at 30p.
    Instead of the NiKon a friend suggested the Sony HX200 that shots 50p and 24p...
    In other world i would like to have an advice if:
    24p it's ok to edit in FCP
    30p it's ok to edit in FCP and it's ok (i doubt) in the PAL environement
    I'm quite experienced in PAL SD (miniDV --> DVD ) workflow but very confused on the HD one...
    Thanks

    In a PAL environment you can use either 25p or 50i .... both are the same framerate but one is progressive (p) and one is interlaced. Both can be edited in FCP
    24p is often used to give footage the "film look". It is also supported in the Blu-Ray standards and in FCP.
    50p/60p are non-standard framerates that are not always supported by NLEs. More often than not they are used to achieve smooth slow motion in post (e.g. 60p to 24p conforming). To my knowledge FCP can handle 50/60p only with the help of third-party capture card. 50/69p is also not supported on Blu-Ray devices.

  • You shoot 24p, 25p, 30p but iMove 09 treats it as interlace! Why?

    If your HD camcorder can shoot “1080p25” (progressive 25fps) or “1080p30” (progressive 30fps), of course you want to shoot using these frame rates. The Canon HV40 and Canon HF S11 are examples of HD camcorders that can shoot progressive video at 25fps (in PAL regions) or at 30fps (in NTSC regions) in addition to “1080i50” or “1080i60.” They can also shoot 24fps.
    When you shoot 1080p24, 1080p25, or 1080p30, in most cases progressive video is recorded as interlace video. Both 1080p24 and 1080p30 are recorded as 1080i60 while 1080p25 is recorded as 1080i50.
    When iMovie 09 imports this video, it will treat this progressive video as interlaced HD. Unfortunately, iMovie treats interlaced HD badly. If you Stabilize a clip, employ a PIP or Crop, add a Ken Burns effect to a video clip, or use a Wipe or Pseudo-3D transition (such as Cube)—iMovie on-the-fly converts your 1080-line video to 540p (960x540) video. Therefore, all 1080i clips in your movie will lose up to 35% vertical resolution and up to 40% horizontal resolution. This loss of resolution will occur even if you add only one of these effects.
    But, what if iMovie didn't do this?
    What if iMovie correctly saw progressive HD as progressive HD -- not interlaced HD? This would allow all scaling FX to be used. Moreover, because you ARE shooting progressive HD, NO scaling artifacts would be introduced!
    Would this be a benefit to HDV and AVCHD 1080i shooters?
    Absolutely! Especially if all this could accomplished without wasting time and image quality recompressing your video.

    The Pana 300 is a great camcorder, but I wish it shot 30p. If you want a Cine look you'll have to shoot 24fps rather than the easier to use 30fps.
    Anyway, about removing pulldown:
    1) You CAN remove 2-3 pulldown. But, it requires a recompresion from AIC to AIC after your clips' AVCHD is converted by iMovie to AIC. This would provide real 1080p24. I call this "TRUE 1080P." But, with a MacBook this might take too long. And, you lose a generation of quality!
    2) A better solution is to get iMovie to treat your video as though it has no pulldown and is progressive. I call this "FALSE 1080P" because once 2-3 pulldown is added during recording, the video has BECOME interlaced. (I'll explain about this in my other thread on dealing with 1080i50 and 1080i60.)
    PS: The reason I prefer to shoot 1080p30 is because then the goal is to get iMovie to treat 25p/30p video as though it were progressive. I call this "TRUE 1080P" because it really IS progressive.
    We know what it is, but iMovie doesn't. And, how can iM since it is recorded as 1080i50 and 1080i60. It's too bad Canon and Panasonic record 25p/30p as interlaced. The neat thing about TRUE 1080P is that after editing as progressive you can export as 1080i or 720p. And, no matter what FX you use you'll never get scaling artifacts!

  • Correcting footage shot on auto-everything camera

    Hi,
    I searched under several keywords but couldn't find any posts relating to my problems.
    I have some colour video footage shot outdoors on a camera that has no manual controls whatsoever.
    Can anyone recommend a filter or other FCP technique (or any other software) to help me bring up the under-exposed footage and bring down the over-exposed parts to make a more uniform final product? The fluctuations happen pretty rapidly and I have 1.5 hours of footage so something automatic would be really helpful. Also the colour shifts slightly throughout the footage (also sometimes rapidly), but not as badly as the exposure. Any sugestions for solutions to the colour issue?
    Thanks for your thoughts.
    Tim

    Get out the manual and read up on the 3 way color correction filter. Pretty simple to use for basic exposure issues and color balance. Not really automatic but remember that automatic was what caused the problem in the first place.
    One method of changing cc settings as the footage changes is to apply the filter to a clip and then cut the clip where the changes occur. Select each segment and correct for exposure and balance, then add cross dissolves between the segments.
    rh

  • Conform 50P to 25P in FCP7 (NOT using CinemaTools)

    I've never had the need to use Cinema Tools in the past until a few weeks ago when I changed my camera to a variable speed model. I shot some footage in 50P, fed this into FCP where I then used Cinema Tools to conform to 25P. The results were super-smooth slo, it look absolutely wonderful especially as I'd shot the footage on a steadicam to begin with.
    So my question: Is it possible to conform within FCP7 without using Cinema Tools and achieve the same quality slo-mo as I got with CT? Is there another workflow here?
    Many thanks,
    S.

    No...because CT does a frame for frame conform. FCP does not have that option. What is wrong with doing it with CT?
    Shane

  • How to handle the Exception in GP using executable callabel object.

    Hi all,
            I handled an exception in GP using Background callable Object. That is working fine.
    (Ex: Exception_No_User_Found). The Problem is I am not able to handle the exceptions for normal callable object. I have done the same thing as i did in background callable object except implementing IGPBackgroundCallableObject Class.  I have created an WebDynpro DC Project where in getDescription method i declared an Exception and in execute method of component controller I caught the exception if no user found.
    Then i created an callable object for this simple DC project. but that is not working i could not catch the exception. when i execute the process it is asking the User ID if i give the wrong userId it is not refreshing back to the user id input form.
    But if i test that simple callable object separately it is throwing an Exception when I give the wrong input..
    but the same thing is working fine using background callable object.
    I couldn't handle the exception for the simple callable object or executable callable object.
    Please If anyone bring me the solution that would be appreciated.
    Thanks in advance.
    Regards,
    Malar.

    Hi Shikhil
    Thanks for your reply
    Please have a look below for exceptions which i am getting in GP and let me know how to handle these exceptions.
    1) "Activity could not be read"
    2) "Action has been stopped"
    3) error while processing the item can not be displayed
    if you give any idea/clue how to handle these exceptions then it would be great help to me
    Thanks
    Sunil

  • Handling events in BSP application using WML tag Extensions

    Hello Everyone  ,
                            We are developing a BSP applications for Mobile handheld using WML tag library. I am looking for some code samples to know how we can handle evevents inside the BSP using the WML tag library.
    Can any one of  you plesae help us by placing a code snippet for handling onInputprocessing() methods (BSP Using WML Tag extensions).
    I mean to ask how we can handle events inside the BSP applications that uses the WML tag library.
    I know about how to handle BSP events using HTMLB and XHTMLB tags frameworks.
    Thanks for your help in advance.
    Thanks,
    Greetson

    Is this WML tag library something that is supplied by SAP u2013 as a BSP Extension Element?  Or are you just using WML tags directly in your layout?  I can tell you in general that if you want to generate HTMLB events from regular HTML code you can generate the JavaScript calls using the htmlbEvent tag of the BSP extension library.  However your tags have to be running within an HTMLB Content tag for this to work.
    If you want to work totally without HTMLB then you need to use the simple HTTP Post but format the input name as OnInputProcessing(<function code>) like this:
    <input type="submit" name="OnInputProcessing(ok)" value="OK">
    This will cause the OnInputProcessing event handler to trigger without needing any HTMLB tags (this is how it was done in WebAS 6.10 before we BSP Extensions).

  • How to use a method in sequence diagram from a class diagram

    Hello, can someone tell me how to use the method from class diagram in sequence diagram? so far i only can add a classifier to the object lifeline but i still cannot add the method from the class...
    thx

    Now that Web Services is around, I'd look at possibly implement a Web Service call in your applet, which can then be given back any object(s) on return. Set up your server side to handle Web Service calls. In this way, you can break the applet out into an application should you want to (with very little work) and it will still function the same

  • List recipe (tx. c201) in lsmw using recording method

    Hi.
    I'm trying to upload master data for recipe list (tx c201), and I'm not so sure which method I should use, i tried with an standard object but it works with idocs and i supposed to configure a lot of stuffs (ibounds, ports, etc), and using recording... how can i handle controls tables when the number of items it's variable?.
    Reading through the sdn i realized that it's good to work with two files, one with master data and the second one with detail or item data. Actually i used that method to upload data in lsmw but using a standard direct input program and works pretty good..., but using a recording I don't know how to handle this.
    Thanks in advance,
    Regards.
    Albio.-
    Message was edited by: Albio Vivas
    Message was edited by: Albio Vivas

    Get your test data from functional folks then do the recording based on that. After done with the recording you may delete the existing values(which are used for recording). This is because, for example say you are having the data in an EXCEL sheet and for a particular customer one of the fields is empty. In this case, the DB will be updated with the value provided in the recording.

  • ALV GRID DISPLAY USING FACTORY METHODS

    Hi all
    I am using factory methods for my alv grid display.
    I have a list of functionalities, for which i am not able to find a correct method..
    1) Header of alv(with all the values of the selection-screen)
    2)How to give text to a subtotal(ed) column, i.e. if i subtotal a qty field against a sorted field, i want to display ==> Nett Wt. = 123.00 (for first header entry) and so on for each header entry.
    3)how to remove the zeroes from a quantity field?
    4) Displaying the cells as blanks where data is 0( for quantity fields if i have a cell with zero value, it should be blank.)
    5) double click on a cell to open a transaction with the cell's value.
    Any help on this would be appreciated.
    Points will be rewarded for sure...
    Thanks & Regards
    Ravish Garg

    Hello Ravish
    Regarding the display of zero values as empty cells have a look at my <i>modified </i>sample report <b>ZUS_SDN_CL_SALV_TABLE_INTERACT</b>.
    *& Report  ZUS_SDN_CL_SALV_TABLE_INTERACT
    REPORT  zus_sdn_cl_salv_table_interact.
    TYPE-POOLS: abap.
    DATA:
      gt_knb1        TYPE STANDARD TABLE OF knb1.
    DATA:
      go_table       TYPE REF TO cl_salv_table,
      go_events      TYPE REF TO cl_salv_events_table.
    *       CLASS lcl_eventhandler DEFINITION
    CLASS lcl_eventhandler DEFINITION.
      PUBLIC SECTION.
        CLASS-METHODS:
          handle_double_click FOR EVENT
              if_salv_events_actions_table~double_click
              OF cl_salv_events_table
              IMPORTING
                row
                column.
    ENDCLASS.                    "lcl_eventhandler DEFINITION
    *       CLASS lcl_eventhandler IMPLEMENTATION
    CLASS lcl_eventhandler IMPLEMENTATION.
      METHOD handle_double_click.
    *   define local data
        DATA:
          lo_table   TYPE REF TO cl_salv_table,
          lt_orders  TYPE STANDARD TABLE OF bapiorders,
          ls_knb1    TYPE knb1.
        READ TABLE gt_knb1 INTO ls_knb1 INDEX row.
        IF ( syst-subrc = 0 ).
          CALL FUNCTION 'BAPI_SALESORDER_GETLIST'
            EXPORTING
              customer_number             = ls_knb1-kunnr
              sales_organization          = '1000'
    *         MATERIAL                    =
    *         DOCUMENT_DATE               =
    *         DOCUMENT_DATE_TO            =
    *         PURCHASE_ORDER              =
    *         TRANSACTION_GROUP           = 0
    *         PURCHASE_ORDER_NUMBER       =
    *       IMPORTING
    *         RETURN                      =
            TABLES
              sales_orders                = lt_orders.
    *     Create ALV grid instance
          TRY.
              CALL METHOD cl_salv_table=>factory
    *        EXPORTING
    *          LIST_DISPLAY   = IF_SALV_C_BOOL_SAP=>FALSE
    *          R_CONTAINER    =
    *          CONTAINER_NAME =
                IMPORTING
                  r_salv_table   = lo_table
                CHANGING
                  t_table        = lt_orders.
            CATCH cx_salv_msg .
          ENDTRY.
          lo_table->display( ).
    **      SET PARAMETER ID 'BUK' FIELD ls_knb1-bukrs.
    **      SET PARAMETER ID 'KUN' FIELD ls_knb1-kunnr.
    **      CALL TRANSACTION 'XD03' AND SKIP FIRST SCREEN.
        ENDIF.
      ENDMETHOD.                    "handle_double_click
    ENDCLASS.                    "lcl_eventhandler IMPLEMENTATION
    START-OF-SELECTION.
      SELECT        * FROM  knb1 INTO TABLE gt_knb1
             WHERE  bukrs  = '1000'.
    * Create ALV grid instance
      TRY.
          CALL METHOD cl_salv_table=>factory
    *    EXPORTING
    *      LIST_DISPLAY   = IF_SALV_C_BOOL_SAP=>FALSE
    *      R_CONTAINER    =
    *      CONTAINER_NAME =
            IMPORTING
              r_salv_table   = go_table
            CHANGING
              t_table        = gt_knb1.
        CATCH cx_salv_msg .
      ENDTRY.
    * Create event instance
      go_events = go_table->get_event( ).
    * Set event handler
      SET HANDLER:
        lcl_eventhandler=>handle_double_click FOR go_events.
      PERFORM modify_columns.
      go_table->display( ).
    END-OF-SELECTION.
    *&      Form  MODIFY_COLUMNS
    *       text
    *  -->  p1        text
    *  <--  p2        text
    FORM modify_columns .
    * define local data
      DATA:
        lt_dfies        TYPE ddfields,
        ls_dfies        TYPE dfies,
        lo_typedescr    TYPE REF TO cl_abap_typedescr,
        lo_strucdescr   TYPE REF TO cl_abap_structdescr,
        lo_tabledescr   TYPE REF TO cl_abap_tabledescr,
        lo_columns      TYPE REF TO cl_salv_columns_table,
        lo_column       TYPE REF TO cl_salv_column.
      lo_columns = go_table->get_columns( ).
      lo_typedescr = cl_abap_typedescr=>describe_by_data( gt_knb1 ).
      lo_tabledescr ?= lo_typedescr.
      lo_strucdescr ?= lo_tabledescr->get_table_line_type( ).
      lt_dfies = lo_strucdescr->get_ddic_field_list( ).
      LOOP AT lt_dfies INTO ls_dfies.
        lo_column = lo_columns->get_column( ls_dfies-fieldname ).
        IF ( ls_dfies-keyflag = abap_true ).
          CONTINUE.
        ELSEIF ( ls_dfies-fieldname = 'WEBTR' ).  " Bill of ex. limit
          lo_column->set_zero( if_salv_c_bool_sap=>true ).   " display zero
          lo_column->set_zero( if_salv_c_bool_sap=>false ).  " hide zero
        ELSE.
          lo_column->set_technical( if_salv_c_bool_sap=>true ).  " hide col
        ENDIF.
      ENDLOOP.
    ENDFORM.                    " MODIFY_COLUMNS
    Regards
      Uwe

  • How to handle lock object in BDC  call transcation method?

    Hi,
    how to handle lock object in BDC  call transcation method?
    Thanks In advances.

    If you are updating Z-fields then you need to create a lock entry, before you use call transaction.
    After creating lock object, please use FM Enqueue_<lockname> before CALL transaction and FM Dequeue_<lockname> after you have commited your data.
    Thanks,
    Kartavya

  • Datapump exp and imp using API method

    Good Day All,
    I want to know what is the best way of error handling of datapump export and Import using API. I need to implement in my current project as there lot of limitations and the only way to see the process worked is writing the code with error handling method using exceptions. I have seen some examples on the web but if there are practicle examples or good links with examples that will work sure way, I would like to know and explore. I have never used API method so I am not sure of it.
    Thanks a lot for your time.
    Maggie.

    I wrote the procedure with error handling but it does not out put any information of the statuses while kicking off the expdp process. I have put dbms_output.put_line as per oracle docs example but it doesnt display any messages, just kicks off and created dumpfiles. As a happy path its ok but I need to track if something goes wrong. I even stated set serveroutput on sqlplus. It doesnt even display if job started. Please help me where I made a mistake to display the status . Do I need to modify or add anything. Help!!
    CREATE OR REPLACE PROCEDURE SCHEMAS_EXPORT_TEST AS
    --Using Exception Handling During a Simple Schema Export
    --This Proceedure shows a simple schema export using the Data Pump API.
    --It extends to show how to use exception handling to catch the SUCCESS_WITH_INFO case,
    --and how to use the GET_STATUS procedure to retrieve additional information about errors.
    --If you want to get status up to the current point, but a handle has not yet been obtained,
    --you can use NULL for DBMS_DATAPUMP.GET_STATUS.http://docs.oracle.com/cd/B19306_01/server.102/b14215/dp_api.htm
    h1 number; -- Data Pump job handle
    l_handle number;
    ind NUMBER; -- Loop index
    spos NUMBER; -- String starting position
    slen NUMBER; -- String length for output
    percent_done NUMBER; -- Percentage of job complete
    job_state VARCHAR2(30); -- To keep track of job state
    sts ku$_Status; -- The status object returned by get_status
    le ku$_LogEntry; -- For WIP and error messages
    js ku$_JobStatus; -- The job status from get_status
    jd ku$_JobDesc; -- The job description from get_status
    BEGIN
    h1 := dbms_datapump.open (operation => 'EXPORT',job_mode => 'SCHEMA');
    dbms_datapump.add_file (handle => h1,filename => 'SCHEMA_BKP_%U.DMP',directory => 'BKP_SCHEMA_EXPIMP',filetype => DBMS_DATAPUMP.KU$_FILE_TYPE_DUMP_FILE);
    dbms_datapump.add_file (handle => h1,directory => 'BKP_SCHEMA_EXPIMP',filename => 'SCHEMA_BKP_EX.log',filetype => DBMS_DATAPUMP.KU$_FILE_TYPE_LOG_FILE);
    ---- A metadata filter is used to specify the schema that will be exported.
    dbms_datapump.metadata_filter (handle => h1, name => 'SCHEMA_LIST',value => q'|'XXXXXXXXXX'|');
    dbms_datapump.set_parallel( handle => h1, degree => 4);
    -- Start the job. An exception will be returned if something is not set up
    -- properly.One possible exception that will be handled differently is the
    -- success_with_info exception. success_with_info means the job started
    -- successfully, but more information is available through get_status about
    -- conditions around the start_job that the user might want to be aware of.
    begin
    dbms_datapump.start_job (handle => h1);
    dbms_output.put_line('Data Pump job started successfully');
    exception
    when others then
    if sqlcode = dbms_datapump.success_with_info_num
    then
    dbms_output.put_line('Data Pump job started with info available:');
    dbms_datapump.get_status(h1,
    dbms_datapump.ku$_status_job_error,0,
    job_state,sts);
    if (bitand(sts.mask,dbms_datapump.ku$_status_job_error) != 0)
    then
    le := sts.error;
    if le is not null
    then
    ind := le.FIRST;
    while ind is not null loop
    dbms_output.put_line(le(ind).LogText);
    ind := le.NEXT(ind);
    end loop;
    end if;
    end if;
    else
    raise;
    end if;
    end;
    -- The export job should now be running. In the following loop, we will monitor the job until it completes.
    -- In the meantime, progress information is displayed.
    percent_done := 0;
    job_state := 'UNDEFINED';
    while (job_state != 'COMPLETED') and (job_state != 'STOPPED') loop
    dbms_datapump.get_status(h1,
    dbms_datapump.ku$_status_job_error +
    dbms_datapump.ku$_status_job_status +
    dbms_datapump.ku$_status_wip,-1,job_state,sts);
    js := sts.job_status;
    -- If the percentage done changed, display the new value.
    if js.percent_done != percent_done
    then
    dbms_output.put_line('*** Job percent done = ' ||to_char(js.percent_done));
    percent_done := js.percent_done;
    end if;
    -- Display any work-in-progress (WIP) or error messages that were received for
    -- the job.
    if (bitand(sts.mask,dbms_datapump.ku$_status_wip) != 0)
    then
    le := sts.wip;
    else
    if (bitand(sts.mask,dbms_datapump.ku$_status_job_error) != 0)
    then
    le := sts.error;
    else
    le := null;
    end if;
    end if;
    if le is not null
    then
    ind := le.FIRST;
    while ind is not null loop
    dbms_output.put_line(le(ind).LogText);
    ind := le.NEXT(ind);
    end loop;
    end if;
    end loop;
    -- Indicate that the job finished and detach from it.
    dbms_output.put_line('Job has completed');
    dbms_output.put_line('Final job state = ' || job_state);
    dbms_datapump.detach (handle => h1);
    -- Any exceptions that propagated to this point will be captured. The
    -- details will be retrieved from get_status and displayed.
    Exception
    when others then
    dbms_output.put_line('Exception in Data Pump job');
    dbms_datapump.get_status(h1,dbms_datapump.ku$_status_job_error,0, job_state,sts);
    if (bitand(sts.mask,dbms_datapump.ku$_status_job_error) != 0)
    then
    le := sts.error;
    if le is not null
    then
    ind := le.FIRST;
    while ind is not null loop
    spos := 1;
    slen := length(le(ind).LogText);
    if slen > 255
    then
    slen := 255;
    end if;
    while slen > 0 loop
    dbms_output.put_line(substr(le(ind).LogText,spos,slen));
    spos := spos + 255;
    slen := length(le(ind).LogText) + 1 - spos;
    end loop;
    ind := le.NEXT(ind);
    end loop;
    end if;
    end if;
    END SCHEMAS_EXPORT_TEST;

Maybe you are looking for