Gstreamer with visual C++ express 2010 - tutorial 1

前端 未结 3 1914
春和景丽
春和景丽 2020-12-19 08:15

I\'m new to Gstreamer, and I have problems when I compile the tutorial 1 of Gstreamer. I\'m using Windows 7 64 bit with visual c++ express 2010, and Gstreamer SDK 2012.11 32

相关标签:
3条回答
  • 2020-12-19 08:21

    I think you are using gstreamer 1.0, If I am not wrong then try to use

    "playbin" instead of "palybin2"

    "playbin2" is renamed to "playbin" from gstreamer 1.0

    0 讨论(0)
  • 2020-12-19 08:33

    Second error:

    I would like to explain this for Ubuntu 16.04 LTS users.

    To try examples from GStreamer tutorials sections you should compile & install from sources those repositories:

    gstreamer
    gst-plugins-base
    gst-plugins-good
    

    The reason is that versions used for the examples did not match versions I installed with apt (playbin was missing).

    Before compiling from source you will also need dependencies to build vorbis, vpx and souphttpsrc plugins (they are parts of repositories mentioned). You can install them by running:

    apt install libvorbis-dev libsoup2.4-dev libvpx-dev

    To check whether mentioned plugins were included in the repository build see ./configure output. If they were not maybe there are still some dependencies missing on your system. The output will tell you what's missing.

    After that you should successfully compile and run the example (you should see a video playback).

    A general flow for fixing initial installation problems with GStreamer is (as mentioned in accepted answer) using --gst-debug-level=4, finding out what plugins are missing and installing them.

    0 讨论(0)
  • 2020-12-19 08:40

    lFirst error

    Probably the code is compiled as C++, which is a bit more strict at enum casts. Try replacing: GST_MESSAGE_ERROR | GST_MESSAGE_EOS with (GstMessageType)(GST_MESSAGE_ERROR | GST_MESSAGE_EOS)

    Second error

    There is high probability, that the line:

    pipeline = gst_parse_launch ("playbin2 uri=file://E:/test_1.MOV", NULL);
    

    returns NULL, and the rest of errors are result of this. Why it could return NULL? There are many reasons. Maybe you have not installed plugin with "playbin2"? Try this:

    • Pass a pointer to GError structure as second parameter to gst_parse_launch (it has a message field which can give you some hint)
    • Pass --gst-debug-level=4 or even higher as a commandline parameter when running your program. You will see many informations at console output, the reason of failure will be somewhere there.
    0 讨论(0)
提交回复
热议问题