Gstreamer Настройка источника файла из функции с указателем const char - PullRequest
1 голос
/ 13 июня 2011

проблема в том, что если я установлю одинаковые значения для членов charArray, ошибок не будет, но если я приведу разные значения для элементов массива, например, charArray [0] = "x", charArray [1] = "y«..предоставляет мне сообщение об ошибке с сообщением ниже,

» Программа прервала прием сигнала 6 (прервано) »

Вот кодовый блок, который я использую,

    char *charArray[2]; //global

    static void video_add(GstElement *mixer,int top,int left,int index){

      ....

      src = gst_element_factory_make ("filesrc", NULL);
      g_object_set (G_OBJECT (src), "location", charArray[index], NULL);

      ...
    }

void play(){

.....

 charArray[0] = "/root/yu.mp4";
 charArray[1] = "/root/asd.mpg";
 video_add (videomixer,-300,-310,0);
 video_add (videomixer,-20,-20,1);

.....


}

Также, если я обновлю свою функцию следующим образом

static void video_add(GstElement *mixer,int top,int left,char *filePath), результат будет таким же, а

video_add (videomixer,-300,-310,"/root/a.mpg");
 video_add (videomixer,-20,-20,1,"/root/a.mpg");

не выдаст ошибок,

 video_add (videomixer,-300,-310,"/root/a.mpg");
 video_add (videomixer,-20,-20,1,"/root/b.mpg");

выдает мне ту же ошибку «Программа прервала прием сигнала 6 (Прервано)».

...