Original commit message from CVS:
Patch by: Vincent Torri <vtorri at univ-evry fr>
* configure.ac:
* sys/Makefile.am:
* sys/directdraw/Makefile.am:
Add directdrawsink to build and dist it, so it gets built when
compiling with MingW on win32 and the required headers and libraries
are available (fixes: #392313).
* sys/directdraw/gstdirectdrawsink.c:
(gst_directdrawsink_center_rect), (gst_directdrawsink_show_frame),
(gst_directdrawsink_setup_ddraw),
(gst_directdrawsink_surface_create):
Comment out some unused things and fix some printf format issues in
order to avoid warnings when buildling with MingW (#392313).
Original commit message from CVS:
Patch by: Sergey Scobich <sergey dot scobich at gmail com>
* sys/directdraw/gstdirectdrawsink.c:
(gst_directdrawsink_window_thread),
(gst_directdrawsink_create_default_window):
* sys/directdraw/gstdirectdrawsink.h:
* sys/directsound/gstdirectsoundsink.c:
Wait until the window is created before using it; guard unistd.h
includes with HAVE_UNISTD_H. (#366523)
* win32/vs8/libgstdirectdraw.vcproj:
* win32/vs8/libgstdirectsound.vcproj:
Update project files.
Original commit message from CVS:
* sys/directsound/gstdirectsoundsink.h:
* sys/directsound/gstdirectsoundsink.c:
Add an attenuation property that will directly attenuate the
directsound buffer.
Change the size of the directsound secondary buffer to a half second.
Add more debug logs.
Add a lock to protect dsound buffer write access.
Fix a bad implementation of reset.
* sys/directsound/gstdirectdrawsink.c:
* sys/directsound/gstdirectdrawsink.h:
Add a keep_aspect_ratio property.
Do not use overlay if not supported.
Add more debug logs.
Remove overwrite of WM_ERASEBKGND message handling. It was not
redrawing border when keep_aspect_ratio was enabled.
* win32/common/config.h:
update version waiting an auto-generated config.h
Original commit message from CVS:
* ext/libmms/gstmms.c: (gst_mms_create):
Set caps on outgoing buffers.
* sys/directdraw/gstdirectdrawsink.c: (gst_directdrawsink_init):
Comment out unused global instance variable.
Original commit message from CVS:
* sys/directdraw:
* sys/directsound:
sinks are now using GST_RANK_PRIMARY to be used with autodectection
* win32/vs6:
project files updated to fix some bugs
* win32/vs7:
* win32/vs8:
vs7 and vs8 project files added
This avoids the number one reason for local modifications in *.po
files and and makes things less annoying when working with git (or
any other VCS for that matter).
Moves tags data initialization to the function that actually appends
the tags to the list. Fixes#582702
Also fixes some style caught by the pre-commit hook.
When updating a pad, send the update to half a second behind the SCR,
which avoids ever updating the start time for a pad to beyond the end of
the cell. Also, remember the last actual new-segment start time for each
pad, and use it when closing the segment.
When the current button number is higher than the number of available
buttons, switch to the highest numbered button rather than the lowest.
Also, don't throw errors when we fail to retrieve some button info
from libdvdnav, just reset the highlight.
Send the commands-changed navigation message when the set of available
DVD menu button actions changes, and handle the commands navigation
query so that (e.g.) Totem can know about the available navigation
commands.
When entering a still frame generates an updated buffer, make sure
to push it out, otherwise we may not put a frame onscreen with a
rendered button, causing raciness as to whether buttons get drawn
or not when jumping back to the menu on some discs.
Protect pad exposure with a preroll lock to avoid situations
where no-more-pads is fired more than once, or fired just before
the last pad is actually added.
Send segment updates to the audio and subpicture pads more frequently,
but less often to the video pad, where timestamps appear less often.
This helps with gap filling on some DVDs.
When creating a filler audio buffer in rsnaudiomunge, generate
a bit more, as audio sinks don't seem to preroll otherwise. This
needs a better algorithm in general, to intelligently fill the
gap, rather than hard-coding a value.
Make timed still frames work better by extending the current segment
when needed, and restarting the still sequence with the correct
remaining duration when the wait it interrupted by activation of a
highlight NAV packet.
Make sure to push the frame for a still frame, with discont = true and
timestamp=none, so that it gets displayed by the sink. Also, don't leak
each rendered video frame during still menus.
The part number reported while in a menu doesn't reflect the selected
menu, so it's pointless to use it to report which menu we're in (Audio,
Angle etc). Just report "DVD Menu" in the title tag instead.
If the estimated bitrate is lower than 188 bytes, there's most likely
something completely wrong with the two samples. If that happens,
force recalculation.
Use guint64 for observation PCR, I saw cases where it would overflow.
This allows debugging with mpegtsdemux:4 while being able to track what's
going on (and avoid taking up as much cpu for debugging as for the actual
demuxing process).
This ensures that the metadata items are always written
in the same order and that first comes the preface,
then the identification linked from the preface, ...
Some demuxers can't handle files where the metadata
items are in random order.