Commit Graph
455 Commits
Author SHA1 Message Date
Vincent Lang 40be8ac9a2 Adjust .clang-tidy for public struct member names 2016-04-12 08:47:41 +02:00
Vincent Lang 97e1573758 Add PHT-style aspect setting
Very unsure about this. One problem is that it interferes with some
useful settings (like setting panscan to anything between 0 and 1). The
"custom" mode stops PMP itself from overwriting these mpv settings, but
it can't restore them at runtime. (Read: if users want to do custom
stuff with mpv.conf, they need to set aspect to "custom", and then
restart PMP.)
2016-04-12 08:36:31 +02:00
Vincent Lang 16133d54f0 Add generic settings cycle command 2016-04-12 08:36:31 +02:00
Vincent Lang 330d25180f Remove broken/unused old fullscreen toggle code
"componentPostInitalize" is misspelled, thus not overriding
componentPostInitialize. Instead, toggling fullscreen got reimplemented
in KonvergoWindow.cpp instead.
2016-04-12 08:36:31 +02:00
Tobias Hieta 9a535e4fc9 Mapping updates for windows SDL joysticks 2016-04-12 08:05:15 +02:00
Tobias Hieta 2d4e878362 Automatic update of web-client 2016-04-12 08:05:15 +02:00
LongChair 42614973b6 Add shutdown/suspend/reboot to Windows, part of #283 2016-04-12 08:05:15 +02:00
Tobias Hieta f592e11a65 Massive SDL input cleanups.
* Added support for joyhat events, fixes ds4 d-pad
* Fixed dead-banding and axis events correctly
* Updates to DS4 keymap and Xbox keymap
2016-04-12 08:05:03 +02:00
Tobias Hieta f5686f2892 Fix a CMake warning in DependencyConfiguration 2016-04-08 10:04:39 +02:00
Tobias Hieta 068f05b956 Fix path to Version.cpp that was broken since the cleanup 2016-04-08 10:04:12 +02:00
Vincent Lang 7b5c4b3485 Display current network speed in debug overlay
Indicates how fast the media data is downloaded.

Caveat: if the speed is high enough, download will often stop, which
resets the value to "0". Related to this, TCP buffering behavior can
lead to ridiculous values alternating with 0 to be shown.
2016-04-07 17:58:27 +02:00
Vincent Lang 37ffa472c3 Add a way to select a compatible hardware decoding mode on OSX
This changes the "hardware_decoding" setting from bool to a selection.
This breaks/discards the old setting. (I had an idea to keep it
compatible, but it seems web-client or maybe something else doesn't
like it at all if a setting in the user's config has the wrong
type, and the UI will basically become unfunctional.)

If users had a "videotoolbox-format" option set in their mpv.conf file,
it will be overwritten. (Which might be annoying for users who needed
this - they will have to explicitly select the mode in the UI after
updating.)

Actually applying the format requires a restart for silly technical
reasons. This can probably be improved later on.
2016-04-07 17:58:27 +02:00
Vincent Lang 28156134c3 Get codec info from PMS info if possible
startCodecsLoading() is now called twice:
1. Before the stream is even opened. getPlaybackInfo() is made to use
the PMS metadata in this case.
2. After the stream has been opened and before a dedoder starts.
getPlaybackInfo() will use the player-analyzed metadata.

I'm hoping this makes all combinations of possible fuckups work. One
case this should certainly fix is playing raw DTS. If no DTS codec was
present yet, opening would fail in libavformat. Downloading the codec
before opening the file should take care of it.

This is chained with display mode switching. Not bothering with making
it run in parallel with mode switching, because I'm not even sure the
simpler current implementation is always correct.
2016-04-07 17:58:27 +02:00
Vincent Lang 160ff590cd Log initially loaded codecs in start 2016-04-07 17:58:27 +02:00
Vincent Lang 2a046e91f1 Add system codecs support
While they mostly work automagically, we still have to make sure they
interact with codec downloading well. In particular, it could happen
that we prefer a downloadable codec over a system one, depending on
the media. We also only allow using system codecs which are known
working.
2016-04-07 17:58:27 +02:00
Vincent Lang 7b3da572ee Make 32 bit Windows build work
(Might contain some changes to make CoD work on 64 bit Windows too, like
changing ARCHSTR to "windows-x86_64".)
2016-04-07 17:57:30 +02:00
Vincent Lang f1487a06f3 Codecs on demand
PMP will now download codec binaries from nightlies on playback start if
built with -DENABLE_CODECS=on. With "off" (the default), most codecs on
demand code will be built, but the list of downloadable codecs will be
empty.

This uses a hardcoded CODECS_BUILD_NUMBER. This is sort of ok, as long
as the list of codecs/names on nightlies doesn't change. If there's a
change, it should be updated manually. (Same if new platforms are added
etc.) Note that even if this is not changed, the code will download the
correct codecs by looking at the FFmpeg version number libmpv is linked
against.
2016-04-07 17:57:30 +02:00
Tobias Hieta b5546a9d34 Spring cleaning of unused file and locations 2016-04-07 14:03:09 +02:00
Tobias Hieta 9204abaf4c Automatic update of web-client 2016-04-07 08:04:54 +02:00
Tobias Hieta f370a58458 Expose sounds to the local http server
You can now request /sounds/$nameofsound that will first grab
sounds from the dataDir/sounds dir and secondly from the internal
resources.
2016-04-06 20:00:30 +02:00
Tobias Hieta 8303125a7f Automatic update of web-client 2016-04-06 20:00:06 +02:00
Tobias Hieta 77de638336 Fix Roku input so that keypresses works as expected 2016-04-06 15:28:48 +02:00
Tobias Hieta 9364c9083b Don't crash if g_qmlEngine is not available on destruction 2016-04-06 10:33:22 +02:00
Tobias Hieta 468a5e43f8 Make it possible to use InputComponent::registerHostCommand with a lambda instead of a Slot 2016-04-06 09:56:18 +02:00
Tobias Hieta 0932ce9791 Refactor, change KonvergoEngine to Globals
And expose a few more methods with some error handling.
2016-04-05 18:00:50 +02:00
Tobias Hieta f89550f2bd Cleanup the handling of Qt argument flags that we need to pass
This puts all flags in one array and no need to add a new flag in two places.
2016-04-05 14:21:44 +02:00
Tobias Hieta ee099bcba3 Support PHT style harmony apple remote input
This following code emulates the harmony remotes input to PHT. The Apple API is actually
limited to just the number of keys that are on Apple specific remotes so we had to work
around that with the following hack: deviceID was used as a prefix for what the keys meant
so for example if we send deviceID 150 and keycode UP it means up, but instead deviceID 151
and UP it can be mapped to a different key.

