Re: [ITA] SDL2 (2.26.2)
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)
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)
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)
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)
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.