Hi,
VideoTest.c does not work because of missing code. It will segfault on VideoEncCreate, because gVEncoderList.list (venc_device.c) has not been initialized.
More specificially it segfaults on (posVEncNode) in the following (venc_device.c)
To initialize this list something needs to call VEncoderRegister , but nothing in this code base calls this function. In the case of VideoTest.c something needs to call VEncoderRegister with a VENC_DEVICE for H264 providing the functions for setting/getting/encoding/init/uninit/etc , I did not see this in the code base either. I think this might be unfortunately missing, making this code not very usable at the moment.
To reproduce the error you can compile and run the following (linked against library from this repo),
#include "vencoder.h"
int main () {
VideoEncoder *pVideoEnc = VideoEncCreate (VENC_CODEC_H264);
return 0;
}
I am trying to make a nice gstreamer plugin.... any help would be appreciated.
Hi, VideoTest.c does not work because of missing code. It will segfault on VideoEncCreate, because gVEncoderList.list (venc_device.c) has not been initialized. More specificially it segfaults on (posVEncNode) in the following (venc_device.c)
To initialize this list something needs to call VEncoderRegister , but nothing in this code base calls this function. In the case of VideoTest.c something needs to call VEncoderRegister with a VENC_DEVICE for H264 providing the functions for setting/getting/encoding/init/uninit/etc , I did not see this in the code base either. I think this might be unfortunately missing, making this code not very usable at the moment.
To reproduce the error you can compile and run the following (linked against library from this repo),
I am trying to make a nice gstreamer plugin.... any help would be appreciated.