The harmony profile for this is using deviceID's 150-160 to prefix the keycode, so we will
treat them differently here than the other keycodes. We append the deviceID to the keycode
when the deviceID falls inside the 150-160 range, otherwise we assume the keycode is coming
from a "normal" remote and only forward the keycode.

Since it's unknown if this will cause problems with any remotes I have added a setting:
appleremote.emulatepht to turn this off if needed, but for now we'll keep it defaulted to on
2016-04-05 14:08:51 +02:00
Tobias Hieta d620a26558 Use Cmd/Ctrl+F for search and move fullscreen to Cmd/Ctrl+Shift+F
While this breaks something we have had since day one these shortcuts actually makes sense
considering the platform standards.
2016-04-05 14:01:46 +02:00
Tobias Hieta ed9d2fad46 Band-aid until I fixed openssl on our OSX slave 2016-04-05 13:54:05 +02:00
Tobias Hieta d516976665 Use C++ compiler path to try to find clang-tidy 2016-04-05 13:42:28 +02:00
Tobias Hieta ed86254cfa Automatic update of web-client 2016-04-04 15:43:01 +02:00
Tobias Hieta a86ca1d4fa Map input to several actions
This allows multiple actions for one button to be sent to the web-client. Necessary for getting search to work properly

Fixes #214
2016-04-04 14:43:27 +02:00
mikeyd 48700fe586 Update readme with make flag notes for speed
Plex-CLA-1.0-signed-off-by: [Michael DeGuzis] <mdeguzis@gmail.com>
2016-04-01 16:43:14 +02:00
Tobias Hieta 09e7605b68 Use CXX_STANDARD 14 and centralize the setting to utils.cmake 2016-04-01 16:34:22 +02:00
Tobias Hieta fbb795dd46 Don't assume cflags test for them instead.
Instead of maintaining lists per compiler of flags that should
be enabled / disabled we now test for them instead. If they are
able to be used we append them.

Same with linker flags we test for them before assuming they work.
2016-04-01 16:31:23 +02:00
Lionel CHAZALLON 3c0661f8e7 ca642dd4 Add PowerOff/Reboot/Suspend support to OSX, part of #283 long-osxpower (#287) 2016-03-31 17:37:22 +02:00
Firas Dib a00685ed50 Map = to increase_volume for american keyboard layouts 2016-03-31 14:27:46 +02:00
Tobias Hieta c3a4137180 Automatic update of web-client 2016-03-31 10:20:41 +02:00
LongChair ad8cfaa6cb Adapt InputSDL to new InputComponent
Allows to have again a proper autorepeat
The analog values handling has been removed, because it's not used.
2016-03-30 22:41:52 +02:00
LongChair 8ac265ea33 Adjust InputLIRC to match new InputComponent.
This fixes the autorepeat issue with IR & autorepeat
2016-03-30 21:21:37 +02:00
Lionel CHAZALLON c65b35abe8 Merge pull request #280 from plexinc/dist-test
Refactor InputCEC for Up & Down actions.
2016-03-30 20:08:47 +02:00
LongChair 253b149c04 Refactor InputCEC for Up & Down actions.
This allows to make the InputComponent handle the repeats and long presses.
2016-03-30 20:02:57 +02:00
Tobias Hieta 6553aafbd7 Automatic update of web-client 2016-03-30 16:44:01 +02:00
Tobias Hieta 974e6b22b3 Remove annoying log line. 2016-03-30 16:31:07 +02:00
Tobias Hieta 072206e003 Replace the Qt foreach macro with C++11 for style loops
This is just a cleanup but it makes clang-tidy properly recognise the
loops so it can applies checks to them.
2016-03-30 13:26:13 +02:00
Tobias Hieta ef30c9e4bd Center web-view in host window.
This is a temporary measure to fix #267 while we wait for Web to be
able to scale and fill the whole host window.
2016-03-30 12:52:22 +02:00
Tobias Hieta 47f321c796 We don't want to export and import QHttp headers since we link against them. 2016-03-29 16:09:50 +02:00
Tobias Hieta 5518e5e90e Add rpath to QtWebEngineProcess
This makes a local dev environment work without having to
run the install target.
2016-03-29 15:53:21 +02:00
Tobias Hieta cf18528f5f Update readme 2016-03-29 11:09:14 +02:00
Niclas Berglind 900c7903df Write qt.conf only if no QTROOT variable supplied
This will make sure that the qt.conf file is only written if no QTROOT variable is passed to cmake. It will allow building on Linux with non-root accounts when the QTROOT points to a priviliged folder on the system.

This has been discussed in issue #276.

Plex-CLA-1.0-signed-off-by: Niclas Berglind <nb@kjam.se>
2016-03-29 10:30:33 +02:00