Hi,

You have to allocate CMEM memory in your application and take physical address of that memry and pass that physical address in IPIPE argument.

Best Regards,
Hitesh Patel
Embedded Engineer
e-Infochips Pvt. Ltd.
Cubic Number -  (KB-320)
(O) +91 79 2656-3705/4971/0265  Extn. - 242

www.einfochips.com



On 12/05/2010 11:02 AM, Raffaele Recalcati wrote:
Hi Albert,

On Mon, Aug 16, 2010 at 1:17 PM, hitesh <[email protected] <mailto:[email protected]>> wrote:

    Thanks  Albert for your prompt response..

    If my application want to allocate memory  and I want to pass that
    memory to IPIPE module then
    what should be the parameter?
    Do you have any sample application that only doing chroma
    conversion from 422 to 420 without resizing of width and height?
    My application getting kernel panic as below.


I need to do this because the PAL video in, YUV422 need to be converted to YUV420 before it can be compressed to H264 by HDVICP.
I also need to integrate it in gstreamer.
Can you point me to the right direction?

Regards,
Raffaele



    Read from file done
    hResizerHandle 0x2f6c0,srcOffset 0x8ba3e000,destOffset 0x8b87c000
    Again in Hell1
    Again in Hell22
    Unable to handle kernel NULL pointer dereference at virtual
    address 00000000
    Resize operationpgd = c41f0000
     completed succe[00000000] *pgd=8770f031ssfully.Write to,
    *pte=00000000 file done
    cou, *ppte=00000000nt 13
    file read

    Read from fileInternal error: Oops: 817 [#1]
    Modules linked in: dm365mmap edmak irqk cmemk
    CPU: 0
    PC is at nfs_update_request+0x194/0x36c
    LR is at radix_tree_node_alloc+0x24/0x5c
    pc : [<c0120798>]    lr : [<c01d68dc>]    Not tainted
    sp : c41dbc70  ip : c057c960  fp : c41dbcb4
    r10: c40f8a10  r9 : c40f8918  r8 : 00000000
    r7 : c40f89f0  r6 : c44863a0  r5 : ffffffef  r4 : 00000000
    r3 : ffffffef  r2 : 00000001  r1 : c33e7ee8  r0 : ffffffef
    Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  Segment user
    Control: 5317F
    Table: 841F0000  DAC: 00000015
    Process resizer_test (pid: 830, stack limit = 0xc41da258)
    Stack: (0xc41dbc70 to 0xc41dc000)

    -Hitesh




    On 08/16/2010 03:47 PM, Albert Burbea wrote:
    Hi
    seems strange to me that you use
    convert.in_buff.index = 0;
    convert.out_buff1.index = 0;
    with the same index.
    In the dvsdk for DaVinci (2.1 to the best of my knowledge) you
    should use -1 for buffers that have not been allocated by the
    resizer itself.
    I hope this did not confuse you
    Albert

    On Mon, Aug 16, 2010 at 11:18 AM, hitesh
    <[email protected]
    <mailto:[email protected]>> wrote:

         Hi All,

        I am facing memory leak issue in Chroma Conversion module of
         DM365 IPIPE.
        When I run the ioctl(resizer_fd, RSZ_RESIZE, &convert) ioctl,
        It increase my memory usage and it is gradually increasing it in
        every call of of ioctl. Do you have any solution? I want to
        do chroma conversion for encode my video with H264 encoder.

        My configuration for IPIPE is as below.
           INPUT_WIDTH =1280
           INPUT_HEIGHT =720

                rsz_ss_config.input.image_width = INPUT_WIDTH;
               rsz_ss_config.input.image_height = INPUT_HEIGHT;
               rsz_ss_config.input.ppln =
        rsz_ss_config.input.image_width + 8;
               rsz_ss_config.input.lpfr =
        rsz_ss_config.input.image_height + 10;
               rsz_ss_config.input.pix_fmt = IPIPE_UYVY;
               rsz_ss_config.output1.pix_fmt = IPIPE_YUV420SP;
               rsz_ss_config.output1.enable = 1;
               rsz_ss_config.output1.width = INPUT_WIDTH;
               rsz_ss_config.output1.height = INPUT_HEIGHT;
               rsz_ss_config.output2.enable = 0;

               rsz_chan_config.oper_mode = IMP_MODE_SINGLE_SHOT;
               rsz_chan_config.chain = 0;


        I am calling ioctl as below.

         convert.in_buff.buf_type = IMP_BUF_IN;
               convert.in_buff.index = 0;
               convert.in_buff.offset = buf_in[0].offset;
               convert.in_buff.size = buf_in[0].size;
               convert.out_buff1.buf_type = IMP_BUF_OUT1;
               convert.out_buff1.index = 0;
               convert.out_buff1.offset = buf_out1[0].offset;
               convert.out_buff1.size = buf_out1[0].size;
               if (ioctl(resizer_fd, RSZ_RESIZE, &convert) < 0) {
                       perror("Error in doing preview\n");
                       munmap(input_buffer, buf_in[0].size);
                       munmap(output_buffer, buf_out1[0].size);
                       close(resizer_fd);
                       fclose(inp_f);
                       fclose(outp_f);
                       exit(1);
               }



        Thanks
        Hitesh


        _______________________________________________
        Davinci-linux-open-source mailing list
        [email protected]
        <mailto:[email protected]>
        http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source




-- Albert Burbea
    Harishonim 8
    Ramat Gan 52502, Israel
    Tel/Fax + 972-3-7526016
    Mobile: +972-52-3541842


    *Email Scanned for Virus & Dangerous Content by
    :**www.CleanMailGateway.com <http://www.CleanMailGateway.com>*



    _______________________________________________
    Davinci-linux-open-source mailing list
    [email protected]
    <mailto:[email protected]>
    http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source




--
www.opensurf.it <http://www.opensurf.it>



*Email Scanned for Virus & Dangerous Content by :**www.CleanMailGateway.com*



--


_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source

Reply via email to