After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 685483 - Should check which codecs we actually support rather than hardcoding them
Should check which codecs we actually support rather than hardcoding them
Status: RESOLVED OBSOLETE
Product: empathy
Classification: Core
Component: VoIP
2.33.x
Other Linux
: Normal normal
: ---
Assigned To: empathy-maint
empathy-maint
Depends on:
Blocks:
 
 
Reported: 2012-10-04 09:16 UTC by Guillaume Desmottes
Modified: 2018-05-22 15:46 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Guillaume Desmottes 2012-10-04 09:16:45 UTC
Currently empathy-call's client file and code hardcodes that we support H264 which may be fault in a lot of install.

We should remove the client file so MC will invoke empathy-call which will be able to check using FS's API if we actually support it or not.
Comment 1 Guillaume Desmottes 2012-10-04 12:35:45 UTC
I didn't find any Farstream API to get the list of supported codec. The closest thing seems to be the FsSession:codecs property but when empathy-call is starting it doesn't have any FsSession yet.

Olivier: what's the best way to get the list of supported codecs?
Comment 2 Olivier Crête 2012-10-04 14:43:42 UTC
There's no API for that.. I think we should just try making the call and fail if there are no common codecs.
Comment 3 Christian Fredrik Kalager Schaller 2012-10-04 14:52:37 UTC
What happens if we fail currently? a call out to the codec install library? a clear message what is the problem?
Comment 4 Olivier Crête 2012-10-04 15:12:49 UTC
Ideally a call to the codec installer, but that's non-trivial as we'd have to add code to convert the SDP name into the name GStreamer expects.
Comment 5 Guillaume Desmottes 2012-10-05 09:06:47 UTC
(In reply to comment #2)
> There's no API for that.. I think we should just try making the call and fail
> if there are no common codecs.

Could we add some API for that? The plan is to know if we should advertise or not that we support H264 so if the call fails after it's already too late.

Another option would be to use  gst_element_factory_find() but then we'll depend on some specific gst elements.
Comment 6 Olivier Crête 2012-10-05 13:48:58 UTC
My idea is that if we don't have h.264, we should let the user install it like totem does instead of just hiding the problem.
Comment 7 Christian Fredrik Kalager Schaller 2012-10-05 13:57:24 UTC
Hmm, but maybe it would be a better user experience to not offer video calling, but instead have some kind of button or similar to kick off the codec finder?

Also is really converting the SDP name to the needed GStreamer names that hard considering we don't really need a generic solution, in practice it is a known list of 5-6 codecs right?
Comment 8 Guillaume Desmottes 2012-12-26 12:11:01 UTC
(In reply to comment #6)
> My idea is that if we don't have h.264, we should let the user install it like
> totem does instead of just hiding the problem.

Right, but until we live in the bright future when this will be easily doable, shouldn't we just stop claiming that we support H264 if we actually don't?
Comment 9 Olivier Crête 2012-12-26 17:49:27 UTC
I guess one could easily create a FsRtpConference, a video FsSession, set the codec preferences and see if H.264 is in "codecs-without-config" property on the session. Probably the kind of functionality I should be adding to FsIO..
Comment 10 Guillaume Desmottes 2012-12-28 13:11:31 UTC
Cool, I opened https://bugs.freedesktop.org/show_bug.cgi?id=58828 requesting such API.
Comment 11 GNOME Infrastructure Team 2018-05-22 15:46:33 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to GNOME's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.gnome.org/GNOME/empathy/issues/595.