For Linux, you can use libunicap: https://github.com/unicap/unicap/tree/master/libunicap
Sample code here: https://github.com/salsaman/LiVES/blob/master/src/videodev.c Regards, Salsaman. http://lives-video.com https://www.openhub.net/accounts/salsaman On Wed, Apr 17, 2019 at 11:43 AM Philippe Gorley < [email protected]> wrote: > On 2019-04-17 9:03 a.m., Hristo Ivanov wrote: > > Hi. > > > > The implementation of > > 'avdevice_capabilities_create'( > https://ffmpeg.org/doxygen/trunk/avdevice_8c_source.html#l00143) > > starts with the following lines: > > > > 1 int ret; 2 av_assert0(s && caps); 3 av_assert0(s->iformat || > > s->oformat); 4 if ((s->oformat && > > !s->oformat->create_device_capabilities) || 5 (s->iformat && > > !s->iformat->create_device_capabilities)) 6 return AVERROR(ENOSYS); > > > > My guess is the -40(ENOSYS) error is returned in line 6. Can you check > > in your code if 'm_pFormatCtxInCam->iformat->create_device_capabilities' > > is different from null. > > The next step would be to understand why is > > 'm_pFormatCtxInCam->iformat->create_device_capabilities' null. With > > ffmpeg you just have to dive in the source code and try to understand it. > > Compiling a debug version of the ffmpeg libs/dlls is extremely useful > > for this purpose. > > It is null because, while the API exists, it is not implemented. AFAIK, > no device implements it. > > Source: I grepped the latest source for avdevice_capabilities_create and > found nothing of interest. > > The way to go is to either parse the logs or directly use the DShow/V4L2 > libraries. > > You can also implement the API yourself and send the patch to the > ffmpeg-devel mailing list. ;) > > > > > > Maybe I did not initialize everything correctly or bad ordering of > > open input? > > > >> Please see my code: > > > > > > The code seems correct, my only problem with the above code is in the > > next line: > > > > > > > int ret = avformat_open_input(&m_pFormatCtxInCam, szUrl, m_pInFrmt, > > &m_pInOptions); > > > > Try using no(NULL) options: > > > > > > int ret = avformat_open_input(&m_pFormatCtxInCam, szUrl, m_pInFrmt, > NULL); > > > > Maybe opening an input with options shuts down the querying capabilities > > of the input, I don't really know, it's just a guess. > > > > > > Regards. > > > > > > _______________________________________________ > > Libav-user mailing list > > [email protected] > > https://ffmpeg.org/mailman/listinfo/libav-user > > > > To unsubscribe, visit link above, or email > > [email protected] with subject "unsubscribe". > > > > -- > Philippe Gorley > Free Software Consultant | Montréal, Qc > Savoir-faire Linux > _______________________________________________ > Libav-user mailing list > [email protected] > https://ffmpeg.org/mailman/listinfo/libav-user > > To unsubscribe, visit link above, or email > [email protected] with subject "unsubscribe".
_______________________________________________ Libav-user mailing list [email protected] https://ffmpeg.org/mailman/listinfo/libav-user To unsubscribe, visit link above, or email [email protected] with subject "unsubscribe".
