More accurate seeking with libdvdnav
http://trac.xbmc.org/ticket/12212 applied to current codebase
full credit should go to gnosygnu, see
http://forum.videolan.org/viewtopic.php?f=32&t=76308&start=20#p316583
Add diff in lib/libdvd/patches for tracking against upstream
Update to rev. 7 from upstream
http://lists.mplayerhq.hu/pipermail/dvdnav-discuss/2012-December/001837.html
[libdvdnav] re-enable reading DVD serial string
[libdvdnav] fix redundant close
[libdvd] add patch for reenable serial string
Expose get_title_string and get_serial_string through DVDInputStreamNavigator
Calculate DVD unique ID using libdvd's volume label and serial string
cleanup unused HashDVD code
[Linux] systemd/logind/UPower power management improvements
This patch improves the power management functionality
on Linux systems running logind and optionally UPower.

While the old class was named SystemdUPowerSyscall, I renamed
it to LogindUPowerSyscall since systemd itself is technically
not used. Logind can run without systemd (Ubuntu is even planning
to do this).

The new LogindUPowerSyscall class does not inherit
from the UPowerSyscall class anymore. The little
functionality needed by UPower is implemented separately
in the rewritten class. I originally extended the existing
class, but this resulted in pretty messy code.

Advantages:
- The power management functionality provided by logind
  now works even when UPower is not available on the system. Previously
  nothing would work without UPower, even though UPower provided nothing
  but the battery level. The complete suspend/poweroff etc.
  functionality is provided by logind itself and does not rely on
  UPower anymore. The class itself checks whether UPower is available,
  and if not, avoids any battery related operations.

- As mentioned, the suspend functionality by UPower is not used anymore.
  This is also important because this functionality is being deprecated:
  see http://lists.freedesktop.org/archives/devkit-devel/2013-January/001339.html

- The OnSleep()/OnWake() callbacks now actually work. This was at least
  broken on systemd/logind systems since the corresponding UPower signals
  were never even emitted. This is now properly handled via
  logind inhibitor locks, so the system doesn't suspend until
  XBMC is finished with whatever it is doing with the callback.
  see also http://www.freedesktop.org/wiki/Software/systemd/inhibit/

- The code is imho cleaner since I don't keep a complete copy of the
  UPower devices within the class. Instead the Battery Level is
  re-read via D-Bus everytime UPower emits a DeviceChanged signal.
  UPower seems to emit this signal every 30 seconds while idle. I originally only
  re-read the data everytime the BatteryLevel() function is called since
  this doesn't seem to happen that often. However, I don't know if there
  are cases in which this function may be called very often or how
  much overhead D-Bus would actually cause in this case. Either way,
  this could easily be changed.

I made no changes to the other implementations, so this should not have
any effects on non-systemd, or to be exact, non-logind systems.
Add OnPasteClipboard method to CGUIDialogKeyboardGeneric
DllAvFilter.h: Do not map avfilter_open.
It is deprecated in FFmpeg git master and unused in xbmc code.
DllAvUtil.h: Add LIBAVUTIL_FROM* macros.
DllAvUtil.h: Map av_frame_free when applicable.
DllAvUtil.h: Map av_frame_alloc when applicable.
DllAvUtil.h: Map av_frame_unref when applicable.
DllAvUtil.h: Map av_frame_move_ref when applicable.
Switch to the avframe based API for libavfilter when it is available.

The old API is deprecated and the new code is simpler and saves a memcopy.
Also, use the AVFrame values instead of the codec context for DVDVideoCodecFFmpeg::GetPicture.
DllAvFilter: Map avfilter_graph_parse_ptr when available.
Use avfilter_graph_parse_ptr when available (Fixes a deprecation warning with FFmpeg 2.0).

Include the libav API for avfilter_graph_parse which should help porting to libav.