Frodo #2272

wants to merge 187 commits into


None yet
ghost commented Feb 21, 2013

No description provided.

huceke and others added some commits Jan 3, 2013
@huceke @davilla huceke [rbp/omxplayer] fixed subtitle display time. fixes #13861 c5c2a0f
@davilla Jonathan Marshall compilations node in the music library returned all albums, rather th…
…an just compilation albums. fixes #13825 #13825. Thanks to Xycl.
@davilla Jonathan Marshall parse id3v1 tags of mp3 files 80a9378
@davilla Jonathan Marshall use a helper function to retrieve the CPluginDirectory instance from …
…the handle, thanks to ulion
@davilla Jonathan Marshall use a map instead of a vector for holding plugin handles - ensures th…
…at we don't attempt to access the wrong one if an earlier handle was removed. Thanks to ulion for finding the issue
@davilla Jonathan Marshall progress control with reveal set to true didn't update correctly with…
… dirty regions set to 1. fixes #13887
@davilla Jonathan Marshall don't allow a job with id 0 (will be used for invalid job id) a9f97d1
@davilla Jonathan Marshall if the job manager isn't running, don't add new jobs b1f14a7
@opdenkamp @davilla opdenkamp [epg] fixed - epg load/update was interrupted when the pvr manager im…
…ports channels, leading to delays and channel ids gone missing in certain situations
@davilla Jonathan Marshall adds missing NULL check in CPluginDirectory::SetSetting 0e86a88
@mad-max @davilla mad-max added visible tag for TV show label c014894
@davilla Jonathan Marshall use safe decompression for lzo'd textures to avoid a crash on corrupt…
… textures. The decompression is only fractionally slower
@davilla Jonathan Marshall pass the correct output buffer size to lzo1x_compress rather than the…
… input buffer size
@davilla Jonathan Marshall check the result of lzo1x_optimize 839963d
@davilla Jonathan Marshall change compilations logic to detect album_artist set to 'Various' or …
…'Various Artists'
@wsoltys @davilla wsoltys [WIN32] update TexturePacker.exe after 6ebca6 acfe70f
@elupus @davilla elupus dvdplayer: ff/rw/seek was broken for inputs implementing IDisplayTime
This affected PVR with file based inputs and BluRay.
@Montellese @davilla Montellese CGUIMediaWindow: fix invalid filter-path when toggling watched mode w…
…hich leads to not grouping into movie sets
@elupus @davilla elupus dvdplayer: another fix for seeking/fw/rw in PVR 334db2a
@opdenkamp @davilla opdenkamp [pvr] fix channel import for mysql backends. closes #13810 7c862ea
@opdenkamp @davilla opdenkamp fixed - don't try to go to the previous window when stopping playback…
… on exit. closes #13884
@opdenkamp @davilla opdenkamp [pvr] fixed canceling the active timer on a channel in certain situat…
@opdenkamp @davilla opdenkamp moved nyxboard power and user button from peripheral config to keyboa…
@davilla Jonathan Marshall reset initial visible state to visible if it has been set to delayed …
…during a previous window session. fixes #13923
@davilla Jonathan Marshall revert part of 60b0ee0 that somehow snuck in 9a3b498
@davilla Jonathan Marshall view control in login window was cleared on deinit rather than on unl…
…oad. fixes #13813.
@davilla Jonathan Marshall album art for individual songs in file mode weren't loading correctly…
… - fixes #13906
@davilla Jonathan Marshall always add the repository to the add-ons database even if it returns …
…no add-ons. fixes constant (every 10 minutes) hitting of add-on repos that have no add-ons
@davilla John Rennie Correct handling of multimedia key presses e02162a
@opdenkamp @davilla opdenkamp [cec] don't send incorrect pause/resume to slideshow when the source …
…is (de)activated and don't resume playback when the source is activated and we didn't pause it when the source was deactivated
@opdenkamp @davilla opdenkamp [cec] don't update the device type in settings with the value that wa…
…s returned from libCEC
@popcornmix @davilla popcornmix Fix for timestamp problems commonly seen with avi files. 0501cb2
@davilla Jonathan Marshall write id3v2 tags when ripping cds to mp3 360307a
@davilla Jonathan Marshall [cddb] use uint32_t for the disc id rather than unsigned long and oth…
…er permutations - it has to be 32 bits. fixes #13933.
@davilla Jonathan Marshall fix horizontal alignment of outlined text. fixes #13909 12406c3
@davilla Jonathan Marshall [jpegio] use chunked reading in case the filesize isn't available on …
@davilla Jonathan Marshall If cached art from Eden exists, but no original url is available, map…
… it to an unknown http address so that the art is maintained in Frodo. Required as scraper caused actor art to be this way in Eden.
@davilla Jonathan Marshall [jpegio] clarify and comment the reading code and handle the case of …
…an expanding file.
@davilla Jonathan Marshall don't use the parent folder for art if the item is a folder item and …
…has no slash at end
@davilla Jonathan Marshall export art when exporting to a single file/folder structure d4a6a82
@davilla Jonathan Marshall import art from a previously exported library 9f5c925
@Montellese @davilla Montellese jsonrpc: only close the specified player (fixes #13936) b935f29
@skywalker666 @davilla skywalker666 Issue #13810: This should fix the DELETE statement for MySQL (UNTESTE…

MySQL does not allow for SubSelects on the table you are updating or deleting from. So we have to use a statement with joins instead. Unfortunatly DeleteValues does not support the needed syntax, so we just execute the plain query.
@opdenkamp @davilla opdenkamp [cec] fixed - incorrect error message was being displayed in the toas…
…t popup when libCEC could not be found on the system (c+p is bad mmm'kay)
@Memphiz @davilla Memphiz [osx] - log the window name if a window completly obscures XBMC and l…
…eads to framelimiting (so we can identify / add exceptional apps easily)
@opdenkamp @davilla opdenkamp [pvr] fix loop in CGUIWindowPVRChannels::SelectNextGroup e9fea05
@opdenkamp @davilla opdenkamp [epg] fixed possible crash in CGUIEPGGridContainer::Render(). credits…
… to forum user 'x-cimo'
@opdenkamp @davilla opdenkamp ... and fixed the typo in d108eaf 2833a67
@opdenkamp @davilla opdenkamp [pvr] work around for frodo to fix CPVRDatabase::RemoveStaleChannelsF…
…romGroup for both sqlite3 and mysql
@Memphiz @davilla Memphiz [EDL] - look for edl files not only for smb but also for nfs and afp 351930a
@amet @davilla amet [fix] make sure we actually stop the service addon before upgrading it b106c35
@opdenkamp @davilla opdenkamp [pvr] bump pvr add-ons to opdenkamp/xbmc-pvr-addons@a9780e0 397cc81
@ronie @davilla ronie don't append null-terminator to buffer. fixes #13545 648b6fc
@sraue @davilla sraue [automake] remove long time deprecated automake macros and variables …
…which are removed finally in automake-1.13

Signed-off-by: Stephan Raue <>
@wsoltys @davilla wsoltys fixed: system screensaver could kick in when playing video. We won't …
…please everyone with this change but at least it brings somewhat the old behavior back without altering the registry.
@opdenkamp @davilla opdenkamp [cec] physical address override was hidden on the pi. made it visible…
… again
@tru @davilla tru [CoreAudioAE] Fix CFString copy function in CCoreAudioHardware::GetOu…

Using UTF8 encoding might fail and return NULL. Instead we pass
@amet @davilla amet [fix] only start service addon if there is no other instance running 37ebf46
@amet @davilla amet [fix] stop service addon before attempting to uninstall/delete it 0a20a1d
@amet @davilla amet remove duplicate code in "CAddonDatabase::DisableAddon()" 20856b2
@amet @davilla amet [fix] correctly handle service addon rollback process 51cbf3c
@Memphiz @davilla Memphiz [osx] - hotkeycontroller - keyup and keydown were inverted a15d0b8
@Memphiz @davilla Memphiz [osx] - fix volume mediakeys now control xbmc volume (fixes volume bu…
…ttons on nyxboard and hw volume buttons on macs/osx)
@amet @davilla amet check if hogPid was set before resetting it 8d88d71
@popcornmix @davilla popcornmix Fix for audio out of sync part 2 679ccf1
@popcornmix @davilla popcornmix Apply volume control at audio_mixer when possible eb0d345
@popcornmix @davilla popcornmix Send mute commands to players not using AE 61883bb
@davilla John Rennie Add key mapping for the power button eeb5042
@davilla John Rennie Add support for sleep key in Linux 547d0b0
@davilla John Rennie Move the Nyxboard sleep key mapping to the main keymap ab6845d
@davilla John Rennie Use key name not id in the Nyxboard mapping for F4 5c45745
@Memphiz @davilla Memphiz [osx] - stop hammering the noidlesleep assertion - we only need to ho…
…ld it once.
@Memphiz @davilla Memphiz [AE/CA] - implement streamsilence flag (releases powermanagement asse…
…rtion which is hold since lion even when holding a shared audio device open)
@ronie @davilla ronie fix: remove invalid includes c2f3a17
@ronie @davilla ronie fix: remove deprecated code fa30df3
@davilla davilla VampireAE fixes, mmm'kay 2f4363b
@davilla @davilla davilla [vda] revert back to intel greenline which is better than goofy frame…
…drops for all
@Memphiz @davilla Memphiz [dns] - check parameters for validity - fixes #13975 - credits to fla…
@opdenkamp @davilla opdenkamp [pvr] bump add-ons to opdenkamp/xbmc-pvr-addons@96774c4 53c5696
@Memphiz @davilla Memphiz [osx] - on resume don't toggle windowed/fullscreen - this leads to mo…
…ving XBMC to screen1 on dual screen setups and isn't needed on osx at all
@davilla davilla [aml] fixed mute and volume control c2cd6ee
@Montellese @davilla Montellese fix typo from 66e5d70 (#elsif -> #elif) a53c00e
@davilla davilla Revert "[AE/CA] - implement streamsilence flag (releases powermanagem…
…ent assertion which is hold since lion even when holding a shared audio device open)"

This reverts commit 2add0c6.
@popcornmix @davilla popcornmix Fix for incorrectly using clamped resolution when looking for framera…
…te match
@popcornmix @davilla popcornmix [rbp] Fix non-square pixel display apect ratio and 3D TAB modes corre…
@huceke @davilla huceke [rbp] removed useless file from 1f8d725 f75a1af
@opdenkamp @davilla opdenkamp [cec] fixed - only send an active source message when receiving OnPla…
…y. this may lead to delayed audio output on some AVR devices
@alcoheca @davilla alcoheca upnp: url encode filename of served resources 1d310b3
@koying @davilla koying FIX: non-rpi egl fails to compile ba2ca55
@davilla davilla fixed, allow SotfAE commanded suspend/resume for all but restrict aut…
…o suspend/resume to windows
@popcornmix @davilla popcornmix [rbp] Don't consider half-SBS/TB 3D modes to have double the framerate ee76b8e
@davilla Jonathan Marshall export of .nfo files to folders that were not writable for whatever r…
…eason meant that the next movie got 2 (or more) <movie> sections in it's .nfo file, causing incorrect later imports.
@davilla Jonathan Marshall .mpc file tags (apev2) weren't read correctly. fixes #13985 6fc42b2
@MartijnKaijser @davilla MartijnKaijser [Touched] update Touched to latest rev 27f6db4
@Memphiz @davilla Memphiz [osx] - fix - add Dreamweaver to the list of obscuring windows (now D…
…reamweaver devs - please tell me why the hell you are using a transparent fullscreen window?)
@davilla Jim Carroll In threads spawned within python the PyContext was never used. In tho…
…se cases the releasing/acquiring of the Gil was simply skipped. Therefore scripts that looped over 'sleep' from a python created thread (a typical pattern in python services) would block all other python threads forever.
@davilla phil65 added DefaultImage for pvr clients 643fc8e
@aballier @davilla aballier DVDAudioCodecFFmpeg: Convert unknown audio formats to float.
As of FFmpeg-1.1, some decoders started to output planar audio.
This fixes track ticket 13944.
@MartijnKaijser @davilla MartijnKaijser [addons] sync addons with repo c20382a
@MartijnKaijser @davilla MartijnKaijser [addons] sync WU with repo version 69c36c9
@MartijnKaijser @davilla MartijnKaijser Remove broken last.FM musicvideo scraper 123a078
@MartijnKaijser @davilla MartijnKaijser Add musicvideo scraper 742d171
@MartijnKaijser @davilla MartijnKaijser Change default musicvideo scraper from the broken to theaudio…
… In case was still in use replace it with
@MartijnKaijser @davilla MartijnKaijser [addons] sync scrapers to repo 9304e2c
@MartijnKaijser @davilla MartijnKaijser Bump version to final Frodo 12.0 fb595f2
bosel commented on 6bb569c Feb 4, 2013


Montellese and others added some commits Jan 26, 2013
@Montellese @davilla Montellese fix CApplicationMessenger::MediaStop() in case no playlistid has been…
… provided
@Memphiz @davilla Memphiz [AE/CA] - implement streamsilence flag (releases powermanagement asse…
…rtion which is hold since lion even when holding a shared audio device open)
@Memphiz @davilla Memphiz [AE/CA] - hold the enginelock when diddleing with the hal during garb…
…agecollect and reuse the resume() function instead of duplicating code
@Memphiz @davilla Memphiz [AE/CA] - fix regression introduced with AE - readd the default outpu…
…t device which will ask the os for the default output device and use that
@Memphiz @davilla Memphiz [AE/CA] - fixed - fetching the default audio output device from the o…
…s mail fail - in that case we return the last known good device id
@Memphiz @davilla Memphiz [AE/CA] - fixed - if user has selected "default" output device we nee…
…d to reinit to it once the deviceid behind "default" changed - we do this in makestream for now (where all the reinit logic sits nevertheless)
@Memphiz @davilla Memphiz [IOS] - fix build after 6095130 264cea6
@Memphiz @davilla Memphiz [AE/CA] - no need for the streamsilence / idle suspend stuff on ios -…
… so do it only for osx
@davilla wsoltys fixed: no thumbnails were created for images which need to be rotated…
… by FlipHorizontal, FlipVertical and Rotate180CCW + a small refactor.
@norbini @davilla norbini Override CSFTPDirectory::Exists() method to correctly report whether …
…an SFTP url represents a directory or not.

Fixes ticket #13784.

Refactored CSFTPSession::Exists() into FileExists() and DirectoryExists() methods, and have CSFTPFile and CSFTPDirectory classes use them.
This means that Exists() calls on these classes correctly only return true if the url refers to an item of the appropriate type (e.g. a file or a directory).
@davilla Andrew Gallatin Merge ffmpeg fix for sagetv recordings from upstream
> commit c071b006436d663b977068f8d23cbc061f40491f
> Author: Michael Niedermayer <>
> Date:   Mon Jan 21 04:21:56 2013 +0100
>     mpeg12demux: Fallback to startcode for stream type identification.
>    Fixes Ticket2147
>    Fixes SageTV support
>    Based-on patch by Andrew Gallatin
>    Signed-off-by: Michael Niedermayer <>
@davilla arnova fixed: For Webdav set the PROPFIND custom request header else we may …
…return false when checking for folder existence (fixes #13914)
@ronie @davilla ronie [Confluence] get rid of error log messages ae91afe
@ulion @davilla ulion paplayer handle prepare stream failure. 63c0c68
@ulion @davilla ulion re-init tcp server when encounter EBADF b7acc26
@Memphiz @davilla Memphiz [droid] - fix ssh/sftp protocol. (the return NULL in would lead to ea…
…rly/error return when libssh tries to fetch the default SSH_OPTIONS_SSH_DIR)
@davilla @davilla davilla fixed, force rtmpX to the videodefaultplayer 3c44385
@Memphiz @davilla Memphiz [AE/CA] - on device change reinit coreaudio by calling opencoreaudio …
…with the last engine parameters (this will fallback to default device when our current output device vanishes and on the other hand will go back to that device if it re-appears).
@Memphiz @davilla Memphiz [AE/CA] - revert 7e64331 - not needed anymore 84b9978
@davilla arnova fixed: Curl should also retry on CURLE_COULDNT_CONNECT
fixed: Curl reconnect messages should be warnings
changed: Cosmetics
@davilla Jim Carroll Add a DelayedCallGuard to the RenderCapture.waitForCaptureStateChange…
…Event. Closes #14044
@davilla Jim Carroll Remove some annoying log-spam. 526d9fa
@Memphiz @davilla Memphiz [scraper] - fixing possible array out of bounds access (seen in a cra…
…shlog on ios)
@Memphiz @davilla Memphiz [ios] - enable the full iphone5 resolution by adding the right format…
…ed default splash image into the bundle
@Memphiz @davilla Memphiz [ios] - add proper detection of the currently available ios devices a…
…nd make sure to detect retina resolution even when using ios4.3 sdk on all of those retina devices
@davilla @davilla davilla fixes #14030, osx x86_64 would crash on a throw, trying to open tiffs…
…, basically cximage was referencing internal tiff headers instead of system headers, opps
@Montellese @davilla Montellese fix warning in CPlayerOperations::Stop() f738acc
@davilla arnova fixed: Don't check for local thumbs on Addon's path 2bf4edc
@davilla Jim Carroll Prevent re-entering the interpreter if the script exits with a System…
…Exit exception. Closes #14049
@davilla Mike C [droid] Use native volume control c9b7b49
@davilla wsoltys [WIN32] workaround: get the default audio interface for DirectSound t…
…o have audio on a fresh installation.
@fritsch @davilla fritsch AE: introduce force flag into interface f3468eb
@fritsch @davilla fritsch AE: ALSA Wait for at least one audio output device when starting up f…
…or max 10 seconds
@fritsch @davilla fritsch AE: Fix suspend / resume with ALSA Pt 1 d701986
@fritsch @davilla fritsch AE: Enable SoftSuspend on Linux (Stop h0gg1ng the sound device) e9e8c6c
@fritsch @davilla fritsch AE: Wait until we are in a safe state before further deinitializing t…
…he sink
@fritsch @davilla fritsch AE: remember the sinkState in local class to be able to resume ea6a4ea
@fritsch @davilla fritsch AE: Make suspend and resume more clear and easier with less flags bc32379
@fritsch @davilla fritsch AE: SoftSuspend and AE implementation don't play well - let ALSA save…
… us in case
@wsoltys @davilla wsoltys [WIN32] implemented a poor man's stacktrace for windows. c6745da
@davilla wsoltys [WIN32] catch exceptions also during Create(), CreateGUI() and Initia…
@ace20022 @davilla ace20022 Fix build after commit 8c9b7ed . a58897a
@Voyager1 @davilla Voyager1 Correct PR 2203 for Android 12502b9
@asmaloney @davilla asmaloney Fix comparison which should be a dereference 7574821
@asmaloney @davilla asmaloney Fix a copy-paste error in conditional 50c9471
@asmaloney @davilla asmaloney Index should be checked before indexing m_dlls 2810c09
@asmaloney @davilla asmaloney Copy-paste error results in skipping RENDER_FMT_YUV420P16 3922bf1
@asmaloney @davilla asmaloney Close file properly on error 9f0caa3
@MartijnKaijser @davilla MartijnKaijser [visualizations] fix crash in goom fixes #12584 32b2761
@fritsch @davilla fritsch AE: Pulse Audio fix resume between song change without crossfade 74ee9c7
@LucasG2000 @davilla LucasG2000 Corrected parameters order in Control.setAnimations
The documentation states that setAnimations receives a list of tuples,
every tuple being a pair (event, attr), for example:

self.button.setAnimations([('focus', 'effect=zoom end=90,247,220,56

This patch corrects a bug by which the order of the tuple is reversed,
breaking Python scripts which send parameters in the order stated by
the documentation.
@koying @davilla koying FIX: don't crash on buggy keymap xml 49085b6
@davilla @davilla davilla fixed, CSoftAEStream::GetCacheTime was calculated wrong f8dd25d
@davilla @davilla davilla changed, refactor CSoftAEStream::GetDelay, CSoftAEStream::GetCacheTim…
…e and CSoftAEStream::GetCacheTotal to be similar
@davilla Jonathan Marshall don't use rand() for choosing a random song for partymode 74f14b7
@amet @davilla amet XBPython cosmetic spaces c593148
@amet @davilla amet [python] add onDatabaseScanStarted to xbmc.Monitor() class ab36512
@davilla Jim Carroll Separate locks for the different lists managed by XBPython so that th…
…ey don't interfere with each other. Closes #14048
@ace20022 @davilla ace20022 Fix the result of Player.GetProperties with param "currentaudiostream…
…" for video without an audio stream (index = -1).
@ulion @davilla ulion bump samba for darwin from 3.6.0 to 3.6.12 7b3b189
@davilla Jonathan Marshall don't clip outline'd text as the outline will be clipped on the left …
@davilla Jonathan Marshall fix null ptr dereference of GUIDialogCache. fixes #14065. 8a2820f
@davilla Jonathan Marshall pick up only the select/click action in the scraper list in content s…
…ettings dialog
@davilla Jonathan Marshall fix saving of option=int slider add-on settings ea99fcc
@garbear @davilla garbear Ignore duplicates due to add-ons with multiple extension points when …
…retrieving the list of outdated add-ons
@popcornmix @davilla popcornmix [rbp] Avoid blocking the video thread keeping the video fifo full.
OpenMAX IL is an asynchronous media player. The key to getting good performance is to ensure the audio and video fifo have sufficient data to withstand any processing spikes by the ARM.
Ideally the fifos would allow the arm to crash, and video and audio playback to continue smoothly for a couple of seconds.

I've examined the fifo behaviour, and found the video fifo is always almost empty. (The audio fifo is full).
It turns out that the PlayerVideo task (which submits video frames to GPU fifo) blocks until the presentation time has arrived before calling FlipPage (in order to keep subtitles etc. synced).
This is very bad. We generally only one frame of video data in the GPU fifo. This means a spike in ARM workload (e.g. bringing up OSD, or a peak in bitrate) causes the fifo to empty and video to stutter.

The patch here avoids blocking, and lets the FlipPage happen on a later packet.
I've found with this patch, my test clip (1080p with software DTS audio decode) I can play without stuttering at 700MHz. Without this patch it fails to play even at 1000MHz.
@popcornmix @davilla popcornmix [rbp] Fix for broken ASS subtitles.
The video fifo patch broke some types of subtitles including ASS.
This keeps closer track of when the sleep time would have ended and calls FlipPage at the appropriate time.
I've also removed the 500ms in the sleep time calculation as that makes the subs render 500ms late. Not sure what its purpose was.
@asmaloney @davilla asmaloney Fix memory leaks & Use correct "delete" for arrays 8fd95be
@fritsch @davilla fritsch AE: Linux AE - some fixes of yesterday merge (Enumerate + Resume) f637c03
@fritsch @davilla fritsch AE: in doubt restore old suspend behaviour 89611b1
@fritsch @davilla fritsch AE: Choose indirection when possible. Care for lazy evaluation 6efc127
@davilla wsoltys [WIN32][AE] fixed: DirectSound supports more than 2 channels. ccd8298
@davilla wsoltys [WIN32][AE] fixed: samplerate can be at least 192kHz (probably more?) 6711c2e
@davilla wsoltys [WIN32][AE] fixed: supported channels should be between 2 and 8 c7eea1d
@davilla Jonathan Marshall fix incorrect query on smartplaylists with a set rule 3714ab3
@MartijnKaijser @davilla MartijnKaijser [Touched] set git revision to latest again 982e170
@t-nelson @davilla t-nelson Don't leave failed fileop jobs in the processing list.
We want to remove fileop jobs from the queue regardless of whether they
were successful or not.  Otherwise we crash on the next call to
@ulion @davilla ulion Fix event pump order on ios when we drop in deeper message loop. e112dd6
@Memphiz @davilla Memphiz Fix event pump order on droid when we drop in deeper message loop. 1a8429d
@popcornmix @davilla popcornmix [rbp] Fix for hang after seeking introduced by ASS fix
#2206 introduced a regression when seeking in some types of SD files where the video stutters and/or stalls.
This is caused by using the wrong clock in FlipPage
@Memphiz @davilla Memphiz [atv2] - fix the annoyance to need to click twice to startup xbmc on …
…atv2 running ios5.x - we have a single click startup now woohoo :D
@davilla wsoltys [WIN32][AE] fixed: release audio stream when XBMC is idle. Changed ha…
…rd coded value to a existing define.
davilla commented Feb 21, 2013


@davilla davilla closed this Feb 21, 2013
Memphiz commented Feb 21, 2013

Is this some new kind of spambot maybe? (serious...)


why with my sdl 2.0 bump, only when this set NO the system volume got controlled by the os itself?


it was introduced after a rant of a nyxboard user who was annoyed that the volume keys on the nyxboard did "not even" control the xbmc volume. Nyxboard volume keys are the same like the hw volume buttons. I have reverted that for 12.1 but wanted to come up with a generic solution (users were mad because of this changes cause they wanted the hw buttons to control the osx volume). But i didn't figure out yet a clean solution and tend to revert it in master too if nothing good comes to my mind.

ulion replied Apr 3, 2013

if we ignore NX_KEYTYPE_SOUND_UP and NX_KEYTYPE_SOUND_DOWN (not return NULL)
osx will turn the system volume with osd show my here with sdl 2.0
it's confused the 'm_controlSysVolume' set YES but we steal the system key event then it can not control osx volume (without xbmc it will do, right? ), if so we can not tell that's 'control sys volume', it indeed lost the control to the sys volume.
personally I like to keep the volume up/down hw key to control osx volume ( that means we do not bother the process it will do the work by default? ), if needed, xbmc should set soft volume to 100% since the osx volume control has osd and good enough.


Yes the flag is inverted - i also stumbled over that one. Well i see one use case where it is usefull that hw buttons control the xbmc volume instead of osx volume. (basically i have the same opinion then you - hw keys should control the osx volume). On one of my hackintoshs the osx volume is not changable when using HDMI output (i have no clue if this will happen on a real mac too - but i think so). In that case it would be cool to let hw buttons control the xbmc volume (when trying to change osx volume the osx overlay just shows the audio indicator with a crossed speaker iirc). But as of now i was not able to detect if osx volume control is available or not (i really tried some of those coreaudio APIs but it always gave me a "true" even if the osx volume wasn't available).

So if you back me up in reverting that - i am with you (and we should invert that flag for clearing things up).

ulion replied Apr 3, 2013

that will be cool, I lost my optical convert for macbook, so currently can not test that.
for passthrough, osx system volume is not changeable, for stereo output to optical, not sure.
at least we can steal the volume event for passthrough output only.

but the 12.1 build of xbmc does not steal the system volume event, I can not see why it not. on my sdl 2.0 bump test build, it did steal them.


Because for 12.1 i made davilla revert this commit :D - well in passthrough (speaking of XBMC passthrough) we are not able to control volume either. Its just on my hackintosh that the volume can not be controlled in osx when HDMI output is selected. I have no clue if this state is even detectable with the CoreAudio API. I guess i revert this commit for master branch as well for not having that difference between Frodo and master branch.

robho commented on db41113 Jun 15, 2013

I guess this change removed the ability to reconfigure the user button using the GUI.

I'm curious.. Why was this done? Why were the flip actions left in the GUI?


because other than the flip actions, it's the same as any other keyboard, so we treat it like that. please take (followup) questions like this to the forum though

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment