Pierre Ynard [Thu, 17 May 2012 22:05:02 +0000 (00:05 +0200)]
luahttp: fix scope of url handler variables
The url handlers were declared with local scope, meaning local to the
lua script file I assume. Since the interface doesn't wait at the end
of the lua script anymore, they would fall out of scope after interface
initialization. Then, when the interface was first accessed, garbage
collection was somehow triggered, unregistering all url callbacks,
incidentally triggering a deadlock.
macosx: re-implement 'video-deco' support (close #6426)
disabling this option will get you a separate video output window without any visible playback controls or window border. resizing is supported through hotkeys and Lion's native mechanism if available. Control the playback through menu and main window controller. Note that 'embedded' is obviously ignored in this mode.
These patches now should integrate better into the StandardPanel etc.
Parts had to be rearranged to be able to merge some code from libqxt into the source.
Fix bugs due to PL/ML change
On Windows playing items like dvd:// or screen:// causes strange shortcuts in the user recently used folder.
See http://social.technet.microsoft.com/Forums/nb-NO/w7itprogeneral/thread/02a71215-e308-408c-94a6-81f5a8e564a6
for some information. The solution calls SHAddToRecentDocs only if make_path
returns a valid path.
PlaylistDialog::getInstance was duplicating the playlist widget
instanciated in main interface. This explains the empty playlist
bug of the popup dialogs replacing the current playlist by
parenting their menu using getInstance().
To avoid further mistakes, PlaylistWiget's constructor is now only
available to playlistdialog, which also manages the widget
through the different configurations (embedded or floating).
Dialog also now saves and restores geometry, which only happened
when the widget was on its side.
wasapi: first stab of audio output using the Windows Audio Session API
This is _very_ incomplete and buggy:
- no time synchronization,
- no sample format, sample rate and channels mask negotiation,
- no channels reordering,
- no S/PDIF and HDMI pass-through,
- no volume control,
- no device selection,
- no fail-over to another device when needed,
- leaking COM thread data at exit (missing dedicated thread),
- incomplete build system integration.
But it compiles (with mingw-w64) and outputs working audio.
Pierre Ynard [Mon, 14 May 2012 01:49:44 +0000 (03:49 +0200)]
http: supersede domainless cookies
The scope of cookies without a domain is limited to the current server.
The current logic is always wrong because either it's the same server
and the new cookie should supersede the old one, or it's a different
server and the old cookie should not be sent. This logic is still far
from RFC-compliant, but at least it should get it right some of the time.
This plugin can cause VLC to crash or exit prematurely. Sicne it is
mostly useless and mostly superseded by the coloured variant,
lets disable it unless explicitly selected.
Mirsal Ennaime [Sat, 12 May 2012 13:27:18 +0000 (15:27 +0200)]
single instance: Avoid initializing twice because of dbus activation
The single instance mode currently tries to contact another VLC instance
through dbus in order to find out if one is running. With dbus activation,
it results to the dbus daemon launching a new VLC instance while the
first one blocks until the new one answers the call
This patch uses org.freedesktop.DBus.NameHasOwner instead in order to get
an answer from the dbus daemon without it launching a second instance.
* use a thread instead of short interval polling,
* do not assume latency is shorter than a period,
* negotiate sample format instead automatically,
* map all known ALSA formats to VLC codecs,
* negotiate channels and sample rate,
* partial support for 3-6 channels (missing preferences),
* negotiate buffer and period times according to caching,
* tolerate off-by-one period size due to rounding,
* use the "default" device by default rather than "hw",
* remove old-style hardware-only suggestions in debug messages.
ALSA: follow initialization order from snd_pcm_set_params()
This should fix support for or work around bugs in, some drivers:
* explicitly disable soft-resampler,
* define access mode before sample format,
* set buffer before period,
* use period time rather than period count.
Robert Forsman [Tue, 1 May 2012 22:04:14 +0000 (18:04 -0400)]
DASH: fix compatibility with com.sun.net.httpserver
modules/stream_filter/dash/http/HTTPConnection.cpp was case-sensitive
when checking Content-Length. RFC 2616 section 4.2 states "Field names
are case-insensitive"
The http server built in to the JDK 1.6 uses a field name of
"Content-length" which reveals an incompatibility of VLC's DASH module.
Martin Storsjö [Tue, 8 May 2012 07:46:39 +0000 (10:46 +0300)]
omxil: Keep the old frame height as plane size (nSliceHeight)
If the decoder returns a new size via the crop rect, but hasn't
explicitly indicated a plane height (via the nSliceHeight parameter),
keep the frame height as plane height instead.
Also do the same check for stride vs width. The decoders that had
problems that the nSliceHeight fixes do set nStride properly, so
that part won't be needed there, but might be needed on some
platform.