Em vez de gravar os dados que o GstBuffer está gerenciando, você está sobrescrevendo o objeto GstBuffer com a chamada memcpy final. Em vez disso, você deseja gravar em GST_BUFFER_DATA (buffer) .
Com isso dito, se você quiser apenas um novo buffer com os mesmos dados, parece mais fácil usar apenas a função gst_buffer_copy() .