h.264 encoder issue

kartik natarajan kartik8n8 at gmail.com
Tue Sep 4 02:11:11 PDT 2012


Sure, here it is. Thanks for your cooperation

This works

gst-launch -v 'v4l2src always-copy=FALSE num-buffers=800
input-src=composite ! video/x-raw-yuv, format=\(fourcc\)NV12, width=720,
height=480 ! TIVidenc1 codecName=h264enc engineName=codecServer !filesink
location=/home/gr8.264'****

** **

#include <gst/gst.h>**

#include<glib.h>


#define STATIC_IP "127.0.0.1"


int main(int argc, char *argv[])****

{****

        GMainLoop *loop;****

** **

        GstElement *pline, *src, *enc,*pay, *sink;****

        GstBus *bus;****

        guint major,minor, micro, nano;****

** **

        gst_init(&argc, &argv);****

        gst_version(&major, &minor,&micro, &nano);****

        printf("gstreamer version: %d.%d.%d",major,minor,micro);****

        loop = g_main_loop_new(NULL, FALSE);****

pline = gst_pipeline_new ("Ossler video");****

        if(!pline)****

        g_printerr("\npipeline creation failed\n");****

        else****

        g_print("\npipeline created\n");****

        src = gst_element_factory_make("v4lsrc", "src");****

        if(!src)****

        g_printerr("\nsrc creation failed\n");****

        else****

        g_print("\nv4lsrc created\n");****

        //************************************************************

        enc = gst_element_factory_make("TIVidenc", "enc");****

        if(!enc)****

        g_printerr("\nencoder TI-Video enc creation failed\n");****

        else****

        g_print("\n264 encoder created\n");****

        g_assert(enc);****

//      g_object_set();****

        //******************************************************************

        sink = gst_element_factory_make("udpsink", "sink");****

        if(!sink)****

        g_printerr("\nudp sink creation failed\n");****

          else****

        g_print("\nudp sink created\n");****

        g_assert(sink);****

        g_object_set (sink, "port", 1234, "host", STATIC_IP, NULL);****

** **

       pay = gst_element_factory_make("rtph264pay", "my264pay");****

        if(!sink)****

        g_printerr("\npayload element creation failed\n");****

        else****

        g_print("\n payloader created\n");****

** **

        //**********************add all in
bin*************************************

        gst_bin_add_many(GST_BIN(pline),src,enc,pay,sink,NULL);****

** **

** **

        //*********************link
them*******************************************

        gst_element_link_many(src,enc,pay,sink,NULL);****

** **

** **


//*********************cleanup*******************************************

        gst_element_set_state(pline,GST_STATE_NULL);****

//      gst_object_unref(pline);****

//      gst_main_loop_unref(loop);     ****

        return 0;****

        }


I am compiling this code with this

arm-none-linux-gnueabi-gcc -o gstream gstream.c -lz `pkg-config --cflags
--libs gstreamer-0.10`


I tried this too..

arm-none-linux-gnueabi-gcc -o gstream gstream.c -lz  -L $(LIB)/ `pkg-config
--cflags --libs gstreamer-0.10`

  [where LIB is the path where the libgstticodec.so library is for the
TIVidEnc is]





N.Kartik

On Tue, Sep 4, 2012 at 2:22 PM, Jean-Michel Hautbois <jhautbois at gmail.com>wrote:

> Well, in order to go further, we will need more information, a paste
> of a part of your code, and a GST_DEBUG output for instance.
> Can you paste your gst-launch line too ?
>
> JM
>
> 2012/9/4 kartik natarajan <kartik8n8 at gmail.com>:
> > Thanks for your response.
> > The TIVidEnc seems to fail too.
> > Any suggestions?
> > I am developing the gstreamer app using the same like only.
> > I figured the elements I would need and have done a simple factory make,
> > only the encoder seems to fail.
> >
> >
> > On Tue, Sep 4, 2012 at 1:19 PM, Jean-Michel Hautbois <
> jhautbois at gmail.com>
> > wrote:
> >>
> >> Hi,
> >>
> >> Your element should not be x264enc, but TIVidEnc :
> >>  enc = gst_element_factory_make("x264enc", "encoder");
> >> Then, you can set its properties using g_object_set();
> >>
> >> If you did not read it, please take a look at this documentation :
> >>
> >>
> http://gstreamer.freedesktop.org/data/doc/gstreamer/head/manual/html/index.html
> >>
> >> Regards,
> >> JM
> >>
> >> 2012/9/4 kartik natarajan <kartik8n8 at gmail.com>:
> >> > Hi,
> >> >     DVSDK on DM365, developing a gstreamer app to encode raw images
> into
> >> > h.264 and store in file.
> >> >  I have been able to execute a gst-launch where I provide
> >> > codecName=h264enc
> >> > to encode raw video and store it in a file. This works well.
> >> > Now I build an application on gstreamer.
> >> > I have tried doing enc = gst_element_factory_make("x264enc",
> "encoder");
> >> > but it fails with enc getting a NULL. I tried "h264enc" and morbidly
> did
> >> > "GstX264Enc" as well for the factory name but they failed too.
> >> > How do I get this going ahead?
> >> >
> >> > Thanks in advance
> >> >
> >> > N.Kartik
> >> >
> >> >
> >> > _______________________________________________
> >> > gstreamer-devel mailing list
> >> > gstreamer-devel at lists.freedesktop.org
> >> > http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> >> >
> >> _______________________________________________
> >> gstreamer-devel mailing list
> >> gstreamer-devel at lists.freedesktop.org
> >> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> >
> >
> >
> >
> > --
> > Believe in your dreams, they have a strange way of coming true!!!
> >
> > _______________________________________________
> > gstreamer-devel mailing list
> > gstreamer-devel at lists.freedesktop.org
> > http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> >
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>



-- 
Believe in your dreams, they have a strange way of coming true!!!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20120904/69524bee/attachment-0001.html>


More information about the gstreamer-devel mailing list