Re: [ITA] SDL2 (2.26.2)

2023-02-09 Thread Takashi Yano via Cygwin-apps
On Sat, 28 Jan 2023 16:24:35 +
Jon Turney wrote:
> On 22/01/2023 12:05, Takashi Yano via Cygwin-apps wrote:
> > On Sat, 21 Jan 2023 14:58:55 +
> > Jon Turney wrote:
> >> You've made some changes in the configuration here (switching from
> >> enabling pulseaudio to oss)
> >>
> >> I think you've also dropped the winmm patch.
> >>
> >> I don't understand enough to evaluate the correctness those changes, so
> >> it would be nice if you could explain that to me.
> > 
> > Thanks for reviewing. The reason why I turnd off pulseaudio
> > is that the latency was unacceptably large, despite the fact
> > that pulseaudio is preferred over other sound drivers.
> > Due to this, ffplay missynchronized sound with video.
> > 
> > Also, I guess OSS was previously disabled because it does not
> > work as expected due to a bug of cygwin:
> > https://cygwin.com/pipermail/cygwin-patches/2023q1/012134.html
> > and winmm was enabled instead.
> > 
> > Now, the bug has been fixed and SDL2 gets working with OSS.
> > Therefore, we don't need winmm support anymore. I think
> > it is better not to call winmm directly from cygwin apps.
> > 
> > BTW, I tried to modify SDL2 code to minimize the latency of
> > pulseaudio and it succeeded. So, I re-enabled the pulseaudio
> > and updated the package.
> > 
> > Could you please review the package again?
> 
> Thanks for this explanation, it all makes sense now.
> 
> Please go ahead.

Version updated to 2.26.3.

-- 
Takashi Yano 
NAME="SDL2"
VERSION=2.26.3
RELEASE=1
LICENSE="Zlib"
CATEGORY="Libs"
SUMMARY="Simple DirectMedia Layer core library"
DESCRIPTION="This is the Simple DirectMedia Layer, a general API that provides
low level access to audio, keyboard, mouse, joystick, 3D hardware via OpenGL,
and 2D framebuffer across multiple platforms."
HOMEPAGE="http://www.libsdl.org/;
SRC_URI="http://www.libsdl.org/release/SDL2-${VERSION}.tar.gz;

PKG_NAMES="libSDL2_2.0_0 libSDL2-devel"
libSDL2_2_0_0_REQUIRES="libdbus1_3 libGL1 libsamplerate0 libX11_6 libXcursor1 
libXext6 libXi6 libXinerama1 libXrandr2 libXss1" # libaudio2 libpulse-simple0
libSDL2_2_0_0_CONTENTS="usr/bin/cygSDL2-2-0-0.dll usr/share/doc/"
libSDL2_devel_CONTENTS="usr/bin/sdl2-config usr/include/ usr/lib/ 
usr/share/aclocal/"

DISTCLEANFILES="acinclude/l*.m4"
DIFF_EXCLUDES="SDL_config.h"

ACLOCAL_FLAGS="-I acinclude"
NO_AUTOHEADER=1
CYGCONF_ARGS="
--enable-pthreads
--enable-pthread-sem

--disable-arts
--disable-arts-shared
--enable-esd
--enable-esd-shared
--enable-nas
--enable-nas-shared
--enable-oss
--enable-pulseaudio
--enable-pulseaudio-shared
--enable-libsamplerate
--enable-libsamplerate-shared

--enable-video-dummy
--enable-video-opengl
--enable-video-opengles
--enable-video-x11
--enable-video-x11-scrnsaver
--enable-video-x11-xcursor
--enable-video-x11-xinput
--enable-video-x11-xrandr
--enable-video-x11-xshape
--enable-x11-shared
"

DOCS="README-SDL.txt README-porting.txt"

BUILD_REQUIRES="libX11-devel libGL-devel libEGL-devel libsamplerate-devel 
libesd-devel nas"


Re: [ITA] SDL2 (2.26.2)

2023-01-28 Thread Jon Turney via Cygwin-apps

On 22/01/2023 12:05, Takashi Yano via Cygwin-apps wrote:

On Sat, 21 Jan 2023 14:58:55 +
Jon Turney wrote:

You've made some changes in the configuration here (switching from
enabling pulseaudio to oss)

I think you've also dropped the winmm patch.

I don't understand enough to evaluate the correctness those changes, so
it would be nice if you could explain that to me.


Thanks for reviewing. The reason why I turnd off pulseaudio
is that the latency was unacceptably large, despite the fact
that pulseaudio is preferred over other sound drivers.
Due to this, ffplay missynchronized sound with video.

Also, I guess OSS was previously disabled because it does not
work as expected due to a bug of cygwin:
https://cygwin.com/pipermail/cygwin-patches/2023q1/012134.html
and winmm was enabled instead.

Now, the bug has been fixed and SDL2 gets working with OSS.
Therefore, we don't need winmm support anymore. I think
it is better not to call winmm directly from cygwin apps.

