[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#767971: marked as done (unblock: vlc/2.2.0~rc1-1)



Your message dated Fri, 07 Nov 2014 22:58:29 +0000
with message-id <545D4E95.5020608@debian.org>
and subject line Re: Bug#767971: unblock: vlc/2.2.0~rc1-1
has caused the Debian Bug report #767971,
regarding unblock: vlc/2.2.0~rc1-1
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
767971: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=767971
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock

I'd like to upload vlc 2.2.0~rc-1 to unstable for inclusion in jessie
after 2.2.0~pre4-2 migrated. This is request to pre-approve the changes
between 2.2.0~pre4-2 and vlc 2.2.0~rc-1.

2.2.0~rc1 is a bug fix and translation update release if one ignores all
the noise coming from Mac OS X, Windows and OS/2 only changes. It
includes fixes for plenty of heap buffer overflows ([1], [2], [3], [4],
[5] and probably more). I'd prefer to update vlc to this upstream
release instead of backporting those fixed to 2.2.0~pre4.

2.2.0~rc1 now also correctly builds and installs the sftp access plugin.
debian/vlc-nox.install.in has been changed accordingly.

Please find attached a filtered debdiff against 2.2.0~pre4-2 with
diffstat

 ChangeLog                                |  976 ++++++++++++++++++++++++++++++
 NEWS                                     |   10
 configure.ac                             |    9
 debian/changelog                         |    7
 debian/vlc-nox.install.in                |    1
 doc/ChangeLog-2014                       |  994 +++++++++++++++++++++++++++++++
 include/vlc/libvlc_media_player.h        |    5
 include/vlc_es.h                         |    5
 include/vlc_input.h                      |    5
 include/vlc_probe.h                      |    2
 lib/core.c                               |    4
 lib/media_list_player.c                  |    8
 lib/media_player.c                       |    3
 modules/audio_output/pulse.c             |   95 --
 modules/codec/avcodec/audio.c            |    6
 modules/codec/avcodec/avcommon.h         |    3
 modules/codec/libass.c                   |    6
 modules/codec/mft.c                      |    3
 modules/codec/omxil/android_mediacodec.c |   22
 modules/codec/png.c                      |    4
 modules/codec/zvbi.c                     |    4
 modules/demux/asf/asf.c                  |   10
 modules/demux/asf/libasf.c               |   24
 modules/demux/asf/libasf.h               |    4
 modules/demux/avi/libavi.c               |   11
 modules/demux/mjpeg.c                    |    5
 modules/demux/mp4/libmp4.c               |  117 ++-
 modules/demux/mp4/libmp4.h               |    6
 modules/demux/mp4/mp4.c                  |   24
 modules/demux/ogg.c                      |   31
 modules/demux/ps.h                       |    8
 modules/demux/tta.c                      |    4
 modules/hw/vdpau/deinterlace.c           |    1
 modules/video_chroma/swscale.c           |   54 +
 modules/video_output/caca.c              |    4
 modules/video_output/msw/win32touch.c    |    2
 src/revision.c                           |    2
 src/revision.txt                         |    2
 src/video_output/video_output.c          |   11
 39 files changed, 2267 insertions(+), 225 deletions(-)

The diffstat of the parts filtered from the debdiff is as follows (with
comments):

 contrib/src/ffmpeg/rules.mak                       |    4 +-
 contrib/src/freetype2/rules.mak                    |    2 +-
 contrib/src/gnutls/rules.mak                       |    2 +
 contrib/src/gpg-error/SHA512SUMS                   |    2 +-
 contrib/src/gpg-error/gpgerror-android.patch       |   14 -
 contrib/src/gpg-error/rules.mak                    |    3 +-
 contrib/src/opus/rules.mak                         |    2 +-
 contrib/src/sparkle/SHA512SUMS                     |    2 +-
 contrib/src/sparkle/rules.mak                      |    2 -
 contrib/src/speex/rules.mak                        |    5 +-
 contrib/src/speexdsp/rules.mak                     |    9 +-
 contrib/src/vpx/rules.mak                          |   11 +-

(Not used in Debian)

 Makefile.am                                        |  407 ++-
 bin/winvlc.c                                       |    3 +
 modules/common.am                                  |    3 +-
 modules/gui/macosx/CompatibilityFixes.h            |    6 +-
 modules/gui/macosx/ControlsBar.m                   |  246 +-
 modules/gui/macosx/MainWindow.h                    |    3 +-
 modules/gui/macosx/MainWindow.m                    |   80 +-
 modules/gui/macosx/MainWindowTitle.h               |   19 +-
 modules/gui/macosx/MainWindowTitle.m               |  202 +-
 modules/gui/macosx/Makefile.in                     |   12 +-
 modules/gui/macosx/SPMediaKeyTap.m                 |    1 -
 modules/gui/macosx/StringUtility.h                 |    8 +-
 modules/gui/macosx/StringUtility.m                 |   23 +-
 modules/gui/macosx/Windows.h                       |    5 +-
 modules/gui/macosx/Windows.m                       |   18 +-
 modules/gui/macosx/about.m                         |   11 +-
 modules/gui/macosx/fspanel.m                       |   28 +-
 modules/gui/macosx/intf.h                          |    3 +-
 modules/gui/macosx/intf.m                          |   30 +-
 modules/gui/macosx/misc.m                          |   12 +-
 modules/gui/macosx/open.h                          |    8 +-
 modules/gui/macosx/open.m                          |   10 +-
 modules/gui/macosx/playlist.m                      |   89 +-
 modules/gui/macosx_dialog_provider/Makefile.in     |   12 +-
 modules/gui/minimal_macosx/Makefile.in             |   12 +-
 modules/video_output/msw/win32touch.c              |    2 +-
 extras/package/ios/build.sh                        |   81 +-
 .../macosx/Resources/English.lproj/About.xib       | 3119 +++++++++-----------
 .../Resources/English.lproj/BWQuincyMain.xib       | 1573 ++++++++++
 .../macosx/Resources/English.lproj/MainWindow.xib  |   83 +-
 .../fspanel-yosemite/ys-fs_background.png          |  Bin 0 -> 3286 bytes
 .../fspanel-yosemite/ys-fs_background@2x.png       |  Bin 0 -> 4163 bytes
 .../fspanel-yosemite/ys-fs_exit_fullscreen.png     |  Bin 0 -> 2997 bytes
 .../fspanel-yosemite/ys-fs_exit_fullscreen@2x.png  |  Bin 0 -> 3168 bytes
 .../ys-fs_exit_fullscreen_highlight.png            |  Bin 0 -> 2998 bytes
 .../ys-fs_exit_fullscreen_highlight@2x.png         |  Bin 0 -> 3176 bytes
 .../Resources/fspanel-yosemite/ys-fs_forward.png   |  Bin 0 -> 3015 bytes
 .../fspanel-yosemite/ys-fs_forward@2x.png          |  Bin 0 -> 3355 bytes
 .../fspanel-yosemite/ys-fs_forward_highlight.png   |  Bin 0 -> 3020 bytes
 .../ys-fs_forward_highlight@2x.png                 |  Bin 0 -> 3355 bytes
 .../Resources/fspanel-yosemite/ys-fs_pause.png     |  Bin 0 -> 2849 bytes
 .../Resources/fspanel-yosemite/ys-fs_pause@2x.png  |  Bin 0 -> 2893 bytes
 .../fspanel-yosemite/ys-fs_pause_highlight.png     |  Bin 0 -> 2850 bytes
 .../fspanel-yosemite/ys-fs_pause_highlight@2x.png  |  Bin 0 -> 2894 bytes
 .../Resources/fspanel-yosemite/ys-fs_play.png      |  Bin 0 -> 3017 bytes
 .../Resources/fspanel-yosemite/ys-fs_play@2x.png   |  Bin 0 -> 3224 bytes
 .../fspanel-yosemite/ys-fs_play_highlight.png      |  Bin 0 -> 3019 bytes
 .../fspanel-yosemite/ys-fs_play_highlight@2x.png   |  Bin 0 -> 3231 bytes
 .../Resources/fspanel-yosemite/ys-fs_rewind.png    |  Bin 0 -> 3037 bytes
 .../Resources/fspanel-yosemite/ys-fs_rewind@2x.png |  Bin 0 -> 3269 bytes
 .../fspanel-yosemite/ys-fs_rewind_highlight.png    |  Bin 0 -> 3042 bytes
 .../fspanel-yosemite/ys-fs_rewind_highlight@2x.png |  Bin 0 -> 3276 bytes
 .../Resources/fspanel-yosemite/ys-fs_skip_next.png |  Bin 0 -> 3013 bytes
 .../fspanel-yosemite/ys-fs_skip_next@2x.png        |  Bin 0 -> 3177 bytes
 .../fspanel-yosemite/ys-fs_skip_next_highlight.png |  Bin 0 -> 3018 bytes
 .../ys-fs_skip_next_highlight@2x.png               |  Bin 0 -> 3186 bytes
 .../fspanel-yosemite/ys-fs_skip_previous.png       |  Bin 0 -> 3016 bytes
 .../fspanel-yosemite/ys-fs_skip_previous@2x.png    |  Bin 0 -> 3198 bytes
 .../ys-fs_skip_previous_highlight.png              |  Bin 0 -> 3017 bytes
 .../ys-fs_skip_previous_highlight@2x.png           |  Bin 0 -> 3207 bytes
 .../Resources/fspanel-yosemite/ys-fs_stop.png      |  Bin 0 -> 2834 bytes
 .../Resources/fspanel-yosemite/ys-fs_stop@2x.png   |  Bin 0 -> 2867 bytes
 .../fspanel-yosemite/ys-fs_stop_highlight.png      |  Bin 0 -> 2834 bytes
 .../fspanel-yosemite/ys-fs_stop_highlight@2x.png   |  Bin 0 -> 2867 bytes
 .../fspanel-yosemite/ys-fs_time_slider.png         |  Bin 0 -> 2872 bytes
 .../fspanel-yosemite/ys-fs_time_slider@2x.png      |  Bin 0 -> 2988 bytes
 .../fspanel-yosemite/ys-fs_time_slider_knob.png    |  Bin 0 -> 2860 bytes
 .../fspanel-yosemite/ys-fs_time_slider_knob@2x.png |  Bin 0 -> 2970 bytes
 .../ys-fs_time_slider_knob_highlight.png           |  Bin 0 -> 2860 bytes
 .../ys-fs_time_slider_knob_highlight@2x.png        |  Bin 0 -> 2970 bytes
 .../fspanel-yosemite/ys-fs_volume_max.png          |  Bin 0 -> 2807 bytes
 .../fspanel-yosemite/ys-fs_volume_max@2x.png       |  Bin 0 -> 2816 bytes
 .../ys-fs_volume_max_highlight.png                 |  Bin 0 -> 2807 bytes
 .../ys-fs_volume_max_highlight@2x.png              |  Bin 0 -> 2816 bytes
 .../fspanel-yosemite/ys-fs_volume_mute.png         |  Bin 0 -> 2803 bytes
 .../fspanel-yosemite/ys-fs_volume_mute@2x.png      |  Bin 0 -> 2810 bytes
 .../ys-fs_volume_mute_highlight.png                |  Bin 0 -> 2803 bytes
 .../ys-fs_volume_mute_highlight@2x.png             |  Bin 0 -> 2810 bytes
 .../fspanel-yosemite/ys-fs_volume_slider_bar.png   |  Bin 0 -> 2815 bytes
 .../ys-fs_volume_slider_bar@2x.png                 |  Bin 0 -> 2830 bytes
 .../fspanel-yosemite/ys-fs_volume_slider_knob.png  |  Bin 0 -> 2868 bytes
 .../ys-fs_volume_slider_knob@2x.png                |  Bin 0 -> 2935 bytes
 .../ys-fs_volume_slider_knob_highlight.png         |  Bin 0 -> 2868 bytes
 .../ys-fs_volume_slider_knob_highlight@2x.png      |  Bin 0 -> 2935 bytes
 .../macosx/Resources/mainwindow/bottombar-mini.png |  Bin 196 -> 0 bytes
 .../mainwindow/effects-double-buttons-blue.png     |  Bin 674 -> 0 bytes
 .../mainwindow/effects-double-buttons-blue@2x.png  |  Bin 2352 -> 0 bytes
 .../mainwindow/effects-one-button-blue.png         |  Bin 696 -> 0 bytes
 .../mainwindow/effects-one-button-blue@2x.png      |  Bin 2344 -> 0 bytes
 .../mainwindow/mini-progressbar-fill-left.png      |  Bin 170 -> 0 bytes
 .../mainwindow/mini-progressbar-fill-middle.png    |  Bin 145 -> 0 bytes
 .../mainwindow/mini-progressbar-fill-right.png     |  Bin 163 -> 0 bytes
 .../Resources/mainwindow/mini-progressbar-knob.png |  Bin 165 -> 0 bytes
 .../mainwindow/mini-progressbar-wrapper-left.png   |  Bin 197 -> 0 bytes
 .../mainwindow/mini-progressbar-wrapper-middle.png |  Bin 152 -> 0 bytes
 .../mainwindow/mini-progressbar-wrapper-right.png  |  Bin 200 -> 0 bytes
 .../Resources/mainwindow/playlist-btn-blue.png     |  Bin 598 -> 0 bytes
 .../Resources/mainwindow/playlist-btn-blue@2x.png  |  Bin 2041 -> 0 bytes
 .../Resources/mainwindow_dark/bottombar-mini.png   |  Bin 187 -> 0 bytes
 .../effects-double-buttons-blue_dark.png           |  Bin 1388 -> 0 bytes
 .../effects-double-buttons-blue_dark@2x.png        |  Bin 1792 -> 0 bytes
 .../effects-one-button-blue_dark.png               |  Bin 1400 -> 0 bytes
 .../effects-one-button-blue_dark@2x.png            |  Bin 1839 -> 0 bytes
 .../mainwindow_dark/playlist-blue-pressed_dark.png |  Bin 1256 -> 0 bytes
 .../playlist-blue-pressed_dark@2x.png              |  Bin 1497 -> 0 bytes
 .../mainwindow_dark/playlist-blue_dark.png         |  Bin 1265 -> 0 bytes
 .../mainwindow_dark/playlist-blue_dark@2x.png      |  Bin 1502 -> 0 bytes
 .../titlebar/lion/lion-window-fullscreen-on.png    |  Bin 0 -> 344 bytes
 .../titlebar/lion/lion-window-fullscreen-on@2x.png |  Bin 0 -> 568 bytes
 .../titlebar/lion/lion-window-fullscreen-over.png  |  Bin 0 -> 355 bytes
 .../lion/lion-window-fullscreen-over@2x.png        |  Bin 0 -> 567 bytes
 .../titlebar/lion/lion-window-fullscreen.png       |  Bin 0 -> 360 bytes
 .../titlebar/lion/lion-window-fullscreen@2x.png    |  Bin 0 -> 569 bytes
 .../yosemite/yosemite-window-close-graphite.png    |  Bin 0 -> 246 bytes
 .../yosemite/yosemite-window-close-graphite@2x.png |  Bin 0 -> 427 bytes
 .../yosemite/yosemite-window-close-on-graphite.png |  Bin 0 -> 297 bytes
 .../yosemite-window-close-on-graphite@2x.png       |  Bin 0 -> 508 bytes
 .../titlebar/yosemite/yosemite-window-close-on.png |  Bin 0 -> 304 bytes
 .../yosemite/yosemite-window-close-on@2x.png       |  Bin 0 -> 532 bytes
 .../yosemite-window-close-over-graphite.png        |  Bin 0 -> 271 bytes
 .../yosemite-window-close-over-graphite@2x.png     |  Bin 0 -> 495 bytes
 .../yosemite/yosemite-window-close-over.png        |  Bin 0 -> 313 bytes
 .../yosemite/yosemite-window-close-over@2x.png     |  Bin 0 -> 522 bytes
 .../titlebar/yosemite/yosemite-window-close.png    |  Bin 0 -> 268 bytes
 .../titlebar/yosemite/yosemite-window-close@2x.png |  Bin 0 -> 446 bytes
 .../yosemite-window-fullscreen-graphite.png        |  Bin 0 -> 246 bytes
 .../yosemite-window-fullscreen-graphite@2x.png     |  Bin 0 -> 427 bytes
 .../yosemite-window-fullscreen-on-graphite.png     |  Bin 0 -> 328 bytes
 .../yosemite-window-fullscreen-on-graphite@2x.png  |  Bin 0 -> 548 bytes
 .../yosemite/yosemite-window-fullscreen-on.png     |  Bin 0 -> 334 bytes
 .../yosemite/yosemite-window-fullscreen-on@2x.png  |  Bin 0 -> 560 bytes
 .../yosemite-window-fullscreen-over-graphite.png   |  Bin 0 -> 313 bytes
 ...yosemite-window-fullscreen-over-graphite@2x.png |  Bin 0 -> 565 bytes
 .../yosemite/yosemite-window-fullscreen-over.png   |  Bin 0 -> 344 bytes
 .../yosemite-window-fullscreen-over@2x.png         |  Bin 0 -> 586 bytes
 .../yosemite/yosemite-window-fullscreen.png        |  Bin 0 -> 264 bytes
 .../yosemite/yosemite-window-fullscreen@2x.png     |  Bin 0 -> 454 bytes
 .../yosemite/yosemite-window-minimize-graphite.png |  Bin 0 -> 246 bytes
 .../yosemite-window-minimize-graphite@2x.png       |  Bin 0 -> 427 bytes
 .../yosemite-window-minimize-on-graphite.png       |  Bin 0 -> 276 bytes
 .../yosemite-window-minimize-on-graphite@2x.png    |  Bin 0 -> 459 bytes
 .../yosemite/yosemite-window-minimize-on.png       |  Bin 0 -> 284 bytes
 .../yosemite/yosemite-window-minimize-on@2x.png    |  Bin 0 -> 478 bytes
 .../yosemite-window-minimize-over-graphite.png     |  Bin 0 -> 260 bytes
 .../yosemite-window-minimize-over-graphite@2x.png  |  Bin 0 -> 463 bytes
 .../yosemite/yosemite-window-minimize-over.png     |  Bin 0 -> 287 bytes
 .../yosemite/yosemite-window-minimize-over@2x.png  |  Bin 0 -> 495 bytes
 .../titlebar/yosemite/yosemite-window-minimize.png |  Bin 0 -> 269 bytes
 .../yosemite/yosemite-window-minimize@2x.png       |  Bin 0 -> 462 bytes
 .../yosemite/yosemite-window-zoom-graphite.png     |  Bin 0 -> 246 bytes
 .../yosemite/yosemite-window-zoom-graphite@2x.png  |  Bin 0 -> 427 bytes
 .../yosemite/yosemite-window-zoom-on-graphite.png  |  Bin 0 -> 286 bytes
 .../yosemite-window-zoom-on-graphite@2x.png        |  Bin 0 -> 483 bytes
 .../titlebar/yosemite/yosemite-window-zoom-on.png  |  Bin 0 -> 287 bytes
 .../yosemite/yosemite-window-zoom-on@2x.png        |  Bin 0 -> 514 bytes
 .../yosemite-window-zoom-over-graphite.png         |  Bin 0 -> 276 bytes
 .../yosemite-window-zoom-over-graphite@2x.png      |  Bin 0 -> 489 bytes
 .../yosemite/yosemite-window-zoom-over.png         |  Bin 0 -> 288 bytes
 .../yosemite/yosemite-window-zoom-over@2x.png      |  Bin 0 -> 513 bytes
 .../titlebar/yosemite/yosemite-window-zoom.png     |  Bin 0 -> 264 bytes
 .../titlebar/yosemite/yosemite-window-zoom@2x.png  |  Bin 0 -> 454 bytes
 .../mainwindow_dark/window-fullscreen-on.png       |  Bin 344 -> 0 bytes
 .../mainwindow_dark/window-fullscreen-over.png     |  Bin 355 -> 0 bytes
 .../mainwindow_dark/window-fullscreen.png          |  Bin 360 -> 0 bytes
 .../ys-backward-3btns-dark-pressed.png             |  Bin 0 -> 350 bytes
 .../ys-backward-3btns-dark-pressed@2x.png          |  Bin 0 -> 586 bytes
 .../ys-backward-3btns-dark.png                     |  Bin 0 -> 392 bytes
 .../ys-backward-3btns-dark@2x.png                  |  Bin 0 -> 604 bytes
 .../ys-backward-6btns-dark-pressed.png             |  Bin 0 -> 269 bytes
 .../ys-backward-6btns-dark-pressed@2x.png          |  Bin 0 -> 378 bytes
 .../ys-backward-6btns-dark.png                     |  Bin 0 -> 296 bytes
 .../ys-backward-6btns-dark@2x.png                  |  Bin 0 -> 410 bytes
 .../ys-bottom-background_dark.png                  |  Bin 0 -> 130 bytes
 .../ys-bottom-background_dark@2x.png               |  Bin 0 -> 139 bytes
 .../ys-bottomdark-left.png                         |  Bin 0 -> 169 bytes
 .../ys-bottomdark-left@2x.png                      |  Bin 0 -> 238 bytes
 .../ys-bottomdark-right.png                        |  Bin 0 -> 162 bytes
 .../ys-bottomdark-right@2x.png                     |  Bin 0 -> 222 bytes
 .../ys-effects-double-buttons-pressed_dark.png     |  Bin 0 -> 328 bytes
 .../ys-effects-double-buttons-pressed_dark@2x.png  |  Bin 0 -> 500 bytes
 .../ys-effects-double-buttons_dark.png             |  Bin 0 -> 344 bytes
 .../ys-effects-double-buttons_dark@2x.png          |  Bin 0 -> 524 bytes
 .../ys-effects-one-button-pressed-dark.png         |  Bin 0 -> 358 bytes
 .../ys-effects-one-button-pressed-dark@2x.png      |  Bin 0 -> 604 bytes
 .../ys-effects-one-button_dark.png                 |  Bin 0 -> 381 bytes
 .../ys-effects-one-button_dark@2x.png              |  Bin 0 -> 636 bytes
 .../ys-forward-3btns-dark-pressed.png              |  Bin 0 -> 338 bytes
 .../ys-forward-3btns-dark-pressed@2x.png           |  Bin 0 -> 562 bytes
 .../ys-forward-3btns-dark.png                      |  Bin 0 -> 383 bytes
 .../ys-forward-3btns-dark@2x.png                   |  Bin 0 -> 588 bytes
 .../ys-forward-6btns-dark-pressed.png              |  Bin 0 -> 263 bytes
 .../ys-forward-6btns-dark-pressed@2x.png           |  Bin 0 -> 364 bytes
 .../ys-forward-6btns-dark.png                      |  Bin 0 -> 285 bytes
 .../ys-forward-6btns-dark@2x.png                   |  Bin 0 -> 387 bytes
 .../ys-fullscreen-double-buttons-pressed_dark.png  |  Bin 0 -> 420 bytes
 ...s-fullscreen-double-buttons-pressed_dark@2x.png |  Bin 0 -> 677 bytes
 .../ys-fullscreen-double-buttons_dark.png          |  Bin 0 -> 456 bytes
 .../ys-fullscreen-double-buttons_dark@2x.png       |  Bin 0 -> 713 bytes
 .../ys-fullscreen-one-button-pressed_dark.png      |  Bin 0 -> 454 bytes
 .../ys-fullscreen-one-button-pressed_dark@2x.png   |  Bin 0 -> 790 bytes
 .../ys-fullscreen-one-button_dark.png              |  Bin 0 -> 484 bytes
 .../ys-fullscreen-one-button_dark@2x.png           |  Bin 0 -> 825 bytes
 .../ys-next-6btns-dark-pressed.png                 |  Bin 0 -> 360 bytes
 .../ys-next-6btns-dark-pressed@2x.png              |  Bin 0 -> 587 bytes
 .../ys-next-6btns-dark.png                         |  Bin 0 -> 406 bytes
 .../ys-next-6btns-dark@2x.png                      |  Bin 0 -> 627 bytes
 .../ys-pause-pressed_dark.png                      |  Bin 0 -> 158 bytes
 .../ys-pause-pressed_dark@2x.png                   |  Bin 0 -> 206 bytes
 .../mainwindow_dark_yosemite/ys-pause_dark.png     |  Bin 0 -> 166 bytes
 .../mainwindow_dark_yosemite/ys-pause_dark@2x.png  |  Bin 0 -> 199 bytes
 .../ys-play-pressed_dark.png                       |  Bin 0 -> 287 bytes
 .../ys-play-pressed_dark@2x.png                    |  Bin 0 -> 444 bytes
 .../mainwindow_dark_yosemite/ys-play_dark.png      |  Bin 0 -> 275 bytes
 .../mainwindow_dark_yosemite/ys-play_dark@2x.png   |  Bin 0 -> 471 bytes
 .../ys-playlist-1btn-dark-pressed.png              |  Bin 0 -> 318 bytes
 .../ys-playlist-1btn-dark-pressed@2x.png           |  Bin 0 -> 559 bytes
 .../ys-playlist-1btn-dark.png                      |  Bin 0 -> 340 bytes
 .../ys-playlist-1btn-dark@2x.png                   |  Bin 0 -> 573 bytes
 .../ys-playlist-pressed_dark.png                   |  Bin 0 -> 282 bytes
 .../ys-playlist-pressed_dark@2x.png                |  Bin 0 -> 454 bytes
 .../mainwindow_dark_yosemite/ys-playlist_dark.png  |  Bin 0 -> 299 bytes
 .../ys-playlist_dark@2x.png                        |  Bin 0 -> 465 bytes
 .../ys-previous-6btns-dark-pressed.png             |  Bin 0 -> 376 bytes
 .../ys-previous-6btns-dark-pressed@2x.png          |  Bin 0 -> 613 bytes
 .../ys-previous-6btns-dark.png                     |  Bin 0 -> 420 bytes
 .../ys-previous-6btns-dark@2x.png                  |  Bin 0 -> 643 bytes
 .../ys-progressbar-fill-left_dark.png              |  Bin 0 -> 96 bytes
 .../ys-progressbar-fill-left_dark@2x.png           |  Bin 0 -> 116 bytes
 .../ys-progressbar-fill-middle_dark.png            |  Bin 0 -> 90 bytes
 .../ys-progressbar-fill-middle_dark@2x.png         |  Bin 0 -> 94 bytes
 .../ys-progressbar-fill-right_dark.png             |  Bin 0 -> 96 bytes
 .../ys-progressbar-fill-right_dark@2x.png          |  Bin 0 -> 115 bytes
 .../ys-progression-knob_dark.png                   |  Bin 0 -> 229 bytes
 .../ys-progression-knob_dark@2x.png                |  Bin 0 -> 502 bytes
 .../ys-progression-track-wrapper-left_dark.png     |  Bin 0 -> 144 bytes
 .../ys-progression-track-wrapper-left_dark@2x.png  |  Bin 0 -> 210 bytes
 .../ys-progression-track-wrapper-middle_dark.png   |  Bin 0 -> 111 bytes
 ...ys-progression-track-wrapper-middle_dark@2x.png |  Bin 0 -> 121 bytes
 .../ys-progression-track-wrapper-right_dark.png    |  Bin 0 -> 160 bytes
 .../ys-progression-track-wrapper-right_dark@2x.png |  Bin 0 -> 228 bytes
 .../ys-repeat-all-blue-pressed_dark.png            |  Bin 0 -> 489 bytes
 .../ys-repeat-all-blue-pressed_dark@2x.png         |  Bin 0 -> 858 bytes
 .../ys-repeat-all-blue_dark.png                    |  Bin 0 -> 517 bytes
 .../ys-repeat-all-blue_dark@2x.png                 |  Bin 0 -> 858 bytes
 .../ys-repeat-one-blue-pressed_dark.png            |  Bin 0 -> 534 bytes
 .../ys-repeat-one-blue-pressed_dark@2x.png         |  Bin 0 -> 916 bytes
 .../ys-repeat-one-blue_dark.png                    |  Bin 0 -> 563 bytes
 .../ys-repeat-one-blue_dark@2x.png                 |  Bin 0 -> 946 bytes
 .../ys-repeat-pressed_dark.png                     |  Bin 0 -> 417 bytes
 .../ys-repeat-pressed_dark@2x.png                  |  Bin 0 -> 678 bytes
 .../mainwindow_dark_yosemite/ys-repeat_dark.png    |  Bin 0 -> 455 bytes
 .../mainwindow_dark_yosemite/ys-repeat_dark@2x.png |  Bin 0 -> 754 bytes
 .../ys-shuffle-blue-pressed_dark.png               |  Bin 0 -> 597 bytes
 .../ys-shuffle-blue-pressed_dark@2x.png            |  Bin 0 -> 1079 bytes
 .../ys-shuffle-blue_dark.png                       |  Bin 0 -> 624 bytes
 .../ys-shuffle-blue_dark@2x.png                    |  Bin 0 -> 1138 bytes
 .../ys-shuffle-pressed_dark.png                    |  Bin 0 -> 516 bytes
 .../ys-shuffle-pressed_dark@2x.png                 |  Bin 0 -> 948 bytes
 .../mainwindow_dark_yosemite/ys-shuffle_dark.png   |  Bin 0 -> 565 bytes
 .../ys-shuffle_dark@2x.png                         |  Bin 0 -> 1018 bytes
 .../ys-stop-pressed_dark.png                       |  Bin 0 -> 326 bytes
 .../ys-stop-pressed_dark@2x.png                    |  Bin 0 -> 563 bytes
 .../mainwindow_dark_yosemite/ys-stop_dark.png      |  Bin 0 -> 353 bytes
 .../mainwindow_dark_yosemite/ys-stop_dark@2x.png   |  Bin 0 -> 578 bytes
 .../ys-topbar-dark-center-fill.png                 |  Bin 0 -> 124 bytes
 .../ys-topbar-dark-center-fill@2x.png              |  Bin 0 -> 141 bytes
 .../ys-topbar-dark-left.png                        |  Bin 0 -> 188 bytes
 .../ys-topbar-dark-left@2x.png                     |  Bin 0 -> 294 bytes
 .../ys-topbar-dark-right.png                       |  Bin 0 -> 193 bytes
 .../ys-topbar-dark-right@2x.png                    |  Bin 0 -> 326 bytes
 .../ys-volume-high_dark.png                        |  Bin 0 -> 175 bytes
 .../ys-volume-high_dark@2x.png                     |  Bin 0 -> 252 bytes
 .../ys-volume-low_dark.png                         |  Bin 0 -> 152 bytes
 .../ys-volume-low_dark@2x.png                      |  Bin 0 -> 217 bytes
 .../ys-volume-slider-knob_dark.png                 |  Bin 0 -> 176 bytes
 .../ys-volume-slider-knob_dark@2x.png              |  Bin 0 -> 359 bytes
 .../ys-volume-slider-track_dark.png                |  Bin 0 -> 152 bytes
 .../ys-volume-slider-track_dark@2x.png             |  Bin 0 -> 285 bytes
 .../ys-backward-3btns-pressed.png                  |  Bin 0 -> 283 bytes
 .../ys-backward-3btns-pressed@2x.png               |  Bin 0 -> 468 bytes
 .../mainwindow_yosemite/ys-backward-3btns.png      |  Bin 0 -> 262 bytes
 .../mainwindow_yosemite/ys-backward-3btns@2x.png   |  Bin 0 -> 448 bytes
 .../ys-backward-6btns-pressed.png                  |  Bin 0 -> 187 bytes
 .../ys-backward-6btns-pressed@2x.png               |  Bin 0 -> 274 bytes
 .../mainwindow_yosemite/ys-backward-6btns.png      |  Bin 0 -> 182 bytes
 .../mainwindow_yosemite/ys-backward-6btns@2x.png   |  Bin 0 -> 272 bytes
 .../mainwindow_yosemite/ys-bottom-background.png   |  Bin 0 -> 225 bytes
 .../ys-bottom-background@2x.png                    |  Bin 0 -> 534 bytes
 .../Resources/mainwindow_yosemite/ys-dropzone.png  |  Bin 0 -> 2040 bytes
 .../mainwindow_yosemite/ys-dropzone@2x.png         |  Bin 0 -> 4434 bytes
 .../ys-effects-double-buttons-pressed.png          |  Bin 0 -> 232 bytes
 .../ys-effects-double-buttons-pressed@2x.png       |  Bin 0 -> 372 bytes
 .../ys-effects-double-buttons.png                  |  Bin 0 -> 213 bytes
 .../ys-effects-double-buttons@2x.png               |  Bin 0 -> 348 bytes
 .../ys-effects-one-button-pressed.png              |  Bin 0 -> 278 bytes
 .../ys-effects-one-button-pressed@2x.png           |  Bin 0 -> 482 bytes
 .../mainwindow_yosemite/ys-effects-one-button.png  |  Bin 0 -> 255 bytes
 .../ys-effects-one-button@2x.png                   |  Bin 0 -> 454 bytes
 .../ys-forward-3btns-pressed.png                   |  Bin 0 -> 266 bytes
 .../ys-forward-3btns-pressed@2x.png                |  Bin 0 -> 453 bytes
 .../mainwindow_yosemite/ys-forward-3btns.png       |  Bin 0 -> 244 bytes
 .../mainwindow_yosemite/ys-forward-3btns@2x.png    |  Bin 0 -> 432 bytes
 .../ys-forward-6btns-pressed.png                   |  Bin 0 -> 171 bytes
 .../ys-forward-6btns-pressed@2x.png                |  Bin 0 -> 260 bytes
 .../mainwindow_yosemite/ys-forward-6btns.png       |  Bin 0 -> 172 bytes
 .../mainwindow_yosemite/ys-forward-6btns@2x.png    |  Bin 0 -> 259 bytes
 .../ys-fullscreen-double-buttons-pressed.png       |  Bin 0 -> 348 bytes
 .../ys-fullscreen-double-buttons-pressed@2x.png    |  Bin 0 -> 568 bytes
 .../ys-fullscreen-double-buttons.png               |  Bin 0 -> 323 bytes
 .../ys-fullscreen-double-buttons@2x.png            |  Bin 0 -> 549 bytes
 .../ys-fullscreen-one-button-pressed.png           |  Bin 0 -> 383 bytes
 .../ys-fullscreen-one-button-pressed@2x.png        |  Bin 0 -> 669 bytes
 .../ys-fullscreen-one-button.png                   |  Bin 0 -> 358 bytes
 .../ys-fullscreen-one-button@2x.png                |  Bin 0 -> 646 bytes
 .../mainwindow_yosemite/ys-next-6btns-pressed.png  |  Bin 0 -> 270 bytes
 .../ys-next-6btns-pressed@2x.png                   |  Bin 0 -> 460 bytes
 .../mainwindow_yosemite/ys-next-6btns.png          |  Bin 0 -> 249 bytes
 .../mainwindow_yosemite/ys-next-6btns@2x.png       |  Bin 0 -> 439 bytes
 .../mainwindow_yosemite/ys-pause-pressed.png       |  Bin 0 -> 125 bytes
 .../mainwindow_yosemite/ys-pause-pressed@2x.png    |  Bin 0 -> 181 bytes
 .../Resources/mainwindow_yosemite/ys-pause.png     |  Bin 0 -> 125 bytes
 .../Resources/mainwindow_yosemite/ys-pause@2x.png  |  Bin 0 -> 181 bytes
 .../mainwindow_yosemite/ys-play-pressed.png        |  Bin 0 -> 208 bytes
 .../mainwindow_yosemite/ys-play-pressed@2x.png     |  Bin 0 -> 343 bytes
 .../Resources/mainwindow_yosemite/ys-play.png      |  Bin 0 -> 205 bytes
 .../Resources/mainwindow_yosemite/ys-play@2x.png   |  Bin 0 -> 333 bytes
 .../ys-playlist-1btn-pressed.png                   |  Bin 0 -> 263 bytes
 .../ys-playlist-1btn-pressed@2x.png                |  Bin 0 -> 465 bytes
 .../mainwindow_yosemite/ys-playlist-1btn.png       |  Bin 0 -> 242 bytes
 .../mainwindow_yosemite/ys-playlist-1btn@2x.png    |  Bin 0 -> 437 bytes
 .../ys-playlist-btn-pressed.png                    |  Bin 0 -> 219 bytes
 .../ys-playlist-btn-pressed@2x.png                 |  Bin 0 -> 354 bytes
 .../mainwindow_yosemite/ys-playlist-btn.png        |  Bin 0 -> 201 bytes
 .../mainwindow_yosemite/ys-playlist-btn@2x.png     |  Bin 0 -> 327 bytes
 .../ys-previous-6btns-pressed.png                  |  Bin 0 -> 288 bytes
 .../ys-previous-6btns-pressed@2x.png               |  Bin 0 -> 471 bytes
 .../mainwindow_yosemite/ys-previous-6btns.png      |  Bin 0 -> 266 bytes
 .../mainwindow_yosemite/ys-previous-6btns@2x.png   |  Bin 0 -> 451 bytes
 .../ys-progression-fill-left.png                   |  Bin 0 -> 97 bytes
 .../ys-progression-fill-left@2x.png                |  Bin 0 -> 114 bytes
 .../ys-progression-fill-middle.png                 |  Bin 0 -> 88 bytes
 .../ys-progression-fill-middle@2x.png              |  Bin 0 -> 91 bytes
 .../ys-progression-fill-right.png                  |  Bin 0 -> 98 bytes
 .../ys-progression-fill-right@2x.png               |  Bin 0 -> 114 bytes
 .../mainwindow_yosemite/ys-progression-knob.png    |  Bin 0 -> 229 bytes
 .../mainwindow_yosemite/ys-progression-knob@2x.png |  Bin 0 -> 502 bytes
 .../ys-progression-track-wrapper-left.png          |  Bin 0 -> 139 bytes
 .../ys-progression-track-wrapper-left@2x.png       |  Bin 0 -> 206 bytes
 .../ys-progression-track-wrapper-middle.png        |  Bin 0 -> 106 bytes
 .../ys-progression-track-wrapper-middle@2x.png     |  Bin 0 -> 119 bytes
 .../ys-progression-track-wrapper-right.png         |  Bin 0 -> 141 bytes
 .../ys-progression-track-wrapper-right@2x.png      |  Bin 0 -> 204 bytes
 .../mainwindow_yosemite/ys-repeat-all-pressed.png  |  Bin 0 -> 372 bytes
 .../ys-repeat-all-pressed@2x.png                   |  Bin 0 -> 710 bytes
 .../mainwindow_yosemite/ys-repeat-all.png          |  Bin 0 -> 364 bytes
 .../mainwindow_yosemite/ys-repeat-all@2x.png       |  Bin 0 -> 663 bytes
 .../mainwindow_yosemite/ys-repeat-one-pressed.png  |  Bin 0 -> 392 bytes
 .../ys-repeat-one-pressed@2x.png                   |  Bin 0 -> 752 bytes
 .../mainwindow_yosemite/ys-repeat-one.png          |  Bin 0 -> 385 bytes
 .../mainwindow_yosemite/ys-repeat-one@2x.png       |  Bin 0 -> 713 bytes
 .../mainwindow_yosemite/ys-repeat-pressed.png      |  Bin 0 -> 372 bytes
 .../mainwindow_yosemite/ys-repeat-pressed@2x.png   |  Bin 0 -> 652 bytes
 .../Resources/mainwindow_yosemite/ys-repeat.png    |  Bin 0 -> 364 bytes
 .../Resources/mainwindow_yosemite/ys-repeat@2x.png |  Bin 0 -> 649 bytes
 .../ys-shuffle-blue-pressed.png                    |  Bin 0 -> 494 bytes
 .../ys-shuffle-blue-pressed@2x.png                 |  Bin 0 -> 914 bytes
 .../mainwindow_yosemite/ys-shuffle-blue.png        |  Bin 0 -> 456 bytes
 .../mainwindow_yosemite/ys-shuffle-blue@2x.png     |  Bin 0 -> 862 bytes
 .../mainwindow_yosemite/ys-shuffle-pressed.png     |  Bin 0 -> 474 bytes
 .../mainwindow_yosemite/ys-shuffle-pressed@2x.png  |  Bin 0 -> 913 bytes
 .../Resources/mainwindow_yosemite/ys-shuffle.png   |  Bin 0 -> 458 bytes
 .../mainwindow_yosemite/ys-shuffle@2x.png          |  Bin 0 -> 879 bytes
 .../mainwindow_yosemite/ys-stop-pressed.png        |  Bin 0 -> 262 bytes
 .../mainwindow_yosemite/ys-stop-pressed@2x.png     |  Bin 0 -> 461 bytes
 .../Resources/mainwindow_yosemite/ys-stop.png      |  Bin 0 -> 238 bytes
 .../Resources/mainwindow_yosemite/ys-stop@2x.png   |  Bin 0 -> 434 bytes
 .../mainwindow_yosemite/ys-volume-high.png         |  Bin 0 -> 168 bytes
 .../mainwindow_yosemite/ys-volume-high@2x.png      |  Bin 0 -> 232 bytes
 .../mainwindow_yosemite/ys-volume-low.png          |  Bin 0 -> 149 bytes
 .../mainwindow_yosemite/ys-volume-low@2x.png       |  Bin 0 -> 205 bytes
 .../mainwindow_yosemite/ys-volume-slider-knob.png  |  Bin 0 -> 177 bytes
 .../ys-volume-slider-knob@2x.png                   |  Bin 0 -> 344 bytes
 .../mainwindow_yosemite/ys-volume-slider-track.png |  Bin 0 -> 129 bytes
 .../ys-volume-slider-track@2x.png                  |  Bin 0 -> 215 bytes
 .../sidebar-icons_yosemite/ys-sidebar-local.png    |  Bin 0 -> 984 bytes
 .../sidebar-icons_yosemite/ys-sidebar-local@2x.png |  Bin 0 -> 1778 bytes
 .../sidebar-icons_yosemite/ys-sidebar-movie.png    |  Bin 0 -> 654 bytes
 .../sidebar-icons_yosemite/ys-sidebar-movie@2x.png |  Bin 0 -> 688 bytes
 .../sidebar-icons_yosemite/ys-sidebar-music.png    |  Bin 0 -> 1174 bytes
 .../sidebar-icons_yosemite/ys-sidebar-music@2x.png |  Bin 0 -> 908 bytes
 .../sidebar-icons_yosemite/ys-sidebar-pictures.png |  Bin 0 -> 751 bytes
 .../ys-sidebar-pictures@2x.png                     |  Bin 0 -> 799 bytes
 .../sidebar-icons_yosemite/ys-sidebar-playlist.png |  Bin 0 -> 786 bytes
 .../ys-sidebar-playlist@2x.png                     |  Bin 0 -> 871 bytes
 .../sidebar-icons_yosemite/ys-sidebar-podcast.png  |  Bin 0 -> 890 bytes
 .../ys-sidebar-podcast@2x.png                      |  Bin 0 -> 1319 bytes
 extras/package/macosx/codesign-dp.sh               |   87 +
 .../package/macosx/vlc.xcodeproj/project.pbxproj   | 1594 +++++++++-
 extras/package/win32/package.mak                   |    3 +
 extras/tools/packages.mak                          |    8 +-
 extras/tools/tools.mak                             |    2 +-
 lib/Makefile.am                                    |    6 +-
 src/Makefile.am                                    |    6 +-

(MacOS, Windows, OS/2 only)

 po/ach.gmo                                         |  Bin 56389 -> 56389 bytes
 po/ach.po                                          |  232 +-
 po/af.gmo                                          |  Bin 50471 -> 50471 bytes
 po/af.po                                           |  128 +-
 po/am.gmo                                          |  Bin 72968 -> 72968 bytes
 po/am.po                                           |  125 +-
 po/an.gmo                                          |  Bin 462610 -> 462610 bytes
 po/an.po                                           |  211 +-
 po/ar.gmo                                          |  Bin 310202 -> 310202 bytes
 po/ar.po                                           |  411 ++-
 po/ast.gmo                                         |  Bin 456202 -> 456202 bytes
 po/ast.po                                          |  211 +-
 po/az.gmo                                          |  Bin 2828 -> 2828 bytes
 po/az.po                                           |  132 +-
 po/be.gmo                                          |  Bin 750883 -> 750883 bytes
 po/be.po                                           |  107 +-
 po/bg.gmo                                          |  Bin 616686 -> 616686 bytes
 po/bg.po                                           |  210 +-
 po/bn.gmo                                          |  Bin 665775 -> 665775 bytes
 po/bn.po                                           |  230 +-
 po/bn_IN.gmo                                       |  Bin 795286 -> 795286 bytes
 po/bn_IN.po                                        |  205 +-
 po/br.gmo                                          |  Bin 80105 -> 80105 bytes
 po/br.po                                           |  342 ++-
 po/bs.gmo                                          |  Bin 150748 -> 150691 bytes
 po/bs.po                                           |  343 ++-
 po/ca.gmo                                          |  Bin 626990 -> 626990 bytes
 po/ca.po                                           |  107 +-
 po/cgg.gmo                                         |  Bin 41805 -> 41805 bytes
 po/cgg.po                                          |  134 +-
 po/ckb.gmo                                         |  Bin 86646 -> 86646 bytes
 po/ckb.po                                          |  122 +-
 po/co.gmo                                          |  Bin 702 -> 702 bytes
 po/co.po                                           |  150 +-
 po/cs.gmo                                          |  Bin 239773 -> 239718 bytes
 po/cs.po                                           |  160 +-
 po/cy.gmo                                          |  Bin 262317 -> 262253 bytes
 po/cy.po                                           |  160 +-
 po/da.gmo                                          |  Bin 336617 -> 336554 bytes
 po/da.po                                           |  288 +-
 po/de.gmo                                          |  Bin 630439 -> 630358 bytes
 po/de.po                                           |  105 +-
 po/el.gmo                                          |  Bin 864263 -> 864171 bytes
 po/el.po                                           |  117 +-
 po/en_GB.gmo                                       |  Bin 38113 -> 38113 bytes
 po/en_GB.po                                        |  134 +-
 po/es.gmo                                          |  Bin 626537 -> 626470 bytes
 po/es.po                                           |  117 +-
 po/et.gmo                                          |  Bin 465083 -> 465021 bytes
 po/et.po                                           |  126 +-
 po/eu.gmo                                          |  Bin 524208 -> 524208 bytes
 po/eu.po                                           |  131 +-
 po/fa.gmo                                          |  Bin 166674 -> 166587 bytes
 po/fa.po                                           |  444 +--
 po/ff.gmo                                          |  Bin 83518 -> 83518 bytes
 po/ff.po                                           |  256 +-
 po/fi.gmo                                          |  Bin 525804 -> 525804 bytes
 po/fi.po                                           |  196 +-
 po/fr.gmo                                          |  Bin 574069 -> 574002 bytes
 po/fr.po                                           |  120 +-
 po/fur.gmo                                         |  Bin 38868 -> 38868 bytes
 po/fur.po                                          |  122 +-
 po/ga.gmo                                          |  Bin 142398 -> 142398 bytes
 po/ga.po                                           |  119 +-
 po/gd.gmo                                          |  Bin 188753 -> 188678 bytes
 po/gd.po                                           |  187 +-
 po/gl.gmo                                          |  Bin 620505 -> 620505 bytes
 po/gl.po                                           |  107 +-
 po/gu.gmo                                          |  Bin 68470 -> 68470 bytes
 po/gu.po                                           |  372 ++-
 po/he.gmo                                          |  Bin 230850 -> 230850 bytes
 po/he.po                                           |  190 +-
 po/hi.gmo                                          |  Bin 147173 -> 147173 bytes
 po/hi.po                                           |  236 +-
 po/hr.gmo                                          |  Bin 556190 -> 556190 bytes
 po/hr.po                                           |  113 +-
 po/hu.gmo                                          |  Bin 619989 -> 619989 bytes
 po/hu.po                                           |  107 +-
 po/hy.gmo                                          |  Bin 136327 -> 136327 bytes
 po/hy.po                                           |  110 +-
 po/ia.gmo                                          |  Bin 11156 -> 11156 bytes
 po/ia.po                                           |  252 +-
 po/id.gmo                                          |  Bin 424412 -> 424412 bytes
 po/id.po                                           |  178 +-
 po/is.gmo                                          |  Bin 159843 -> 159843 bytes
 po/is.po                                           |  157 +-
 po/it.gmo                                          |  Bin 598456 -> 598386 bytes
 po/it.po                                           |  108 +-
 po/ja.gmo                                          |  Bin 701783 -> 701687 bytes
 po/ja.po                                           |  105 +-
 po/ka.gmo                                          |  Bin 58831 -> 58831 bytes
 po/ka.po                                           |  128 +-
 po/kk.gmo                                          |  Bin 230816 -> 230816 bytes
 po/kk.po                                           |  379 +--
 po/km.gmo                                          |  Bin 1014491 -> 1014491 bytes
 po/km.po                                           |  107 +-
 po/kn.gmo                                          |  Bin 820357 -> 820357 bytes
 po/kn.po                                           |  107 +-
 po/ko.gmo                                          |  Bin 634371 -> 634279 bytes
 po/ko.po                                           |  105 +-
 po/ky.gmo                                          |  Bin 38916 -> 38916 bytes
 po/ky.po                                           |  253 +-
 po/lg.gmo                                          |  Bin 55254 -> 55254 bytes
 po/lg.po                                           |  125 +-
 po/lt.gmo                                          |  Bin 334829 -> 334829 bytes
 po/lt.po                                           |  203 +-
 po/lv.gmo                                          |  Bin 42140 -> 42140 bytes
 po/lv.po                                           |  532 ++--
 po/mk.gmo                                          |  Bin 6589 -> 6589 bytes
 po/mk.po                                           |  149 +-
 po/ml.gmo                                          |  Bin 37334 -> 37334 bytes
 po/ml.po                                           |  282 +-
 po/mn.gmo                                          |  Bin 81038 -> 81038 bytes
 po/mn.po                                           |  407 ++-
 po/mr.gmo                                          |  Bin 200783 -> 200783 bytes
 po/mr.po                                           |  271 +-
 po/ms.gmo                                          |  Bin 598207 -> 598131 bytes
 po/ms.po                                           |  105 +-
 po/my.gmo                                          |  Bin 14938 -> 14938 bytes
 po/my.po                                           |  426 ++-
 po/nb.gmo                                          |  Bin 153734 -> 153670 bytes
 po/nb.po                                           |  302 +-
 po/ne.gmo                                          |  Bin 336400 -> 336400 bytes
 po/ne.po                                           |  599 ++--
 po/nl.gmo                                          |  Bin 615021 -> 614941 bytes
 po/nl.po                                           |  105 +-
 po/nn.gmo                                          |  Bin 103407 -> 103407 bytes
 po/nn.po                                           |  107 +-
 po/oc.gmo                                          |  Bin 144661 -> 144661 bytes
 po/oc.po                                           |  432 +--
 po/or.gmo                                          |  Bin 25522 -> 25522 bytes
 po/or.po                                           |  256 +-
 po/pa.gmo                                          |  Bin 281763 -> 281763 bytes
 po/pa.po                                           |  170 +-
 po/pl.gmo                                          |  Bin 627430 -> 627350 bytes
 po/pl.po                                           |  105 +-
 po/ps.gmo                                          |  Bin 43029 -> 43029 bytes
 po/ps.po                                           |  137 +-
 po/pt_BR.gmo                                       |  Bin 541908 -> 541908 bytes
 po/pt_BR.po                                        |  156 +-
 po/pt_PT.gmo                                       |  Bin 610727 -> 610661 bytes
 po/pt_PT.po                                        |  108 +-
 po/ro.gmo                                          |  Bin 416477 -> 416477 bytes
 po/ro.po                                           |  132 +-
 po/ru.gmo                                          |  Bin 797933 -> 797827 bytes
 po/ru.po                                           |  105 +-
 po/si.gmo                                          |  Bin 281852 -> 281852 bytes
 po/si.po                                           |  172 +-
 po/sk.gmo                                          |  Bin 652722 -> 652637 bytes
 po/sk.po                                           |  105 +-
 po/sl.gmo                                          |  Bin 431888 -> 431827 bytes
 po/sl.po                                           |  210 +-
 po/sq.gmo                                          |  Bin 66278 -> 66278 bytes
 po/sq.po                                           |  433 +--
 po/sr.gmo                                          |  Bin 352818 -> 352757 bytes
 po/sr.po                                           |  349 +--
 po/sv.gmo                                          |  Bin 435237 -> 435166 bytes
 po/sv.po                                           |  124 +-
 po/ta.gmo                                          |  Bin 86711 -> 86711 bytes
 po/ta.po                                           |  386 +--
 po/te.gmo                                          |  Bin 148086 -> 148086 bytes
 po/te.po                                           |  211 +-
 po/tet.gmo                                         |  Bin 484 -> 484 bytes
 po/tet.po                                          |  143 +-
 po/th.gmo                                          |  Bin 353347 -> 353347 bytes
 po/th.po                                           |  167 +-
 po/tl.gmo                                          |  Bin 461 -> 461 bytes
 po/tl.po                                           |  143 +-
 po/tr.gmo                                          |  Bin 638460 -> 638386 bytes
 po/tr.po                                           |  105 +-
 po/uk.gmo                                          |  Bin 807839 -> 807739 bytes
 po/uk.po                                           |  105 +-
 po/uz.gmo                                          |  Bin 33505 -> 33505 bytes
 po/uz.po                                           |  311 +-
 po/vi.gmo                                          |  Bin 556963 -> 556892 bytes
 po/vi.po                                           |  139 +-
 po/vlc.pot                                         |  104 +-
 po/wa.gmo                                          |  Bin 286829 -> 286829 bytes
 po/wa.po                                           |  240 +-
 po/zh_CN.gmo                                       |  Bin 570316 -> 570244 bytes
 po/zh_CN.po                                        |  105 +-
 po/zh_TW.gmo                                       |  Bin 269795 -> 269691 bytes
 po/zh_TW.po                                        |  118 +-
 po/zu.gmo                                          |  Bin 61515 -> 61515 bytes
 po/zu.po                                           |  125 +-

(Translation updates)

 Makefile.in                                        |  416 ++-
 bin/Makefile.in                                    |    8 +-
 compat/Makefile.in                                 |   22 +-
 configure                                          |   65 +-
 doc/Makefile.in                                    |    8 +-
 lib/Makefile.in                                    |   16 +-
 m4/Makefile.in                                     |    8 +-
 modules/Makefile.in                                |   12 +-
 modules/access_output/Makefile.in                  |   12 +-
 modules/audio_filter/Makefile.in                   |   12 +-
 modules/control/Makefile.in                        |   12 +-
 modules/gui/Makefile.in                            |   12 +-
 modules/gui/ios_dialog_provider/Makefile.in        |   12 +-
 modules/gui/qt4/Makefile.in                        |   12 +-
 modules/gui/skins2/Makefile.in                     |   12 +-
 modules/hw/vdpau/Makefile.in                       |   12 +-
 modules/misc/Makefile.in                           |   12 +-
 modules/mux/Makefile.in                            |   12 +-
 modules/packetizer/Makefile.in                     |   12 +-
 modules/stream_out/Makefile.in                     |   12 +-
 modules/text_renderer/Makefile.in                  |   12 +-
 modules/video_filter/Makefile.in                   |   12 +-
 modules/video_output/Makefile.in                   |   12 +-
 modules/visualization/Makefile.in                  |   12 +-
 share/Makefile.in                                  |    8 +-
 src/Makefile.in                                    |   45 +-
 test/Makefile.in                                   |    8 +-

(Generated files from auto tools which are re-generated during the
build)

Cheers

[1] https://trac.videolan.org/vlc/ticket/12366
[2] https://trac.videolan.org/vlc/ticket/12367
[3] https://trac.videolan.org/vlc/ticket/12359
[4] https://trac.videolan.org/vlc/ticket/12363
[5] https://trac.videolan.org/vlc/ticket/12356
-- 
Sebastian Ramacher
diff --git a/ChangeLog b/ChangeLog
index 42f6fee..41be72c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,979 @@
+commit 5a53ff0de2eeaab69980975ec8a4c6e6b78f190a
+Author: Rémi Denis-Courmont <remi@remlab.net>
+Date:   Sun Nov 2 11:35:16 2014 +0200
+
+    PulseAudio: clobber original channels (refs #12673)
+    
+    Do like the other outputs do.
+    
+    (cherry picked from commit a842bc4778ea330326af8abf6de5659c78e30cb7)
+
+commit a4384433b10d31c49f63411e7ce905913358fe79
+Author: Jean-Baptiste Kempf <jb@videolan.org>
+Date:   Sat Nov 1 13:42:08 2014 +0100
+
+    lib: use app-icon-name for libvlc_set_app_id
+    
+    (cherry picked from commit 67e74ed283db585fb8ee7905a877117fbde1932d)
+    Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
+
+commit cadbdded4be53c68a72ac9271a9a37ac89ab815e
+Author: Felix Paul Kühne <fkuehne@videolan.org>
+Date:   Wed Oct 22 18:48:50 2014 +0200
+
+    extras: libtool depends on automake, which in turn depends on autoconf
+    
+    This solves long-standing conflicts with homebrew as well as the latest Xcode releases. Additionally, in most cases, all 3 items were built anyway.
+    
+    (cherry picked from commit 79df8a65f1a4a2a3444cdeecc3055681e6dd5a46)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 4f81656751f0f0f2714132548bf4c819092918b3
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Thu Oct 30 22:39:26 2014 +0100
+
+    macosx: do not use the cone as sidebar icons
+    
+    The cone does not really fit and looks ugly. Instead, use the
+    broadcast icon for all internet-related sd's and local icon for
+    devices category.
+    
+    (cherry picked from commit a4a567cd04f30bc864057d8c8ea59c5e8a193ceb)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 6df8d96ab79cf204470b37595ce9a820930a6af7
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Sat Nov 1 12:26:48 2014 +0100
+
+    macosx: Fix resume playback in certain situations
+    
+    For resumption we need to rely on the "time" variable instead of
+    "position", as the total duration of the file might not have been
+    set yet.
+    
+    Also simplifies the code.
+    
+    close #11981
+    
+    (cherry picked from commit c91715f76e29b933128f772d3c936c1d2eea8227)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 25febaf446477e880f69b407f74fe9d98c914689
+Author: Jean-Baptiste Kempf <jb@videolan.org>
+Date:   Sat Nov 1 13:13:51 2014 +0100
+
+    Qt: prevent focus stealing on seekbar tooltip
+    
+    Why be consistent, Qt?
+    
+    Close #12671
+    
+    (cherry picked from commit f35a1b8311d2a8ac12dc2f419157c35768865711)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 9c90f11403fe6641d885cd90accee2d7b21e05a2
+Author: Rémi Denis-Courmont <remi@remlab.net>
+Date:   Thu Oct 30 21:11:39 2014 +0200
+
+    doc: make libvlc_audio_set_volume_callback() dependency explicit
+    
+    (cherry picked from commit 234e80cb494162a6272b125aed8021dfa71f793e)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit acfea9cc2a76ea3314ff2df71f1ca075a441ca45
+Author: Jean-Baptiste Kempf <jb@videolan.org>
+Date:   Mon Oct 27 20:50:17 2014 +0100
+
+    Contribs: disable vpx encoders with --disable-sout
+    
+    (cherry picked from commit 5f7cb6f8b1864563652954a0d5d667bebb2583ee)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 2498d15a8d354f5757988b6b9fcac4f281195a13
+Author: Jean-Baptiste Kempf <jb@videolan.org>
+Date:   Mon Oct 27 20:49:56 2014 +0100
+
+    Contribs: disable vpx docs
+    
+    (cherry picked from commit 4da2ee4b70e3f1b217fa3dbac7076c160745eaf1)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 58fd79d65b08b7dfd6efd534784108f76faf0004
+Author: Jean-Baptiste Kempf <jb@videolan.org>
+Date:   Mon Oct 27 20:39:11 2014 +0100
+
+    Contribs: don't disable VP8 decoder
+    
+    (cherry picked from commit 8032442916b4d08884f60c4ae3341d879cd65b97)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 61419e6c8c463768acb49eb4c9d5983b43556c95
+Author: Jean-Baptiste Kempf <jb@videolan.org>
+Date:   Thu Oct 30 02:25:52 2014 +0100
+
+    Win32: copy the BD-J jar to the release folder
+    
+    (cherry picked from commit ad0e12de52f552c8cfb3b3d60ee00a7246998c8d)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit df9f6b436135b0c72b5970ad88162e7fdce12442
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Wed Oct 29 20:00:51 2014 +0100
+
+    macosx: Add own callback path for item-change
+    
+    The item-change callback might be called very often, and thus an
+    own code path is better, with only necessary updates.
+    
+    Additionally, this fixes multiple resume playback dialogs occuring
+    at once when starting playback in certain situations.
+    
+    refs #11981
+    
+    (cherry picked from commit 293ed5e2ce38aa632a47206ff260a49771e9f67b)
+    Signed-off-by: Felix Paul Kühne <fkuehne@videolan.org>
+
+commit b486cba4c3ee94ee3d9db331189870c3455219b5
+Author: Thomas Guillem <tom@gllm.fr>
+Date:   Fri Oct 10 09:44:18 2014 +0200
+
+    contrib: speexdsp: disable neon on aarch64
+    
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+    (cherry picked from commit 9cf85e3ab92718d8a9ec661cd671b7e7a4289d58)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 838054b7550d074494300ebd9b7bc7781edc05dd
+Author: Felix Paul Kühne <fkuehne@videolan.org>
+Date:   Mon Oct 27 12:09:56 2014 -0700
+
+    swscale: fix compilation if avcodec and avformat are disabled
+    
+    (cherry picked from commit 0b9f0d211699248112818b50e5b68d22c996cf3f)
+
+commit 08df2ec167c6eba178e8b53d767a86c842a20922
+Author: Felix Paul Kühne <fkuehne@videolan.org>
+Date:   Mon Oct 27 11:29:58 2014 -0700
+
+    extras/ios: add a new flag to compile a limited set of non-scary codecs only
+    
+    (cherry picked from commit aede137f9aedbfacec351bbbeba13bdb5e210ba1)
+
+commit 7f1c70d57033a66422f50648cd8e1e5ae06b86e9
+Author: Jean-Baptiste Kempf <jb@videolan.org>
+Date:   Mon Oct 27 19:54:28 2014 +0100
+
+    Contribs: disable speex NEON on aarch64
+    
+    (cherry picked from commit 6860455438177ba8669a2d0738bdd9503abc5cb5)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 5ff6bda6efcc4619fe6882e69f0a2a08bba4713a
+Author: Jean-Baptiste Kempf <jb@videolan.org>
+Date:   Mon Oct 27 19:54:03 2014 +0100
+
+    Configure: swscale needs libavutil headers
+    
+    (cherry picked from commit cbe9b209227272da3e6c01abdf36d0b3d20c47cf)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 7b13b9d40a76af5eca76e9d67cd54c0d7e499172
+Author: Thomas Guillem <tom@gllm.fr>
+Date:   Thu Oct 23 07:01:21 2014 +0000
+
+    mediacodec: fix crash when color-format is invalid
+    
+    Fail if GetVlcChromaFormat return 0.
+    (It'll throw a HardwareAccelerationError)
+    
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+    (cherry picked from commit 40aa75316d6f3edc457354ac26295e292a8b1f9f)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit c59dc61a3a5c369fcb6ea96ca0a395a50a27273e
+Author: Sean McGovern <gseanmcg@gmail.com>
+Date:   Thu Oct 23 22:13:41 2014 -0400
+
+    sparkle: add SHA512SUM data
+    
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+    (cherry picked from commit 0b930ade83b84dc22fed7bbf0ad8e2c6f7595ef4)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 72b2b969cf3daa0f548b76b10ffe7533b14c904c
+Author: Thomas Guillem <tom@gllm.fr>
+Date:   Thu Oct 23 12:56:43 2014 +0200
+
+    mediacodec: cleanly abort DecodeVideo if GetOutput failed
+    
+    - Fix possible infinite loop with sw rendering if GetOutput failed.
+    - Don't return a pic and don't release the block in case of error_state.
+    
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+    (cherry picked from commit ab4c04f2f5545dcc3cae7ebffe8d28f3e2c5a915)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 18a597c4abbd99e9a59567a4b14dd737bb402797
+Author: Rémi Denis-Courmont <remi@remlab.net>
+Date:   Thu Oct 23 17:58:50 2014 +0300
+
+    mjpeg: do not assume that stream_Read() succeeds
+    
+    (cherry picked from commit f03f44d76a1949f5cbc05989fa1ab257818d245c)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 13dd6a6cd45278c79a2bfef6e25bdf9646a5e557
+Author: Thomas Guillem <tom@gllm.fr>
+Date:   Mon Oct 20 14:50:27 2014 +0200
+
+    contrib: speexdsp: fix build with android-ndk10c
+    
+    In android-ndk10c, there is a "arm_neon.h" for all archs. The arm_neon.h for
+    x86* contains correspondence between neon and sse. In speexdsp, There is a
+    conflict between resample_sse.h and resample_neon.h. So disable neon if arch is
+    known to don't have neon.
+    
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+    (cherry picked from commit ef98e81ff014175fd7494c8313de8883d15834b3)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 079c2364f5d90284bf2ca20d89c51e7d2c4d9356
+Author: Felix Paul Kühne <fkuehne@videolan.org>
+Date:   Wed Oct 22 19:20:14 2014 +0200
+
+    extras/ios: fix compilation with latest xcode releases
+    
+    (cherry picked from commit 5027938fb4965bca2d3e11ad1c17ca7aecaed258)
+
+commit ef931323bd6420fe34634dc15733823926a97567
+Author: Felix Paul Kühne <fkuehne@videolan.org>
+Date:   Sun Oct 12 16:16:40 2014 +0200
+
+    ios: require iOS 6.1 since 5.1 is no longer support by current Xcode releases
+    
+    (cherry picked from commit d65920ce6607fb24a22e7645b5fd1d03e9e5cfdc)
+
+commit 7f06a46695fb7a7f1a3a498551b00f8896c57680
+Author: Rémi Denis-Courmont <remi@remlab.net>
+Date:   Sat Oct 25 20:45:58 2014 +0300
+
+    swscale: scale the whole picture (fixes #12085)
+    
+    ...not just the visible part. So that cropping still works even though
+    the visible part of the input and output format typically do not match.
+    
+    (cherry picked from commit 44d4685b1ca4d1b58c4ce77d479103d482be5d14)
+    
+    Conflicts:
+    	modules/video_chroma/swscale.c
+
+commit de72116538fcf1bf3bd60dae8bda1fd9689d2a70
+Author: Rémi Denis-Courmont <remi@remlab.net>
+Date:   Thu Oct 23 21:58:58 2014 +0300
+
+    PulseAudio: remove the base volume hack
+    
+    (cherry picked from commit d3de0ffc472ddaf38fe6ba20f05071742ad8d86b)
+
+commit 385c1194bf58076bfd73e41ecc24b10ddafefe7f
+Author: Pierre Ynard <linkfanel@yahoo.fr>
+Date:   Sat Oct 25 03:51:45 2014 +0200
+
+    youtube.lua: support embedded iframe URLs
+    
+    Closes #11878
+    
+    (cherry picked from commit 77f58c382703f93e899683844d1917cd7cb69d22)
+    Signed-off-by: Felix Paul Kühne <fkuehne@videolan.org>
+
+commit 60ff09fe09ba01f978c6e5f1c2f6dfa17fceabf8
+Author: Tristan Matthews <tmatth@videolan.org>
+Date:   Fri Oct 24 16:39:37 2014 -0400
+
+    contrib: opus: don't build extra programs and doc
+    
+    (cherry picked from commit bdd6d80e23f3358c887215fb0497dff79b799e09)
+
+commit 70d70ee0460d3e4fedc98428de9d539ec9352a34
+Author: Damien Erambert <damien.erambert@me.com>
+Date:   Wed Oct 22 20:27:40 2014 +0200
+
+    macosx: update yosemite graphics for time slider knob and volume buttons
+    
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+    (cherry picked from commit def33da534a93e67f251d31057a3d503febb9754)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit db2102d39b343e5457db6adf0084acf6aa5c8083
+Author: Felix Paul Kühne <fkuehne@videolan.org>
+Date:   Wed Oct 22 17:22:25 2014 +0200
+
+    macosx: don't rebuild the playlist table unnecessarily often (close #12430, refs #9960)
+    
+    (cherry picked from commit 52b64b0567338913bc43a4e013ad20f2bbda8be3)
+
+commit bd2c4b17b8e6f2967c5a4cc5abd84714a699cca2
+Author: Felix Paul Kühne <fkuehne@videolan.org>
+Date:   Tue Oct 21 15:07:32 2014 +0200
+
+    extras/ios: add a debug flag to the build script
+    
+    (cherry picked from commit afa9344cb8c479503aaacbd6605a89c4a0e3026b)
+
+commit 89f1948974625389eb9b46141496851c654cf407
+Author: Rémi Denis-Courmont <remi@remlab.net>
+Date:   Wed Oct 15 22:13:22 2014 +0300
+
+    caca: do not pretend to support resize
+    
+    (cherry picked from commit e92fbab66cf7f257ae9a3fefe73eea18b478d6f3)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 185a1d709c6dd7893ed9088b9e4e46cb995bf016
+Author: Jean-Baptiste Kempf <jb@videolan.org>
+Date:   Wed Oct 15 12:09:36 2014 +0200
+
+    Contribs: update gpg-error to 1.16
+    
+    Close #12400
+    
+    (cherry picked from commit e5cd171227b1982dc70cc97703622cbef82ead29)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 2099d8b8f075e62fae73759d37b1eb92c4b0605d
+Author: Jean-Baptiste Kempf <jb@videolan.org>
+Date:   Fri Oct 17 15:28:13 2014 +0200
+
+    Tools: Update pkg-config-lite to 0.28-1
+    
+    (cherry picked from commit 8d285ab272740fddeed76570d89c37a52636857c)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 405088e9f4161dac27dc6d15d101fe722983be42
+Author: Thomas Guillem <tom@gllm.fr>
+Date:   Mon Oct 20 14:50:27 2014 +0200
+
+    contrib: speexdsp: fix build with android-ndk10c
+    
+    In android-ndk10c, there is a "arm_neon.h" for all archs. The arm_neon.h for
+    x86* contains correspondence between neon and sse. In speexdsp, There is a
+    conflict between resample_sse.h and resample_neon.h. So disable neon if arch is
+    known to don't have neon.
+    
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+    (cherry picked from commit ef98e81ff014175fd7494c8313de8883d15834b3)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit e15a5ab72d0e1cfcbff829d0671873c35299f414
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Sun Oct 19 23:07:41 2014 +0200
+
+    macosx: do not save resume data if VLC is in private mode
+    
+    (cherry picked from commit a372720ffe4ebdf05e4145407e611a1cd9f0e72e)
+    Signed-off-by: Felix Paul Kühne <fkuehne@videolan.org>
+
+commit 56ccd7532f4cb9c5378500adca9e936578059c34
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Sun Oct 19 23:00:05 2014 +0200
+
+    macosx: fix resume playback guards, do not resume for folder urls
+    
+    Folder URLs are likely DVD or bluray folders, which cannot be resumed
+    properly. Also fixes memleak, and unify guards. Do not save position
+    for input items which we do not resume afterwards anyway.
+    
+    (cherry picked from commit b2525ebf7c3658d72963def5d9ac5b7627ac3b4c)
+    Signed-off-by: Felix Paul Kühne <fkuehne@videolan.org>
+
+commit ec603a11813f7606576c33eaf097f8b5cc3df152
+Author: Hannes Domani <ssbssa@yahoo.de>
+Date:   Mon Oct 20 18:06:13 2014 +0200
+
+    Win32: stop stacktrace on bad pointer
+    
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+    (cherry picked from commit 7e92a492766d31dfa91aaea2eafb37d35e8886a1)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 2468897321f8aef3bfe5ffd2b43ade2f5e9b2ea5
+Author: Felix Paul Kühne <fkuehne@videolan.org>
+Date:   Sun Oct 19 18:57:22 2014 +0200
+
+    macosx: slightly de-uglify the VLC description in the about dialog by rendering it in the system's default font instead of Times
+    
+    (cherry picked from commit a8994ec08542bf0954e67dccf1d47657adaf4570)
+
+commit e782ae3193da77d6e4565250d188d64f461bcbef
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Sat Oct 18 13:20:36 2014 +0200
+
+    macosx: fix wrong size of playlist when using podcast and minimal view
+    
+    (cherry picked from commit 19bbb8cc2c0aacc176ac83dc7a57fe94407e9ef4)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit f9f386157af15d8c1e1f0180503f9c8b459e5b8d
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Sat Oct 18 11:21:51 2014 +0200
+
+    macosx: fix podcast view interfering with dropzone
+    
+    (cherry picked from commit 2b6a8709c5282bf40b3667376d7e67b6ca46b262)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit 10f7cb74e71e6c004d9a5afefce4bbe145949765
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Sat Oct 18 09:05:09 2014 +0200
+
+    macosx: Fix drawing issues with podcast controls and dropzone
+    
+    - Remove black lines below podcast controls
+    - fix uncentered dropzone when starting native fullscreen, by slightly
+      increasing the min height
+    - fix disappearing or uncentered dropzone when changing between
+      normal and minimum view quickly
+    - consolidate dropzone and podcast sizings in interface builder
+    
+    (cherry picked from commit 58b713c7f84e8eb9eedc8ca383ac59cd212db234)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit 4dab7846632d4914f9ebbf9f249b5b24c8e4d141
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Fri Oct 17 22:37:15 2014 +0200
+
+    macosx: remove alternate image from max volume and mute buttons
+    
+    This image was set, but it is not overwritten by its os-dependent
+    counterpart in code. In fact, we only have one image, so just unset
+    the alternate image in xib.
+    
+    (cherry picked from commit 544ffab82934566b535c2a10b0dfe6d9ec0154da)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit b142d942b0420f7ecbec9e32e328c3da48c46058
+Author: Damien Erambert <damien.erambert@me.com>
+Date:   Fri Oct 17 22:18:19 2014 +0200
+
+    macosx: Fix and update yosemite titlebar graphics
+    
+    This especially fixes the -on graphics.
+    
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+    (cherry picked from commit 26fde7655abc8f91eddfc971ed1e21d19fbf7edc)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit 90429455de17f10dfe13921f439747ea8540bdae
+Author: Damien Erambert <damien.erambert@me.com>
+Date:   Sat Oct 4 23:30:36 2014 +0200
+
+    macosx: fix music sidebar icon
+    
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+    (cherry picked from commit 920a33915ff2e140a19bd70ede652580d3932689)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit 4812b7dd546fdf0d54441f4e2927dd119c3acb6a
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Thu Oct 2 17:42:32 2014 +0200
+
+    macosx: avoid unnecessarily early loading of open panel nib
+    
+    Loading the open nib can take some significant time, due to audio/
+    video devices enumeration.
+    
+    refs #12123
+    
+    (cherry picked from commit 640b974d52785d5ae215c1cfeb46fdd5bc085231)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit 5d22821b30a1e648e5a994fd5cb5ff1e34afb3b4
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Thu Oct 2 13:53:51 2014 +0200
+
+    codec: libass: show dialog for fontconfig cache recreation on osx
+    
+    close #12014
+    
+    (cherry picked from commit fd67a259eadaef3b25dc1ca50b8b09fd971a93fe)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit ddcf826bc76cf0a934dd237c3117d08dfdddb5e8
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Thu Oct 2 13:52:44 2014 +0200
+
+    Makefile.am: Add new macosx ressources
+    
+    (cherry picked from commit 5cb2c764351ba8d8beab1f13208d18313e4e4406)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit e5f3461c22bbed3829a1ed9a56d36562b4ce236d
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Thu Oct 2 13:22:52 2014 +0200
+
+    macosx: also cache old native fullscreen images and move to better place
+    
+    (cherry picked from commit 0d7d2cb4b1b98988f2e4b15af2af0f81b8253080)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit 0da8979d04da3a19cc1cacacfe01627a9c37806f
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Thu Oct 2 12:59:15 2014 +0200
+
+    macosx: implement native fullscreen behaviour for yosemite titlebar
+    
+    (cherry picked from commit 0b001a0763aa2e34f6abd921184ce58d56947421)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit 533632432432234e24d26fada305bcd9aef274a5
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Thu Oct 2 11:29:22 2014 +0200
+
+    macosx: simplify loading of titlebar graphics and integrate yosemite icons
+    
+    (cherry picked from commit 5647339c6b8631f749b6c102da90715e04ab82a4)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit f5cf5a1295e7342b5c088319ffd67c055a6b59e8
+Author: Damien Erambert <damien.erambert@me.com>
+Date:   Wed Oct 1 23:55:49 2014 +0200
+
+    macosx: fix yosemite retina graphics for fullscreen button
+    
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+    (cherry picked from commit 42ee1b6ebb4bdf6b5092e824a95b65839ba018ef)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit 70726114cd169d8b3809b20230aca4597819056d
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Wed Oct 1 22:00:26 2014 +0200
+
+    macosx: fix main window top bar by reinstoring graphic
+    
+    (cherry picked from commit 1f027bcb06c8f8d92084af1a584869dbee3039c9)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit ff8d19710854abf91763da5908f7ec87d705f4a8
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Wed Oct 1 21:52:01 2014 +0200
+
+    macosx: add yosemite graphics to project file and use them in code
+    
+    This also cleans up the images structure inside the project.
+    
+    (cherry picked from commit 6616504dfb7658f3b394bef2555f92a390e682ed)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+    
+    Conflicts:
+    	modules/gui/macosx/StringUtility.m
+
+commit 0baaf44f1be63abc714f175927e1e67af3d8994d
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Wed Oct 1 20:03:40 2014 +0200
+
+    macosx: pngcrush new yosemite icons
+    
+    (cherry picked from commit baf2c19d97b874373480c317174aebf92504b060)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit 26c23d0c8aa2239502009a2683ab1c3b4ee5f52a
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Wed Oct 1 19:58:43 2014 +0200
+
+    macosx: restructure and unify naming of new yosemite icons
+    
+    Now, new root folders are created for yosemite, with the naming
+    scheme mainwindow_yosemite. All icons have the prefix ys-.
+    
+    (cherry picked from commit 405614f5422880ecf75072a1ad99ecd201ce4564)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit 33cbd96e42f05f192b6d0d9cb2101534faecf062
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Wed Oct 1 19:43:52 2014 +0200
+
+    macosx: removed old graphics which are not used anymore
+    
+    Also renames 4 yosemite graphics to match the existing naming.
+    
+    (cherry picked from commit fe8867d9257075bd8b8866cb1e63a56bbd99aee4)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit 12f3fdc3eb5cf761ec83f2d9ff2344c33c07d3e0
+Author: Damien Erambert <damien.erambert@me.com>
+Date:   Sat Aug 23 18:31:55 2014 +0200
+
+    macosx: Added graphics for buttons on Yosemite 10.10
+    
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+    (cherry picked from commit 45e123f9dadf42220a3844e7152d8d87d8dd0b4c)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit 7b1cd368a6170388b0208ef770510fcbc7e0c7ef
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Wed Oct 1 16:03:33 2014 +0200
+
+    macosx: add yosemite guard
+    
+    (cherry picked from commit 2c674d76924785536fef66929b7ddcb08dde585b)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit b3f316e8b18d4c303de7bd27d2397bf0f5fd173a
+Author: Rémi Denis-Courmont <remi@remlab.net>
+Date:   Thu Oct 16 20:20:12 2014 +0300
+
+    avcodec: fix double free on error
+    
+    (cherry picked from commit 9bf41d6aeb35a121ce9c96adb21852ca69eb106b)
+
+commit c66a9f4334b6dc838451ba2d1b4f6d53fe7d1a5a
+Author: Jean-Baptiste Kempf <jb@videolan.org>
+Date:   Fri Aug 8 04:42:48 2014 +0200
+
+    PS: Fix H264 in evob
+    
+    (cherry picked from commit 3b33cbca98e76ed3d65fabcf9efedcea415ffdf5)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit e33e5def5b9901fadb0d756d60501c8dd9e8db7d
+Author: Thomas Guillem <tom@gllm.fr>
+Date:   Tue Oct 14 11:35:57 2014 +0200
+
+    mediacodec: exception in getCapabilitiesForType is not critical.
+    
+    fix mediacodec with android-L on Nexus 7v2.
+    
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+    (cherry picked from commit 6e2f49095619d027ba99020076b0aedc6cde7afe)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit e49c91ef43ff3f537c8042de781164305c287899
+Author: Thomas Guillem <tom@gllm.fr>
+Date:   Tue Oct 14 11:35:56 2014 +0200
+
+    mediacodec: fix jni leak
+    
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+    (cherry picked from commit 05644c1e54548cc4ac0b57b70000d2e5fe7d5c16)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 47d9673f045a520e2baaf005302718c2b3d2a8a6
+Author: Jean-Baptiste Kempf <jb@videolan.org>
+Date:   Sat Oct 11 17:53:45 2014 +0200
+
+    Win32: prefer the static libraries when creating the dlls
+    
+    This should avoid the issues of packaging libgcc_s_sjlj-1.dll,
+    libwinpthread-1.dll and the like.
+    
+    (cherry picked from commit 417b6eb0f09dc73984a7dba2aa42c9d8683d5294)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 85836f2c835c85eb00a52dd19d6c51b4c38c574d
+Author: KO Myung-Hun <komh78@gmail.com>
+Date:   Sun Oct 12 14:59:26 2014 +0900
+
+    Add -avoid-version to LDFLAGS of vlc and vlccore on OS/2
+    
+    Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
+    (cherry picked from commit 863f851833eab0c4a2b5de354bbf50270a5d8d2b)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit bda1bbd1d290d7eb2c243adea011e52924f0d598
+Author: Francois Cartegnie <fcvlcdev@free.fr>
+Date:   Mon Oct 13 23:36:31 2014 +0200
+
+    demux: libmp4: reorder & fix ilst/udta rules
+    
+    (cherry picked from commit 1e913466fb03169e6235f09a8cfae1910b89e3e6)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 2bbd387c2b358642a4e3e2cce47caaae2c2331c0
+Author: Julian Scheel <julian@jusst.de>
+Date:   Fri Oct 10 11:21:07 2014 +0200
+
+    codec/zvbi: Only reset subpicture in text mode
+    
+    The subpicture reset, as stated in the comment, is only required when
+    rendering text-subtitles. In fact it causes an invalid image to be generated
+    and possibly output in non-text mode. Hence disable the picture recreation for
+    non-text mode.
+    
+    Signed-off-by: Julian Scheel <julian@jusst.de>
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+    (cherry picked from commit 47012982d20cf537fc710edd14c9c9c4183d0a19)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit ac4f2bc6d06890f40034d8ad368c208de76a61a6
+Author: Tristan Matthews <tmatth@videolan.org>
+Date:   Sat Oct 11 21:42:10 2014 -0400
+
+    contrib: speexdsp: disable examples
+    
+    (cherry picked from commit 7bd11e51ac8dee7c27faff7c1c406164f2943a94)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+    
+    Conflicts:
+    	contrib/src/speexdsp/rules.mak
+
+commit 41cbb49b15d67c0b03299fdebe7e56e16b5d4313
+Author: Felix Paul Kühne <fkuehne@videolan.org>
+Date:   Sun Oct 12 16:30:12 2014 +0200
+
+    extras: mirror ragel on v.o since upstream server is broken
+    
+    (cherry picked from commit af3eeea5af09938d1f90c46f048137156c531327)
+
+commit dc7633b308b5ffd2b2b16ca4af734a00af4d9be6
+Author: Rémi Denis-Courmont <remi@remlab.net>
+Date:   Sat Oct 11 20:46:18 2014 +0300
+
+    configure: fix SFTP plugin name
+    
+    (cherry picked from commit 88ab8def21e117704335a800cfbe5e08baf1edd7)
+
+commit c5138aedf45a23deb989f3f12652742e4189cce5
+Author: Rémi Denis-Courmont <remi@remlab.net>
+Date:   Sat Oct 11 17:06:53 2014 +0300
+
+    vout: reset A.R. and zoom to sane defaults if unset (fixes #8184)
+    
+    (cherry picked from commit fb63f1cc675c5302628ad2fec033ac2472107085)
+
+commit f5cd073aac897ebecbf8f38657e5de18e61d2e88
+Author: Rémi Denis-Courmont <remi@remlab.net>
+Date:   Sat Oct 11 14:37:52 2014 +0300
+
+    lib: disable decoding hardware acceleration with vmem
+    
+    This ensures that subpictures blending works, and avoids copying back
+    video frames from GPU to CPU. For proper hardware acceleration,
+    use libvlc_media_player_set_xwindow() instead.
+    
+    (cherry picked from commit 86796e2a57adcf5daea9d182c4378e49b40a7f47)
+
+commit 7644f23cce73b87b18e08b4ba9ea3a772e8f249d
+Author: Rémi Denis-Courmont <remi@remlab.net>
+Date:   Thu Oct 9 22:30:44 2014 +0300
+
+    msw: fix format string
+    
+    (cherry picked from commit e8ab8fb6b40d315632da311de7a2e03002a528c5)
+
+commit 99dfe572819e4780bae80118af0ff5b63723b2ec
+Author: Rémi Denis-Courmont <remi@remlab.net>
+Date:   Sat Oct 11 10:12:10 2014 +0300
+
+    mft: fix format string
+    
+    (cherry picked from commit dbdd63484c7e8bed853e4f2b398c906df181be3a)
+
+commit d3f878cc4b68e53bb5f477cb3cfb5e0ef9d9a801
+Author: Rémi Denis-Courmont <remi@remlab.net>
+Date:   Sat Oct 11 10:36:40 2014 +0300
+
+    configure: fix typo in rcc code (fixes #12384)
+    
+    Pointed-out-by: Paweł Stankowski
+    (cherry picked from commit 34fef72dab6f7718370dbe27a66f320362475198)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 3e8036a5f6b9fc4a3dd3baaea8a81102dcd4bdd5
+Author: Tristan Matthews <tmatth@videolan.org>
+Date:   Sat Oct 11 00:09:21 2014 -0400
+
+    png: encoder: encode visible lines, but use pitch for offset
+    
+    (cherry picked from commit fd1e287a11d678a8e131d59979e84fb4486c0c57)
+
+commit b28f5a1eb1417364b4fe08d105b8faf3efa68e56
+Author: Tristan Matthews <tmatth@videolan.org>
+Date:   Fri Oct 10 22:32:13 2014 -0400
+
+    png: encoder: really fix row offset calculation
+    
+    (cherry picked from commit 47431e192bbaefe723c7b6915a54f3ab4ca440e8)
+
+commit 8d8617bb938036a444e02425bffa6cad9bcbd855
+Author: Francois Cartegnie <fcvlcdev@free.fr>
+Date:   Thu Oct 9 14:44:36 2014 +0200
+
+    demux: libmp4: fix heap buffer write ofw in chpl (fix #12366)
+    
+    (cherry picked from commit d1bdd44b1902f62453f6982e1ee09a5b243f25ee)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 448cc958b4522654f6d7fdad5eef5f36831c77d1
+Author: Francois Cartegnie <fcvlcdev@free.fr>
+Date:   Thu Oct 9 16:26:20 2014 +0200
+
+    demux: mp4: fix last chunk size computation (fix #12362)
+    
+    (cherry picked from commit 8a0493add9682187192cc3dab514294ad0b9f541)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit bf75f88f04c4e472940d00314a997342ba30313e
+Author: Francois Cartegnie <fcvlcdev@free.fr>
+Date:   Thu Oct 9 20:29:54 2014 +0200
+
+    demux: asf: fix heap buffer write ofw in priorities (fix #12363)
+    
+    (cherry picked from commit 56e71fe572f9e97c8deb3cffdebdd0f0ea8979d0)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit b27f31c78ce42549d983268a64bf49d9fd42d06c
+Author: Francois Cartegnie <fcvlcdev@free.fr>
+Date:   Thu Oct 9 23:46:35 2014 +0200
+
+    demux: mp4: fix heap read ofw in extra bytes
+    
+    (cherry picked from commit 54bbfac289eeeed9ba044bf9f9e1ee43e5642c78)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit abf74133941284b0af3b5c2240460b8017037e92
+Author: Francois Cartegnie <fcvlcdev@free.fr>
+Date:   Wed Oct 8 19:13:25 2014 +0200
+
+    demux: ogg: fix use after free (fix #12360)
+    
+    (cherry picked from commit b3664586b7db3bd94fad7dd12b9cad3633eaef1a)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 1530ef4fdb3e444bf939cc9cb2e46df4b1e6022f
+Author: Francois Cartegnie <fcvlcdev@free.fr>
+Date:   Wed Oct 8 18:48:44 2014 +0200
+
+    demux: libavi: fix heap write ofw
+    
+    (cherry picked from commit dde5f4aff32b81b6cace0a88a3a718147d0f3bf4)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit ee94797446fde0d4d622823c77116abc6c90c3ed
+Author: Francois Cartegnie <fcvlcdev@free.fr>
+Date:   Wed Oct 8 17:59:23 2014 +0200
+
+    demux: livavi: fix heap buffer ofw in strf parsing (fix #12359)
+    
+    (cherry picked from commit cd87a5a9482adef5c679f80fc3a75eccbd7c6970)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit e8a2b2997d5bb64180787f8cdf8480973be53edc
+Author: Francois Cartegnie <fcvlcdev@free.fr>
+Date:   Wed Oct 8 17:09:44 2014 +0200
+
+    demux: tta: fix heap buffer ofw (fix #12357)
+    
+    (cherry picked from commit 3979f15fc235f576f5ed4278ffe06eab53425bf4)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit fc45e6cbdf909c372e708cca3e40911c3a5846fe
+Author: Francois Cartegnie <fcvlcdev@free.fr>
+Date:   Wed Oct 8 17:06:28 2014 +0200
+
+    demux: mp4: fix heap buffer ofw with zero chunk (fix #12356)
+    
+    (cherry picked from commit 929970aecfc91725ba243953ccb5197fa797c0a8)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 5249240cf82e58e6ec1177706a2a9c22ad1d3155
+Author: Francois Cartegnie <fcvlcdev@free.fr>
+Date:   Wed Oct 8 15:17:55 2014 +0200
+
+    demux: libmp4: fix heap overflow in stdp debug code (fix #12358)
+    
+    (cherry picked from commit 2caa3ce4d4a50da0796d0e2bb7feebb53aed8f8f)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 7d4f14c4b70fc030531384f3dece3ab6b9514da3
+Author: Rafaël Carré <funman@videolan.org>
+Date:   Tue Oct 7 08:55:03 2014 +0200
+
+    contrib: fix freetype dependencies
+    
+    (cherry picked from commit 63c91494921e17541f96c4b311ed791ee3ce21d9)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 0a1758799929b1afb56eea4c106b690452ac5761
+Author: Rémi Denis-Courmont <remi@remlab.net>
+Date:   Tue Oct 7 23:21:35 2014 +0300
+
+    include: fix external compilation (fixes #12355)
+    
+    (cherry picked from commit 98682b66af497c2a038011aae227fbd13511167a)
+
+commit 468e08143053c5705f5fed18c9ad2cfc4c58ec0d
+Author: Rémi Denis-Courmont <remi@remlab.net>
+Date:   Tue Oct 7 23:16:11 2014 +0300
+
+    include: remove restrict keyword (fixes #12354)
+    
+    This is necessary for compatibility with C++. The keyword is only
+    meaningful in definition, not in declaration anyway.
+    
+    (cherry picked from commit 1a4dc0bd85d94c9ad0b50268aed009840bf2d30e)
+    
+    Conflicts:
+    	include/vlc_tls.h
+
+commit ef84c9c97d85131a0fe33dd59a5bf02e34615cfb
+Author: Igor Prokopenkov <cmyk777@gmail.com>
+Date:   Fri Oct 3 15:25:24 2014 +0000
+
+    lib: Fire libvlc_MediaListPlayerPlayed at end of playlist
+    
+    The "libvlc_MediaListPlayerPlayed" event was defined but unused.
+    It is now fired when libvlc_media_list_player is played until last item in the playlist
+    
+    Signed-off-by: Igor Prokopenkov <cmyk777@gmail.com>
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+    (cherry picked from commit fd4a0ba83493bd91f2adb7b68ae9fb3c3d5fc972)
+    Signed-off-by: Felix Paul Kühne <fkuehne@videolan.org>
+
+commit cd4d3a09b37e65b95e553657a7c616cbc0fd2f7e
+Author: Jean-Baptiste Kempf <jb@videolan.org>
+Date:   Sun Jul 6 00:59:01 2014 +0200
+
+    Contribs: apply OSX patch only on OSX
+    
+    Else, it conflicts with Win32 patch and fails to compile
+    
+    (cherry picked from commit f836a94d9c4a78a03cc412d5559d274dc2df459b)
+    Signed-off-by: Rafaël Carré <funman@videolan.org>
+
+commit ea1927e79317b60a931c7bfff246914aac9d6a7a
+Author: Tristan Matthews <tmatth@videolan.org>
+Date:   Mon Oct 6 23:08:02 2014 -0400
+
+    contrib: speex: avoid automatically depending on ogg
+    
+    ogg was still being pulled in as a dependency when cross-compiling, which
+    would break certain build configurations.
+    
+    (cherry picked from commit 4c63aa1192dc4148b8c540b0b7210aa91713505b)
+
+commit 73f12e7621c302f75d2a33aec7d179e5b4969880
+Author: Rémi Denis-Courmont <remi@remlab.net>
+Date:   Mon Oct 6 23:56:31 2014 +0300
+
+    vdpau/deinterlace: set progressive flag on both output pictures
+    
+    (cherry picked from commit 6500f61ed6f6f8525961fab89d2a69bb0172434a)
+
+commit 283547fa41d040b5503e37e88cd961b10d1df1fd
+Author: Jean-Baptiste Kempf <jb@videolan.org>
+Date:   Mon Oct 6 17:29:01 2014 +0200
+
+    On the road to RC1
+
+commit 9ccb8651baeca05c501193b1b371fbdef9a208ac
+Author: Francois Cartegnie <fcvlcdev@free.fr>
+Date:   Sun Oct 5 16:22:18 2014 +0200
+
+    demux: asf: stay within track limits
+    
+    (cherry picked from commit a61da5b40d25af4fd0417eb3a9a172a92e62c659)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
 commit ea7af98d99deaba263cdbe711c0121b3948c5db6
 Author: Jean-Baptiste Kempf <jb@videolan.org>
 Date:   Mon Oct 6 17:11:07 2014 +0200
diff --git a/NEWS b/NEWS
index c086f7a..4bfd1e0 100644
--- a/NEWS
+++ b/NEWS
@@ -1,13 +1,13 @@
-Changes between 2.1.x and 2.2.0-pre4:
+Changes between 2.1.x and 2.2.0-rc1:
 --------------------------------
 
 Important changes:
  * The licenses of more modules have changed from GPLv2+ to LGPLv2.1+,
-   notably the streaming output, muxers and access output ones
+   notably most of the streaming output, muxers and access output modules
 
 Core:
  * Support automatic rotation using streams metadata, GPU-accelerated when possible
- * Add extensions download from external repositories
+ * Add extensions manager and downloading from external repositories
  * Rework the metadata fetching algorithm and policies
  * Partial fix of playback of short audio samples
 
@@ -85,7 +85,7 @@ Video Output:
  * New Android native window provider module
  * Direct rendering for MediaCodec Android hardware acceleration
  * Support for loading HLSL shaders in Direct3D video output
- * Add mmal based video output
+ * Add MMAL based video output for RaspberryPi
 
 Video Filter:
  * New Oldmovie effect filter
@@ -154,7 +154,7 @@ Misc:
  * Teletext navigation buttons support in Qt4 gui
 
 Security:
- * Numerous integer and heap overflow in Ogg and MP4 demuxer
+ * Numerous integer and heap overflow in Ogg, AVI, ASF, TTA and MP4 demuxers
 
 Removed modules:
  * iOS video output: use ios2
diff --git a/configure.ac b/configure.ac
index 1280beb..b603a3b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2,12 +2,12 @@ dnl Autoconf settings for vlc
 
 AC_COPYRIGHT([Copyright 2002-2014 VLC authors and VideoLAN])
 
-AC_INIT(vlc, 2.2.0-pre4)
+AC_INIT(vlc, 2.2.0-rc1)
 VERSION_MAJOR=2
 VERSION_MINOR=2
 VERSION_REVISION=0
 VERSION_EXTRA=0
-VERSION_DEV=pre4
+VERSION_DEV=rc1
 
 PKGDIR="vlc"
 AC_SUBST(PKGDIR)
@@ -1721,7 +1721,7 @@ AS_IF([test "${SYS}" = "mingw32"], [ VLC_ADD_PLUGIN([access_smb]) ])
 dnl
 dnl sftp access support
 dnl
-PKG_ENABLE_MODULES_VLC([SFTP], [access_sftp], [libssh2], (support SFTP file transfer via libssh2), [auto])
+PKG_ENABLE_MODULES_VLC([SFTP], [sftp], [libssh2], (support SFTP file transfer via libssh2), [auto])
 
 dnl
 dnl  Video4Linux 2
@@ -2501,6 +2501,7 @@ then
       CPPFLAGS="${CPPFLAGS} ${SWSCALE_CFLAGS}"
       CFLAGS="${CFLAGS} ${SWSCALE_CFLAGS}"
       AC_CHECK_HEADERS(libswscale/swscale.h)
+      AC_CHECK_HEADERS(libavutil/avutil.h)
       VLC_ADD_PLUGIN([swscale])
       VLC_ADD_LIBS([swscale],[$SWSCALE_LIBS])
       VLC_ADD_CFLAGS([swscale],[$SWSCALE_CFLAGS])
@@ -3717,7 +3718,7 @@ AS_IF([test "${enable_qt}" != "no"], [
       QT_PATH="$(eval $PKG_CONFIG --variable=exec_prefix Qt5Core)"
       QT_HOST_PATH="$(eval $PKG_CONFIG --variable=host_bins Qt5Core)"
       AC_PATH_PROGS(MOC, [moc-qt5 moc], moc, [${QT_HOST_PATH} ${QT_PATH}/bin ${CONTRIB_DIR}/bin])
-      AC_PATH_PROG(RCC, [rcc-qt5 rcc], rcc, [${QT_HOST_PATH} ${QT_PATH}/bin ${CONTRIB_DIR}/bin])
+      AC_PATH_PROGS(RCC, [rcc-qt5 rcc], rcc, [${QT_HOST_PATH} ${QT_PATH}/bin ${CONTRIB_DIR}/bin])
       AC_PATH_PROGS(UIC, [uic-qt5 uic], uic, [${QT_HOST_PATH} ${QT_PATH}/bin ${CONTRIB_DIR}/bin])
     ], [
       PKG_CHECK_MODULES([QT], [QtCore QtGui >= 4.6.0],, [
diff --git a/debian/changelog b/debian/changelog
index 00a5110..208816e 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,10 @@
+vlc (2.2.0~rc1-1) UNRELEASED; urgency=medium
+
+  * New upstream release.
+  * debian/vlc-nox.install.in: Correctly install sftp plugin.
+
+ -- Sebastian Ramacher <sramacher@debian.org>  Mon, 03 Nov 2014 19:53:30 +0100
+
 vlc (2.2.0~pre4-2) unstable; urgency=medium
 
   * Revert "Disable FreeRDP plugin". (Closes: #764294)
diff --git a/debian/vlc-nox.install.in b/debian/vlc-nox.install.in
index eef13de..10d3305 100644
--- a/debian/vlc-nox.install.in
+++ b/debian/vlc-nox.install.in
@@ -31,6 +31,7 @@ usr/lib/vlc/plugins/access/liblive555_plugin.so
 usr/lib/vlc/plugins/access/librar_plugin.so
 usr/lib/vlc/plugins/access/librtp_plugin.so
 usr/lib/vlc/plugins/access/libsdp_plugin.so
+usr/lib/vlc/plugins/access/libsftp_plugin.so
 usr/lib/vlc/plugins/access/libshm_plugin.so
 usr/lib/vlc/plugins/access/libtcp_plugin.so
 usr/lib/vlc/plugins/access/libtimecode_plugin.so
diff --git a/doc/ChangeLog-2014 b/doc/ChangeLog-2014
index 42f6fee..0e171a9 100644
--- a/doc/ChangeLog-2014
+++ b/doc/ChangeLog-2014
@@ -1,3 +1,997 @@
+commit 95774591eed71ca9a5479ad29c2e6bab74b88de5
+Author: Jean-Baptiste Kempf <jb@videolan.org>
+Date:   Mon Nov 3 14:13:29 2014 +0100
+
+    NEWS: update for RC1
+
+commit 443b85e2ae10e97f49f592697160cbd2c1719978
+Author: Jean-Baptiste Kempf <jb@videolan.org>
+Date:   Mon Nov 3 14:12:56 2014 +0100
+
+    Contribs: update FFmpeg/libav to a more recent sha1
+
+commit 8a35de15ffb718915700695cf9c80d16ac98d2e3
+Author: Jean-Baptiste Kempf <jb@videolan.org>
+Date:   Mon Nov 3 14:08:33 2014 +0100
+
+    Update PO
+
+commit 5a53ff0de2eeaab69980975ec8a4c6e6b78f190a
+Author: Rémi Denis-Courmont <remi@remlab.net>
+Date:   Sun Nov 2 11:35:16 2014 +0200
+
+    PulseAudio: clobber original channels (refs #12673)
+    
+    Do like the other outputs do.
+    
+    (cherry picked from commit a842bc4778ea330326af8abf6de5659c78e30cb7)
+
+commit a4384433b10d31c49f63411e7ce905913358fe79
+Author: Jean-Baptiste Kempf <jb@videolan.org>
+Date:   Sat Nov 1 13:42:08 2014 +0100
+
+    lib: use app-icon-name for libvlc_set_app_id
+    
+    (cherry picked from commit 67e74ed283db585fb8ee7905a877117fbde1932d)
+    Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
+
+commit cadbdded4be53c68a72ac9271a9a37ac89ab815e
+Author: Felix Paul Kühne <fkuehne@videolan.org>
+Date:   Wed Oct 22 18:48:50 2014 +0200
+
+    extras: libtool depends on automake, which in turn depends on autoconf
+    
+    This solves long-standing conflicts with homebrew as well as the latest Xcode releases. Additionally, in most cases, all 3 items were built anyway.
+    
+    (cherry picked from commit 79df8a65f1a4a2a3444cdeecc3055681e6dd5a46)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 4f81656751f0f0f2714132548bf4c819092918b3
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Thu Oct 30 22:39:26 2014 +0100
+
+    macosx: do not use the cone as sidebar icons
+    
+    The cone does not really fit and looks ugly. Instead, use the
+    broadcast icon for all internet-related sd's and local icon for
+    devices category.
+    
+    (cherry picked from commit a4a567cd04f30bc864057d8c8ea59c5e8a193ceb)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 6df8d96ab79cf204470b37595ce9a820930a6af7
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Sat Nov 1 12:26:48 2014 +0100
+
+    macosx: Fix resume playback in certain situations
+    
+    For resumption we need to rely on the "time" variable instead of
+    "position", as the total duration of the file might not have been
+    set yet.
+    
+    Also simplifies the code.
+    
+    close #11981
+    
+    (cherry picked from commit c91715f76e29b933128f772d3c936c1d2eea8227)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 25febaf446477e880f69b407f74fe9d98c914689
+Author: Jean-Baptiste Kempf <jb@videolan.org>
+Date:   Sat Nov 1 13:13:51 2014 +0100
+
+    Qt: prevent focus stealing on seekbar tooltip
+    
+    Why be consistent, Qt?
+    
+    Close #12671
+    
+    (cherry picked from commit f35a1b8311d2a8ac12dc2f419157c35768865711)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 9c90f11403fe6641d885cd90accee2d7b21e05a2
+Author: Rémi Denis-Courmont <remi@remlab.net>
+Date:   Thu Oct 30 21:11:39 2014 +0200
+
+    doc: make libvlc_audio_set_volume_callback() dependency explicit
+    
+    (cherry picked from commit 234e80cb494162a6272b125aed8021dfa71f793e)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit acfea9cc2a76ea3314ff2df71f1ca075a441ca45
+Author: Jean-Baptiste Kempf <jb@videolan.org>
+Date:   Mon Oct 27 20:50:17 2014 +0100
+
+    Contribs: disable vpx encoders with --disable-sout
+    
+    (cherry picked from commit 5f7cb6f8b1864563652954a0d5d667bebb2583ee)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 2498d15a8d354f5757988b6b9fcac4f281195a13
+Author: Jean-Baptiste Kempf <jb@videolan.org>
+Date:   Mon Oct 27 20:49:56 2014 +0100
+
+    Contribs: disable vpx docs
+    
+    (cherry picked from commit 4da2ee4b70e3f1b217fa3dbac7076c160745eaf1)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 58fd79d65b08b7dfd6efd534784108f76faf0004
+Author: Jean-Baptiste Kempf <jb@videolan.org>
+Date:   Mon Oct 27 20:39:11 2014 +0100
+
+    Contribs: don't disable VP8 decoder
+    
+    (cherry picked from commit 8032442916b4d08884f60c4ae3341d879cd65b97)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 61419e6c8c463768acb49eb4c9d5983b43556c95
+Author: Jean-Baptiste Kempf <jb@videolan.org>
+Date:   Thu Oct 30 02:25:52 2014 +0100
+
+    Win32: copy the BD-J jar to the release folder
+    
+    (cherry picked from commit ad0e12de52f552c8cfb3b3d60ee00a7246998c8d)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit df9f6b436135b0c72b5970ad88162e7fdce12442
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Wed Oct 29 20:00:51 2014 +0100
+
+    macosx: Add own callback path for item-change
+    
+    The item-change callback might be called very often, and thus an
+    own code path is better, with only necessary updates.
+    
+    Additionally, this fixes multiple resume playback dialogs occuring
+    at once when starting playback in certain situations.
+    
+    refs #11981
+    
+    (cherry picked from commit 293ed5e2ce38aa632a47206ff260a49771e9f67b)
+    Signed-off-by: Felix Paul Kühne <fkuehne@videolan.org>
+
+commit b486cba4c3ee94ee3d9db331189870c3455219b5
+Author: Thomas Guillem <tom@gllm.fr>
+Date:   Fri Oct 10 09:44:18 2014 +0200
+
+    contrib: speexdsp: disable neon on aarch64
+    
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+    (cherry picked from commit 9cf85e3ab92718d8a9ec661cd671b7e7a4289d58)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 838054b7550d074494300ebd9b7bc7781edc05dd
+Author: Felix Paul Kühne <fkuehne@videolan.org>
+Date:   Mon Oct 27 12:09:56 2014 -0700
+
+    swscale: fix compilation if avcodec and avformat are disabled
+    
+    (cherry picked from commit 0b9f0d211699248112818b50e5b68d22c996cf3f)
+
+commit 08df2ec167c6eba178e8b53d767a86c842a20922
+Author: Felix Paul Kühne <fkuehne@videolan.org>
+Date:   Mon Oct 27 11:29:58 2014 -0700
+
+    extras/ios: add a new flag to compile a limited set of non-scary codecs only
+    
+    (cherry picked from commit aede137f9aedbfacec351bbbeba13bdb5e210ba1)
+
+commit 7f1c70d57033a66422f50648cd8e1e5ae06b86e9
+Author: Jean-Baptiste Kempf <jb@videolan.org>
+Date:   Mon Oct 27 19:54:28 2014 +0100
+
+    Contribs: disable speex NEON on aarch64
+    
+    (cherry picked from commit 6860455438177ba8669a2d0738bdd9503abc5cb5)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 5ff6bda6efcc4619fe6882e69f0a2a08bba4713a
+Author: Jean-Baptiste Kempf <jb@videolan.org>
+Date:   Mon Oct 27 19:54:03 2014 +0100
+
+    Configure: swscale needs libavutil headers
+    
+    (cherry picked from commit cbe9b209227272da3e6c01abdf36d0b3d20c47cf)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 7b13b9d40a76af5eca76e9d67cd54c0d7e499172
+Author: Thomas Guillem <tom@gllm.fr>
+Date:   Thu Oct 23 07:01:21 2014 +0000
+
+    mediacodec: fix crash when color-format is invalid
+    
+    Fail if GetVlcChromaFormat return 0.
+    (It'll throw a HardwareAccelerationError)
+    
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+    (cherry picked from commit 40aa75316d6f3edc457354ac26295e292a8b1f9f)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit c59dc61a3a5c369fcb6ea96ca0a395a50a27273e
+Author: Sean McGovern <gseanmcg@gmail.com>
+Date:   Thu Oct 23 22:13:41 2014 -0400
+
+    sparkle: add SHA512SUM data
+    
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+    (cherry picked from commit 0b930ade83b84dc22fed7bbf0ad8e2c6f7595ef4)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 72b2b969cf3daa0f548b76b10ffe7533b14c904c
+Author: Thomas Guillem <tom@gllm.fr>
+Date:   Thu Oct 23 12:56:43 2014 +0200
+
+    mediacodec: cleanly abort DecodeVideo if GetOutput failed
+    
+    - Fix possible infinite loop with sw rendering if GetOutput failed.
+    - Don't return a pic and don't release the block in case of error_state.
+    
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+    (cherry picked from commit ab4c04f2f5545dcc3cae7ebffe8d28f3e2c5a915)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 18a597c4abbd99e9a59567a4b14dd737bb402797
+Author: Rémi Denis-Courmont <remi@remlab.net>
+Date:   Thu Oct 23 17:58:50 2014 +0300
+
+    mjpeg: do not assume that stream_Read() succeeds
+    
+    (cherry picked from commit f03f44d76a1949f5cbc05989fa1ab257818d245c)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 13dd6a6cd45278c79a2bfef6e25bdf9646a5e557
+Author: Thomas Guillem <tom@gllm.fr>
+Date:   Mon Oct 20 14:50:27 2014 +0200
+
+    contrib: speexdsp: fix build with android-ndk10c
+    
+    In android-ndk10c, there is a "arm_neon.h" for all archs. The arm_neon.h for
+    x86* contains correspondence between neon and sse. In speexdsp, There is a
+    conflict between resample_sse.h and resample_neon.h. So disable neon if arch is
+    known to don't have neon.
+    
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+    (cherry picked from commit ef98e81ff014175fd7494c8313de8883d15834b3)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 079c2364f5d90284bf2ca20d89c51e7d2c4d9356
+Author: Felix Paul Kühne <fkuehne@videolan.org>
+Date:   Wed Oct 22 19:20:14 2014 +0200
+
+    extras/ios: fix compilation with latest xcode releases
+    
+    (cherry picked from commit 5027938fb4965bca2d3e11ad1c17ca7aecaed258)
+
+commit ef931323bd6420fe34634dc15733823926a97567
+Author: Felix Paul Kühne <fkuehne@videolan.org>
+Date:   Sun Oct 12 16:16:40 2014 +0200
+
+    ios: require iOS 6.1 since 5.1 is no longer support by current Xcode releases
+    
+    (cherry picked from commit d65920ce6607fb24a22e7645b5fd1d03e9e5cfdc)
+
+commit 7f06a46695fb7a7f1a3a498551b00f8896c57680
+Author: Rémi Denis-Courmont <remi@remlab.net>
+Date:   Sat Oct 25 20:45:58 2014 +0300
+
+    swscale: scale the whole picture (fixes #12085)
+    
+    ...not just the visible part. So that cropping still works even though
+    the visible part of the input and output format typically do not match.
+    
+    (cherry picked from commit 44d4685b1ca4d1b58c4ce77d479103d482be5d14)
+    
+    Conflicts:
+    	modules/video_chroma/swscale.c
+
+commit de72116538fcf1bf3bd60dae8bda1fd9689d2a70
+Author: Rémi Denis-Courmont <remi@remlab.net>
+Date:   Thu Oct 23 21:58:58 2014 +0300
+
+    PulseAudio: remove the base volume hack
+    
+    (cherry picked from commit d3de0ffc472ddaf38fe6ba20f05071742ad8d86b)
+
+commit 385c1194bf58076bfd73e41ecc24b10ddafefe7f
+Author: Pierre Ynard <linkfanel@yahoo.fr>
+Date:   Sat Oct 25 03:51:45 2014 +0200
+
+    youtube.lua: support embedded iframe URLs
+    
+    Closes #11878
+    
+    (cherry picked from commit 77f58c382703f93e899683844d1917cd7cb69d22)
+    Signed-off-by: Felix Paul Kühne <fkuehne@videolan.org>
+
+commit 60ff09fe09ba01f978c6e5f1c2f6dfa17fceabf8
+Author: Tristan Matthews <tmatth@videolan.org>
+Date:   Fri Oct 24 16:39:37 2014 -0400
+
+    contrib: opus: don't build extra programs and doc
+    
+    (cherry picked from commit bdd6d80e23f3358c887215fb0497dff79b799e09)
+
+commit 70d70ee0460d3e4fedc98428de9d539ec9352a34
+Author: Damien Erambert <damien.erambert@me.com>
+Date:   Wed Oct 22 20:27:40 2014 +0200
+
+    macosx: update yosemite graphics for time slider knob and volume buttons
+    
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+    (cherry picked from commit def33da534a93e67f251d31057a3d503febb9754)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit db2102d39b343e5457db6adf0084acf6aa5c8083
+Author: Felix Paul Kühne <fkuehne@videolan.org>
+Date:   Wed Oct 22 17:22:25 2014 +0200
+
+    macosx: don't rebuild the playlist table unnecessarily often (close #12430, refs #9960)
+    
+    (cherry picked from commit 52b64b0567338913bc43a4e013ad20f2bbda8be3)
+
+commit bd2c4b17b8e6f2967c5a4cc5abd84714a699cca2
+Author: Felix Paul Kühne <fkuehne@videolan.org>
+Date:   Tue Oct 21 15:07:32 2014 +0200
+
+    extras/ios: add a debug flag to the build script
+    
+    (cherry picked from commit afa9344cb8c479503aaacbd6605a89c4a0e3026b)
+
+commit 89f1948974625389eb9b46141496851c654cf407
+Author: Rémi Denis-Courmont <remi@remlab.net>
+Date:   Wed Oct 15 22:13:22 2014 +0300
+
+    caca: do not pretend to support resize
+    
+    (cherry picked from commit e92fbab66cf7f257ae9a3fefe73eea18b478d6f3)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 185a1d709c6dd7893ed9088b9e4e46cb995bf016
+Author: Jean-Baptiste Kempf <jb@videolan.org>
+Date:   Wed Oct 15 12:09:36 2014 +0200
+
+    Contribs: update gpg-error to 1.16
+    
+    Close #12400
+    
+    (cherry picked from commit e5cd171227b1982dc70cc97703622cbef82ead29)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 2099d8b8f075e62fae73759d37b1eb92c4b0605d
+Author: Jean-Baptiste Kempf <jb@videolan.org>
+Date:   Fri Oct 17 15:28:13 2014 +0200
+
+    Tools: Update pkg-config-lite to 0.28-1
+    
+    (cherry picked from commit 8d285ab272740fddeed76570d89c37a52636857c)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 405088e9f4161dac27dc6d15d101fe722983be42
+Author: Thomas Guillem <tom@gllm.fr>
+Date:   Mon Oct 20 14:50:27 2014 +0200
+
+    contrib: speexdsp: fix build with android-ndk10c
+    
+    In android-ndk10c, there is a "arm_neon.h" for all archs. The arm_neon.h for
+    x86* contains correspondence between neon and sse. In speexdsp, There is a
+    conflict between resample_sse.h and resample_neon.h. So disable neon if arch is
+    known to don't have neon.
+    
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+    (cherry picked from commit ef98e81ff014175fd7494c8313de8883d15834b3)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit e15a5ab72d0e1cfcbff829d0671873c35299f414
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Sun Oct 19 23:07:41 2014 +0200
+
+    macosx: do not save resume data if VLC is in private mode
+    
+    (cherry picked from commit a372720ffe4ebdf05e4145407e611a1cd9f0e72e)
+    Signed-off-by: Felix Paul Kühne <fkuehne@videolan.org>
+
+commit 56ccd7532f4cb9c5378500adca9e936578059c34
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Sun Oct 19 23:00:05 2014 +0200
+
+    macosx: fix resume playback guards, do not resume for folder urls
+    
+    Folder URLs are likely DVD or bluray folders, which cannot be resumed
+    properly. Also fixes memleak, and unify guards. Do not save position
+    for input items which we do not resume afterwards anyway.
+    
+    (cherry picked from commit b2525ebf7c3658d72963def5d9ac5b7627ac3b4c)
+    Signed-off-by: Felix Paul Kühne <fkuehne@videolan.org>
+
+commit ec603a11813f7606576c33eaf097f8b5cc3df152
+Author: Hannes Domani <ssbssa@yahoo.de>
+Date:   Mon Oct 20 18:06:13 2014 +0200
+
+    Win32: stop stacktrace on bad pointer
+    
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+    (cherry picked from commit 7e92a492766d31dfa91aaea2eafb37d35e8886a1)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 2468897321f8aef3bfe5ffd2b43ade2f5e9b2ea5
+Author: Felix Paul Kühne <fkuehne@videolan.org>
+Date:   Sun Oct 19 18:57:22 2014 +0200
+
+    macosx: slightly de-uglify the VLC description in the about dialog by rendering it in the system's default font instead of Times
+    
+    (cherry picked from commit a8994ec08542bf0954e67dccf1d47657adaf4570)
+
+commit e782ae3193da77d6e4565250d188d64f461bcbef
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Sat Oct 18 13:20:36 2014 +0200
+
+    macosx: fix wrong size of playlist when using podcast and minimal view
+    
+    (cherry picked from commit 19bbb8cc2c0aacc176ac83dc7a57fe94407e9ef4)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit f9f386157af15d8c1e1f0180503f9c8b459e5b8d
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Sat Oct 18 11:21:51 2014 +0200
+
+    macosx: fix podcast view interfering with dropzone
+    
+    (cherry picked from commit 2b6a8709c5282bf40b3667376d7e67b6ca46b262)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit 10f7cb74e71e6c004d9a5afefce4bbe145949765
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Sat Oct 18 09:05:09 2014 +0200
+
+    macosx: Fix drawing issues with podcast controls and dropzone
+    
+    - Remove black lines below podcast controls
+    - fix uncentered dropzone when starting native fullscreen, by slightly
+      increasing the min height
+    - fix disappearing or uncentered dropzone when changing between
+      normal and minimum view quickly
+    - consolidate dropzone and podcast sizings in interface builder
+    
+    (cherry picked from commit 58b713c7f84e8eb9eedc8ca383ac59cd212db234)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit 4dab7846632d4914f9ebbf9f249b5b24c8e4d141
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Fri Oct 17 22:37:15 2014 +0200
+
+    macosx: remove alternate image from max volume and mute buttons
+    
+    This image was set, but it is not overwritten by its os-dependent
+    counterpart in code. In fact, we only have one image, so just unset
+    the alternate image in xib.
+    
+    (cherry picked from commit 544ffab82934566b535c2a10b0dfe6d9ec0154da)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit b142d942b0420f7ecbec9e32e328c3da48c46058
+Author: Damien Erambert <damien.erambert@me.com>
+Date:   Fri Oct 17 22:18:19 2014 +0200
+
+    macosx: Fix and update yosemite titlebar graphics
+    
+    This especially fixes the -on graphics.
+    
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+    (cherry picked from commit 26fde7655abc8f91eddfc971ed1e21d19fbf7edc)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit 90429455de17f10dfe13921f439747ea8540bdae
+Author: Damien Erambert <damien.erambert@me.com>
+Date:   Sat Oct 4 23:30:36 2014 +0200
+
+    macosx: fix music sidebar icon
+    
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+    (cherry picked from commit 920a33915ff2e140a19bd70ede652580d3932689)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit 4812b7dd546fdf0d54441f4e2927dd119c3acb6a
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Thu Oct 2 17:42:32 2014 +0200
+
+    macosx: avoid unnecessarily early loading of open panel nib
+    
+    Loading the open nib can take some significant time, due to audio/
+    video devices enumeration.
+    
+    refs #12123
+    
+    (cherry picked from commit 640b974d52785d5ae215c1cfeb46fdd5bc085231)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit 5d22821b30a1e648e5a994fd5cb5ff1e34afb3b4
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Thu Oct 2 13:53:51 2014 +0200
+
+    codec: libass: show dialog for fontconfig cache recreation on osx
+    
+    close #12014
+    
+    (cherry picked from commit fd67a259eadaef3b25dc1ca50b8b09fd971a93fe)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit ddcf826bc76cf0a934dd237c3117d08dfdddb5e8
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Thu Oct 2 13:52:44 2014 +0200
+
+    Makefile.am: Add new macosx ressources
+    
+    (cherry picked from commit 5cb2c764351ba8d8beab1f13208d18313e4e4406)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit e5f3461c22bbed3829a1ed9a56d36562b4ce236d
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Thu Oct 2 13:22:52 2014 +0200
+
+    macosx: also cache old native fullscreen images and move to better place
+    
+    (cherry picked from commit 0d7d2cb4b1b98988f2e4b15af2af0f81b8253080)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit 0da8979d04da3a19cc1cacacfe01627a9c37806f
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Thu Oct 2 12:59:15 2014 +0200
+
+    macosx: implement native fullscreen behaviour for yosemite titlebar
+    
+    (cherry picked from commit 0b001a0763aa2e34f6abd921184ce58d56947421)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit 533632432432234e24d26fada305bcd9aef274a5
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Thu Oct 2 11:29:22 2014 +0200
+
+    macosx: simplify loading of titlebar graphics and integrate yosemite icons
+    
+    (cherry picked from commit 5647339c6b8631f749b6c102da90715e04ab82a4)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit f5cf5a1295e7342b5c088319ffd67c055a6b59e8
+Author: Damien Erambert <damien.erambert@me.com>
+Date:   Wed Oct 1 23:55:49 2014 +0200
+
+    macosx: fix yosemite retina graphics for fullscreen button
+    
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+    (cherry picked from commit 42ee1b6ebb4bdf6b5092e824a95b65839ba018ef)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit 70726114cd169d8b3809b20230aca4597819056d
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Wed Oct 1 22:00:26 2014 +0200
+
+    macosx: fix main window top bar by reinstoring graphic
+    
+    (cherry picked from commit 1f027bcb06c8f8d92084af1a584869dbee3039c9)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit ff8d19710854abf91763da5908f7ec87d705f4a8
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Wed Oct 1 21:52:01 2014 +0200
+
+    macosx: add yosemite graphics to project file and use them in code
+    
+    This also cleans up the images structure inside the project.
+    
+    (cherry picked from commit 6616504dfb7658f3b394bef2555f92a390e682ed)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+    
+    Conflicts:
+    	modules/gui/macosx/StringUtility.m
+
+commit 0baaf44f1be63abc714f175927e1e67af3d8994d
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Wed Oct 1 20:03:40 2014 +0200
+
+    macosx: pngcrush new yosemite icons
+    
+    (cherry picked from commit baf2c19d97b874373480c317174aebf92504b060)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit 26c23d0c8aa2239502009a2683ab1c3b4ee5f52a
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Wed Oct 1 19:58:43 2014 +0200
+
+    macosx: restructure and unify naming of new yosemite icons
+    
+    Now, new root folders are created for yosemite, with the naming
+    scheme mainwindow_yosemite. All icons have the prefix ys-.
+    
+    (cherry picked from commit 405614f5422880ecf75072a1ad99ecd201ce4564)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit 33cbd96e42f05f192b6d0d9cb2101534faecf062
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Wed Oct 1 19:43:52 2014 +0200
+
+    macosx: removed old graphics which are not used anymore
+    
+    Also renames 4 yosemite graphics to match the existing naming.
+    
+    (cherry picked from commit fe8867d9257075bd8b8866cb1e63a56bbd99aee4)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit 12f3fdc3eb5cf761ec83f2d9ff2344c33c07d3e0
+Author: Damien Erambert <damien.erambert@me.com>
+Date:   Sat Aug 23 18:31:55 2014 +0200
+
+    macosx: Added graphics for buttons on Yosemite 10.10
+    
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+    (cherry picked from commit 45e123f9dadf42220a3844e7152d8d87d8dd0b4c)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit 7b1cd368a6170388b0208ef770510fcbc7e0c7ef
+Author: David Fuhrmann <dfuhrmann@videolan.org>
+Date:   Wed Oct 1 16:03:33 2014 +0200
+
+    macosx: add yosemite guard
+    
+    (cherry picked from commit 2c674d76924785536fef66929b7ddcb08dde585b)
+    Signed-off-by: David Fuhrmann <dfuhrmann@videolan.org>
+
+commit b3f316e8b18d4c303de7bd27d2397bf0f5fd173a
+Author: Rémi Denis-Courmont <remi@remlab.net>
+Date:   Thu Oct 16 20:20:12 2014 +0300
+
+    avcodec: fix double free on error
+    
+    (cherry picked from commit 9bf41d6aeb35a121ce9c96adb21852ca69eb106b)
+
+commit c66a9f4334b6dc838451ba2d1b4f6d53fe7d1a5a
+Author: Jean-Baptiste Kempf <jb@videolan.org>
+Date:   Fri Aug 8 04:42:48 2014 +0200
+
+    PS: Fix H264 in evob
+    
+    (cherry picked from commit 3b33cbca98e76ed3d65fabcf9efedcea415ffdf5)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit e33e5def5b9901fadb0d756d60501c8dd9e8db7d
+Author: Thomas Guillem <tom@gllm.fr>
+Date:   Tue Oct 14 11:35:57 2014 +0200
+
+    mediacodec: exception in getCapabilitiesForType is not critical.
+    
+    fix mediacodec with android-L on Nexus 7v2.
+    
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+    (cherry picked from commit 6e2f49095619d027ba99020076b0aedc6cde7afe)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit e49c91ef43ff3f537c8042de781164305c287899
+Author: Thomas Guillem <tom@gllm.fr>
+Date:   Tue Oct 14 11:35:56 2014 +0200
+
+    mediacodec: fix jni leak
+    
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+    (cherry picked from commit 05644c1e54548cc4ac0b57b70000d2e5fe7d5c16)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 47d9673f045a520e2baaf005302718c2b3d2a8a6
+Author: Jean-Baptiste Kempf <jb@videolan.org>
+Date:   Sat Oct 11 17:53:45 2014 +0200
+
+    Win32: prefer the static libraries when creating the dlls
+    
+    This should avoid the issues of packaging libgcc_s_sjlj-1.dll,
+    libwinpthread-1.dll and the like.
+    
+    (cherry picked from commit 417b6eb0f09dc73984a7dba2aa42c9d8683d5294)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 85836f2c835c85eb00a52dd19d6c51b4c38c574d
+Author: KO Myung-Hun <komh78@gmail.com>
+Date:   Sun Oct 12 14:59:26 2014 +0900
+
+    Add -avoid-version to LDFLAGS of vlc and vlccore on OS/2
+    
+    Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
+    (cherry picked from commit 863f851833eab0c4a2b5de354bbf50270a5d8d2b)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit bda1bbd1d290d7eb2c243adea011e52924f0d598
+Author: Francois Cartegnie <fcvlcdev@free.fr>
+Date:   Mon Oct 13 23:36:31 2014 +0200
+
+    demux: libmp4: reorder & fix ilst/udta rules
+    
+    (cherry picked from commit 1e913466fb03169e6235f09a8cfae1910b89e3e6)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 2bbd387c2b358642a4e3e2cce47caaae2c2331c0
+Author: Julian Scheel <julian@jusst.de>
+Date:   Fri Oct 10 11:21:07 2014 +0200
+
+    codec/zvbi: Only reset subpicture in text mode
+    
+    The subpicture reset, as stated in the comment, is only required when
+    rendering text-subtitles. In fact it causes an invalid image to be generated
+    and possibly output in non-text mode. Hence disable the picture recreation for
+    non-text mode.
+    
+    Signed-off-by: Julian Scheel <julian@jusst.de>
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+    (cherry picked from commit 47012982d20cf537fc710edd14c9c9c4183d0a19)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit ac4f2bc6d06890f40034d8ad368c208de76a61a6
+Author: Tristan Matthews <tmatth@videolan.org>
+Date:   Sat Oct 11 21:42:10 2014 -0400
+
+    contrib: speexdsp: disable examples
+    
+    (cherry picked from commit 7bd11e51ac8dee7c27faff7c1c406164f2943a94)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+    
+    Conflicts:
+    	contrib/src/speexdsp/rules.mak
+
+commit 41cbb49b15d67c0b03299fdebe7e56e16b5d4313
+Author: Felix Paul Kühne <fkuehne@videolan.org>
+Date:   Sun Oct 12 16:30:12 2014 +0200
+
+    extras: mirror ragel on v.o since upstream server is broken
+    
+    (cherry picked from commit af3eeea5af09938d1f90c46f048137156c531327)
+
+commit dc7633b308b5ffd2b2b16ca4af734a00af4d9be6
+Author: Rémi Denis-Courmont <remi@remlab.net>
+Date:   Sat Oct 11 20:46:18 2014 +0300
+
+    configure: fix SFTP plugin name
+    
+    (cherry picked from commit 88ab8def21e117704335a800cfbe5e08baf1edd7)
+
+commit c5138aedf45a23deb989f3f12652742e4189cce5
+Author: Rémi Denis-Courmont <remi@remlab.net>
+Date:   Sat Oct 11 17:06:53 2014 +0300
+
+    vout: reset A.R. and zoom to sane defaults if unset (fixes #8184)
+    
+    (cherry picked from commit fb63f1cc675c5302628ad2fec033ac2472107085)
+
+commit f5cd073aac897ebecbf8f38657e5de18e61d2e88
+Author: Rémi Denis-Courmont <remi@remlab.net>
+Date:   Sat Oct 11 14:37:52 2014 +0300
+
+    lib: disable decoding hardware acceleration with vmem
+    
+    This ensures that subpictures blending works, and avoids copying back
+    video frames from GPU to CPU. For proper hardware acceleration,
+    use libvlc_media_player_set_xwindow() instead.
+    
+    (cherry picked from commit 86796e2a57adcf5daea9d182c4378e49b40a7f47)
+
+commit 7644f23cce73b87b18e08b4ba9ea3a772e8f249d
+Author: Rémi Denis-Courmont <remi@remlab.net>
+Date:   Thu Oct 9 22:30:44 2014 +0300
+
+    msw: fix format string
+    
+    (cherry picked from commit e8ab8fb6b40d315632da311de7a2e03002a528c5)
+
+commit 99dfe572819e4780bae80118af0ff5b63723b2ec
+Author: Rémi Denis-Courmont <remi@remlab.net>
+Date:   Sat Oct 11 10:12:10 2014 +0300
+
+    mft: fix format string
+    
+    (cherry picked from commit dbdd63484c7e8bed853e4f2b398c906df181be3a)
+
+commit d3f878cc4b68e53bb5f477cb3cfb5e0ef9d9a801
+Author: Rémi Denis-Courmont <remi@remlab.net>
+Date:   Sat Oct 11 10:36:40 2014 +0300
+
+    configure: fix typo in rcc code (fixes #12384)
+    
+    Pointed-out-by: Paweł Stankowski
+    (cherry picked from commit 34fef72dab6f7718370dbe27a66f320362475198)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 3e8036a5f6b9fc4a3dd3baaea8a81102dcd4bdd5
+Author: Tristan Matthews <tmatth@videolan.org>
+Date:   Sat Oct 11 00:09:21 2014 -0400
+
+    png: encoder: encode visible lines, but use pitch for offset
+    
+    (cherry picked from commit fd1e287a11d678a8e131d59979e84fb4486c0c57)
+
+commit b28f5a1eb1417364b4fe08d105b8faf3efa68e56
+Author: Tristan Matthews <tmatth@videolan.org>
+Date:   Fri Oct 10 22:32:13 2014 -0400
+
+    png: encoder: really fix row offset calculation
+    
+    (cherry picked from commit 47431e192bbaefe723c7b6915a54f3ab4ca440e8)
+
+commit 8d8617bb938036a444e02425bffa6cad9bcbd855
+Author: Francois Cartegnie <fcvlcdev@free.fr>
+Date:   Thu Oct 9 14:44:36 2014 +0200
+
+    demux: libmp4: fix heap buffer write ofw in chpl (fix #12366)
+    
+    (cherry picked from commit d1bdd44b1902f62453f6982e1ee09a5b243f25ee)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 448cc958b4522654f6d7fdad5eef5f36831c77d1
+Author: Francois Cartegnie <fcvlcdev@free.fr>
+Date:   Thu Oct 9 16:26:20 2014 +0200
+
+    demux: mp4: fix last chunk size computation (fix #12362)
+    
+    (cherry picked from commit 8a0493add9682187192cc3dab514294ad0b9f541)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit bf75f88f04c4e472940d00314a997342ba30313e
+Author: Francois Cartegnie <fcvlcdev@free.fr>
+Date:   Thu Oct 9 20:29:54 2014 +0200
+
+    demux: asf: fix heap buffer write ofw in priorities (fix #12363)
+    
+    (cherry picked from commit 56e71fe572f9e97c8deb3cffdebdd0f0ea8979d0)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit b27f31c78ce42549d983268a64bf49d9fd42d06c
+Author: Francois Cartegnie <fcvlcdev@free.fr>
+Date:   Thu Oct 9 23:46:35 2014 +0200
+
+    demux: mp4: fix heap read ofw in extra bytes
+    
+    (cherry picked from commit 54bbfac289eeeed9ba044bf9f9e1ee43e5642c78)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit abf74133941284b0af3b5c2240460b8017037e92
+Author: Francois Cartegnie <fcvlcdev@free.fr>
+Date:   Wed Oct 8 19:13:25 2014 +0200
+
+    demux: ogg: fix use after free (fix #12360)
+    
+    (cherry picked from commit b3664586b7db3bd94fad7dd12b9cad3633eaef1a)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 1530ef4fdb3e444bf939cc9cb2e46df4b1e6022f
+Author: Francois Cartegnie <fcvlcdev@free.fr>
+Date:   Wed Oct 8 18:48:44 2014 +0200
+
+    demux: libavi: fix heap write ofw
+    
+    (cherry picked from commit dde5f4aff32b81b6cace0a88a3a718147d0f3bf4)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit ee94797446fde0d4d622823c77116abc6c90c3ed
+Author: Francois Cartegnie <fcvlcdev@free.fr>
+Date:   Wed Oct 8 17:59:23 2014 +0200
+
+    demux: livavi: fix heap buffer ofw in strf parsing (fix #12359)
+    
+    (cherry picked from commit cd87a5a9482adef5c679f80fc3a75eccbd7c6970)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit e8a2b2997d5bb64180787f8cdf8480973be53edc
+Author: Francois Cartegnie <fcvlcdev@free.fr>
+Date:   Wed Oct 8 17:09:44 2014 +0200
+
+    demux: tta: fix heap buffer ofw (fix #12357)
+    
+    (cherry picked from commit 3979f15fc235f576f5ed4278ffe06eab53425bf4)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit fc45e6cbdf909c372e708cca3e40911c3a5846fe
+Author: Francois Cartegnie <fcvlcdev@free.fr>
+Date:   Wed Oct 8 17:06:28 2014 +0200
+
+    demux: mp4: fix heap buffer ofw with zero chunk (fix #12356)
+    
+    (cherry picked from commit 929970aecfc91725ba243953ccb5197fa797c0a8)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 5249240cf82e58e6ec1177706a2a9c22ad1d3155
+Author: Francois Cartegnie <fcvlcdev@free.fr>
+Date:   Wed Oct 8 15:17:55 2014 +0200
+
+    demux: libmp4: fix heap overflow in stdp debug code (fix #12358)
+    
+    (cherry picked from commit 2caa3ce4d4a50da0796d0e2bb7feebb53aed8f8f)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 7d4f14c4b70fc030531384f3dece3ab6b9514da3
+Author: Rafaël Carré <funman@videolan.org>
+Date:   Tue Oct 7 08:55:03 2014 +0200
+
+    contrib: fix freetype dependencies
+    
+    (cherry picked from commit 63c91494921e17541f96c4b311ed791ee3ce21d9)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+commit 0a1758799929b1afb56eea4c106b690452ac5761
+Author: Rémi Denis-Courmont <remi@remlab.net>
+Date:   Tue Oct 7 23:21:35 2014 +0300
+
+    include: fix external compilation (fixes #12355)
+    
+    (cherry picked from commit 98682b66af497c2a038011aae227fbd13511167a)
+
+commit 468e08143053c5705f5fed18c9ad2cfc4c58ec0d
+Author: Rémi Denis-Courmont <remi@remlab.net>
+Date:   Tue Oct 7 23:16:11 2014 +0300
+
+    include: remove restrict keyword (fixes #12354)
+    
+    This is necessary for compatibility with C++. The keyword is only
+    meaningful in definition, not in declaration anyway.
+    
+    (cherry picked from commit 1a4dc0bd85d94c9ad0b50268aed009840bf2d30e)
+    
+    Conflicts:
+    	include/vlc_tls.h
+
+commit ef84c9c97d85131a0fe33dd59a5bf02e34615cfb
+Author: Igor Prokopenkov <cmyk777@gmail.com>
+Date:   Fri Oct 3 15:25:24 2014 +0000
+
+    lib: Fire libvlc_MediaListPlayerPlayed at end of playlist
+    
+    The "libvlc_MediaListPlayerPlayed" event was defined but unused.
+    It is now fired when libvlc_media_list_player is played until last item in the playlist
+    
+    Signed-off-by: Igor Prokopenkov <cmyk777@gmail.com>
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+    (cherry picked from commit fd4a0ba83493bd91f2adb7b68ae9fb3c3d5fc972)
+    Signed-off-by: Felix Paul Kühne <fkuehne@videolan.org>
+
+commit cd4d3a09b37e65b95e553657a7c616cbc0fd2f7e
+Author: Jean-Baptiste Kempf <jb@videolan.org>
+Date:   Sun Jul 6 00:59:01 2014 +0200
+
+    Contribs: apply OSX patch only on OSX
+    
+    Else, it conflicts with Win32 patch and fails to compile
+    
+    (cherry picked from commit f836a94d9c4a78a03cc412d5559d274dc2df459b)
+    Signed-off-by: Rafaël Carré <funman@videolan.org>
+
+commit ea1927e79317b60a931c7bfff246914aac9d6a7a
+Author: Tristan Matthews <tmatth@videolan.org>
+Date:   Mon Oct 6 23:08:02 2014 -0400
+
+    contrib: speex: avoid automatically depending on ogg
+    
+    ogg was still being pulled in as a dependency when cross-compiling, which
+    would break certain build configurations.
+    
+    (cherry picked from commit 4c63aa1192dc4148b8c540b0b7210aa91713505b)
+
+commit 73f12e7621c302f75d2a33aec7d179e5b4969880
+Author: Rémi Denis-Courmont <remi@remlab.net>
+Date:   Mon Oct 6 23:56:31 2014 +0300
+
+    vdpau/deinterlace: set progressive flag on both output pictures
+    
+    (cherry picked from commit 6500f61ed6f6f8525961fab89d2a69bb0172434a)
+
+commit 283547fa41d040b5503e37e88cd961b10d1df1fd
+Author: Jean-Baptiste Kempf <jb@videolan.org>
+Date:   Mon Oct 6 17:29:01 2014 +0200
+
+    On the road to RC1
+
+commit 9ccb8651baeca05c501193b1b371fbdef9a208ac
+Author: Francois Cartegnie <fcvlcdev@free.fr>
+Date:   Sun Oct 5 16:22:18 2014 +0200
+
+    demux: asf: stay within track limits
+    
+    (cherry picked from commit a61da5b40d25af4fd0417eb3a9a172a92e62c659)
+    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
 commit ea7af98d99deaba263cdbe711c0121b3948c5db6
 Author: Jean-Baptiste Kempf <jb@videolan.org>
 Date:   Mon Oct 6 17:11:07 2014 +0200
diff --git a/include/vlc/libvlc_media_player.h b/include/vlc/libvlc_media_player.h
index 54c130d..00afa61 100644
--- a/include/vlc/libvlc_media_player.h
+++ b/include/vlc/libvlc_media_player.h
@@ -2,7 +2,7 @@
  * libvlc_media_player.h:  libvlc_media_player external API
  *****************************************************************************
  * Copyright (C) 1998-2010 VLC authors and VideoLAN
- * $Id: 4b2f44960b48568dada9d344e15b3a31e78cd6be $
+ * $Id: 94bf7e8c4461896ff0d22b7c86ce6d3f9854eb17 $
  *
  * Authors: Clément Stenac <zorglub@videolan.org>
  *          Jean-Paul Saman <jpsaman@videolan.org>
@@ -572,7 +572,8 @@ void libvlc_audio_set_callbacks( libvlc_media_player_t *mp,
                                  void *opaque );
 
 /**
- * Set callbacks and private data for decoded audio.
+ * Set callbacks and private data for decoded audio. This only works in
+ * combination with libvlc_audio_set_callbacks().
  * Use libvlc_audio_set_format() or libvlc_audio_set_format_callbacks()
  * to configure the decoded audio format.
  *
diff --git a/include/vlc_es.h b/include/vlc_es.h
index dc02977..e131c73 100644
--- a/include/vlc_es.h
+++ b/include/vlc_es.h
@@ -2,7 +2,7 @@
  * vlc_es.h: Elementary stream formats descriptions
  *****************************************************************************
  * Copyright (C) 1999-2012 VLC authors and VideoLAN
- * $Id: 5790d2343b22322d1f5e4965697dbc3d5a0e378c $
+ * $Id: 8db588494350b40b0f9225df00234f44189c5072 $
  *
  * Authors: Laurent Aimar <fenrir@via.ecp.fr>
  *
@@ -285,7 +285,8 @@ VLC_API void video_format_ScaleCropAr( video_format_t *, const video_format_t *
  * This function "normalizes" the formats orientation, by switching the a/r according to the orientation,
  * producing a format whose orientation is ORIENT_NORMAL. It makes a shallow copy (pallette is not alloc'ed).
  */
-VLC_API void video_format_ApplyRotation(video_format_t *restrict out, const video_format_t *restrict in);
+VLC_API void video_format_ApplyRotation(video_format_t * /*restrict*/ out,
+                                        const video_format_t *in);
 
 /**
  * This function applies the transform operation to fmt.
diff --git a/include/vlc_input.h b/include/vlc_input.h
index 6112502..8471cdb 100644
--- a/include/vlc_input.h
+++ b/include/vlc_input.h
@@ -2,7 +2,7 @@
  * vlc_input.h: Core input structures
  *****************************************************************************
  * Copyright (C) 1999-2006 VLC authors and VideoLAN
- * $Id: 88bfe65064ad6e626ca39d9f5f0c146fd69276fb $
+ * $Id: 6ec305bebad2dd0cb1a29d4cd50168e09a53d375 $
  *
  * Authors: Christophe Massiot <massiot@via.ecp.fr>
  *          Laurent Aimar <fenrir@via.ecp.fr>
@@ -565,7 +565,8 @@ static inline int input_AddSubtitleOSD( input_thread_t *p_input, const char *psz
     vout_thread_t *p_vout = input_GetVout( p_input );
     if( p_vout )
     {
-        vout_OSDMessage(p_vout, SPU_DEFAULT_CHANNEL, "%s", _("Subtitle track added") );
+        vout_OSDMessage(p_vout, SPU_DEFAULT_CHANNEL, "%s",
+                        vlc_gettext("Subtitle track added") );
         vlc_object_release( (vlc_object_t *)p_vout );
     }
     return i_result;
diff --git a/include/vlc_probe.h b/include/vlc_probe.h
index 9931504..efa4d97 100644
--- a/include/vlc_probe.h
+++ b/include/vlc_probe.h
@@ -32,7 +32,7 @@
 extern "C" {
 # endif
 
-void *vlc_probe (vlc_object_t *, const char *, size_t *restrict);
+void *vlc_probe (vlc_object_t *, const char *, size_t *);
 #define vlc_probe(obj, cap, pcount) \
         vlc_probe(VLC_OBJECT(obj), cap, pcount)
 
diff --git a/lib/core.c b/lib/core.c
index 4ad4dd7..cdc5980 100644
--- a/lib/core.c
+++ b/lib/core.c
@@ -2,7 +2,7 @@
  * core.c: Core libvlc new API functions : initialization
  *****************************************************************************
  * Copyright (C) 2005 VLC authors and VideoLAN
- * $Id: cc74071d0d9641e4d2d1decd16a09c798fbb2732 $
+ * $Id: fa5c4de6d0c0a623c9b271f8fd748da0e199c93c $
  *
  * Authors: Clément Stenac <zorglub@videolan.org>
  *
@@ -154,7 +154,7 @@ void libvlc_set_app_id(libvlc_instance_t *p_i, const char *id,
 
     var_SetString(p_libvlc, "app-id", id ? id : "");
     var_SetString(p_libvlc, "app-version", version ? version : "");
-    var_SetString(p_libvlc, "app-version", icon ? icon : "");
+    var_SetString(p_libvlc, "app-icon-name", icon ? icon : "");
 }
 
 const char * libvlc_get_version(void)
diff --git a/lib/media_list_player.c b/lib/media_list_player.c
index c856cfc..835f061 100644
--- a/lib/media_list_player.c
+++ b/lib/media_list_player.c
@@ -2,7 +2,7 @@
  * media_list_player.c: libvlc new API media_list player functions
  *****************************************************************************
  * Copyright (C) 2007 VLC authors and VideoLAN
- * $Id: d0a0ce16ff26ef890e55db63e3fd6669b5af0d22 $
+ * $Id: 9ac935a716f09b4cb42de1b9ddfb6e41454a93be $
  *
  * Authors: Pierre d'Herbemont <pdherbemont # videolan.org>
  *
@@ -474,6 +474,8 @@ libvlc_media_list_player_new(libvlc_instance_t * p_instance)
             libvlc_MediaListPlayerNextItemSet );
     libvlc_event_manager_register_event_type( p_mlp->p_event_manager,
             libvlc_MediaListPlayerStopped );
+    libvlc_event_manager_register_event_type( p_mlp->p_event_manager,
+            libvlc_MediaListPlayerPlayed );
     p_mlp->e_playback_mode = libvlc_playback_mode_default;
 
     return p_mlp;
@@ -781,6 +783,10 @@ static int set_relative_playlist_position_and_play(
     if (!path)
     {
         libvlc_media_list_unlock(p_mlp->p_mlist);
+        /* Send list played event */
+        libvlc_event_t event;
+        event.type = libvlc_MediaListPlayerPlayed;
+        libvlc_event_send(p_mlp->p_event_manager, &event);
         return -1;
     }
 
diff --git a/lib/media_player.c b/lib/media_player.c
index 1a72207..b75006a 100644
--- a/lib/media_player.c
+++ b/lib/media_player.c
@@ -414,6 +414,7 @@ libvlc_media_player_new( libvlc_instance_t *instance )
     var_Create (mp, "vmem-width", VLC_VAR_INTEGER | VLC_VAR_DOINHERIT);
     var_Create (mp, "vmem-height", VLC_VAR_INTEGER | VLC_VAR_DOINHERIT);
     var_Create (mp, "vmem-pitch", VLC_VAR_INTEGER | VLC_VAR_DOINHERIT);
+    var_Create (mp, "avcodec-hw", VLC_VAR_STRING);
     var_Create (mp, "drawable-xid", VLC_VAR_INTEGER);
 #if defined (_WIN32) || defined (__OS2__)
     var_Create (mp, "drawable-hwnd", VLC_VAR_INTEGER);
@@ -854,6 +855,7 @@ void libvlc_video_set_callbacks( libvlc_media_player_t *mp,
     var_SetAddress( mp, "vmem-display", display_cb );
     var_SetAddress( mp, "vmem-data", opaque );
     var_SetString( mp, "vout", "vmem" );
+    var_SetString( mp, "avcodec-hw", "none" );
 }
 
 void libvlc_video_set_format_callbacks( libvlc_media_player_t *mp,
@@ -934,6 +936,7 @@ void libvlc_media_player_set_xwindow( libvlc_media_player_t *p_mi,
 {
     assert (p_mi != NULL);
 
+    var_SetString (p_mi, "avcodec-hw", "");
     var_SetString (p_mi, "vout", drawable ? "xid" : "any");
     var_SetString (p_mi, "window", drawable ? "embed-xid,any" : "any");
     var_SetInteger (p_mi, "drawable-xid", drawable);
diff --git a/modules/audio_output/pulse.c b/modules/audio_output/pulse.c
index 601911e..069cf6a 100644
--- a/modules/audio_output/pulse.c
+++ b/modules/audio_output/pulse.c
@@ -57,7 +57,6 @@ struct sink
 {
     struct sink *next;
     uint32_t index;
-    pa_volume_t base_volume;
     char name[1];
 };
 
@@ -67,7 +66,6 @@ struct aout_sys_t
     pa_context *context; /**< PulseAudio connection context */
     pa_threaded_mainloop *mainloop; /**< PulseAudio thread */
     pa_time_event *trigger; /**< Deferred stream trigger */
-    pa_volume_t base_volume; /**< 0dB reference volume */
     pa_cvolume cvolume; /**< actual sink input volume */
     mtime_t first_pts; /**< Play time of buffer start */
 
@@ -83,27 +81,10 @@ static void VolumeReport(audio_output_t *aout)
     aout_sys_t *sys = aout->sys;
     pa_volume_t volume = pa_cvolume_max(&sys->cvolume);
 
-    volume = pa_sw_volume_divide(volume, sys->base_volume);
     aout_VolumeReport(aout, (float)volume / PA_VOLUME_NORM);
 }
 
 /*** Sink ***/
-static struct sink *sink_find(aout_sys_t *sys, uint32_t index)
-{
-    for (struct sink *sink = sys->sinks; sink != NULL; sink = sink->next)
-        if (sink->index == index)
-            return sink;
-    return NULL;
-}
-
-static struct sink *sink_find_by_name(aout_sys_t *sys, const char *name)
-{
-    for (struct sink *sink = sys->sinks; sink != NULL; sink = sink->next)
-        if (!strcmp(sink->name, name))
-            return sink;
-    return NULL;
-}
-
 static void sink_add_cb(pa_context *ctx, const pa_sink_info *i, int eol,
                         void *userdata)
 {
@@ -128,15 +109,6 @@ static void sink_add_cb(pa_context *ctx, const pa_sink_info *i, int eol,
 
     sink->next = sys->sinks;
     sink->index = i->index;
-    /* PulseAudio flat volume NORM / 100% / 0dB corresponds to no software
-     * amplification and maximum hardware amplification.
-     * VLC maps DEFAULT / 100% to no gain at all (software/hardware).
-     * Thus we need to use the sink base_volume as a multiplier,
-     * if and only if flat volume is active for our current sink. */
-    if (i->flags & PA_SINK_FLAT_VOLUME)
-        sink->base_volume = i->base_volume;
-    else
-        sink->base_volume = PA_VOLUME_NORM;
     memcpy(sink->name, i->name, namelen + 1);
     sys->sinks = sink;
 }
@@ -145,7 +117,6 @@ static void sink_mod_cb(pa_context *ctx, const pa_sink_info *i, int eol,
                         void *userdata)
 {
     audio_output_t *aout = userdata;
-    aout_sys_t *sys = aout->sys;
 
     if (eol)
         return;
@@ -154,15 +125,6 @@ static void sink_mod_cb(pa_context *ctx, const pa_sink_info *i, int eol,
     msg_Dbg(aout, "changing sink %"PRIu32": %s (%s)", i->index, i->name,
             i->description);
     aout_HotplugReport(aout, i->name, i->description);
-
-    struct sink *sink = sink_find(sys, i->index);
-    if (unlikely(sink == NULL))
-        return;
-
-    if (i->flags & PA_SINK_FLAT_VOLUME)
-        sink->base_volume = i->base_volume;
-    else
-        sink->base_volume = PA_VOLUME_NORM;
 }
 
 static void sink_del(uint32_t index, audio_output_t *aout)
@@ -350,18 +312,10 @@ static void stream_event_cb(pa_stream *s, const char *name, pa_proplist *pl,
 static void stream_moved_cb(pa_stream *s, void *userdata)
 {
     audio_output_t *aout = userdata;
-    aout_sys_t *sys = aout->sys;
     const char *name = pa_stream_get_device_name(s);
-    struct sink *sink = sink_find(sys, pa_stream_get_device_index(s));
 
     msg_Dbg(aout, "connected to sink %s", name);
     aout_DeviceReport(aout, name);
-
-    sys->base_volume = likely(sink != NULL) ? sink->base_volume
-                                            : PA_VOLUME_INVALID;
-    msg_Dbg(aout, "base volume: %"PRIu32, sys->base_volume);
-    if (pa_cvolume_valid(&sys->cvolume))
-        VolumeReport(aout);
 }
 
 static void stream_overflow_cb(pa_stream *s, void *userdata)
@@ -427,8 +381,7 @@ static void sink_input_info_cb(pa_context *ctx, const pa_sink_input_info *i,
     (void) ctx;
 
     sys->cvolume = i->volume; /* cache volume for balance preservation */
-    if (PA_VOLUME_IS_VALID(sys->base_volume))
-        VolumeReport(aout);
+    VolumeReport(aout);
     aout_MuteReport(aout, i->mute);
 }
 
@@ -616,8 +569,6 @@ static int VolumeSet(audio_output_t *aout, float vol)
     aout_sys_t *sys = aout->sys;
     pa_stream *s = sys->stream;
     pa_operation *op;
-    int ret = -1;
-    pa_volume_t base_volume;
 
     /* VLC provides the software volume so convert directly to PulseAudio
      * software volume, pa_volume_t. This is not a linear amplification factor
@@ -626,38 +577,17 @@ static int VolumeSet(audio_output_t *aout, float vol)
     if (unlikely(vol >= PA_VOLUME_MAX))
         vol = PA_VOLUME_MAX;
 
-    pa_threaded_mainloop_lock(sys->mainloop);
-
-    base_volume = sys->base_volume;
-    if (!PA_VOLUME_IS_VALID(base_volume))
-    {   /* Base volume is unknown, typically because sink is unknown.
-         * Try to guess the base volume. */
-        const struct sink *sink = sys->sinks;
-        if (unlikely(sink == NULL))
-        {
-            msg_Err(aout, "cannot change volume without sink");
-            goto out;
-        }
-
-        base_volume = sink->base_volume;
-        while ((sink = sink->next) != NULL)
-            if (sink->base_volume != base_volume)
-            {
-                msg_Err(aout, "cannot change volume without base");
-                goto out;
-            }
-    }
-
-    pa_volume_t volume = pa_sw_volume_multiply(lroundf(vol), base_volume);
+    pa_volume_t volume = lroundf(vol);
 
     if (s == NULL)
     {
         sys->volume_force = volume;
-        aout_VolumeReport(aout, vol / (float)PA_VOLUME_NORM);
-        ret = 0;
-        goto out;
+        aout_VolumeReport(aout, (float)volume / (float)PA_VOLUME_NORM);
+        return 0;
     }
 
+    pa_threaded_mainloop_lock(sys->mainloop);
+
     if (!pa_cvolume_valid(&sys->cvolume))
     {
         const pa_sample_spec *ss = pa_stream_get_sample_spec(s);
@@ -675,13 +605,9 @@ static int VolumeSet(audio_output_t *aout, float vol)
     op = pa_context_set_sink_input_volume(sys->context, pa_stream_get_index(s),
                                           &cvolume, NULL, NULL);
     if (likely(op != NULL))
-    {
         pa_operation_unref(op);
-        ret = 0;
-    }
-out:
     pa_threaded_mainloop_unlock(sys->mainloop);
-    return ret;
+    return likely(op != NULL) ? 0 : -1;
 }
 
 static int MuteSet(audio_output_t *aout, bool mute)
@@ -714,10 +640,6 @@ static int StreamMove(audio_output_t *aout, const char *name)
 
     if (sys->stream == NULL)
     {
-        struct sink *sink = sink_find_by_name(sys, name);
-
-        sys->base_volume = likely(sink != NULL) ? sink->base_volume
-                                                : PA_VOLUME_INVALID;
         msg_Dbg(aout, "will connect to sink %s", name);
         free(sys->sink_force);
         sys->sink_force = strdup(name);
@@ -837,6 +759,7 @@ static int Start(audio_output_t *aout, audio_sample_format_t *restrict fmt)
     }
     if (fmt->i_physical_channels & AOUT_CHAN_LFE)
         map.map[map.channels++] = PA_CHANNEL_POSITION_LFE;
+    fmt->i_original_channels = fmt->i_physical_channels;
 
     for (unsigned i = 0; map.channels < ss.channels; i++) {
         map.map[map.channels++] = PA_CHANNEL_POSITION_AUX0 + i;
@@ -1005,7 +928,6 @@ static void Stop(audio_output_t *aout)
 
     pa_stream_unref(s);
     sys->stream = NULL;
-    sys->base_volume = PA_VOLUME_INVALID;
     pa_threaded_mainloop_unlock(sys->mainloop);
 }
 
@@ -1027,7 +949,6 @@ static int Open(vlc_object_t *obj)
     }
     sys->stream = NULL;
     sys->context = ctx;
-    sys->base_volume = PA_VOLUME_INVALID;
     sys->volume_force = PA_VOLUME_INVALID;
     sys->flags_force = PA_STREAM_NOFLAGS;
     sys->sink_force = NULL;
diff --git a/modules/codec/avcodec/audio.c b/modules/codec/avcodec/audio.c
index 55af1af..21aa85a 100644
--- a/modules/codec/avcodec/audio.c
+++ b/modules/codec/avcodec/audio.c
@@ -2,7 +2,7 @@
  * audio.c: audio decoder using libavcodec library
  *****************************************************************************
  * Copyright (C) 1999-2003 VLC authors and VideoLAN
- * $Id: 254c06da497b9e77832c1f926afe6b267564cde1 $
+ * $Id: 34c83527b020e8f65276458986f59c298dcefc77 $
  *
  * Authors: Laurent Aimar <fenrir@via.ecp.fr>
  *          Gildas Bazin <gbazin@videolan.org>
@@ -361,6 +361,7 @@ block_t * DecodeAudio ( decoder_t *p_dec, block_t **pp_block )
     if( p_block->i_buffer == 0 )
     {   /* Done with this buffer */
         block_Release( p_block );
+        p_block = NULL;
         *pp_block = NULL;
     }
 
@@ -448,7 +449,8 @@ block_t * DecodeAudio ( decoder_t *p_dec, block_t **pp_block )
 end:
     *pp_block = NULL;
 drop:
-    block_Release(p_block);
+    if( p_block != NULL )
+        block_Release(p_block);
     return NULL;
 }
 
diff --git a/modules/codec/avcodec/avcommon.h b/modules/codec/avcodec/avcommon.h
index 56b17c9..f967473 100644
--- a/modules/codec/avcodec/avcommon.h
+++ b/modules/codec/avcodec/avcommon.h
@@ -2,7 +2,7 @@
  * avcommon.h: common code for libav*
  *****************************************************************************
  * Copyright (C) 2012 VLC authors and VideoLAN
- * $Id: 8c47330ff660c6a51d64ba6fcfaf85a35b93b6fb $
+ * $Id: 411ddaceb1b8bbdb9d16e18e93e173ee76de7cbd $
  *
  * Authors: Rafaël Carré <funman@videolanorg>
  *
@@ -39,6 +39,7 @@
 #ifdef HAVE_LIBAVUTIL_AVUTIL_H
 # include <libavutil/avutil.h>
 # include <libavutil/dict.h>
+# include <libavutil/cpu.h>
 # include <libavutil/log.h>
 
 #define AV_OPTIONS_TEXT     "Advanced options"
diff --git a/modules/codec/libass.c b/modules/codec/libass.c
index 75f307d..3cc1b8e 100644
--- a/modules/codec/libass.c
+++ b/modules/codec/libass.c
@@ -2,7 +2,7 @@
  * SSA/ASS subtitle decoder using libass.
  *****************************************************************************
  * Copyright (C) 2008-2009 VLC authors and VideoLAN
- * $Id: aa38f1b2f609072b6d003b46b7b4fd694dfebbd2 $
+ * $Id: 5590df15375907f1578337948e8d10c67c49d5f6 $
  *
  * Authors: Laurent Aimar <fenrir@videolan.org>
  *
@@ -219,7 +219,7 @@ static int Create( vlc_object_t *p_this )
 #endif
 
 #ifdef HAVE_FONTCONFIG
-#if defined(_WIN32)
+#if defined(_WIN32) || defined(__APPLE__)
     dialog_progress_bar_t *p_dialog =
         dialog_ProgressCreate( p_dec,
                                _("Building font cache"),
@@ -227,7 +227,7 @@ static int Create( vlc_object_t *p_this )
                                   "This should take less than a minute." ), NULL );
 #endif
     ass_set_fonts( p_renderer, psz_font, psz_family, true, NULL, 1 );  // setup default font/family
-#ifdef _WIN32
+#if defined(_WIN32) || defined(__APPLE__)
     if( p_dialog )
     {
         dialog_ProgressSet( p_dialog, NULL, 1.0 );
diff --git a/modules/codec/mft.c b/modules/codec/mft.c
index 3ece889..143a308 100644
--- a/modules/codec/mft.c
+++ b/modules/codec/mft.c
@@ -745,7 +745,8 @@ static int ProcessOutputStream(decoder_t *p_dec, DWORD stream_id, void **result)
     }
     else /* An error not listed above occurred */
     {
-        msg_Err(p_dec, "Unexpected error in IMFTransform::ProcessOutput: %#x", hr);
+        msg_Err(p_dec, "Unexpected error in IMFTransform::ProcessOutput: %#lx",
+                hr);
         goto error;
     }
 
diff --git a/modules/codec/omxil/android_mediacodec.c b/modules/codec/omxil/android_mediacodec.c
index 8716929..1157fcd 100644
--- a/modules/codec/omxil/android_mediacodec.c
+++ b/modules/codec/omxil/android_mediacodec.c
@@ -392,7 +392,8 @@ static int OpenDecoder(vlc_object_t *p_this)
         if ((*env)->ExceptionOccurred(env)) {
             msg_Warn(p_dec, "Exception occurred in MediaCodecInfo.getCapabilitiesForType");
             (*env)->ExceptionClear(env);
-            break;
+            (*env)->DeleteLocalRef(env, info);
+            continue;
         } else if (codec_capabilities) {
             profile_levels = (*env)->GetObjectField(env, codec_capabilities, p_sys->profile_levels_field);
             if (profile_levels)
@@ -437,6 +438,7 @@ static int OpenDecoder(vlc_object_t *p_this)
             p_sys->name[name_len] = '\0';
             (*env)->ReleaseStringUTFChars(env, name, name_ptr);
             codec_name = name;
+            (*env)->DeleteLocalRef(env, info);
             break;
         }
         (*env)->DeleteLocalRef(env, info);
@@ -829,8 +831,14 @@ static void GetOutput(decoder_t *p_dec, JNIEnv *env, picture_t **pp_pic, jlong t
                     sar_den = p_dec->fmt_in.video.i_sar_den;
                 }
                 jni_SetAndroidSurfaceSizeEnv(env, width, height, width, height, sar_num, sar_den);
-            } else
-                GetVlcChromaFormat(p_sys->pixel_format, &p_dec->fmt_out.i_codec, &name);
+            } else {
+                if (!GetVlcChromaFormat(p_sys->pixel_format,
+                                        &p_dec->fmt_out.i_codec, &name)) {
+                    msg_Err(p_dec, "color-format not recognized");
+                    p_sys->error_state = true;
+                    return;
+                }
+            }
 
             msg_Dbg(p_dec, "output: %d %s, %dx%d stride %d %d, crop %d %d %d %d",
                     p_sys->pixel_format, name, width, height, p_sys->stride, p_sys->slice_height,
@@ -934,6 +942,8 @@ static picture_t *DecodeVideo(decoder_t *p_dec, block_t **pp_block)
 
         if (index < 0) {
             GetOutput(p_dec, env, &p_pic, timeout);
+            if (p_sys->error_state)
+                break;
             if (p_pic) {
                 /* If we couldn't get an available input buffer but a
                  * decoded frame is available, we return the frame
@@ -996,6 +1006,12 @@ static picture_t *DecodeVideo(decoder_t *p_dec, block_t **pp_block)
         p_sys->decoded = true;
         break;
     }
+    if (p_sys->error_state) {
+        if (p_pic)
+            decoder_DeletePicture(p_dec, p_pic);
+        jni_detach_thread();
+        return NULL;
+    }
     if (!p_pic)
         GetOutput(p_dec, env, &p_pic, 0);
     (*myVm)->DetachCurrentThread(myVm);
diff --git a/modules/codec/png.c b/modules/codec/png.c
index 07a9b45..d5f73ce 100644
--- a/modules/codec/png.c
+++ b/modules/codec/png.c
@@ -2,7 +2,7 @@
  * png.c: png decoder module making use of libpng.
  *****************************************************************************
  * Copyright (C) 1999-2001 VLC authors and VideoLAN
- * $Id: 46d31af689d2e6a2ebc9557d53184b3b7e77663b $
+ * $Id: 33f75155b9a8f8feec30445aafc3dc26854e5f78 $
  *
  * Authors: Gildas Bazin <gbazin@videolan.org>
  *
@@ -405,7 +405,7 @@ static block_t *EncodeBlock(encoder_t *p_enc, picture_t *p_pic)
 
     /* Encode picture */
 
-    for( int i = 0; i < p_pic->p->i_lines; i++ )
+    for( int i = 0; i < p_pic->p->i_visible_lines; i++ )
     {
         png_write_row( p_png, p_pic->p->p_pixels + (i * p_pic->p->i_pitch) );
         if( p_sys->b_error ) goto error;
diff --git a/modules/codec/zvbi.c b/modules/codec/zvbi.c
index fc79a74..364983d 100644
--- a/modules/codec/zvbi.c
+++ b/modules/codec/zvbi.c
@@ -2,7 +2,7 @@
  * zvbi.c : VBI and Teletext PES demux and decoder using libzvbi
  *****************************************************************************
  * Copyright (C) 2007, M2X
- * $Id: bd5599fb04b6f8d688316ddad347c7b16e021a2d $
+ * $Id: abcd27f5355953f68a13b4e7d6f848d58f7aa4c1 $
  *
  * Authors: Derk-Jan Hartman <djhartman at m2x dot nl>
  *          Jean-Paul Saman <jpsaman at m2x dot nl>
@@ -372,7 +372,7 @@ static subpicture_t *Decode( decoder_t *p_dec, block_t **pp_block )
 
     if( !b_cached )
     {
-        if( p_sys->i_last_page != i_wanted_page )
+        if( p_sys->b_text && p_sys->i_last_page != i_wanted_page )
         {
             /* We need to reset the subtitle */
             p_spu = Subpicture( p_dec, &fmt, true,
diff --git a/modules/demux/asf/asf.c b/modules/demux/asf/asf.c
index 21d59a0..0c6ba0b 100644
--- a/modules/demux/asf/asf.c
+++ b/modules/demux/asf/asf.c
@@ -72,7 +72,7 @@ static int Demux  ( demux_t * );
 static int Control( demux_t *, int i_query, va_list args );
 static void FlushRemainingPackets( demux_t *p_demux );
 
-#define MAX_ASF_TRACKS 128
+#define MAX_ASF_TRACKS (ASF_MAX_STREAMNUMBER + 1)
 #define ASF_PREROLL_FROM_CURRENT -1
 
 typedef struct
@@ -745,6 +745,8 @@ static int DemuxPayload(demux_t *p_demux, struct asf_packet_t *pkt, int i_payloa
 
     bool b_packet_keyframe = pkt->p_peek[pkt->i_skip] >> 7;
     uint8_t i_stream_number = pkt->p_peek[pkt->i_skip++] & 0x7f;
+    if ( i_stream_number >= MAX_ASF_TRACKS )
+        goto skip;
 
     uint32_t i_media_object_number = 0;
     if (GetValue2b(&i_media_object_number, pkt->p_peek, &pkt->i_skip, pkt->left - pkt->i_skip, pkt->property >> 4) < 0)
@@ -1100,7 +1102,7 @@ static void ASF_fillup_es_priorities_ex( demux_sys_t *p_sys, void *p_hdr,
         /* Just set highest prio on highest in the group */
         for ( uint16_t i = 1; i < p_mutex->i_stream_number_count; i++ )
         {
-            if ( p_prios->i_count > p_sys->i_track ) break;
+            if ( p_prios->i_count > p_sys->i_track || i > p_sys->i_track ) break;
             p_prios->pi_stream_numbers[ p_prios->i_count++ ] = p_mutex->pi_stream_number[ i ];
         }
     }
@@ -1127,7 +1129,7 @@ static void ASF_fillup_es_bitrate_priorities_ex( demux_sys_t *p_sys, void *p_hdr
         /* Just remove < highest */
         for ( uint16_t i = 1; i < p_bitrate_mutex->i_stream_number_count; i++ )
         {
-            if ( p_prios->i_count > p_sys->i_track ) break;
+            if ( p_prios->i_count > p_sys->i_track || i > p_sys->i_track ) break;
             p_prios->pi_stream_numbers[ p_prios->i_count++ ] = p_bitrate_mutex->pi_stream_numbers[ i ];
         }
     }
@@ -1429,7 +1431,7 @@ static int DemuxInit( demux_t *p_demux )
 
                 if( p_sp->i_type_specific_data_length > sizeof( WAVEFORMATEX ) &&
                     i_format != WAVE_FORMAT_MPEGLAYER3 &&
-                    i_format != WAVE_FORMAT_MPEG )
+                    i_format != WAVE_FORMAT_MPEG && i_data >= 19 )
                 {
                     GET_CHECKED( fmt.i_extra, __MIN( GetWLE( &p_data[16] ),
                                          p_sp->i_type_specific_data_length -
diff --git a/modules/demux/asf/libasf.c b/modules/demux/asf/libasf.c
index e0ff405..7171549 100644
--- a/modules/demux/asf/libasf.c
+++ b/modules/demux/asf/libasf.c
@@ -543,7 +543,9 @@ static int ASF_ReadObject_stream_properties( stream_t *s, asf_object_t *p_obj )
     p_sp->i_type_specific_data_length = GetDWLE( p_peek + 64 );
     p_sp->i_error_correction_data_length = GetDWLE( p_peek + 68 );
     p_sp->i_flags = GetWLE( p_peek + 72 );
-        p_sp->i_stream_number = p_sp->i_flags&0x07f;
+    p_sp->i_stream_number = p_sp->i_flags&0x07f;
+    if ( p_sp->i_stream_number > ASF_MAX_STREAMNUMBER )
+        return VLC_EGENERIC;
     p_sp->i_reserved = GetDWLE( p_peek + 74 );
     i_peek -= 78;
 
@@ -828,13 +830,15 @@ static int ASF_ReadObject_stream_bitrate_properties( stream_t *s,
     p_data = &p_peek[24];
 
     p_sb->i_bitrate = ASF_READ2();
-    if( p_sb->i_bitrate > 127 )
-        p_sb->i_bitrate = 127;  /* Buggy ? */
+    if( p_sb->i_bitrate > ASF_MAX_STREAMNUMBER )
+        p_sb->i_bitrate = ASF_MAX_STREAMNUMBER;  /* Buggy ? */
     for( i = 0; i < p_sb->i_bitrate; i++ )
     {
         if( !ASF_HAVE(2 + 4) )
             break;
         p_sb->bitrate[i].i_stream_number = (uint8_t) ASF_READ2()& 0x7f;
+        if ( p_sb->bitrate[i].i_stream_number > ASF_MAX_STREAMNUMBER )
+            return VLC_EGENERIC;
         p_sb->bitrate[i].i_avg_bitrate = ASF_READ4();
     }
     p_sb->i_bitrate = i;
@@ -879,6 +883,8 @@ static int ASF_ReadObject_extended_stream_properties( stream_t *s,
     p_esp->i_maximum_object_size = GetDWLE( &p_data[40] );
     p_esp->i_flags = GetDWLE( &p_data[44] );
     p_esp->i_stream_number = GetWLE( &p_data[48] );
+    if ( p_esp->i_stream_number > ASF_MAX_STREAMNUMBER )
+        return VLC_EGENERIC;
     p_esp->i_language_index = GetWLE( &p_data[50] );
     p_esp->i_average_time_per_frame= GetQWLE( &p_data[52] );
     p_esp->i_stream_name_count = GetWLE( &p_data[60] );
@@ -1021,12 +1027,19 @@ static int ASF_ReadObject_advanced_mutual_exclusion( stream_t *s,
 
     p_ae->i_stream_number_count = ASF_READ2();
     p_ae->pi_stream_number = calloc( p_ae->i_stream_number_count, sizeof(uint16_t) );
+    if ( !p_ae->pi_stream_number )
+        return VLC_ENOMEM;
 
     for( i = 0; i < p_ae->i_stream_number_count; i++ )
     {
         if( !ASF_HAVE(2) )
             break;
         p_ae->pi_stream_number[i] = ASF_READ2();
+        if ( p_ae->pi_stream_number[i] > ASF_MAX_STREAMNUMBER )
+        {
+            free( p_ae->pi_stream_number );
+            return VLC_EGENERIC;
+        }
     }
     p_ae->i_stream_number_count = i;
 
@@ -1133,6 +1146,11 @@ static int ASF_ReadObject_bitrate_mutual_exclusion( stream_t *s, asf_object_t *p
         if( !ASF_HAVE(2) )
             break;
         p_ex->pi_stream_numbers[i] = ASF_READ2();
+        if ( p_ex->pi_stream_numbers[i] > ASF_MAX_STREAMNUMBER )
+        {
+            free( p_ex->pi_stream_numbers );
+            return VLC_EGENERIC;
+        }
     }
 
 #ifdef ASF_DEBUG
diff --git a/modules/demux/asf/libasf.h b/modules/demux/asf/libasf.h
index ee2c20d..e8b792d 100644
--- a/modules/demux/asf/libasf.h
+++ b/modules/demux/asf/libasf.h
@@ -21,6 +21,8 @@
  *****************************************************************************/
 
 
+#define ASF_MAX_STREAMNUMBER 127
+
 /*****************************************************************************
  * Structure needed for decoder
  *****************************************************************************/
@@ -244,7 +246,7 @@ typedef struct
     {
         uint8_t  i_stream_number;
         uint32_t i_avg_bitrate;
-    } bitrate[128];
+    } bitrate[ASF_MAX_STREAMNUMBER + 1];
 } asf_object_stream_bitrate_properties_t;
 
 
diff --git a/modules/demux/avi/libavi.c b/modules/demux/avi/libavi.c
index 8efd72a..8e2085d 100644
--- a/modules/demux/avi/libavi.c
+++ b/modules/demux/avi/libavi.c
@@ -2,7 +2,7 @@
  * libavi.c : LibAVI
  *****************************************************************************
  * Copyright (C) 2001 VLC authors and VideoLAN
- * $Id: 79cd34b1b5fe662b80c5a59c06901d512f7aeb42 $
+ * $Id: d0cfe714168642e90d09d6b72e1b0c986f051146 $
  * Authors: Laurent Aimar <fenrir@via.ecp.fr>
  *
  * This program is free software; you can redistribute it and/or modify it
@@ -460,9 +460,10 @@ static int AVI_ChunkRead_strf( stream_t *s, avi_chunk_t *p_chk )
             {
                 p_chk->strf.vids.p_bih->biSize = p_chk->common.i_chunk_size;
             }
-            uint64_t i_extrasize = p_chk->common.i_chunk_size - sizeof(VLC_BITMAPINFOHEADER);
-            if( i_extrasize > 0 )
+            if ( p_chk->common.i_chunk_size > sizeof(VLC_BITMAPINFOHEADER) )
             {
+                uint64_t i_extrasize = p_chk->common.i_chunk_size - sizeof(VLC_BITMAPINFOHEADER);
+
                 /* There's a color palette appended, set up VLC_BITMAPINFO */
                 memcpy( &p_chk->strf.vids.p_bih[1],
                         p_buff + 8 + sizeof(VLC_BITMAPINFOHEADER), /* 8=fourrc+size */
@@ -471,12 +472,12 @@ static int AVI_ChunkRead_strf( stream_t *s, avi_chunk_t *p_chk )
                 if ( !p_chk->strf.vids.p_bih->biClrUsed )
                     p_chk->strf.vids.p_bih->biClrUsed = (1 << p_chk->strf.vids.p_bih->biBitCount);
 
-                if( i_extrasize > (UINT32_MAX * sizeof(uint32_t)) )
+                if( i_extrasize / sizeof(uint32_t) > UINT32_MAX )
                     p_chk->strf.vids.p_bih->biClrUsed = UINT32_MAX;
                 else
                 {
                     p_chk->strf.vids.p_bih->biClrUsed =
-                            __MAX( i_extrasize / sizeof(uint32_t),
+                            __MIN( i_extrasize / sizeof(uint32_t),
                                    p_chk->strf.vids.p_bih->biClrUsed );
                 }
 
diff --git a/modules/demux/mjpeg.c b/modules/demux/mjpeg.c
index a6f7419..a0a18f9 100644
--- a/modules/demux/mjpeg.c
+++ b/modules/demux/mjpeg.c
@@ -2,7 +2,7 @@
  * mjpeg.c : demuxes mjpeg webcam http streams
  *****************************************************************************
  * Copyright (C) 2004 VLC authors and VideoLAN
- * $Id: 2c076adeea5bb03a690f17d56be7c9cee67275ba $
+ * $Id: af6fceae8e31e0758df693aff5d31ee720be7190 $
  *
  * Authors: Henry Jen (slowhog) <henryjen@ztune.net>
  *          Derk-Jan Hartman (thedj)
@@ -462,7 +462,8 @@ static int MimeDemux( demux_t *p_demux )
 
     if( i_size > 0 )
     {
-        stream_Read( p_demux->s, NULL, i_size );
+        if( stream_Read( p_demux->s, NULL, i_size ) != i_size )
+            return 0;
     }
     else if( i_size < 0 )
     {
diff --git a/modules/demux/mp4/libmp4.c b/modules/demux/mp4/libmp4.c
index 6609369..19e84d3 100644
--- a/modules/demux/mp4/libmp4.c
+++ b/modules/demux/mp4/libmp4.c
@@ -2823,6 +2823,8 @@ static int MP4_ReadBox_chpl( stream_t *p_stream, MP4_Box_t *p_box )
         uint64_t i_start;
         uint8_t i_len;
         int i_copy;
+        if ( i_read < 9 )
+            break;
         MP4_GET8BYTES( i_start );
         MP4_GET1BYTE( i_len );
 
@@ -2839,6 +2841,10 @@ static int MP4_ReadBox_chpl( stream_t *p_stream, MP4_Box_t *p_box )
         p_peek += i_copy;
         i_read -= i_copy;
     }
+
+    if ( i != p_chpl->i_chapter )
+        p_chpl->i_chapter = i;
+
     /* Bubble sort by increasing start date */
     do
     {
@@ -3042,7 +3048,8 @@ static int MP4_ReadBox_sdtp( stream_t *p_stream, MP4_Box_t *p_box )
 
 #ifdef MP4_VERBOSE
     msg_Dbg( p_stream, "i_sample_count is %"PRIu32"", i_sample_count );
-    msg_Dbg( p_stream,
+    if ( i_sample_count > 3 )
+        msg_Dbg( p_stream,
              "read box: \"sdtp\" head: %"PRIx8" %"PRIx8" %"PRIx8" %"PRIx8"",
                  p_sdtp->p_sample_table[0],
                  p_sdtp->p_sample_table[1],
@@ -3452,63 +3459,81 @@ static const struct
     { ATOM_frma,    MP4_ReadBox_frma,         MP4_FreeBox_Common, 0 },
     { ATOM_skcr,    MP4_ReadBox_skcr,         MP4_FreeBox_Common, 0 },
 
-    /* found in udta */
-    { ATOM_0xa9nam, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9aut, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9cpy, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9swr, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9inf, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
+    /* ilst meta tags */
     { ATOM_0xa9ART, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9dir, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
+    { ATOM_0xa9alb, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
     { ATOM_0xa9cmt, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9req, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
+    { ATOM_0xa9com, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
     { ATOM_0xa9day, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
     { ATOM_0xa9des, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9fmt, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9prd, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9prf, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9src, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9alb, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9dis, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
     { ATOM_0xa9enc, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
     { ATOM_0xa9gen, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9trk, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9dsa, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9hst, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9url, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9ope, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9com, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9wrt, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9too, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9wrn, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9mak, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9mod, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9PRD, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
     { ATOM_0xa9grp, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
     { ATOM_0xa9lyr, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9gen, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9st3, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9ard, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9arg, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9cak, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9con, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9des, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9lnt, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9phg, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9pub, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9sne, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9sol, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9thx, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_0xa9xpd, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
-    { ATOM_chpl,    MP4_ReadBox_chpl,         MP4_FreeBox_chpl,    ATOM_udta },
-
+    { ATOM_0xa9nam, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
+    { ATOM_0xa9too, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
+    { ATOM_0xa9trk, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
+    { ATOM_0xa9wrt, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_ilst },
+    { ATOM_covr,    MP4_ReadBoxContainer,     MP4_FreeBox_Common,  ATOM_ilst },
     { ATOM_gnre,    MP4_ReadBox_gnre,         MP4_FreeBox_Common,  ATOM_ilst },
-    { ATOM_trkn,    MP4_ReadBox_trkn,         MP4_FreeBox_Common,  ATOM_ilst },
+
+    /* udta */
+    { ATOM_0xa9ART, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9alb, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9ard, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9arg, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9aut, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9cak, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9cmt, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9con, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9com, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9cpy, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9day, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9des, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9dir, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9dis, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9dsa, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9fmt, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9gen, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9grp, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9hst, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9inf, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9isr, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9lab, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9lal, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9lnt, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9lyr, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9mak, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9mal, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9mod, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9ope, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9phg, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9PRD, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9prd, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9prf, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9pub, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9req, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9sne, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9snm, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9sol, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9src, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9st3, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9swr, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9thx, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9too, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9trk, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9url, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9wrn, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9xpd, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_0xa9xyz, MP4_ReadBox_0xa9xxx,      MP4_FreeBox_0xa9xxx, ATOM_udta },
+    { ATOM_chpl,    MP4_ReadBox_chpl,         MP4_FreeBox_chpl,    ATOM_udta },
+    { ATOM_covr,    MP4_ReadBoxContainer,     MP4_FreeBox_Common,  ATOM_udta },
+    { ATOM_gnre,    MP4_ReadBox_gnre,         MP4_FreeBox_Common,  ATOM_udta },
+    { ATOM_name,    MP4_ReadBox_name,         MP4_FreeBox_name,    ATOM_udta },
+    { ATOM_trkn,    MP4_ReadBox_trkn,         MP4_FreeBox_Common,  ATOM_udta },
 
     /* iTunes/Quicktime meta info */
     { ATOM_meta,    MP4_ReadBox_meta,         MP4_FreeBox_Common,  0 },
-    { ATOM_name,    MP4_ReadBox_name,         MP4_FreeBox_name,    0 },
-    { ATOM_covr,    MP4_ReadBoxContainer,     MP4_FreeBox_Common,  ATOM_ilst },
     { ATOM_data,    MP4_ReadBox_data,         MP4_FreeBox_data,    0 },
 
     /* found in smoothstreaming */
diff --git a/modules/demux/mp4/libmp4.h b/modules/demux/mp4/libmp4.h
index 5e71347..7eb8939 100644
--- a/modules/demux/mp4/libmp4.h
+++ b/modules/demux/mp4/libmp4.h
@@ -217,6 +217,9 @@
 #define ATOM_0xa9aut VLC_FOURCC( 0xa9, 'a', 'u', 't' )
 #define ATOM_0xa9cpy VLC_FOURCC( 0xa9, 'c', 'p', 'y' )
 #define ATOM_0xa9inf VLC_FOURCC( 0xa9, 'i', 'n', 'f' )
+#define ATOM_0xa9isr VLC_FOURCC( 0xa9, 'i', 's', 'r' )
+#define ATOM_0xa9lab VLC_FOURCC( 0xa9, 'l', 'a', 'b' )
+#define ATOM_0xa9lal VLC_FOURCC( 0xa9, 'l', 'a', 'l' )
 #define ATOM_0xa9ART VLC_FOURCC( 0xa9, 'A', 'R', 'T' )
 #define ATOM_0xa9des VLC_FOURCC( 0xa9, 'd', 'e', 's' )
 #define ATOM_0xa9dir VLC_FOURCC( 0xa9, 'd', 'i', 'r' )
@@ -242,6 +245,7 @@
 #define ATOM_0xa9wrn VLC_FOURCC( 0xa9, 'w', 'r', 'n' )
 #define ATOM_0xa9swr VLC_FOURCC( 0xa9, 's', 'w', 'r' )
 #define ATOM_0xa9mak VLC_FOURCC( 0xa9, 'm', 'a', 'k' )
+#define ATOM_0xa9mal VLC_FOURCC( 0xa9, 'm', 'a', 'l' )
 #define ATOM_0xa9mod VLC_FOURCC( 0xa9, 'm', 'o', 'd' )
 #define ATOM_0xa9PRD VLC_FOURCC( 0xa9, 'P', 'R', 'D' )
 #define ATOM_0xa9grp VLC_FOURCC( 0xa9, 'g', 'r', 'p' )
@@ -257,9 +261,11 @@
 #define ATOM_0xa9phg VLC_FOURCC( 0xa9, 'p', 'h', 'g' )
 #define ATOM_0xa9pub VLC_FOURCC( 0xa9, 'p', 'u', 'b' )
 #define ATOM_0xa9sne VLC_FOURCC( 0xa9, 's', 'n', 'e' )
+#define ATOM_0xa9snm VLC_FOURCC( 0xa9, 's', 'n', 'm' )
 #define ATOM_0xa9sol VLC_FOURCC( 0xa9, 's', 'o', 'l' )
 #define ATOM_0xa9thx VLC_FOURCC( 0xa9, 't', 'h', 'x' )
 #define ATOM_0xa9xpd VLC_FOURCC( 0xa9, 'x', 'p', 'd' )
+#define ATOM_0xa9xyz VLC_FOURCC( 0xa9, 'x', 'y', 'z' )
 #define ATOM_chpl VLC_FOURCC( 'c', 'h', 'p', 'l' )
 #define ATOM_WLOC VLC_FOURCC( 'W', 'L', 'O', 'C' )
 
diff --git a/modules/demux/mp4/mp4.c b/modules/demux/mp4/mp4.c
index dad0ad0..facfcff 100644
--- a/modules/demux/mp4/mp4.c
+++ b/modules/demux/mp4/mp4.c
@@ -1867,12 +1867,24 @@ static int TrackCreateSamplesIndex( demux_t *p_demux,
     {
         mp4_chunk_t *lastchunk = &p_demux_track->chunk[p_demux_track->i_chunk_count - 1];
         uint64_t i_total_size = lastchunk->i_offset;
-        for( uint32_t i=0; i<lastchunk->i_sample_count; i++)
+
+        if ( p_demux_track->i_sample_size != 0 ) /* all samples have same size */
+        {
+            i_total_size += (uint64_t)p_demux_track->i_sample_size * lastchunk->i_sample_count;
+        }
+        else
         {
-            if( p_demux_track->i_sample_size == 0 )
+            if( (uint64_t)lastchunk->i_sample_count + p_demux_track->i_chunk_count - 1 > stsz->i_sample_count )
+            {
+                msg_Err( p_demux, "invalid samples table: stsz table is too small" );
+                return VLC_EGENERIC;
+            }
+
+            for( uint32_t i=stsz->i_sample_count - lastchunk->i_sample_count;
+                 i<stsz->i_sample_count; i++)
+            {
                 i_total_size += stsz->i_entry_size[i];
-            else
-                i_total_size += p_demux_track->i_sample_size;
+            }
         }
 
         if ( i_total_size > p_sys->moovfragment.i_chunk_range_max_offset )
@@ -2118,7 +2130,7 @@ static void TrackGetESSampleRate( demux_t *p_demux,
         return;
     }
 
-    if( p_track->i_chunk_count <= 0 )
+    if( p_track->i_chunk_count == 0 )
         return;
 
     /* */
@@ -2158,7 +2170,7 @@ static int TrackCreateES( demux_t *p_demux, mp4_track_t *p_track,
     demux_sys_t *p_sys = p_demux->p_sys;
     unsigned int i_sample_description_index;
 
-    if( p_sys->b_fragmented )
+    if( p_sys->b_fragmented || p_track->i_chunk_count == 0 )
         i_sample_description_index = 1; /* XXX */
     else
         i_sample_description_index =
diff --git a/modules/demux/ogg.c b/modules/demux/ogg.c
index 78ce4b3..9316a09 100644
--- a/modules/demux/ogg.c
+++ b/modules/demux/ogg.c
@@ -2,7 +2,7 @@
  * ogg.c : ogg stream demux module for vlc
  *****************************************************************************
  * Copyright (C) 2001-2007 VLC authors and VideoLAN
- * $Id: d7cd17944779bb79804a083132a2cfdb5ee3a99d $
+ * $Id: d69a675d96335bd59a9cf8ae491c2b82dfd2342a $
  *
  * Authors: Gildas Bazin <gbazin@netcourrier.com>
  *          Andre Pang <Andre.Pang@csiro.au> (Annodex support)
@@ -1488,7 +1488,6 @@ static int Ogg_FindLogicalStreams( demux_t *p_demux )
 {
     demux_sys_t *p_ogg = p_demux->p_sys  ;
     ogg_packet oggpacket;
-    int i_stream = 0;
 
     p_ogg->i_total_length = stream_Size ( p_demux->s );
     msg_Dbg( p_demux, "File length is %"PRId64" bytes", p_ogg->i_total_length );
@@ -1504,16 +1503,12 @@ static int Ogg_FindLogicalStreams( demux_t *p_demux )
              * We found the beginning of our first logical stream. */
             while( ogg_page_bos( &p_ogg->current_page ) )
             {
-                logical_stream_t *p_stream;
-
-                p_stream = malloc( sizeof(logical_stream_t) );
+                logical_stream_t *p_stream = calloc( 1, sizeof(logical_stream_t) );
                 if( unlikely( !p_stream ) )
                     return VLC_ENOMEM;
 
                 TAB_APPEND( p_ogg->i_streams, p_ogg->pp_stream, p_stream );
 
-                memset( p_stream, 0, sizeof(logical_stream_t) );
-
                 es_format_Init( &p_stream->fmt, 0, 0 );
                 es_format_Init( &p_stream->fmt_old, 0, 0 );
                 p_stream->b_initializing = true;
@@ -1545,6 +1540,7 @@ static int Ogg_FindLogicalStreams( demux_t *p_demux )
                     {
                         msg_Dbg( p_demux, "found invalid vorbis header" );
                         Ogg_LogicalStreamDelete( p_demux, p_stream );
+                        p_stream = NULL;
                         p_ogg->i_streams--;
                     }
                 }
@@ -1563,6 +1559,7 @@ static int Ogg_FindLogicalStreams( demux_t *p_demux )
                     {
                         msg_Dbg( p_demux, "found invalid Speex header" );
                         Ogg_LogicalStreamDelete( p_demux, p_stream );
+                        p_stream = NULL;
                         p_ogg->i_streams--;
                     }
                 }
@@ -1611,6 +1608,7 @@ static int Ogg_FindLogicalStreams( demux_t *p_demux )
                     {
                         msg_Dbg( p_demux, "found invalid Flac header" );
                         Ogg_LogicalStreamDelete( p_demux, p_stream );
+                        p_stream = NULL;
                         p_ogg->i_streams--;
                     }
                 }
@@ -1626,6 +1624,7 @@ static int Ogg_FindLogicalStreams( demux_t *p_demux )
                     {
                         msg_Dbg( p_demux, "found invalid Theora header" );
                         Ogg_LogicalStreamDelete( p_demux, p_stream );
+                        p_stream = NULL;
                         p_ogg->i_streams--;
                     }
                 }
@@ -1641,6 +1640,7 @@ static int Ogg_FindLogicalStreams( demux_t *p_demux )
                     {
                         msg_Warn( p_demux, "found dirac header isn't decodable" );
                         Ogg_LogicalStreamDelete( p_demux, p_stream );
+                        p_stream = NULL;
                         p_ogg->i_streams--;
                     }
                 }
@@ -1678,6 +1678,7 @@ static int Ogg_FindLogicalStreams( demux_t *p_demux )
                     {
                         msg_Dbg( p_demux, "invalid VP8 header found");
                         Ogg_LogicalStreamDelete( p_demux, p_stream );
+                        p_stream = NULL;
                         p_ogg->i_streams--;
                     }
                 }
@@ -1687,7 +1688,7 @@ static int Ogg_FindLogicalStreams( demux_t *p_demux )
                 {
                     Ogg_ReadAnnodexHeader( p_demux, p_stream, &oggpacket );
                     /* kill annodex track */
-                    free( p_stream );
+                    FREENULL( p_stream );
                     p_ogg->i_streams--;
                 }
                 /* Check for Annodex header */
@@ -1706,6 +1707,7 @@ static int Ogg_FindLogicalStreams( demux_t *p_demux )
                     {
                         msg_Dbg( p_demux, "invalid kate header found");
                         Ogg_LogicalStreamDelete( p_demux, p_stream );
+                        p_stream = NULL;
                         p_ogg->i_streams--;
                     }
                 }
@@ -1811,6 +1813,7 @@ static int Ogg_FindLogicalStreams( demux_t *p_demux )
                         {
                             msg_Dbg( p_demux, "invalid oggds audio header" );
                             Ogg_LogicalStreamDelete( p_demux, p_stream );
+                            p_stream = NULL;
                             p_ogg->i_streams--;
                         }
                     }
@@ -1818,7 +1821,7 @@ static int Ogg_FindLogicalStreams( demux_t *p_demux )
                     {
                         msg_Dbg( p_demux, "stream %d has an old header "
                             "but is of an unknown type", p_ogg->i_streams-1 );
-                        free( p_stream );
+                        FREENULL( p_stream );
                         p_ogg->i_streams--;
                     }
                 }
@@ -1941,6 +1944,7 @@ static int Ogg_FindLogicalStreams( demux_t *p_demux )
                         {
                             msg_Dbg( p_demux, "invalid oggds audio header" );
                             Ogg_LogicalStreamDelete( p_demux, p_stream );
+                            p_stream = NULL;
                             p_ogg->i_streams--;
                         }
                     }
@@ -1959,7 +1963,7 @@ static int Ogg_FindLogicalStreams( demux_t *p_demux )
                     {
                         msg_Dbg( p_demux, "stream %d has a header marker "
                             "but is of an unknown type", p_ogg->i_streams-1 );
-                        free( p_stream );
+                        FREENULL( p_stream );
                         p_ogg->i_streams--;
                     }
                 }
@@ -1976,12 +1980,13 @@ static int Ogg_FindLogicalStreams( demux_t *p_demux )
                 {
                     msg_Dbg( p_demux, "stream %d is of unknown type",
                              p_ogg->i_streams-1 );
-                    free( p_stream );
+                    FREENULL( p_stream );
                     p_ogg->i_streams--;
                 }
 
                 /* we'll need to get all headers */
-                p_ogg->pp_stream[i_stream]->b_initializing &= p_ogg->pp_stream[i_stream]->b_force_backup;
+                if ( p_stream )
+                    p_stream->b_initializing &= p_stream->b_force_backup;
 
                 if( Ogg_ReadPage( p_demux, &p_ogg->current_page ) != VLC_SUCCESS )
                     return VLC_EGENERIC;
@@ -1990,7 +1995,7 @@ static int Ogg_FindLogicalStreams( demux_t *p_demux )
             /* This is the first data page, which means we are now finished
              * with the initial pages. We just need to store it in the relevant
              * bitstream. */
-            for( i_stream = 0; i_stream < p_ogg->i_streams; i_stream++ )
+            for( int i_stream = 0; i_stream < p_ogg->i_streams; i_stream++ )
             {
                 if( ogg_stream_pagein( &p_ogg->pp_stream[i_stream]->os,
                                        &p_ogg->current_page ) == 0 )
diff --git a/modules/demux/ps.h b/modules/demux/ps.h
index 7f3b209..8fc95eb 100644
--- a/modules/demux/ps.h
+++ b/modules/demux/ps.h
@@ -2,7 +2,7 @@
  * ps.h: Program Stream demuxer helper
  *****************************************************************************
  * Copyright (C) 2004-2009 VLC authors and VideoLAN
- * $Id: cd7d547a838754683421cc8b4dc02139513b2c0f $
+ * $Id: ab2d0db1a2b7a33886f8dca75c43b3bc79136d28 $
  *
  * Authors: Laurent Aimar <fenrir@via.ecp.fr>
  *
@@ -190,6 +190,12 @@ static inline int ps_track_fill( ps_track_t *tk, ps_psm_t *p_psm, int i_id )
         {
             es_format_Init( &tk->fmt, AUDIO_ES, VLC_CODEC_MPGA );
         }
+        else if( i_id == 0xe2 || /* Primary H.264 in evob */
+                 i_id == 0xe3 )  /* Seconday H.264 in evob */
+        {
+                es_format_Init( &tk->fmt, VIDEO_ES, VLC_CODEC_H264 );
+        }
+
 
         if( tk->fmt.i_cat == UNKNOWN_ES && ( i_id&0xf0 ) == 0xe0 )
         {
diff --git a/modules/demux/tta.c b/modules/demux/tta.c
index 392bb64..1f96bdd 100644
--- a/modules/demux/tta.c
+++ b/modules/demux/tta.c
@@ -2,7 +2,7 @@
  * tta.c : The Lossless True Audio parser
  *****************************************************************************
  * Copyright (C) 2006 VLC authors and VideoLAN
- * $Id: 606cb0743b6cf2ed5d5cfd04e54d2659f220d8ad $
+ * $Id: be48a9a52b3756bfc2db5e669f6820ddda5b69ef $
  *
  * Authors: Derk-Jan Hartman <hartman at videolan dot org>
  *
@@ -195,7 +195,7 @@ static int Demux( demux_t *p_demux )
     demux_sys_t *p_sys = p_demux->p_sys;
     block_t     *p_data;
 
-    if( p_sys->i_currentframe > p_sys->i_totalframes )
+    if( p_sys->i_currentframe >= p_sys->i_totalframes )
         return 0;
 
     p_data = stream_Block( p_demux->s, p_sys->pi_seektable[p_sys->i_currentframe] );
diff --git a/modules/hw/vdpau/deinterlace.c b/modules/hw/vdpau/deinterlace.c
index 44d7f25..f2abbdd 100644
--- a/modules/hw/vdpau/deinterlace.c
+++ b/modules/hw/vdpau/deinterlace.c
@@ -91,6 +91,7 @@ static picture_t *Deinterlace(filter_t *filter, picture_t *src)
     }
 
     src->b_progressive = true;
+    dst->b_progressive = true;
     return src;
 }
 
diff --git a/modules/video_chroma/swscale.c b/modules/video_chroma/swscale.c
index fb21d9a..f1a8c7e 100644
--- a/modules/video_chroma/swscale.c
+++ b/modules/video_chroma/swscale.c
@@ -2,7 +2,7 @@
  * swscale.c: scaling and chroma conversion using libswscale
  *****************************************************************************
  * Copyright (C) 1999-2008 VLC authors and VideoLAN
- * $Id: 7d6faf61d9a8aa80650b1e4bdf5ee46b6df6b956 $
+ * $Id: 1f3236239998b64fb9001b15e684607071cbaa9b $
  *
  * Authors: Laurent Aimar <fenrir@via.ecp.fr>
  *          Gildas Bazin <gbazin@videolan.org>
@@ -340,6 +340,8 @@ static int GetParameters( ScalerConfiguration *p_cfg,
         p_cfg->b_has_a = b_has_ai && b_has_ao;
         p_cfg->b_add_a = (!b_has_ai) && b_has_ao;
         p_cfg->b_copy = i_fmti == i_fmto &&
+                        p_fmti->i_width == p_fmto->i_width &&
+                        p_fmti->i_height == p_fmto->i_height &&
                         p_fmti->i_visible_width == p_fmto->i_visible_width &&
                         p_fmti->i_visible_height == p_fmto->i_visible_height;
         p_cfg->b_swap_uvi = b_swap_uvi;
@@ -387,21 +389,40 @@ static int Init( filter_t *p_filter )
         return VLC_EGENERIC;
     }
 
+    unsigned iwidth = (p_fmti->i_visible_width * p_fmto->i_width)
+                      / p_fmto->i_visible_width;
+    unsigned iheight = (p_fmti->i_visible_height * p_fmto->i_height)
+                       / p_fmto->i_visible_height;
+    unsigned owidth = (p_fmto->i_visible_width * p_fmti->i_width)
+                      / p_fmti->i_visible_width;
+    unsigned oheight = (p_fmto->i_visible_height * p_fmti->i_height)
+                       / p_fmti->i_visible_height;
+
+    if( owidth > p_fmto->i_width )
+        owidth = p_fmto->i_width;
+    else
+        iwidth = p_fmti->i_width;
+    if( oheight > p_fmto->i_height )
+        oheight = p_fmto->i_height;
+    else
+        iheight = p_fmti->i_height;
+
     /* swscale does not like too small width */
     p_sys->i_extend_factor = 1;
-    while( __MIN( p_fmti->i_visible_width, p_fmto->i_visible_width ) * p_sys->i_extend_factor < MINIMUM_WIDTH)
+    while( __MIN( p_fmti->i_width, p_fmto->i_width ) * p_sys->i_extend_factor < MINIMUM_WIDTH)
         p_sys->i_extend_factor++;
 
-    const unsigned i_fmti_visible_width = p_fmti->i_visible_width * p_sys->i_extend_factor;
-    const unsigned i_fmto_visible_width = p_fmto->i_visible_width * p_sys->i_extend_factor;
+    iwidth *= p_sys->i_extend_factor;
+    owidth *= p_sys->i_extend_factor;
+
     for( int n = 0; n < (cfg.b_has_a ? 2 : 1); n++ )
     {
         const int i_fmti = n == 0 ? cfg.i_fmti : PIX_FMT_GRAY8;
         const int i_fmto = n == 0 ? cfg.i_fmto : PIX_FMT_GRAY8;
         struct SwsContext *ctx;
 
-        ctx = sws_getContext( i_fmti_visible_width, p_fmti->i_visible_height, i_fmti,
-                              i_fmto_visible_width, p_fmto->i_visible_height, i_fmto,
+        ctx = sws_getContext( iwidth, iheight, i_fmti,
+                              owidth, oheight, i_fmto,
                               cfg.i_sws_flags | p_sys->i_cpu_mask,
                               p_sys->p_src_filter, p_sys->p_dst_filter, 0 );
         if( n == 0 )
@@ -411,13 +432,13 @@ static int Init( filter_t *p_filter )
     }
     if( p_sys->ctxA )
     {
-        p_sys->p_src_a = picture_New( VLC_CODEC_GREY, i_fmti_visible_width, p_fmti->i_visible_height, 0, 1 );
-        p_sys->p_dst_a = picture_New( VLC_CODEC_GREY, i_fmto_visible_width, p_fmto->i_visible_height, 0, 1 );
+        p_sys->p_src_a = picture_New( VLC_CODEC_GREY, iwidth, iheight, 0, 1 );
+        p_sys->p_dst_a = picture_New( VLC_CODEC_GREY, owidth, oheight, 0, 1 );
     }
     if( p_sys->i_extend_factor != 1 )
     {
-        p_sys->p_src_e = picture_New( p_fmti->i_chroma, i_fmti_visible_width, p_fmti->i_visible_height, 0, 1 );
-        p_sys->p_dst_e = picture_New( p_fmto->i_chroma, i_fmto_visible_width, p_fmto->i_visible_height, 0, 1 );
+        p_sys->p_src_e = picture_New( p_fmti->i_chroma, iwidth, iheight, 0, 1 );
+        p_sys->p_dst_e = picture_New( p_fmto->i_chroma, owidth, oheight, 0, 1 );
 
         if( p_sys->p_src_e )
             memset( p_sys->p_src_e->p[0].p_pixels, 0, p_sys->p_src_e->p[0].i_pitch * p_sys->p_src_e->p[0].i_lines );
@@ -645,23 +666,24 @@ static picture_t *Filter( filter_t *p_filter, picture_t *p_pic )
     else if( p_sys->b_copy )
         SwapUV( p_dst, p_src );
     else
-        Convert( p_filter, p_sys->ctx, p_dst, p_src, p_fmti->i_visible_height, 0, 3,
+        Convert( p_filter, p_sys->ctx, p_dst, p_src, p_fmti->i_height, 0, 3,
                  p_sys->b_swap_uvi, p_sys->b_swap_uvo );
     if( p_sys->ctxA )
     {
         /* We extract the A plane to rescale it, and then we reinject it. */
         if( p_fmti->i_chroma == VLC_CODEC_RGBA || p_fmti->i_chroma == VLC_CODEC_BGRA )
-            ExtractA( p_sys->p_src_a, p_src, p_fmti->i_visible_width * p_sys->i_extend_factor, p_fmti->i_visible_height, OFFSET_A );
+            ExtractA( p_sys->p_src_a, p_src, p_fmti->i_width * p_sys->i_extend_factor, p_fmti->i_height, OFFSET_A );
         else if( p_fmti->i_chroma == VLC_CODEC_ARGB )
-            ExtractA( p_sys->p_src_a, p_src, p_fmti->i_visible_width * p_sys->i_extend_factor, p_fmti->i_visible_height, 0 );
+            ExtractA( p_sys->p_src_a, p_src, p_fmti->i_width * p_sys->i_extend_factor, p_fmti->i_height, 0 );
         else
             plane_CopyPixels( p_sys->p_src_a->p, p_src->p+A_PLANE );
 
-        Convert( p_filter, p_sys->ctxA, p_sys->p_dst_a, p_sys->p_src_a, p_fmti->i_visible_height, 0, 1, false, false );
+        Convert( p_filter, p_sys->ctxA, p_sys->p_dst_a, p_sys->p_src_a,
+                 p_fmti->i_height, 0, 1, false, false );
         if( p_fmto->i_chroma == VLC_CODEC_RGBA || p_fmto->i_chroma == VLC_CODEC_BGRA )
-            InjectA( p_dst, p_sys->p_dst_a, p_fmto->i_visible_width * p_sys->i_extend_factor, p_fmto->i_visible_height, OFFSET_A );
+            InjectA( p_dst, p_sys->p_dst_a, p_fmto->i_width * p_sys->i_extend_factor, p_fmto->i_height, OFFSET_A );
         else if( p_fmto->i_chroma == VLC_CODEC_ARGB )
-            InjectA( p_dst, p_sys->p_dst_a, p_fmto->i_visible_width * p_sys->i_extend_factor, p_fmto->i_visible_height, 0 );
+            InjectA( p_dst, p_sys->p_dst_a, p_fmto->i_width * p_sys->i_extend_factor, p_fmto->i_height, 0 );
         else
             plane_CopyPixels( p_dst->p+A_PLANE, p_sys->p_dst_a->p );
     }
diff --git a/modules/video_output/caca.c b/modules/video_output/caca.c
index c3fd71a..75c83e6 100644
--- a/modules/video_output/caca.c
+++ b/modules/video_output/caca.c
@@ -2,7 +2,7 @@
  * caca.c: Color ASCII Art "vout display" module using libcaca
  *****************************************************************************
  * Copyright (C) 2003-2009 VLC authors and VideoLAN
- * $Id: 2958abd9a6d431bc4f1a5d5560e9853d361577cc $
+ * $Id: 4b39e455d026edc51588a5793493a824103645e3 $
  *
  * Authors: Sam Hocevar <sam@zoy.org>
  *          Laurent Aimar <fenrir _AT_ videolan _DOT_ org>
@@ -331,7 +331,7 @@ static int Control(vout_display_t *vd, int query, va_list args)
     case VOUT_DISPLAY_CHANGE_ZOOM:
     case VOUT_DISPLAY_CHANGE_DISPLAY_FILLED:
     case VOUT_DISPLAY_CHANGE_SOURCE_ASPECT:
-        return VLC_SUCCESS;
+        return VLC_EGENERIC;
 
     case VOUT_DISPLAY_CHANGE_SOURCE_CROP:
         if (sys->dither)
diff --git a/modules/video_output/msw/win32touch.c b/modules/video_output/msw/win32touch.c
index 704a99c..122af40 100644
--- a/modules/video_output/msw/win32touch.c
+++ b/modules/video_output/msw/win32touch.c
@@ -150,7 +150,7 @@ LRESULT DecodeGesture( vlc_object_t *p_this, win32_gesture_sys_t *p_gesture,
                         }
                         break;
                     default:
-                        msg_Err( p_this, "Unmanaged dwFlag: %i", gi.dwFlags );
+                        msg_Err( p_this, "Unmanaged dwFlag: %lx", gi.dwFlags );
                 }
                 bHandled = TRUE;
                 break;
diff --git a/src/revision.c b/src/revision.c
index c614504..16c28ed 100644
--- a/src/revision.c
+++ b/src/revision.c
@@ -1 +1 @@
-const char psz_vlc_changeset[] = "2.2.0-pre3-104-g836a443";
+const char psz_vlc_changeset[] = "2.2.0-pre4-97-g8a35de1";
diff --git a/src/revision.txt b/src/revision.txt
index 0847bc7..5e7f672 100644
--- a/src/revision.txt
+++ b/src/revision.txt
@@ -1 +1 @@
-2.2.0-pre3-104-g836a443
+2.2.0-pre4-97-g8a35de1
diff --git a/src/video_output/video_output.c b/src/video_output/video_output.c
index d6e2172..5131382 100644
--- a/src/video_output/video_output.c
+++ b/src/video_output/video_output.c
@@ -6,7 +6,7 @@
  * thread, and destroy a previously oppened video output thread.
  *****************************************************************************
  * Copyright (C) 2000-2007 VLC authors and VideoLAN
- * $Id: 2dd43f4c5c4bd8566b3bbf8c92d4b0e948c42980 $
+ * $Id: 1b01ee08d8579469179f491da817821c46d48374 $
  *
  * Authors: Vincent Seguin <seguin@via.ecp.fr>
  *          Gildas Bazin <gbazin@videolan.org>
@@ -1452,8 +1452,17 @@ static int ThreadReinit(vout_thread_t *vout,
     }
     state.sar.num = 0;
     state.sar.den = 0;
+
     /* FIXME current vout "variables" are not in sync here anymore
      * and I am not sure what to do */
+    if (state.cfg.display.sar.num <= 0 || state.cfg.display.sar.den <= 0) {
+        state.cfg.display.sar.num = 1;
+        state.cfg.display.sar.den = 1;
+    }
+    if (state.cfg.zoom.num <= 0 || state.cfg.zoom.den <= 0) {
+        state.cfg.zoom.num = 1;
+        state.cfg.zoom.den = 1;
+    }
 
     vout->p->original = original;
     vout->p->dpb_size = cfg->dpb_size;

Attachment: signature.asc
Description: Digital signature


--- End Message ---
--- Begin Message ---
On 07/11/14 17:46, Sebastian Ramacher wrote:
On 2014-11-07 16:13:47, Emilio Pozuelo Monfort wrote:
Control: tags -1 confirmed

On 03/11/14 19:51, Sebastian Ramacher wrote:
Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock

I'd like to upload vlc 2.2.0~rc-1 to unstable for inclusion in jessie
after 2.2.0~pre4-2 migrated. This is request to pre-approve the changes
between 2.2.0~pre4-2 and vlc 2.2.0~rc-1.

2.2.0~rc1 is a bug fix and translation update release if one ignores all
the noise coming from Mac OS X, Windows and OS/2 only changes. It
includes fixes for plenty of heap buffer overflows ([1], [2], [3], [4],
[5] and probably more). I'd prefer to update vlc to this upstream
release instead of backporting those fixed to 2.2.0~pre4.

2.2.0~rc1 now also correctly builds and installs the sftp access plugin.
debian/vlc-nox.install.in has been changed accordingly.

Please find attached a filtered debdiff against 2.2.0~pre4-2 with
diffstat

While the diff is big, the filtered diff looks reasonable, and this is a
security sensitive package so I think it would be good to stay aligned with
upstream while possible (especially so we don't ship a beta). So, approved,
but please use urgency=low. Let us know when your package is accepted.

Thank you, uploaded with urgency=low and accepted.

Unblocked.

Emilio

--- End Message ---

Reply to: