Revision: 29759
http://xbmc.svn.sourceforge.net/xbmc/?rev=29759&view=rev
Author: alwinus
Date: 2010-05-03 19:37:41 +0000 (Mon, 03 May 2010)
Log Message:
-----------
merged: changes from trunk. revs: r29723:29758
Modified Paths:
--------------
branches/pvr-testing2/Makefile.in
branches/pvr-testing2/XBMC.xcodeproj/project.pbxproj
branches/pvr-testing2/configure.in
branches/pvr-testing2/guilib/GUIBaseContainer.cpp
branches/pvr-testing2/web/poc_jsonrpc/albums.html
branches/pvr-testing2/web/poc_jsonrpc/artists.html
branches/pvr-testing2/web/poc_jsonrpc/movies.html
branches/pvr-testing2/web/poc_jsonrpc/nowplaying.html
branches/pvr-testing2/web/poc_jsonrpc/tvshowepisodes.html
branches/pvr-testing2/web/poc_jsonrpc/tvshows.html
branches/pvr-testing2/web/poc_jsonrpc/tvshowseasons.html
branches/pvr-testing2/xbmc/Application.cpp
branches/pvr-testing2/xbmc/Application.h
branches/pvr-testing2/xbmc/DllPaths_generated.h.in
branches/pvr-testing2/xbmc/IPowerSyscall.h
branches/pvr-testing2/xbmc/PowerManager.cpp
branches/pvr-testing2/xbmc/PowerManager.h
branches/pvr-testing2/xbmc/cores/VideoRenderers/BaseRenderer.h
branches/pvr-testing2/xbmc/cores/dvdplayer/Codecs/DllAvFormat.h
branches/pvr-testing2/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecVDA.cpp
branches/pvr-testing2/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecVDA.h
branches/pvr-testing2/xbmc/cores/dvdplayer/DVDCodecs/Video/DXVA.cpp
branches/pvr-testing2/xbmc/lib/libjsonrpc/FileOperations.cpp
branches/pvr-testing2/xbmc/linux/ConsoleDeviceKitPowerSyscall.cpp
branches/pvr-testing2/xbmc/linux/ConsoleDeviceKitPowerSyscall.h
branches/pvr-testing2/xbmc/linux/ConsoleUPowerSyscall.cpp
branches/pvr-testing2/xbmc/linux/ConsoleUPowerSyscall.h
branches/pvr-testing2/xbmc/linux/DeviceKitDisksProvider.cpp
branches/pvr-testing2/xbmc/linux/HALPowerSyscall.cpp
branches/pvr-testing2/xbmc/linux/HALPowerSyscall.h
branches/pvr-testing2/xbmc/linux/UDisksProvider.cpp
branches/pvr-testing2/xbmc/osx/CocoaPowerSyscall.cpp
branches/pvr-testing2/xbmc/osx/CocoaPowerSyscall.h
branches/pvr-testing2/xbmc/osx/SDLMain.mm
branches/pvr-testing2/xbmc/utils/WebServer.cpp
branches/pvr-testing2/xbmc/win32/Win32PowerSyscall.cpp
branches/pvr-testing2/xbmc/win32/Win32PowerSyscall.h
Property Changed:
----------------
branches/pvr-testing2/
branches/pvr-testing2/addons/
branches/pvr-testing2/addons/cn.1ting.scraper/
branches/pvr-testing2/addons/com.1ting.scraper/
branches/pvr-testing2/addons/com.7176.scraper/
branches/pvr-testing2/addons/com.amazon.scraper.uk/
branches/pvr-testing2/addons/com.freebase.scraper/
branches/pvr-testing2/addons/com.getlib.scraper/
branches/pvr-testing2/addons/com.imdb.scraper/
branches/pvr-testing2/addons/com.imdb.scraper.common/
branches/pvr-testing2/addons/com.impa.scraper.common/
branches/pvr-testing2/addons/com.m1905.scraper/
branches/pvr-testing2/addons/com.movieposterdb.scraper.common/
branches/pvr-testing2/addons/com.mtime.scraper/
branches/pvr-testing2/addons/com.mtv.scraper/
branches/pvr-testing2/addons/com.yahoo.music.scraper/
branches/pvr-testing2/addons/de.cinefacts.scraper/
branches/pvr-testing2/addons/de.filmstarts.scraper/
branches/pvr-testing2/addons/de.kino.scraper/
branches/pvr-testing2/addons/de.moviemaze.scraper/
branches/pvr-testing2/addons/de.ofdb.scraper/
branches/pvr-testing2/addons/de.videobuster.scraper/
branches/pvr-testing2/addons/fm.last.scraper/
branches/pvr-testing2/addons/fr.cine-passion.scraper/
branches/pvr-testing2/addons/metadata.allmusic.com/
branches/pvr-testing2/addons/metadata.common.allmusic.com/
branches/pvr-testing2/addons/metadata.common.discogs.com/
branches/pvr-testing2/addons/metadata.common.dtrailer.com/
branches/pvr-testing2/addons/metadata.common.htbackdrops.com/
branches/pvr-testing2/addons/metadata.common.last.fm/
branches/pvr-testing2/addons/metadata.common.themoviedb.org/
branches/pvr-testing2/addons/metadata.themoviedb.org/
branches/pvr-testing2/addons/metadata.tvdb.com/
branches/pvr-testing2/addons/org.xbmc.addon.library/
branches/pvr-testing2/addons/org.xbmc.gui.library/
branches/pvr-testing2/addons/org.xbmc.pvr.library/
branches/pvr-testing2/addons/pvr.hts/
branches/pvr-testing2/addons/pvr.team-mediaportal.tvserver/
branches/pvr-testing2/addons/pvr.vdr.streamdev/
branches/pvr-testing2/addons/pvr.vdr.vnsi/
branches/pvr-testing2/addons/screensaver.rsxs.euphoria/
branches/pvr-testing2/addons/screensaver.rsxs.plasma/
branches/pvr-testing2/addons/screensaver.rsxs.solarwinds/
branches/pvr-testing2/addons/skin.confluence/
branches/pvr-testing2/addons/skin.pm3-hd/
branches/pvr-testing2/addons/skin.pm3-hd/HomeSystemIcon Licence.txt
branches/pvr-testing2/addons/visualization.dxspectrum/
branches/pvr-testing2/addons/visualization.glspectrum/
branches/pvr-testing2/addons/visualization.itunes/
branches/pvr-testing2/addons/visualization.milkdrop/
branches/pvr-testing2/addons/visualization.waveform/
branches/pvr-testing2/guilib/GUIControlFactory.cpp
branches/pvr-testing2/guilib/GUIControlFactory.h
branches/pvr-testing2/guilib/GUIImage.cpp
branches/pvr-testing2/guilib/GUIImage.h
branches/pvr-testing2/xbmc/MusicInfoTag.cpp
branches/pvr-testing2/xbmc/MusicInfoTagLoaderFactory.cpp
branches/pvr-testing2/xbmc/MusicInfoTagLoaderFactory.h
branches/pvr-testing2/xbmc/addons/
branches/pvr-testing2/xbmc/cores/AudioRenderers/IAudioCallback.h
branches/pvr-testing2/xbmc/cores/AudioRenderers/IAudioRenderer.h
branches/pvr-testing2/xbmc/cores/AudioRenderers/Win32DirectSound.cpp
branches/pvr-testing2/xbmc/cores/AudioRenderers/Win32DirectSound.h
branches/pvr-testing2/xbmc/cores/dvdplayer/Codecs/ffmpeg/
branches/pvr-testing2/xbmc/cores/dvdplayer/Codecs/ffmpeg/ffpresets/
branches/pvr-testing2/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavcodec/arm/
branches/pvr-testing2/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavformat/asfenc.c
branches/pvr-testing2/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/arm/
branches/pvr-testing2/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/bfin/
branches/pvr-testing2/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/sh4/
branches/pvr-testing2/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/x86/
branches/pvr-testing2/xbmc/cores/dvdplayer/Edl.cpp
branches/pvr-testing2/xbmc/cores/dvdplayer/Edl.h
branches/pvr-testing2/xbmc/cores/paplayer/PAPlayer.cpp
branches/pvr-testing2/xbmc/cores/paplayer/PAPlayer.h
branches/pvr-testing2/xbmc/cores/playercorefactory/PlayerCoreConfig.h
branches/pvr-testing2/xbmc/cores/playercorefactory/PlayerCoreFactory.cpp
branches/pvr-testing2/xbmc/cores/playercorefactory/PlayerCoreFactory.h
branches/pvr-testing2/xbmc/cores/playercorefactory/PlayerSelectionRule.cpp
branches/pvr-testing2/xbmc/cores/playercorefactory/PlayerSelectionRule.h
branches/pvr-testing2/xbmc/karaoke/Cdg.cpp
branches/pvr-testing2/xbmc/karaoke/Cdg.h
branches/pvr-testing2/xbmc/linux/HALPowerSyscall.cpp
branches/pvr-testing2/xbmc/linux/HALPowerSyscall.h
branches/pvr-testing2/xbmc/visualizations/Goom/net.sf.goom.vis/
branches/pvr-testing2/xbmc/visualizations/XBMCProjectM/libprojectM/presets/
branches/pvr-testing2/xbmc/xbmc.cpp
Property changes on: branches/pvr-testing2
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/karaoke:16819-17295
/branches/linuxport/XBMC:20974-21045
/branches/timidityupdate:16561-16749
/branches/xbmc-zeroconf/XBMC:18852-18854
/trunk:23350-29722
/trunk/XBMC:18902
+ /branches/karaoke:16819-17295
/branches/linuxport/XBMC:20974-21045
/branches/timidityupdate:16561-16749
/branches/xbmc-zeroconf/XBMC:18852-18854
/trunk:23350-29758
/trunk/XBMC:18902
Modified: branches/pvr-testing2/Makefile.in
===================================================================
--- branches/pvr-testing2/Makefile.in 2010-05-03 19:02:56 UTC (rev 29758)
+++ branches/pvr-testing2/Makefile.in 2010-05-03 19:37:41 UTC (rev 29759)
@@ -545,8 +545,6 @@
@echo "Copying system files to $(prefix)/share/xbmc"
@# Arch independent files
@find addons language media scripts sounds userdata system -regextype posix-extended -type f -not -iregex ".*svn.*|.*\.so|.*\.dll|.*\.pyd|.*python/.*\.zlib" -exec install -D -m 0644 "{}" $(prefix)/share/xbmc/"{}" \; -printf " -- %-75.75f\r"
- @# Skins
- @find skin -regextype posix-extended -type f -not -iregex '.*/\.svn/.*|^skin/[^/]*/media/.*[^x][^b][^t]' -exec install -D -m 0644 '{}' $(prefix)/share/xbmc/'{}' \; -printf " -- %-75.75f\r"
@# Icons and links
@mkdir -p $(prefix)/share/applications $(prefix)/share/pixmaps
@cp -a tools/Linux/xbmc.png $(prefix)/share/pixmaps/
Modified: branches/pvr-testing2/XBMC.xcodeproj/project.pbxproj
===================================================================
--- branches/pvr-testing2/XBMC.xcodeproj/project.pbxproj 2010-05-03 19:02:56 UTC (rev 29758)
+++ branches/pvr-testing2/XBMC.xcodeproj/project.pbxproj 2010-05-03 19:37:41 UTC (rev 29759)
@@ -4368,10 +4368,10 @@
E37D5CB40D3023BB0081D327 /* osx */ = {
isa = PBXGroup;
children = (
+ F5EA04280F72EB88005C2EC5 /* SDLMain.mm */,
+ F5EA04E80F72F9CA005C2EC5 /* SDLMain.h */,
83A72B920FBC8DFF00171871 /* CoreAudio.cpp */,
83A72B930FBC8DFF00171871 /* CoreAudio.h */,
- F5EA04280F72EB88005C2EC5 /* SDLMain.mm */,
- F5EA04E80F72F9CA005C2EC5 /* SDLMain.h */,
F5EA05C00F733812005C2EC5 /* CocoaInterface.mm */,
F5EA05C30F73381A005C2EC5 /* CocoaInterface.h */,
F5EA02200F6DA85C005C2EC5 /* CocoaPowerSyscall.cpp */,
Property changes on: branches/pvr-testing2/addons
___________________________________________________________________
Modified: svn:mergeinfo
- /trunk/addons:26101-26104,26633-26634,26716-26717,26907-26908,28326-29722
+ /trunk/addons:26101-26104,26633-26634,26716-26717,26907-26908,28326-29722,29723-29758*
Property changes on: branches/pvr-testing2/addons/cn.1ting.scraper
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/cn.1ting.scraper:29723-29758
Property changes on: branches/pvr-testing2/addons/com.1ting.scraper
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/com.1ting.scraper:29723-29758
Property changes on: branches/pvr-testing2/addons/com.7176.scraper
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/com.7176.scraper:29723-29758
Property changes on: branches/pvr-testing2/addons/com.amazon.scraper.uk
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/com.amazon.scraper.uk:29723-29758
Property changes on: branches/pvr-testing2/addons/com.freebase.scraper
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/com.freebase.scraper:29723-29758
Property changes on: branches/pvr-testing2/addons/com.getlib.scraper
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/com.getlib.scraper:29723-29758
Property changes on: branches/pvr-testing2/addons/com.imdb.scraper
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/com.imdb.scraper:29723-29758
Property changes on: branches/pvr-testing2/addons/com.imdb.scraper.common
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/com.imdb.scraper.common:29723-29758
Property changes on: branches/pvr-testing2/addons/com.impa.scraper.common
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/com.impa.scraper.common:29723-29758
Property changes on: branches/pvr-testing2/addons/com.m1905.scraper
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/com.m1905.scraper:29723-29758
Property changes on: branches/pvr-testing2/addons/com.movieposterdb.scraper.common
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/com.movieposterdb.scraper.common:29723-29758
Property changes on: branches/pvr-testing2/addons/com.mtime.scraper
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/com.mtime.scraper:29723-29758
Property changes on: branches/pvr-testing2/addons/com.mtv.scraper
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/com.mtv.scraper:29723-29758
Property changes on: branches/pvr-testing2/addons/com.yahoo.music.scraper
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/com.yahoo.music.scraper:29723-29758
Property changes on: branches/pvr-testing2/addons/de.cinefacts.scraper
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/de.cinefacts.scraper:29723-29758
Property changes on: branches/pvr-testing2/addons/de.filmstarts.scraper
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/de.filmstarts.scraper:29723-29758
Property changes on: branches/pvr-testing2/addons/de.kino.scraper
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/de.kino.scraper:29723-29758
Property changes on: branches/pvr-testing2/addons/de.moviemaze.scraper
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/de.moviemaze.scraper:29723-29758
Property changes on: branches/pvr-testing2/addons/de.ofdb.scraper
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/de.ofdb.scraper:29723-29758
Property changes on: branches/pvr-testing2/addons/de.videobuster.scraper
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/de.videobuster.scraper:29723-29758
Property changes on: branches/pvr-testing2/addons/fm.last.scraper
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/fm.last.scraper:29723-29758
Property changes on: branches/pvr-testing2/addons/fr.cine-passion.scraper
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/fr.cine-passion.scraper:29723-29758
Property changes on: branches/pvr-testing2/addons/metadata.allmusic.com
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/metadata.allmusic.com:26101-26104,26633-26634,26716-26717,26907-26908,28326-29758
Property changes on: branches/pvr-testing2/addons/metadata.common.allmusic.com
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/metadata.common.allmusic.com:26101-26104,26633-26634,26716-26717,26907-26908,28326-29758
Property changes on: branches/pvr-testing2/addons/metadata.common.discogs.com
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/metadata.common.discogs.com:26101-26104,26633-26634,26716-26717,26907-26908,28326-29758
Property changes on: branches/pvr-testing2/addons/metadata.common.dtrailer.com
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/metadata.common.dtrailer.com:26101-26104,26633-26634,26716-26717,26907-26908,28326-29758
Property changes on: branches/pvr-testing2/addons/metadata.common.htbackdrops.com
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/metadata.common.htbackdrops.com:26101-26104,26633-26634,26716-26717,26907-26908,28326-29758
Property changes on: branches/pvr-testing2/addons/metadata.common.last.fm
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/metadata.common.last.fm:26101-26104,26633-26634,26716-26717,26907-26908,28326-29758
Property changes on: branches/pvr-testing2/addons/metadata.common.themoviedb.org
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/metadata.common.themoviedb.org:26101-26104,26633-26634,26716-26717,26907-26908,28326-29758
Property changes on: branches/pvr-testing2/addons/metadata.themoviedb.org
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/metadata.themoviedb.org:26101-26104,26633-26634,26716-26717,26907-26908,28326-29758
Property changes on: branches/pvr-testing2/addons/metadata.tvdb.com
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/metadata.tvdb.com:26101-26104,26633-26634,26716-26717,26907-26908,28326-29758
Property changes on: branches/pvr-testing2/addons/org.xbmc.addon.library
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/org.xbmc.addon.library:29723-29758
Property changes on: branches/pvr-testing2/addons/org.xbmc.gui.library
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/org.xbmc.gui.library:29723-29758
Property changes on: branches/pvr-testing2/addons/org.xbmc.pvr.library
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/org.xbmc.pvr.library:29723-29758
Property changes on: branches/pvr-testing2/addons/pvr.hts
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/pvr.hts:29723-29758
Property changes on: branches/pvr-testing2/addons/pvr.team-mediaportal.tvserver
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/pvr.team-mediaportal.tvserver:29723-29758
Property changes on: branches/pvr-testing2/addons/pvr.vdr.streamdev
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/pvr.vdr.streamdev:29723-29758
Property changes on: branches/pvr-testing2/addons/pvr.vdr.vnsi
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/pvr.vdr.vnsi:29723-29758
Property changes on: branches/pvr-testing2/addons/screensaver.rsxs.euphoria
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/screensaver.rsxs.euphoria:26101-26104,26633-26634,26716-26717,26907-26908,28326-29758
Property changes on: branches/pvr-testing2/addons/screensaver.rsxs.plasma
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/screensaver.rsxs.plasma:26101-26104,26633-26634,26716-26717,26907-26908,28326-29758
Property changes on: branches/pvr-testing2/addons/screensaver.rsxs.solarwinds
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/screensaver.rsxs.solarwinds:26101-26104,26633-26634,26716-26717,26907-26908,28326-29758
Property changes on: branches/pvr-testing2/addons/skin.confluence
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/skin.confluence:26101-26104,26633-26634,26716-26717,26907-26908,28326-29758
Property changes on: branches/pvr-testing2/addons/skin.pm3-hd
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/skin.pm3-hd:26101-26104,26633-26634,26716-26717,26907-26908,28326-29758
Property changes on: branches/pvr-testing2/addons/skin.pm3-hd/HomeSystemIcon Licence.txt
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/karaoke/skin/PM3.HD/HomeSytemIcon Licence.txt:16819-17295
/branches/timidityupdate/skin/PM3.HD/HomeSytemIcon Licence.txt:16561-16749
/branches/xbmc-zeroconf/XBMC/skin/PM3.HD/HomeSytemIcon Licence.txt:18852-18854
/trunk/XBMC/skin/PM3.HD/HomeSytemIcon Licence.txt:18902
+ /branches/karaoke/skin/PM3.HD/HomeSytemIcon Licence.txt:16819-17295
/branches/timidityupdate/skin/PM3.HD/HomeSytemIcon Licence.txt:16561-16749
/branches/xbmc-zeroconf/XBMC/skin/PM3.HD/HomeSytemIcon Licence.txt:18852-18854
/trunk/XBMC/skin/PM3.HD/HomeSytemIcon Licence.txt:18902
/trunk/addons/skin.pm3-hd/HomeSystemIcon Licence.txt:29723-29758
Property changes on: branches/pvr-testing2/addons/visualization.dxspectrum
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/visualization.dxspectrum:26101-26104,26633-26634,26716-26717,26907-26908,28326-29758
Property changes on: branches/pvr-testing2/addons/visualization.glspectrum
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/visualization.glspectrum:26101-26104,26633-26634,26716-26717,26907-26908,28326-29758
Property changes on: branches/pvr-testing2/addons/visualization.itunes
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/visualization.itunes:26101-26104,26633-26634,26716-26717,26907-26908,28326-29758
Property changes on: branches/pvr-testing2/addons/visualization.milkdrop
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/visualization.milkdrop:26101-26104,26633-26634,26716-26717,26907-26908,28326-29758
Property changes on: branches/pvr-testing2/addons/visualization.waveform
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/addons/visualization.waveform:26101-26104,26633-26634,26716-26717,26907-26908,28326-29758
Modified: branches/pvr-testing2/configure.in
===================================================================
--- branches/pvr-testing2/configure.in 2010-05-03 19:02:56 UTC (rev 29758)
+++ branches/pvr-testing2/configure.in 2010-05-03 19:37:41 UTC (rev 29759)
@@ -240,31 +240,31 @@
[AS_HELP_STRING([--enable-external-ffmpeg],
[enable use of external ffmpeg libraries (default is no) 'Linux only'])],
[use_external_ffmpeg=$enableval],
- [use_external_ffmpeg=no])
+ [use_external_ffmpeg=$use_external_libraries])
AC_ARG_ENABLE([external-liba52],
[AS_HELP_STRING([--enable-external-liba52],
[enable use of external liba52 library (default is no) 'Linux only'])],
[use_external_liba52=$enableval],
- [use_external_liba52=no])
+ [use_external_liba52=$use_external_libraries])
AC_ARG_ENABLE([external-libdts],
[AS_HELP_STRING([--enable-external-libdts],
[enable use of external libdts library (default is no) 'Linux only'])],
[use_external_libdts=$enableval],
- [use_external_libdts=no])
+ [use_external_libdts=$use_external_libraries])
AC_ARG_ENABLE([external-libass],
[AS_HELP_STRING([--enable-external-libass],
[enable use of external libass library (default is no) 'Linux only'])],
[use_external_libass=$enableval],
- [use_external_libass=no])
+ [use_external_libass=$use_external_libraries])
AC_ARG_ENABLE([external-python],
[AS_HELP_STRING([--enable-external-python],
[enable use of external python library (default is no) 'Linux only'])],
[use_external_python=$enableval],
- [use_external_python=no])
+ [use_external_python=$use_external_libraries])
### End of external library options
@@ -480,87 +480,32 @@
fi
# check for library basenames
-if test "$host_vendor" != "apple"; then
- # libcurl
- LIBCURL_BASENAME=$(gcc $CFLAGS -print-file-name=libcurl.so | \
- while read output; do objdump -p $output | \
- grep SONAME | \
- awk 'BEGIN { FS = " " } ; { print $2 }'; done)
- if [ -z "$LIBCURL_BASENAME" ]; then
- echo "Unable to determine basename of libcurl library"
+AC_DEFUN([XB_FIND_SONAME],
+[
+ AC_MSG_CHECKING([for lib$2 soname])
+ $1_SONAME=$( gcc -print-file-name=lib$2.so | \
+ while read output; do objdump -p $output | \
+ grep "SONAME" | \
+ sed -e 's/ \+SONAME \+//'; done 2> /dev/null )
+ if [[ -z "$$1_SONAME" ]]; then
+ AC_MSG_RESULT([no])
+ AC_MSG_ERROR([Unable to determine soname of lib$2 library])
+ else
+ AC_MSG_RESULT([$$1_SONAME])
+ AC_SUBST($1_SONAME)
fi
+])
- # libFLAC
- LIBFLAC_BASENAME=$(gcc $CFLAGS -print-file-name=libFLAC.so | \
- while read output; do objdump -p $output | \
- grep SONAME | \
- awk 'BEGIN { FS = " " } ; { print $2 }'; done)
- if [[ -z "$LIBFLAC_BASENAME" ]]; then
- AC_MSG_ERROR([Error occurred determining basename of libFLAC library])
- fi
-
- # libvorbisfile
- LIBVORBISFILE_BASENAME=$(gcc $CFLAGS -print-file-name=libvorbisfile.so | \
- while read output; do objdump -p $output | \
- grep SONAME | \
- awk 'BEGIN { FS = " " } ; { print $2 }'; done)
- if [[ -z "$LIBVORBISFILE_BASENAME" ]]; then
- AC_MSG_ERROR([Error occurred determining basename of libvorbisfile library])
- fi
-
- # libmodplug
- LIBMODPLUG_BASENAME=$(gcc $CFLAGS -print-file-name=libmodplug.so | \
- while read output; do objdump -p $output | \
- grep SONAME | \
- awk 'BEGIN { FS = " " } ; { print $2 }'; done)
- if [[ -z "$LIBMODPLUG_BASENAME" ]]; then
- AC_MSG_ERROR([Error occurred determining basename of libmodplug library])
- fi
-
- # libfaad
- LIBFAAD_BASENAME=$(gcc $CFLAGS -print-file-name=libfaad.so | \
- while read output; do objdump -p $output | \
- grep SONAME | \
- awk 'BEGIN { FS = " " } ; { print $2 }'; done)
- if [[ -z "$LIBFAAD_BASENAME" ]]; then
- AC_MSG_ERROR([Error occurred determining basename of libfaad library])
- fi
-
- # libmad
- LIBMAD_BASENAME=$(gcc $CFLAGS -print-file-name=libmad.so | \
- while read output; do objdump -p $output | \
- grep SONAME | \
- awk 'BEGIN { FS = " " } ; { print $2 }'; done)
- if [[ -z "$LIBMAD_BASENAME" ]]; then
- AC_MSG_ERROR([Error occurred determining basename of libmad library])
- fi
-
- # libogg
- LIBOGG_BASENAME=$(gcc $CFLAGS -print-file-name=libogg.so | \
- while read output; do objdump -p $output | \
- grep SONAME | \
- awk 'BEGIN { FS = " " } ; { print $2 }'; done)
- if [[ -z "$LIBOGG_BASENAME" ]]; then
- AC_MSG_ERROR([Error occurred determining basename of libogg library])
- fi
-
- # libvorbisenc
- LIBVORBISENC_BASENAME=$(gcc $CFLAGS -print-file-name=libvorbisenc.so | \
- while read output; do objdump -p $output | \
- grep SONAME | \
- awk 'BEGIN { FS = " " } ; { print $2 }'; done)
- if [[ -z "$LIBVORBISENC_BASENAME" ]]; then
- AC_MSG_ERROR([Error occurred determining basename of libvorbisenc library])
- fi
-
- # libvorbis
- LIBVORBIS_BASENAME=$(gcc $CFLAGS -print-file-name=libvorbis.so | \
- while read output; do objdump -p $output | \
- grep SONAME | \
- awk 'BEGIN { FS = " " } ; { print $2 }'; done)
- if [[ -z "$LIBVORBIS_BASENAME" ]]; then
- AC_MSG_ERROR([Error occurred determining basename of libvorbis library])
- fi
+if test "$host_vendor" != "apple"; then
+ XB_FIND_SONAME([CURL], [curl])
+ XB_FIND_SONAME([FLAC], [FLAC])
+ XB_FIND_SONAME([VORBISFILE], [vorbisfile])
+ XB_FIND_SONAME([MODPLUG], [modplug])
+ XB_FIND_SONAME([FAAD], [faad])
+ XB_FIND_SONAME([MAD], [mad])
+ XB_FIND_SONAME([OGG], [ogg])
+ XB_FIND_SONAME([VORBISENC], [vorbisenc])
+ XB_FIND_SONAME([VORBIS], [vorbis])
fi
# PulseAudio
@@ -635,17 +580,8 @@
fi
### External libraries checks
-if test "$use_external_libraries" = "yes"; then
- AC_MSG_NOTICE($external_libraries_enabled)
- USE_EXTERNAL_LIBRARIES=1
- AC_DEFINE([USE_EXTERNAL_LIBRARIES], [1], [Whether to use external libraries.])
-else
- AC_MSG_NOTICE($external_libraries_disabled)
- USE_EXTERNAL_LIBRARIES=0
-fi
-
# External FFmpeg
-if test "$use_external_libraries" = "yes" || test "$use_external_ffmpeg" = "yes"; then
+if test "$use_external_ffmpeg" = "yes"; then
AC_CHECK_LIB([avcodec], [main],, AC_MSG_ERROR($missing_library))
AC_CHECK_LIB([avformat], [main],, AC_MSG_ERROR($missing_library))
AC_CHECK_LIB([avutil], [main],, AC_MSG_ERROR($missing_library))
@@ -694,7 +630,7 @@
fi
# External liba52
-if test "$use_external_libraries" = "yes" || test "$use_external_liba52" = "yes"; then
+if test "$use_external_liba52" = "yes"; then
AC_CHECK_LIB([a52], [main],, AC_MSG_ERROR($missing_library))
AC_MSG_NOTICE($external_liba52_enabled)
@@ -706,7 +642,7 @@
fi
# External libdts
-if test "$use_external_libraries" = "yes" || test "$use_external_libdts" = "yes"; then
+if test "$use_external_libdts" = "yes"; then
AC_CHECK_LIB([dts], [main],, AC_MSG_ERROR($missing_library))
AC_MSG_NOTICE($external_libdts_enabled)
@@ -718,7 +654,7 @@
fi
# External libass
-if test "$use_external_libraries" = "yes" || test "$use_external_libass" = "yes"; then
+if test "$use_external_libass" = "yes"; then
# We need libass >= 0.9.7.
AC_CHECK_LIB([ass], [ass_set_message_cb],
[AC_CHECK_LIB([ass], [main],,)
@@ -733,18 +669,18 @@
fi
# External Python
-if test "$use_external_libraries" = "yes" || test "$use_external_python" = "yes"; then
+if test "$use_external_python" = "yes"; then
AC_CHECK_LIB([python2.6], [main],
[AC_DEFINE([HAVE_LIBPYTHON2_6], [1],
- [Define to 1 if you have the `python2.6' library.])
+ [Define to 1 if you have the 'python2.6' library.])
USE_PYTHON2_6=1],
[AC_CHECK_LIB([python2.5], [main],
[AC_DEFINE([HAVE_LIBPYTHON2_5], [1],
- [Define to 1 if you have the `python2.5' library.])
+ [Define to 1 if you have the 'python2.5' library.])
USE_PYTHON2_5=1],
[AC_CHECK_LIB([python2.4], [main],
[AC_DEFINE([HAVE_LIBPYTHON2_4], [1],
- [Define to 1 if you have the `python2.4' library.])
+ [Define to 1 if you have the 'python2.4' library.])
USE_PYTHON2_4=1],
[AC_MSG_ERROR($missing_library)] )] )] )
@@ -796,7 +732,7 @@
# CrystalHD
if test "$use_crystalhd" = "yes"; then
AC_CHECK_HEADER([libcrystalhd/libcrystalhd_if.h],AC_DEFINE([HAVE_LIBCRYSTALHD], [],
- [Define to 1 if you have the `Broadcom Crystal HD' library.]),
+ [Define to 1 if you have the 'Broadcom Crystal HD' library.]),
use_crystalhd=no;AC_MSG_RESULT($crystalhd_not_found), [#define __LINUX_USER__])
else
AC_MSG_NOTICE($crystalhd_disabled)
@@ -806,7 +742,7 @@
if test "$host_vendor" = "apple" ; then
if test "$use_vdadecoder" = "yes"; then
HAVE_LIBVDADECODER=1
- AC_DEFINE([HAVE_LIBVDADECODER], [1], [Define to 1 if you have the `VDADecoder' library.])
+ AC_DEFINE([HAVE_LIBVDADECODER], [1], [Define to 1 if you have the 'VDADecoder' library.])
AC_MSG_NOTICE($vdadecoder_enabled)
else
use_vdadecoder ="no"
@@ -1145,36 +1081,31 @@
fi
### External libraries messages
-if test "$use_external_libraries" = "yes"; then
- final_message="$final_message\n External Libraries:\tYes"
+if test "$use_external_ffmpeg" = "yes"; then
+ final_message="$final_message\n External FFmpeg:\tYes"
else
- final_message="$final_message\n External Libraries:\tNo"
- if test "$use_external_ffmpeg" = "yes"; then
- final_message="$final_message\n External FFmpeg:\tYes"
- else
- final_message="$final_message\n External FFmpeg:\tNo"
- fi
- if test "$use_external_liba52" = "yes"; then
- final_message="$final_message\n External liba52:\tYes"
- else
- final_message="$final_message\n External liba52:\tNo"
- fi
- if test "$use_external_libdts" = "yes"; then
- final_message="$final_message\n External libdts:\tYes"
- else
- final_message="$final_message\n External libdts:\tNo"
- fi
- if test "$use_external_libass" = "yes"; then
- final_message="$final_message\n External libass:\tYes"
- else
- final_message="$final_message\n External libass:\tNo"
- fi
- if test "$use_external_python" = "yes"; then
- final_message="$final_message\n External Python:\tYes"
- else
- final_message="$final_message\n External Python:\tNo"
- fi
+ final_message="$final_message\n External FFmpeg:\tNo"
fi
+if test "$use_external_liba52" = "yes"; then
+ final_message="$final_message\n External liba52:\tYes"
+else
+ final_message="$final_message\n External liba52:\tNo"
+fi
+if test "$use_external_libdts" = "yes"; then
+ final_message="$final_message\n External libdts:\tYes"
+else
+ final_message="$final_message\n External libdts:\tNo"
+fi
+if test "$use_external_libass" = "yes"; then
+ final_message="$final_message\n External libass:\tYes"
+else
+ final_message="$final_message\n External libass:\tNo"
+fi
+if test "$use_external_python" = "yes"; then
+ final_message="$final_message\n External Python:\tYes"
+else
+ final_message="$final_message\n External Python:\tNo"
+fi
OUTPUT_FILES="Makefile \
Makefile.include \
@@ -1259,7 +1190,6 @@
AC_SUBST(SDL_DEFINES)
AC_SUBST(BUILD_DVDCSS)
AC_SUBST(BUILD_GOOM)
-AC_SUBST(USE_EXTERNAL_LIBRARIES)
AC_SUBST(USE_EXTERNAL_FFMPEG)
AC_SUBST(USE_EXTERNAL_LIBA52)
AC_SUBST(USE_EXTERNAL_LIBDTS)
@@ -1299,7 +1229,7 @@
popd
fi
else
- AC_MSG_ERROR([[Submodule $1 doesn't exist]])
+ AC_MSG_ERROR([[Submodule $1 does not exist]])
fi
else
AC_MSG_NOTICE([[Skipping configuration of submodule $1.]])
Modified: branches/pvr-testing2/guilib/GUIBaseContainer.cpp
===================================================================
--- branches/pvr-testing2/guilib/GUIBaseContainer.cpp 2010-05-03 19:02:56 UTC (rev 29758)
+++ branches/pvr-testing2/guilib/GUIBaseContainer.cpp 2010-05-03 19:37:41 UTC (rev 29759)
@@ -966,8 +966,8 @@
bool CGUIBaseContainer::InsideLayout(const CGUIListItemLayout *layout, const CPoint &point) const
{
if (!layout) return false;
- if ((m_orientation == VERTICAL && layout->Size(HORIZONTAL) && point.x > layout->Size(HORIZONTAL)) ||
- (m_orientation == HORIZONTAL && layout->Size(VERTICAL) && point.y > layout->Size(VERTICAL)))
+ if ((m_orientation == VERTICAL && (layout->Size(HORIZONTAL) > 1) && point.x > layout->Size(HORIZONTAL)) ||
+ (m_orientation == HORIZONTAL && (layout->Size(VERTICAL) > 1)&& point.y > layout->Size(VERTICAL)))
return false;
return true;
}
Property changes on: branches/pvr-testing2/guilib/GUIControlFactory.cpp
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/9.11_Camelot/guilib/GUIControlFactory.cpp:25753-25754,25905-25907,25910
/branches/karaoke/guilib/GUIControlFactory.cpp:16819-17295
/branches/linuxport/XBMC/guilib/GUIControlFactory.cpp:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/guilib/GUIControlFactory.cpp:18852-18854
/trunk/guilib/GUIControlFactory.cpp:23350-29722
+ /branches/9.11_Camelot/guilib/GUIControlFactory.cpp:25753-25754,25905-25907,25910
/branches/karaoke/guilib/GUIControlFactory.cpp:16819-17295
/branches/linuxport/XBMC/guilib/GUIControlFactory.cpp:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/guilib/GUIControlFactory.cpp:18852-18854
/trunk/guilib/GUIControlFactory.cpp:23350-29758
Property changes on: branches/pvr-testing2/guilib/GUIControlFactory.h
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/9.11_Camelot/guilib/GUIControlFactory.h:25753-25754,25905-25907,25910
/branches/karaoke/guilib/GUIControlFactory.h:16819-17295
/branches/linuxport/XBMC/guilib/GUIControlFactory.h:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/guilib/GUIControlFactory.h:18852-18854
/trunk/guilib/GUIControlFactory.h:23350-29722
+ /branches/9.11_Camelot/guilib/GUIControlFactory.h:25753-25754,25905-25907,25910
/branches/karaoke/guilib/GUIControlFactory.h:16819-17295
/branches/linuxport/XBMC/guilib/GUIControlFactory.h:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/guilib/GUIControlFactory.h:18852-18854
/trunk/guilib/GUIControlFactory.h:23350-29758
Property changes on: branches/pvr-testing2/guilib/GUIImage.cpp
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/9.11_Camelot/guilib/GUIImage.cpp:25753-25754,25905-25907,25910
/branches/karaoke/guilib/GUIImage.cpp:16819-17295
/branches/linuxport/XBMC/guilib/GUIImage.cpp:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/guilib/GUIImage.cpp:18852-18854
/trunk/guilib/GUIImage.cpp:23350-29722
+ /branches/9.11_Camelot/guilib/GUIImage.cpp:25753-25754,25905-25907,25910
/branches/karaoke/guilib/GUIImage.cpp:16819-17295
/branches/linuxport/XBMC/guilib/GUIImage.cpp:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/guilib/GUIImage.cpp:18852-18854
/trunk/guilib/GUIImage.cpp:23350-29758
Property changes on: branches/pvr-testing2/guilib/GUIImage.h
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/9.11_Camelot/guilib/GUIImage.h:25753-25754,25905-25907,25910
/branches/karaoke/guilib/GUIImage.h:16819-17295
/branches/linuxport/XBMC/guilib/GUIImage.h:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/guilib/GUIImage.h:18852-18854
/trunk/guilib/GUIImage.h:23350-29722
+ /branches/9.11_Camelot/guilib/GUIImage.h:25753-25754,25905-25907,25910
/branches/karaoke/guilib/GUIImage.h:16819-17295
/branches/linuxport/XBMC/guilib/GUIImage.h:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/guilib/GUIImage.h:18852-18854
/trunk/guilib/GUIImage.h:23350-29758
Modified: branches/pvr-testing2/web/poc_jsonrpc/albums.html
===================================================================
--- branches/pvr-testing2/web/poc_jsonrpc/albums.html 2010-05-03 19:02:56 UTC (rev 29758)
+++ branches/pvr-testing2/web/poc_jsonrpc/albums.html 2010-05-03 19:37:41 UTC (rev 29759)
@@ -43,10 +43,8 @@
for (var property in array) {
var item = array[property];
document.write('<a href="nowplaying.html" onclick=CallPlay(' + item["albumid"] + ')>');
- if (item["thumbnail"])
- document.write('<img src="thumb/' + item["thumbnail"] + '.jpg" width=100 alt="' + item["album"] + '"></img>');
- else
- document.write('<img src="images/DefaultAlbumCover.png" width=100 alt="' + item["album"] + '"></img>');
+ var imgSrc = item["thumbnail"] ? ('vfs/' + escape(item["thumbnail"])) : "images/DefaultAlbumCover.png";
+ document.write('<img src="' + imgSrc + '" width=100 alt="' + item["album"] + '"></img>');
document.write('</a>');
}
Modified: branches/pvr-testing2/web/poc_jsonrpc/artists.html
===================================================================
--- branches/pvr-testing2/web/poc_jsonrpc/artists.html 2010-05-03 19:02:56 UTC (rev 29758)
+++ branches/pvr-testing2/web/poc_jsonrpc/artists.html 2010-05-03 19:37:41 UTC (rev 29759)
@@ -24,10 +24,8 @@
for (var property in array) {
var item = array[property];
document.write('<a href="nowplaying.html" onclick=CallPlay(' + item["albumid"] + ')>');
- if (item["thumbnail"])
- document.write('<img src="thumb/' + item["thumbnail"] + '.jpg" class="cover" alt="' + item["label"] + '"></img>');
- else
- document.write('<img src="images/DefaultAlbumCover.png" class="cover" alt="' + item["label"] + '"></img>');
+ var imgSrc = item["thumbnail"] ? ('vfs/' + escape(item["thumbnail"])) : "images/DefaultAlbumCover.png";
+ document.write('<img src="' + imgSrc + '" class="cover" alt="' + item["label"] + '"></img>');
document.write('</a>');
}
}
Modified: branches/pvr-testing2/web/poc_jsonrpc/movies.html
===================================================================
--- branches/pvr-testing2/web/poc_jsonrpc/movies.html 2010-05-03 19:02:56 UTC (rev 29758)
+++ branches/pvr-testing2/web/poc_jsonrpc/movies.html 2010-05-03 19:37:41 UTC (rev 29759)
@@ -46,12 +46,10 @@
var item = array[property];
document.write('<tr class="' + (property % 2 == 0 ? "even" : "odd") + '"><td class="cover">');
- var thumbnail = "images/DefaultVideo.png";
- if (item["thumbnail"])
- thumbnail = "thumb/" + item["thumbnail"] + ".jpg";
document.write('<a href="nowplaying.html" onclick=CallPlay(' + item["movieid"] + ')>');
- document.write('<img src="' + thumbnail + '" class="cover"></img>');
+ var imgSrc = item["thumbnail"] ? ('vfs/' + escape(item["thumbnail"])) : "images/DefaultVideo.png";
+ document.write('<img src="' + imgSrc + '" class="cover"></img>');
document.write('</td><td class="info">');
document.write('</a>');
Modified: branches/pvr-testing2/web/poc_jsonrpc/nowplaying.html
===================================================================
--- branches/pvr-testing2/web/poc_jsonrpc/nowplaying.html 2010-05-03 19:02:56 UTC (rev 29758)
+++ branches/pvr-testing2/web/poc_jsonrpc/nowplaying.html 2010-05-03 19:37:41 UTC (rev 29759)
@@ -57,10 +57,8 @@
var array = result["items"];
if (activeItem >= 0) {
- if (array[activeItem]["thumbnail"])
- document.write('<img src="thumb/' + array[activeItem]["thumbnail"] + '.jpg"></img>"');
- else
- document.write('<img src="images/DefaultAlbumCover.png"></img>');
+ var imgSrc = array[activeItem]["thumbnail"] ? ('vfs/' + escape(array[activeItem]["thumbnail"])) : "images/DefaultAlbumCover.png";
+ document.write('<img src="' + imgSrc + '"></img>');
document.write('<br></br>');
Modified: branches/pvr-testing2/web/poc_jsonrpc/tvshowepisodes.html
===================================================================
--- branches/pvr-testing2/web/poc_jsonrpc/tvshowepisodes.html 2010-05-03 19:02:56 UTC (rev 29758)
+++ branches/pvr-testing2/web/poc_jsonrpc/tvshowepisodes.html 2010-05-03 19:37:41 UTC (rev 29759)
@@ -49,12 +49,10 @@
for (var i in array) {
var item = array[i];
document.write('<tr class="" + (i % 2 == 0 ? "even" : "odd") + ""><td class="cover">');
- var thumbnail = "images/DefaultVideo.png";
- if (item["thumbnail"])
- thumbnail = "thumb/" + item["thumbnail"] + ".jpg";
document.write('<a href="nowplaying.html" onclick=CallPlay(' + item["episodeid"] + ')>');
- document.write('<img src="' + thumbnail + '" class="cover"></img>');
+ var imgSrc = item["thumbnail"] ? ('vfs/' + escape(item["thumbnail"])) : "images/DefaultVideo.png";
+ document.write('<img src="' + imgSrc + '" class="cover"></img>');
document.write('</td><td class="info">');
document.write('</a>');
Modified: branches/pvr-testing2/web/poc_jsonrpc/tvshows.html
===================================================================
--- branches/pvr-testing2/web/poc_jsonrpc/tvshows.html 2010-05-03 19:02:56 UTC (rev 29758)
+++ branches/pvr-testing2/web/poc_jsonrpc/tvshows.html 2010-05-03 19:37:41 UTC (rev 29759)
@@ -35,7 +35,8 @@
for (var property in array) {
var item = array[property];
document.write('<a href="tvshowseasons.html?tvshowid=' + item["tvshowid"] + '">');
- document.write('<img src="' + (item["thumbnail"] ? ("thumb/" + item["thumbnail"] + ".jpg"): "images/nocover.jpg") + '"></img>');
+ var imgSrc = item["thumbnail"] ? ('vfs/' + escape(item["thumbnail"])) : "images/nocover.jpg";
+ document.write('<img src="' + imgSrc + '"></img>');
document.write('</a>');
document.write('<br>');
}
Modified: branches/pvr-testing2/web/poc_jsonrpc/tvshowseasons.html
===================================================================
--- branches/pvr-testing2/web/poc_jsonrpc/tvshowseasons.html 2010-05-03 19:02:56 UTC (rev 29758)
+++ branches/pvr-testing2/web/poc_jsonrpc/tvshowseasons.html 2010-05-03 19:37:41 UTC (rev 29759)
@@ -43,7 +43,8 @@
document.write('<tr class="' + (i % 2 == 0 ? 'even' : 'odd') + '"><td class="cover">');
document.write('<a href="tvshowepisodes.html?tvshowid=' + tvshowid + '&season=' + item["season"] + '">');
- document.write('<img src="' + (item["thumbnail"] ? ("thumb/" + item["thumbnail"] + ".jpg"): "images/nocover.jpg") + '" class="cover" alt="' + item["label"] + '"></img>');
+ var imgSrc = item["thumbnail"] ? ('vfs/' + escape(item["thumbnail"])) : "images/nocover.jpg";
+ document.write('<img src="' + imgSrc + '" class="cover" alt="' + item["label"] + '"></img>');
document.write('</a>');
document.write('</td><td class="info">');
document.write('<h1>' + item["label"] + '</h1>');
Modified: branches/pvr-testing2/xbmc/Application.cpp
===================================================================
--- branches/pvr-testing2/xbmc/Application.cpp 2010-05-03 19:02:56 UTC (rev 29758)
+++ branches/pvr-testing2/xbmc/Application.cpp 2010-05-03 19:37:41 UTC (rev 29759)
@@ -352,7 +352,6 @@
m_bStandalone = false;
m_bEnableLegacyRes = false;
- m_bRunResumeJobs = false;
m_bSystemScreenSaverEnable = false;
}
@@ -4742,9 +4741,7 @@
// We get called every 500ms
void CApplication::ProcessSlow()
{
- // run resume jobs if we are coming from suspend/hibernate
- if (m_bRunResumeJobs)
- g_powerManager.Resume();
+ g_powerManager.ProcessEvents();
// Store our file state for use on close()
UpdateFileState();
Modified: branches/pvr-testing2/xbmc/Application.h
===================================================================
--- branches/pvr-testing2/xbmc/Application.h 2010-05-03 19:02:56 UTC (rev 29758)
+++ branches/pvr-testing2/xbmc/Application.h 2010-05-03 19:37:41 UTC (rev 29759)
@@ -274,9 +274,6 @@
bool IsPresentFrame();
void Minimize();
-
- bool m_bRunResumeJobs;
-
protected:
void RenderScreenSaver();
bool LoadSkin(const CStdString& skinID);
Modified: branches/pvr-testing2/xbmc/DllPaths_generated.h.in
===================================================================
--- branches/pvr-testing2/xbmc/DllPaths_generated.h.in 2010-05-03 19:02:56 UTC (rev 29758)
+++ branches/pvr-testing2/xbmc/DllPaths_generated.h.in 2010-05-03 19:37:41 UTC (rev 29759)
@@ -13,7 +13,7 @@
#ifdef __APPLE__
#define DLL_PATH_LIBCURL "special://xbmc/system/libcurl-@...>"
#else
-#define DLL_PATH_LIBCURL "@LIBCURL_BASENAME@"
+#define DLL_PATH_LIBCURL "@CURL_SONAME@"
#endif
#endif
@@ -38,9 +38,9 @@
#define DLL_PATH_YM_CODEC "special://xbmc/system/players/paplayer/stsoundlibrary-@...>"
#define DLL_PATH_SHN_CODEC "special://xbmc/system/players/paplayer/libshnplay-@...>"
#if defined(_LINUX) && !defined(__APPLE__)
-#define DLL_PATH_FLAC_CODEC "@LIBFLAC_BASENAME@"
-#define DLL_PATH_OGG_CODEC "@LIBVORBISFILE_BASENAME@"
-#define DLL_PATH_MODPLUG_CODEC "@LIBMODPLUG_BASENAME@"
+#define DLL_PATH_FLAC_CODEC "@FLAC_SONAME@"
+#define DLL_PATH_OGG_CODEC "@VORBISFILE_SONAME@"
+#define DLL_PATH_MODPLUG_CODEC "@MODPLUG_SONAME@"
#else
#define DLL_PATH_FLAC_CODEC "special://xbmc/system/players/paplayer/libFLAC-@...>"
#define DLL_PATH_OGG_CODEC "special://xbmc/system/players/paplayer/vorbisfile-@...>"
@@ -54,8 +54,8 @@
#define DLL_PATH_LIBMPEG2 "special://xbmc/system/players/dvdplayer/libmpeg2-@...>"
#define DLL_PATH_LIBDVDNAV "special://xbmc/system/players/dvdplayer/libdvdnav-@...>"
#if defined(_LINUX) && !defined(__APPLE__)
-#define DLL_PATH_LIBFAAD "@LIBFAAD_BASENAME@"
-#define DLL_PATH_LIBMAD "@LIBMAD_BASENAME@"
+#define DLL_PATH_LIBFAAD "@FAAD_SONAME@"
+#define DLL_PATH_LIBMAD "@MAD_SONAME@"
#else
#define DLL_PATH_LIBFAAD "special://xbmc/system/players/dvdplayer/libfaad-@...>"
#define DLL_PATH_LIBMAD "special://xbmc/system/players/dvdplayer/libmad-@...>"
@@ -71,9 +71,9 @@
/* cdrip */
#if defined(_LINUX) && !defined(__APPLE__)
#define DLL_PATH_LAME_ENC "libmp3lame.so.0"
-#define DLL_PATH_OGG "@LIBOGG_BASENAME@"
-#define DLL_PATH_VORBIS_ENC "@LIBVORBISENC_BASENAME@"
-#define DLL_PATH_VORBIS "@LIBVORBIS_BASENAME@"
+#define DLL_PATH_OGG "@OGG_SONAME@"
+#define DLL_PATH_VORBIS_ENC "@VORBISENC_SONAME@"
+#define DLL_PATH_VORBIS "@VORBIS_SONAME@"
#else
#define DLL_PATH_LAME_ENC "special://xbmc/system/cdrip/lame_enc-@...>"
#define DLL_PATH_OGG "special://xbmc/system/cdrip/ogg-@...>"
Modified: branches/pvr-testing2/xbmc/IPowerSyscall.h
===================================================================
--- branches/pvr-testing2/xbmc/IPowerSyscall.h 2010-05-03 19:02:56 UTC (rev 29758)
+++ branches/pvr-testing2/xbmc/IPowerSyscall.h 2010-05-03 19:37:41 UTC (rev 29759)
@@ -1,5 +1,14 @@
#pragma once
+class IPowerEventsCallback
+{
+public:
+ virtual ~IPowerEventsCallback() { }
+
+ virtual void OnSleep() = 0;
+ virtual void OnWake() = 0;
+};
+
class IPowerSyscall
{
public:
@@ -10,8 +19,51 @@
virtual bool Reboot() = 0;
// Might need to be membervariables instead for speed
- virtual bool CanPowerdown() = 0;
+ virtual bool CanPowerdown() = 0;
virtual bool CanSuspend() = 0;
virtual bool CanHibernate() = 0;
virtual bool CanReboot() = 0;
+
+ /*!
+ \brief Pump power related events back to xbmc.
+
+ PumpPowerEvents is called from Application Thread and the platform implementation may signal
+ power related events back to xbmc through the callback.
+
+ return true if an event occured and false if not.
+
+ \param callback the callback to signal to
+ */
+ virtual bool PumpPowerEvents(IPowerEventsCallback *callback) = 0;
};
+
+class CPowerSyscallWithoutEvents : public IPowerSyscall
+{
+public:
+ CPowerSyscallWithoutEvents() { m_OnResume = false; m_OnSuspend = false; }
+
+ virtual bool Suspend() { m_OnSuspend = true; return false; }
+ virtual bool Hibernate() { m_OnSuspend = true; return false; }
+
+ virtual bool PumpPowerEvents(IPowerEventsCallback *callback)
+ {
+ if (m_OnSuspend)
+ {
+ callback->OnSleep();
+ m_OnSuspend = false;
+ m_OnResume = true;
+ return true;
+ }
+ else if (m_OnResume)
+ {
+ callback->OnWake();
+ m_OnResume = false;
+ return true;
+ }
+ else
+ return false;
+ }
+private:
+ bool m_OnResume;
+ bool m_OnSuspend;
+};
Property changes on: branches/pvr-testing2/xbmc/MusicInfoTag.cpp
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/karaoke/xbmc/MusicInfoTag.cpp:16819-17295
/branches/linuxport/XBMC/xbmc/MusicInfoTag.cpp:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/xbmc/MusicInfoTag.cpp:18852-18854
/trunk/xbmc/MusicInfoTag.cpp:23350-29722
+ /branches/karaoke/xbmc/MusicInfoTag.cpp:16819-17295
/branches/linuxport/XBMC/xbmc/MusicInfoTag.cpp:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/xbmc/MusicInfoTag.cpp:18852-18854
/trunk/xbmc/MusicInfoTag.cpp:23350-29758
Property changes on: branches/pvr-testing2/xbmc/MusicInfoTagLoaderFactory.cpp
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/karaoke/xbmc/MusicInfoTagLoaderFactory.cpp:16819-17295
/branches/linuxport/XBMC/xbmc/MusicInfoTagLoaderFactory.cpp:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/xbmc/MusicInfoTagLoaderFactory.cpp:18852-18854
/trunk/xbmc/MusicInfoTagLoaderFactory.cpp:23350-29722
+ /branches/karaoke/xbmc/MusicInfoTagLoaderFactory.cpp:16819-17295
/branches/linuxport/XBMC/xbmc/MusicInfoTagLoaderFactory.cpp:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/xbmc/MusicInfoTagLoaderFactory.cpp:18852-18854
/trunk/xbmc/MusicInfoTagLoaderFactory.cpp:23350-29758
Property changes on: branches/pvr-testing2/xbmc/MusicInfoTagLoaderFactory.h
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/karaoke/xbmc/MusicInfoTagLoaderFactory.h:16819-17295
/branches/linuxport/XBMC/xbmc/MusicInfoTagLoaderFactory.h:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/xbmc/MusicInfoTagLoaderFactory.h:18852-18854
/trunk/xbmc/MusicInfoTagLoaderFactory.h:23350-29722
+ /branches/karaoke/xbmc/MusicInfoTagLoaderFactory.h:16819-17295
/branches/linuxport/XBMC/xbmc/MusicInfoTagLoaderFactory.h:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/xbmc/MusicInfoTagLoaderFactory.h:18852-18854
/trunk/xbmc/MusicInfoTagLoaderFactory.h:23350-29758
Modified: branches/pvr-testing2/xbmc/PowerManager.cpp
===================================================================
--- branches/pvr-testing2/xbmc/PowerManager.cpp 2010-05-03 19:02:56 UTC (rev 29758)
+++ branches/pvr-testing2/xbmc/PowerManager.cpp 2010-05-03 19:37:41 UTC (rev 29759)
@@ -92,7 +92,6 @@
#else
m_instance = new CNullPowerSyscall();
#endif
-
}
void CPowerManager::SetDefaults()
@@ -156,7 +155,7 @@
#if defined(HAVE_LIBCRYSTALHD)
CCrystalHD::GetInstance()->Sleep();
#endif
- g_application.m_bRunResumeJobs = true;
+
#ifdef HAS_LCD
g_lcd->SetBackLight(0);
#endif
@@ -177,7 +176,7 @@
#if defined(HAVE_LIBCRYSTALHD)
CCrystalHD::GetInstance()->Sleep();
#endif
- g_application.m_bRunResumeJobs = true;
+
g_Keyboard.ResetState();
success = m_instance->Hibernate();
}
@@ -197,8 +196,34 @@
return success;
}
-void CPowerManager::Resume()
+bool CPowerManager::CanPowerdown()
{
+ return m_instance->CanPowerdown();
+}
+bool CPowerManager::CanSuspend()
+{
+ return m_instance->CanSuspend();
+}
+bool CPowerManager::CanHibernate()
+{
+ return m_instance->CanHibernate();
+}
+bool CPowerManager::CanReboot()
+{
+ return m_instance->CanReboot();
+}
+
+void CPowerManager::ProcessEvents()
+{
+ m_instance->PumpPowerEvents(this);
+}
+
+void CPowerManager::OnSleep()
+{
+}
+
+void CPowerManager::OnWake()
+{
CLog::Log(LOGNOTICE, "%s: Running resume jobs", __FUNCTION__);
#ifdef HAS_SDL
@@ -238,25 +263,5 @@
g_application.UpdateLibraries();
- // reset
- g_application.m_bRunResumeJobs = false;
-
CAnnouncementManager::Announce(System, "xbmc", "Resume");
}
-
-bool CPowerManager::CanPowerdown()
-{
- return m_instance->CanPowerdown();
-}
-bool CPowerManager::CanSuspend()
-{
- return m_instance->CanSuspend();
-}
-bool CPowerManager::CanHibernate()
-{
- return m_instance->CanHibernate();
-}
-bool CPowerManager::CanReboot()
-{
- return m_instance->CanReboot();
-}
Modified: branches/pvr-testing2/xbmc/PowerManager.h
===================================================================
--- branches/pvr-testing2/xbmc/PowerManager.h 2010-05-03 19:02:56 UTC (rev 29758)
+++ branches/pvr-testing2/xbmc/PowerManager.h 2010-05-03 19:37:41 UTC (rev 29759)
@@ -32,34 +32,40 @@
virtual bool Hibernate() { return false; }
virtual bool Reboot() { return false; }
- virtual bool CanPowerdown() { return false; }
- virtual bool CanSuspend() { return false; }
- virtual bool CanHibernate() { return false; }
- virtual bool CanReboot() { return false; }
+ virtual bool CanPowerdown() { return true; }
+ virtual bool CanSuspend() { return true; }
+ virtual bool CanHibernate() { return true; }
+ virtual bool CanReboot() { return true; }
+
+ virtual bool PumpPowerEvents(IPowerEventsCallback *callback) { return false; }
};
// This class will wrap and handle PowerSyscalls.
// It will handle and decide if syscalls are needed.
-class CPowerManager : public IPowerSyscall
+class CPowerManager : public IPowerEventsCallback
{
public:
CPowerManager();
- virtual ~CPowerManager();
+ ~CPowerManager();
- virtual void Initialize();
+ void Initialize();
void SetDefaults();
- virtual bool Powerdown();
- virtual bool Suspend();
- virtual bool Hibernate();
- virtual bool Reboot();
- virtual void Resume();
+ bool Powerdown();
+ bool Suspend();
+ bool Hibernate();
+ bool Reboot();
- virtual bool CanPowerdown();
- virtual bool CanSuspend();
- virtual bool CanHibernate();
- virtual bool CanReboot();
+ bool CanPowerdown();
+ bool CanSuspend();
+ bool CanHibernate();
+ bool CanReboot();
+
+ void ProcessEvents();
private:
+ void OnSleep();
+ void OnWake();
+
IPowerSyscall *m_instance;
};
Property changes on: branches/pvr-testing2/xbmc/addons
___________________________________________________________________
Modified: svn:mergeinfo
- /trunk/xbmc/addons:26101-26104,26633-26634,26716-26717,26907-26908,28326-29722
+ /trunk/xbmc/addons:26101-26104,26633-26634,26716-26717,26907-26908,28326-29758
Property changes on: branches/pvr-testing2/xbmc/cores/AudioRenderers/IAudioCallback.h
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/karaoke/xbmc/cores/AudioRenderers/IAudioCallback.h:16819-17295
/branches/linuxport/XBMC/xbmc/cores/AudioRenderers/IAudioCallback.h:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/xbmc/cores/AudioRenderers/IAudioCallback.h:18852-18854
/trunk/xbmc/cores/AudioRenderers/IAudioCallback.h:23350-29722
+ /branches/karaoke/xbmc/cores/AudioRenderers/IAudioCallback.h:16819-17295
/branches/linuxport/XBMC/xbmc/cores/AudioRenderers/IAudioCallback.h:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/xbmc/cores/AudioRenderers/IAudioCallback.h:18852-18854
/trunk/xbmc/cores/AudioRenderers/IAudioCallback.h:23350-29758
Property changes on: branches/pvr-testing2/xbmc/cores/AudioRenderers/IAudioRenderer.h
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/karaoke/xbmc/cores/AudioRenderers/IDirectSoundRenderer.h:16819-17295
/branches/linuxport/XBMC/xbmc/cores/AudioRenderers/IAudioRenderer.h:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/xbmc/cores/AudioRenderers/IAudioRenderer.h:18852-18854
/trunk/xbmc/cores/AudioRenderers/IAudioRenderer.h:23350-29722
+ /branches/karaoke/xbmc/cores/AudioRenderers/IDirectSoundRenderer.h:16819-17295
/branches/linuxport/XBMC/xbmc/cores/AudioRenderers/IAudioRenderer.h:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/xbmc/cores/AudioRenderers/IAudioRenderer.h:18852-18854
/trunk/xbmc/cores/AudioRenderers/IAudioRenderer.h:23350-29758
Property changes on: branches/pvr-testing2/xbmc/cores/AudioRenderers/Win32DirectSound.cpp
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/karaoke/xbmc/cores/AudioRenderers/Win32DirectSound.cpp:16819-17295
/branches/linuxport/XBMC/xbmc/cores/AudioRenderers/Win32DirectSound.cpp:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/xbmc/cores/AudioRenderers/Win32DirectSound.cpp:18852-18854
/trunk/xbmc/cores/AudioRenderers/Win32DirectSound.cpp:23350-29722
+ /branches/karaoke/xbmc/cores/AudioRenderers/Win32DirectSound.cpp:16819-17295
/branches/linuxport/XBMC/xbmc/cores/AudioRenderers/Win32DirectSound.cpp:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/xbmc/cores/AudioRenderers/Win32DirectSound.cpp:18852-18854
/trunk/xbmc/cores/AudioRenderers/Win32DirectSound.cpp:23350-29758
Property changes on: branches/pvr-testing2/xbmc/cores/AudioRenderers/Win32DirectSound.h
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/karaoke/xbmc/cores/AudioRenderers/Win32DirectSound.h:16819-17295
/branches/linuxport/XBMC/xbmc/cores/AudioRenderers/Win32DirectSound.h:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/xbmc/cores/AudioRenderers/Win32DirectSound.h:18852-18854
/trunk/xbmc/cores/AudioRenderers/Win32DirectSound.h:23350-29722
+ /branches/karaoke/xbmc/cores/AudioRenderers/Win32DirectSound.h:16819-17295
/branches/linuxport/XBMC/xbmc/cores/AudioRenderers/Win32DirectSound.h:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/xbmc/cores/AudioRenderers/Win32DirectSound.h:18852-18854
/trunk/xbmc/cores/AudioRenderers/Win32DirectSound.h:23350-29758
Modified: branches/pvr-testing2/xbmc/cores/VideoRenderers/BaseRenderer.h
===================================================================
--- branches/pvr-testing2/xbmc/cores/VideoRenderers/BaseRenderer.h 2010-05-03 19:02:56 UTC (rev 29758)
+++ branches/pvr-testing2/xbmc/cores/VideoRenderers/BaseRenderer.h 2010-05-03 19:37:41 UTC (rev 29759)
@@ -47,7 +47,7 @@
RENDERFEATURE_CONTRAST,
RENDERFEATURE_NOISE,
RENDERFEATURE_SHARPNESS,
- RENDERFEATURE_NONLINSTRETCH,
+ RENDERFEATURE_NONLINSTRETCH
};
class CBaseRenderer
Modified: branches/pvr-testing2/xbmc/cores/dvdplayer/Codecs/DllAvFormat.h
===================================================================
--- branches/pvr-testing2/xbmc/cores/dvdplayer/Codecs/DllAvFormat.h 2010-05-03 19:02:56 UTC (rev 29758)
+++ branches/pvr-testing2/xbmc/cores/dvdplayer/Codecs/DllAvFormat.h 2010-05-03 19:37:41 UTC (rev 29759)
@@ -69,9 +69,15 @@
virtual int url_fdopen(ByteIOContext **s, URLContext *h)=0;
virtual int url_fopen(ByteIOContext **s, const char *filename, int flags)=0;
virtual int url_fclose(ByteIOContext *s)=0;
+ virtual int url_open_dyn_buf(ByteIOContext **s)=0;
+ virtual int url_close_dyn_buf(ByteIOContext *s, uint8_t **pbuffer)=0;
virtual offset_t url_fseek(ByteIOContext *s, offset_t offset, int whence)=0;
virtual int get_buffer(ByteIOContext *s, unsigned char *buf, int size)=0;
virtual int get_partial_buffer(ByteIOContext *s, unsigned char *buf, int size)=0;
+ virtual void put_byte(ByteIOContext *s, int b)=0;
+ virtual void put_buffer(ByteIOContext *s, const unsigned char *buf, int size)=0;
+ virtual void put_be32(ByteIOContext *s, unsigned int val)=0;
+ virtual void put_be16(ByteIOContext *s, unsigned int val)=0;
virtual AVFormatContext *avformat_alloc_context(void)=0;
virtual AVStream *av_new_stream(AVFormatContext *s, int id)=0;
#if LIBAVFORMAT_VERSION_MAJOR < 53
@@ -130,9 +136,15 @@
virtual int url_fdopen(ByteIOContext **s, URLContext *h) { return ::url_fdopen(s, h); }
virtual int url_fopen(ByteIOContext **s, const char *filename, int flags) { return ::url_fopen(s, filename, flags); }
virtual int url_fclose(ByteIOContext *s) { return ::url_fclose(s); }
+ virtual int url_open_dyn_buf(ByteIOContext **s) { return ::url_open_dyn_buf(s); }
+ virtual int url_close_dyn_buf(ByteIOContext *s, uint8_t **pbuffer) { return ::url_close_dyn_buf(s, pbuffer); }
virtual offset_t url_fseek(ByteIOContext *s, offset_t offset, int whence) { return ::url_fseek(s, offset, whence); }
virtual int get_buffer(ByteIOContext *s, unsigned char *buf, int size) { return ::get_buffer(s, buf, size); }
virtual int get_partial_buffer(ByteIOContext *s, unsigned char *buf, int size) { return ::get_partial_buffer(s, buf, size); }
+ virtual void put_byte(ByteIOContext *s, int b) { ::put_byte(s, b); }
+ virtual void put_buffer(ByteIOContext *s, const unsigned char *buf, int size) { ::put_buffer(s, buf, size); }
+ virtual void put_be32(ByteIOContext *s, unsigned int val) { ::put_be32(s, val); }
+ virtual void put_be16(ByteIOContext *s, unsigned int val) { ::put_be16(s, val); }
virtual AVFormatContext *avformat_alloc_context() { return ::avformat_alloc_context(); }
virtual AVStream *av_new_stream(AVFormatContext *s, int id) { return ::av_new_stream(s, id); }
#if LIBAVFORMAT_VERSION_MAJOR < 53
@@ -185,6 +197,10 @@
DEFINE_FUNC_ALIGNED3(AVInputFormat*, __cdecl, av_probe_input_format2, AVProbeData*, int, int*)
DEFINE_FUNC_ALIGNED3(int, __cdecl, get_buffer, ByteIOContext*, unsigned char *, int)
DEFINE_FUNC_ALIGNED3(int, __cdecl, get_partial_buffer, ByteIOContext*, unsigned char *, int)
+ DEFINE_FUNC_ALIGNED2(void, __cdecl, put_byte, ByteIOContext*, int)
+ DEFINE_FUNC_ALIGNED3(void, __cdecl, put_buffer, ByteIOContext*, const unsigned char *, int)
+ DEFINE_FUNC_ALIGNED2(void, __cdecl, put_be32, ByteIOContext*, unsigned int)
+ DEFINE_FUNC_ALIGNED2(void, __cdecl, put_be16, ByteIOContext*, unsigned int)
#else
DEFINE_METHOD2(int, av_read_frame, (AVFormatContext *p1, AVPacket *p2))
DEFINE_METHOD4(int, av_seek_frame, (AVFormatContext *p1, int p2, int64_t p3, int p4))
@@ -195,6 +211,10 @@
DEFINE_METHOD3(AVInputFormat*, av_probe_input_format2, (AVProbeData* p1 , int p2, int *p3))
DEFINE_METHOD3(int, get_buffer, (ByteIOContext* p1, unsigned char *p2, int p3))
DEFINE_METHOD3(int, get_partial_buffer, (ByteIOContext* p1, unsigned char *p2, int p3))
+ DEFINE_METHOD2(void, put_byte, (ByteIOContext* p1, int p2))
+ DEFINE_METHOD3(void, put_buffer, (ByteIOContext* p1, const unsigned char *p2, int p3))
+ DEFINE_METHOD2(void, put_be32, (ByteIOContext* p1, unsigned int p2))
+ DEFINE_METHOD2(void, put_be16, (ByteIOContext* p1, unsigned int p2))
#endif
DEFINE_METHOD1(void, url_set_interrupt_cb, (URLInterruptCB *p1))
DEFINE_METHOD8(int, init_put_byte, (ByteIOContext *p1, unsigned char *p2, int p3, int p4, void *p5,
@@ -205,6 +225,8 @@
DEFINE_METHOD2(int, url_fdopen, (ByteIOContext **p1, URLContext *p2))
DEFINE_METHOD3(int, url_fopen, (ByteIOContext **p1, const char *p2, int p3))
DEFINE_METHOD1(int, url_fclose, (ByteIOContext *p1))
+ DEFINE_METHOD1(int, url_open_dyn_buf, (ByteIOContext **p1))
+ DEFINE_METHOD2(int, url_close_dyn_buf, (ByteIOContext *p1, uint8_t **p2))
DEFINE_METHOD3(offset_t, url_fseek, (ByteIOContext *p1, offset_t p2, int p3))
DEFINE_METHOD0(AVFormatContext *, avformat_alloc_context)
DEFINE_METHOD2(AVStream *, av_new_stream, (AVFormatContext *p1, int p2))
@@ -244,9 +266,15 @@
RESOLVE_METHOD(url_fdopen)
RESOLVE_METHOD(url_fopen)
RESOLVE_METHOD(url_fclose)
+ RESOLVE_METHOD(url_open_dyn_buf)
+ RESOLVE_METHOD(url_close_dyn_buf)
RESOLVE_METHOD(url_fseek)
RESOLVE_METHOD(get_buffer)
RESOLVE_METHOD(get_partial_buffer)
+ RESOLVE_METHOD(put_byte)
+ RESOLVE_METHOD(put_buffer)
+ RESOLVE_METHOD(put_be32)
+ RESOLVE_METHOD(put_be16)
RESOLVE_METHOD(avformat_alloc_context)
RESOLVE_METHOD(av_new_stream)
#if LIBAVFORMAT_VERSION_MAJOR < 53
Property changes on: branches/pvr-testing2/xbmc/cores/dvdplayer/Codecs/ffmpeg
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/karaoke/xbmc/cores/dvdplayer/Codecs/ffmpeg:16819-17295
/branches/linuxport/XBMC/xbmc/cores/dvdplayer/Codecs/ffmpeg:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/xbmc/cores/dvdplayer/Codecs/ffmpeg:18852-18854
/trunk/xbmc/cores/dvdplayer/Codecs/ffmpeg:23350-29722
/vendor/ffmpeg/current:13445-28721
+ /branches/karaoke/xbmc/cores/dvdplayer/Codecs/ffmpeg:16819-17295
/branches/linuxport/XBMC/xbmc/cores/dvdplayer/Codecs/ffmpeg:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/xbmc/cores/dvdplayer/Codecs/ffmpeg:18852-18854
/trunk/xbmc/cores/dvdplayer/Codecs/ffmpeg:23350-29758
/vendor/ffmpeg/current:13445-28721
Property changes on: branches/pvr-testing2/xbmc/cores/dvdplayer/Codecs/ffmpeg/ffpresets
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/karaoke/xbmc/cores/dvdplayer/Codecs/ffmpeg/ffpresets:16819-17295
/branches/linuxport/XBMC/xbmc/cores/dvdplayer/Codecs/ffmpeg/ffpresets:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/xbmc/cores/dvdplayer/Codecs/ffmpeg/ffpresets:18852-18854
/trunk/xbmc/cores/dvdplayer/Codecs/ffmpeg/ffpresets:23350-29722
/vendor/ffmpeg/current/ffpresets:16670-28721
+ /branches/karaoke/xbmc/cores/dvdplayer/Codecs/ffmpeg/ffpresets:16819-17295
/branches/linuxport/XBMC/xbmc/cores/dvdplayer/Codecs/ffmpeg/ffpresets:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/xbmc/cores/dvdplayer/Codecs/ffmpeg/ffpresets:18852-18854
/trunk/xbmc/cores/dvdplayer/Codecs/ffmpeg/ffpresets:23350-29758
/vendor/ffmpeg/current/ffpresets:16670-28721
Property changes on: branches/pvr-testing2/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavcodec/arm
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/karaoke/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavcodec/arm:16819-17295
/branches/linuxport/XBMC/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavcodec/arm:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavcodec/arm:18852-18854
/trunk/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavcodec/arm:23350-29722
/vendor/ffmpeg/current/libavcodec/arm:16670-28721
+ /branches/karaoke/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavcodec/arm:16819-17295
/branches/linuxport/XBMC/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavcodec/arm:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavcodec/arm:18852-18854
/trunk/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavcodec/arm:23350-29758
/vendor/ffmpeg/current/libavcodec/arm:16670-28721
Property changes on: branches/pvr-testing2/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavformat/asfenc.c
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/linuxport/XBMC/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavformat/asfenc.c:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavformat/asfenc.c:18852-18854
/trunk/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavformat/asfenc.c:23350-29722
/vendor/ffmpeg/current/libavformat/asfenc.c:18443-28721
+ /branches/linuxport/XBMC/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavformat/asfenc.c:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavformat/asfenc.c:18852-18854
/trunk/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavformat/asfenc.c:23350-29758
/vendor/ffmpeg/current/libavformat/asfenc.c:18443-28721
Property changes on: branches/pvr-testing2/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/arm
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/karaoke/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/arm:16819-17295
/branches/linuxport/XBMC/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/arm:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/arm:18852-18854
/trunk/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/arm:23350-29722
/vendor/ffmpeg/current/libavutil/arm:16670-28721
+ /branches/karaoke/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/arm:16819-17295
/branches/linuxport/XBMC/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/arm:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/arm:18852-18854
/trunk/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/arm:23350-29758
/vendor/ffmpeg/current/libavutil/arm:16670-28721
Property changes on: branches/pvr-testing2/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/bfin
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/karaoke/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/bfin:16819-17295
/branches/linuxport/XBMC/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/bfin:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/bfin:18852-18854
/trunk/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/bfin:23350-29722
/vendor/ffmpeg/current/libavutil/bfin:16670-28721
+ /branches/karaoke/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/bfin:16819-17295
/branches/linuxport/XBMC/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/bfin:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/bfin:18852-18854
/trunk/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/bfin:23350-29758
/vendor/ffmpeg/current/libavutil/bfin:16670-28721
Property changes on: branches/pvr-testing2/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/sh4
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/karaoke/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/sh4:16819-17295
/branches/linuxport/XBMC/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/sh4:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/sh4:18852-18854
/trunk/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/sh4:23350-29722
/vendor/ffmpeg/current/libavutil/sh4:16670-28721
+ /branches/karaoke/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/sh4:16819-17295
/branches/linuxport/XBMC/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/sh4:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/sh4:18852-18854
/trunk/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/sh4:23350-29758
/vendor/ffmpeg/current/libavutil/sh4:16670-28721
Property changes on: branches/pvr-testing2/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/x86
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/karaoke/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/x86:16819-17295
/branches/linuxport/XBMC/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/x86:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/x86:18852-18854
/trunk/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/x86:23350-29722
/vendor/ffmpeg/current/libavutil/x86:16670-28721
+ /branches/karaoke/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/x86:16819-17295
/branches/linuxport/XBMC/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/x86:20974-21045,22314-22366
/branches/xbmc-zeroconf/XBMC/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/x86:18852-18854
/trunk/xbmc/cores/dvdplayer/Codecs/ffmpeg/libavutil/x86:23350-29758
/vendor/ffmpeg/current/libavutil/x86:16670-28721
Modified: branches/pvr-testing2/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecVDA.cpp
===================================================================
--- branches/pvr-testing2/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecVDA.cpp 2010-05-03 19:02:56 UTC (rev 29758)
+++ branches/pvr-testing2/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecVDA.cpp 2010-05-03 19:37:41 UTC (rev 29759)
@@ -31,6 +31,7 @@
#include "DVDClock.h"
#include "DVDStreamInfo.h"
#include "DVDVideoCodecVDA.h"
+#include "Codecs/DllAvFormat.h"
#include "utils/log.h"
#include "utils/TimeUtils.h"
@@ -178,7 +179,173 @@
}
////////////////////////////////////////////////////////////////////////////////////////////
+// TODO: refactor this so as not to need these ffmpeg routines.
+// These are not exposed in ffmpeg's API so we dupe them here.
+// AVC helper functions for muxers,
+// * Copyright (c) 2006 Baptiste Coudurier <baptiste.coudurier@...>
+// This is part of FFmpeg
+// * License as published by the Free Software Foundation; either
+// * version 2.1 of the License, or (at your option) any later version.
+#define VDA_RB24(x) \
+ ((((const uint8_t*)(x))[0] << 16) | \
+ (((const uint8_t*)(x))[1] << 8) | \
+ ((const uint8_t*)(x))[2])
+
+#define VDA_RB32(x) \
+ ((((const uint8_t*)(x))[0] << 24) | \
+ (((const uint8_t*)(x))[1] << 16) | \
+ (((const uint8_t*)(x))[2] << 8) | \
+ ((const uint8_t*)(x))[3])
+
+static const uint8_t *avc_find_startcode_internal(const uint8_t *p, const uint8_t *end)
+{
+ const uint8_t *a = p + 4 - ((intptr_t)p & 3);
+
+ for (end -= 3; p < a && p < end; p++)
+ {
+ if (p[0] == 0 && p[1] == 0 && p[2] == 1)
+ return p;
+ }
+
+ for (end -= 3; p < end; p += 4)
+ {
+ uint32_t x = *(const uint32_t*)p;
+ if ((x - 0x01010101) & (~x) & 0x80808080) // generic
+ {
+ if (p[1] == 0)
+ {
+ if (p[0] == 0 && p[2] == 1)
+ return p;
+ if (p[2] == 0 && p[3] == 1)
+ return p+1;
+ }
+ if (p[3] == 0)
+ {
+ if (p[2] == 0 && p[4] == 1)
+ return p+2;
+ if (p[4] == 0 && p[5] == 1)
+ return p+3;
+ }
+ }
+ }
+
+ for (end += 3; p < end; p++)
+ {
+ if (p[0] == 0 && p[1] == 0 && p[2] == 1)
+ return p;
+ }
+
+ return end + 3;
+}
+
+const uint8_t *avc_find_startcode(const uint8_t *p, const uint8_t *end)
+{
+ const uint8_t *out= avc_find_startcode_internal(p, end);
+ if (p<out && out<end && !out[-1])
+ out--;
+ return out;
+}
+
+const int avc_parse_nal_units(DllAvFormat *av_format_ctx,
+ ByteIOContext *pb, const uint8_t *buf_in, int size)
+{
+ const uint8_t *p = buf_in;
+ const uint8_t *end = p + size;
+ const uint8_t *nal_start, *nal_end;
+
+ size = 0;
+ nal_start = avc_find_startcode(p, end);
+ while (nal_start < end)
+ {
+ while (!*(nal_start++));
+ nal_end = avc_find_startcode(nal_start, end);
+ av_format_ctx->put_be32(pb, nal_end - nal_start);
+ av_format_ctx->put_buffer(pb, nal_start, nal_end - nal_start);
+ size += 4 + nal_end - nal_start;
+ nal_start = nal_end;
+ }
+ return size;
+}
+
+const int avc_parse_nal_units_buf(DllAvUtil *av_util_ctx, DllAvFormat *av_format_ctx,
+ const uint8_t *buf_in, uint8_t **buf, int *size)
+{
+ ByteIOContext *pb;
+ int ret = av_format_ctx->url_open_dyn_buf(&pb);
+ if (ret < 0)
+ return ret;
+
+ avc_parse_nal_units(av_format_ctx, pb, buf_in, *size);
+
+ av_util_ctx->av_freep(buf);
+ *size = av_format_ctx->url_close_dyn_buf(pb, buf);
+ return 0;
+}
+
+const int isom_write_avcc(DllAvUtil *av_util_ctx, DllAvFormat *av_format_ctx,
+ ByteIOContext *pb, const uint8_t *data, int len)
+{
+ // extradata from bytestream h264, convert to avcC atom data for bitstream
+ if (len > 6)
+ {
+ /* check for h264 start code */
+ if (VDA_RB32(data) == 0x00000001 || VDA_RB24(data) == 0x000001)
+ {
+ uint8_t *buf=NULL, *end, *start;
+ uint32_t sps_size=0, pps_size=0;
+ uint8_t *sps=0, *pps=0;
+
+ int ret = avc_parse_nal_units_buf(av_util_ctx, av_format_ctx, data, &buf, &len);
+ if (ret < 0)
+ return ret;
+ start = buf;
+ end = buf + len;
+
+ /* look for sps and pps */
+ while (buf < end)
+ {
+ unsigned int size;
+ uint8_t nal_type;
+ size = VDA_RB32(buf);
+ nal_type = buf[4] & 0x1f;
+ if (nal_type == 7) /* SPS */
+ {
+ sps = buf + 4;
+ sps_size = size;
+ }
+ else if (nal_type == 8) /* PPS */
+ {
+ pps = buf + 4;
+ pps_size = size;
+ }
+ buf += size + 4;
+ }
+ assert(sps);
+ assert(pps);
+
+ av_format_ctx->put_byte(pb, 1); /* version */
+ av_format_ctx->put_byte(pb, sps[1]); /* profile */
+ av_format_ctx->put_byte(pb, sps[2]); /* profile compat */
+ av_format_ctx->put_byte(pb, sps[3]); /* level */
+ av_format_ctx->put_byte(pb, 0xff); /* 6 bits reserved (111111) + 2 bits nal size length - 1 (11) */
+ av_format_ctx->put_byte(pb, 0xe1); /* 3 bits reserved (111) + 5 bits number of sps (00001) */
+
+ av_format_ctx->put_be16(pb, sps_size);
+ av_format_ctx->put_buffer(pb, sps, sps_size);
+ av_format_ctx->put_byte(pb, 1); /* number of pps */
+ av_format_ctx->put_be16(pb, pps_size);
+ av_format_ctx->put_buffer(pb, pps, pps_size);
+ av_util_ctx->av_free(start);
+ }
+ else
+ {
+ av_format_ctx->put_buffer(pb, data, len);
+ }
+ }
+ return 0;
+}
////////////////////////////////////////////////////////////////////////////////////////////
+////////////////////////////////////////////////////////////////////////////////////////////
CDVDVideoCodecVDA::CDVDVideoCodecVDA() : CDVDVideoCodec()
{
m_dll = new DllLibVDADecoder;
@@ -189,6 +356,7 @@
m_display_queue = NULL;
pthread_mutex_init(&m_queue_mutex, NULL);
+ m_convert_bytestream = false;
m_swcontext = NULL;
memset(&m_videobuffer, 0, sizeof(DVDVideoPicture));
}
@@ -206,7 +374,7 @@
int32_t width;
int32_t height;
CFDataRef avcCData;
- uint8_t* extradata; // extra data for codec to use
+ uint8_t *extradata; // extra data for codec to use
unsigned int extrasize; // size of extra data
//
@@ -230,39 +398,26 @@
{
if (extradata[0] == 0 && extradata[1] == 0 && extradata[2] == 0 && extradata[3] == 1)
{
- // looky, looky. A NAL start code. h.264 demux frames from ts/m2ts
- // containers is already in byte-stream format. Three choices;
- // 1) set extrasize to zero.
- // 2 pass a null avcC atom data.
- // 3) byte-to-bit stream convert the demux data and create a valid avcC atom data.
- // #3 is going to be icky...
- int choice = 2;
- switch (choice)
- {
- case 1:
- extrasize = 0;
- extradata = NULL;
- break;
- case 2:
- extrasize = 7;
- extradata = new uint8_t[extrasize];
- // make a null avcC header
- extradata[0] = 0x01; // version
- extradata[1] = hints.profile; // profile
- extradata[2] = hints.profile & 0xE0; // compatible profiles
- extradata[3] = hints.level; // level
- extradata[4] = 0xff;
- extradata[5] = 0xe1;
- extradata[6] = 0x00;
- break;
- case 3:
- // TODO
- break;
- }
+ // video content is from x264 or from bytestream h264 (AnnexB format)
+ // NAL reformating to bitstream format needed
+ if (!m_dllAvUtil.Load() || !m_dllAvFormat.Load())
+ return false;
+
+ ByteIOContext *pb;
+ if (m_dllAvFormat.url_open_dyn_buf(&pb) < 0)
+ return false;
+
+ m_convert_bytestream = true;
+ // create a valid avcC atom data from ffmpeg's extradata
+ isom_write_avcc(&m_dllAvUtil, &m_dllAvFormat, pb, extradata, extrasize);
+ // unhook from ffmpeg's extradata
+ extradata = NULL;
+ // extract the avcC atom data into extradata then write it into avcCData for VDADecoder
+ extrasize = m_dllAvFormat.url_close_dyn_buf(pb, &extradata);
// CFDataCreate makes a copy of extradata contents
avcCData = CFDataCreate(kCFAllocatorDefault, (const uint8_t*)extradata, extrasize);
- if (extradata)
- delete extradata;
+ // done with the converted extradata, we MUST free using av_free
+ m_dllAvUtil.av_free(extradata);
}
else
{
@@ -284,7 +439,7 @@
break;
}
- // input stream is qualified, now we can load the dlls.
+ // input stream is qualified, now we can load dlls.
if (!m_dll->Load() || !m_dllSwScale.Load())
return false;
@@ -306,7 +461,7 @@
CFRelease(decoderConfiguration);
if (status != kVDADecoderNoErr)
{
- CLog::Log(LOGNOTICE, "%s - failed to open VDADecoder Codec", __FUNCTION__);
+ CLog::Log(LOGNOTICE, "%s - VDADecoder Codec failed to open,status(%d)", __FUNCTION__, (int)status);
return false;
}
@@ -316,13 +471,15 @@
unsigned int iPixels = width * height;
unsigned int iChromaPixels = iPixels/4;
+ m_videobuffer.pts = DVD_NOPTS_VALUE;
+ m_videobuffer.iFlags = DVP_FLAG_ALLOCATED;
+ m_videobuffer.format = DVDVideoPicture::FMT_YUV420P;
+ m_videobuffer.color_range = 0;
+ m_videobuffer.color_matrix = 4;
m_videobuffer.iWidth = width;
m_videobuffer.iHeight = height;
m_videobuffer.iDisplayWidth = width;
m_videobuffer.iDisplayHeight = height;
- m_videobuffer.format = DVDVideoPicture::FMT_YUV420P;
- m_videobuffer.color_range = 0;
- m_videobuffer.color_matrix = 4;
m_videobuffer.iLineSize[0] = width; //Y
m_videobuffer.iLineSize[1] = width/2; //U
@@ -338,8 +495,6 @@
memset(m_videobuffer.data[0], 0, iPixels);
memset(m_videobuffer.data[1], 0, iChromaPixels);
memset(m_videobuffer.data[2], 0, iChromaPixels);
- m_videobuffer.pts = DVD_NOPTS_VALUE;
- m_videobuffer.iFlags = DVP_FLAG_ALLOCATED;
// pre-alloc ffmpeg swscale context.
m_swcontext = m_dllSwScale.sws_getContext(
@@ -369,6 +524,11 @@
_aligned_free(m_videobuffer.data[2]);
m_videobuffer.iFlags = 0;
}
+ if (m_convert_bytestream)
+ {
+ m_dllAvUtil.Unload();
+ m_dllAvFormat.Unload();
+ }
if (m_swcontext)
{
m_dllSwScale.sws_freeContext(m_swcontext);
@@ -387,9 +547,27 @@
{
OSStatus status;
uint32_t avc_flags = 0;
+ CFDataRef avc_demux;
+ CFDictionaryRef avc_pts = MakeDictionaryWithDisplayTime(pts);
//
- CFDictionaryRef avc_pts = MakeDictionaryWithDisplayTime(pts);
- CFDataRef avc_demux = CFDataCreate(kCFAllocatorDefault, pData, iSize);
+ if (m_convert_bytestream)
+ {
+ // convert demuxer packet from bytestream (AnnexB) to bitstream
+ ByteIOContext *pb;
+ int demuxer_bytes;
+ uint8_t *demuxer_content;
+
+ if(m_dllAvFormat.url_open_dyn_buf(&pb) < 0)
+ return VC_ERROR;
+ demuxer_bytes = avc_parse_nal_units(&m_dllAvFormat, pb, pData, iSize);
+ demuxer_bytes = m_dllAvFormat.url_close_dyn_buf(pb, &demuxer_content);
+ avc_demux = CFDataCreate(kCFAllocatorDefault, demuxer_content, demuxer_bytes);
+ m_dllAvUtil.av_free(demuxer_content);
+ }
+ else
+ {
+ avc_demux = CFDataCreate(kCFAllocatorDefault, pData, iSize);
+ }
pthread_mutex_lock(&m_queue_mutex);
m_dts_queue.push(dts);
@@ -397,14 +575,13 @@
if (m_DropPictures)
avc_flags = kVDADecoderDecodeFlags_DontEmitFrame;
+
status = m_dll->VDADecoderDecode((VDADecoder)m_vda_decoder, avc_flags, avc_demux, avc_pts);
-
CFRelease(avc_pts);
CFRelease(avc_demux);
-
if (status != kVDADecoderNoErr)
{
- CLog::Log(LOGNOTICE, "%s - failed with status(%d)", __FUNCTION__, (int)status);
+ CLog::Log(LOGNOTICE, "%s - VDADecoderDecode failed, status(%d)", __FUNCTION__, (int)status);
return VC_ERROR;
}
@@ -435,7 +612,7 @@
// depth is less than the number of encoded reference frames. If queue depth
// is greater than the number of encoded reference frames, then the top frame
// will never change and we can just grab a ref to the frame/pts. This way
- // we don't lockout the vdadecoder while doing the memcpy of planes out.
+ // we don't lockout the vdadecoder while doing UYVY422_to_YUV420P convert out.
pthread_mutex_lock(&m_queue_mutex);
yuvframe = m_display_queue->frame;
// m_dts_queue gets popped in DisplayQueuePop
Modified: branches/pvr-testing2/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecVDA.h
===================================================================
--- branches/pvr-testing2/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecVDA.h 2010-05-03 19:02:56 UTC (rev 29758)
+++ branches/pvr-testing2/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecVDA.h 2010-05-03 19:37:41 UTC (rev 29759)
@@ -25,6 +25,7 @@
#include "DVDVideoCodec.h"
#include "Codecs/DllSwScale.h"
+#include "Codecs/DllAvFormat.h"
#include <CoreVideo/CoreVideo.h>
// tracks a frame in and output queue in display order
@@ -68,6 +69,10 @@
frame_queue *m_display_queue; // display-order queue - next display frame is always at the queue head
int32_t m_queue_depth; // we will try to keep the queue depth around 16+1 frames
std::queue<double> m_dts_queue;
+
+ bool m_convert_bytestream;
+ DllAvUtil m_dllAvUtil;
+ DllAvFormat m_dllAvFormat;
DllSwScale m_dllSwScale;
struct SwsContext *m_swcontext;
Modified: branches/pvr-testing2/xbmc/cores/dvdplayer/DVDCodecs/Video/DXVA.cpp
===================================================================
--- branches/pvr-testing2/xbmc/cores/dvdplayer/DVDCodecs/Video/DXVA.cpp 2010-05-03 19:02:56 UTC (rev 29758)
+++ branches/pvr-testing2/xbmc/cores/dvdplayer/DVDCodecs/Video/DXVA.cpp 2010-05-03 19:37:41 UTC (rev 29759)
@@ -34,7 +34,7 @@
#include "boost/shared_ptr.hpp"
#include "AutoPtrHandle.h"
-#define ALLOW_ADDING_SURFACES 1
+#define ALLOW_ADDING_SURFACES 0
using namespace DXVA;
using namespace boost;
Property changes on: branches/pvr-testing2/xbmc/cores/dvdplayer/Edl.cpp
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/karaoke/xbmc/cores/dvdplayer/Edl.cpp:16819-17295
/branches/timidityupdate/xbmc/cores/dvdplayer/Edl.cpp:16561-16749
/branches/xbmc-zeroconf/XBMC/xbmc/cores/dvdplayer/Edl.cpp:18852-18854
/trunk/XBMC/xbmc/cores/dvdplayer/Edl.cpp:18902
/trunk/xbmc/cores/dvdplayer/Edl.cpp:23501-29722
+ /branches/karaoke/xbmc/cores/dvdplayer/Edl.cpp:16819-17295
/branches/timidityupdate/xbmc/cores/dvdplayer/Edl.cpp:16561-16749
/branches/xbmc-zeroconf/XBMC/xbmc/cores/dvdplayer/Edl.cpp:18852-18854
/trunk/XBMC/xbmc/cores/dvdplayer/Edl.cpp:18902
/trunk/xbmc/cores/dvdplayer/Edl.cpp:23501-29758
Property changes on: branches/pvr-testing2/xbmc/cores/dvdplayer/Edl.h
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/karaoke/xbmc/cores/dvdplayer/Edl.h:16819-17295
/branches/timidityupdate/xbmc/cores/dvdplayer/Edl.h:16561-16749
/branches/xbmc-zeroconf/XBMC/xbmc/cores/dvdplayer/Edl.h:18852-18854
/trunk/XBMC/xbmc/cores/dvdplayer/Edl.h:18902
/trunk/xbmc/cores/dvdplayer/Edl.h:23501-29722
+ /branches/karaoke/xbmc/cores/dvdplayer/Edl.h:16819-17295
/branches/timidityupdate/xbmc/cores/dvdplayer/Edl.h:16561-16749
/branches/xbmc-zeroconf/XBMC/xbmc/cores/dvdplayer/Edl.h:18852-18854
/trunk/XBMC/xbmc/cores/dvdplayer/Edl.h:18902
/trunk/xbmc/cores/dvdplayer/Edl.h:23501-29758
Property changes on: branches/pvr-testing2/xbmc/cores/paplayer/PAPlayer.cpp
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/linuxport/XBMC/xbmc/cores/paplayer/PAPlayer.cpp:20974-21045,22314-22366
/trunk/xbmc/cores/paplayer/PAPlayer.cpp:23350-29722
+ /branches/linuxport/XBMC/xbmc/cores/paplayer/PAPlayer.cpp:20974-21045,22314-22366
/trunk/xbmc/cores/paplayer/PAPlayer.cpp:23350-29758
Property changes on: branches/pvr-testing2/xbmc/cores/paplayer/PAPlayer.h
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/linuxport/XBMC/xbmc/cores/paplayer/PAPlayer.h:20974-21045,22314-22366
/trunk/xbmc/cores/paplayer/PAPlayer.h:23350-29722
+ /branches/linuxport/XBMC/xbmc/cores/paplayer/PAPlayer.h:20974-21045,22314-22366
/trunk/xbmc/cores/paplayer/PAPlayer.h:23350-29758
Property changes on: branches/pvr-testing2/xbmc/cores/playercorefactory/PlayerCoreConfig.h
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/karaoke/xbmc/cores/playercorefactory/PlayerCoreConfig.h:16819-17295
/branches/timidityupdate/xbmc/cores/playercorefactory/PlayerCoreConfig.h:16561-16749
/branches/xbmc-zeroconf/XBMC/xbmc/cores/playercorefactory/PlayerCoreConfig.h:18852-18854
/trunk/XBMC/xbmc/cores/playercorefactory/PlayerCoreConfig.h:18902
/trunk/xbmc/cores/playercorefactory/PlayerCoreConfig.h:23501-29722
+ /branches/karaoke/xbmc/cores/playercorefactory/PlayerCoreConfig.h:16819-17295
/branches/timidityupdate/xbmc/cores/playercorefactory/PlayerCoreConfig.h:16561-16749
/branches/xbmc-zeroconf/XBMC/xbmc/cores/playercorefactory/PlayerCoreConfig.h:18852-18854
/trunk/XBMC/xbmc/cores/playercorefactory/PlayerCoreConfig.h:18902
/trunk/xbmc/cores/playercorefactory/PlayerCoreConfig.h:23501-29758
Property changes on: branches/pvr-testing2/xbmc/cores/playercorefactory/PlayerCoreFactory.cpp
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/karaoke/xbmc/cores/playercorefactory/PlayerCoreFactory.cpp:16819-17295
/branches/timidityupdate/xbmc/cores/playercorefactory/PlayerCoreFactory.cpp:16561-16749
/branches/xbmc-zeroconf/XBMC/xbmc/cores/playercorefactory/PlayerCoreFactory.cpp:18852-18854
/trunk/XBMC/xbmc/cores/playercorefactory/PlayerCoreFactory.cpp:18902
/trunk/xbmc/cores/playercorefactory/PlayerCoreFactory.cpp:23501-29722
+ /branches/karaoke/xbmc/cores/playercorefactory/PlayerCoreFactory.cpp:16819-17295
/branches/timidityupdate/xbmc/cores/playercorefactory/PlayerCoreFactory.cpp:16561-16749
/branches/xbmc-zeroconf/XBMC/xbmc/cores/playercorefactory/PlayerCoreFactory.cpp:18852-18854
/trunk/XBMC/xbmc/cores/playercorefactory/PlayerCoreFactory.cpp:18902
/trunk/xbmc/cores/playercorefactory/PlayerCoreFactory.cpp:23501-29758
Property changes on: branches/pvr-testing2/xbmc/cores/playercorefactory/PlayerCoreFactory.h
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/karaoke/xbmc/cores/playercorefactory/PlayerCoreFactory.h:16819-17295
/branches/timidityupdate/xbmc/cores/playercorefactory/PlayerCoreFactory.h:16561-16749
/branches/xbmc-zeroconf/XBMC/xbmc/cores/playercorefactory/PlayerCoreFactory.h:18852-18854
/trunk/XBMC/xbmc/cores/playercorefactory/PlayerCoreFactory.h:18902
/trunk/xbmc/cores/playercorefactory/PlayerCoreFactory.h:23501-29722
+ /branches/karaoke/xbmc/cores/playercorefactory/PlayerCoreFactory.h:16819-17295
/branches/timidityupdate/xbmc/cores/playercorefactory/PlayerCoreFactory.h:16561-16749
/branches/xbmc-zeroconf/XBMC/xbmc/cores/playercorefactory/PlayerCoreFactory.h:18852-18854
/trunk/XBMC/xbmc/cores/playercorefactory/PlayerCoreFactory.h:18902
/trunk/xbmc/cores/playercorefactory/PlayerCoreFactory.h:23501-29758
Property changes on: branches/pvr-testing2/xbmc/cores/playercorefactory/PlayerSelectionRule.cpp
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/karaoke/xbmc/cores/playercorefactory/PlayerSelectionRule.cpp:16819-17295
/branches/timidityupdate/xbmc/cores/playercorefactory/PlayerSelectionRule.cpp:16561-16749
/branches/xbmc-zeroconf/XBMC/xbmc/cores/playercorefactory/PlayerSelectionRule.cpp:18852-18854
/trunk/XBMC/xbmc/cores/playercorefactory/PlayerSelectionRule.cpp:18902
/trunk/xbmc/cores/playercorefactory/PlayerSelectionRule.cpp:23501-29722
+ /branches/karaoke/xbmc/cores/playercorefactory/PlayerSelectionRule.cpp:16819-17295
/branches/timidityupdate/xbmc/cores/playercorefactory/PlayerSelectionRule.cpp:16561-16749
/branches/xbmc-zeroconf/XBMC/xbmc/cores/playercorefactory/PlayerSelectionRule.cpp:18852-18854
/trunk/XBMC/xbmc/cores/playercorefactory/PlayerSelectionRule.cpp:18902
/trunk/xbmc/cores/playercorefactory/PlayerSelectionRule.cpp:23501-29758
Property changes on: branches/pvr-testing2/xbmc/cores/playercorefactory/PlayerSelectionRule.h
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/karaoke/xbmc/cores/playercorefactory/PlayerSelectionRule.h:16819-17295
/branches/timidityupdate/xbmc/cores/playercorefactory/PlayerSelectionRule.h:16561-16749
/branches/xbmc-zeroconf/XBMC/xbmc/cores/playercorefactory/PlayerSelectionRule.h:18852-18854
/trunk/XBMC/xbmc/cores/playercorefactory/PlayerSelectionRule.h:18902
/trunk/xbmc/cores/playercorefactory/PlayerSelectionRule.h:23501-29722
+ /branches/karaoke/xbmc/cores/playercorefactory/PlayerSelectionRule.h:16819-17295
/branches/timidityupdate/xbmc/cores/playercorefactory/PlayerSelectionRule.h:16561-16749
/branches/xbmc-zeroconf/XBMC/xbmc/cores/playercorefactory/PlayerSelectionRule.h:18852-18854
/trunk/XBMC/xbmc/cores/playercorefactory/PlayerSelectionRule.h:18902
/trunk/xbmc/cores/playercorefactory/PlayerSelectionRule.h:23501-29758
Property changes on: branches/pvr-testing2/xbmc/karaoke/Cdg.cpp
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/linuxport/XBMC/xbmc/karaoke/Cdg.cpp:20974-21045,22314-22366
/branches/timidityupdate/xbmc/Cdg.cpp:16561-16749
/branches/xbmc-zeroconf/XBMC/xbmc/karaoke/Cdg.cpp:18852-18854
/trunk/xbmc/karaoke/Cdg.cpp:23350-29722
+ /branches/linuxport/XBMC/xbmc/karaoke/Cdg.cpp:20974-21045,22314-22366
/branches/timidityupdate/xbmc/Cdg.cpp:16561-16749
/branches/xbmc-zeroconf/XBMC/xbmc/karaoke/Cdg.cpp:18852-18854
/trunk/xbmc/karaoke/Cdg.cpp:23350-29758
Property changes on: branches/pvr-testing2/xbmc/karaoke/Cdg.h
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/linuxport/XBMC/xbmc/karaoke/Cdg.h:20974-21045,22314-22366
/branches/timidityupdate/xbmc/Cdg.h:16561-16749
/branches/xbmc-zeroconf/XBMC/xbmc/karaoke/Cdg.h:18852-18854
/trunk/xbmc/karaoke/Cdg.h:23350-29722
+ /branches/linuxport/XBMC/xbmc/karaoke/Cdg.h:20974-21045,22314-22366
/branches/timidityupdate/xbmc/Cdg.h:16561-16749
/branches/xbmc-zeroconf/XBMC/xbmc/karaoke/Cdg.h:18852-18854
/trunk/xbmc/karaoke/Cdg.h:23350-29758
Modified: branches/pvr-testing2/xbmc/lib/libjsonrpc/FileOperations.cpp
===================================================================
--- branches/pvr-testing2/xbmc/lib/libjsonrpc/FileOperations.cpp 2010-05-03 19:02:56 UTC (rev 29758)
+++ branches/pvr-testing2/xbmc/lib/libjsonrpc/FileOperations.cpp 2010-05-03 19:37:41 UTC (rev 29759)
@@ -57,9 +57,17 @@
JSON_STATUS CFileOperations::GetDirectory(const CStdString &method, ITransportLayer *transport, IClient *client, const Value ¶meterObject, Value &result)
{
- if (parameterObject.isObject() && parameterObject.isMember("type") && parameterObject.isMember("directory"))
- {
- CStdString type = parameterObject.get("type", "files").asString();
+ if (parameterObject.isObject() && parameterObject.isMember("directory"))
+ {
+ CStdString type = "files";
+ if (parameterObject.isMember("type"))
+ {
+ if (parameterObject["type"].isString())
+ type = parameterObject["type"].asString();
+ else
+ return InvalidParams;
+ }
+
type = type.ToLower();
if (type.Equals("video") || type.Equals("music") || type.Equals("pictures") || type.Equals("files") || type.Equals("programs"))
@@ -79,14 +87,20 @@
else if (type.Equals("pictures"))
regexps = g_advancedSettings.m_pictureExcludeFromListingRegExps;
- CFileItemList filtereditems;
+ CFileItemList filteredDirectories, filteredFiles;
for (unsigned int i = 0; i < (unsigned int)items.Size(); i++)
{
if (regexps.size() == 0 || !CUtil::ExcludeFileOrFolder(items[i]->m_strPath, regexps))
- filtereditems.Add(items[i]);
- }
+ {
+ if (items[i]->m_bIsFolder)
+ filteredDirectories.Add(items[i]);
+ else
+ filteredFiles.Add(items[i]);
+ }
+ }
- HandleFileItemList(NULL, "directories", filtereditems, parameterObject, result);
+ HandleFileItemList(NULL, "directories", filteredDirectories, parameterObject, result);
+ HandleFileItemList(NULL, "files", filteredFiles, parameterObject, result);
return OK;
}
Modified: branches/pvr-testing2/xbmc/linux/ConsoleDeviceKitPowerSyscall.cpp
===================================================================
--- branches/pvr-testing2/xbmc/linux/ConsoleDeviceKitPowerSyscall.cpp 2010-05-03 19:02:56 UTC (rev 29758)
+++ branches/pvr-testing2/xbmc/linux/ConsoleDeviceKitPowerSyscall.cpp 2010-05-03 19:37:41 UTC (rev 29759)
@@ -44,12 +44,16 @@
bool CConsoleDeviceKitPowerSyscall::Suspend()
{
+ CPowerSyscallWithoutEvents::Suspend();
+
CDBusMessage message("org.freedesktop.DeviceKit.Power", "/org/freedesktop/DeviceKit/Power", "org.freedesktop.DeviceKit.Power", "Suspend");
return message.SendSystem() != NULL;
}
bool CConsoleDeviceKitPowerSyscall::Hibernate()
{
+ CPowerSyscallWithoutEvents::Hibernate();
+
CDBusMessage message("org.freedesktop.DeviceKit.Power", "/org/freedesktop/DeviceKit/Power", "org.freedesktop.DeviceKit.Power", "Hibernate");
return message.SendSystem() != NULL;
}
Modified: branches/pvr-testing2/xbmc/linux/ConsoleDeviceKitPowerSyscall.h
===================================================================
--- branches/pvr-testing2/xbmc/linux/ConsoleDeviceKitPowerSyscall.h 2010-05-03 19:02:56 UTC (rev 29758)
+++ branches/pvr-testing2/xbmc/linux/ConsoleDeviceKitPowerSyscall.h 2010-05-03 19:37:41 UTC (rev 29759)
@@ -24,7 +24,7 @@
#define _DBUS_POWER_SYSCALL_H_
#include "IPowerSyscall.h"
-class CConsoleDeviceKitPowerSyscall : public IPowerSyscall
+class CConsoleDeviceKitPowerSyscall : public CPowerSyscallWithoutEvents
{
public:
CConsoleDeviceKitPowerSyscall();
Modified: branches/pvr-testing2/xbmc/linux/ConsoleUPowerSyscall.cpp
===================================================================
--- branches/pvr-testing2/xbmc/linux/ConsoleUPowerSyscall.cpp 2010-05-03 19:02:56 UTC (rev 29758)
+++ branches/pvr-testing2/xbmc/linux/ConsoleUPowerSyscall.cpp 2010-05-03 19:37:41 UTC (rev 29759)
@@ -59,12 +59,16 @@
bool CConsoleUPowerSyscall::Suspend()
{
+ CPowerSyscallWithoutEvents::Suspend();
+
CDBusMessage message("org.freedesktop.UPower", "/org/freedesktop/UPower", "org.freedesktop.UPower", "Suspend");
return message.SendSystem() != NULL;
}
bool CConsoleUPowerSyscall::Hibernate()
{
+ CPowerSyscallWithoutEvents::Hibernate();
+
CDBusMessage message("org.freedesktop.UPower", "/org/freedesktop/UPower", "org.freedesktop.UPower", "Hibernate");
return message.SendSystem() != NULL;
}
Modified: branches/pvr-testing2/xbmc/linux/ConsoleUPowerSyscall.h
===================================================================
--- branches/pvr-testing2/xbmc/linux/ConsoleUPowerSyscall.h 2010-05-03 19:02:56 UTC (rev 29758)
+++ branches/pvr-testing2/xbmc/linux/ConsoleUPowerSyscall.h 2010-05-03 19:37:41 UTC (rev 29759)
@@ -22,7 +22,7 @@
#ifdef HAS_DBUS
#include "IPowerSyscall.h"
-class CConsoleUPowerSyscall : public IPowerSyscall
+class CConsoleUPowerSyscall : public CPowerSyscallWithoutEvents
{
public:
CConsoleUPowerSyscall();
Modified: branches/pvr-testing2/xbmc/linux/DeviceKitDisksProvider.cpp
===================================================================
--- branches/pvr-testing2/xbmc/linux/DeviceKitDisksProvider.cpp 2010-05-03 19:02:56 UTC (rev 29758)
+++ branches/pvr-testing2/xbmc/linux/DeviceKitDisksProvider.cpp 2010-05-03 19:37:41 UTC (rev 29759)
@@ -243,7 +243,7 @@
for(itr = m_AvailableDevices.begin(); itr != m_AvailableDevices.end(); ++itr)
{
CDeviceKitDiskDevice *device = itr->second;
- if (device->IsApproved())
+ if (device->m_isMounted)
{
CStdString str;
str.Format("%s %.1f GiB", device->m_MountPath.c_str(), device->m_PartitionSizeGiB);
Modified: branches/pvr-testing2/xbmc/linux/HALPowerSyscall.cpp
===================================================================
--- branches/pvr-testing2/xbmc/linux/HALPowerSyscall.cpp 2010-05-03 19:02:56 UTC (rev 29758)
+++ branches/pvr-testing2/xbmc/linux/HALPowerSyscall.cpp 2010-05-03 19:37:41 UTC (rev 29759)
@@ -43,10 +43,12 @@
}
bool CHALPowerSyscall::Suspend()
{
+ CPowerSyscallWithoutEvents::Suspend();
return doPowerCall("Suspend");
}
bool CHALPowerSyscall::Hibernate()
{
+ CPowerSyscallWithoutEvents::Hibernate();
return doPowerCall("Hibernate");
}
bool CHALPowerSyscall::Reboot()
Property changes on: branches/pvr-testing2/xbmc/linux/HALPowerSyscall.cpp
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/karaoke/xbmc/linux/DBusPowerSyscall.cpp:16819-17295
/branches/timidityupdate/xbmc/linux/DBusPowerSyscall.cpp:16561-16749
/branches/xbmc-zeroconf/XBMC/xbmc/linux/DBusPowerSyscall.cpp:18852-18854
/trunk/XBMC/xbmc/linux/DBusPowerSyscall.cpp:18902
/trunk/xbmc/linux/HALPowerSyscall.cpp:23501-23502,23651-29722
+ /branches/karaoke/xbmc/linux/DBusPowerSyscall.cpp:16819-17295
/branches/timidityupdate/xbmc/linux/DBusPowerSyscall.cpp:16561-16749
/branches/xbmc-zeroconf/XBMC/xbmc/linux/DBusPowerSyscall.cpp:18852-18854
/trunk/XBMC/xbmc/linux/DBusPowerSyscall.cpp:18902
/trunk/xbmc/linux/HALPowerSyscall.cpp:23501-23502,23651-29758
Modified: branches/pvr-testing2/xbmc/linux/HALPowerSyscall.h
===================================================================
--- branches/pvr-testing2/xbmc/linux/HALPowerSyscall.h 2010-05-03 19:02:56 UTC (rev 29758)
+++ branches/pvr-testing2/xbmc/linux/HALPowerSyscall.h 2010-05-03 19:37:41 UTC (rev 29759)
@@ -23,7 +23,7 @@
#include "system.h"
#ifdef HAS_HAL
-class CHALPowerSyscall : public IPowerSyscall
+class CHALPowerSyscall : public CPowerSyscallWithoutEvents
{
public:
CHALPowerSyscall();
Property changes on: branches/pvr-testing2/xbmc/linux/HALPowerSyscall.h
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/karaoke/xbmc/linux/DBusPowerSyscall.h:16819-17295
/branches/timidityupdate/xbmc/linux/DBusPowerSyscall.h:16561-16749
/branches/xbmc-zeroconf/XBMC/xbmc/linux/DBusPowerSyscall.h:18852-18854
/trunk/XBMC/xbmc/linux/DBusPowerSyscall.h:18902
/trunk/xbmc/linux/HALPowerSyscall.h:23501-23502,23651-29722
+ /branches/karaoke/xbmc/linux/DBusPowerSyscall.h:16819-17295
/branches/timidityupdate/xbmc/linux/DBusPowerSyscall.h:16561-16749
/branches/xbmc-zeroconf/XBMC/xbmc/linux/DBusPowerSyscall.h:18852-18854
/trunk/XBMC/xbmc/linux/DBusPowerSyscall.h:18902
/trunk/xbmc/linux/HALPowerSyscall.h:23501-23502,23651-29758
Modified: branches/pvr-testing2/xbmc/linux/UDisksProvider.cpp
===================================================================
--- branches/pvr-testing2/xbmc/linux/UDisksProvider.cpp 2010-05-03 19:02:56 UTC (rev 29758)
+++ branches/pvr-testing2/xbmc/linux/UDisksProvider.cpp 2010-05-03 19:37:41 UTC (rev 29759)
@@ -225,7 +225,7 @@
for(itr = m_AvailableDevices.begin(); itr != m_AvailableDevices.end(); ++itr)
{
CUDiskDevice *device = itr->second;
- if (device->IsApproved())
+ if (device->m_isMounted)
{
CStdString str;
str.Format("%s %.1f GiB", device->m_MountPath.c_str(), device->m_PartitionSizeGiB);
Modified: branches/pvr-testing2/xbmc/osx/CocoaPowerSyscall.cpp
===================================================================
--- branches/pvr-testing2/xbmc/osx/CocoaPowerSyscall.cpp 2010-05-03 19:02:56 UTC (rev 29758)
+++ branches/pvr-testing2/xbmc/osx/CocoaPowerSyscall.cpp 2010-05-03 19:37:41 UTC (rev 29759)
@@ -58,6 +58,7 @@
bool CCocoaPowerSyscall::Suspend()
{
CLog::Log(LOGDEBUG, "CCocoaPowerSyscall::Suspend");
+ CPowerSyscallWithoutEvents::Suspend();
//sending sleep event to system
OSErr error = SendAppleEventToSystemProcess(kAESleep);
Modified: branches/pvr-testing2/xbmc/osx/CocoaPowerSyscall.h
===================================================================
--- branches/pvr-testing2/xbmc/osx/CocoaPowerSyscall.h 2010-05-03 19:02:56 UTC (rev 29758)
+++ branches/pvr-testing2/xbmc/osx/CocoaPowerSyscall.h 2010-05-03 19:37:41 UTC (rev 29759)
@@ -24,7 +24,7 @@
#ifdef __APPLE__
#include "IPowerSyscall.h"
-class CCocoaPowerSyscall : public IPowerSyscall
+class CCocoaPowerSyscall : public CPowerSyscallWithoutEvents
{
public:
CCocoaPowerSyscall();
Modified: branches/pvr-testing2/xbmc/osx/SDLMain.mm
===================================================================
--- branches/pvr-testing2/xbmc/osx/SDLMain.mm 2010-05-03 19:02:56 UTC (rev 29758)
+++ branches/pvr-testing2/xbmc/osx/SDLMain.mm 2010-05-03 19:37:41 UTC (rev 29759)
@@ -381,6 +381,19 @@
- (void) workspaceWillSleepNotification:(NSNotification *) note
{
+ SDL_Event event;
+
+ // Post an media stop event to the application thread.
+ memset(&event, 0, sizeof(event));
+ event.type = SDL_USEREVENT;
+ event.user.code = TMSG_MEDIA_STOP;
+ SDL_PushEvent(&event);
+
+ // Post an suspend event to the application thread.
+ memset(&event, 0, sizeof(event));
+ event.type = SDL_USEREVENT;
+ event.user.code = TMSG_SUSPEND;
+ SDL_PushEvent(&event);
}
- (void) deviceDidMountNotification:(NSNotification *) note
Modified: branches/pvr-testing2/xbmc/utils/WebServer.cpp
===================================================================
--- branches/pvr-testing2/xbmc/utils/WebServer.cpp 2010-05-03 19:02:56 UTC (rev 29758)
+++ branches/pvr-testing2/xbmc/utils/WebServer.cpp 2010-05-03 19:37:41 UTC (rev 29759)
@@ -132,12 +132,6 @@
{
if (strURL.Left(18).Equals("/xbmcCmds/xbmcHttp"))
return HttpApi(connection);
- else if (strURL.Left(6).Equals("/thumb"))
- {
- strURL = strURL.Right(strURL.length() - 7);
- strURL = strURL.Left(strURL.length() - 4);
- return CreateFileDownloadResponse(connection, strURL);
- }
else if (strURL.Left(4).Equals("/vfs"))
{
strURL = strURL.Right(strURL.length() - 5);
@@ -237,19 +231,10 @@
if (file->Open(strURL))
{
struct MHD_Response *response;
- if (file->GetLength() > 0)
- {
- response = MHD_create_response_from_callback ( file->GetLength(),
- 2048,
- &CWebServer::ContentReaderCallback, file,
- &CWebServer::ContentReaderFreeCallback);
- }
- else
- {
- //libmicrohttpd calls abort() when CWebServer::ContentReaderCallback return 0
- delete file;
- response = MHD_create_response_from_data(0, NULL, MHD_NO, MHD_NO);
- }
+ response = MHD_create_response_from_callback ( file->GetLength(),
+ 2048,
+ &CWebServer::ContentReaderCallback, file,
+ &CWebServer::ContentReaderFreeCallback);
CStdString ext = CUtil::GetExtension(strURL);
ext = ext.ToLower();
@@ -287,8 +272,12 @@
#endif
{
CFile *file = (CFile *)cls;
- file->Seek(pos);
- return file->Read(buf, max);
@@ Diff output truncated at 100000 characters. @@
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|