[Work Notes] GStreamer: Migrating from 0.10.x to 1.0.x in OpenWrt

I start to move the gstreamer version from 0.10.x to 1.0.x in openwrt. Two purpose, one is to get much more familiar with the gstreamer applications and plugins development, another one is to assist my colleagues for next schedule. Just make a quick note here.

Official gstreamer packages version I use is 1.0.5:

  • gstreamer core → Modify Makefile and patch, compile ok.
  • gst-plugins-base → Modify Makefile and patch, compile ok.
  • gst-plugins-good → Modify Makefile and patch, compile ok.
  • gst-plugins-ugly → To be check if required.
  • gst-plugins-bad → Modify Makefile and patch, compile ok.
  • gst-libav → To be check if required.

Proprietary plugins:

  • package folder → Modify the Makefile.
  • gst-plugin folder → Modify the configure.ac
  • gst-plugin/src folder → Modify the Makefile.am
  • plugin source:
    • GST_BOILERPLATE_FULL is gone, replace by G_DEFINE_TYPE_WITH_CODE
    • Add the parent_class definition.
    • init function parameters have changed.
    • Remove the deprecated functions.
    • audio: Needs lots of work.
    • buffer size: replace GST_BUFFER_SIZE() with gst_buffer_get_size().
    • buffer data: replace GST_BUFFER_DATA() by using gst_buffer_map to access the data.

Audio plugins:

  • GstRingBufferSpecGstAudioRingBufferSpec
  • The GstAudioRingBufferSpec has big changes. Lots of parameters are re-factored in GstAudioInfo.
  • Change audio/x-raw-int to audio/x-raw for pad template.

Applications:

gst-rtsp-server:

  • Execute autogen.sh and install the required tools.
  • Add AC_PROG_CXX in configure.ac (for C++ examples).
  • Create patch for gst-libs/gst/rtsp to use latest master version.
  • gst_debug_add_log_function() parameters changed from 2 to 3.
  • buffer size: replace GST_BUFFER_SIZE() with gst_buffer_get_size().
  • buffer data: replace GST_BUFFER_DATA() using gst_buffer_map.
  • g_thread_create removed; use g_thread_new.
  • gst_app_sink_set_callbacks() — callbacks structure changed.
  • GstRTSPMediaMapping renamed to GstRTSPMountPoints.
  • gst_rtsp_server_get_media_mapping()gst_rtsp_server_get_mount_points()
  • gst_rtsp_media_mapping_add_factory()gst_rtsp_mount_points_add_factory()
  • In configure.ac, remove WARNING_CFLAGS to prevent warnings from becoming errors.

Comments & Feedback