Arne Morten Kvarving [Wed, 15 May 2013 08:39:10 +0000 (01:39 -0700)]
Merge pull request #2065 from sandsmark/master
Drop played parts of video files from the fs cache.
Martin T. H. Sandsmark [Sat, 12 Jan 2013 15:41:41 +0000 (16:41 +0100)]
Drop played parts of video files from the fs cache.
Patch by Steinar H. Gunderson:
This patch fixes a persistent problem I've been seing on my Linux HTPC
in that if I adjust the volume from the XBMC Android remote, the video
glitches for a few (4–5) frames. Seemingly this is because loading the
video file has caused the graphics for the volume control to be swapped
out (it does not happen if I recently used the volume control).
One could argue that the right fix for this would be to reduce
/proc/sys/vm/swappiness, but it might not seem reasonable to expect
end-users to fiddle with VM parameters (and the user might not even have
root access). I view this fix as complimentary in nature.
What we do is to use posix_fadvise() to tell the kernel that previously
read parts of the video file will no longer be used, causing it to drop
those from its buffer cache. This makes other things, like in my case,
the volume control graphics, stay cached. This is, of course, assuming
you don't have other processes that trash your cache, but as long as
XBMC is running relatively undisturbed, this shouldn't be a big problem.
The patch is conservative:
* We only drop data after we've read 16MB past it. (This counter is
reset on seeks.)
* We never drop data from the first 16MB of a file (this makes sure we
don't drop _anything_ from files <32MB, ie. graphics, configuration
files, etc.).
* In order to avoid making tons of extra syscalls, we only drop in 1MB
chunks.
Unfortunately Linux as of 3.1.0 has no way of just _hinting_ that we
will no longer need these parts -- when we issue posix_fadvise(), the
data is immediately and unconditionally dropped from the buffer cache.
(If you read the manpage, it might seem otherwise, until you come to the
point where it tells how these flags are actually interpreted by the
kernel.) Future kernels might remedy this.
bobo1on1 [Tue, 14 May 2013 17:31:36 +0000 (10:31 -0700)]
Merge pull request #2748 from bobo1on1/32bitmul
Was tested, works.
Bob van Loosen [Tue, 14 May 2013 16:43:01 +0000 (18:43 +0200)]
rename: MUL32 -> AE_MUL32
Bob van Loosen [Tue, 14 May 2013 10:28:45 +0000 (12:28 +0200)]
fixed: when doing a format conversion from float to 32 bit int, multiply with INT32_MAX - 127, since this is the maximum value that can be stored in 32 bit float and int, if INT32_MAX gets converted to float, it gets rounded to INT32_MAX + 1 which can cause wrap around distortion
Lars Op den Kamp [Tue, 14 May 2013 08:23:59 +0000 (10:23 +0200)]
fixed: peripheral settings must be visible for peripherals that are detected
Cory Fields [Tue, 14 May 2013 06:37:43 +0000 (02:37 -0400)]
jni: fix crashes when finding external storage. Regression from jni merge.
wsoltys [Tue, 14 May 2013 05:43:26 +0000 (22:43 -0700)]
Merge pull request #2741 from Karlson2k/win32_sysinfo_clean
Small cleanup for CSysInfo
Memphiz [Mon, 13 May 2013 21:07:36 +0000 (23:07 +0200)]
[settings] - fix fetching the eventserver port as int from xbmchelper - fixes #14329 i guess
Sascha Montellese [Mon, 13 May 2013 20:23:48 +0000 (13:23 -0700)]
Merge pull request #2744 from herrnst/fix-disable-webserver
[fix] fix compilation with --disable-webserver
Memphiz [Mon, 13 May 2013 20:10:55 +0000 (22:10 +0200)]
[osx/ios/atv2] - sync xcode projects
Memphiz [Mon, 13 May 2013 20:11:35 +0000 (13:11 -0700)]
Merge pull request #2665 from Montellese/legacy_db_paths
add legacy videodb/musicdb path translation
Daniel Scheller [Mon, 13 May 2013 19:53:14 +0000 (21:53 +0200)]
[fix] fix compilation with --disable-webserver
montellese [Mon, 29 Apr 2013 20:48:14 +0000 (22:48 +0200)]
[win32] update VS project files
montellese [Mon, 29 Apr 2013 21:36:46 +0000 (23:36 +0200)]
viewdb: update videodb:// and musicdb:// paths in "view" table
montellese [Mon, 29 Apr 2013 21:36:18 +0000 (23:36 +0200)]
musicdb: update musicdb:// paths in "content" table
montellese [Mon, 29 Apr 2013 20:51:22 +0000 (22:51 +0200)]
musicdb: add translation for legacy paths
montellese [Mon, 29 Apr 2013 20:50:51 +0000 (22:50 +0200)]
videodb: add translation for legacy paths
montellese [Mon, 29 Apr 2013 20:46:58 +0000 (22:46 +0200)]
utils: add CLegacyPathTranslation
montellese [Mon, 29 Apr 2013 20:50:00 +0000 (22:50 +0200)]
videodb: fix videodb:// path for musicvideo artists
montellese [Sun, 28 Apr 2013 17:08:27 +0000 (19:08 +0200)]
cosmetic in CGUIWindowVideoNav
Memphiz [Mon, 13 May 2013 18:56:11 +0000 (20:56 +0200)]
[osx/ios/atv2] - sync xcode projects (generic environment))
Voyager1 [Mon, 13 May 2013 07:45:11 +0000 (00:45 -0700)]
Merge pull request #2723 from Voyager1/libdvdread-fix
Libdvdread fix for SMB, NFS, VIDEO_TS files (non-Windows platforms). fixes #14316
jmarshallnz [Mon, 13 May 2013 03:12:41 +0000 (20:12 -0700)]
Merge pull request #2742 from ulion/fix_text_color_change
Fix color tag didn't hide bug introduced by PR2725. Fix #14293
davilla [Mon, 13 May 2013 00:43:20 +0000 (17:43 -0700)]
Merge pull request #2735 from davilla/add-avformat_network-bits
fixed, add avformat_network_init/avformat_network_deinit
ulion [Mon, 13 May 2013 00:41:14 +0000 (08:41 +0800)]
Fix color tag didn't hide bug introduced by PR2725.
Jonathan Marshall [Sun, 12 May 2013 20:57:08 +0000 (08:57 +1200)]
fixes GetRandomMusicVideo query on mysql
jmarshallnz [Sun, 12 May 2013 20:30:43 +0000 (13:30 -0700)]
Merge pull request #2734 from jmarshallnz/dont_byte_off_more_than_you_can_chew
Get rid of #define byte in PlatformDefs.h
Karlson2k [Sun, 12 May 2013 19:51:12 +0000 (23:51 +0400)]
[win32] Remove CSysInfo::IsVistaOrHigher and CSysInfo::IsWindows8OrHigher functions
Karlson2k [Sun, 12 May 2013 19:46:33 +0000 (23:46 +0400)]
[win32] replace usage of IsVistaOrHigher and IsWindows8OrHigher with unified function IsWindowsVersionAtLeast
davilla [Sun, 12 May 2013 14:50:23 +0000 (10:50 -0400)]
fixed, move load before we try to access and make sure we are loaded before accessing functions
davilla [Sun, 12 May 2013 13:24:49 +0000 (06:24 -0700)]
Merge pull request #2732 from t4-ravenbird/darwin-ping
[fix] ping timeout option for darwin
davilla [Sun, 12 May 2013 03:59:25 +0000 (23:59 -0400)]
fixed, add avformat_network_init/avformat_network_deinit
davilla [Sun, 12 May 2013 03:43:47 +0000 (23:43 -0400)]
fixed, sometimes an ferror was returned when using fread, switch to fgets like most other usage of popen
jmarshallnz [Sat, 11 May 2013 23:31:31 +0000 (16:31 -0700)]
Merge pull request #2715 from leechguy/settings_refactor_profile_fix
[Fix] Load correct guisettings.xml file when switching profile
Jonathan Marshall [Sat, 11 May 2013 23:25:28 +0000 (11:25 +1200)]
Revert "[rbp] fixed compile on raspberrypi" - no longer required now that #define byte is gone.
This reverts commit
2da5c6520ab0abd90345b8cd140d37635800d607.
LeechGuy [Fri, 10 May 2013 12:25:37 +0000 (14:25 +0200)]
Remove setting of special://profile path from OnSettingsLoading(); special://profile path is already set to the correct path when the settings are being loaded.
LeechGuy [Fri, 10 May 2013 12:24:26 +0000 (14:24 +0200)]
When ProfilesManager::m_currentProfile is changed the special://profile path must be updated as well.
Added SetCurrentProfileId() function for manipulating m_currentProfile. Replaced all occurances of direct manipulation by using this function. This makes sure that the special://profile path is updated as well when updating the current profile id.
Since SetCurrentProfileId() is called in ProfilesManager::Load(), the special://profile path is now automatically set which made it obsolete in CApplication::Create().
LeechGuy [Fri, 10 May 2013 09:56:37 +0000 (11:56 +0200)]
Update special://profile before attempting to load the profile's guisettings.xml file.
jmarshallnz [Sat, 11 May 2013 23:11:49 +0000 (16:11 -0700)]
Merge pull request #1272 from Karlson2k/xbmc_setenv_clean
Implementation of platform-independ environment manipulations
Karlson2k [Thu, 11 Apr 2013 06:53:48 +0000 (10:53 +0400)]
Environment: Use CEnvironment for win32 in Application.cpp
Karlson2k [Sat, 11 May 2013 23:08:22 +0000 (03:08 +0400)]
Environment: Implement "CEnvironment" class with functions for environment manipulation and add it files to project and to Makefile.in
Jonathan Marshall [Sat, 11 May 2013 22:58:15 +0000 (10:58 +1200)]
remove undef of byte workarounds now that we don't define it in PlatformDefs.h
Jonathan Marshall [Sat, 11 May 2013 22:57:38 +0000 (10:57 +1200)]
remove define of byte in PlatformDefs.h
Jonathan Marshall [Sat, 11 May 2013 22:56:57 +0000 (10:56 +1200)]
removes usage of byte from RarFile
Jonathan Marshall [Sat, 11 May 2013 22:56:14 +0000 (10:56 +1200)]
removes usage of byte from iso9660 code
jmarshallnz [Sat, 11 May 2013 21:54:04 +0000 (14:54 -0700)]
Merge pull request #2726 from ulion/revert_curl_ratelimit
Revert curl ratelimit
WiSo [Sat, 11 May 2013 17:16:07 +0000 (19:16 +0200)]
fixed: no sound with paplayer. set m_replayGainSettings on XBMC start to init it with reasonable values.
Martijn Kaijser [Sat, 11 May 2013 15:04:20 +0000 (17:04 +0200)]
move verbose logging below enable debug logging and make it a "subsetting" fixes #14317
davilla [Sat, 11 May 2013 14:48:20 +0000 (07:48 -0700)]
Merge pull request #2727 from huceke/raspberrypi
[rbp] fixed compile on raspberrypi
montellese [Sat, 11 May 2013 12:26:57 +0000 (14:26 +0200)]
fix weather.currentlocation default value and remove its valid range contraints
montellese [Sat, 11 May 2013 12:12:30 +0000 (14:12 +0200)]
settings: services.webserverport must not depend on services.webserver
montellese [Sat, 11 May 2013 12:01:54 +0000 (14:01 +0200)]
fix loading of multiple advanced settings XML files
t4.ravenbird [Sat, 11 May 2013 11:34:27 +0000 (13:34 +0200)]
fix ping timeout option for darwin
montellese [Sat, 11 May 2013 11:14:37 +0000 (13:14 +0200)]
CGUIWindowSettingsCategory: fix segfault when changing a delayed setting leads to a window reload
jmarshallnz [Sat, 11 May 2013 07:58:33 +0000 (00:58 -0700)]
Merge pull request #2721 from Rawk/use_return_value_GetExtension
Remove URIUtils::GetExtension(..) function without return value
jmarshallnz [Sat, 11 May 2013 07:45:40 +0000 (00:45 -0700)]
Merge pull request #2718 from simonvetter/xbmcv6
JSONRPCServer, AirPlayServer, WebServer: listen on ipv6 if available, else fall back to ipv4
gimli [Sat, 11 May 2013 07:18:54 +0000 (09:18 +0200)]
[rbp] fixed compile on raspberrypi
fixing the following compile error on raspberrypi introduced by https://github.com/xbmc/xbmc/pull/2691
make: Entering directory `/media/usbdisk/xbmc/xbmc-bcm/xbmc-rbp/xbmc/windowing/egl'
CPP xbmc/windowing/egl/EGLNativeTypeAmlogic.o
In file included from /media/usbdisk/xbmc/xbmc-bcm/buildroot-rbp/output/host/usr/arm-unknown-linux-gnueabi/sysroot/usr/include/linux/fb.h:5:0,
from EGLNativeTypeAmlogic.cpp:31:
/media/usbdisk/xbmc/xbmc-bcm/buildroot-rbp/output/host/usr/arm-unknown-linux-gnueabi/sysroot/usr/include/linux/i2c.h:126:7: error: multiple types in one declaration
/media/usbdisk/xbmc/xbmc-bcm/buildroot-rbp/output/host/usr/arm-unknown-linux-gnueabi/sysroot/usr/include/linux/i2c.h:126:7: error: declaration does not declare anything [-fpermissive]
make: *** [EGLNativeTypeAmlogic.o] Fehler 1
Jonathan Marshall [Sat, 11 May 2013 00:09:34 +0000 (12:09 +1200)]
eliminate compile warnings
Simon Vetter [Sun, 28 Apr 2013 03:21:07 +0000 (20:21 -0700)]
JSONRPCServer, AirPlayServer: listen on ipv6 if available.
Try to open an ipv6 socket and disable IPV6_V6ONLY to make
it dual stack. If we can't get a socket because ipv6 is not
supported at runtime (i.e. ipv6.ko not loaded), fallback to
ipv4.
Simon Vetter [Mon, 29 Apr 2013 05:15:04 +0000 (22:15 -0700)]
WebServer: if ipv6 is available, try to start two MHD instances,
one on ipv6, then one on ipv4. On dual-stack systems where listening
on ipv6 also accepts ipv4 connections (at least OSX), only
one thread will be used and serve both address families.
On others, two threads will be started.
ulion [Sat, 11 May 2013 00:16:53 +0000 (17:16 -0700)]
Merge pull request #2725 from ulion/fix_color_index_overflow
Fix color index overflow by reuse existed color in the vector. Fix #14293
ulion [Fri, 10 May 2013 22:03:55 +0000 (06:03 +0800)]
Fix color index overflow by reuse existed color in the vector. Fix #14293
ulion [Sat, 11 May 2013 00:11:28 +0000 (08:11 +0800)]
Fix osx compile.
Cory Fields [Fri, 10 May 2013 23:45:30 +0000 (16:45 -0700)]
Merge pull request #2685 from theuni/jni-lib
JNI Overhaul
Cory Fields [Fri, 3 May 2013 02:07:56 +0000 (22:07 -0400)]
jni: add a quick readme
Cory Fields [Thu, 2 May 2013 22:37:37 +0000 (18:37 -0400)]
jni: fix AE build after adding new jni lib
Cory Fields [Thu, 2 May 2013 22:32:46 +0000 (18:32 -0400)]
jni: remove the hard-coded receiver
We register for everything dynamically in native code now
Cory Fields [Thu, 2 May 2013 22:31:47 +0000 (18:31 -0400)]
jni: pass the current intent along to our activity
Cory Fields [Thu, 2 May 2013 22:30:51 +0000 (18:30 -0400)]
jni: rename OnReceive to match what the helper lib expects
Also print events as they come in
Cory Fields [Thu, 2 May 2013 22:21:34 +0000 (18:21 -0400)]
jni: remove old files
Cory Fields [Thu, 2 May 2013 22:20:28 +0000 (18:20 -0400)]
jni: fix headers
Cory Fields [Thu, 2 May 2013 22:19:54 +0000 (18:19 -0400)]
jni: show the intent action that started us
Cory Fields [Fri, 10 May 2013 23:17:19 +0000 (19:17 -0400)]
jni: cosmetics: indent after scoping CXBMCApp and CEventLoop
Cory Fields [Thu, 2 May 2013 22:17:42 +0000 (18:17 -0400)]
jni: simplify android_main
We no longer have to send this stuff to our jni handlers.
Also scope the objects we create so that they are explicitly destroyed before
we exit.
Cory Fields [Thu, 2 May 2013 22:12:56 +0000 (18:12 -0400)]
jni: use new jni functions for controlling the wakelock
Cory Fields [Thu, 2 May 2013 22:06:42 +0000 (18:06 -0400)]
jni: use new jni functions for getting the battery level
Register for status changes, then update when we get one. This avoids polling.
Cory Fields [Thu, 2 May 2013 22:02:38 +0000 (18:02 -0400)]
jni: use new jni functions for listing applications
Cory Fields [Thu, 2 May 2013 22:01:47 +0000 (18:01 -0400)]
jni: use new jni functions for getting icons
Cory Fields [Thu, 2 May 2013 22:00:27 +0000 (18:00 -0400)]
jni: use new jni functions for starting an activity
Cory Fields [Thu, 2 May 2013 21:59:15 +0000 (17:59 -0400)]
jni: use new jni functions for querying launch intent
Cory Fields [Thu, 2 May 2013 21:56:17 +0000 (17:56 -0400)]
jni: use new jni functions for getting external storage paths
Cory Fields [Thu, 2 May 2013 21:43:41 +0000 (17:43 -0400)]
jni: use new jni functions to query storage
Cory Fields [Thu, 2 May 2013 21:42:22 +0000 (17:42 -0400)]
jni: use new jni functions for audio control
Cory Fields [Thu, 2 May 2013 21:40:03 +0000 (17:40 -0400)]
jni: use new jni functions to setup our environment
Cory Fields [Thu, 2 May 2013 21:15:09 +0000 (17:15 -0400)]
jni: inherit from CJNIContext
This turns CXBMCApp into a NativeActivity, meaning that we can call the same
functions that a normal android could call from its context.
Cory Fields [Thu, 2 May 2013 21:12:39 +0000 (17:12 -0400)]
jni: add a bunch of headers we'll need for jni
Cory Fields [Wed, 1 May 2013 03:53:56 +0000 (23:53 -0400)]
jni: add libjnigraphics for native bitmap functions
Cory Fields [Mon, 29 Apr 2013 21:23:38 +0000 (17:23 -0400)]
jni: build jni library
Cory Fields [Thu, 2 May 2013 22:23:04 +0000 (18:23 -0400)]
jni: add our shiny new jni library
Cory Fields [Fri, 10 May 2013 23:28:50 +0000 (19:28 -0400)]
droid: fix build. This header may be needed elsewhere as well?
ulion [Fri, 10 May 2013 22:15:20 +0000 (06:15 +0800)]
Revert "[musicdb] implement a per host rate-limiter to avoid hitting the musicbrainz rate-limit and be more friendly to our peers."
This reverts commit
241a4fc0babb108f652b993b2b40a20397433118.
ulion [Fri, 10 May 2013 22:15:00 +0000 (06:15 +0800)]
Revert "[musicdb] fix: avoid crash on exit in curl rate-limiter due to iterator invalidation"
This reverts commit
02f76a216a68f552777caa80b2bd6b0f08de31df.
ulion [Fri, 10 May 2013 22:14:23 +0000 (06:14 +0800)]
Revert "[musicdb] fix the curlfile crash on exit properly this time"
This reverts commit
b63bcc3d4dae8ed5404f71bdb2abbc485526eb45.
ulion [Fri, 10 May 2013 22:14:01 +0000 (06:14 +0800)]
Revert "[musicdb] more curl fixes"
This reverts commit
4995c010b67ec20a7f46d0bc08eee5703763bcdb.
ulion [Fri, 10 May 2013 22:00:15 +0000 (15:00 -0700)]
Merge pull request #2619 from ulion/osx_support_system_input_method
[OSX] support system input method
jmarshallnz [Fri, 10 May 2013 21:57:17 +0000 (14:57 -0700)]
Merge pull request #2627 from nuka1195/Branch_Python_Dialog_notification
[Python] Adds a convenience dialog. Dialog.notification()
ulion [Fri, 10 May 2013 12:04:57 +0000 (20:04 +0800)]
[OSX] GUIDialogKeyboardGeneric support osx system input method.
ulion [Fri, 10 May 2013 12:02:37 +0000 (20:02 +0800)]
[OSX] support system input method and send inputed text to xbmc.
Cory Fields [Fri, 10 May 2013 21:56:17 +0000 (14:56 -0700)]
Merge pull request #2712 from theuni/no-whole-archive
build: stop using whole-archive for our final binary