[Pidgin] #13095: Negotiation more reasonable media format from video source
Pidgin
trac at pidgin.im
Fri Dec 17 17:38:31 EST 2010
#13095: Negotiation more reasonable media format from video source
------------------------------------------+---------------------------------
Reporter: haakon | Owner: Maiku
Type: patch | Status: new
Component: Voice and Video | Version: 2.7.7
Keywords: video GstCapsFilter high CPU |
------------------------------------------+---------------------------------
Default Pidgin video source adds GstVideoScale and GstCapsFilter to the
pipeline, limiting the image dimensions to something about 350x280 (see
create_default_video_src() in gtkmedia.c).
However, when you use Voice/Video Settings plugin, the capabilities of
created video source are not limited, in practice highest possible
resolution is negotiated and the image must be scaled down, once for the
small preview in the Pidgin's media window and once before it is encoded
and streamed over network. For example on my older laptop (Pentium M
1.73GHz) rescaling from 1280x1024, that the webcam provides, eats nearly
100% CPU power and both sent and received videos are so choppy that decent
video conversation is impossible. With Pidgin default video source and
352x288 video directly from the webcam, the call runs smoothly with only
about 40% CPU load.
I suggest to improve the performance with this patch that
* adds a GstCapsFilter between every video source and the rest of
pipeline, forcing the same capabilities as "pidgindefaultvideosrc"
* adds public API allowing protocol plugins to change the video
capabilities when it is convenient (if the particular protocol supports
higher resolution video and the machine has enough CPU power)
I split the patch in two parts so that the API extension can wait for
2.8.0 and the more important part added to next 2.7.X release.
--
Ticket URL: <http://developer.pidgin.im/ticket/13095>
Pidgin <http://pidgin.im>
Pidgin
More information about the Tracker
mailing list