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".