1) Redid the youtube video format list (added fallbacks for each quality
setting) and added a new config key youtube.preferred_format_ids, that
accepts a list of supported quality ids.
2) Added a GUI setting switcher that lets a user pick between predefined
video quality settings and respects the 'custom' setting. 'Custom'
should currently only be used if the user prefers 3D formats or 3GP.
All other variants are in the normal settings with sane fallbacks.
Existing users will not feel any change (current fmt=18 default is
respected). Only the default fallback for get_real_download_url() was
changed (to 720p), but that will never be called unless the user clears
her youtube.preferred_fmt_id variable.
After a year of basically no work towards Maemo 5 support,
I consider gPodder 3-on-Maemo 5 something that we won't ever
do, so the remaining codes goes. This also cleans up some
dead code in the Gtk UI that's been sitting there.
If anybody wants to step up and do something about that, be
my guest. If anything, I'd assume that if anything on the N900,
gPodder 3-on-Nemo Mobilemight be feasible, and in that case, it
should be "just like Harmattan" in most ways.
YouTube protects pages that contain violence, etc.. by
requiring users to login to prove they are over 18. We
can't determine the fmt_url_map in that case, so this
patch adds a better error message to the failed download.
YouTube have once again changed their internal
data structures (this time it's "fmt_map"). This
patch fixes these issues by updating the list of
formats known by gPodder and YouTube.
The following command has been used:
grep -r '2005-2009 Thomas Perl and the gPodder Team' * | cut -d: -f1 |
xargs sed -i -e 's/2005-2009 Thomas Perl and the gPodder Team/2005-2010
Thomas Perl and the gPodder Team/g'
Users can now set their preferred YouTube fmt_id
for downloads of YouTube videos. The default has
been changed to 18, because that's a known-good
video format that should work on most machines.
Use gpodder.ui.{desktop,diablo,fremantle} for
detecting which environment and interface to use.
Fremantleized versions of the episode selector
and podcast directory windows roughly done.
Remove the GTK+ dependency in gpodder.youtube by making the
only function that is in there fake a opml.Importer-like object,
so we can use the model from gpodder.gtkui.opml to display the
results instead of generating the model inside gpodder.youtube.