RealSense error calling rs2_pipeline_start_with_config

I successfully built realsense-gstreamer and this is the output of gst-inspect-1.0 build/src/libgstrealsensesrc.so

Plugin Details:
  Name                     realsensesrc
  Description              Realsense plugin
  Filename                 build/src/libgstrealsensesrc.so
  Version                  0.1.0
  License                  LGPL
  Source module            gst-realsensesrc-plugin
  Binary package           GStreamer RealSense Source Plug-ins
realsensesrc: RealsenseSrc
  rsdemux: RealSense Source Demuxer

  2 features:
  +-- 2 elements

But while running gst-launch-1.0 -v -m realsensesrc ! videoconvert ! autovideosink:

Setting pipeline to PAUSED ...
ERROR: from element /GstPipeline:pipeline0/GstRealsenseSrc:realsensesrc0: RealSense error calling rs2_pipeline_start_with_config (pipe:0xaaaae8e89070, config:0xaaaae8e89050)
Additional debug info:
../src/gstrealsensesrc.cpp(638): gst_realsense_src_start (): /GstPipeline:pipeline0/GstRealsenseSrc:realsensesrc0
ERROR: pipeline doesn't want to preroll.
ERROR: from element /GstPipeline:pipeline0/GstRealsenseSrc:realsensesrc0: GStreamer error: state change failed and some element failed to post a proper error message with the reason for the failure.
Additional debug info:
../libs/gst/base/gstbasesrc.c(3556): gst_base_src_start (): /GstPipeline:pipeline0/GstRealsenseSrc:realsensesrc0:
Failed to start
ERROR: pipeline doesn't want to preroll.
Failed to set pipeline to PAUSED.
Setting pipeline to NULL ...
Freeing pipeline ...

The bug resolved after I used the usb provided with realsense instead of using my own usb cable.