BTW, I tried to modify SDL2 code to minimize the latency of
pulseaudio and it succeeded. So, I re-enabled the pulseaudio
and updated the package.

Could you please review the package again?


Thanks for this explanation, it all makes sense now.

Please go ahead.



Re: [ITA] SDL2 (2.26.2)

2023-01-22 Thread Takashi Yano via Cygwin-apps
On Sat, 21 Jan 2023 14:58:55 +
Jon Turney wrote:
> You've made some changes in the configuration here (switching from 
> enabling pulseaudio to oss)
> 
> I think you've also dropped the winmm patch.
> 
> I don't understand enough to evaluate the correctness those changes, so 
> it would be nice if you could explain that to me.

Thanks for reviewing. The reason why I turnd off pulseaudio
is that the latency was unacceptably large, despite the fact
that pulseaudio is preferred over other sound drivers.
Due to this, ffplay missynchronized sound with video.

Also, I guess OSS was previously disabled because it does not
work as expected due to a bug of cygwin:
https://cygwin.com/pipermail/cygwin-patches/2023q1/012134.html
and winmm was enabled instead.

Now, the bug has been fixed and SDL2 gets working with OSS.
Therefore, we don't need winmm support anymore. I think
it is better not to call winmm directly from cygwin apps.

BTW, I tried to modify SDL2 code to minimize the latency of
pulseaudio and it succeeded. So, I re-enabled the pulseaudio
and updated the package.

Could you please review the package again?

-- 
Takashi Yano 


Re: [ITA] SDL2 (2.26.2)

2023-01-21 Thread Brian Inglis via Cygwin-apps

On 2023-01-21 07:58, Jon Turney via Cygwin-apps wrote:

On 20/01/2023 10:35, Takashi Yano via Cygwin-apps wrote:

I would like to take over the maintenance of SDL2
package which is currently orphanded. I have already
prepared the updated package at:

https://tyan0.yr32.net/cygwin/x86_64/release/SDL2/


You've made some changes in the configuration here (switching from enabling 
pulseaudio to oss)


Not sure if many apps now support OSS (and no library or apps obvious on Cygwin) 
vs ALSA (also supported by PulseAudio), and on Linux they seem to be adding 
PipeWire.


Pulseaudio support is available and required on Cygwin:

$ cygcheck-dep -qcSn libpulse{,-simple}0
 libpulse0: is needed for ( audacious-plugins empathy gnome-control-center 
gnome-flashback gnome-settings-daemon gstreamer1.0-plugins-good kde-runtime kmix 
kwave libao4 libespeak1 libfreerdp1.0 libfreerdp2_2 libgvnc1.0_0 libmatemixer0 
libpulse-devel libpulse-mainloop-glib0 libpulse-simple0 libQt5Multimedia5 
libspice-client-glib2.0_8 lxqt-panel mpd mpg123-pulse openmpt123 paman pamixer 
paprefs pasystray pavucontrol pavumeter plasma-desktop plasma-pa pulseaudio 
pulseaudio-equalizer pulseaudio-esound-compat pulseaudio-module-gconf 
pulseaudio-module-x11 pulseaudio-module-zeroconf pulseaudio-utils qmmp sidplayfp 
sox-fmt-pulseaudio speech-dispatcher xfce4-pulseaudio-plugin xmp )
 libpulse-simple0: is needed for ( libao4 libespeak1 libfluidsynth1 
libgvnc1.0_0 libmikmod3 libpulse-devel mpg123-pulse openmpt123 qmmp sidplayfp 
sox-fmt-pulseaudio speech-dispatcher xmp )



I think you've also dropped the winmm patch.


Under Windows, it is critical that MM timer period/resolution be determined, 
saved, increased, and restored correctly, to avoid affecting other multimedia 
drivers, apps, and timing services, which may have changed the MM timer 
period/resolution.
[NTP ntpd under Windows handles common NMEA and binary serial GPS units with DCD 
PPS (operates as well as under Linux with LinuxPPS) to maintain system timing 
within a few microseconds (RMS ~ 500ns) offset from UTC.]


--
Take care. Thanks, Brian Inglis Calgary, Alberta, Canada

La perfection est atteinte  Perfection is achieved
non pas lorsqu'il n'y a plus rien à ajouter not when there is no more to add
mais lorsqu'il n'y a plus rien à retirerbut when there is no more to cut
-- Antoine de Saint-Exupéry


Re: [ITA] SDL2 (2.26.2)

2023-01-21 Thread Jon Turney via Cygwin-apps

On 20/01/2023 10:35, Takashi Yano via Cygwin-apps wrote:

I would like to take over the maintenance of SDL2
package which is currently orphanded. I have already
prepared the updated package at:

https://tyan0.yr32.net/cygwin/x86_64/release/SDL2/


You've made some changes in the configuration here (switching from 
enabling pulseaudio to oss)


I think you've also dropped the winmm patch.

I don't understand enough to evaluate the correctness those changes, so 
it would be nice if you could explain that to me.