diff options
Diffstat (limited to 'audio')
149 files changed, 3822 insertions, 1819 deletions
diff --git a/audio/Makefile b/audio/Makefile index c08a95c8cb50..5dfb986c8bba 100644 --- a/audio/Makefile +++ b/audio/Makefile @@ -280,6 +280,7 @@ SUBDIR += icecast SUBDIR += icegenerator SUBDIR += ices + SUBDIR += id3edit SUBDIR += id3el SUBDIR += id3lib SUBDIR += id3mtag @@ -651,6 +652,7 @@ SUBDIR += py-pydub SUBDIR += py-pyjacklib SUBDIR += py-pylast + SUBDIR += py-pyliblo3 SUBDIR += py-pymad SUBDIR += py-pyogg SUBDIR += py-pyradio diff --git a/audio/alsa-lib/Makefile b/audio/alsa-lib/Makefile index fb8bbcd77b0a..9e31ea1d68cf 100644 --- a/audio/alsa-lib/Makefile +++ b/audio/alsa-lib/Makefile @@ -1,5 +1,5 @@ PORTNAME= alsa-lib -PORTVERSION= 1.2.13 +PORTVERSION= 1.2.14 CATEGORIES= audio MASTER_SITES= https://www.alsa-project.org/files/pub/lib/ diff --git a/audio/alsa-lib/distinfo b/audio/alsa-lib/distinfo index 0305bd92a7e5..7d46933f4cfc 100644 --- a/audio/alsa-lib/distinfo +++ b/audio/alsa-lib/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1738145160 -SHA256 (alsa-lib-1.2.13.tar.bz2) = 8c4ff37553cbe89618e187e4c779f71a9bb2a8b27b91f87ed40987cc9233d8f6 -SIZE (alsa-lib-1.2.13.tar.bz2) = 1116739 +TIMESTAMP = 1754663447 +SHA256 (alsa-lib-1.2.14.tar.bz2) = be9c88a0b3604367dd74167a2b754a35e142f670292ae47a2fdef27a2ee97a32 +SIZE (alsa-lib-1.2.14.tar.bz2) = 1115517 diff --git a/audio/alsa-utils/Makefile b/audio/alsa-utils/Makefile index a2e1bef09e88..cb6e9c0e954a 100644 --- a/audio/alsa-utils/Makefile +++ b/audio/alsa-utils/Makefile @@ -1,5 +1,5 @@ PORTNAME= alsa-utils -PORTVERSION= 1.2.13 +PORTVERSION= 1.2.14 CATEGORIES= audio MASTER_SITES= https://www.alsa-project.org/files/pub/utils/ @@ -61,7 +61,7 @@ post-patch: ${WRKSRC}/amidi/amidi.1 @${REINPLACE_CMD} \ 's|%%LOCALBASE%%|${LOCALBASE}|g' \ - ${WRKSRC}/alsa-info/alsa-info.sh.1 \ + ${WRKSRC}/alsa-info/alsa-info.sh.8 \ ${WRKSRC}/amidi/amidi.1 .include <bsd.port.mk> diff --git a/audio/alsa-utils/distinfo b/audio/alsa-utils/distinfo index 061d2ed6c339..def5c29d1a4e 100644 --- a/audio/alsa-utils/distinfo +++ b/audio/alsa-utils/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1738145690 -SHA256 (alsa-utils-1.2.13.tar.bz2) = 1702a6b1cdf9ba3e996ecbc1ddcf9171e6808f5961d503d0f27e80ee162f1daa -SIZE (alsa-utils-1.2.13.tar.bz2) = 1642028 +TIMESTAMP = 1754664140 +SHA256 (alsa-utils-1.2.14.tar.bz2) = 0794c74d33fed943e7c50609c13089e409312b6c403d6ae8984fc429c0960741 +SIZE (alsa-utils-1.2.14.tar.bz2) = 1652717 diff --git a/audio/alsa-utils/files/patch-alsa-info_alsa-info.sh.1 b/audio/alsa-utils/files/patch-alsa-info_alsa-info.sh.8 index 7c87d358dd5b..13cdbe6ef419 100644 --- a/audio/alsa-utils/files/patch-alsa-info_alsa-info.sh.1 +++ b/audio/alsa-utils/files/patch-alsa-info_alsa-info.sh.8 @@ -1,5 +1,5 @@ ---- alsa-info/alsa-info.sh.1.orig 2020-02-19 12:02:10 UTC -+++ alsa-info/alsa-info.sh.1 +--- alsa-info/alsa-info.sh.8.orig 2020-02-19 12:02:10 UTC ++++ alsa-info/alsa-info.sh.8 @@ -37,7 +37,7 @@ Includes output from \fIamixer\fP. Includes output from \fIalsactl\fP. .TP diff --git a/audio/alsa-utils/pkg-plist b/audio/alsa-utils/pkg-plist index ecb5b0dc8aa4..51af0d3ec5f0 100644 --- a/audio/alsa-utils/pkg-plist +++ b/audio/alsa-utils/pkg-plist @@ -23,7 +23,6 @@ lib/alsa-topology/libalsatplg_module_nhlt.so lib/udev/90-alsa-restore.rules %%MANPAGES%%share/man/fr/man8/alsaconf.8.gz %%MANPAGES%%share/man/man1/aconnect.1.gz -%%MANPAGES%%share/man/man1/alsa-info.sh.1.gz %%MANPAGES%%%%BAT%%share/man/man1/alsabat.1.gz %%MANPAGES%%share/man/man1/alsactl.1.gz %%MANPAGES%%share/man/man1/alsaloop.1.gz @@ -48,6 +47,7 @@ lib/udev/90-alsa-restore.rules %%MANPAGES%%share/man/man1/nhlt-dmic-info.1.gz %%MANPAGES%%share/man/man1/speaker-test.1.gz %%MANPAGES%%share/man/man7/alsactl_init.7.gz +%%MANPAGES%%share/man/man8/alsa-info.sh.8.gz %%MANPAGES%%share/man/man8/alsaconf.8.gz sbin/alsa-info.sh %%BAT%%sbin/alsabat-test.sh diff --git a/audio/amberol/Makefile b/audio/amberol/Makefile index 10766a4a3497..63339d1d90cc 100644 --- a/audio/amberol/Makefile +++ b/audio/amberol/Makefile @@ -1,6 +1,6 @@ PORTNAME= amberol DISTVERSION= 2025.1 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= audio MAINTAINER= ports@FreeBSD.org diff --git a/audio/aqualung/Makefile b/audio/aqualung/Makefile index 8f73dfe59bdf..6fc16e8b5ee1 100644 --- a/audio/aqualung/Makefile +++ b/audio/aqualung/Makefile @@ -1,6 +1,6 @@ PORTNAME= aqualung DISTVERSION= 1.2 -PORTREVISION= 8 +PORTREVISION= 9 CATEGORIES= audio MAINTAINER= portmaster@BSDforge.com diff --git a/audio/audacity/Makefile b/audio/audacity/Makefile index 8701c563162a..cf9bd7f23e34 100644 --- a/audio/audacity/Makefile +++ b/audio/audacity/Makefile @@ -1,7 +1,6 @@ PORTNAME= audacity DISTVERSIONPREFIX= Audacity- -DISTVERSION= 3.7.4 -PORTREVISION= 4 +DISTVERSION= 3.7.5 CATEGORIES= audio MASTER_SITES+= https://github.com/${PORTNAME}/${PORTNAME}-manual/releases/download/v${DISTVERSION}/:manual DISTFILES+= ${PORTNAME}-manual-${DISTVERSION}.tar.gz:manual @@ -14,10 +13,8 @@ LICENSE= GPLv2+ LICENSE_FILE= ${WRKSRC}/LICENSE.txt BUILD_DEPENDS= conan:sysutils/conan \ - rapidjson>0:devel/rapidjson \ - lv2>0:audio/lv2 -BUILD_DEPENDS_amd64= nasm:devel/nasm -BUILD_DEPENDS_i386= nasm:devel/nasm + lv2>0:audio/lv2 \ + rapidjson>0:devel/rapidjson LIB_DEPENDS= libexpat.so:textproc/expat2 \ libharfbuzz.so:print/harfbuzz \ liblilv-0.so:audio/lilv \ @@ -31,14 +28,14 @@ LIB_DEPENDS= libexpat.so:textproc/expat2 \ libsndfile.so:audio/libsndfile \ libsord-0.so:devel/sord \ libsoxr.so:audio/libsoxr \ - libsratom-0.so:audio/sratom \ libsqlite3.so:databases/sqlite3 \ + libsratom-0.so:audio/sratom \ libsuil-0.so:audio/suil \ libuuid.so:misc/libuuid \ libwavpack.so:audio/wavpack -USES= cmake compiler:c++20-lang cpe desktop-file-utils gettext \ - gnome python:build pkgconfig shared-mime-info +USES= cmake compiler:c++20-lang cpe desktop-file-utils \ + gettext-runtime gnome python:build pkgconfig shared-mime-info CPE_VENDOR= audacityteam USE_GITHUB= yes @@ -58,10 +55,10 @@ CMAKE_ARGS= -DAUDACITY_BUILD_LEVEL=2 \ -Daudacity_use_lv2:STRING=system \ -Daudacity_use_midi:STRING=system \ -Daudacity_use_nyquist:STRING=local \ + -Daudacity_use_png:STRING=system \ -Daudacity_use_portaudio:STRING=system \ -Daudacity_use_portmixer:STRING=local \ -Daudacity_use_portsmf:STRING=local \ - -Daudacity_use_png:STRING=system \ -Daudacity_use_rapidjson:STRING=system \ -Daudacity_use_soxr:STRING=system \ -Daudacity_use_sqlite:STRING=system \ @@ -69,19 +66,20 @@ CMAKE_ARGS= -DAUDACITY_BUILD_LEVEL=2 \ -Daudacity_use_wxwidgets:STRING=system \ -Daudacity_use_zlib:STRING=system -CMAKE_ON= audacity_bundle_gplv3 audacity_conan_allow_prebuilt_binaries audacity_obey_system_dependencies -CMAKE_OFF= audacity_has_audiocom_upload audacity_conan_enabled audacity_conan_force_build_dependencies \ - audacity_has_crashreports audacity_has_networking audacity_has_updates_check audacity_has_url_schemes_support \ - audacity_has_tests audacity_has_vst3 audacity_perform_codesign audacity_use_pch +CMAKE_ON= audacity_bundle_gplv3 audacity_conan_allow_prebuilt_binaries \ + audacity_obey_system_dependencies +CMAKE_OFF= audacity_conan_enabled audacity_conan_force_build_dependencies \ + audacity_has_audiocom_upload audacity_has_crashreports \ + audacity_has_networking audacity_has_tests \ + audacity_has_updates_check audacity_has_url_schemes_support \ + audacity_has_vst3 audacity_perform_codesign audacity_use_pch -# TODO: fix NLS support properly -PLIST_SUB+= NLS="" PORTDOCS= README.md -OPTIONS_DEFINE= DEBUG DOCS FFMPEG FLAC ID3TAG LADSPA MANUAL \ - OGG SBSMS SOUNDTOUCH TWOLAME VAMP VORBIS VST -OPTIONS_DEFAULT= FFMPEG FLAC ID3TAG LADSPA OGG SBSMS \ - SOUNDTOUCH TWOLAME VAMP VORBIS VST +OPTIONS_DEFINE= DEBUG DOCS FFMPEG FLAC ID3TAG LADSPA MANUAL NLS OGG \ + SBSMS SOUNDTOUCH TWOLAME VAMP VORBIS VST +OPTIONS_DEFAULT= FFMPEG FLAC ID3TAG LADSPA OGG SBSMS SOUNDTOUCH TWOLAME \ + VAMP VORBIS VST OPTIONS_EXCLUDE_i386= SBSMS OPTIONS_SUB= yes @@ -112,6 +110,9 @@ LADSPA_CMAKE_BOOL= audacity_use_ladspa MANUAL_CMAKE_BOOL= audacity_package_manual +NLS_USES= gettext-tools +NLS_CMAKE_BOOL= audacity_locale + OGG_LIB_DEPENDS= libogg.so:audio/libogg OGG_CMAKE_ON= -Daudacity_use_libogg:STRING=system OGG_CMAKE_OFF= -Daudacity_use_libogg:STRING=off diff --git a/audio/audacity/distinfo b/audio/audacity/distinfo index 9b7171d1d392..d76881ab130d 100644 --- a/audio/audacity/distinfo +++ b/audio/audacity/distinfo @@ -1,5 +1,5 @@ -TIMESTAMP = 1749633114 -SHA256 (audacity-manual-3.7.4.tar.gz) = 7dabdf89b9050d67e850cde5c8aa94858151b344e0953747c6bc1697c4dec504 -SIZE (audacity-manual-3.7.4.tar.gz) = 26569277 -SHA256 (audacity-audacity-Audacity-3.7.4_GH0.tar.gz) = 76d0867bb852bbaa3dff834804b0abf8208a763461187f0ae2a0d5a3ddf31df7 -SIZE (audacity-audacity-Audacity-3.7.4_GH0.tar.gz) = 64004401 +TIMESTAMP = 1754512004 +SHA256 (audacity-manual-3.7.5.tar.gz) = 5e1632dbd649418c25b3d52ae92c5e72395fd8276e209261c5f4981ab1168476 +SIZE (audacity-manual-3.7.5.tar.gz) = 26572320 +SHA256 (audacity-audacity-Audacity-3.7.5_GH0.tar.gz) = 2520d9ff2e8f7d69d62e033b167eb6c53d1db89e89876689545769a2f8ef72ac +SIZE (audacity-audacity-Audacity-3.7.5_GH0.tar.gz) = 64123656 diff --git a/audio/audacity/files/patch-src_CMakeLists.txt b/audio/audacity/files/patch-src_CMakeLists.txt new file mode 100644 index 000000000000..b154ab0c0c55 --- /dev/null +++ b/audio/audacity/files/patch-src_CMakeLists.txt @@ -0,0 +1,18 @@ +--- src/CMakeLists.txt.orig 2025-08-04 16:27:57 UTC ++++ src/CMakeLists.txt +@@ -13,7 +13,15 @@ add_executable( ${TARGET} ) + set( CMAKE_ENABLE_EXPORTS ON ) + + add_executable( ${TARGET} ) ++# Handle locale option ++cmd_option( ++ ${_OPT}locale ++ "Native Language Support [on, off]" ++ ON ++) ++if( ${_OPT}locale ) + add_dependencies( ${TARGET} locale ) ++endif() + add_dependencies( ${TARGET} nyquist ) + add_dependencies( ${TARGET} plug-ins ) + diff --git a/audio/audiocd-kio/distinfo b/audio/audiocd-kio/distinfo index 87088a845ad1..31ee930b671c 100644 --- a/audio/audiocd-kio/distinfo +++ b/audio/audiocd-kio/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1751381197 -SHA256 (KDE/release-service/25.04.3/audiocd-kio-25.04.3.tar.xz) = 446bf072506f847409fbe2712eed898f14d95be4caad4501cd04be83c4da7213 -SIZE (KDE/release-service/25.04.3/audiocd-kio-25.04.3.tar.xz) = 583988 +TIMESTAMP = 1754646111 +SHA256 (KDE/release-service/25.08.0/audiocd-kio-25.08.0.tar.xz) = 7da5ce5d4be9cb66e60e471d615a3d606776abc48712c5b622d11ddf169553fb +SIZE (KDE/release-service/25.08.0/audiocd-kio-25.08.0.tar.xz) = 584292 diff --git a/audio/baresip/Makefile b/audio/baresip/Makefile index 7158aec42f2d..c251d7258e3a 100644 --- a/audio/baresip/Makefile +++ b/audio/baresip/Makefile @@ -1,6 +1,6 @@ PORTNAME= baresip DISTVERSIONPREFIX= v -DISTVERSION= 3.24.0 +DISTVERSION= 4.0.0 CATEGORIES= audio MAINTAINER= herbert@gojira.at @@ -18,10 +18,9 @@ USE_GITHUB= yes GH_ACCOUNT= baresip OPTIONS_DEFINE= ALSA AV1 AVCODEC AVFILTER AVFORMAT CTRL_DBUS DOCS \ - EXAMPLES G711 G722 G726 GST MQTT OPUS OPUS_MS PLC \ + EXAMPLES G711 G722 G726 GST GTK3 MQTT OPUS OPUS_MS PLC \ PORTAUDIO PULSEAUDIO SDL SNAPSHOT SNDFILE SWSCALE V4L2 \ VPX X11 -OPTIONS_DEFAULT= DOCS EXAMPLES OPTIONS_SUB= yes ALSA_DESC= ALSA audio driver @@ -46,7 +45,7 @@ VPX_DESC= VP8/VP9 video codecs X11_DESC= X11 video output _MODULES_LIST= account aubridge auconv aufile auresamp ausine cons contact \ - ctrl_tcp debug_cmd dtls_srtp ebuacip echo fakevideo httpd \ + ctrl_tcp debug_cmd dtls_srtp echo fakevideo httpd \ httpreq ice l16 menu mixausrc mixminus mwi natpmp netroam pcp \ presence rtcpsummary selfview serreg srtp stdio stun syslog \ turn uuid vidbridge vidinfo vumeter @@ -70,6 +69,8 @@ G726_LIB_DEPENDS= libspandsp.so:comms/spandsp G726_VARS= _MODULES_LIST+=g726 GST_USES= gnome gstreamer:1 GST_VARS= USE_GNOME+=glib20 +GTK3_USES= gnome +GTK3_VARS= USE_GNOME+=gtk30 _MODULES_LIST+=gtk MQTT_LIB_DEPENDS= libmosquitto.so:net/mosquitto MQTT_VARS= _MODULES_LIST+=mqtt OPUS_LIB_DEPENDS= libopus.so:audio/opus diff --git a/audio/baresip/distinfo b/audio/baresip/distinfo index 90c7de5874e4..ff021614446a 100644 --- a/audio/baresip/distinfo +++ b/audio/baresip/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1752268910 -SHA256 (baresip-baresip-v3.24.0_GH0.tar.gz) = a6dc7d76714236cbf64b9f58ece742befcd9e40bc787b0173370d52fd0447eb4 -SIZE (baresip-baresip-v3.24.0_GH0.tar.gz) = 1183950 +TIMESTAMP = 1754482210 +SHA256 (baresip-baresip-v4.0.0_GH0.tar.gz) = 481db747f9946c0304dab584f5b64dd05bfb847a701b2263aa0346d76dab503c +SIZE (baresip-baresip-v4.0.0_GH0.tar.gz) = 1183083 diff --git a/audio/baresip/pkg-plist b/audio/baresip/pkg-plist index 83ac4b67faad..6f97b2fa24d0 100644 --- a/audio/baresip/pkg-plist +++ b/audio/baresip/pkg-plist @@ -17,12 +17,12 @@ lib/baresip/modules/contact.so lib/baresip/modules/ctrl_tcp.so lib/baresip/modules/debug_cmd.so lib/baresip/modules/dtls_srtp.so -lib/baresip/modules/ebuacip.so lib/baresip/modules/echo.so lib/baresip/modules/fakevideo.so %%G711%%lib/baresip/modules/g711.so %%G722%%lib/baresip/modules/g722.so %%G726%%lib/baresip/modules/g726.so +%%GTK3%%lib/baresip/modules/gtk.so lib/baresip/modules/httpd.so lib/baresip/modules/httpreq.so lib/baresip/modules/ice.so @@ -62,8 +62,8 @@ lib/baresip/modules/vidinfo.so lib/baresip/modules/vumeter.so %%X11%%lib/baresip/modules/x11.so lib/libbaresip.so -lib/libbaresip.so.20 -lib/libbaresip.so.20.24.0 +lib/libbaresip.so.21 +lib/libbaresip.so.21.0.0 libdata/pkgconfig/libbaresip.pc share/applications/com.github.baresip.desktop %%DATADIR%%/autoanswer.wav diff --git a/audio/cardinal/Makefile b/audio/cardinal/Makefile index 48ea05529fd2..afb8670f373c 100644 --- a/audio/cardinal/Makefile +++ b/audio/cardinal/Makefile @@ -14,6 +14,7 @@ WWW= https://cardinal.kx.studio/ \ LICENSE= GPLv3 LICENSE_FILE= ${WRKSRC}/LICENSE +BROKEN_FreeBSD_13= compilation fails, error: static assertion failed due to requirement 'is_arithmetic<rack::simd::Vector<float, 4>>::value', see https://github.com/DISTRHO/Cardinal/issues/726 BROKEN_FreeBSD_15= compilation fails, error: static assertion failed due to requirement 'is_arithmetic<rack::simd::Vector<float, 4>>::value', see https://github.com/DISTRHO/Cardinal/issues/726 BROKEN_armv7= compilation fails due to the variable name conflict with base header, see https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=279134 diff --git a/audio/cddb-bundle/Makefile b/audio/cddb-bundle/Makefile index 805c13151528..28cbc268dd8e 100644 --- a/audio/cddb-bundle/Makefile +++ b/audio/cddb-bundle/Makefile @@ -1,6 +1,6 @@ PORTNAME= cddb PORTVERSION= 0.2 -PORTREVISION= 12 +PORTREVISION= 13 CATEGORIES= audio gnustep MASTER_SITES= SF/gsburn/cdplayer/${DISTNAME} PKGNAMESUFFIX= -bundle${PKGNAMESUFFIX2} diff --git a/audio/chromaprint/Makefile b/audio/chromaprint/Makefile index eaaa25dd57c1..5d80a0100ab3 100644 --- a/audio/chromaprint/Makefile +++ b/audio/chromaprint/Makefile @@ -1,8 +1,7 @@ PORTNAME= chromaprint -DISTVERSION= 1.5.1.20221217 -PORTREVISION= 1 +DISTVERSION= 1.6.0 CATEGORIES= audio -#MASTER_SITES= https://github.com/acoustid/${PORTNAME}/releases/download/v${DISTVERSION}/ +MASTER_SITES= https://github.com/acoustid/${PORTNAME}/releases/download/v${DISTVERSION}/ MAINTAINER= jhale@FreeBSD.org COMMENT= AcoustID audio fingerprinting library @@ -14,27 +13,21 @@ LICENSE_FILE_MIT= ${WRKSRC}/LICENSE.md LIB_DEPENDS= libavcodec.so:multimedia/ffmpeg -USES= cmake compiler:c++11-lib -USE_GITHUB= yes -GH_ACCOUNT= acoustid -GH_TAGNAME= aa67c95 +USES= cmake:testing compiler:c++14-lang USE_LDCONFIG= yes -CMAKE_ARGS= -DBUILD_TOOLS:BOOL=true \ - -DAUDIO_PROCESSOR_LIB=swresample \ - -DFFT_LIB:STRING=avfft +CMAKE_ARGS= -DAUDIO_PROCESSOR_LIB:STRING=swresample \ + -DFFT_LIB:STRING=`if [ -f ${LOCALBASE}/include/libavcodec/avfft.h ]; then ${ECHO_CMD} avfft; else ${ECHO_CMD} avtx; fi` +CMAKE_ON= BUILD_TOOLS +CMAKE_OFF= BUILD_TESTS +CMAKE_TESTING_ON= BUILD_TESTS -OPTIONS_DEFINE= DOCS DOXYGEN TEST +OPTIONS_DEFINE= DOCS DOXYGEN +DOXYGEN_IMPLIES= DOCS DOXYGEN_BUILD_DEPENDS= doxygen:devel/doxygen \ dot:graphics/graphviz DOXYGEN_PORTDOCS= * -DOXYGEN_IMPLIES= DOCS - -TEST_BUILD_DEPENDS= ${NONEXISTENT}:devel/googletest:patch -TEST_CMAKE_BOOL= BUILD_TESTS -TEST_CMAKE_ON= -DGTEST_ROOT:PATH=`${MAKE} -C ${PORTSDIR}/devel/googletest -VWRKSRC`/googletest -TEST_TARGET= check do-build-DOXYGEN-on: @(cd ${BUILD_WRKSRC}; ${DO_MAKE_BUILD} docs) diff --git a/audio/chromaprint/distinfo b/audio/chromaprint/distinfo index 5f20e3b6fde7..999772c88563 100644 --- a/audio/chromaprint/distinfo +++ b/audio/chromaprint/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1682952377 -SHA256 (acoustid-chromaprint-1.5.1.20221217-aa67c95_GH0.tar.gz) = 0893b7198121dd2add81aa1233e5312cbc7446bdd6b6418a5af6ab24e82cb6b3 -SIZE (acoustid-chromaprint-1.5.1.20221217-aa67c95_GH0.tar.gz) = 1581151 +TIMESTAMP = 1756531467 +SHA256 (chromaprint-1.6.0.tar.gz) = 9d33482e56a1389a37a0d6742c376139fa43e3b8a63d29003222b93db2cb40da +SIZE (chromaprint-1.6.0.tar.gz) = 1577695 diff --git a/audio/chromaprint/files/patch-tests_CMakeLists.txt b/audio/chromaprint/files/patch-tests_CMakeLists.txt deleted file mode 100644 index a34c06840c6b..000000000000 --- a/audio/chromaprint/files/patch-tests_CMakeLists.txt +++ /dev/null @@ -1,14 +0,0 @@ ---- tests/CMakeLists.txt.orig 2016-12-23 11:50:27 UTC -+++ tests/CMakeLists.txt -@@ -36,6 +36,11 @@ set(SRCS - if(BUILD_TOOLS) - set(SRCS ${SRCS} ../src/audio/ffmpeg_audio_reader_test.cpp) - link_libraries(fpcalc_libs) -+ include_directories( -+ ${FFMPEG_LIBAVCODEC_INCLUDE_DIRS} -+ ${FFMPEG_LIBAVFORMAT_INCLUDE_DIRS} -+ ${FFMPEG_LIBAVUTIL_INCLUDE_DIRS} -+ ) - endif() - - add_executable(all_tests ${SRCS} $<TARGET_OBJECTS:chromaprint_objs>) diff --git a/audio/chromaprint/pkg-plist b/audio/chromaprint/pkg-plist index 4c8e307b35f0..baf18c35b148 100644 --- a/audio/chromaprint/pkg-plist +++ b/audio/chromaprint/pkg-plist @@ -1,6 +1,10 @@ bin/fpcalc include/chromaprint.h +lib/cmake/Chromaprint/ChromaprintConfig.cmake +lib/cmake/Chromaprint/ChromaprintConfigVersion.cmake +lib/cmake/Chromaprint/ChromaprintTargets-%%CMAKE_BUILD_TYPE%%.cmake +lib/cmake/Chromaprint/ChromaprintTargets.cmake lib/libchromaprint.so lib/libchromaprint.so.1 -lib/libchromaprint.so.1.5.1 +lib/libchromaprint.so.1.6.0 libdata/pkgconfig/libchromaprint.pc diff --git a/audio/cmus/files/patch-fix-ffmpeg8 b/audio/cmus/files/patch-fix-ffmpeg8 new file mode 100644 index 000000000000..ff1407a55467 --- /dev/null +++ b/audio/cmus/files/patch-fix-ffmpeg8 @@ -0,0 +1,1841 @@ +From 9f3b9efd8bd5508ffd069cbd0c228857ee11e1e5 Mon Sep 17 00:00:00 2001 +From: ihy123 <aladinandreyy@gmail.com> +Date: Thu, 14 Aug 2025 12:44:10 +0300 +Subject: [PATCH 01/12] ip/ffmpeg: more precise seeking + +av_seek_frame() and avformat_seek_file() seek to nearest "keyframe". For +codecs like, for example, ape this means that seeking will be very off +(5 seconds or more). So what we do is: +1. seek to nearest "keyframe" before the desired time, +2. discard some frames to approach the desired time. +--- + ip/ffmpeg.c | 154 ++++++++++++++++++++++++++++++++-------------------- + 1 file changed, 94 insertions(+), 60 deletions(-) + +diff --git ip/ffmpeg.c ip/ffmpeg.c +index 21b9a01f4..ecbf00582 100644 +--- ip/ffmpeg.c ++++ ip/ffmpeg.c +@@ -44,6 +44,8 @@ struct ffmpeg_input { + AVPacket pkt; + int curr_pkt_size; + uint8_t *curr_pkt_buf; ++ int64_t seek_ts; ++ int64_t prev_frame_end; + int stream_index; + + unsigned long curr_size; +@@ -76,6 +78,8 @@ static struct ffmpeg_input *ffmpeg_input_create(void) + return NULL; + } + input->curr_pkt_size = 0; ++ input->seek_ts = -1; ++ input->prev_frame_end = -1; + input->curr_pkt_buf = input->pkt.data; + return input; + } +@@ -314,10 +318,7 @@ static int ffmpeg_fill_buffer(struct input_plugin_data *ip_data, AVFormatContext + #else + AVFrame *frame = avcodec_alloc_frame(); + #endif +- int got_frame; + while (1) { +- int len; +- + if (input->curr_pkt_size <= 0) { + #if LIBAVCODEC_VERSION_MAJOR >= 56 + av_packet_unref(&input->pkt); +@@ -333,78 +334,108 @@ static int ffmpeg_fill_buffer(struct input_plugin_data *ip_data, AVFormatContext + #endif + return 0; + } +- if (input->pkt.stream_index == input->stream_index) { +- input->curr_pkt_size = input->pkt.size; +- input->curr_pkt_buf = input->pkt.data; +- input->curr_size += input->pkt.size; +- input->curr_duration += input->pkt.duration; +- } +- continue; +- } + +- { +- AVPacket avpkt; +- av_new_packet(&avpkt, input->curr_pkt_size); +- memcpy(avpkt.data, input->curr_pkt_buf, input->curr_pkt_size); ++ if (input->pkt.stream_index != input->stream_index) ++ continue; ++ input->curr_pkt_size = input->pkt.size; ++ input->curr_pkt_buf = input->pkt.data; ++ input->curr_size += input->pkt.size; ++ input->curr_duration += input->pkt.duration; ++ + #if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(57, 48, 101) +- int send_result = avcodec_send_packet(cc, &avpkt); +- if (send_result != 0) { +- if (send_result != AVERROR(EAGAIN)) { +- d_print("avcodec_send_packet() returned %d\n", send_result); +- char errstr[AV_ERROR_MAX_STRING_SIZE]; +- if (!av_strerror(send_result, errstr, AV_ERROR_MAX_STRING_SIZE )) +- { +- d_print("av_strerror(): %s\n", errstr); +- } else { +- d_print("av_strerror(): Description for error cannot be found\n"); +- } +- av_packet_unref(&avpkt); +- return -IP_ERROR_INTERNAL; ++ int send_result = avcodec_send_packet(cc, &input->pkt); ++ if (send_result != 0 && send_result != AVERROR(EAGAIN)) { ++ d_print("avcodec_send_packet() returned %d\n", send_result); ++ char errstr[AV_ERROR_MAX_STRING_SIZE]; ++ if (!av_strerror(send_result, errstr, AV_ERROR_MAX_STRING_SIZE )) ++ { ++ d_print("av_strerror(): %s\n", errstr); ++ } else { ++ d_print("av_strerror(): Description for error cannot be found\n"); + } +- len = 0; +- } else { +- len = input->curr_pkt_size; ++ return -IP_ERROR_INTERNAL; + } +- +- int recv_result = avcodec_receive_frame(cc, frame); +- got_frame = (recv_result == 0) ? 1 : 0; +-#else +- len = avcodec_decode_audio4(cc, frame, &got_frame, &avpkt); +-#endif +-#if LIBAVCODEC_VERSION_MAJOR >= 56 +- av_packet_unref(&avpkt); +-#else +- av_free_packet(&avpkt); + #endif + } ++ ++#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(57, 48, 101) ++ int recv_result = avcodec_receive_frame(cc, frame); ++ if (recv_result < 0) { ++ input->curr_pkt_size = 0; ++ continue; ++ } ++#else ++ int got_frame; ++ int len = avcodec_decode_audio4(cc, frame, &got_frame, &input->pkt); + if (len < 0) { + /* this is often reached when seeking, not sure why */ + input->curr_pkt_size = 0; + continue; + } +- input->curr_pkt_size -= len; +- input->curr_pkt_buf += len; +- if (got_frame) { +- int res = swr_convert(swr, +- &output->buffer, +- frame->nb_samples, +- (const uint8_t **)frame->extended_data, +- frame->nb_samples); +- if (res < 0) +- res = 0; +- output->buffer_pos = output->buffer; ++ if (!got_frame) ++ continue; ++#endif ++ ++ int64_t frame_ts = -1; ++ if (frame->pts) ++ frame_ts = frame->pts; ++ else if (frame->pkt_pts) ++ frame_ts = frame->pkt_pts; ++ else if (frame->pkt_dts) ++ frame_ts = frame->pkt_dts; ++ ++ const uint8_t **in = (const uint8_t **)frame->extended_data; ++ int in_count = frame->nb_samples; ++ if (input->seek_ts > 0 && (frame_ts >= 0 || input->prev_frame_end >= 0)) { ++ struct ffmpeg_private *priv = ip_data->private; ++ AVStream *st = priv->input_context->streams[priv->input->stream_index]; ++ if (frame_ts >= 0) ++ frame_ts = av_rescale_q(frame_ts, st->time_base, AV_TIME_BASE_Q); ++ else ++ frame_ts = input->prev_frame_end; ++ int64_t frame_dur = av_rescale(frame->nb_samples, AV_TIME_BASE, sf_get_rate(ip_data->sf)); ++ int64_t frame_end = frame_ts + frame_dur; ++ input->prev_frame_end = frame_end; ++ d_print("seek_ts: %ld, frame_ts: %ld, frame_end: %ld\n", input->seek_ts, frame_ts, frame_end); ++ if (frame_end <= input->seek_ts) ++ continue; ++ ++ /* skip part of this frame */ ++ int64_t skip_samples = av_rescale(input->seek_ts - frame_ts, sf_get_rate(ip_data->sf), AV_TIME_BASE); ++ in_count -= skip_samples; ++ if (av_sample_fmt_is_planar(frame->format)) { ++ for (int i = 0; i < cc->channels; i++) { ++ in[i] += skip_samples * sf_get_sample_size(ip_data->sf); ++ } ++ } else { ++ *in += skip_samples * cc->channels * sf_get_sample_size(ip_data->sf); ++ } ++ ++ input->seek_ts = -1; ++ input->prev_frame_end = -1; ++ } ++ ++ int res = swr_convert(swr, ++ &output->buffer, ++ frame->nb_samples, ++ in, ++ in_count); ++ if (res < 0) ++ res = 0; ++ ++ output->buffer_pos = output->buffer; + #if LIBAVCODEC_VERSION_MAJOR >= 60 +- output->buffer_used_len = res * cc->ch_layout.nb_channels * sf_get_sample_size(ip_data->sf); ++ output->buffer_used_len = res * cc->ch_layout.nb_channels * sf_get_sample_size(ip_data->sf); + #else +- output->buffer_used_len = res * cc->channels * sf_get_sample_size(ip_data->sf); ++ output->buffer_used_len = res * cc->channels * sf_get_sample_size(ip_data->sf); + #endif ++ + #if LIBAVCODEC_VERSION_MAJOR >= 56 +- av_frame_free(&frame); ++ av_frame_free(&frame); + #else +- avcodec_free_frame(&frame); ++ avcodec_free_frame(&frame); + #endif +- return output->buffer_used_len; +- } ++ return output->buffer_used_len; + } + /* This should never get here. */ + return -IP_ERROR_INTERNAL; +@@ -437,13 +468,16 @@ static int ffmpeg_seek(struct input_plugin_data *ip_data, double offset) + AVStream *st = priv->input_context->streams[priv->input->stream_index]; + int ret; + +- int64_t pts = av_rescale_q(offset * AV_TIME_BASE, AV_TIME_BASE_Q, st->time_base); ++ priv->input->seek_ts = offset * AV_TIME_BASE; ++ priv->input->prev_frame_end = -1; ++ int64_t ts = av_rescale(offset, st->time_base.den, st->time_base.num); + + avcodec_flush_buffers(priv->codec_context); + /* Force reading a new packet in next ffmpeg_fill_buffer(). */ + priv->input->curr_pkt_size = 0; + +- ret = av_seek_frame(priv->input_context, priv->input->stream_index, pts, 0); ++ ret = avformat_seek_file(priv->input_context, ++ priv->input->stream_index, 0, ts, ts, 0); + + if (ret < 0) { + return -IP_ERROR_FUNCTION_NOT_SUPPORTED; + +From ec84fa7b4b4a72c19e2ab04eac864c99df6d2e4e Mon Sep 17 00:00:00 2001 +From: ihy123 <aladinandreyy@gmail.com> +Date: Fri, 15 Aug 2025 21:42:19 +0300 +Subject: [PATCH 02/12] ip/ffmpeg: skip samples only when needed + +--- + ip/ffmpeg.c | 32 ++++++++++++++++++-------------- + 1 file changed, 18 insertions(+), 14 deletions(-) + +diff --git ip/ffmpeg.c ip/ffmpeg.c +index ecbf00582..5f5a4f37b 100644 +--- ip/ffmpeg.c ++++ ip/ffmpeg.c +@@ -393,22 +393,26 @@ static int ffmpeg_fill_buffer(struct input_plugin_data *ip_data, AVFormatContext + frame_ts = av_rescale_q(frame_ts, st->time_base, AV_TIME_BASE_Q); + else + frame_ts = input->prev_frame_end; +- int64_t frame_dur = av_rescale(frame->nb_samples, AV_TIME_BASE, sf_get_rate(ip_data->sf)); +- int64_t frame_end = frame_ts + frame_dur; +- input->prev_frame_end = frame_end; +- d_print("seek_ts: %ld, frame_ts: %ld, frame_end: %ld\n", input->seek_ts, frame_ts, frame_end); +- if (frame_end <= input->seek_ts) +- continue; + +- /* skip part of this frame */ +- int64_t skip_samples = av_rescale(input->seek_ts - frame_ts, sf_get_rate(ip_data->sf), AV_TIME_BASE); +- in_count -= skip_samples; +- if (av_sample_fmt_is_planar(frame->format)) { +- for (int i = 0; i < cc->channels; i++) { +- in[i] += skip_samples * sf_get_sample_size(ip_data->sf); ++ if (frame_ts < input->seek_ts) { ++ int64_t frame_dur = av_rescale(frame->nb_samples, AV_TIME_BASE, sf_get_rate(ip_data->sf)); ++ int64_t frame_end = frame_ts + frame_dur; ++ input->prev_frame_end = frame_end; ++ d_print("seek_ts: %ld, frame_ts: %ld, frame_end: %ld\n", input->seek_ts, frame_ts, frame_end); ++ if (frame_end <= input->seek_ts) ++ continue; ++ ++ /* skip part of this frame */ ++ int64_t skip_samples = av_rescale(input->seek_ts - frame_ts, sf_get_rate(ip_data->sf), AV_TIME_BASE); ++ in_count -= skip_samples; ++ if (av_sample_fmt_is_planar(frame->format)) { ++ for (int i = 0; i < cc->channels; i++) { ++ in[i] += skip_samples * sf_get_sample_size(ip_data->sf); ++ } ++ } else { ++ *in += skip_samples * cc->channels * sf_get_sample_size(ip_data->sf); + } +- } else { +- *in += skip_samples * cc->channels * sf_get_sample_size(ip_data->sf); ++ d_print("skipping %ld samples\n", skip_samples); + } + + input->seek_ts = -1; + +From 70a8761fc1d30bfa302332d0807b89c3776d3f31 Mon Sep 17 00:00:00 2001 +From: ihy123 <aladinandreyy@gmail.com> +Date: Sat, 16 Aug 2025 02:43:55 +0300 +Subject: [PATCH 03/12] ip/ffmpeg: remove excessive version checks + +ffmpeg download page states that v4.0.6 has +- libavutil 56.14.100 +- libavcodec 58.18.100 +- libavformat 58.12.100 +(https://ffmpeg.org/olddownload.html) + +After removing all checks for versions lower than these, the plugin +still compiles with v3.3.9 headers. + +After all, why be better with compatibility than developers themselves? +--- + ip/ffmpeg.c | 109 +++++++++++----------------------------------------- + 1 file changed, 23 insertions(+), 86 deletions(-) + +diff --git ip/ffmpeg.c ip/ffmpeg.c +index 5f5a4f37b..f6a11f450 100644 +--- ip/ffmpeg.c ++++ ip/ffmpeg.c +@@ -25,7 +25,6 @@ + #include "../config/ffmpeg.h" + #endif + +-#include <stdio.h> + #include <libavcodec/avcodec.h> + #include <libavformat/avformat.h> + #include <libavformat/avio.h> +@@ -43,7 +42,6 @@ + struct ffmpeg_input { + AVPacket pkt; + int curr_pkt_size; +- uint8_t *curr_pkt_buf; + int64_t seek_ts; + int64_t prev_frame_end; + int stream_index; +@@ -80,17 +78,12 @@ static struct ffmpeg_input *ffmpeg_input_create(void) + input->curr_pkt_size = 0; + input->seek_ts = -1; + input->prev_frame_end = -1; +- input->curr_pkt_buf = input->pkt.data; + return input; + } + + static void ffmpeg_input_free(struct ffmpeg_input *input) + { +-#if LIBAVCODEC_VERSION_MAJOR >= 56 + av_packet_unref(&input->pkt); +-#else +- av_free_packet(&input->pkt); +-#endif + free(input); + } + +@@ -132,7 +125,7 @@ static void ffmpeg_init(void) + + av_log_set_level(AV_LOG_QUIET); + +-#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(58, 18, 100) ++#if LIBAVFORMAT_VERSION_INT < AV_VERSION_INT(58, 9, 100) + /* We could register decoders explicitly to save memory, but we have to + * be careful about compatibility. */ + av_register_all(); +@@ -149,9 +142,7 @@ static int ffmpeg_open(struct input_plugin_data *ip_data) + AVCodec const *codec; + AVCodecContext *cc = NULL; + AVFormatContext *ic = NULL; +-#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(57, 48, 101) + AVCodecParameters *cp = NULL; +-#endif + SwrContext *swr = NULL; + + ffmpeg_init(); +@@ -171,20 +162,11 @@ static int ffmpeg_open(struct input_plugin_data *ip_data) + } + + for (i = 0; i < ic->nb_streams; i++) { +- +-#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(57, 48, 101) + cp = ic->streams[i]->codecpar; + if (cp->codec_type == AVMEDIA_TYPE_AUDIO) { + stream_index = i; + break; + } +-#else +- cc = ic->streams[i]->codec; +- if (cc->codec_type == AVMEDIA_TYPE_AUDIO) { +- stream_index = i; +- break; +- } +-#endif + } + + if (stream_index == -1) { +@@ -193,13 +175,9 @@ static int ffmpeg_open(struct input_plugin_data *ip_data) + break; + } + +-#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(57, 48, 101) + codec = avcodec_find_decoder(cp->codec_id); + cc = avcodec_alloc_context3(codec); + avcodec_parameters_to_context(cc, cp); +-#else +- codec = avcodec_find_decoder(cc->codec_id); +-#endif + if (!codec) { + d_print("codec not found: %d, %s\n", cc->codec_id, avcodec_get_name(cc->codec_id)); + err = -IP_ERROR_UNSUPPORTED_FILE_TYPE; +@@ -217,9 +195,7 @@ static int ffmpeg_open(struct input_plugin_data *ip_data) + + if (err < 0) { + /* Clean up. cc is never opened at this point. (See above assumption.) */ +-#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(57, 48, 101) + avcodec_free_context(&cc); +-#endif + avformat_close_input(&ic); + return err; + } +@@ -231,9 +207,7 @@ static int ffmpeg_open(struct input_plugin_data *ip_data) + priv->input = ffmpeg_input_create(); + if (priv->input == NULL) { + avcodec_close(cc); +-#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(57, 48, 101) + avcodec_free_context(&cc); +-#endif + avformat_close_input(&ic); + free(priv); + return -IP_ERROR_INTERNAL; +@@ -244,7 +218,7 @@ static int ffmpeg_open(struct input_plugin_data *ip_data) + /* Prepare for resampling. */ + out_sample_rate = min_u(cc->sample_rate, 384000); + swr = swr_alloc(); +-#if LIBAVCODEC_VERSION_MAJOR >= 60 ++#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(59, 24, 100) + if (cc->ch_layout.order == AV_CHANNEL_ORDER_UNSPEC) + av_channel_layout_default(&cc->ch_layout, cc->ch_layout.nb_channels); + av_opt_set_chlayout(swr, "in_chlayout", &cc->ch_layout, 0); +@@ -259,7 +233,7 @@ static int ffmpeg_open(struct input_plugin_data *ip_data) + priv->swr = swr; + + ip_data->private = priv; +-#if LIBAVCODEC_VERSION_MAJOR >= 60 ++#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(59, 24, 100) + ip_data->sf = sf_rate(out_sample_rate) | sf_channels(cc->ch_layout.nb_channels); + #else + ip_data->sf = sf_rate(out_sample_rate) | sf_channels(cc->channels); +@@ -281,10 +255,12 @@ static int ffmpeg_open(struct input_plugin_data *ip_data) + } + swr_init(swr); + ip_data->sf |= sf_host_endian(); +-#if LIBAVCODEC_VERSION_MAJOR >= 60 +- channel_map_init_waveex(cc->ch_layout.nb_channels, cc->ch_layout.u.mask, ip_data->channel_map); ++#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(59, 24, 100) ++ channel_map_init_waveex(cc->ch_layout.nb_channels, ++ cc->ch_layout.u.mask, ip_data->channel_map); + #else +- channel_map_init_waveex(cc->channels, cc->channel_layout, ip_data->channel_map); ++ channel_map_init_waveex(cc->channels, ++ cc->channel_layout, ip_data->channel_map); + #endif + return 0; + } +@@ -294,9 +270,7 @@ static int ffmpeg_close(struct input_plugin_data *ip_data) + struct ffmpeg_private *priv = ip_data->private; + + avcodec_close(priv->codec_context); +-#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(57, 48, 101) + avcodec_free_context(&priv->codec_context); +-#endif + avformat_close_input(&priv->input_context); + swr_free(&priv->swr); + ffmpeg_input_free(priv->input); +@@ -310,39 +284,27 @@ static int ffmpeg_close(struct input_plugin_data *ip_data) + * This returns the number of bytes added to the buffer. + * It returns < 0 on error. 0 on EOF. + */ +-static int ffmpeg_fill_buffer(struct input_plugin_data *ip_data, AVFormatContext *ic, AVCodecContext *cc, +- struct ffmpeg_input *input, struct ffmpeg_output *output, SwrContext *swr) ++static int ffmpeg_fill_buffer(struct input_plugin_data *ip_data, ++ AVFormatContext *ic, AVCodecContext *cc, ++ struct ffmpeg_input *input, struct ffmpeg_output *output, ++ SwrContext *swr) + { +-#if LIBAVCODEC_VERSION_MAJOR >= 56 + AVFrame *frame = av_frame_alloc(); +-#else +- AVFrame *frame = avcodec_alloc_frame(); +-#endif + while (1) { + if (input->curr_pkt_size <= 0) { +-#if LIBAVCODEC_VERSION_MAJOR >= 56 + av_packet_unref(&input->pkt); +-#else +- av_free_packet(&input->pkt); +-#endif + if (av_read_frame(ic, &input->pkt) < 0) { + /* Force EOF once we can read no longer. */ +-#if LIBAVCODEC_VERSION_MAJOR >= 56 + av_frame_free(&frame); +-#else +- avcodec_free_frame(&frame); +-#endif + return 0; + } + + if (input->pkt.stream_index != input->stream_index) + continue; + input->curr_pkt_size = input->pkt.size; +- input->curr_pkt_buf = input->pkt.data; + input->curr_size += input->pkt.size; + input->curr_duration += input->pkt.duration; + +-#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(57, 48, 101) + int send_result = avcodec_send_packet(cc, &input->pkt); + if (send_result != 0 && send_result != AVERROR(EAGAIN)) { + d_print("avcodec_send_packet() returned %d\n", send_result); +@@ -355,32 +317,17 @@ static int ffmpeg_fill_buffer(struct input_plugin_data *ip_data, AVFormatContext + } + return -IP_ERROR_INTERNAL; + } +-#endif + } + +-#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(57, 48, 101) + int recv_result = avcodec_receive_frame(cc, frame); + if (recv_result < 0) { + input->curr_pkt_size = 0; + continue; + } +-#else +- int got_frame; +- int len = avcodec_decode_audio4(cc, frame, &got_frame, &input->pkt); +- if (len < 0) { +- /* this is often reached when seeking, not sure why */ +- input->curr_pkt_size = 0; +- continue; +- } +- if (!got_frame) +- continue; +-#endif + + int64_t frame_ts = -1; + if (frame->pts) + frame_ts = frame->pts; +- else if (frame->pkt_pts) +- frame_ts = frame->pkt_pts; + else if (frame->pkt_dts) + frame_ts = frame->pkt_dts; + +@@ -395,7 +342,7 @@ static int ffmpeg_fill_buffer(struct input_plugin_data *ip_data, AVFormatContext + frame_ts = input->prev_frame_end; + + if (frame_ts < input->seek_ts) { +- int64_t frame_dur = av_rescale(frame->nb_samples, AV_TIME_BASE, sf_get_rate(ip_data->sf)); ++ int64_t frame_dur = av_rescale(frame->nb_samples, AV_TIME_BASE, frame->sample_rate); + int64_t frame_end = frame_ts + frame_dur; + input->prev_frame_end = frame_end; + d_print("seek_ts: %ld, frame_ts: %ld, frame_end: %ld\n", input->seek_ts, frame_ts, frame_end); +@@ -403,14 +350,14 @@ static int ffmpeg_fill_buffer(struct input_plugin_data *ip_data, AVFormatContext + continue; + + /* skip part of this frame */ +- int64_t skip_samples = av_rescale(input->seek_ts - frame_ts, sf_get_rate(ip_data->sf), AV_TIME_BASE); ++ int64_t skip_samples = av_rescale(input->seek_ts - frame_ts, frame->sample_rate, AV_TIME_BASE); + in_count -= skip_samples; + if (av_sample_fmt_is_planar(frame->format)) { +- for (int i = 0; i < cc->channels; i++) { ++ for (int i = 0; i < sf_get_channels(ip_data->sf); i++) { + in[i] += skip_samples * sf_get_sample_size(ip_data->sf); + } + } else { +- *in += skip_samples * cc->channels * sf_get_sample_size(ip_data->sf); ++ *in += skip_samples * sf_get_frame_size(ip_data->sf); + } + d_print("skipping %ld samples\n", skip_samples); + } +@@ -428,17 +375,9 @@ static int ffmpeg_fill_buffer(struct input_plugin_data *ip_data, AVFormatContext + res = 0; + + output->buffer_pos = output->buffer; +-#if LIBAVCODEC_VERSION_MAJOR >= 60 +- output->buffer_used_len = res * cc->ch_layout.nb_channels * sf_get_sample_size(ip_data->sf); +-#else +- output->buffer_used_len = res * cc->channels * sf_get_sample_size(ip_data->sf); +-#endif ++ output->buffer_used_len = res * sf_get_frame_size(ip_data->sf); + +-#if LIBAVCODEC_VERSION_MAJOR >= 56 + av_frame_free(&frame); +-#else +- avcodec_free_frame(&frame); +-#endif + return output->buffer_used_len; + } + /* This should never get here. */ +@@ -453,11 +392,11 @@ static int ffmpeg_read(struct input_plugin_data *ip_data, char *buffer, int coun + int out_size; + + if (output->buffer_used_len == 0) { +- rc = ffmpeg_fill_buffer(ip_data, priv->input_context, priv->codec_context, ++ rc = ffmpeg_fill_buffer(ip_data, ++ priv->input_context, priv->codec_context, + priv->input, priv->output, priv->swr); +- if (rc <= 0) { ++ if (rc <= 0) + return rc; +- } + } + out_size = min_i(output->buffer_used_len, count); + memcpy(buffer, output->buffer_pos, out_size); +@@ -477,6 +416,7 @@ static int ffmpeg_seek(struct input_plugin_data *ip_data, double offset) + int64_t ts = av_rescale(offset, st->time_base.den, st->time_base.num); + + avcodec_flush_buffers(priv->codec_context); ++ /* TODO: also flush swresample buffers */ + /* Force reading a new packet in next ffmpeg_fill_buffer(). */ + priv->input->curr_pkt_size = 0; + +@@ -501,7 +441,8 @@ static void ffmpeg_read_metadata(struct growing_keyvals *c, AVDictionary *metada + } + } + +-static int ffmpeg_read_comments(struct input_plugin_data *ip_data, struct keyval **comments) ++static int ffmpeg_read_comments(struct input_plugin_data *ip_data, ++ struct keyval **comments) + { + struct ffmpeg_private *priv = ip_data->private; + AVFormatContext *ic = priv->input_context; +@@ -538,11 +479,7 @@ static long ffmpeg_current_bitrate(struct input_plugin_data *ip_data) + AVStream *st = priv->input_context->streams[priv->input->stream_index]; + long bitrate = -1; + /* ape codec returns silly numbers */ +-#if LIBAVCODEC_VERSION_MAJOR >= 55 + if (priv->codec->id == AV_CODEC_ID_APE) +-#else +- if (priv->codec->id == CODEC_ID_APE) +-#endif + return -1; + if (priv->input->curr_duration > 0) { + double seconds = priv->input->curr_duration * av_q2d(st->time_base); + +From e1a2374a60a41987f95c7d892ebc1b150df7acb1 Mon Sep 17 00:00:00 2001 +From: ihy123 <aladinandreyy@gmail.com> +Date: Sun, 17 Aug 2025 04:05:36 +0300 +Subject: [PATCH 04/12] ip/ffmpeg: major refactor + +--- + ip/ffmpeg.c | 643 +++++++++++++++++++++++++++------------------------- + 1 file changed, 330 insertions(+), 313 deletions(-) + +diff --git ip/ffmpeg.c ip/ffmpeg.c +index f6a11f450..42f630ee7 100644 +--- ip/ffmpeg.c ++++ ip/ffmpeg.c +@@ -35,84 +35,32 @@ + #include <libavutil/mathematics.h> + #endif + +-#ifndef AVCODEC_MAX_AUDIO_FRAME_SIZE +-#define AVCODEC_MAX_AUDIO_FRAME_SIZE 192000 +-#endif ++struct ffmpeg_private { ++ AVCodecContext *codec_ctx; ++ AVFormatContext *format_ctx; ++ AVCodec const *codec; ++ SwrContext *swr; ++ int stream_index; + +-struct ffmpeg_input { +- AVPacket pkt; +- int curr_pkt_size; ++ AVPacket *pkt; ++ AVFrame *frame; + int64_t seek_ts; + int64_t prev_frame_end; +- int stream_index; + ++ /* A buffer to hold swr_convert()-ed samples */ ++ AVFrame *swr_frame; ++ int swr_frame_start; ++ ++ /* Bitrate estimation */ + unsigned long curr_size; + unsigned long curr_duration; + }; + +-struct ffmpeg_output { +- uint8_t *buffer; +- uint8_t *buffer_malloc; +- uint8_t *buffer_pos; /* current buffer position */ +- int buffer_used_len; +-}; +- +-struct ffmpeg_private { +- AVCodecContext *codec_context; +- AVFormatContext *input_context; +- AVCodec const *codec; +- SwrContext *swr; +- +- struct ffmpeg_input *input; +- struct ffmpeg_output *output; +-}; +- +-static struct ffmpeg_input *ffmpeg_input_create(void) +-{ +- struct ffmpeg_input *input = xnew(struct ffmpeg_input, 1); +- +- if (av_new_packet(&input->pkt, 0) != 0) { +- free(input); +- return NULL; +- } +- input->curr_pkt_size = 0; +- input->seek_ts = -1; +- input->prev_frame_end = -1; +- return input; +-} +- +-static void ffmpeg_input_free(struct ffmpeg_input *input) +-{ +- av_packet_unref(&input->pkt); +- free(input); +-} +- +-static struct ffmpeg_output *ffmpeg_output_create(void) +-{ +- struct ffmpeg_output *output = xnew(struct ffmpeg_output, 1); +- +- output->buffer_malloc = xnew(uint8_t, AVCODEC_MAX_AUDIO_FRAME_SIZE + 15); +- output->buffer = output->buffer_malloc; +- /* align to 16 bytes so avcodec can SSE/Altivec/etc */ +- while ((intptr_t) output->buffer % 16) +- output->buffer += 1; +- output->buffer_pos = output->buffer; +- output->buffer_used_len = 0; +- return output; +-} +- +-static void ffmpeg_output_free(struct ffmpeg_output *output) +-{ +- free(output->buffer_malloc); +- output->buffer_malloc = NULL; +- output->buffer = NULL; +- free(output); +-} +- +-static inline void ffmpeg_buffer_flush(struct ffmpeg_output *output) ++static const char *ffmpeg_errmsg(int err) + { +- output->buffer_pos = output->buffer; +- output->buffer_used_len = 0; ++ static char errstr[AV_ERROR_MAX_STRING_SIZE]; ++ av_strerror(err, errstr, AV_ERROR_MAX_STRING_SIZE); ++ return errstr; + } + + static void ffmpeg_init(void) +@@ -132,303 +80,372 @@ static void ffmpeg_init(void) + #endif + } + +-static int ffmpeg_open(struct input_plugin_data *ip_data) ++static int ffmpeg_open_input(struct input_plugin_data *ip_data, ++ struct ffmpeg_private *priv) + { +- struct ffmpeg_private *priv; +- int err = 0; +- int i; +- int stream_index = -1; +- int out_sample_rate; +- AVCodec const *codec; +- AVCodecContext *cc = NULL; + AVFormatContext *ic = NULL; ++ AVCodecContext *cc = NULL; + AVCodecParameters *cp = NULL; +- SwrContext *swr = NULL; +- +- ffmpeg_init(); ++ AVCodec const *codec = NULL; ++ int stream_index = -1; + +- err = avformat_open_input(&ic, ip_data->filename, NULL, NULL); +- if (err < 0) { +- d_print("av_open failed: %d\n", err); +- return -IP_ERROR_FILE_FORMAT; ++ int err; ++ int res = avformat_open_input(&ic, ip_data->filename, NULL, NULL); ++ if (res < 0) { ++ err = -IP_ERROR_FILE_FORMAT; ++ goto err; + } + +- do { +- err = avformat_find_stream_info(ic, NULL); +- if (err < 0) { +- d_print("unable to find stream info: %d\n", err); +- err = -IP_ERROR_FILE_FORMAT; +- break; +- } +- +- for (i = 0; i < ic->nb_streams; i++) { +- cp = ic->streams[i]->codecpar; +- if (cp->codec_type == AVMEDIA_TYPE_AUDIO) { +- stream_index = i; +- break; +- } +- } +- +- if (stream_index == -1) { +- d_print("could not find audio stream\n"); +- err = -IP_ERROR_FILE_FORMAT; +- break; +- } +- +- codec = avcodec_find_decoder(cp->codec_id); +- cc = avcodec_alloc_context3(codec); +- avcodec_parameters_to_context(cc, cp); +- if (!codec) { +- d_print("codec not found: %d, %s\n", cc->codec_id, avcodec_get_name(cc->codec_id)); +- err = -IP_ERROR_UNSUPPORTED_FILE_TYPE; +- break; +- } ++ res = avformat_find_stream_info(ic, NULL); ++ if (res < 0) { ++ d_print("unable to find stream info\n"); ++ err = -IP_ERROR_FILE_FORMAT; ++ goto err; ++ } + +- if (avcodec_open2(cc, codec, NULL) < 0) { +- d_print("could not open codec: %d, %s\n", cc->codec_id, avcodec_get_name(cc->codec_id)); +- err = -IP_ERROR_UNSUPPORTED_FILE_TYPE; ++ for (int i = 0; i < ic->nb_streams; i++) { ++ cp = ic->streams[i]->codecpar; ++ if (cp->codec_type == AVMEDIA_TYPE_AUDIO) { ++ stream_index = i; + break; + } ++ } + +- /* We assume below that no more errors follow. */ +- } while (0); ++ if (stream_index == -1) { ++ d_print("could not find audio stream\n"); ++ err = -IP_ERROR_FILE_FORMAT; ++ goto err_silent; ++ } + +- if (err < 0) { +- /* Clean up. cc is never opened at this point. (See above assumption.) */ +- avcodec_free_context(&cc); +- avformat_close_input(&ic); +- return err; ++ codec = avcodec_find_decoder(cp->codec_id); ++ if (!codec) { ++ d_print("codec (id: %d, name: %s) not found\n", ++ cc->codec_id, avcodec_get_name(cc->codec_id)); ++ err = -IP_ERROR_UNSUPPORTED_FILE_TYPE; ++ goto err_silent; ++ } ++ cc = avcodec_alloc_context3(codec); ++ avcodec_parameters_to_context(cc, cp); ++ ++ res = avcodec_open2(cc, codec, NULL); ++ if (res < 0) { ++ d_print("could not open codec (id: %d, name: %s)\n", ++ cc->codec_id, avcodec_get_name(cc->codec_id)); ++ err = -IP_ERROR_UNSUPPORTED_FILE_TYPE; ++ goto err; + } + +- priv = xnew(struct ffmpeg_private, 1); +- priv->codec_context = cc; +- priv->input_context = ic; ++ priv->format_ctx = ic; ++ priv->codec_ctx = cc; + priv->codec = codec; +- priv->input = ffmpeg_input_create(); +- if (priv->input == NULL) { +- avcodec_close(cc); +- avcodec_free_context(&cc); +- avformat_close_input(&ic); +- free(priv); +- return -IP_ERROR_INTERNAL; ++ priv->stream_index = stream_index; ++ return 0; ++err: ++ d_print("%s\n", ffmpeg_errmsg(res)); ++err_silent: ++ avcodec_free_context(&cc); ++ avformat_close_input(&ic); ++ return err; ++} ++ ++static void ffmpeg_set_sf_and_swr_opts(SwrContext *swr, AVCodecContext *cc, ++ sample_format_t *sf_out, enum AVSampleFormat *out_sample_fmt) ++{ ++ int out_sample_rate = min_u(cc->sample_rate, 384000); ++ sample_format_t sf = sf_rate(out_sample_rate) | sf_host_endian(); ++ av_opt_set_int(swr, "in_sample_rate", cc->sample_rate, 0); ++ av_opt_set_int(swr, "out_sample_rate", out_sample_rate, 0); ++ ++ *out_sample_fmt = cc->sample_fmt; ++ switch (*out_sample_fmt) { ++ case AV_SAMPLE_FMT_U8: ++ sf |= sf_bits(8) | sf_signed(0); ++ break; ++ case AV_SAMPLE_FMT_S32: ++ sf |= sf_bits(32) | sf_signed(1); ++ break; ++ default: ++ sf |= sf_bits(16) | sf_signed(1); ++ *out_sample_fmt = AV_SAMPLE_FMT_S16; + } +- priv->input->stream_index = stream_index; +- priv->output = ffmpeg_output_create(); ++ av_opt_set_sample_fmt(swr, "in_sample_fmt", cc->sample_fmt, 0); ++ av_opt_set_sample_fmt(swr, "out_sample_fmt", *out_sample_fmt, 0); + +- /* Prepare for resampling. */ +- out_sample_rate = min_u(cc->sample_rate, 384000); +- swr = swr_alloc(); + #if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(59, 24, 100) ++ sf |= sf_channels(cc->ch_layout.nb_channels); ++ + if (cc->ch_layout.order == AV_CHANNEL_ORDER_UNSPEC) + av_channel_layout_default(&cc->ch_layout, cc->ch_layout.nb_channels); +- av_opt_set_chlayout(swr, "in_chlayout", &cc->ch_layout, 0); +- av_opt_set_chlayout(swr, "out_chlayout", &cc->ch_layout, 0); ++ av_opt_set_chlayout(swr, "in_chlayout", &cc->ch_layout, 0); ++ av_opt_set_chlayout(swr, "out_chlayout", &cc->ch_layout, 0); + #else +- av_opt_set_int(swr, "in_channel_layout", av_get_default_channel_layout(cc->channels), 0); +- av_opt_set_int(swr, "out_channel_layout", av_get_default_channel_layout(cc->channels), 0); ++ sf |= sf_channels(cc->channels); ++ ++ av_opt_set_int(swr, "in_channel_layout", ++ av_get_default_channel_layout(cc->channels), 0); ++ av_opt_set_int(swr, "out_channel_layout", ++ av_get_default_channel_layout(cc->channels), 0); + #endif +- av_opt_set_int(swr, "in_sample_rate", cc->sample_rate, 0); +- av_opt_set_int(swr, "out_sample_rate", out_sample_rate, 0); +- av_opt_set_sample_fmt(swr, "in_sample_fmt", cc->sample_fmt, 0); +- priv->swr = swr; + +- ip_data->private = priv; ++ *sf_out = sf; ++} ++ ++static int ffmpeg_init_swr_frame(struct ffmpeg_private *priv, ++ sample_format_t sf, enum AVSampleFormat out_sample_fmt) ++{ ++ AVCodecContext *cc = priv->codec_ctx; ++ AVFrame *frame = av_frame_alloc(); ++ + #if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(59, 24, 100) +- ip_data->sf = sf_rate(out_sample_rate) | sf_channels(cc->ch_layout.nb_channels); ++ av_channel_layout_copy(&frame->ch_layout, &cc->ch_layout); + #else +- ip_data->sf = sf_rate(out_sample_rate) | sf_channels(cc->channels); ++ frame->channel_layout = av_get_default_channel_layout(cc->channels); + #endif +- switch (cc->sample_fmt) { +- case AV_SAMPLE_FMT_U8: +- ip_data->sf |= sf_bits(8) | sf_signed(0); +- av_opt_set_sample_fmt(swr, "out_sample_fmt", AV_SAMPLE_FMT_U8, 0); +- break; +- case AV_SAMPLE_FMT_S32: +- ip_data->sf |= sf_bits(32) | sf_signed(1); +- av_opt_set_sample_fmt(swr, "out_sample_fmt", AV_SAMPLE_FMT_S32, 0); +- break; +- /* AV_SAMPLE_FMT_S16 */ +- default: +- ip_data->sf |= sf_bits(16) | sf_signed(1); +- av_opt_set_sample_fmt(swr, "out_sample_fmt", AV_SAMPLE_FMT_S16, 0); +- break; ++ ++ frame->sample_rate = sf_get_rate(sf); ++ frame->format = out_sample_fmt; ++ ++ /* NOTE: 10 sec is probably too much, but the amount of space ++ * needed for swr_convert() is unpredictable */ ++ frame->nb_samples = 10 * sf_get_rate(sf); ++ int res = av_frame_get_buffer(frame, 0); ++ if (res < 0) { ++ d_print("av_frame_get_buffer(): %s\n", ffmpeg_errmsg(res)); ++ return -IP_ERROR_INTERNAL; + } +- swr_init(swr); +- ip_data->sf |= sf_host_endian(); ++ frame->nb_samples = 0; ++ ++ priv->swr_frame = frame; ++ return 0; ++} ++ ++static void ffmpeg_free(struct ffmpeg_private *priv) ++{ ++ avcodec_close(priv->codec_ctx); ++ avcodec_free_context(&priv->codec_ctx); ++ avformat_close_input(&priv->format_ctx); ++ ++ swr_free(&priv->swr); ++ ++ av_frame_free(&priv->frame); ++ av_packet_free(&priv->pkt); ++ av_frame_free(&priv->swr_frame); ++} ++ ++static int ffmpeg_open(struct input_plugin_data *ip_data) ++{ ++ struct ffmpeg_private priv; ++ enum AVSampleFormat out_sample_fmt; ++ memset(&priv, 0, sizeof(struct ffmpeg_private)); ++ ++ ffmpeg_init(); ++ ++ int err = ffmpeg_open_input(ip_data, &priv); ++ if (err < 0) ++ return err; ++ ++ priv.pkt = av_packet_alloc(); ++ priv.frame = av_frame_alloc(); ++ priv.seek_ts = -1; ++ priv.prev_frame_end = -1; ++ ++ priv.swr = swr_alloc(); ++ ffmpeg_set_sf_and_swr_opts(priv.swr, priv.codec_ctx, ++ &ip_data->sf, &out_sample_fmt); ++ swr_init(priv.swr); ++ ++ err = ffmpeg_init_swr_frame(&priv, ip_data->sf, out_sample_fmt); ++ if (err < 0) { ++ ffmpeg_free(&priv); ++ return err; ++ } ++ + #if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(59, 24, 100) +- channel_map_init_waveex(cc->ch_layout.nb_channels, +- cc->ch_layout.u.mask, ip_data->channel_map); ++ channel_map_init_waveex(priv.codec_ctx->ch_layout.nb_channels, ++ priv.codec_ctx->ch_layout.u.mask, ip_data->channel_map); + #else +- channel_map_init_waveex(cc->channels, +- cc->channel_layout, ip_data->channel_map); ++ channel_map_init_waveex(priv.codec_ctx->channels, ++ priv.codec_ctx->channel_layout, ip_data->channel_map); + #endif ++ ++ ip_data->private = xnew(struct ffmpeg_private, 1); ++ memcpy(ip_data->private, &priv, sizeof(struct ffmpeg_private)); + return 0; + } + + static int ffmpeg_close(struct input_plugin_data *ip_data) + { +- struct ffmpeg_private *priv = ip_data->private; +- +- avcodec_close(priv->codec_context); +- avcodec_free_context(&priv->codec_context); +- avformat_close_input(&priv->input_context); +- swr_free(&priv->swr); +- ffmpeg_input_free(priv->input); +- ffmpeg_output_free(priv->output); +- free(priv); ++ ffmpeg_free(ip_data->private); ++ free(ip_data->private); + ip_data->private = NULL; + return 0; + } + + /* +- * This returns the number of bytes added to the buffer. +- * It returns < 0 on error. 0 on EOF. ++ * return: ++ * 0 - retry ++ * >0 - ok + */ +-static int ffmpeg_fill_buffer(struct input_plugin_data *ip_data, +- AVFormatContext *ic, AVCodecContext *cc, +- struct ffmpeg_input *input, struct ffmpeg_output *output, +- SwrContext *swr) ++static int ffmpeg_seek_into_frame(struct ffmpeg_private *priv, int64_t frame_ts) + { +- AVFrame *frame = av_frame_alloc(); +- while (1) { +- if (input->curr_pkt_size <= 0) { +- av_packet_unref(&input->pkt); +- if (av_read_frame(ic, &input->pkt) < 0) { +- /* Force EOF once we can read no longer. */ +- av_frame_free(&frame); +- return 0; +- } +- +- if (input->pkt.stream_index != input->stream_index) +- continue; +- input->curr_pkt_size = input->pkt.size; +- input->curr_size += input->pkt.size; +- input->curr_duration += input->pkt.duration; +- +- int send_result = avcodec_send_packet(cc, &input->pkt); +- if (send_result != 0 && send_result != AVERROR(EAGAIN)) { +- d_print("avcodec_send_packet() returned %d\n", send_result); +- char errstr[AV_ERROR_MAX_STRING_SIZE]; +- if (!av_strerror(send_result, errstr, AV_ERROR_MAX_STRING_SIZE )) +- { +- d_print("av_strerror(): %s\n", errstr); +- } else { +- d_print("av_strerror(): Description for error cannot be found\n"); +- } +- return -IP_ERROR_INTERNAL; +- } +- } ++ if (frame_ts >= 0) { ++ AVStream *s = priv->format_ctx->streams[priv->stream_index]; ++ frame_ts = av_rescale_q(frame_ts, s->time_base, AV_TIME_BASE_Q); ++ } else { ++ frame_ts = priv->prev_frame_end; ++ } + +- int recv_result = avcodec_receive_frame(cc, frame); +- if (recv_result < 0) { +- input->curr_pkt_size = 0; +- continue; +- } ++ if (frame_ts >= priv->seek_ts) ++ return 1; + +- int64_t frame_ts = -1; +- if (frame->pts) +- frame_ts = frame->pts; +- else if (frame->pkt_dts) +- frame_ts = frame->pkt_dts; +- +- const uint8_t **in = (const uint8_t **)frame->extended_data; +- int in_count = frame->nb_samples; +- if (input->seek_ts > 0 && (frame_ts >= 0 || input->prev_frame_end >= 0)) { +- struct ffmpeg_private *priv = ip_data->private; +- AVStream *st = priv->input_context->streams[priv->input->stream_index]; +- if (frame_ts >= 0) +- frame_ts = av_rescale_q(frame_ts, st->time_base, AV_TIME_BASE_Q); +- else +- frame_ts = input->prev_frame_end; +- +- if (frame_ts < input->seek_ts) { +- int64_t frame_dur = av_rescale(frame->nb_samples, AV_TIME_BASE, frame->sample_rate); +- int64_t frame_end = frame_ts + frame_dur; +- input->prev_frame_end = frame_end; +- d_print("seek_ts: %ld, frame_ts: %ld, frame_end: %ld\n", input->seek_ts, frame_ts, frame_end); +- if (frame_end <= input->seek_ts) +- continue; +- +- /* skip part of this frame */ +- int64_t skip_samples = av_rescale(input->seek_ts - frame_ts, frame->sample_rate, AV_TIME_BASE); +- in_count -= skip_samples; +- if (av_sample_fmt_is_planar(frame->format)) { +- for (int i = 0; i < sf_get_channels(ip_data->sf); i++) { +- in[i] += skip_samples * sf_get_sample_size(ip_data->sf); +- } +- } else { +- *in += skip_samples * sf_get_frame_size(ip_data->sf); +- } +- d_print("skipping %ld samples\n", skip_samples); +- } +- +- input->seek_ts = -1; +- input->prev_frame_end = -1; +- } ++ int64_t frame_dur = av_rescale(priv->frame->nb_samples, ++ AV_TIME_BASE, priv->frame->sample_rate); ++ int64_t frame_end = frame_ts + frame_dur; ++ priv->prev_frame_end = frame_end; ++ ++ d_print("seek_ts: %ld, frame_ts: %ld, frame_end: %ld\n", ++ priv->seek_ts, frame_ts, frame_end); ++ ++ if (frame_end <= priv->seek_ts) ++ return 0; ++ ++ int64_t skip_samples = av_rescale(priv->seek_ts - frame_ts, ++ priv->frame->sample_rate, AV_TIME_BASE); ++ priv->frame->nb_samples -= skip_samples; ++ ++ int bps = av_get_bytes_per_sample(priv->frame->format); ++#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(59, 24, 100) ++ int channels = priv->codec_ctx->ch_layout.nb_channels; ++#else ++ int channels = priv->codec_ctx->channels; ++#endif ++ ++ /* Just modify frame's data pointer because it's throw-away */ ++ if (av_sample_fmt_is_planar(priv->frame->format)) { ++ for (int i = 0; i < channels; i++) ++ priv->frame->extended_data[i] += skip_samples * bps; ++ } else { ++ priv->frame->extended_data[0] += skip_samples * channels * bps; ++ } ++ d_print("skipping %ld samples\n", skip_samples); ++ return 1; ++} + +- int res = swr_convert(swr, +- &output->buffer, +- frame->nb_samples, +- in, +- in_count); ++/* ++ * return: ++ * <0 - error ++ * 0 - retry ++ * >0 - ok ++ */ ++static int ffmpeg_get_frame(struct ffmpeg_private *priv) ++{ ++ int res = avcodec_receive_frame(priv->codec_ctx, priv->frame); ++ if (res == AVERROR(EAGAIN)) { ++ av_packet_unref(priv->pkt); ++ res = av_read_frame(priv->format_ctx, priv->pkt); + if (res < 0) +- res = 0; ++ return res; ++ ++ if (priv->pkt->stream_index != priv->stream_index) ++ return 0; + +- output->buffer_pos = output->buffer; +- output->buffer_used_len = res * sf_get_frame_size(ip_data->sf); ++ priv->curr_size += priv->pkt->size; ++ priv->curr_duration += priv->pkt->duration; + +- av_frame_free(&frame); +- return output->buffer_used_len; ++ res = avcodec_send_packet(priv->codec_ctx, priv->pkt); ++ if (res == AVERROR(EAGAIN)) ++ return 0; + } +- /* This should never get here. */ +- return -IP_ERROR_INTERNAL; ++ if (res < 0) ++ return res; ++ ++ int64_t frame_ts = -1; ++ if (priv->frame->pts >= 0) ++ frame_ts = priv->frame->pts; ++ else if (priv->frame->pkt_dts >= 0) ++ frame_ts = priv->frame->pkt_dts; ++ ++ if (priv->seek_ts > 0 && (frame_ts >= 0 || priv->prev_frame_end >= 0)) { ++ if (ffmpeg_seek_into_frame(priv, frame_ts) == 0) ++ return 0; ++ priv->seek_ts = -1; ++ priv->prev_frame_end = -1; ++ } ++ return 1; ++} ++ ++static int ffmpeg_convert_frame(struct ffmpeg_private *priv) ++{ ++ int res = swr_convert(priv->swr, ++ priv->swr_frame->extended_data, ++ /* TODO: proper buffer capacity */ ++ priv->frame->nb_samples, ++ (const uint8_t **)priv->frame->extended_data, ++ priv->frame->nb_samples); ++ if (res >= 0) { ++ priv->swr_frame->nb_samples = res; ++ priv->swr_frame_start = 0; ++ } ++ return res; + } + + static int ffmpeg_read(struct input_plugin_data *ip_data, char *buffer, int count) + { + struct ffmpeg_private *priv = ip_data->private; +- struct ffmpeg_output *output = priv->output; +- int rc; +- int out_size; +- +- if (output->buffer_used_len == 0) { +- rc = ffmpeg_fill_buffer(ip_data, +- priv->input_context, priv->codec_context, +- priv->input, priv->output, priv->swr); +- if (rc <= 0) +- return rc; ++ int written = 0; ++ int res; ++ ++ count /= sf_get_frame_size(ip_data->sf); ++ ++ while (count) { ++ if (priv->swr_frame->nb_samples == 0) { ++ res = ffmpeg_get_frame(priv); ++ if (res == AVERROR_EOF) ++ break; ++ else if (res == 0) ++ continue; ++ else if (res < 0) ++ goto err; ++ ++ res = ffmpeg_convert_frame(priv); ++ if (res < 0) ++ goto err; ++ } ++ ++ int copy_frames = min_i(count, priv->swr_frame->nb_samples); ++ int copy_bytes = copy_frames * sf_get_frame_size(ip_data->sf); ++ void *dst = priv->swr_frame->extended_data[0] + priv->swr_frame_start; ++ memcpy(buffer + written, dst, copy_bytes); ++ ++ priv->swr_frame->nb_samples -= copy_frames; ++ priv->swr_frame_start += copy_bytes; ++ count -= copy_frames; ++ written += copy_bytes; + } +- out_size = min_i(output->buffer_used_len, count); +- memcpy(buffer, output->buffer_pos, out_size); +- output->buffer_used_len -= out_size; +- output->buffer_pos += out_size; +- return out_size; ++ return written; ++err: ++ d_print("%s\n", ffmpeg_errmsg(res)); ++ return -IP_ERROR_INTERNAL; + } + + static int ffmpeg_seek(struct input_plugin_data *ip_data, double offset) + { + struct ffmpeg_private *priv = ip_data->private; +- AVStream *st = priv->input_context->streams[priv->input->stream_index]; +- int ret; ++ AVStream *st = priv->format_ctx->streams[priv->stream_index]; + +- priv->input->seek_ts = offset * AV_TIME_BASE; +- priv->input->prev_frame_end = -1; ++ priv->seek_ts = offset * AV_TIME_BASE; ++ priv->prev_frame_end = -1; + int64_t ts = av_rescale(offset, st->time_base.den, st->time_base.num); + +- avcodec_flush_buffers(priv->codec_context); +- /* TODO: also flush swresample buffers */ +- /* Force reading a new packet in next ffmpeg_fill_buffer(). */ +- priv->input->curr_pkt_size = 0; +- +- ret = avformat_seek_file(priv->input_context, +- priv->input->stream_index, 0, ts, ts, 0); +- +- if (ret < 0) { ++ int ret = avformat_seek_file(priv->format_ctx, ++ priv->stream_index, 0, ts, ts, 0); ++ if (ret < 0) + return -IP_ERROR_FUNCTION_NOT_SUPPORTED; +- } else { +- ffmpeg_buffer_flush(priv->output); +- return 0; +- } ++ ++ priv->swr_frame->nb_samples = 0; ++ avcodec_flush_buffers(priv->codec_ctx); ++ /* also flush swresample buffers? */ ++ return 0; + } + + static void ffmpeg_read_metadata(struct growing_keyvals *c, AVDictionary *metadata) +@@ -445,7 +462,7 @@ static int ffmpeg_read_comments(struct input_plugin_data *ip_data, + struct keyval **comments) + { + struct ffmpeg_private *priv = ip_data->private; +- AVFormatContext *ic = priv->input_context; ++ AVFormatContext *ic = priv->format_ctx; + + GROWING_KEYVALS(c); + +@@ -463,29 +480,29 @@ static int ffmpeg_read_comments(struct input_plugin_data *ip_data, + static int ffmpeg_duration(struct input_plugin_data *ip_data) + { + struct ffmpeg_private *priv = ip_data->private; +- return priv->input_context->duration / AV_TIME_BASE; ++ return priv->format_ctx->duration / AV_TIME_BASE; + } + + static long ffmpeg_bitrate(struct input_plugin_data *ip_data) + { + struct ffmpeg_private *priv = ip_data->private; +- long bitrate = priv->input_context->bit_rate; ++ long bitrate = priv->format_ctx->bit_rate; + return bitrate ? bitrate : -IP_ERROR_FUNCTION_NOT_SUPPORTED; + } + + static long ffmpeg_current_bitrate(struct input_plugin_data *ip_data) + { + struct ffmpeg_private *priv = ip_data->private; +- AVStream *st = priv->input_context->streams[priv->input->stream_index]; ++ AVStream *st = priv->format_ctx->streams[priv->stream_index]; + long bitrate = -1; + /* ape codec returns silly numbers */ + if (priv->codec->id == AV_CODEC_ID_APE) + return -1; +- if (priv->input->curr_duration > 0) { +- double seconds = priv->input->curr_duration * av_q2d(st->time_base); +- bitrate = (8 * priv->input->curr_size) / seconds; +- priv->input->curr_size = 0; +- priv->input->curr_duration = 0; ++ if (priv->curr_duration > 0) { ++ double seconds = priv->curr_duration * av_q2d(st->time_base); ++ bitrate = (8 * priv->curr_size) / seconds; ++ priv->curr_size = 0; ++ priv->curr_duration = 0; + } + return bitrate; + } +@@ -500,7 +517,7 @@ static char *ffmpeg_codec_profile(struct input_plugin_data *ip_data) + { + struct ffmpeg_private *priv = ip_data->private; + const char *profile; +- profile = av_get_profile_name(priv->codec, priv->codec_context->profile); ++ profile = av_get_profile_name(priv->codec, priv->codec_ctx->profile); + return profile ? xstrdup(profile) : NULL; + } + + +From 59dca8686f52a4d4909c815d2af713539ad6fdc2 Mon Sep 17 00:00:00 2001 +From: ihy123 <aladinandreyy@gmail.com> +Date: Sun, 17 Aug 2025 14:28:46 +0300 +Subject: [PATCH 05/12] Validate sample format in ip_open() + +To prevent segfault in ip_setup() because channels=0, validate ip_data->sf +after opening ip. +--- + input.c | 10 ++++++++++ + 1 file changed, 10 insertions(+) + +diff --git input.c input.c +index c20cb3f6a..f5c5b3c24 100644 +--- input.c ++++ input.c +@@ -605,6 +605,16 @@ int ip_open(struct input_plugin *ip) + ip_reset(ip, 1); + return rc; + } ++ ++ unsigned bits = sf_get_bits(ip->data.sf); ++ unsigned channels = sf_get_channels(ip->data.sf); ++ unsigned rate = sf_get_rate(ip->data.sf); ++ if (!bits || !channels || !rate) { ++ d_print("corrupt file: bits = %u, channels = %u, rate = %u\n", ++ bits, channels, rate); ++ return -IP_ERROR_FILE_FORMAT; ++ } ++ + ip->open = 1; + return 0; + } + +From dcc3e425275a1c2e3e2a669b13374bb9b1a67e0d Mon Sep 17 00:00:00 2001 +From: ihy123 <aladinandreyy@gmail.com> +Date: Sun, 17 Aug 2025 14:53:52 +0300 +Subject: [PATCH 06/12] ip/ffmpeg: flush swresample buffer when seeking + +--- + ip/ffmpeg.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git ip/ffmpeg.c ip/ffmpeg.c +index 42f630ee7..775e7de1d 100644 +--- ip/ffmpeg.c ++++ ip/ffmpeg.c +@@ -444,7 +444,7 @@ static int ffmpeg_seek(struct input_plugin_data *ip_data, double offset) + + priv->swr_frame->nb_samples = 0; + avcodec_flush_buffers(priv->codec_ctx); +- /* also flush swresample buffers? */ ++ swr_convert(priv->swr, NULL, 0, NULL, 0); /* flush swr buffer */ + return 0; + } + + +From 99a4e2f67857205e1e1cb4fb7a095819b298c0bc Mon Sep 17 00:00:00 2001 +From: ihy123 <aladinandreyy@gmail.com> +Date: Sun, 17 Aug 2025 15:02:34 +0300 +Subject: [PATCH 07/12] ip/ffmpeg: remember swr_frame's capacity + +--- + ip/ffmpeg.c | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git ip/ffmpeg.c ip/ffmpeg.c +index 775e7de1d..c659c1330 100644 +--- ip/ffmpeg.c ++++ ip/ffmpeg.c +@@ -49,6 +49,7 @@ struct ffmpeg_private { + + /* A buffer to hold swr_convert()-ed samples */ + AVFrame *swr_frame; ++ int swr_frame_samples_cap; + int swr_frame_start; + + /* Bitrate estimation */ +@@ -213,6 +214,7 @@ static int ffmpeg_init_swr_frame(struct ffmpeg_private *priv, + d_print("av_frame_get_buffer(): %s\n", ffmpeg_errmsg(res)); + return -IP_ERROR_INTERNAL; + } ++ priv->swr_frame_samples_cap = frame->nb_samples; + frame->nb_samples = 0; + + priv->swr_frame = frame; +@@ -378,8 +380,7 @@ static int ffmpeg_convert_frame(struct ffmpeg_private *priv) + { + int res = swr_convert(priv->swr, + priv->swr_frame->extended_data, +- /* TODO: proper buffer capacity */ +- priv->frame->nb_samples, ++ priv->swr_frame_samples_cap, + (const uint8_t **)priv->frame->extended_data, + priv->frame->nb_samples); + if (res >= 0) { + +From fabf6bcf4fd3f24dafedeefd7e9daf4215c7066a Mon Sep 17 00:00:00 2001 +From: ihy123 <aladinandreyy@gmail.com> +Date: Sun, 17 Aug 2025 15:54:19 +0300 +Subject: [PATCH 08/12] ip/ffmpeg: reset swr_frame_start when seeking + +--- + ip/ffmpeg.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git ip/ffmpeg.c ip/ffmpeg.c +index c659c1330..71cc51116 100644 +--- ip/ffmpeg.c ++++ ip/ffmpeg.c +@@ -444,6 +444,7 @@ static int ffmpeg_seek(struct input_plugin_data *ip_data, double offset) + return -IP_ERROR_FUNCTION_NOT_SUPPORTED; + + priv->swr_frame->nb_samples = 0; ++ priv->swr_frame_start = 0; + avcodec_flush_buffers(priv->codec_ctx); + swr_convert(priv->swr, NULL, 0, NULL, 0); /* flush swr buffer */ + return 0; + +From 265b893d78891362386fd406af308c5be73c36c2 Mon Sep 17 00:00:00 2001 +From: ihy123 <aladinandreyy@gmail.com> +Date: Sun, 17 Aug 2025 17:27:20 +0300 +Subject: [PATCH 09/12] ip/ffmpeg: better frame skipping logic + +--- + ip/ffmpeg.c | 82 ++++++++++++++++++++++++++--------------------------- + 1 file changed, 41 insertions(+), 41 deletions(-) + +diff --git ip/ffmpeg.c ip/ffmpeg.c +index 71cc51116..af6ecfb8d 100644 +--- ip/ffmpeg.c ++++ ip/ffmpeg.c +@@ -44,8 +44,8 @@ struct ffmpeg_private { + + AVPacket *pkt; + AVFrame *frame; +- int64_t seek_ts; +- int64_t prev_frame_end; ++ double seek_ts; ++ int64_t skip_samples; + + /* A buffer to hold swr_convert()-ed samples */ + AVFrame *swr_frame; +@@ -249,7 +249,6 @@ static int ffmpeg_open(struct input_plugin_data *ip_data) + priv.pkt = av_packet_alloc(); + priv.frame = av_frame_alloc(); + priv.seek_ts = -1; +- priv.prev_frame_end = -1; + + priv.swr = swr_alloc(); + ffmpeg_set_sf_and_swr_opts(priv.swr, priv.codec_ctx, +@@ -283,37 +282,37 @@ static int ffmpeg_close(struct input_plugin_data *ip_data) + return 0; + } + +-/* +- * return: +- * 0 - retry +- * >0 - ok +- */ +-static int ffmpeg_seek_into_frame(struct ffmpeg_private *priv, int64_t frame_ts) ++static int64_t ffmpeg_calc_skip_samples(struct ffmpeg_private *priv) + { +- if (frame_ts >= 0) { +- AVStream *s = priv->format_ctx->streams[priv->stream_index]; +- frame_ts = av_rescale_q(frame_ts, s->time_base, AV_TIME_BASE_Q); ++ int64_t ts; ++ if (priv->frame->pts >= 0) { ++ ts = priv->frame->pts; ++ } else if (priv->frame->pkt_dts >= 0) { ++ ts = priv->frame->pkt_dts; + } else { +- frame_ts = priv->prev_frame_end; ++ d_print("AVFrame.pts and AVFrame.pkt_dts are unset\n"); ++ return -1; + } + +- if (frame_ts >= priv->seek_ts) +- return 1; +- +- int64_t frame_dur = av_rescale(priv->frame->nb_samples, +- AV_TIME_BASE, priv->frame->sample_rate); +- int64_t frame_end = frame_ts + frame_dur; +- priv->prev_frame_end = frame_end; ++ AVStream *s = priv->format_ctx->streams[priv->stream_index]; ++ double frame_ts = ts * av_q2d(s->time_base); + +- d_print("seek_ts: %ld, frame_ts: %ld, frame_end: %ld\n", +- priv->seek_ts, frame_ts, frame_end); ++ d_print("seek_ts: %.6fs, frame_ts: %.6fs\n", priv->seek_ts, frame_ts); + +- if (frame_end <= priv->seek_ts) ++ if (frame_ts >= priv->seek_ts) + return 0; ++ return (priv->seek_ts - frame_ts) * priv->frame->sample_rate; ++} + +- int64_t skip_samples = av_rescale(priv->seek_ts - frame_ts, +- priv->frame->sample_rate, AV_TIME_BASE); +- priv->frame->nb_samples -= skip_samples; ++static void ffmpeg_skip_frame_part(struct ffmpeg_private *priv) ++{ ++ if (priv->skip_samples >= priv->frame->nb_samples) { ++ d_print("skipping frame: %d samples\n", ++ priv->frame->nb_samples); ++ priv->skip_samples -= priv->frame->nb_samples; ++ priv->frame->nb_samples = 0; ++ return; ++ } + + int bps = av_get_bytes_per_sample(priv->frame->format); + #if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(59, 24, 100) +@@ -322,15 +321,17 @@ static int ffmpeg_seek_into_frame(struct ffmpeg_private *priv, int64_t frame_ts) + int channels = priv->codec_ctx->channels; + #endif + ++ priv->frame->nb_samples -= priv->skip_samples; ++ + /* Just modify frame's data pointer because it's throw-away */ + if (av_sample_fmt_is_planar(priv->frame->format)) { + for (int i = 0; i < channels; i++) +- priv->frame->extended_data[i] += skip_samples * bps; ++ priv->frame->extended_data[i] += priv->skip_samples * bps; + } else { +- priv->frame->extended_data[0] += skip_samples * channels * bps; ++ priv->frame->extended_data[0] += priv->skip_samples * channels * bps; + } +- d_print("skipping %ld samples\n", skip_samples); +- return 1; ++ d_print("skipping %ld samples\n", priv->skip_samples); ++ priv->skip_samples = 0; + } + + /* +@@ -361,17 +362,16 @@ static int ffmpeg_get_frame(struct ffmpeg_private *priv) + if (res < 0) + return res; + +- int64_t frame_ts = -1; +- if (priv->frame->pts >= 0) +- frame_ts = priv->frame->pts; +- else if (priv->frame->pkt_dts >= 0) +- frame_ts = priv->frame->pkt_dts; ++ if (priv->seek_ts > 0) { ++ priv->skip_samples = ffmpeg_calc_skip_samples(priv); ++ if (priv->skip_samples >= 0) ++ priv->seek_ts = -1; ++ } + +- if (priv->seek_ts > 0 && (frame_ts >= 0 || priv->prev_frame_end >= 0)) { +- if (ffmpeg_seek_into_frame(priv, frame_ts) == 0) ++ if (priv->skip_samples > 0) { ++ ffmpeg_skip_frame_part(priv); ++ if (priv->frame->nb_samples == 0) + return 0; +- priv->seek_ts = -1; +- priv->prev_frame_end = -1; + } + return 1; + } +@@ -434,8 +434,8 @@ static int ffmpeg_seek(struct input_plugin_data *ip_data, double offset) + struct ffmpeg_private *priv = ip_data->private; + AVStream *st = priv->format_ctx->streams[priv->stream_index]; + +- priv->seek_ts = offset * AV_TIME_BASE; +- priv->prev_frame_end = -1; ++ priv->seek_ts = offset; ++ priv->skip_samples = 0; + int64_t ts = av_rescale(offset, st->time_base.den, st->time_base.num); + + int ret = avformat_seek_file(priv->format_ctx, + +From d2c07d224c879de9a707d999423b8f814a23f765 Mon Sep 17 00:00:00 2001 +From: ihy123 <aladinandreyy@gmail.com> +Date: Sun, 17 Aug 2025 19:22:50 +0300 +Subject: [PATCH 10/12] ip/ffmpeg: don't process empty frames + +--- + ip/ffmpeg.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git ip/ffmpeg.c ip/ffmpeg.c +index af6ecfb8d..dd9061aba 100644 +--- ip/ffmpeg.c ++++ ip/ffmpeg.c +@@ -356,7 +356,7 @@ static int ffmpeg_get_frame(struct ffmpeg_private *priv) + priv->curr_duration += priv->pkt->duration; + + res = avcodec_send_packet(priv->codec_ctx, priv->pkt); +- if (res == AVERROR(EAGAIN)) ++ if (res == 0 || res == AVERROR(EAGAIN)) + return 0; + } + if (res < 0) + +From 2ded02613f79bc228d0bb1569e52dba14c358f23 Mon Sep 17 00:00:00 2001 +From: ihy123 <aladinandreyy@gmail.com> +Date: Mon, 18 Aug 2025 03:32:22 +0300 +Subject: [PATCH 11/12] ip/ffmpeg: improve readability + +Previously ffmpeg_read()'s while loop was kinda leaking into +ffmpeg_get_frame(), now it doesn't. +--- + ip/ffmpeg.c | 36 ++++++++++++++++++++---------------- + 1 file changed, 20 insertions(+), 16 deletions(-) + +diff --git ip/ffmpeg.c ip/ffmpeg.c +index dd9061aba..fc748951f 100644 +--- ip/ffmpeg.c ++++ ip/ffmpeg.c +@@ -337,30 +337,32 @@ static void ffmpeg_skip_frame_part(struct ffmpeg_private *priv) + /* + * return: + * <0 - error +- * 0 - retry ++ * 0 - eof + * >0 - ok + */ + static int ffmpeg_get_frame(struct ffmpeg_private *priv) + { +- int res = avcodec_receive_frame(priv->codec_ctx, priv->frame); ++ int res; ++retry: ++ res = avcodec_receive_frame(priv->codec_ctx, priv->frame); + if (res == AVERROR(EAGAIN)) { + av_packet_unref(priv->pkt); + res = av_read_frame(priv->format_ctx, priv->pkt); + if (res < 0) +- return res; ++ goto err; + + if (priv->pkt->stream_index != priv->stream_index) +- return 0; ++ goto retry; + + priv->curr_size += priv->pkt->size; + priv->curr_duration += priv->pkt->duration; + + res = avcodec_send_packet(priv->codec_ctx, priv->pkt); + if (res == 0 || res == AVERROR(EAGAIN)) +- return 0; ++ goto retry; + } + if (res < 0) +- return res; ++ goto err; + + if (priv->seek_ts > 0) { + priv->skip_samples = ffmpeg_calc_skip_samples(priv); +@@ -371,9 +373,14 @@ static int ffmpeg_get_frame(struct ffmpeg_private *priv) + if (priv->skip_samples > 0) { + ffmpeg_skip_frame_part(priv); + if (priv->frame->nb_samples == 0) +- return 0; ++ goto retry; + } + return 1; ++err: ++ if (res == AVERROR_EOF) ++ return 0; ++ d_print("%s\n", ffmpeg_errmsg(res)); ++ return -IP_ERROR_INTERNAL; + } + + static int ffmpeg_convert_frame(struct ffmpeg_private *priv) +@@ -386,8 +393,10 @@ static int ffmpeg_convert_frame(struct ffmpeg_private *priv) + if (res >= 0) { + priv->swr_frame->nb_samples = res; + priv->swr_frame_start = 0; ++ return res; + } +- return res; ++ d_print("%s\n", ffmpeg_errmsg(res)); ++ return -IP_ERROR_INTERNAL; + } + + static int ffmpeg_read(struct input_plugin_data *ip_data, char *buffer, int count) +@@ -401,16 +410,14 @@ static int ffmpeg_read(struct input_plugin_data *ip_data, char *buffer, int coun + while (count) { + if (priv->swr_frame->nb_samples == 0) { + res = ffmpeg_get_frame(priv); +- if (res == AVERROR_EOF) ++ if (res == 0) + break; +- else if (res == 0) +- continue; + else if (res < 0) +- goto err; ++ return res; + + res = ffmpeg_convert_frame(priv); + if (res < 0) +- goto err; ++ return res; + } + + int copy_frames = min_i(count, priv->swr_frame->nb_samples); +@@ -424,9 +431,6 @@ static int ffmpeg_read(struct input_plugin_data *ip_data, char *buffer, int coun + written += copy_bytes; + } + return written; +-err: +- d_print("%s\n", ffmpeg_errmsg(res)); +- return -IP_ERROR_INTERNAL; + } + + static int ffmpeg_seek(struct input_plugin_data *ip_data, double offset) + +From c541b39903aa57612501ee65770ef30d0954d22e Mon Sep 17 00:00:00 2001 +From: ihy123 <aladinandreyy@gmail.com> +Date: Sun, 24 Aug 2025 19:16:57 +0300 +Subject: [PATCH 12/12] ip/ffmpeg: fix building for ffmpeg 8.0 + +avcodec_close() can be safely removed because avcodec_free_context() +is its replacement since 2016. See ffmpeg commit 2ef6dab0a79 + +Builds with v3.3.9 v4.0.6 v6.1.3 v7.1.1 v8.0 +--- + ip/ffmpeg.c | 1 - + 1 file changed, 1 deletion(-) + +diff --git ip/ffmpeg.c ip/ffmpeg.c +index fc748951f..2cb07671c 100644 +--- ip/ffmpeg.c ++++ ip/ffmpeg.c +@@ -223,7 +223,6 @@ static int ffmpeg_init_swr_frame(struct ffmpeg_private *priv, + + static void ffmpeg_free(struct ffmpeg_private *priv) + { +- avcodec_close(priv->codec_ctx); + avcodec_free_context(&priv->codec_ctx); + avformat_close_input(&priv->format_ctx); + diff --git a/audio/cyanrip/Makefile b/audio/cyanrip/Makefile index 8455bca2b960..6e1e8278ea49 100644 --- a/audio/cyanrip/Makefile +++ b/audio/cyanrip/Makefile @@ -1,11 +1,17 @@ PORTNAME= cyanrip DISTVERSIONPREFIX= v DISTVERSION= 0.9.3.1 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= audio MASTER_SITES= https://github.com/cyanreg/${PORTNAME}/releases/download/${DISTVERSIONFULL}/ DISTNAME= ${PORTNAME}-src-${DISTVERSIONFULL} +PATCH_SITES= https://github.com/cyanreg/cyanrip/commit/ +PATCHFILES= 70c0a4c04d5ce74135719cf8afc1309b29679395.patch:-p1 \ + 8cae5f548a606bfd723fbcfccabcd5da189063cb.patch:-p1 \ + 462a71c75b4d326c0ce787cd13f7048e7f5da630.patch:-p1 \ + 7f74e52f278fd9d8474b1afb5979b9ecd525285e.patch:-p1 + MAINTAINER= diizzy@FreeBSD.org COMMENT= Audio CD ripper with command-line interface and focus on accuracy WWW= https://github.com/cyanreg/cyanrip diff --git a/audio/cyanrip/distinfo b/audio/cyanrip/distinfo index aa98146fb3b7..4702781816f4 100644 --- a/audio/cyanrip/distinfo +++ b/audio/cyanrip/distinfo @@ -1,3 +1,11 @@ -TIMESTAMP = 1717656733 +TIMESTAMP = 1755935295 SHA256 (cyanrip-src-v0.9.3.1.tar.gz) = fa7bc916ff91a17992b1695fa40dcb17eeeb840cd65c0cf26c1f1ddbc11f42eb SIZE (cyanrip-src-v0.9.3.1.tar.gz) = 66339 +SHA256 (70c0a4c04d5ce74135719cf8afc1309b29679395.patch) = 427a068b6ff44f844eda78136a131259261ce23630b5bf770f7d08051339c729 +SIZE (70c0a4c04d5ce74135719cf8afc1309b29679395.patch) = 2072 +SHA256 (8cae5f548a606bfd723fbcfccabcd5da189063cb.patch) = e6045c6fd3d0b09cd26b21655276dfe81bf5ed4bff8ef965174f101fd25f2fc6 +SIZE (8cae5f548a606bfd723fbcfccabcd5da189063cb.patch) = 3486 +SHA256 (462a71c75b4d326c0ce787cd13f7048e7f5da630.patch) = ad973febf87284d24a4b3d51b4592be86384b7b79fc090c34b0827a126daf000 +SIZE (462a71c75b4d326c0ce787cd13f7048e7f5da630.patch) = 3206 +SHA256 (7f74e52f278fd9d8474b1afb5979b9ecd525285e.patch) = 77cae197fa1a3e67485d82961113d36773d619b7a7a69a95afbdb5fed6f3202b +SIZE (7f74e52f278fd9d8474b1afb5979b9ecd525285e.patch) = 3792 diff --git a/audio/ebur128/Makefile b/audio/ebur128/Makefile index 21622f81e589..a530a6d215c2 100644 --- a/audio/ebur128/Makefile +++ b/audio/ebur128/Makefile @@ -1,6 +1,6 @@ PORTNAME= ebur128 DISTVERSION= 0.1.10 -PORTREVISION= 6 +PORTREVISION= 7 CATEGORIES= audio MAINTAINER= diizzy@FreeBSD.org diff --git a/audio/elisa/Makefile b/audio/elisa/Makefile index 95e7d3d33a38..1a2f7a6c7199 100644 --- a/audio/elisa/Makefile +++ b/audio/elisa/Makefile @@ -1,6 +1,5 @@ PORTNAME= elisa DISTVERSION= ${KDE_APPLICATIONS_VERSION} -PORTREVISION= 2 CATEGORIES= audio kde kde-applications MAINTAINER= kde@FreeBSD.org diff --git a/audio/elisa/distinfo b/audio/elisa/distinfo index 3ac9dc561d71..7575480c4688 100644 --- a/audio/elisa/distinfo +++ b/audio/elisa/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1751381200 -SHA256 (KDE/release-service/25.04.3/elisa-25.04.3.tar.xz) = 16e4e38a9e7dcf9b42441c66707d5bbb52aef5c95422d8ee04a4a21e7f157392 -SIZE (KDE/release-service/25.04.3/elisa-25.04.3.tar.xz) = 1488508 +TIMESTAMP = 1754646114 +SHA256 (KDE/release-service/25.08.0/elisa-25.08.0.tar.xz) = 76029c54e927873039c3c282ada787a78f1d0d6dbc8fa9bd2e819aeec5df2d5c +SIZE (KDE/release-service/25.08.0/elisa-25.08.0.tar.xz) = 1498424 diff --git a/audio/emms/Makefile b/audio/emms/Makefile index 4234ba364ff7..e5bb5c634f33 100644 --- a/audio/emms/Makefile +++ b/audio/emms/Makefile @@ -1,5 +1,6 @@ PORTNAME= emms DISTVERSION= 23 +PORTREVISION= 1 CATEGORIES= audio elisp MASTER_SITES= https://elpa.gnu.org/packages/ PKGNAMESUFFIX= ${EMACS_PKGNAMESUFFIX} diff --git a/audio/exhale/Makefile b/audio/exhale/Makefile index 0d551acaff9b..0bafc758eb59 100644 --- a/audio/exhale/Makefile +++ b/audio/exhale/Makefile @@ -1,6 +1,6 @@ PORTNAME= exhale DISTVERSIONPREFIX= v -DISTVERSION= 1.2.1 +DISTVERSION= 1.2.1.2 CATEGORIES= audio MAINTAINER= diizzy@FreeBSD.org diff --git a/audio/exhale/distinfo b/audio/exhale/distinfo index f9d9cf8e95a4..cef759d596fe 100644 --- a/audio/exhale/distinfo +++ b/audio/exhale/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1703620720 -SHA256 (exhale-v1.2.1.tar.bz2) = ab0f6dfab58595640d988bd7b3bb98856f22fb33553e1dd6d003cec9789b12a7 -SIZE (exhale-v1.2.1.tar.bz2) = 118148 +TIMESTAMP = 1754207127 +SHA256 (exhale-v1.2.1.2.tar.bz2) = 24b34545d1413b543e03901c0cc2b24a0a0726975be94689007b363149b1e104 +SIZE (exhale-v1.2.1.2.tar.bz2) = 119834 diff --git a/audio/fluidsynth/Makefile b/audio/fluidsynth/Makefile index 232777d460e3..a7abb6306e4c 100644 --- a/audio/fluidsynth/Makefile +++ b/audio/fluidsynth/Makefile @@ -1,6 +1,6 @@ PORTNAME= fluidsynth DISTVERSIONPREFIX= v -DISTVERSION= 2.4.6 +DISTVERSION= 2.4.7 CATEGORIES= audio MAINTAINER= multimedia@FreeBSD.org diff --git a/audio/fluidsynth/distinfo b/audio/fluidsynth/distinfo index 3454675ddc76..c15cdaebd326 100644 --- a/audio/fluidsynth/distinfo +++ b/audio/fluidsynth/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1747000262 -SHA256 (FluidSynth-fluidsynth-v2.4.6_GH0.tar.gz) = a6be90fd4842b9e7246500597180af5cf213c11bfa3998a3236dd8ff47961ea8 -SIZE (FluidSynth-fluidsynth-v2.4.6_GH0.tar.gz) = 1793331 +TIMESTAMP = 1755464084 +SHA256 (FluidSynth-fluidsynth-v2.4.7_GH0.tar.gz) = 7fb0e328c66a24161049e2b9e27c3b6e51a6904b31b1a647f73cc1f322523e88 +SIZE (FluidSynth-fluidsynth-v2.4.7_GH0.tar.gz) = 1797138 diff --git a/audio/fluidsynth/pkg-plist b/audio/fluidsynth/pkg-plist index 2073f9b3f9ea..86c47ec7991c 100644 --- a/audio/fluidsynth/pkg-plist +++ b/audio/fluidsynth/pkg-plist @@ -23,6 +23,6 @@ lib/cmake/fluidsynth/FluidSynthTargets-%%CMAKE_BUILD_TYPE%%.cmake lib/cmake/fluidsynth/FluidSynthTargets.cmake lib/libfluidsynth.so lib/libfluidsynth.so.3 -lib/libfluidsynth.so.3.3.6 +lib/libfluidsynth.so.3.3.7 libdata/pkgconfig/fluidsynth.pc share/man/man1/fluidsynth.1.gz diff --git a/audio/fooyin/Makefile b/audio/fooyin/Makefile index c050de5ba9ce..32a79d365e4b 100644 --- a/audio/fooyin/Makefile +++ b/audio/fooyin/Makefile @@ -1,11 +1,13 @@ PORTNAME= fooyin DISTVERSIONPREFIX= v -DISTVERSION= 0.8.1 +DISTVERSION= 0.9.1 PORTREVISION= 1 CATEGORIES= audio multimedia PATCH_SITES= https://github.com/fooyin/fooyin/commit/ -PATCHFILES+= e44e08abb33f01fe85cc896170c55dbf732ffcc9.patch:-p1 # Fix build with Qt >= 6.9.0 +PATCHFILES= abf2c25802fde6be01008c2ad7a70b26f18bc302.patch:-p1 \ + 772418e58288a4cf77e1b8040ded044e771ae827.patch:-p1 \ + cffe88058e96c44e563e927d8a4a903e28246020.patch:-p1 MAINTAINER= diizzy@FreeBSD.org COMMENT= foobar2000 inspired audio player diff --git a/audio/fooyin/distinfo b/audio/fooyin/distinfo index 270f72af68ee..9b90c9dbeb2a 100644 --- a/audio/fooyin/distinfo +++ b/audio/fooyin/distinfo @@ -1,5 +1,9 @@ -TIMESTAMP = 1744940369 -SHA256 (fooyin-fooyin-v0.8.1_GH0.tar.gz) = e702389488e19c4c48b1b62bf1b2adf263b818138e3b232a39259057cbcec9c2 -SIZE (fooyin-fooyin-v0.8.1_GH0.tar.gz) = 1743303 -SHA256 (e44e08abb33f01fe85cc896170c55dbf732ffcc9.patch) = a4f0ead73bfa3771674c42232f6c893dfdd86c8c8fc10ecd71d1764672c2cb97 -SIZE (e44e08abb33f01fe85cc896170c55dbf732ffcc9.patch) = 2310 +TIMESTAMP = 1756013315 +SHA256 (fooyin-fooyin-v0.9.1_GH0.tar.gz) = 3559e2ffcd6ad82d72b90bcba3a3e607437329702339a3a3c989e28d28199b1d +SIZE (fooyin-fooyin-v0.9.1_GH0.tar.gz) = 2073297 +SHA256 (abf2c25802fde6be01008c2ad7a70b26f18bc302.patch) = 825241e778fde00906a04a87d0dc1c076e1eb4debd8d5d677528834eb1898ae5 +SIZE (abf2c25802fde6be01008c2ad7a70b26f18bc302.patch) = 1993 +SHA256 (772418e58288a4cf77e1b8040ded044e771ae827.patch) = e4de7f6367fa916166844a4d134eec8efa0ddda3de24fa7e302063dd912c2520 +SIZE (772418e58288a4cf77e1b8040ded044e771ae827.patch) = 755 +SHA256 (cffe88058e96c44e563e927d8a4a903e28246020.patch) = 7cc932584dbab3a1b2384d2417c8ba74d2543da353467112da586af624fa9e89 +SIZE (cffe88058e96c44e563e927d8a4a903e28246020.patch) = 1718 diff --git a/audio/fooyin/pkg-plist b/audio/fooyin/pkg-plist index 0a9325407df5..76fe9f3f9432 100644 --- a/audio/fooyin/pkg-plist +++ b/audio/fooyin/pkg-plist @@ -6,6 +6,7 @@ lib/fooyin/plugins/fyplugin_fileops.so lib/fooyin/plugins/fyplugin_filters.so lib/fooyin/plugins/fyplugin_gmeinput.so lib/fooyin/plugins/fyplugin_libarchive.so +lib/fooyin/plugins/fyplugin_lyrics.so lib/fooyin/plugins/fyplugin_mpris.so lib/fooyin/plugins/fyplugin_rawaudio.so lib/fooyin/plugins/fyplugin_rgscanner.so @@ -17,6 +18,7 @@ lib/fooyin/plugins/fyplugin_vumeter.so lib/fooyin/plugins/fyplugin_wavebar.so share/applications/org.fooyin.fooyin.desktop %%DATADIR%%/translations/fooyin_af.qm +%%DATADIR%%/translations/fooyin_ca.qm %%DATADIR%%/translations/fooyin_de.qm %%DATADIR%%/translations/fooyin_en.qm %%DATADIR%%/translations/fooyin_en_GB.qm @@ -27,6 +29,9 @@ share/applications/org.fooyin.fooyin.desktop %%DATADIR%%/translations/fooyin_id.qm %%DATADIR%%/translations/fooyin_ie.qm %%DATADIR%%/translations/fooyin_it.qm +%%DATADIR%%/translations/fooyin_ja.qm +%%DATADIR%%/translations/fooyin_lt.qm +%%DATADIR%%/translations/fooyin_nb_NO.qm %%DATADIR%%/translations/fooyin_nl.qm %%DATADIR%%/translations/fooyin_pl.qm %%DATADIR%%/translations/fooyin_pt.qm @@ -35,7 +40,10 @@ share/applications/org.fooyin.fooyin.desktop %%DATADIR%%/translations/fooyin_sk.qm %%DATADIR%%/translations/fooyin_sv.qm %%DATADIR%%/translations/fooyin_th.qm +%%DATADIR%%/translations/fooyin_tr.qm +%%DATADIR%%/translations/fooyin_uk.qm %%DATADIR%%/translations/fooyin_zh_CN.qm +%%DATADIR%%/translations/fooyin_zh_Hant.qm share/icons/hicolor/128x128/apps/org.fooyin.fooyin.png share/icons/hicolor/16x16/apps/org.fooyin.fooyin.png share/icons/hicolor/22x22/apps/org.fooyin.fooyin.png diff --git a/audio/furnace/Makefile b/audio/furnace/Makefile index 102bdb808251..f46d3af2928b 100644 --- a/audio/furnace/Makefile +++ b/audio/furnace/Makefile @@ -1,6 +1,7 @@ PORTNAME= furnace DISTVERSIONPREFIX= v DISTVERSION= 0.6.8.3 +PORTREVISION= 1 CATEGORIES= audio MAINTAINER= ehaupt@FreeBSD.org diff --git a/audio/gnome-metronome/Makefile b/audio/gnome-metronome/Makefile index 37c9a971375c..d6548846a022 100644 --- a/audio/gnome-metronome/Makefile +++ b/audio/gnome-metronome/Makefile @@ -1,6 +1,6 @@ PORTNAME= metronome DISTVERSION= 1.3.0 -PORTREVISION= 19 +PORTREVISION= 20 CATEGORIES= audio gnome PKGNAMEPREFIX= gnome- DIST_SUBDIR= gnome diff --git a/audio/gnome-podcasts/Makefile b/audio/gnome-podcasts/Makefile index 4aaf06055ebd..3ec5dcf7c17d 100644 --- a/audio/gnome-podcasts/Makefile +++ b/audio/gnome-podcasts/Makefile @@ -1,6 +1,6 @@ PORTNAME= podcasts DISTVERSION= 0.7.1 -PORTREVISION= 11 +PORTREVISION= 12 CATEGORIES= audio PKGNAMEPREFIX= gnome- diff --git a/audio/gnustep-cdplayer/Makefile b/audio/gnustep-cdplayer/Makefile index 74380978969b..80e351e3c926 100644 --- a/audio/gnustep-cdplayer/Makefile +++ b/audio/gnustep-cdplayer/Makefile @@ -1,6 +1,6 @@ PORTNAME= cdplayer PORTVERSION= 0.5.1 -PORTREVISION= 10 +PORTREVISION= 11 CATEGORIES= audio gnustep MASTER_SITES= SF/gsburn/${PORTNAME}/${PORTNAME}-${PORTVERSION} PKGNAMEPREFIX= gnustep- diff --git a/audio/gogglesmm/Makefile b/audio/gogglesmm/Makefile index 951921f2d536..9292d98d34c2 100644 --- a/audio/gogglesmm/Makefile +++ b/audio/gogglesmm/Makefile @@ -1,6 +1,6 @@ PORTNAME= gogglesmm PORTVERSION= 1.2.5 -PORTREVISION= 5 +PORTREVISION= 6 CATEGORIES= audio MAINTAINER= jhale@FreeBSD.org diff --git a/audio/gonic/Makefile b/audio/gonic/Makefile index 1edb42c2c597..3ac72e39f862 100644 --- a/audio/gonic/Makefile +++ b/audio/gonic/Makefile @@ -1,7 +1,6 @@ PORTNAME= gonic DISTVERSIONPREFIX= v -DISTVERSION= 0.16.4 -PORTREVISION= 8 +DISTVERSION= 0.17.0 CATEGORIES= audio net MAINTAINER= tagattie@FreeBSD.org @@ -15,7 +14,7 @@ LIB_DEPENDS= libtag.so:audio/taglib RUN_DEPENDS= ffmpeg:multimedia/ffmpeg \ mpv:multimedia/mpv -USES= go:modules,1.21 pkgconfig sqlite +USES= go:modules pkgconfig sqlite USE_RC_SUBR= ${PORTNAME} @@ -25,6 +24,13 @@ GO_TARGET= ./cmd/gonic USERS= ${PORTNAME} GROUPS= ${PORTNAME} -PLIST_FILES= bin/gonic +PLIST_FILES= bin/${PORTNAME} +PORTDOCS= CHANGELOG.md README.md + +OPTIONS_DEFINE= DOCS + +post-install-DOCS-on: + @${MKDIR} ${STAGEDIR}${DOCSDIR} + ${INSTALL_MAN} ${PORTDOCS:S|^|${WRKSRC}/|} ${STAGEDIR}${DOCSDIR} .include <bsd.port.mk> diff --git a/audio/gonic/distinfo b/audio/gonic/distinfo index 266bff74b2d0..a8be12c98e82 100644 --- a/audio/gonic/distinfo +++ b/audio/gonic/distinfo @@ -1,5 +1,5 @@ -TIMESTAMP = 1711442810 -SHA256 (go/audio_gonic/gonic-v0.16.4/v0.16.4.mod) = c0fbac2ec2b3a98b3db8053ecd11d26de347983f019b15b309f02a45e4a1b74d -SIZE (go/audio_gonic/gonic-v0.16.4/v0.16.4.mod) = 2903 -SHA256 (go/audio_gonic/gonic-v0.16.4/v0.16.4.zip) = 785878ee33a80190f422f1ba35897b0ba34093781003b5c957c5d58a54ef075b -SIZE (go/audio_gonic/gonic-v0.16.4/v0.16.4.zip) = 2064840 +TIMESTAMP = 1756111748 +SHA256 (go/audio_gonic/gonic-v0.17.0/v0.17.0.mod) = 9b2765d13fd49f5b4c8c21f08b49314604e6d82adeceb48e55f9b004ed0c2fc9 +SIZE (go/audio_gonic/gonic-v0.17.0/v0.17.0.mod) = 3054 +SHA256 (go/audio_gonic/gonic-v0.17.0/v0.17.0.zip) = 0ac23d66dc16648b36b9f0651459ff0d1500c675e7ebc3e0a828ad6bfe8ff3c7 +SIZE (go/audio_gonic/gonic-v0.17.0/v0.17.0.zip) = 2071276 diff --git a/audio/gsequencer/Makefile b/audio/gsequencer/Makefile index eaf85ae0fddd..988db916eb1c 100644 --- a/audio/gsequencer/Makefile +++ b/audio/gsequencer/Makefile @@ -1,6 +1,6 @@ PORTNAME= gsequencer DISTVERSION= 7.5.5 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= audio MAINTAINER= yuri@FreeBSD.org diff --git a/audio/headsetcontrol/Makefile b/audio/headsetcontrol/Makefile index b8aaff70326b..8e1bc5f3a090 100644 --- a/audio/headsetcontrol/Makefile +++ b/audio/headsetcontrol/Makefile @@ -1,5 +1,5 @@ PORTNAME= headsetcontrol -DISTVERSION= 3.0.0 +DISTVERSION= 3.1.0 CATEGORIES= audio MAINTAINER= Alexander88207@protonmail.com @@ -18,6 +18,6 @@ USE_GITHUB= yes GH_ACCOUNT= Sapd GH_PROJECT= HeadsetControl -PLIST_FILES= ${LOCALBASE}/bin/headsetcontrol +PLIST_FILES= bin/headsetcontrol .include <bsd.port.mk> diff --git a/audio/headsetcontrol/distinfo b/audio/headsetcontrol/distinfo index 34fa4d14ab90..48fabcd4949d 100644 --- a/audio/headsetcontrol/distinfo +++ b/audio/headsetcontrol/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1714237536 -SHA256 (Sapd-HeadsetControl-3.0.0_GH0.tar.gz) = 63bfd147c82277bfcf2314ad2b01ca4e4bf06e1d5516e01ee39232661f4d5144 -SIZE (Sapd-HeadsetControl-3.0.0_GH0.tar.gz) = 64565 +TIMESTAMP = 1756041005 +SHA256 (Sapd-HeadsetControl-3.1.0_GH0.tar.gz) = caba01afa69477f0a4fce1f8608a0c5e85e7032c350c1239bb4e1ecdfb171359 +SIZE (Sapd-HeadsetControl-3.1.0_GH0.tar.gz) = 76475 diff --git a/audio/id3edit/Makefile b/audio/id3edit/Makefile new file mode 100644 index 000000000000..64d95bc2d58e --- /dev/null +++ b/audio/id3edit/Makefile @@ -0,0 +1,43 @@ +PORTNAME= id3edit +PORTVERSION= 2.2.1 +DISTVERSIONPREFIX= v +CATEGORIES= audio + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= CLI tool to edit and debug ID3v2 tags of mp3 files +WWW= https://github.com/rstemmer/id3edit + +LICENSE= GPLv3 +LICENSE_FILE= ${WRKSRC}/LICENSE + +LIB_DEPENDS= libprinthex.so:devel/libprinthex + +USES= iconv localbase:ldflags + +CFLAGS+= -DVERSION="\"${PORTVERSION}\"" -Wno-multichar +LDFLAGS+= -lprinthex -lz + +PLIST_FILES= bin/id3dump \ + bin/id3edit \ + bin/id3frames \ + bin/id3show + +FILES= crc32 extheader frameflags id3v2 id3v2frame main rawfile \ + encoding/crc encoding/size encoding/text + +USE_GITHUB= yes +GH_ACCOUNT= rstemmer + +do-build: +.for file in ${FILES} + @${CC} ${CFLAGS} -I${WRKSRC} -c ${WRKSRC}/${file}.c -o ${WRKSRC}/${file}.o +.endfor + @${CC} ${LDFLAGS} ${FILES:C|.*|${WRKSRC}/&.o|} -o ${WRKSRC}/id3edit + +do-install: + ${INSTALL_SCRIPT} ${WRKSRC}/id3dump ${STAGEDIR}${PREFIX}/bin/id3dump + ${INSTALL_PROGRAM} ${WRKSRC}/id3edit ${STAGEDIR}${PREFIX}/bin/id3edit + ${INSTALL_SCRIPT} ${WRKSRC}/id3frames ${STAGEDIR}${PREFIX}/bin/id3frames + ${INSTALL_SCRIPT} ${WRKSRC}/id3show ${STAGEDIR}${PREFIX}/bin/id3show + +.include <bsd.port.mk> diff --git a/audio/id3edit/distinfo b/audio/id3edit/distinfo new file mode 100644 index 000000000000..aa4f9f5b8720 --- /dev/null +++ b/audio/id3edit/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1753796000 +SHA256 (rstemmer-id3edit-v2.2.1_GH0.tar.gz) = 110f50f8aa8ef2d74e2a8ddcf571359ec353d21e63f6321f2842bd185131a192 +SIZE (rstemmer-id3edit-v2.2.1_GH0.tar.gz) = 342252 diff --git a/audio/id3edit/pkg-descr b/audio/id3edit/pkg-descr new file mode 100644 index 000000000000..1cbd82d507fd --- /dev/null +++ b/audio/id3edit/pkg-descr @@ -0,0 +1,18 @@ +id3edit is a command line editor to edit and debug ID3v2 tags (ID3v2.3.0 & +ID3v2.4.0 of mp3 files with full Unicode support. + +Its main features are: +- Show all frames of the ID3 tag (colloquial "mp3 tags") +- Get/Add/Edit specific frames (see Name Definitions) +- Get/Add artworks (Support for jpeg and png. Create an issue if you need more + types.) +- Remove frames or the whole tag +- Print hex-dump of a specific frame +- You can overwrite the input file or write to a new path +- It is made to handle invalid tags and headers and debug them +- Can print a detailed list of all frames with comments when they are invalid +- Supports Unicode correctly! +- It works from command line +- Support for ID3v2.3.0 (most common) and ID3v2.4.0 (latest) +- All encodings supported (ISO 8859-1, UTF-16 with BOM, UTF-16BE, UTF-8) +- Partial support of extended header: CRC feature supported! diff --git a/audio/id3lib/Makefile b/audio/id3lib/Makefile index a01fbbb2d887..6feeb9e2aec6 100644 --- a/audio/id3lib/Makefile +++ b/audio/id3lib/Makefile @@ -1,5 +1,6 @@ PORTNAME= id3lib PORTVERSION= 3.8.3.20240114 +PORTREVISION= 1 CATEGORIES= audio MAINTAINER= sunpoet@FreeBSD.org diff --git a/audio/id3lib/files/patch-src-CMakeLists.txt b/audio/id3lib/files/patch-src-CMakeLists.txt deleted file mode 100644 index 691b63e1baf8..000000000000 --- a/audio/id3lib/files/patch-src-CMakeLists.txt +++ /dev/null @@ -1,9 +0,0 @@ ---- src/CMakeLists.txt.orig 2024-01-14 15:07:45 UTC -+++ src/CMakeLists.txt -@@ -45,5 +45,5 @@ install(FILES ${CMAKE_BINARY_DIR}/id3lib.pc - configure_file(${CMAKE_SOURCE_DIR}/id3lib.pc.in - ${CMAKE_BINARY_DIR}/id3lib.pc @ONLY) - install(FILES ${CMAKE_BINARY_DIR}/id3lib.pc -- DESTINATION share/pkgconfig -+ DESTINATION libdata/pkgconfig - PERMISSIONS OWNER_READ GROUP_READ WORLD_READ) diff --git a/audio/id3lib/pkg-plist b/audio/id3lib/pkg-plist index 274083ed58da..6844ec022fb0 100644 --- a/audio/id3lib/pkg-plist +++ b/audio/id3lib/pkg-plist @@ -22,8 +22,8 @@ include/id3/writer.h include/id3/writers.h lib/libid3.so lib/libid3.so.3.8.3 -libdata/pkgconfig/id3lib.pc share/man/man1/id3convert.1.gz share/man/man1/id3cp.1.gz share/man/man1/id3info.1.gz share/man/man1/id3tag.1.gz +share/pkgconfig/id3lib.pc diff --git a/audio/juk/distinfo b/audio/juk/distinfo index 32c5b7bc164b..1409b9db65a8 100644 --- a/audio/juk/distinfo +++ b/audio/juk/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1751381202 -SHA256 (KDE/release-service/25.04.3/juk-25.04.3.tar.xz) = ec254988faedd3526db1e3476622083f02ac21000ff81e38672dd7b9979d1921 -SIZE (KDE/release-service/25.04.3/juk-25.04.3.tar.xz) = 1919264 +TIMESTAMP = 1754646116 +SHA256 (KDE/release-service/25.08.0/juk-25.08.0.tar.xz) = 1b3edb5e0e4a5f509b2460f2d37d553353993fef78e85ec09f87877215fa11f0 +SIZE (KDE/release-service/25.08.0/juk-25.08.0.tar.xz) = 1933436 diff --git a/audio/kid3/Makefile b/audio/kid3/Makefile index 80a706835b1c..65ba6d768a38 100644 --- a/audio/kid3/Makefile +++ b/audio/kid3/Makefile @@ -1,6 +1,5 @@ PORTNAME= kid3 -PORTVERSION= 3.9.6 -PORTREVISION= 1 +PORTVERSION= 3.9.7 CATEGORIES= audio kde MASTER_SITES= KDE/stable/${PORTNAME}/${PORTVERSION} PKGNAMESUFFIX= -${FLAVOR} @@ -45,7 +44,7 @@ PLIST_SUB+= KF="@comment " \ _KID3_APPS+= QT .elif ${FLAVOR} == kf6 USES+= kde:6 -USE_KDE= colorscheme config configwidgets coreaddons kio \ +USE_KDE= colorscheme config configwidgets coreaddons guiaddons kio \ widgetsaddons xmlgui doctools:build ecm:build PLIST_SUB+= KF="" \ QT="@comment " \ diff --git a/audio/kid3/distinfo b/audio/kid3/distinfo index ee2f41d0516f..69886d480975 100644 --- a/audio/kid3/distinfo +++ b/audio/kid3/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1727597128 -SHA256 (kid3-3.9.6.tar.xz) = cf27ffcc4369c9940da7bfc12fd10dfbda526b8187e5b62662abe8069fc26c27 -SIZE (kid3-3.9.6.tar.xz) = 1872012 +TIMESTAMP = 1754515332 +SHA256 (kid3-3.9.7.tar.xz) = f9cfeef7d4ddde78ad8978876cb3525843a302504f547c225e9c22c81d710760 +SIZE (kid3-3.9.7.tar.xz) = 1910860 diff --git a/audio/kid3/files/patch-CMakeLists.txt b/audio/kid3/files/patch-CMakeLists.txt deleted file mode 100644 index 55c0b58940c8..000000000000 --- a/audio/kid3/files/patch-CMakeLists.txt +++ /dev/null @@ -1,13 +0,0 @@ -Fix detection of Qt5 if both Qt5 and Qt6 are installed. - ---- CMakeLists.txt.orig 2023-07-10 19:51:30 UTC -+++ CMakeLists.txt -@@ -273,7 +273,7 @@ else() - if(BUILD_WITH_QT6) - find_package(QT NAMES Qt6 COMPONENTS Core REQUIRED) - else() -- find_package(QT NAMES Qt5 Qt6 COMPONENTS Core REQUIRED) -+ find_package(QT NAMES Qt5 COMPONENTS Core REQUIRED) - endif() - if(QT_VERSION_MAJOR EQUAL 6 AND QT_VERSION_MINOR LESS 2) - set(WITH_MULTIMEDIA OFF) diff --git a/audio/kid3/files/patch-src_app_kde_kdemainwindow.cpp b/audio/kid3/files/patch-src_app_kde_kdemainwindow.cpp index cd0eaad45f70..91ce12367838 100644 --- a/audio/kid3/files/patch-src_app_kde_kdemainwindow.cpp +++ b/audio/kid3/files/patch-src_app_kde_kdemainwindow.cpp @@ -5,7 +5,7 @@ Shortcut for action "reload" "Re&load" set with QAction::setShortcut()! Use KAc Shortcut for action "filelist_rename" "&Rename" set with QAction::setShortcut()! Use KActionCollection::setDefaultShortcut(s) instead. Shortcut for action "filelist_delete" "&Move to Trash" set with QAction::setShortcut()! Use KActionCollection::setDefaultShortcut(s) instead. ---- src/app/kde/kdemainwindow.cpp.orig 2022-08-05 16:27:08 UTC +--- src/app/kde/kdemainwindow.cpp.orig 2025-07-24 02:28:50 UTC +++ src/app/kde/kdemainwindow.cpp @@ -190,7 +190,7 @@ void KdeMainWindow::initActions() action = new QAction(QIcon::fromTheme(QLatin1String("document-open")), @@ -25,7 +25,7 @@ Shortcut for action "filelist_delete" "&Move to Trash" set with QAction::setSho collection->addAction(QLatin1String("reload"), action); connect(action, &QAction::triggered, impl(), &BaseMainWindowImpl::slotFileReload); -@@ -426,7 +426,7 @@ void KdeMainWindow::initActions() +@@ -424,7 +424,7 @@ void KdeMainWindow::initActions() collection->addAction(QLatin1String("filelist_focus"), action); connect(action, &QAction::triggered, form(), &Kid3Form::setFocusFileList); action = new QAction(tr("&Rename"), this); @@ -34,7 +34,7 @@ Shortcut for action "filelist_delete" "&Move to Trash" set with QAction::setSho action->setShortcutContext(Qt::WidgetShortcut); connect(action, &QAction::triggered, impl(), &BaseMainWindowImpl::renameFile); // This action is not made configurable because its shortcut F2 conflicts -@@ -435,7 +435,7 @@ void KdeMainWindow::initActions() +@@ -433,7 +433,7 @@ void KdeMainWindow::initActions() // collection->addAction(QLatin1String("filelist_rename"), action); form()->getFileList()->setRenameAction(action); action = new QAction(tr("&Move to Trash"), this); diff --git a/audio/kid3/files/patch-src_plugins_mp4v2metadata_m4afile.cpp b/audio/kid3/files/patch-src_plugins_mp4v2metadata_m4afile.cpp index 3b1504aa77ec..5d985524d313 100644 --- a/audio/kid3/files/patch-src_plugins_mp4v2metadata_m4afile.cpp +++ b/audio/kid3/files/patch-src_plugins_mp4v2metadata_m4afile.cpp @@ -1,6 +1,6 @@ cmID and xid atoms only supported in mp4v2 >= 2.0.0 ---- src/plugins/mp4v2metadata/m4afile.cpp.orig 2022-08-05 16:27:08 UTC +--- src/plugins/mp4v2metadata/m4afile.cpp.orig 2025-07-24 02:28:50 UTC +++ src/plugins/mp4v2metadata/m4afile.cpp @@ -124,6 +124,8 @@ const struct { { "geID", Frame::FT_Other }, @@ -25,7 +25,7 @@ cmID and xid atoms only supported in mp4v2 >= 2.0.0 if (size >= 4) { uint val = value[3] + (value[2] << 8) + (value[1] << 16) + (value[0] << 24); -@@ -889,11 +894,13 @@ bool M4aFile::writeTags(bool force, bool* renamed, boo +@@ -894,11 +899,13 @@ bool M4aFile::writeTags(bool force, bool* renamed, boo } else if (name == QLatin1String("geID")) { uint32_t val = str.toULong(); MP4TagsSetGenreID(tags, &val); @@ -39,7 +39,7 @@ cmID and xid atoms only supported in mp4v2 >= 2.0.0 } else { MP4ItmfItem* item; if (name.length() == 4 && -@@ -1579,7 +1586,10 @@ QStringList M4aFile::getFrameIds(Frame::TagNumber tagN +@@ -1595,7 +1602,10 @@ QStringList M4aFile::getFrameIds(Frame::TagNumber tagN QLatin1String("plID") << QLatin1String("purd") << QLatin1String("rtng") << QLatin1String("sfID") << QLatin1String("sosn") << QLatin1String("stik") << QLatin1String("tven") << QLatin1String("tves") << QLatin1String("tvnn") << QLatin1String("tvsh") << QLatin1String("tvsn") << diff --git a/audio/kid3/files/patch-src_plugins_oggflacmetadata_CMakeLists.txt b/audio/kid3/files/patch-src_plugins_oggflacmetadata_CMakeLists.txt deleted file mode 100644 index 6878afda2d2b..000000000000 --- a/audio/kid3/files/patch-src_plugins_oggflacmetadata_CMakeLists.txt +++ /dev/null @@ -1,35 +0,0 @@ -Make FLAC support optional - ---- src/plugins/oggflacmetadata/CMakeLists.txt.orig 2019-08-23 09:52:05 UTC -+++ src/plugins/oggflacmetadata/CMakeLists.txt -@@ -1,8 +1,12 @@ --if(WITH_VORBIS) -+if(WITH_VORBIS OR WITH_FLAC) - set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules) - -- find_package(Vorbis REQUIRED) -- find_package(FLAC) -+ if(WITH_VORBIS) -+ find_package(Vorbis REQUIRED) -+ endif() -+ if(WITH_FLAC) -+ find_package(FLAC REQUIRED) -+ endif() - - configure_file(oggflacconfig.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/oggflacconfig.h) - -@@ -28,7 +32,13 @@ if(WITH_VORBIS) - - target_include_directories(${plugin_TARGET} PRIVATE ${CMAKE_CURRENT_BINARY_DIR}) - -- target_link_libraries(${plugin_TARGET} kid3-core VorbisFile::VorbisFile FLACPP::FLACPP Kid3Plugin) -+ target_link_libraries(${plugin_TARGET} kid3-core Kid3Plugin) -+ if(HAVE_VORBIS) -+ target_link_libraries(${plugin_TARGET} VorbisFile::VorbisFile) -+ endif() -+ if(HAVE_FLAC) -+ target_link_libraries(${plugin_TARGET} FLACPP::FLACPP) -+ endif() - - target_compile_definitions(${plugin_TARGET} PRIVATE HAVE_CONFIG_H) - diff --git a/audio/klystrack/Makefile b/audio/klystrack/Makefile index 888935c570f8..eec66c277e05 100644 --- a/audio/klystrack/Makefile +++ b/audio/klystrack/Makefile @@ -1,5 +1,6 @@ PORTNAME= klystrack PORTVERSION= 1.7.8 +PORTREVISION= 1 CATEGORIES= audio MAINTAINER= ehaupt@FreeBSD.org diff --git a/audio/kmix/distinfo b/audio/kmix/distinfo index 6fc239b1668c..e40484455cc1 100644 --- a/audio/kmix/distinfo +++ b/audio/kmix/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1751381205 -SHA256 (KDE/release-service/25.04.3/kmix-25.04.3.tar.xz) = 3d8eb02bb4c180b005e95b2ca5cb6a2b6326e78f539d83fd385051fbe682ebd2 -SIZE (KDE/release-service/25.04.3/kmix-25.04.3.tar.xz) = 1177372 +TIMESTAMP = 1754646119 +SHA256 (KDE/release-service/25.08.0/kmix-25.08.0.tar.xz) = df911c7e393290ff087dd17baa223372626ea79861d3553e6f23058b180bfb81 +SIZE (KDE/release-service/25.08.0/kmix-25.08.0.tar.xz) = 1178668 diff --git a/audio/kwave/distinfo b/audio/kwave/distinfo index 18977bc7035c..10dbb1b849e5 100644 --- a/audio/kwave/distinfo +++ b/audio/kwave/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1751381207 -SHA256 (KDE/release-service/25.04.3/kwave-25.04.3.tar.xz) = 01e18cdfaa296003d6b3ae1853aebd4371e18166f6a99fa899237f7ccb756e46 -SIZE (KDE/release-service/25.04.3/kwave-25.04.3.tar.xz) = 6519092 +TIMESTAMP = 1754646121 +SHA256 (KDE/release-service/25.08.0/kwave-25.08.0.tar.xz) = 80c1f2eb0641148ac4256418bb581a85c16d5e1d31454a1ccd77c20295315fd7 +SIZE (KDE/release-service/25.08.0/kwave-25.08.0.tar.xz) = 6518688 diff --git a/audio/lewton/Makefile b/audio/lewton/Makefile index e9327cdaa822..35489ffed2f3 100644 --- a/audio/lewton/Makefile +++ b/audio/lewton/Makefile @@ -1,6 +1,6 @@ PORTNAME= lewton DISTVERSION= 0.10.2 -PORTREVISION= 38 +PORTREVISION= 39 CATEGORIES= audio PATCH_SITES= https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/commit/ diff --git a/audio/lewton/files/patch-rust-1.89.0 b/audio/lewton/files/patch-rust-1.89.0 new file mode 100644 index 000000000000..49869710a43a --- /dev/null +++ b/audio/lewton/files/patch-rust-1.89.0 @@ -0,0 +1,18 @@ +--- src/capi.rs.orig 2025-08-23 11:38:26 UTC ++++ src/capi.rs +@@ -120,6 +120,7 @@ pub unsafe extern fn lewton_decode_packet(ctx :*mut Le + } + + /// Provide the number of samples present in each channel ++#[warn(dangerous_implicit_autorefs)] + #[no_mangle] + pub unsafe extern fn lewton_samples_count(samples :*const LewtonSamples) -> usize { + (*samples).0 +@@ -129,6 +130,7 @@ pub unsafe extern fn lewton_samples_count(samples :*co + } + + /// Provide a reference to the channel sample data ++#[warn(dangerous_implicit_autorefs)] + pub unsafe extern fn lewton_samples_f32(samples :*const LewtonSamples, channel :usize) -> *const f32 { + (*samples).0 + .get(channel) diff --git a/audio/libkcddb/distinfo b/audio/libkcddb/distinfo index a1a045a6b678..fb73edff8438 100644 --- a/audio/libkcddb/distinfo +++ b/audio/libkcddb/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1751381210 -SHA256 (KDE/release-service/25.04.3/libkcddb-25.04.3.tar.xz) = 6dde624998ff702b85aa6ec58a160136469f625932e183ddb1845e5adb669acb -SIZE (KDE/release-service/25.04.3/libkcddb-25.04.3.tar.xz) = 450212 +TIMESTAMP = 1754646124 +SHA256 (KDE/release-service/25.08.0/libkcddb-25.08.0.tar.xz) = e6a8573f554cd920e6f828010cde8c4aaeac5b329029f76ca2fe4bd5495627ec +SIZE (KDE/release-service/25.08.0/libkcddb-25.08.0.tar.xz) = 448896 diff --git a/audio/libkcompactdisc/distinfo b/audio/libkcompactdisc/distinfo index 4120bfc954fc..d2b653a8d9ff 100644 --- a/audio/libkcompactdisc/distinfo +++ b/audio/libkcompactdisc/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1751381212 -SHA256 (KDE/release-service/25.04.3/libkcompactdisc-25.04.3.tar.xz) = ee0be866b6f941cdf6b3c87a45861bc7685a5ba9875caf8e5f46841d8322d37f -SIZE (KDE/release-service/25.04.3/libkcompactdisc-25.04.3.tar.xz) = 100696 +TIMESTAMP = 1754646126 +SHA256 (KDE/release-service/25.08.0/libkcompactdisc-25.08.0.tar.xz) = a56355f676edcd1c9c143f03b29cf9b97c49cc2ae952fa5c1004fab2be50472f +SIZE (KDE/release-service/25.08.0/libkcompactdisc-25.08.0.tar.xz) = 100664 diff --git a/audio/libsidplayfp/Makefile b/audio/libsidplayfp/Makefile index dc89982a24f9..e51104ec56bd 100644 --- a/audio/libsidplayfp/Makefile +++ b/audio/libsidplayfp/Makefile @@ -1,5 +1,5 @@ PORTNAME= libsidplayfp -DISTVERSION= 2.14.0 +DISTVERSION= 2.15.0 CATEGORIES= audio MASTER_SITES= https://github.com/${PORTNAME}/${PORTNAME}/releases/download/v${DISTVERSION}/ @@ -10,7 +10,6 @@ WWW= https://github.com/libsidplayfp/libsidplayfp LICENSE= GPLv2+ LICENSE_FILE= ${WRKSRC}/COPYING -BUILD_DEPENDS= libgcrypt-config:security/libgcrypt LIB_DEPENDS= libgcrypt.so:security/libgcrypt USES= compiler:c++23-lang libtool pkgconfig @@ -25,7 +24,7 @@ LDFLAGS+= -lpthread INSTALL_TARGET= install-strip -SIDPLAYFP_SHLIB_VERSION= 6.5.40 +SIDPLAYFP_SHLIB_VERSION= 6.6.41 STILVIEW_SHLIB_VERSION= 0.0.6 PLIST_SUB+= SIDPLAYFP_SHLIB_VER=${SIDPLAYFP_SHLIB_VERSION:C/\.[[:digit:].]+//} \ @@ -44,19 +43,6 @@ DEBUG_CONFIGURE_ON= --enable-debug=full DOXYGEN_BUILD_DEPENDS= doxygen:devel/doxygen DOXYGEN_CONFIGURE_ENV_OFF= ac_cv_prog_HAVE_DOXYGEN=false -.include <bsd.port.options.mk> - -.if ${ARCH} == "aarch64" -CONFIGURE_ARGS+= --with-simd=neon -.endif - -.if ${ARCH} == "amd64" -.if !defined(CPUTYPE) -CFLAGS+= -march=penryn -.endif -CONFIGURE_ARGS+= --with-simd=sse4 -.endif - post-build-DOXYGEN-on: ${MAKE_CMD} doc -C ${WRKSRC} diff --git a/audio/libsidplayfp/distinfo b/audio/libsidplayfp/distinfo index 61138bd4ddb7..638bf1e6a82b 100644 --- a/audio/libsidplayfp/distinfo +++ b/audio/libsidplayfp/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1747484776 -SHA256 (libsidplayfp-2.14.0.tar.gz) = 0f49c87c3a4791b9709d502e605274ee5c4c20eabfdea0340917d27cbd685f53 -SIZE (libsidplayfp-2.14.0.tar.gz) = 851923 +TIMESTAMP = 1754208046 +SHA256 (libsidplayfp-2.15.0.tar.gz) = 42c28b9ef57998ad66bbbb3dfab00c6684715c643d9ccc9ac8da4d7cf296dd00 +SIZE (libsidplayfp-2.15.0.tar.gz) = 853021 diff --git a/audio/libvgm/Makefile b/audio/libvgm/Makefile index 90c0e8403e28..f58cbe9f3aa8 100644 --- a/audio/libvgm/Makefile +++ b/audio/libvgm/Makefile @@ -1,6 +1,5 @@ PORTNAME= libvgm -DISTVERSION= g20240608 -PORTREVISION= 1 +DISTVERSION= g20250714 CATEGORIES= audio MAINTAINER= tagattie@FreeBSD.org @@ -12,7 +11,7 @@ USE_LDCONFIG= yes USE_GITHUB= yes GH_ACCOUNT= ValleyBell -GH_TAGNAME= 34c368c +GH_TAGNAME= 7cad783 CMAKE_ON= AUDIODRV_OSS CMAKE_OFF= CMAKE_CXX_EXTENSIONS diff --git a/audio/libvgm/distinfo b/audio/libvgm/distinfo index afe86758fd47..425dc55073cc 100644 --- a/audio/libvgm/distinfo +++ b/audio/libvgm/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1725787643 -SHA256 (ValleyBell-libvgm-g20240608-34c368c_GH0.tar.gz) = 2673c7a1f3a6a5289929404dbfafa17f90710af7a637c2052b13371007bebc9c -SIZE (ValleyBell-libvgm-g20240608-34c368c_GH0.tar.gz) = 1441492 +TIMESTAMP = 1754208920 +SHA256 (ValleyBell-libvgm-g20250714-7cad783_GH0.tar.gz) = 17868263162428b2546aebbcd34ee125fd88a50d0805c3833b7e5ef08cae990c +SIZE (ValleyBell-libvgm-g20250714-7cad783_GH0.tar.gz) = 1453785 diff --git a/audio/libvgm/pkg-plist b/audio/libvgm/pkg-plist index c4acce313159..be9d85459918 100644 --- a/audio/libvgm/pkg-plist +++ b/audio/libvgm/pkg-plist @@ -22,10 +22,13 @@ include/vgm/emu/cores/es5503.h include/vgm/emu/cores/es5506.h include/vgm/emu/cores/gb.h include/vgm/emu/cores/iremga20.h +include/vgm/emu/cores/k005289.h +include/vgm/emu/cores/k007232.h include/vgm/emu/cores/k051649.h include/vgm/emu/cores/k053260.h include/vgm/emu/cores/k054539.h include/vgm/emu/cores/mikey.h +include/vgm/emu/cores/msm5205.h include/vgm/emu/cores/multipcm.h include/vgm/emu/cores/nesintf.h include/vgm/emu/cores/okim6258.h @@ -59,7 +62,7 @@ include/vgm/player/playera.hpp include/vgm/player/playerbase.hpp include/vgm/player/s98player.hpp include/vgm/player/vgmplayer.hpp -include/vgm/stdbool.h +include/vgm/_stdbool.h include/vgm/stdtype.h include/vgm/utils/DataLoader.h include/vgm/utils/FileLoader.h diff --git a/audio/lollypop/Makefile b/audio/lollypop/Makefile index eb1c7f2da761..516775b6bd02 100644 --- a/audio/lollypop/Makefile +++ b/audio/lollypop/Makefile @@ -1,5 +1,6 @@ PORTNAME= lollypop DISTVERSION= 1.4.41 +PORTREVISION= 1 CATEGORIES= audio MAINTAINER= ports@FreeBSD.org diff --git a/audio/mac/Makefile b/audio/mac/Makefile index 60709e9c62c5..50138efd93c6 100644 --- a/audio/mac/Makefile +++ b/audio/mac/Makefile @@ -1,5 +1,5 @@ PORTNAME= mac -PORTVERSION= 11.22 +PORTVERSION= 11.38 CATEGORIES= audio MASTER_SITES= https://www.monkeysaudio.com/files/ DISTNAME= ${PORTNAME:tu}_${PORTVERSION:S|.||}_SDK diff --git a/audio/mac/distinfo b/audio/mac/distinfo index 58715fd6e68d..f579cb43ad28 100644 --- a/audio/mac/distinfo +++ b/audio/mac/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1754102062 -SHA256 (MAC_1122_SDK.zip) = 32dbfa43f5fb3004a3aa8ee4391957056e847fbea641e6802ee431a471b0cfee -SIZE (MAC_1122_SDK.zip) = 1700421 +TIMESTAMP = 1756358910 +SHA256 (MAC_1138_SDK.zip) = 50fb286ef83fe739427610b7658d5d3422d0b5b636e1aa52ae14277c635ffcad +SIZE (MAC_1138_SDK.zip) = 1710212 diff --git a/audio/mac/files/patch-Source_Console_Console.cpp b/audio/mac/files/patch-Source_Console_Console.cpp index 72ce55e11dc4..0033ecb30d5a 100644 --- a/audio/mac/files/patch-Source_Console_Console.cpp +++ b/audio/mac/files/patch-Source_Console_Console.cpp @@ -1,8 +1,8 @@ Unixify built-in help. ---- Source/Console/Console.cpp.orig 2025-05-07 22:12:54 UTC +--- Source/Console/Console.cpp.orig 2025-08-15 06:11:17 UTC +++ Source/Console/Console.cpp -@@ -136,7 +136,7 @@ static void DisplayProperUsage(FILE * pFile) +@@ -135,7 +135,7 @@ static void DisplayProperUsage(FILE * pFile) **************************************************************************************************/ static void DisplayProperUsage(FILE * pFile) { @@ -11,7 +11,7 @@ Unixify built-in help. fwprintf(pFile, L"Modes:\n"); fwprintf(pFile, L" Compress (fast): '-c1000'\n"); -@@ -156,18 +156,18 @@ static void DisplayProperUsage(FILE * pFile) +@@ -155,18 +155,18 @@ static void DisplayProperUsage(FILE * pFile) fwprintf(pFile, L" Set the number of threads when compressing or decompressing: -threads=#'\n\n"); fwprintf(pFile, L"Examples:\n"); diff --git a/audio/mac/files/patch-Source_Shared_CPUFeatures.cpp b/audio/mac/files/patch-Source_Shared_CPUFeatures.cpp new file mode 100644 index 000000000000..3713b9bb9152 --- /dev/null +++ b/audio/mac/files/patch-Source_Shared_CPUFeatures.cpp @@ -0,0 +1,26 @@ +--- Source/Shared/CPUFeatures.cpp.orig 2025-08-04 20:52:19 UTC ++++ Source/Shared/CPUFeatures.cpp +@@ -4,7 +4,7 @@ + #if defined(PLATFORM_LINUX)
+ #include <sys/auxv.h>
+
+- #if defined(__arm__)
++ #if defined(__arm__) && defined(__linux__)
+ #include <asm/hwcap.h>
+
+ #ifndef HWCAP_NEON
+@@ -187,7 +187,14 @@ bool GetNeonSupported()
+ #if defined(__ARM_NEON) || defined(__ARM_NEON__) || defined(__aarch64__) || defined(_M_ARM64) || defined(_M_ARM64EC)
+ return true;
+ #elif defined(__arm__) && defined(PLATFORM_LINUX)
++#ifdef __linux__
+ return getauxval(AT_HWCAP) & HWCAP_NEON;
++#elif defined(__FreeBSD__)
++ long hwcap = 0;
++
++ elf_aux_info(AT_HWCAP, &hwcap, sizeof hwcap);
++ return (hwcap & HWCAP_NEON);
++#endif
+ #else
+ return false;
+ #endif
diff --git a/audio/mac/pkg-plist b/audio/mac/pkg-plist index 3107453423b6..10d5917bd1e6 100644 --- a/audio/mac/pkg-plist +++ b/audio/mac/pkg-plist @@ -11,4 +11,4 @@ include/MAC/Version.h include/MAC/Warnings.h include/MAC/WindowsEnvironment.h lib/libMAC.so -lib/libMAC.so.13 +lib/libMAC.so.14 diff --git a/audio/minimp3/Makefile b/audio/minimp3/Makefile index 7ba47f6ee289..b13158ef1045 100644 --- a/audio/minimp3/Makefile +++ b/audio/minimp3/Makefile @@ -1,7 +1,13 @@ PORTNAME= minimp3 -PORTVERSION= g20211130 +DISTVERSION= g20211130 +PORTREVISION= 1 PORTEPOCH= 1 CATEGORIES= audio +# Use direct link to 126KB files instead of 19+MB tarball: +# https://github.com/${GH_ACCOUNT}/${PORTNAME}/tar.gz/${GH_TAGNAME}?dummy=/${GH_ACCOUNT}-${PORTNAME}-${DISTVERSION}-${GH_TAGNAME}_GH0.tar.gz +MASTER_SITES= https://raw.githubusercontent.com/${GH_ACCOUNT}/${PORTNAME}/${GH_TAGNAME}/ +DISTFILES= LICENSE minimp3.h minimp3_ex.h +DIST_SUBDIR= ${PORTNAME}-${DISTVERSION} MAINTAINER= yuri@FreeBSD.org COMMENT= C++ single-header, minimalistic library for decoding MP3 @@ -10,16 +16,22 @@ WWW= https://github.com/lieff/minimp3 LICENSE= CC0-1.0 LICENSE_FILE= ${WRKSRC}/LICENSE -USE_GITHUB= yes +USE_GITHUB= nodefault GH_ACCOUNT= lieff GH_TAGNAME= afb604c06bc8beb145fecd42c0ceb5bda8795144 -NO_BUILD= yes +EXTRACT_CMD= ${CP} +EXTRACT_BEFORE_ARGS= # +EXTRACT_AFTER_ARGS= ${WRKSRC} + NO_ARCH= yes +NO_BUILD= yes +NO_WRKSUBDIR= yes -PLIST_FILES= include/minimp3.h +PLIST_FILES= ${DISTFILES:M*.h:C|^|include/|} do-install: - ${INSTALL_DATA} ${WRKSRC}/minimp3.h ${STAGEDIR}${PREFIX}/include + ${INSTALL_DATA} ${DISTFILES:M*.h:C|^|${WRKSRC}/|} \ + ${STAGEDIR}${PREFIX}/include .include <bsd.port.mk> diff --git a/audio/minimp3/distinfo b/audio/minimp3/distinfo index 54ff4607f8f2..131e3139c940 100644 --- a/audio/minimp3/distinfo +++ b/audio/minimp3/distinfo @@ -1,3 +1,7 @@ -TIMESTAMP = 1653982911 -SHA256 (lieff-minimp3-g20211130-afb604c06bc8beb145fecd42c0ceb5bda8795144_GH0.tar.gz) = 21672c32aaac29cf4b7e6f8e0154767080ae87faa79c682498453e5a9bc5e0d3 -SIZE (lieff-minimp3-g20211130-afb604c06bc8beb145fecd42c0ceb5bda8795144_GH0.tar.gz) = 19743923 +TIMESTAMP = 1755080808 +SHA256 (minimp3-g20211130/LICENSE) = 6a1ee543e5282cd9061881edf462e6fdab181f328da71fc2c9a6950a80e94d01 +SIZE (minimp3-g20211130/LICENSE) = 6556 +SHA256 (minimp3-g20211130/minimp3.h) = 5fb296a790734772b65a5514438cc06d14f24e539c13475ff2a7f737681c82c0 +SIZE (minimp3-g20211130/minimp3.h) = 76802 +SHA256 (minimp3-g20211130/minimp3_ex.h) = bb001301b8666ea7a45ae057b62b17074483213b0d410555d97cc4d076e110df +SIZE (minimp3-g20211130/minimp3_ex.h) = 49511 diff --git a/audio/mmtc/Makefile b/audio/mmtc/Makefile index c975b89097c9..9d7acb499f76 100644 --- a/audio/mmtc/Makefile +++ b/audio/mmtc/Makefile @@ -1,7 +1,7 @@ PORTNAME= mmtc DISTVERSIONPREFIX= v DISTVERSION= 0.3.2 -PORTREVISION= 21 +PORTREVISION= 22 CATEGORIES= audio MAINTAINER= yuri@FreeBSD.org diff --git a/audio/mousai/Makefile b/audio/mousai/Makefile index 08ed64e3c1bd..75860fc0915e 100644 --- a/audio/mousai/Makefile +++ b/audio/mousai/Makefile @@ -1,7 +1,7 @@ PORTNAME= mousai DISTVERSIONPREFIX= v DISTVERSION= 0.7.8 -PORTREVISION= 7 +PORTREVISION= 8 CATEGORIES= audio MAINTAINER= ports@FreeBSD.org diff --git a/audio/mpdcon/Makefile b/audio/mpdcon/Makefile index 4203c59d66ed..19e85d6687ff 100644 --- a/audio/mpdcon/Makefile +++ b/audio/mpdcon/Makefile @@ -1,6 +1,6 @@ PORTNAME= mpdcon PORTVERSION= 1.5.1 -PORTREVISION= 12 +PORTREVISION= 13 CATEGORIES= audio gnustep MASTER_SITES= SAVANNAH/gap DISTNAME= MPDCon-${PORTVERSION} diff --git a/audio/mpg123.el/Makefile b/audio/mpg123.el/Makefile index fe91c45dc52c..c9d8eed5173c 100644 --- a/audio/mpg123.el/Makefile +++ b/audio/mpg123.el/Makefile @@ -1,6 +1,6 @@ PORTNAME= mpg123.el PORTVERSION= 1.65 -PORTREVISION= 3 +PORTREVISION= 4 CATEGORIES= audio elisp MASTER_SITES= http://www.gentei.org/~yuuji/software/mpg123el/ PKGNAMESUFFIX= ${EMACS_PKGNAMESUFFIX} diff --git a/audio/mpg123/Makefile b/audio/mpg123/Makefile index da5ddd38cd9e..c15869876019 100644 --- a/audio/mpg123/Makefile +++ b/audio/mpg123/Makefile @@ -1,5 +1,5 @@ PORTNAME= mpg123 -DISTVERSION= 1.33.1 +DISTVERSION= 1.33.2 CATEGORIES= audio MASTER_SITES= SF \ https://www.mpg123.de/download/ diff --git a/audio/mpg123/distinfo b/audio/mpg123/distinfo index f14b81abe2da..df6bddad5199 100644 --- a/audio/mpg123/distinfo +++ b/audio/mpg123/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1753717684 -SHA256 (mpg123-1.33.1.tar.bz2) = 1181f65eb3c8a0a8eed8b595a811988f53c82b0916b58d3c8cc9c3ced66f0312 -SIZE (mpg123-1.33.1.tar.bz2) = 1121415 +TIMESTAMP = 1754553011 +SHA256 (mpg123-1.33.2.tar.bz2) = 2c54fabbfa696dce8f9b137c8ef7a429a061f8fe633cd7d0a511809855f2c219 +SIZE (mpg123-1.33.2.tar.bz2) = 1121933 diff --git a/audio/mpg123/pkg-plist b/audio/mpg123/pkg-plist index 785f776c0545..98eee3d29a97 100644 --- a/audio/mpg123/pkg-plist +++ b/audio/mpg123/pkg-plist @@ -8,7 +8,7 @@ include/out123.h include/syn123.h lib/libmpg123.so lib/libmpg123.so.0 -lib/libmpg123.so.0.49.3 +lib/libmpg123.so.0.49.4 lib/libout123.so lib/libout123.so.0 lib/libout123.so.0.5.2 diff --git a/audio/murmur-cli/Makefile b/audio/murmur-cli/Makefile index bbf40bc5e62d..88ba68924254 100644 --- a/audio/murmur-cli/Makefile +++ b/audio/murmur-cli/Makefile @@ -1,6 +1,6 @@ PORTNAME= murmur-cli PORTVERSION= 0.0.0.20200528 -PORTREVISION= 27 +PORTREVISION= 28 CATEGORIES= audio MAINTAINER= ports@FreeBSD.org diff --git a/audio/musicpd/Makefile b/audio/musicpd/Makefile index d2671a5b23ab..11763eecfca1 100644 --- a/audio/musicpd/Makefile +++ b/audio/musicpd/Makefile @@ -1,5 +1,6 @@ PORTNAME= musicpd PORTVERSION= 0.24.5 +PORTREVISION= 1 CATEGORIES= audio MASTER_SITES= https://www.musicpd.org/download/mpd/${PORTVERSION:R}/ DISTNAME= mpd-${PORTVERSION} diff --git a/audio/myxer/Makefile b/audio/myxer/Makefile index b0a4832b1067..9d9ecc02018b 100644 --- a/audio/myxer/Makefile +++ b/audio/myxer/Makefile @@ -1,6 +1,6 @@ PORTNAME= myxer DISTVERSION= 1.3.0 -PORTREVISION= 12 +PORTREVISION= 13 CATEGORIES= audio MAINTAINER= yuri@FreeBSD.org diff --git a/audio/ncmpc/Makefile b/audio/ncmpc/Makefile index 89c3a1e7bb95..f8623a6c3eea 100644 --- a/audio/ncmpc/Makefile +++ b/audio/ncmpc/Makefile @@ -1,5 +1,6 @@ PORTNAME= ncmpc DISTVERSION= 0.51 +PORTREVISION= 1 CATEGORIES= audio MASTER_SITES= https://www.musicpd.org/download/ncmpc/0/ diff --git a/audio/ncspot/Makefile b/audio/ncspot/Makefile index 310915fc266b..541a3db4a9e4 100644 --- a/audio/ncspot/Makefile +++ b/audio/ncspot/Makefile @@ -1,6 +1,7 @@ PORTNAME= ncspot DISTVERSIONPREFIX= v DISTVERSION= 1.3.0 +PORTREVISION= 1 CATEGORIES= audio MAINTAINER= rodrigo@FreeBSD.org diff --git a/audio/netease-music-tui/Makefile b/audio/netease-music-tui/Makefile index bf5e4aede38b..c75eaf2629c4 100644 --- a/audio/netease-music-tui/Makefile +++ b/audio/netease-music-tui/Makefile @@ -1,7 +1,7 @@ PORTNAME= netease-music-tui DISTVERSIONPREFIX= v DISTVERSION= 0.1.5 -PORTREVISION= 23 +PORTREVISION= 24 CATEGORIES= audio MAINTAINER= yuri@FreeBSD.org diff --git a/audio/opustags/Makefile b/audio/opustags/Makefile index ff6c0d4f63d1..c685a0af6bf4 100644 --- a/audio/opustags/Makefile +++ b/audio/opustags/Makefile @@ -1,5 +1,6 @@ PORTNAME= opustags -DISTVERSION= 1.10.1 +DISTVERSION= 1.10.1-13 +DISTVERSIONSUFFIX= -g37deeb3 CATEGORIES= audio MAINTAINER= yuri@FreeBSD.org diff --git a/audio/opustags/distinfo b/audio/opustags/distinfo index 93f1dc45553d..bcacf1327bdd 100644 --- a/audio/opustags/distinfo +++ b/audio/opustags/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1716103247 -SHA256 (fmang-opustags-1.10.1_GH0.tar.gz) = 703096e9c41481e30ab90eefdd8fafc4c3a138998b3f8281aa4f023e7058bc86 -SIZE (fmang-opustags-1.10.1_GH0.tar.gz) = 41061 +TIMESTAMP = 1755938458 +SHA256 (fmang-opustags-1.10.1-13-g37deeb3_GH0.tar.gz) = eae0699a0baf6c86af09dae7f0c3741b287bf7371dc45c2527afe22688f38eea +SIZE (fmang-opustags-1.10.1-13-g37deeb3_GH0.tar.gz) = 42449 diff --git a/audio/piper/Makefile b/audio/piper/Makefile index c13f0322cc28..dc3ab75f4a64 100644 --- a/audio/piper/Makefile +++ b/audio/piper/Makefile @@ -1,5 +1,6 @@ PORTNAME= piper DISTVERSION= 2023.11.14 +PORTREVISION= 1 DISTVERSIONSUFFIX= -2 CATEGORIES= audio diff --git a/audio/pipewire-spa-oss/Makefile b/audio/pipewire-spa-oss/Makefile index f97764fe4f96..8d7b3f496385 100644 --- a/audio/pipewire-spa-oss/Makefile +++ b/audio/pipewire-spa-oss/Makefile @@ -1,6 +1,6 @@ PORTNAME= pipewire-spa-oss DISTVERSION= g20250416 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= audio MAINTAINER= arrowd@FreeBSD.org diff --git a/audio/plasma6-kpipewire/distinfo b/audio/plasma6-kpipewire/distinfo index f075eed8e9b0..4899a1c53c56 100644 --- a/audio/plasma6-kpipewire/distinfo +++ b/audio/plasma6-kpipewire/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1752584136 -SHA256 (KDE/plasma/6.4.3/kpipewire-6.4.3.tar.xz) = 1866d966ce61bb83ed1d45dcc0db1a8ba91971762681368a3357d86438fa9642 -SIZE (KDE/plasma/6.4.3/kpipewire-6.4.3.tar.xz) = 152816 +TIMESTAMP = 1754413343 +SHA256 (KDE/plasma/6.4.4/kpipewire-6.4.4.tar.xz) = 097f9971580cc7ce3bd89e73ced7606e3978347bd44131d6744fe02d8a1b3ea6 +SIZE (KDE/plasma/6.4.4/kpipewire-6.4.4.tar.xz) = 153612 diff --git a/audio/plasma6-ocean-sound-theme/distinfo b/audio/plasma6-ocean-sound-theme/distinfo index b756b3583069..7bcc6e8336e4 100644 --- a/audio/plasma6-ocean-sound-theme/distinfo +++ b/audio/plasma6-ocean-sound-theme/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1752584462 -SHA256 (KDE/plasma/6.4.3/ocean-sound-theme-6.4.3.tar.xz) = b3f8200026ef4be6023795db3d9aff2e4f86ac75d51fc0233ea269ba65428432 -SIZE (KDE/plasma/6.4.3/ocean-sound-theme-6.4.3.tar.xz) = 2128452 +TIMESTAMP = 1754413344 +SHA256 (KDE/plasma/6.4.4/ocean-sound-theme-6.4.4.tar.xz) = ddd87c9021947a5eff06e2f92566b9d81fe06ea444430745e896d647994e37eb +SIZE (KDE/plasma/6.4.4/ocean-sound-theme-6.4.4.tar.xz) = 2128952 diff --git a/audio/plasma6-oxygen-sounds/distinfo b/audio/plasma6-oxygen-sounds/distinfo index 16f3a2819e35..f1e468536f0a 100644 --- a/audio/plasma6-oxygen-sounds/distinfo +++ b/audio/plasma6-oxygen-sounds/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1752584213 -SHA256 (KDE/plasma/6.4.3/oxygen-sounds-6.4.3.tar.xz) = 440566f9a84c9ce90e04b561ab97909838b519c83f7deeb574d05c933baf2e2b -SIZE (KDE/plasma/6.4.3/oxygen-sounds-6.4.3.tar.xz) = 1935532 +TIMESTAMP = 1754413464 +SHA256 (KDE/plasma/6.4.4/oxygen-sounds-6.4.4.tar.xz) = 511b0d8a7a377677c2c0fd37d8d4d099dafb7fc74c34a2fa1dabbc327c8c5391 +SIZE (KDE/plasma/6.4.4/oxygen-sounds-6.4.4.tar.xz) = 1936584 diff --git a/audio/plasma6-plasma-pa/Makefile b/audio/plasma6-plasma-pa/Makefile index 0583338795cc..9bb3a3d3f51e 100644 --- a/audio/plasma6-plasma-pa/Makefile +++ b/audio/plasma6-plasma-pa/Makefile @@ -1,6 +1,5 @@ PORTNAME= plasma-pa DISTVERSION= ${KDE_PLASMA_VERSION} -PORTREVISION= 1 CATEGORIES= audio kde kde-plasma MAINTAINER= kde@FreeBSD.org diff --git a/audio/plasma6-plasma-pa/distinfo b/audio/plasma6-plasma-pa/distinfo index d055a8039b57..8c60e09cb95d 100644 --- a/audio/plasma6-plasma-pa/distinfo +++ b/audio/plasma6-plasma-pa/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1752584216 -SHA256 (KDE/plasma/6.4.3/plasma-pa-6.4.3.tar.xz) = 6b0e3d3ab469cf86fc18d211fcbf41251aa33a3014a32b77ec41905fd2fa4e21 -SIZE (KDE/plasma/6.4.3/plasma-pa-6.4.3.tar.xz) = 196748 +TIMESTAMP = 1754413466 +SHA256 (KDE/plasma/6.4.4/plasma-pa-6.4.4.tar.xz) = 2e18bb284a1cba07e43b19ae7a192b574aaef94bc635d751d1eb21fcd569ca8a +SIZE (KDE/plasma/6.4.4/plasma-pa-6.4.4.tar.xz) = 197432 diff --git a/audio/pt2-clone/Makefile b/audio/pt2-clone/Makefile index 33a37e38c70f..2273ebea82b4 100644 --- a/audio/pt2-clone/Makefile +++ b/audio/pt2-clone/Makefile @@ -1,5 +1,5 @@ PORTNAME= pt2-clone -PORTVERSION= 1.75 +PORTVERSION= 1.76 DISTVERSIONPREFIX= v CATEGORIES= audio MASTER_SITES= LOCAL/ehaupt:extras diff --git a/audio/pt2-clone/distinfo b/audio/pt2-clone/distinfo index f62bc97696e9..15110eb54b7e 100644 --- a/audio/pt2-clone/distinfo +++ b/audio/pt2-clone/distinfo @@ -1,5 +1,5 @@ -TIMESTAMP = 1747987384 +TIMESTAMP = 1756105975 SHA256 (pt2-clone-extras-2.tar.gz) = ddbac01034022f27860d85f4627b07223f9fd8f02a4ddefdc36467f2e3cacd0b SIZE (pt2-clone-extras-2.tar.gz) = 742 -SHA256 (8bitbubsy-pt2-clone-v1.75_GH0.tar.gz) = 5876673ec09bc99661a623d2c995615f6f114d3dd4e69932dc8a175927473df2 -SIZE (8bitbubsy-pt2-clone-v1.75_GH0.tar.gz) = 9160021 +SHA256 (8bitbubsy-pt2-clone-v1.76_GH0.tar.gz) = 515eddc686ff0c44f425cd03f5440437f07bec5c79ef654a6ebb750238648373 +SIZE (8bitbubsy-pt2-clone-v1.76_GH0.tar.gz) = 9162353 diff --git a/audio/py-auditok/Makefile b/audio/py-auditok/Makefile index 7045ca61b3e5..fa38fe700202 100644 --- a/audio/py-auditok/Makefile +++ b/audio/py-auditok/Makefile @@ -1,6 +1,6 @@ PORTNAME= auditok DISTVERSION= 0.3.0 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= audio python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/audio/py-music21/Makefile b/audio/py-music21/Makefile index 84c32e8be9ce..efd5879951ac 100644 --- a/audio/py-music21/Makefile +++ b/audio/py-music21/Makefile @@ -1,5 +1,6 @@ PORTNAME= music21 DISTVERSION= 9.5.0 +PORTREVISION= 1 CATEGORIES= audio python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/audio/py-pyliblo3/Makefile b/audio/py-pyliblo3/Makefile new file mode 100644 index 000000000000..39f1e02f4a62 --- /dev/null +++ b/audio/py-pyliblo3/Makefile @@ -0,0 +1,27 @@ +PORTNAME= pyliblo3 +DISTVERSION= 0.16.3 +CATEGORIES= audio python +MASTER_SITES= PYPI +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} + +PATCH_SITES= https://github.com/gesellkammer/pyliblo3/commit/ +PATCHFILES= 6b53ac0f1768f5f2f017b7011030ef6461366639.patch:-p1 + +MAINTAINER= vishwin@FreeBSD.org +COMMENT= Python wrapper for the liblo OSC library +WWW= https://github.com/gesellkammer/pyliblo3 + +LICENSE= LGPL21 +LICENSE_FILE= ${WRKSRC}/COPYING + +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=42:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR} +LIB_DEPENDS= liblo.so:audio/liblo + +USES= python +USE_PYTHON= autoplist concurrent cython3 pep517 + +post-patch: + @${REINPLACE_CMD} -e 's|%%PREFIX%%|${LOCALBASE}|g' ${WRKSRC}/setup.py + +.include <bsd.port.mk> diff --git a/audio/py-pyliblo3/distinfo b/audio/py-pyliblo3/distinfo new file mode 100644 index 000000000000..396d458dca9f --- /dev/null +++ b/audio/py-pyliblo3/distinfo @@ -0,0 +1,5 @@ +TIMESTAMP = 1752548078 +SHA256 (pyliblo3-0.16.3.tar.gz) = b5a43ec8857fefa4db9f007ace1c457479e2b8155ea13c614b2ec54d289ddca2 +SIZE (pyliblo3-0.16.3.tar.gz) = 25597 +SHA256 (6b53ac0f1768f5f2f017b7011030ef6461366639.patch) = e055299a3bde6f2e97173295fca63fc48527dab91001878b82b956f72b1139d6 +SIZE (6b53ac0f1768f5f2f017b7011030ef6461366639.patch) = 1570 diff --git a/audio/py-pyliblo3/files/patch-setup.py b/audio/py-pyliblo3/files/patch-setup.py new file mode 100644 index 000000000000..44d6ba423c47 --- /dev/null +++ b/audio/py-pyliblo3/files/patch-setup.py @@ -0,0 +1,16 @@ +--- setup.py.orig 2025-01-25 08:39:20 UTC ++++ setup.py +@@ -45,10 +45,10 @@ if platformname == 'darwin': + '-Werror-implicit-function-declaration', + '-Wfatal-errors' + ] +-elif platformname == 'linux': ++elif platformname == 'linux' or platformname == 'freebsd': + libraries.append('lo') +- include_dirs.extend(['/usr/include', '/usr/local/include']) +- library_dirs.append("/usr/local/lib") ++ include_dirs.extend(['/usr/include', '%%PREFIX%%/include']) ++ library_dirs.append("%%PREFIX%%/lib") + compile_args += [ + '-fno-strict-aliasing', + '-Werror-implicit-function-declaration', diff --git a/audio/py-pyliblo3/pkg-descr b/audio/py-pyliblo3/pkg-descr new file mode 100644 index 000000000000..115341b09268 --- /dev/null +++ b/audio/py-pyliblo3/pkg-descr @@ -0,0 +1,5 @@ +pyliblo is a Python wrapper for the liblo OSC library. It supports +almost the complete functionality of liblo, allowing you to send +and receive OSC messages using a nice and simple Python API. + +Also included are the command line utilities send_osc and dump_osc. diff --git a/audio/py-supysonic/Makefile b/audio/py-supysonic/Makefile index 0a94f63e1b2c..e3840a4d97e1 100644 --- a/audio/py-supysonic/Makefile +++ b/audio/py-supysonic/Makefile @@ -1,6 +1,6 @@ PORTNAME= supysonic DISTVERSION= 0.7.9 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= audio python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/audio/py-torchaudio/Makefile b/audio/py-torchaudio/Makefile index 7e9beec71003..0dabff5f6e6b 100644 --- a/audio/py-torchaudio/Makefile +++ b/audio/py-torchaudio/Makefile @@ -1,7 +1,7 @@ PORTNAME= torchaudio DISTVERSIONPREFIX= v -DISTVERSION= 2.2.1 -PORTREVISION= 9 +DISTVERSION= 2.8.0 +PORTREVISION= 3 CATEGORIES= audio python # machine-learning MASTER_SITES= https://downloads.sourceforge.net/project/sox/sox/14.4.2/:sox PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -10,7 +10,8 @@ EXTRACT_ONLY= ${GH_ACCOUNT}-${GH_PROJECT}-${DISTVERSIONFULL}_GH0.tar.gz MAINTAINER= yuri@FreeBSD.org COMMENT= PyTorch-based audio signal processing and machine learning library -WWW= https://pytorch.org/audio/stable/index.html +WWW= https://pytorch.org/audio/stable/index.html \ + https://github.com/pytorch/audio LICENSE= BSD2CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE @@ -34,6 +35,9 @@ USE_GITHUB= yes GH_ACCOUNT= pytorch GH_PROJECT= audio +# workaround for missing libsox.so, see https://github.com/pytorch/audio/issues/4062 +PLIST_FILES= lib/python${_PYTHON_VERSION}/site-packages/torchaudio/lib/libsox.so + post-patch: @${REINPLACE_CMD} \ -e 's| URL .*| URL file://${DISTDIR}/sox-14.4.2.tar.bz2|' \ @@ -45,5 +49,9 @@ post-install: torchaudio/lib/_torchaudio_sox.so \ torchaudio/lib/libtorchaudio.so \ torchaudio/lib/libtorchaudio_sox.so + # workaround for missing libsox.so, see https://github.com/pytorch/audio/issues/4062 + @${CP} \ + ${WRKSRC}/build/*/third_party/sox/libsox.so \ + ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}/torchaudio/lib .include <bsd.port.mk> diff --git a/audio/py-torchaudio/distinfo b/audio/py-torchaudio/distinfo index 089ecd6f17c1..0dc51780fdc7 100644 --- a/audio/py-torchaudio/distinfo +++ b/audio/py-torchaudio/distinfo @@ -1,5 +1,5 @@ -TIMESTAMP = 1709965762 +TIMESTAMP = 1755584345 SHA256 (sox-14.4.2.tar.bz2) = 81a6956d4330e75b5827316e44ae381e6f1e8928003c6aa45896da9041ea149c SIZE (sox-14.4.2.tar.bz2) = 935449 -SHA256 (pytorch-audio-v2.2.1_GH0.tar.gz) = 5f2a9cda9369ff348d1d7ca2c0a1f01afc9ebff1a13df9775c22aa5c43f5b0f1 -SIZE (pytorch-audio-v2.2.1_GH0.tar.gz) = 4498329 +SHA256 (pytorch-audio-v2.8.0_GH0.tar.gz) = 8809e4b0fa1635a89d5b05fe8e6e1db79fc0cc2052474ef6e76e349755827c12 +SIZE (pytorch-audio-v2.8.0_GH0.tar.gz) = 4510296 diff --git a/audio/quimup/Makefile b/audio/quimup/Makefile index 66b2f8334c59..d8240ca098fb 100644 --- a/audio/quimup/Makefile +++ b/audio/quimup/Makefile @@ -1,10 +1,10 @@ PORTNAME= quimup -DISTVERSION= 2.1.0 +DISTVERSION= 2.1.1 CATEGORIES= audio -MASTER_SITES= SF/${PORTNAME}/Quimup%20${PORTVERSION:R} +MASTER_SITES= SF/${PORTNAME}/Quimup%20${DISTVERSION} DISTNAME= Quimup-${PORTVERSION}.source -MAINTAINER= cmangin@arobas.net +MAINTAINER= cmanv@duck.com COMMENT= Qt client for MPD (Music Player Daemon) WWW= https://sourceforge.net/projects/quimup/ @@ -21,8 +21,14 @@ CXXFLAGS+= -std=c++17 DESKTOP_ENTRIES="Quimup" "MPD client" "quimup" "quimup" \ "Audio;AudioVideo;Qt;" true - -WRKSRC= ${WRKDIR}/Quimup-${PORTVERSION}.source +EXTRACT_AFTER_ARGS= --exclude RPM_DEB_build \ + --exclude Release \ + --exclude Screenshots \ + --exclude changelog \ + --exclude readme \ + --no-same-owner --no-same-permissions + +WRKSRC= ${WRKDIR}/Quimup-${DISTVERSION}.source PLIST_FILES= bin/quimup \ share/pixmaps/quimup.svg diff --git a/audio/quimup/distinfo b/audio/quimup/distinfo index 8871434740b4..e64586a5e50f 100644 --- a/audio/quimup/distinfo +++ b/audio/quimup/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1717511155 -SHA256 (Quimup-2.1.0.source.tar.gz) = 011c6ed2f9a0e1762ba7b0d6b987094d67aa7daecf1e4370d2d7a633e35e3e3a -SIZE (Quimup-2.1.0.source.tar.gz) = 697565 +TIMESTAMP = 1755221605 +SHA256 (Quimup-2.1.1.source.tar.gz) = 38efc5b3771ef4989ed47f8f8475caf2335f8e2650f0dee70d165c2eea9a3fea +SIZE (Quimup-2.1.1.source.tar.gz) = 2423998 diff --git a/audio/re/Makefile b/audio/re/Makefile index 57fe544d0483..56c5f384902d 100644 --- a/audio/re/Makefile +++ b/audio/re/Makefile @@ -1,11 +1,11 @@ PORTNAME= re DISTVERSIONPREFIX= v -DISTVERSION= 3.24.0 +DISTVERSION= 4.0.0 CATEGORIES= audio devel MAINTAINER= herbert@gojira.at COMMENT= Library for real-time comms with async IO support -WWW= https://github.com/baresip +WWW= https://github.com/baresip/re LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE diff --git a/audio/re/distinfo b/audio/re/distinfo index 98bb70c66729..79c8b22fab55 100644 --- a/audio/re/distinfo +++ b/audio/re/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1752268636 -SHA256 (baresip-re-v3.24.0_GH0.tar.gz) = 35cfe2cbb52095645334426b17585c080f3457fc1784eed173e54dd1eee41b76 -SIZE (baresip-re-v3.24.0_GH0.tar.gz) = 625022 +TIMESTAMP = 1754473657 +SHA256 (baresip-re-v4.0.0_GH0.tar.gz) = 7cef2b2b3cdbbd857cc12fdf429de1e74cb540e7cf9f1abc2dc5a90acee6b06a +SIZE (baresip-re-v4.0.0_GH0.tar.gz) = 624511 diff --git a/audio/re/pkg-plist b/audio/re/pkg-plist index aef6fa54d66d..e92f4e7df9a9 100644 --- a/audio/re/pkg-plist +++ b/audio/re/pkg-plist @@ -88,6 +88,6 @@ lib/cmake/libre/libre-targets.cmake lib/cmake/re/re-config.cmake lib/libre.a lib/libre.so -lib/libre.so.35 -lib/libre.so.35.24.0 +lib/libre.so.36 +lib/libre.so.36.0.0 libdata/pkgconfig/libre.pc diff --git a/audio/sayonara/Makefile b/audio/sayonara/Makefile index 4b32eb7b16b3..3176b0944625 100644 --- a/audio/sayonara/Makefile +++ b/audio/sayonara/Makefile @@ -1,7 +1,6 @@ PORTNAME= sayonara -DISTVERSION= 1.10.0 +DISTVERSION= 1.11.0 DISTVERSIONSUFFIX= -stable1 -PORTREVISION= 2 CATEGORIES= audio MAINTAINER= adridg@FreeBSD.org diff --git a/audio/sayonara/distinfo b/audio/sayonara/distinfo index 5ae6b2a67185..dac485140202 100644 --- a/audio/sayonara/distinfo +++ b/audio/sayonara/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1717362640 -SHA256 (sayonara-player-1.10.0-stable1.tar.bz2) = f4635796da02bfc67232459475806b0d52dc991b827fb11982a708504a500a6c -SIZE (sayonara-player-1.10.0-stable1.tar.bz2) = 1740393 +TIMESTAMP = 1756203949 +SHA256 (sayonara-player-1.11.0-stable1.tar.bz2) = d554d01155181527d155fb3c625ef9560bb8a466aa4d55481dbf587a84daffaf +SIZE (sayonara-player-1.11.0-stable1.tar.bz2) = 1890093 diff --git a/audio/sayonara/files/patch-cpp-compile b/audio/sayonara/files/patch-cpp-compile new file mode 100644 index 000000000000..ae8975b87232 --- /dev/null +++ b/audio/sayonara/files/patch-cpp-compile @@ -0,0 +1,109 @@ +diff --git src/Components/Covers/Fetcher/Audioscrobbler.cpp src/Components/Covers/Fetcher/Audioscrobbler.cpp +index 2490f8f4..7916ed16 100644 +--- src/Components/Covers/Fetcher/Audioscrobbler.cpp ++++ src/Components/Covers/Fetcher/Audioscrobbler.cpp +@@ -30,6 +30,8 @@ + #include <QStringList> + #include <QUrl> + ++#include <array> ++ + using Cover::Fetcher::Audioscrobbler; + + namespace +@@ -37,7 +39,7 @@ namespace + QStringList mapToStringList(const QMap<QString, QString>& map) + { + auto result = QStringList {}; +- const auto sizes = std::array {"mega", "extralarge", "large", "medium", "small"}; ++ const auto sizes = std::array<const char *, 5> {"mega", "extralarge", "large", "medium", "small"}; + for(const auto size: sizes) + { + result.push_back(map[size]); +diff --git src/Components/Engine/PipelineExtensions/Changeable.cpp src/Components/Engine/PipelineExtensions/Changeable.cpp +index 654a3c3c..2119e49d 100644 +--- src/Components/Engine/PipelineExtensions/Changeable.cpp ++++ src/Components/Engine/PipelineExtensions/Changeable.cpp +@@ -306,6 +306,12 @@ namespace + } + } + ++static Logger& operator<<(Logger& lhs, const EU::GStringAutoFree& s) ++{ ++ const auto * p = s.data(); ++ return lhs << (p ? p : "null"); ++} ++ + namespace PipelineExtensions::Changeable + { + // NOLINTNEXTLINE(*-make-member-function-const) +@@ -360,11 +366,11 @@ namespace PipelineExtensions::Changeable + auto parent = EU::AutoUnref(gst_element_get_parent(elementA)); + auto* parentElement = GST_ELEMENT(*parent); + const auto name = EU::GStringAutoFree(gst_element_get_name(element)); +- +- spLog(Log::Debug, __FUNCTION__) << "Remove " << name.data() << " from pipeline"; ++ ++ spLog(Log::Debug, __FUNCTION__) << "Remove " << name << " from pipeline"; + if(!EU::hasElement(GST_BIN(parentElement), element)) + { +- spLog(Log::Debug, __FUNCTION__) << "Element " << name.data() << " not in pipeline"; ++ spLog(Log::Debug, __FUNCTION__) << "Element " << name << " not in pipeline"; + return true; + } + +@@ -386,7 +392,7 @@ namespace PipelineExtensions::Changeable + + if(!success) + { +- spLog(Log::Debug, __FUNCTION__) << "Could not remove " << name.data(); ++ spLog(Log::Debug, __FUNCTION__) << "Could not remove " << name; + } + + return success; +@@ -428,4 +434,4 @@ namespace PipelineExtensions::Changeable + return success; + } + } +-#pragma clang diagnostic pop +\ No newline at end of file ++#pragma clang diagnostic pop +diff --git src/Components/Lyrics/LyricWebpageParser.cpp src/Components/Lyrics/LyricWebpageParser.cpp +index b5297b21..53b3b2dc 100644 +--- src/Components/Lyrics/LyricWebpageParser.cpp ++++ src/Components/Lyrics/LyricWebpageParser.cpp +@@ -27,6 +27,8 @@ + #include <QTextBlock> + #include <QTextDocument> + ++#include <array> ++ + using namespace Lyrics; + + namespace +diff --git src/Gui/InfoDialog/GUI_InfoDialog.cpp src/Gui/InfoDialog/GUI_InfoDialog.cpp +index 1752180a..709b8690 100644 +--- src/Gui/InfoDialog/GUI_InfoDialog.cpp ++++ src/Gui/InfoDialog/GUI_InfoDialog.cpp +@@ -47,6 +47,8 @@ + #include <QTabBar> + #include <QTableWidgetItem> + ++#include <unordered_map> ++ + namespace + { + enum StackedWidgetTab +diff --git src/Gui/Plugins/Engine/GUI_LevelPainter.cpp src/Gui/Plugins/Engine/GUI_LevelPainter.cpp +index 455051bb..98b3ee63 100644 +--- src/Gui/Plugins/Engine/GUI_LevelPainter.cpp ++++ src/Gui/Plugins/Engine/GUI_LevelPainter.cpp +@@ -185,7 +185,7 @@ void GUI_LevelPainter::paint() + + else + { +- m->steps[c][r] = std::max(m->steps[c][r] - 1, 0); ++ m->steps[c][r] = std::max(int(m->steps[c][r]) - 1, 0); + } + + if(m->steps[c][r] == 0) diff --git a/audio/sayonara/files/patch-python-compatible b/audio/sayonara/files/patch-python-compatible new file mode 100644 index 000000000000..9b48666a8e8b --- /dev/null +++ b/audio/sayonara/files/patch-python-compatible @@ -0,0 +1,74 @@ +diff --git src/DBus/sayonara-ctl src/DBus/sayonara-ctl +index 2fe80d48..3a5660a8 100755 +--- src/DBus/sayonara-ctl ++++ src/DBus/sayonara-ctl +@@ -4,11 +4,20 @@ + import sys + import argparse + ++# Either pydbus or dbus modules will do, and wrap their API ++# to get a bus-object with dbus_get_object() + try: + from pydbus import SessionBus ++ def dbus_get_object(bus, name, path): ++ return bus.get(name, path) + except ImportError as e: +- print("Cannot find pydbus module. Please install first") +- sys.exit(1) ++ try: ++ from dbus import SessionBus ++ def dbus_get_object(bus, name, path): ++ return bus.get_object(name, path) ++ except ImportError as e: ++ print("Cannot find pydbus or dbus module. Please install first") ++ sys.exit(1) + + def sgn(num): + if num > 0: +@@ -38,7 +47,8 @@ def main(): + bus = SessionBus() + try: + global gSayonaraInstance +- gSayonaraInstance = bus.get( ++ gSayonaraInstance = dbus_get_object( ++ bus, + "org.mpris.MediaPlayer2.sayonara", # Bus name + "/org/mpris/MediaPlayer2" # Object path + ) +diff --git src/DBus/sayonara-query src/DBus/sayonara-query +index f92a10e1..dcf7d735 100755 +--- src/DBus/sayonara-query ++++ src/DBus/sayonara-query +@@ -3,11 +3,20 @@ + import sys + import argparse + ++# Either pydbus or dbus modules will do, and wrap their API ++# to get a bus-object with dbus_get_object() + try: + from pydbus import SessionBus ++ def dbus_get_object(bus, name, path): ++ return bus.get(name, path) + except ImportError as e: +- print("Cannot find pydbus module. Please install first") +- sys.exit(1) ++ try: ++ from dbus import SessionBus ++ def dbus_get_object(bus, name, path): ++ return bus.get_object(name, path) ++ except ImportError as e: ++ print("Cannot find pydbus or dbus module. Please install first") ++ sys.exit(1) + + attributes = { + 'album': 'xesam:album', +@@ -77,7 +86,8 @@ def main(): + bus = SessionBus() + + try: +- sayonara = bus.get( ++ sayonara = dbus_get_object( ++ bus, + 'org.mpris.MediaPlayer2.sayonara', # Bus name + '/org/mpris/MediaPlayer2' # Object path + ) diff --git a/audio/sayonara/files/patch-src_Components_Covers_Fetcher_Audioscrobbler.cpp b/audio/sayonara/files/patch-src_Components_Covers_Fetcher_Audioscrobbler.cpp deleted file mode 100644 index ab2ed553fb5d..000000000000 --- a/audio/sayonara/files/patch-src_Components_Covers_Fetcher_Audioscrobbler.cpp +++ /dev/null @@ -1,20 +0,0 @@ ---- src/Components/Covers/Fetcher/Audioscrobbler.cpp.orig 2024-06-04 15:10:26 UTC -+++ src/Components/Covers/Fetcher/Audioscrobbler.cpp -@@ -30,6 +30,8 @@ - #include <QStringList> - #include <QUrl> - -+#include <array> -+ - using Cover::Fetcher::Audioscrobbler; - - namespace -@@ -37,7 +39,7 @@ namespace - QStringList mapToStringList(const QMap<QString, QString>& map) - { - auto result = QStringList {}; -- const auto sizes = std::array {"mega", "extralarge", "large", "medium", "small"}; -+ const auto sizes = std::array<char *, 5> {"mega", "extralarge", "large", "medium", "small"}; - for(const auto size: sizes) - { - result.push_back(map[size]); diff --git a/audio/sayonara/files/patch-src_Components_Lyrics_LyricWebpageParser.cpp b/audio/sayonara/files/patch-src_Components_Lyrics_LyricWebpageParser.cpp deleted file mode 100644 index 10a01bc6aadd..000000000000 --- a/audio/sayonara/files/patch-src_Components_Lyrics_LyricWebpageParser.cpp +++ /dev/null @@ -1,11 +0,0 @@ ---- src/Components/Lyrics/LyricWebpageParser.cpp.orig 2024-06-04 15:17:38 UTC -+++ src/Components/Lyrics/LyricWebpageParser.cpp -@@ -27,6 +27,8 @@ - #include <QTextBlock> - #include <QTextDocument> - -+#include <array> -+ - using namespace Lyrics; - - namespace diff --git a/audio/sayonara/files/patch-src_Components_Playlist_PlaylistModifiers.cpp b/audio/sayonara/files/patch-src_Components_Playlist_PlaylistModifiers.cpp deleted file mode 100644 index 10724e9ced95..000000000000 --- a/audio/sayonara/files/patch-src_Components_Playlist_PlaylistModifiers.cpp +++ /dev/null @@ -1,11 +0,0 @@ ---- src/Components/Playlist/PlaylistModifiers.cpp.orig 2024-06-04 19:25:08 UTC -+++ src/Components/Playlist/PlaylistModifiers.cpp -@@ -179,7 +179,7 @@ namespace Playlist - const auto& tracks = playlist.tracks(); - const auto durationMs = - std::accumulate(tracks.begin(), tracks.end(), 0, [](const auto timeMs, const auto& track) { -- return timeMs + std::max(0L, track.durationMs()); -+ return timeMs + std::max(MilliSeconds(0), track.durationMs()); - }); - - return durationMs; diff --git a/audio/sayonara/files/patch-src_DBus_sayonara-ctl b/audio/sayonara/files/patch-src_DBus_sayonara-ctl deleted file mode 100644 index 9b7d1b1b198c..000000000000 --- a/audio/sayonara/files/patch-src_DBus_sayonara-ctl +++ /dev/null @@ -1,20 +0,0 @@ ---- src/DBus/sayonara-ctl.orig 2024-06-11 21:55:30 UTC -+++ src/DBus/sayonara-ctl -@@ -5,7 +5,7 @@ import sys - import argparse - - try: -- from pydbus import SessionBus -+ from dbus import SessionBus - except ImportError as e: - print("Cannot find pydbus module. Please install first") - sys.exit(1) -@@ -38,7 +38,7 @@ def main(): - bus = SessionBus() - try: - global gSayonaraInstance -- gSayonaraInstance = bus.get( -+ gSayonaraInstance = bus.get_object( - "org.mpris.MediaPlayer2.sayonara", # Bus name - "/org/mpris/MediaPlayer2" # Object path - ) diff --git a/audio/sayonara/files/patch-src_DBus_sayonara-query b/audio/sayonara/files/patch-src_DBus_sayonara-query deleted file mode 100644 index 8f8baec0a714..000000000000 --- a/audio/sayonara/files/patch-src_DBus_sayonara-query +++ /dev/null @@ -1,20 +0,0 @@ ---- src/DBus/sayonara-query.orig 2024-06-11 21:55:30 UTC -+++ src/DBus/sayonara-query -@@ -4,7 +4,7 @@ import sys - import argparse - - try: -- from pydbus import SessionBus -+ from dbus import SessionBus - except ImportError as e: - print("Cannot find pydbus module. Please install first") - sys.exit(1) -@@ -77,7 +77,7 @@ def main(): - bus = SessionBus() - - try: -- sayonara = bus.get( -+ sayonara = bus.get_object( - 'org.mpris.MediaPlayer2.sayonara', # Bus name - '/org/mpris/MediaPlayer2' # Object path - ) diff --git a/audio/sayonara/files/patch-src_Gui_InfoDialog_GUI__InfoDialog.cpp b/audio/sayonara/files/patch-src_Gui_InfoDialog_GUI__InfoDialog.cpp deleted file mode 100644 index ba71d01e6eeb..000000000000 --- a/audio/sayonara/files/patch-src_Gui_InfoDialog_GUI__InfoDialog.cpp +++ /dev/null @@ -1,11 +0,0 @@ ---- src/Gui/InfoDialog/GUI_InfoDialog.cpp.orig 2024-05-13 19:42:03 UTC -+++ src/Gui/InfoDialog/GUI_InfoDialog.cpp -@@ -47,6 +47,8 @@ - #include <QTabBar> - #include <QTableWidgetItem> - -+#include <unordered_map> -+ - namespace - { - enum StackedWidgetTab diff --git a/audio/sayonara/files/patch-src_Utils_Tagging_MP4_PopularimeterFrame.cpp b/audio/sayonara/files/patch-src_Utils_Tagging_MP4_PopularimeterFrame.cpp deleted file mode 100644 index 3184afe67d16..000000000000 --- a/audio/sayonara/files/patch-src_Utils_Tagging_MP4_PopularimeterFrame.cpp +++ /dev/null @@ -1,18 +0,0 @@ ---- src/Utils/Tagging/MP4/PopularimeterFrame.cpp.orig 2024-01-27 22:05:38 UTC -+++ src/Utils/Tagging/MP4/PopularimeterFrame.cpp -@@ -22,13 +22,14 @@ - #include <QString> - #include "Tagging/TaggingUtils.h" - -+#include <array> - #include <optional> - - namespace - { - [[nodiscard]] int fourBytesToInteger(const int32_t fourBytes) - { -- const auto chars = std::array { -+ const auto chars = std::array<int32_t,3> { - (fourBytes >> 16) & 0xFF, - (fourBytes >> 8) & 0xFF, - (fourBytes & 0xFF) diff --git a/audio/sdl_audiolib/Makefile b/audio/sdl_audiolib/Makefile index baf85bc72180..156b9cea24de 100644 --- a/audio/sdl_audiolib/Makefile +++ b/audio/sdl_audiolib/Makefile @@ -1,6 +1,6 @@ PORTNAME= sdl_audiolib PORTVERSION= git20220713 -PORTREVISION= 7 +PORTREVISION= 8 CATEGORIES= audio MAINTAINER= amdmi3@FreeBSD.org diff --git a/audio/shortwave/Makefile b/audio/shortwave/Makefile index 7b84b067b80b..6ec9c69242a2 100644 --- a/audio/shortwave/Makefile +++ b/audio/shortwave/Makefile @@ -1,6 +1,6 @@ PORTNAME= shortwave DISTVERSION= 5.0.0 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= audio MAINTAINER= decke@FreeBSD.org diff --git a/audio/songrec/Makefile b/audio/songrec/Makefile index 7db9e8f361b1..1ceae54d0f5b 100644 --- a/audio/songrec/Makefile +++ b/audio/songrec/Makefile @@ -1,6 +1,6 @@ PORTNAME= songrec DISTVERSION= 0.4.3 -PORTREVISION= 9 +PORTREVISION= 10 CATEGORIES= audio MAINTAINER= yuri@FreeBSD.org diff --git a/audio/sonicradio/Makefile b/audio/sonicradio/Makefile index 25d6d4337fd8..4d0c2d0f78b7 100644 --- a/audio/sonicradio/Makefile +++ b/audio/sonicradio/Makefile @@ -1,6 +1,6 @@ PORTNAME= sonicradio DISTVERSIONPREFIX= v -DISTVERSION= 0.7.2 +DISTVERSION= 0.7.5 CATEGORIES= audio MAINTAINER= nivit@FreeBSD.org diff --git a/audio/sonicradio/distinfo b/audio/sonicradio/distinfo index b2f779c2eeb5..603cdc40b49d 100644 --- a/audio/sonicradio/distinfo +++ b/audio/sonicradio/distinfo @@ -1,5 +1,5 @@ -TIMESTAMP = 1753178186 -SHA256 (go/audio_sonicradio/sonicradio-v0.7.2/v0.7.2.mod) = e13d7c88d2c94f14eec5b9f603bc5ded2e13d9baab8eab44849479c58f0bdd6d -SIZE (go/audio_sonicradio/sonicradio-v0.7.2/v0.7.2.mod) = 1197 -SHA256 (go/audio_sonicradio/sonicradio-v0.7.2/v0.7.2.zip) = a12258a0aaccbd04f7f8573c45cd0c7edac0e3658e5d53859752ebf698f43df1 -SIZE (go/audio_sonicradio/sonicradio-v0.7.2/v0.7.2.zip) = 1263955 +TIMESTAMP = 1756449200 +SHA256 (go/audio_sonicradio/sonicradio-v0.7.5/v0.7.5.mod) = e13d7c88d2c94f14eec5b9f603bc5ded2e13d9baab8eab44849479c58f0bdd6d +SIZE (go/audio_sonicradio/sonicradio-v0.7.5/v0.7.5.mod) = 1197 +SHA256 (go/audio_sonicradio/sonicradio-v0.7.5/v0.7.5.zip) = 22471313420adc7e82930d18463373a6bded7bb29c3b667c79e8f6f8c04fc907 +SIZE (go/audio_sonicradio/sonicradio-v0.7.5/v0.7.5.zip) = 1264258 diff --git a/audio/spotify-player/Makefile b/audio/spotify-player/Makefile index 3b7711881e16..6dd71d024fff 100644 --- a/audio/spotify-player/Makefile +++ b/audio/spotify-player/Makefile @@ -1,7 +1,7 @@ PORTNAME= spotify-player DISTVERSIONPREFIX= v DISTVERSION= 0.20.4 -PORTREVISION= 4 +PORTREVISION= 5 CATEGORIES= audio MAINTAINER= jfree@FreeBSD.org diff --git a/audio/spotify-tui/Makefile b/audio/spotify-tui/Makefile index d63ae268cce1..dc1f645154e2 100644 --- a/audio/spotify-tui/Makefile +++ b/audio/spotify-tui/Makefile @@ -1,7 +1,7 @@ PORTNAME= spotify-tui DISTVERSIONPREFIX= v DISTVERSION= 0.25.0 -PORTREVISION= 37 +PORTREVISION= 38 CATEGORIES= audio MAINTAINER= lcook@FreeBSD.org @@ -11,6 +11,9 @@ WWW= https://github.com/Rigellute/spotify-tui LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE +DEPRECATED= dead upstream and doesn't build +EXPIRATION_DATE=2025-09-30 + USES= cargo localbase:ldflags python:build ssl xorg USE_GITHUB= yes GH_ACCOUNT= Rigellute diff --git a/audio/spotifyd/Makefile b/audio/spotifyd/Makefile index ab404cb08f2a..7ce3bb485d65 100644 --- a/audio/spotifyd/Makefile +++ b/audio/spotifyd/Makefile @@ -1,7 +1,7 @@ PORTNAME= spotifyd DISTVERSIONPREFIX= v DISTVERSION= 0.4.1 -PORTREVISION= 3 +PORTREVISION= 4 CATEGORIES= audio MAINTAINER= rodrigo@FreeBSD.org diff --git a/audio/strawberry/Makefile b/audio/strawberry/Makefile index b81d76e12bfa..33cae521585d 100644 --- a/audio/strawberry/Makefile +++ b/audio/strawberry/Makefile @@ -1,5 +1,6 @@ PORTNAME= strawberry -DISTVERSION= 1.2.11 +DISTVERSION= 1.2.12 +PORTREVISION= 1 CATEGORIES= audio MASTER_SITES= https://github.com/strawberrymusicplayer/${PORTNAME}/releases/download/${DISTVERSION}/ diff --git a/audio/strawberry/distinfo b/audio/strawberry/distinfo index b1012bdfa31e..d7f67a8994c0 100644 --- a/audio/strawberry/distinfo +++ b/audio/strawberry/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1750150492 -SHA256 (strawberry-1.2.11.tar.xz) = 87530e9601bd39b8cabcff529fbd7dbe0361aa8e7efc55931709345af7f9df43 -SIZE (strawberry-1.2.11.tar.xz) = 11458100 +TIMESTAMP = 1755227817 +SHA256 (strawberry-1.2.12.tar.xz) = 95c1e6717852a144ed550b2e8250895ce38ba7a8629188fa34a6fb9d3d16575d +SIZE (strawberry-1.2.12.tar.xz) = 11476028 diff --git a/audio/supercollider/Makefile b/audio/supercollider/Makefile index d40d4d7ccf12..f7c26016284e 100644 --- a/audio/supercollider/Makefile +++ b/audio/supercollider/Makefile @@ -1,7 +1,8 @@ PORTNAME= supercollider -DISTVERSION= 3.13.1-g20250219 -PORTREVISION= 1 +DISTVERSION= 3.14.0 CATEGORIES= audio +MASTER_SITES= https://github.com/${PORTNAME}/${PORTNAME}/releases/download/Version-${DISTVERSION}/ +DISTNAME= SuperCollider-${DISTVERSION}-Source MAINTAINER= ports@nicandneal.net COMMENT= Programming language for real time audio synthesis @@ -10,55 +11,54 @@ WWW= https://supercollider.github.io LICENSE= GPLv3 LICENSE_FILE= ${WRKSRC}/COPYING +BUILD_DEPENDS= ${LOCALBASE}/include/fftw3.h:math/fftw3 \ + vulkan-headers>0:graphics/vulkan-headers + LIB_DEPENDS= libboost_system.so:devel/boost-libs \ libjack.so:audio/jack \ libsndfile.so:audio/libsndfile \ libfftw3f.so:math/fftw3-float \ libyaml-cpp.so:devel/yaml-cpp -USES= cmake compiler:c++11-lang iconv localbase pkgconfig \ - qt:5 readline shared-mime-info tar:bzip2 xorg -USE_GITHUB= yes -GH_TAGNAME= 066ef94c70903c440e010eb81d4ac6e85bb2d84c -GH_TUPLE= timblechmann:nova-simd:2bdc68bc5704a42578300a4c18411df2405cb307:novasimd/external_libraries/nova-simd \ - timblechmann:nova-tt:692a8859fb94030f581b8a3d626a5f40c236114e:novatt/external_libraries/nova-tt \ - supercollider:hidapi:hidapi-sc-0.8.0-10-g976cb11:hidapi/external_libraries/hidapi \ - supercollider:yaml-cpp:release-0.5.3-35-g728e26e:yamlcpp/external_libraries/yaml-cpp \ - ableton:link:Link-3.0.6:link/external_libraries/link:link -USE_QT_amd64= webengine -USE_QT_i386= webengine -USE_QT= buildtools:build concurrent core declarative gui linguisttools location \ - network opengl printsupport qmake:build sensors \ - sql widgets websockets webchannel svg ${USE_QT_${ARCH}} -USE_XORG= x11 +USES= cmake compiler:c++11-lang gl iconv localbase pkgconfig qt:6 \ + readline shared-mime-info tar:bzip2 xorg +USE_GL= opengl USE_LDCONFIG= yes +USE_QT= base svg tools +USE_XORG= x11 xt -CMAKE_ARGS_nox86= -DSSE:BOOL=FALSE \ - -DSSE2:BOOL=FALSE \ - -DSC_USE_QTWEBENGINE:BOOL=FALSE -CMAKE_ARGS= -DCMAKE_PREFIX_PATH=${LOCALBASE}/lib/qt5 \ +CMAKE_ARGS= -DCMAKE_PREFIX_PATH=${LOCALBASE}/lib/qt6 \ -DLIBUSB_1_INCLUDE_DIR=/usr/include \ - -DLIBUSB_1_LIBRARY=/usr/lib/libusb.so \ - -DLIBSCSYNTH=ON \ - -DSYSTEM_BOOST=ON \ - -DSYSTEM_YAMLCPP=ON \ - -DSC_ABLETON_LINK=OFF \ - ${ARCH:Namd64:Ni386:C/.*/${CMAKE_ARGS_nox86}/} + -DLIBUSB_1_LIBRARY=/usr/lib/libusb.so +CMAKE_ON= LIBSCSYNTH \ + SC_QT \ + SYSTEM_BOOST \ + SYSTEM_YAMLCPP +CMAKE_OFF= SC_ABLETON_LINK -DESKTOP_ENTRIES="SuperCollider IDE" "" "${LOCALBASE}/share/pixmaps/sc_ide.svg" \ +DESKTOP_ENTRIES="SuperCollider IDE" "" "${PREFIX}/share/pixmaps/sc_ide.svg" \ "scide" "" false -OPTIONS_DEFINE= AVAHI HELP SUPERNOVA -OPTIONS_DEFAULT= AVAHI HELP SUPERNOVA -OPTIONS_SUB= yes +OPTIONS_DEFINE= AVAHI DOCS SUPERNOVA WEBENGINE +OPTIONS_DEFINE_amd64= SSE2 SSE +OPTIONS_DEFINE_i386= SSE2 SSE +OPTIONS_DEFAULT= AVAHI SUPERNOVA +OPTIONS_DEFAULT_amd64= SSE2 SSE WEBENGINE +OPTIONS_DEFAULT_i386= QTWEBENGINE +OPTIONS_SUB= yes -HELP_DESC= Install on-line help text -SUPERNOVA_DESC= Build with supernova as optional audio synthesis server +DOCS_DESC= Install on-line help text +SSE2_DESC= ${SSE_DESC:S|SSE|SSE2|} +SUPERNOVA_DESC= Build with supernova as optional audio synthesis server AVAHI_LIB_DEPENDS= libavahi-client.so:net/avahi-app \ libavahi-common.so:net/avahi-app AVAHI_CMAKE_BOOL_OFF= NO_AVAHI -HELP_CMAKE_BOOL= INSTALL_HELP +DOCS_CMAKE_BOOL= INSTALL_HELP +SSE2_CMAKE_BOOL= SSE2 +SSE_CMAKE_BOOL= SSE SUPERNOVA_CMAKE_BOOL= SUPERNOVA +WEBENGINE_USE= qt=declarative,positioning,webengine,webchannel,websockets +WEBENGINE_CMAKE_BOOL= SC_USE_QTWEBENGINE .include <bsd.port.mk> diff --git a/audio/supercollider/distinfo b/audio/supercollider/distinfo index ac8385dfbaf3..3a9acf940b7c 100644 --- a/audio/supercollider/distinfo +++ b/audio/supercollider/distinfo @@ -1,13 +1,3 @@ -TIMESTAMP = 1740092854 -SHA256 (supercollider-supercollider-3.13.1-g20250219-066ef94c70903c440e010eb81d4ac6e85bb2d84c_GH0.tar.gz) = c2404c4da6546700405444c55d3e726b4299936b3e3f044c48673c1bd6acf666 -SIZE (supercollider-supercollider-3.13.1-g20250219-066ef94c70903c440e010eb81d4ac6e85bb2d84c_GH0.tar.gz) = 16401696 -SHA256 (timblechmann-nova-simd-2bdc68bc5704a42578300a4c18411df2405cb307_GH0.tar.gz) = df9f280daaad56fdadb5fa75d492ee6a06762a41d7346aa473aa49c1ac9ec9c8 -SIZE (timblechmann-nova-simd-2bdc68bc5704a42578300a4c18411df2405cb307_GH0.tar.gz) = 53005 -SHA256 (timblechmann-nova-tt-692a8859fb94030f581b8a3d626a5f40c236114e_GH0.tar.gz) = a3e40d2cdf06dc6b29a6e1f3353c371dc3dc7ca08fe475697cc9659702ebc178 -SIZE (timblechmann-nova-tt-692a8859fb94030f581b8a3d626a5f40c236114e_GH0.tar.gz) = 31253 -SHA256 (supercollider-hidapi-hidapi-sc-0.8.0-10-g976cb11_GH0.tar.gz) = ccdea1468120976205719865218919c83cc8dd9505ed58dfd6890743720e79d2 -SIZE (supercollider-hidapi-hidapi-sc-0.8.0-10-g976cb11_GH0.tar.gz) = 147854 -SHA256 (supercollider-yaml-cpp-release-0.5.3-35-g728e26e_GH0.tar.gz) = b84cda403e26fc64e4973e907413b40c43a7e1485f2c223ed30a1a387cf0dae4 -SIZE (supercollider-yaml-cpp-release-0.5.3-35-g728e26e_GH0.tar.gz) = 2022032 -SHA256 (ableton-link-Link-3.0.6_GH0.tar.gz) = 4f4fae68bd9351cba603f07990b0d1d9cd7f986c1c78f748d97168c8ae5269b2 -SIZE (ableton-link-Link-3.0.6_GH0.tar.gz) = 1905749 +TIMESTAMP = 1753803284 +SHA256 (SuperCollider-3.14.0-Source.tar.bz2) = ab710e84376f5c082c92fcea7465b85d375934f3da7deed583457a0a48b0a918 +SIZE (SuperCollider-3.14.0-Source.tar.bz2) = 20936611 diff --git a/audio/supercollider/files/patch-common_SC__AppleEventLoop.mm b/audio/supercollider/files/patch-common_SC__AppleEventLoop.mm deleted file mode 100644 index d0505523b8ae..000000000000 --- a/audio/supercollider/files/patch-common_SC__AppleEventLoop.mm +++ /dev/null @@ -1,83 +0,0 @@ ---- common/SC_AppleEventLoop.mm.orig 2021-04-22 03:41:58 UTC -+++ common/SC_AppleEventLoop.mm -@@ -0,0 +1,80 @@ -+/************************************************************************ -+ * -+ * Copyright 2019 Christof Ressi <info@christofressi.com> -+ * -+ * This program is free software: you can redistribute it and/or modify -+ * it under the terms of the GNU General Public License as published by -+ * the Free Software Foundation, either version 2 of the License, or -+ * (at your option) any later version. -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * along with this program. If not, see <http://www.gnu.org/licenses/>. -+ * -+ ************************************************************************/ -+ -+#include "SC_AppleEventLoop.hpp" -+#include <atomic> -+ -+#import <Cocoa/Cocoa.h> -+ -+namespace SC { namespace Apple { namespace EventLoop { -+ -+static std::atomic_bool g_running; -+ -+void setup() { -+ // The following code would transform the process into a foreground application. -+ // For now it's the plugin's responsibility to do this (early or lazily) -+ // because we don't want to always show an icon in the docker. -+ // ProcessSerialNumber psn = { 0, kCurrentProcess }; -+ // TransformProcessType(&psn, kProcessTransformToForegroundApplication); -+ -+ // Create NSApplication -+ [NSApplication sharedApplication]; -+} -+ -+void run() { -+ // this doesn't work... -+ // [NSApp run]; -+ // Kudos to https://www.cocoawithlove.com/2009/01/demystifying-nsapplication-by.html -+ NSAutoreleasePool* pool = [[NSAutoreleasePool alloc] init]; -+ -+ [NSApp finishLaunching]; -+ g_running = true; -+ -+ while (g_running) { -+ [pool release]; -+ pool = [[NSAutoreleasePool alloc] init]; -+ NSEvent* event = [NSApp nextEventMatchingMask:NSAnyEventMask -+ untilDate:[NSDate distantFuture] -+ inMode:NSDefaultRunLoopMode -+ dequeue:YES]; -+ if (event) { -+ [NSApp sendEvent:event]; -+ [NSApp updateWindows]; -+ } -+ } -+ [pool release]; -+} -+ -+void quit() { -+ // break from event loop instead of [NSApp terminate:nil] -+ g_running = false; -+ // send dummy event to wake up event loop -+ NSEvent* event = [NSEvent otherEventWithType:NSApplicationDefined -+ location:NSMakePoint(0, 0) -+ modifierFlags:0 -+ timestamp:0 -+ windowNumber:0 -+ context:nil -+ subtype:0 -+ data1:0 -+ data2:0]; -+ [NSApp postEvent:event atStart:NO]; -+} -+ -+}}} // namespace SC::Apple::EventLoop diff --git a/audio/supercollider/files/patch-external__libraries_nova-simd_vec_vec__int__altivec.hpp b/audio/supercollider/files/patch-external__libraries_nova-simd_vec_vec__int__altivec.hpp index deb9992d2aaa..7f9b2870d5af 100644 --- a/audio/supercollider/files/patch-external__libraries_nova-simd_vec_vec__int__altivec.hpp +++ b/audio/supercollider/files/patch-external__libraries_nova-simd_vec_vec__int__altivec.hpp @@ -1,6 +1,6 @@ ---- external_libraries/nova-simd/vec/vec_int_altivec.hpp.orig 2020-09-03 23:55:08.848538000 +0200 -+++ external_libraries/nova-simd/vec/vec_int_altivec.hpp 2020-09-03 23:58:16.614642000 +0200 -@@ -35,7 +35,7 @@ +--- external_libraries/nova-simd/vec/vec_int_altivec.hpp.orig 2025-07-26 19:07:55 UTC ++++ external_libraries/nova-simd/vec/vec_int_altivec.hpp +@@ -35,7 +35,7 @@ struct int_vec_altivec (private) static ivec set_vector(int i) { #ifdef __GNUC__ diff --git a/audio/supercollider/files/patch-server_supernova_utilities_hardware__topology.cpp b/audio/supercollider/files/patch-server_supernova_utilities_hardware__topology.cpp index 18eb0c75280b..af9df51086c4 100644 --- a/audio/supercollider/files/patch-server_supernova_utilities_hardware__topology.cpp +++ b/audio/supercollider/files/patch-server_supernova_utilities_hardware__topology.cpp @@ -1,4 +1,4 @@ ---- server/supernova/utilities/hardware_topology.cpp.orig 2025-02-20 15:13:49 UTC +--- server/supernova/utilities/hardware_topology.cpp.orig 2025-07-26 19:07:45 UTC +++ server/supernova/utilities/hardware_topology.cpp @@ -20,6 +20,7 @@ # include <windows.h> diff --git a/audio/supercollider/pkg-plist b/audio/supercollider/pkg-plist index abc7924bdf0b..d5ede72afef4 100644 --- a/audio/supercollider/pkg-plist +++ b/audio/supercollider/pkg-plist @@ -114,1239 +114,1248 @@ share/SuperCollider/HID_Support/hut/hut_64_medical_instrument.yaml share/SuperCollider/HID_Support/hut/hut_6_generic_device.yaml share/SuperCollider/HID_Support/hut/hut_7_keyboard_keypad.yaml share/SuperCollider/HID_Support/hut/hut_8_ledpage.yaml -%%HELP%%share/SuperCollider/HelpSource/BrokenLink.html -%%HELP%%share/SuperCollider/HelpSource/Browse.html -%%HELP%%share/SuperCollider/HelpSource/Classes/.placeholder -%%HELP%%share/SuperCollider/HelpSource/Classes/A2K.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/APF.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/AbstractDispatcher.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/AbstractFunction.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/AbstractGridLines.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/AbstractIn.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/AbstractMessageMatcher.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/AbstractOut.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/AbstractResponderFunc.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/AbstractServerAction.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/AbstractSystemAction.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/AbstractWrappingDispatcher.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/AllpassC.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/AllpassL.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/AllpassN.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/AmpComp.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/AmpCompA.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Amplitude.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/AnalogIn.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/AnalogOut.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/AppClock.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ApplicationStart.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Archive.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Array.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Array2D.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ArrayedCollection.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Association.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/AudioIn.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BAllPass.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BBandPass.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BBandStop.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BEQSuite.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BHiPass.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BHiPass4.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BHiShelf.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BLowPass.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BLowPass4.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BLowShelf.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BPF.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BPZ2.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BPeakEQ.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BRF.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BRZ2.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Bag.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Balance2.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Ball.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BasicOpUGen.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BeatTrack.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BeatTrack2.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BelaScope.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BelaScopeOut.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BendResponder.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BiPanB2.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BinaryOpFunction.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BinaryOpStream.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BinaryOpUGen.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Blip.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Boolean.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BrownNoise.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BufAllpassC.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BufAllpassL.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BufAllpassN.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BufChannels.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BufCombC.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BufCombL.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BufCombN.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BufDelayC.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BufDelayL.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BufDelayN.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BufDur.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BufFrames.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BufInfoUGenBase.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BufRateScale.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BufRd.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BufSampleRate.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BufSamples.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BufWr.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Buffer.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Bus.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/BusPlug.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Button.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/CCResponder.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/COsc.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/CSVFileReader.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/CallOnce.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Changed.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ChaosGen.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Char.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/CheckBadValues.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/CheckBox.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Class.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Clip.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ClipNoise.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Clock.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/CmdPeriod.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/CoinGate.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Collection.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Color.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/CombC.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/CombL.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/CombN.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Compander.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/CompanderD.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Complex.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/CompositeView.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/CondVar.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Condition.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ContiguousBlockAllocator.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Control.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ControlDur.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ControlName.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ControlRate.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ControlSpec.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Convolution.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Convolution2.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Convolution2L.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Convolution3.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Crackle.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/CuspL.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/CuspN.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/CustomViewAction.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/DC.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Date.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Dbrown.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Dbufrd.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Dbufwr.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Dconst.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Ddup.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/DebugFrame.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/DebugNodeWatcher.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Decay.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Decay2.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/DecodeB2.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/DegreeToKey.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/DelTapRd.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/DelTapWr.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Delay1.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Delay2.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/DelayC.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/DelayL.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/DelayN.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Demand.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/DemandEnvGen.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/DetectIndex.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/DetectSilence.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Dgeom.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Dialog.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Dibrown.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Dictionary.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/DigitalIO.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/DigitalIn.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/DigitalOut.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/DiskIn.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/DiskOut.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Diwhite.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Document.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/DoesNotUnderstandError.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Done.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/DoubleArray.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Download.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Dpoll.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/DragBoth.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/DragSink.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/DragSource.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Drand.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/DrawGrid.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Dreset.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Dseq.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Dser.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Dseries.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Dshuf.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Dstutter.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Dswitch.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Dswitch1.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Dunique.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Dust.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Dust2.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Duty.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Dwhite.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Dwrand.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Dxrand.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/DynKlang.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/DynKlank.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/EZGui.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/EZKnob.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/EZListView.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/EZLists.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/EZNumber.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/EZPopUpMenu.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/EZRanger.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/EZScroller.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/EZSlider.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/EZText.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/EmacsDocument.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Env.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/EnvGate.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/EnvGen.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/EnvelopeView.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/EnvirGui.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Environment.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/EnvironmentRedirect.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Error.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Event-default-note.png -%%HELP%%share/SuperCollider/HelpSource/Classes/Event.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/EventPatternProxy.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/EventStreamCleanup.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/EventStreamPlayer.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Exception.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ExpRand.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ExponentialGridLines.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/FBSineC.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/FBSineL.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/FBSineN.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/FFT.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/FFTTrigger.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/FOS.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/FSinOsc.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/False.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Fdef.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/File.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/FileDialog.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/FileReader.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Filter.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/FilterPattern.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Float.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/FloatArray.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/FlowLayout.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/FlowVar.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/FlowView.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Fold.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/FoldIndex.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Font.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Formant.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Formlet.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Frame.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Free.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/FreeSelf.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/FreeSelfWhenDone.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/FreeVerb.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/FreeVerb2.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/FreqScope.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/FreqScopeView.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/FreqShift.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/FuncFilterPattern.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/FuncStream.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Function.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/FunctionDef.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/FunctionList.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/GUI.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/GVerb.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Gate.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/GbmanL.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/GbmanN.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Gendy1.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Gendy2.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Gendy3.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Git.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Gradient.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/GrainBuf.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/GrainFM.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/GrainIn.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/GrainSin.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/GrayNoise.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/GridLayout.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/GridLines.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Group.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/HID.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/HIDCollection.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/HIDElement.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/HIDElementProto.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/HIDFunc.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/HIDInfo.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/HIDProto.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/HIDUsage.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/HIDdef.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/HLayout.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/HLayoutView.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/HPF.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/HPZ1.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/HPZ2.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Harmonics.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Hasher.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/HelpBrowser.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/HenonC.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/HenonL.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/HenonN.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Hilbert.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/HilbertFIR.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/HiliteGradient.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/History.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/HistoryGui.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/IEnvGen.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/IFFT.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/IODesc.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/IRand.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/IdentityBag.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/IdentityDictionary.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/IdentityDictionary_01.png -%%HELP%%share/SuperCollider/HelpSource/Classes/IdentityDictionary_02.png -%%HELP%%share/SuperCollider/HelpSource/Classes/IdentityDictionary_03.png -%%HELP%%share/SuperCollider/HelpSource/Classes/IdentityDictionary_04.png -%%HELP%%share/SuperCollider/HelpSource/Classes/IdentitySet.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Image.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Impulse.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/In.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/InBus.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/InFeedback.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/InRange.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/InRect.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/InTrig.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Index.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/IndexInBetween.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/IndexL.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/InfoUGenBase.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Int16Array.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Int32Array.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Int8Array.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Integer.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Integrator.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/InterplEnv.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/InterplPairs.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/InterplXYC.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Interpreter.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Interval.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/JITGui.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/K2A.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/KeyState.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/KeyTrack.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Klang.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Klank.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Knob.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LFClipNoise.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LFCub.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LFDClipNoise.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LFDNoise0.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LFDNoise1.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LFDNoise3.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LFGauss.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LFNoise0.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LFNoise1.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LFNoise2.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LFPar.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LFPulse.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LFSaw.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LFTri.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LID.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LIDGui.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LIDInfo.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LIDSlot.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LPF.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LPZ1.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LPZ2.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Lag.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Lag2.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Lag2UD.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Lag3.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Lag3UD.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LagControl.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LagIn.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LagUD.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LanguageConfig.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LastValue.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Latch.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LatoocarfianC.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LatoocarfianL.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LatoocarfianN.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Layout.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LazyEnvir.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LeakDC.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LeastChange.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LevelIndicator.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Library.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LibraryBase.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Limiter.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LinCongC.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LinCongL.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LinCongN.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LinExp.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LinLin.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LinPan2.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LinRand.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LinSelectX.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LinXFade2.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Line.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LineLayout.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LinearGridLines.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Linen.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LinkClock.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LinkedList.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LinkedListNode.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LinuxPlatform.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/List.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ListPattern.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ListView.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LocalBuf.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LocalIn.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LocalOut.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Logistic.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/LorenzL.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Loudness.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/MFCC.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/MIDIClient.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/MIDIFunc.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/MIDIFuncBothCAMessageMatcher.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/MIDIFuncBothMessageMatcher.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/MIDIFuncChanArrayMessageMatcher.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/MIDIFuncChanMessageMatcher.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/MIDIFuncSrcMessageMatcher.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/MIDIFuncSrcMessageMatcherNV.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/MIDIIn.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/MIDIMessageDispatcher.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/MIDIMessageDispatcherNV.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/MIDIOut.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/MIDIResponder.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/MIDIdef.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Magnitude.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Main.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/MainMenu.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/MantissaMask.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/MaxLocalBufs.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Maybe.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Median.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Menu.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/MenuAction.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Message.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/MeterSync.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Method.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/MidEQ.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Mix.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ModDif.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Monitor.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/MonitorGui.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/MoogFF.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/MostChange.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/MouseButton.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/MouseX.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/MouseY.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/MulAdd.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/MultiLevelIdentityDictionary.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/MultiOutUGen.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/MultiSliderView.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/MultiTap.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/MultiplexAnalogIn.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/NAryOpFunction.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/NAryOpStream.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/NRand.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/NamedControl.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Ndef.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/NdefGui.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/NdefMixer.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/NdefMixerOld.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/NdefParamGui.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/NetAddr.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Nil.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Node.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/NodeControl.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/NodeMap.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/NodeProxy.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/NodeProxyEditor.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/NodeWatcher.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Normalizer.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/NoteOffResponder.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/NoteOnResponder.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/NotificationCenter.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/NumAudioBuses.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/NumBuffers.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/NumChannels.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/NumControlBuses.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/NumInputBuses.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/NumOutputBuses.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/NumRunningSynths.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Number.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/NumberBox.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/OSCArgsMatcher.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/OSCBundle.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/OSCFunc.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/OSCFuncAddrMessageMatcher.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/OSCFuncBothMessageMatcher.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/OSCFuncRecvPortMessageMatcher.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/OSCMessageDispatcher.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/OSCMessagePatternDispatcher.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/OSCdef.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/OSCpathResponder.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/OSCresponder.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/OSCresponderNode.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Object.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ObjectGui.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ObjectTable.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/OffsetOut.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/OnError.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/OnePole.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/OneZero.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Onsets.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Operand.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Order.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/OrderedIdentitySet.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Osc.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/OscN.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Out.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/OutputProxy.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PMOsc.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PSinGrain.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PV_Add.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PV_BinScramble.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PV_BinShift.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PV_BinWipe.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PV_BrickWall.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PV_ChainUGen.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PV_ConformalMap.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PV_Conj.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PV_Copy.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PV_CopyPhase.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PV_Diffuser.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PV_Div.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PV_HainsworthFoote.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PV_JensenAndersen.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PV_LocalMax.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PV_MagAbove.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PV_MagBelow.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PV_MagClip.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PV_MagDiv.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PV_MagFreeze.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PV_MagMul.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PV_MagNoise.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PV_MagShift.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PV_MagSmear.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PV_MagSquared.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PV_Max.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PV_Min.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PV_Mul.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PV_PhaseShift.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PV_PhaseShift270.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PV_PhaseShift90.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PV_RandComb.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PV_RandWipe.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PV_RectComb.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PV_RectComb2.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PackFFT.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Padd.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Paddp.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Paddpre.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PageLayout.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pair.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pan2.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pan4.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PanAz.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PanB.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PanB2.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ParGroup.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ParamView.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PartConv.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PathName.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pattern.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PatternConductor.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PatternProxy.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pause.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PauseSelf.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PauseSelfWhenDone.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pavaroh.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pbeta.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pbind.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PbindProxy.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pbindef.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pbindf.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pbinop.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pbrown.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pbus.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pcauchy.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pchain.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pclump.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pclutch.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pcollect.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pconst.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pdef.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PdefAllGui.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PdefEditor.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PdefGui.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pdefn.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PdefnAllGui.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PdefnGui.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PdegreeToKey.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pdfsm.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pdict.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pdiff.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pdrop.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pdup.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PdurStutter.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Peak.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PeakFollower.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pen.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Penvir.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pevent.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pexprand.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PfadeIn.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PfadeOut.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pfin.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pfindur.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pfinval.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pfset.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pfsm.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pfunc.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pfuncn.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pfx.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pfxb.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pgate.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pgauss.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pgbrown.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pgeom.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pget.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pgpar.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pgroup.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pgtpar.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Phasor.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Phprand.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pif.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pindex.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PingPong.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PinkNoise.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pipe.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pitch.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PitchShift.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pkey.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Place.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Plambda.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Platform.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PlayBuf.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Plazy.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PlazyEnvir.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PlazyEnvirN.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Plet.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Plotter.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Plprand.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pluck.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pmeanrand.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pmono.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PmonoArtic.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pmul.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pmulp.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pmulpre.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pn.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pnaryop.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pnsym.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Point.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Polar.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Poll.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PopUpMenu.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Post.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Ppar.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PparGroup.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Ppatlace.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Ppatmod.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Ppoisson.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pprob.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pprotect.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pproto.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Prand.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Preject.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Prewrite.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PriorityQueue.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Process.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ProgramChangeResponder.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Prorate.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Prout.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ProxyMixer.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ProxyMixerOld.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ProxyMonitorGui.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ProxyNodeMap.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ProxySpace.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ProxySynthDef.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pseed.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pseg.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pselect.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pseq.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pser.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pseries.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pset.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Psetp.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Psetpre.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pshuf.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pslide.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pspawn.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pspawner.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pstep.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PstepNadd.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PstepNfunc.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pstutter.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Psubdivide.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pswitch.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pswitch1.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Psym.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Psync.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Ptime.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Ptpar.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Ptrace.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Ptuple.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pulse.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PulseCount.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PulseDivider.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Punop.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/PureUGen.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pwalk.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pwhile.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pwhite.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pwrand.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pwrap.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Pxrand.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/QPalette.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/QPenPrinter.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/QtGUI.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/QuadC.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/QuadL.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/QuadN.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Quant.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Quark.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Quarks.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/QuartzComposerView.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/RHPF.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/RLPF.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/RadiansPerSample.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Ramp.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Rand.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/RandID.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/RandSeed.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/RangeSlider.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/RawArray.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/RawPointer.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ReadableNodeIDAllocator.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/RecNodeProxy.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/RecordBuf.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Recorder.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Rect.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Ref.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/RefCopy.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ReplaceOut.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Resonz.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Rest.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/RingBuffer.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/RingNumberAllocator.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Ringz.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/RootNode.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Rotate2.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Routine.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/RunningMax.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/RunningMin.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/RunningSum.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SCContainerView.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SCDoc.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SCDocEntry.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SCDocHTMLRenderer.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SCDocNode.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SCDragView.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SCEnvelopeEdit.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SCImage.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SCImageFilter.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SCImageKernel.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SCViewHolder.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SOS.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SampleDur.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SampleRate.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Sanitize.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Saw.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ScIDE.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Scale.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ScelDocument.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Scheduler.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Schmidt.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ScopeOut.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ScopeView.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Score.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ScrollView.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Select.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SelectX.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SelectXFocus.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Semaphore.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SemiColonFileReader.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SendPeakRMS.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SendReply.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SendTrig.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SequenceableCollection.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SerialPort.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Server.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ServerBoot.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ServerMeter.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ServerMeterView.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ServerOptions.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ServerQuit.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ServerStatusWatcher.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ServerTree.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Set.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SetResetFF.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Shaper.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SharedIn.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SharedOut.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ShutDown.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Signal.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Silent.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SimpleController.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SimpleNumber.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SinOsc.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SinOscFB.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SkipJack.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Slew.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Slider.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Slider2D.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Slope.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SortedList.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SoundFile.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SoundFileView.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SoundIn.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SparseArray.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Spawner.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Spec.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SpecCentroid.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SpecFlatness.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SpecPcile.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Splay.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SplayAz.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SplayZ.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Spring.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/StackLayout.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/StackNumberAllocator.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/StandardL.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/StandardN.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/StartUp.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/StaticText.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Stepper.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/StereoConvolution2L.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Stethoscope.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Stream.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/StreamClutch.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/String.ext.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/String.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SubsampleOffset.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Sum3.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Sum4.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Sweep.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Symbol.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SymbolArray.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SyncSaw.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Synth.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SynthDef.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SynthDesc.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SynthDescLib.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SystemClock.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/SystemSynthDefs.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/T2A.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/T2K.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/TBall.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/TChoose.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/TDelay.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/TDuty.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/TExpRand.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/TGrains.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/TIRand.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/TRand.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/TWChoose.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/TWindex.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/TabFileReader.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Tap.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Task.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/TaskProxy.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/TaskProxyGui.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Tdef.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/TdefAllGui.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/TdefEditor.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/TdefGui.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/TempoBusClock.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/TempoClock.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/TextField.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/TextView.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Thread.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Thunk.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Timer.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ToggleFF.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ToolBar.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/TouchResponder.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/TreeView.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/TreeViewItem.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Trig.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Trig1.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/TrigControl.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/True.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Tuning.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/TwoPole.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/TwoWayIdentityDictionary.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/TwoZero.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/UGen.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/UnaryOpFunction.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/UnaryOpStream.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/UnaryOpUGen.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/UniqueID.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/UnitTest.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/UnitTestScript.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/UnixFILE.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Unpack1FFT.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/UnpackFFT.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/UserView.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/VDiskIn.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/VLayout.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/VLayoutView.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/VOsc.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/VOsc3.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/VarLag.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/VarSaw.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Vibrato.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/View.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Volume.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Warp.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Warp1.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Wavetable.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/WebView.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/WhiteNoise.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Window.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/Wrap.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/WrapIndex.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/XFade2.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/XIn.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/XInFeedback.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/XLine.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/XOut.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/ZeroCrossing.schelp -%%HELP%%share/SuperCollider/HelpSource/Classes/chebyshevpolynomials.png -%%HELP%%share/SuperCollider/HelpSource/Guides/.placeholder -%%HELP%%share/SuperCollider/HelpSource/Guides/Backwards-Compatibility.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/Bundled-Messages.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/ClientVsServer.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/Debugging-tips.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/FFT-Overview.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/GUI-Introduction.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/GUI-Layout-Management.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/Glossary.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/HID_permissions.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/How-to-Use-the-Interpreter.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/Internal-Snooping.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/Intro-to-Objects.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/J-concepts-in-SC.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/LID_permissions.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/ListComprehensions.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/MIDI.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/More-On-Getting-Help.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/MultiClient_Setups.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/Multichannel-Expansion.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/News-3_10.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/News-3_11.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/News-3_12.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/News-3_13.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/News-3_5.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/News-3_6.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/News-3_7.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/News-3_8.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/News-3_9.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/News-Qt-GUI.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/NodeMessaging.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/Non-Realtime-Synthesis.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/OSC_communication.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/Order-of-execution.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/Polymorphism.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/Randomness.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/SCIde.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/Server-Guide.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/ServerTiming.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/Spawning.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/SuperColliderAU.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/Sync-Async.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/SynthDefsVsSynths.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/Tour-of-Special-Functions.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/Tour_of_UGens.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/Tracing-Processes.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/UGens-and-Synths.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/Understanding-Errors.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/UserFAQ.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/UsingExtensions.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/UsingMIDI.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/UsingQuarks.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/Working_with_HID.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/WritingClasses.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/WritingHelp.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/WritingPrimitives.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/WritingTests.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/WritingUGens.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/s8kfFC-clientServerEn.png -%%HELP%%share/SuperCollider/HelpSource/Guides/scEn.png -%%HELP%%share/SuperCollider/HelpSource/Guides/sc_ide_overview.png -%%HELP%%share/SuperCollider/HelpSource/Guides/sc_ide_overview_scaled.png -%%HELP%%share/SuperCollider/HelpSource/Guides/server.png -%%HELP%%share/SuperCollider/HelpSource/Guides/standalones.schelp -%%HELP%%share/SuperCollider/HelpSource/Guides/structureEn.png -%%HELP%%share/SuperCollider/HelpSource/Help.schelp -%%HELP%%share/SuperCollider/HelpSource/OldHelpWrapper.html -%%HELP%%share/SuperCollider/HelpSource/Other/.placeholder -%%HELP%%share/SuperCollider/HelpSource/Other/HelpDocsLicensing.html -%%HELP%%share/SuperCollider/HelpSource/Other/JITLibChanges3.7.schelp -%%HELP%%share/SuperCollider/HelpSource/Other/Licensing.html -%%HELP%%share/SuperCollider/HelpSource/Other/ccbysa3_88x31.png -%%HELP%%share/SuperCollider/HelpSource/Overviews/.placeholder -%%HELP%%share/SuperCollider/HelpSource/Overviews/ClassTree.schelp -%%HELP%%share/SuperCollider/HelpSource/Overviews/Classes.html -%%HELP%%share/SuperCollider/HelpSource/Overviews/Collections.schelp -%%HELP%%share/SuperCollider/HelpSource/Overviews/Documents.html -%%HELP%%share/SuperCollider/HelpSource/Overviews/Event_types.schelp -%%HELP%%share/SuperCollider/HelpSource/Overviews/GUI-Classes.schelp -%%HELP%%share/SuperCollider/HelpSource/Overviews/GenericCollectors.schelp -%%HELP%%share/SuperCollider/HelpSource/Overviews/JITLib.schelp -%%HELP%%share/SuperCollider/HelpSource/Overviews/Methods.html -%%HELP%%share/SuperCollider/HelpSource/Overviews/MidiPatterns.schelp -%%HELP%%share/SuperCollider/HelpSource/Overviews/Operators.schelp -%%HELP%%share/SuperCollider/HelpSource/Overviews/SC3vsSC2.schelp -%%HELP%%share/SuperCollider/HelpSource/Overviews/Streams.schelp -%%HELP%%share/SuperCollider/HelpSource/Overviews/SymbolicNotations.schelp -%%HELP%%share/SuperCollider/HelpSource/QC/Cells.qtz -%%HELP%%share/SuperCollider/HelpSource/QC/SCLevelMeter.qtz -%%HELP%%share/SuperCollider/HelpSource/QC/SCQCSonogramCount2.qtz -%%HELP%%share/SuperCollider/HelpSource/QC/SCQuartzComposerViewStructureTest.qtz -%%HELP%%share/SuperCollider/HelpSource/QC/SCQuartzComposerViewTest.qtz -%%HELP%%share/SuperCollider/HelpSource/QC/Stupid Pan.qtz -%%HELP%%share/SuperCollider/HelpSource/Reference/.placeholder -%%HELP%%share/SuperCollider/HelpSource/Reference/Adverbs.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/Assignment.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/AudioDeviceSelection.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/Classes.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/Comments.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/Control-Structures.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/EmacsEditor.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/EventStream.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/Expression-Sequence.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/Functions.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/Key-Value-Pairs.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/KeyboardShortcuts.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/Literals.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/Messages.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/Modifiers.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/NodeEvent.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/NodeProxy_roles.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/Partial-Application.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/Resize.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/SCDocStyling.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/SCDocSyntax.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/Scope.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/Server-Architecture.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/Server-Command-Reference.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/ServerPluginAPI.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/StartupFile.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/Syntax-Shortcuts.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/Synth-Definition-File-Format.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/asTarget.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/default_group.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/functions.png -%%HELP%%share/SuperCollider/HelpSource/Reference/gui.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/gui_alignments.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/if.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/loop.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/matchItem.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/palette_color_groups.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/palette_color_roles.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/play.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/playN.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/plot.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/randomSeed.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/softPut.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/softSet.schelp -%%HELP%%share/SuperCollider/HelpSource/Reference/softVol_.schelp -%%HELP%%share/SuperCollider/HelpSource/Search.html -%%HELP%%share/SuperCollider/HelpSource/Tutorials/.placeholder -%%HELP%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_01_Introduction.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_02_Basic_Vocabulary.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_03_What_Is_Pbind.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_04_Words_to_Phrases.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_05_Math_on_Patterns.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_060_Filter_Patterns.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_06a_Repetition_Contraint_Patterns.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_06b_Time_Based_Patterns.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_06c_Composition_of_Patterns.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_06d_Parallel_Patterns.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_06e_Language_Control.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_06f_Server_Control.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_06g_Data_Sharing.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_07_Value_Conversions.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_08_Event_Types_and_Parameters.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_Cookbook01_Basic_Sequencing.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_Cookbook02_Manipulating_Patterns.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_Cookbook03_External_Control.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_Cookbook04_Sending_MIDI.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_Cookbook05_Using_Samples.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_Cookbook06_Phrase_Network.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_Cookbook07_Rhythmic_Variations.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_Cookbook08_Swing.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_Ref01_Pattern_Internals.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/GUI/compose_complex_view.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/GUI/create_simple_instrument_view.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/GUI/create_window.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/GUI/things_you_wanna_know.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/GUI/tutorial_intro.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/00-Getting-Started-With-SC.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/01-Introductory-Remarks.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/02-First-Steps.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/03-Start-Your-Engines.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/04-Functions-and-Other-Functionality.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/05-Functions-and-Sound.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/06-Presented-in-Living-Stereo.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/07-Mix-it-Up.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/08-Scoping-and-Plotting.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/09-Getting-Help.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/10-SynthDefs-and-Synths.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/11-Busses.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/12-Groups.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/13-Buffers.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/14-Scheduling-Events.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/15-Sequencing-with-Routines-and-Tasks.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/16-Sequencing-with-Patterns.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/Functions-and-Sound-00.png -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/Functions-and-Sound-01.png -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/Functions-and-Sound-02.png -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/Functions-and-Sound-03.png -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/Functions-and-Sound-04.png -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/Scoping-and-Plotting01.png -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/Start-Your-Engines00.png -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/Start-Your-Engines01.png -%%HELP%%share/SuperCollider/HelpSource/Tutorials/JITLib/audio_rate_mapping.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/JITLib/basic_live_coding_techniques.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/JITLib/jitlib_asCompileString.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/JITLib/jitlib_basic_concepts_01.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/JITLib/jitlib_basic_concepts_02.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/JITLib/jitlib_basic_concepts_03.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/JITLib/jitlib_basic_concepts_04.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/JITLib/jitlib_efficiency.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/JITLib/jitlib_fading.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/JITLib/jitlib_networking.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/JITLib/proxyspace_examples.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/JITLib/recursive_phrasing.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/JITLib/the_lazy_proxy.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/00_Introductory_tutorial.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/01_Startup.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/02_Evaluating_code.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/03_Comments.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/04_Help.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/05_The_network.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/06_Prerequisites.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/07_SynthDefs.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/08_Rates.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/09_Buses.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/10_Controls.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/11_Test_functions.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/12_UnaryOp_synthesis.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/13_BinaryOp_synthesis.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/14_Subtractive_synthesis.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/15_Groups.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/16_Playbuf.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/17_Delays_reverbs.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/18_Frequency_modulation.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/19_Scheduling.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/20_Debugging.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/21_Syntax_errors.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/22_Runtime_errors.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/Japanese_version/00.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/Japanese_version/01.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/Japanese_version/02.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/Japanese_version/03.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/Japanese_version/04.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/Japanese_version/05.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/Japanese_version/06.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/Japanese_version/07.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/Japanese_version/08.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/Japanese_version/09.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/Japanese_version/10.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/Japanese_version/11.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/Japanese_version/12.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/Japanese_version/13.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/Japanese_version/14.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/Japanese_version/15.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Server_Tutorial.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Streams-Patterns-Events1.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Streams-Patterns-Events2.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Streams-Patterns-Events3.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Streams-Patterns-Events4.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Streams-Patterns-Events5.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Streams-Patterns-Events6.schelp -%%HELP%%share/SuperCollider/HelpSource/Tutorials/Streams-Patterns-Events7.schelp -%%HELP%%share/SuperCollider/HelpSource/browse.css -%%HELP%%share/SuperCollider/HelpSource/browse.js -%%HELP%%share/SuperCollider/HelpSource/codemirror.css -%%HELP%%share/SuperCollider/HelpSource/editor.css -%%HELP%%share/SuperCollider/HelpSource/editor.js -%%HELP%%share/SuperCollider/HelpSource/images/SC_icon.png -%%HELP%%share/SuperCollider/HelpSource/images/Swamp.png -%%HELP%%share/SuperCollider/HelpSource/images/duck_alpha.png -%%HELP%%share/SuperCollider/HelpSource/images/flowers2.jpg -%%HELP%%share/SuperCollider/HelpSource/images/icon.supercollider.png -%%HELP%%share/SuperCollider/HelpSource/images/lastnode.png -%%HELP%%share/SuperCollider/HelpSource/images/node.png -%%HELP%%share/SuperCollider/HelpSource/images/plugin.png -%%HELP%%share/SuperCollider/HelpSource/images/plugin.svg -%%HELP%%share/SuperCollider/HelpSource/images/vduck2.jpg -%%HELP%%share/SuperCollider/HelpSource/images/vline.png -%%HELP%%share/SuperCollider/HelpSource/lib/codemirror-5.39.2.min.js -%%HELP%%share/SuperCollider/HelpSource/lib/codemirror-addon-simple-5.39.2.min.js -%%HELP%%share/SuperCollider/HelpSource/lib/jquery.min.js -%%HELP%%share/SuperCollider/HelpSource/lib/katex/README.md -%%HELP%%share/SuperCollider/HelpSource/lib/katex/fonts/KaTeX_AMS-Regular.woff2 -%%HELP%%share/SuperCollider/HelpSource/lib/katex/fonts/KaTeX_Caligraphic-Bold.woff2 -%%HELP%%share/SuperCollider/HelpSource/lib/katex/fonts/KaTeX_Caligraphic-Regular.woff2 -%%HELP%%share/SuperCollider/HelpSource/lib/katex/fonts/KaTeX_Fraktur-Bold.woff2 -%%HELP%%share/SuperCollider/HelpSource/lib/katex/fonts/KaTeX_Fraktur-Regular.woff2 -%%HELP%%share/SuperCollider/HelpSource/lib/katex/fonts/KaTeX_Main-Bold.woff2 -%%HELP%%share/SuperCollider/HelpSource/lib/katex/fonts/KaTeX_Main-BoldItalic.woff2 -%%HELP%%share/SuperCollider/HelpSource/lib/katex/fonts/KaTeX_Main-Italic.woff2 -%%HELP%%share/SuperCollider/HelpSource/lib/katex/fonts/KaTeX_Main-Regular.woff2 -%%HELP%%share/SuperCollider/HelpSource/lib/katex/fonts/KaTeX_Math-BoldItalic.woff2 -%%HELP%%share/SuperCollider/HelpSource/lib/katex/fonts/KaTeX_Math-Italic.woff2 -%%HELP%%share/SuperCollider/HelpSource/lib/katex/fonts/KaTeX_SansSerif-Bold.woff2 -%%HELP%%share/SuperCollider/HelpSource/lib/katex/fonts/KaTeX_SansSerif-Italic.woff2 -%%HELP%%share/SuperCollider/HelpSource/lib/katex/fonts/KaTeX_SansSerif-Regular.woff2 -%%HELP%%share/SuperCollider/HelpSource/lib/katex/fonts/KaTeX_Script-Regular.woff2 -%%HELP%%share/SuperCollider/HelpSource/lib/katex/fonts/KaTeX_Size1-Regular.woff2 -%%HELP%%share/SuperCollider/HelpSource/lib/katex/fonts/KaTeX_Size2-Regular.woff2 -%%HELP%%share/SuperCollider/HelpSource/lib/katex/fonts/KaTeX_Size3-Regular.woff2 -%%HELP%%share/SuperCollider/HelpSource/lib/katex/fonts/KaTeX_Size4-Regular.woff2 -%%HELP%%share/SuperCollider/HelpSource/lib/katex/fonts/KaTeX_Typewriter-Regular.woff2 -%%HELP%%share/SuperCollider/HelpSource/lib/katex/katex.min.css -%%HELP%%share/SuperCollider/HelpSource/lib/katex/katex.min.js -%%HELP%%share/SuperCollider/HelpSource/scdoc.css -%%HELP%%share/SuperCollider/HelpSource/scdoc.js -%%HELP%%share/SuperCollider/HelpSource/search.js -%%HELP%%share/SuperCollider/HelpSource/themes/README.md -%%HELP%%share/SuperCollider/HelpSource/themes/classic.css -%%HELP%%share/SuperCollider/HelpSource/themes/dark.css -%%HELP%%share/SuperCollider/HelpSource/themes/default.css -%%HELP%%share/SuperCollider/HelpSource/themes/dracula.css -%%HELP%%share/SuperCollider/HelpSource/themes/monokai.css -%%HELP%%share/SuperCollider/HelpSource/themes/solarizedDark.css -%%HELP%%share/SuperCollider/HelpSource/themes/solarizedLight.css +%%DOCS%%share/SuperCollider/HelpSource/BrokenLink.html +%%DOCS%%share/SuperCollider/HelpSource/Browse.html +%%DOCS%%share/SuperCollider/HelpSource/Classes/.placeholder +%%DOCS%%share/SuperCollider/HelpSource/Classes/A2K.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/APF.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/AbstractDispatcher.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/AbstractFunction.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/AbstractGridLines.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/AbstractIn.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/AbstractMessageMatcher.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/AbstractOut.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/AbstractResponderFunc.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/AbstractServerAction.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/AbstractSystemAction.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/AbstractWrappingDispatcher.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/AllpassC.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/AllpassL.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/AllpassN.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/AmpComp.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/AmpCompA.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Amplitude.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/AnalogIn.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/AnalogOut.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/AppClock.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ApplicationStart.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Archive.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Array.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Array2D.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ArrayedCollection.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Association.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/AudioIn.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BAllPass.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BBandPass.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BBandStop.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BEQSuite.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BHiPass.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BHiPass4.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BHiShelf.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BLowPass.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BLowPass4.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BLowShelf.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BPF.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BPZ2.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BPeakEQ.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BRF.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BRZ2.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Bag.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Balance2.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Ball.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BasicOpUGen.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BeatTrack.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BeatTrack2.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BelaScope.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BelaScopeOut.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BendResponder.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BiPanB2.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BinaryOpFunction.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BinaryOpStream.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BinaryOpUGen.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Blip.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Boolean.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BrownNoise.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BufAllpassC.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BufAllpassL.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BufAllpassN.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BufChannels.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BufCombC.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BufCombL.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BufCombN.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BufDelayC.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BufDelayL.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BufDelayN.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BufDur.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BufFrames.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BufInfoUGenBase.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BufRateScale.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BufRd.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BufSampleRate.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BufSamples.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BufWr.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Buffer.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Bus.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/BusPlug.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Button.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/CCResponder.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/COsc.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/CSVFileReader.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/CallOnce.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Changed.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ChaosGen.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Char.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/CheckBadValues.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/CheckBox.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Class.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Clip.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ClipNoise.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Clock.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/CmdPeriod.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/CoinGate.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Collection.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Color.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/CombC.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/CombL.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/CombN.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Compander.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/CompanderD.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Complex.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/CompositeView.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/CondVar.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Condition.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ContiguousBlock.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ContiguousBlockAllocator.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Control.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ControlDur.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ControlName.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ControlRate.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ControlSpec.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Convolution.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Convolution2.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Convolution2L.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Convolution3.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Crackle.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/CuspL.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/CuspN.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/CustomViewAction.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/DC.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Date.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Dbrown.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Dbufrd.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Dbufwr.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Dconst.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Ddup.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/DebugFrame.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/DebugNodeWatcher.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Decay.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Decay2.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/DecodeB2.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/DegreeToKey.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/DelTapRd.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/DelTapWr.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Delay1.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Delay2.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/DelayC.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/DelayL.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/DelayN.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Demand.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/DemandEnvGen.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/DetectIndex.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/DetectSilence.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Dgeom.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Dialog.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Dibrown.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Dictionary.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/DigitalIO.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/DigitalIn.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/DigitalOut.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/DiskIn.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/DiskOut.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Diwhite.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Document.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/DoesNotUnderstandError.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Done.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/DoubleArray.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Download.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Dpoll.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/DragBoth.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/DragSink.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/DragSource.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Drand.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/DrawGrid.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Dreset.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Dseq.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Dser.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Dseries.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Dshuf.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Dstutter.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Dswitch.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Dswitch1.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Dunique.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Dust.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Dust2.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Duty.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Dwhite.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Dwrand.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Dxrand.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/DynKlang.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/DynKlank.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/EZGui.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/EZKnob.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/EZListView.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/EZLists.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/EZNumber.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/EZPopUpMenu.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/EZRanger.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/EZScroller.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/EZSlider.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/EZText.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/EmacsDocument.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Env.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/EnvGate.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/EnvGen.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/EnvelopeView.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/EnvirGui.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Environment.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/EnvironmentRedirect.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Error.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Event-default-note.png +%%DOCS%%share/SuperCollider/HelpSource/Classes/Event.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/EventPatternProxy.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/EventStreamCleanup.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/EventStreamPlayer.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ExampleFiles.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Exception.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ExpRand.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ExponentialGridLines.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/FBSineC.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/FBSineL.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/FBSineN.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/FFT.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/FFTTrigger.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/FOS.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/FSinOsc.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/False.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Fdef.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/File.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/FileDialog.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/FileReader.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Filter.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/FilterPattern.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Float.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/FloatArray.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/FlowLayout.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/FlowVar.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/FlowView.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Fold.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/FoldIndex.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Font.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Formant.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Formlet.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Frame.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Free.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/FreeSelf.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/FreeSelfWhenDone.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/FreeVerb.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/FreeVerb2.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/FreqScope.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/FreqScopeView.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/FreqShift.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/FuncFilterPattern.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/FuncStream.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Function.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/FunctionDef.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/FunctionList.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/GUI.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/GVerb.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Gate.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/GbmanL.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/GbmanN.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Gendy1.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Gendy2.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Gendy3.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Git.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Gradient.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/GrainBuf.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/GrainFM.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/GrainIn.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/GrainSin.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/GrayNoise.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/GridLayout.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/GridLines.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Group.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/HID.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/HIDCollection.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/HIDElement.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/HIDElementProto.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/HIDFunc.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/HIDInfo.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/HIDProto.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/HIDUsage.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/HIDdef.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/HLayout.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/HLayoutView.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/HPF.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/HPZ1.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/HPZ2.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Harmonics.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Hasher.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/HelpBrowser.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/HenonC.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/HenonL.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/HenonN.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Hilbert.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/HilbertFIR.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/HiliteGradient.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/History.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/HistoryGui.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/IEnvGen.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/IFFT.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/IODesc.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/IRand.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/IdentityBag.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/IdentityDictionary.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/IdentityDictionary_01.png +%%DOCS%%share/SuperCollider/HelpSource/Classes/IdentityDictionary_02.png +%%DOCS%%share/SuperCollider/HelpSource/Classes/IdentityDictionary_03.png +%%DOCS%%share/SuperCollider/HelpSource/Classes/IdentityDictionary_04.png +%%DOCS%%share/SuperCollider/HelpSource/Classes/IdentitySet.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Image.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Impulse.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/In.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/InBus.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/InFeedback.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/InRange.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/InRect.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/InTrig.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Index.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/IndexInBetween.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/IndexL.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/InfoUGenBase.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Int16Array.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Int32Array.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Int8Array.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Integer.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Integrator.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/InterplEnv.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/InterplPairs.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/InterplXYC.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Interpreter.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Interval.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/JITGui.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/K2A.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/KeyState.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/KeyTrack.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Klang.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Klank.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Knob.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LFClipNoise.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LFCub.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LFDClipNoise.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LFDNoise0.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LFDNoise1.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LFDNoise3.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LFGauss.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LFNoise0.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LFNoise1.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LFNoise2.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LFPar.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LFPulse.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LFSaw.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LFTri.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LID.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LIDGui.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LIDInfo.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LIDSlot.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LPF.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LPZ1.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LPZ2.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Lag.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Lag2.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Lag2UD.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Lag3.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Lag3UD.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LagControl.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LagIn.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LagUD.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LanguageConfig.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LastValue.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Latch.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LatoocarfianC.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LatoocarfianL.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LatoocarfianN.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Layout.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LazyEnvir.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LeakDC.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LeastChange.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LevelComp.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LevelIndicator.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Library.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LibraryBase.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Limiter.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LinCongC.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LinCongL.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LinCongN.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LinExp.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LinLin.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LinPan2.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LinRand.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LinSelectX.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LinXFade2.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Line.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LineLayout.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LinearGridLines.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Linen.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LinkClock.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LinkedList.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LinkedListNode.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LinuxPlatform.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/List.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ListPattern.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ListView.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LocalBuf.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LocalIn.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LocalOut.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Logistic.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/LorenzL.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Loudness.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/MFCC.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/MIDIClient.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/MIDIFunc.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/MIDIFuncBothCAMessageMatcher.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/MIDIFuncBothMessageMatcher.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/MIDIFuncChanArrayMessageMatcher.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/MIDIFuncChanMessageMatcher.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/MIDIFuncSrcMessageMatcher.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/MIDIFuncSrcMessageMatcherNV.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/MIDIIn.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/MIDIMessageDispatcher.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/MIDIMessageDispatcherNV.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/MIDIOut.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/MIDIResponder.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/MIDIdef.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Magnitude.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Main.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/MainMenu.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/MantissaMask.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/MaxLocalBufs.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Maybe.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Median.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Menu.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/MenuAction.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Message.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/MeterSync.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Method.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/MidEQ.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Mix.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ModDif.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Monitor.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/MonitorGui.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/MoogFF.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/MostChange.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/MouseButton.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/MouseX.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/MouseY.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/MulAdd.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/MultiLevelIdentityDictionary.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/MultiOutUGen.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/MultiSliderView.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/MultiTap.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/MultiplexAnalogIn.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/NAryOpFunction.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/NAryOpStream.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/NRand.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/NamedControl.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Ndef.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/NdefGui.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/NdefMixer.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/NdefMixerOld.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/NdefParamGui.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/NetAddr.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Nil.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Node.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/NodeControl.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/NodeMap.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/NodeProxy.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/NodeProxyEditor.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/NodeTreeView.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/NodeWatcher.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Normalizer.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/NoteOffResponder.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/NoteOnResponder.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/NotificationCenter.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/NumAudioBuses.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/NumBuffers.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/NumChannels.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/NumControlBuses.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/NumInputBuses.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/NumOutputBuses.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/NumRunningSynths.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Number.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/NumberBox.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/OSCArgsMatcher.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/OSCBundle.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/OSCFunc.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/OSCFuncAddrMessageMatcher.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/OSCFuncBothMessageMatcher.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/OSCFuncRecvPortMessageMatcher.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/OSCMessageDispatcher.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/OSCMessagePatternDispatcher.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/OSCdef.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/OSCpathResponder.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/OSCresponder.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/OSCresponderNode.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Object.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ObjectGui.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ObjectTable.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/OffsetOut.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/OnError.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/OnePole.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/OneZero.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Onsets.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Operand.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Order.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/OrderedIdentitySet.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Osc.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/OscN.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Out.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/OutputProxy.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PMOsc.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PSinGrain.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PV_Add.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PV_BinScramble.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PV_BinShift.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PV_BinWipe.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PV_BrickWall.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PV_ChainUGen.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PV_ConformalMap.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PV_Conj.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PV_Copy.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PV_CopyPhase.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PV_Diffuser.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PV_Div.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PV_HainsworthFoote.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PV_JensenAndersen.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PV_LocalMax.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PV_MagAbove.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PV_MagBelow.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PV_MagClip.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PV_MagDiv.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PV_MagFreeze.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PV_MagMul.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PV_MagNoise.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PV_MagShift.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PV_MagSmear.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PV_MagSquared.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PV_Max.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PV_Min.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PV_Mul.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PV_PhaseShift.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PV_PhaseShift270.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PV_PhaseShift90.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PV_RandComb.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PV_RandWipe.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PV_RectComb.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PV_RectComb2.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PackFFT.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Padd.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Paddp.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Paddpre.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PageLayout.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pair.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pan2.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pan4.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PanAz.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PanB.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PanB2.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ParGroup.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ParamView.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PartConv.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PathName.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pattern.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PatternConductor.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PatternProxy.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pause.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PauseSelf.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PauseSelfWhenDone.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pavaroh.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pbeta.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pbind.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PbindProxy.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pbindef.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pbindf.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pbinop.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pbrown.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pbus.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pcauchy.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pchain.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pclump.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pclutch.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pcollect.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pconst.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pdef.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PdefAllGui.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PdefEditor.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PdefGui.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pdefn.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PdefnAllGui.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PdefnGui.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PdegreeToKey.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pdfsm.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pdict.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pdiff.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pdrop.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pdup.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PdurStutter.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Peak.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PeakFollower.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pen.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Penvir.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pevent.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pexprand.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PfadeIn.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PfadeOut.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pfin.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pfindur.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pfinval.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pfset.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pfsm.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pfunc.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pfuncn.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pfx.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pfxb.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pgate.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pgauss.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pgbrown.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pgeom.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pget.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pgpar.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pgroup.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pgtpar.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Phasor.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Phprand.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pif.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pindex.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PingPong.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PinkNoise.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pipe.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pitch.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PitchShift.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pkey.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Place.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Plambda.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Platform.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PlayBuf.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Plazy.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PlazyEnvir.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PlazyEnvirN.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Plet.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Plotter.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Plprand.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pluck.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pmeanrand.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pmono.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PmonoArtic.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pmul.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pmulp.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pmulpre.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pn.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pnaryop.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pnsym.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Point.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Polar.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Poll.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PopUpMenu.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Post.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Ppar.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PparGroup.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Ppatlace.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Ppatmod.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Ppoisson.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pprob.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pprotect.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pproto.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Prand.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Preject.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Prewrite.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PriorityQueue.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Process.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ProgramChangeResponder.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Prorate.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Prout.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ProxyMixer.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ProxyMixerOld.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ProxyMonitorGui.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ProxyNodeMap.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ProxySpace.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ProxySynthDef.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pseed.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pseg.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pselect.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pseq.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pser.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pseries.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pset.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Psetp.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Psetpre.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pshuf.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pslide.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pspawn.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pspawner.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pstep.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PstepNadd.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PstepNfunc.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pstutter.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Psubdivide.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pswitch.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pswitch1.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Psym.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Psync.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Ptime.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Ptpar.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Ptrace.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Ptuple.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pulse.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PulseCount.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PulseDivider.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Punop.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/PureUGen.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pwalk.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pwhile.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pwhite.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pwrand.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pwrap.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Pxrand.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/QPalette.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/QPenPrinter.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/QtGUI.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/QuadC.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/QuadL.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/QuadN.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Quant.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Quark.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Quarks.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/QuartzComposerView.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/RHPF.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/RLPF.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/RadiansPerSample.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Ramp.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Rand.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/RandID.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/RandSeed.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/RangeSlider.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/RawArray.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/RawPointer.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ReadableNodeIDAllocator.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/RecNodeProxy.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/RecordBuf.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Recorder.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Rect.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Ref.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/RefCopy.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ReplaceOut.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Resonz.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Rest.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/RingBuffer.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/RingNumberAllocator.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Ringz.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/RootNode.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Rotate2.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Routine.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/RunningMax.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/RunningMin.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/RunningSum.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SCContainerView.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SCDoc.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SCDocEntry.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SCDocHTMLRenderer.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SCDocNode.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SCDragView.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SCEnvelopeEdit.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SCImage.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SCImageFilter.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SCImageKernel.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SCViewHolder.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SOS.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SampleDur.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SampleRate.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Sanitize.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Saw.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ScIDE.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Scale.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ScelDocument.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Scheduler.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Schmidt.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ScopeOut.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ScopeView.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Score.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ScrollView.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Select.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SelectX.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SelectXFocus.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Semaphore.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SemiColonFileReader.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SendPeakRMS.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SendReply.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SendTrig.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SequenceableCollection.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SerialPort.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Server.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ServerBoot.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ServerMeter.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ServerMeterView.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ServerOptions.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ServerQuit.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ServerStatusWatcher.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ServerTree.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Set.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SetResetFF.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Shaper.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SharedIn.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SharedOut.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ShutDown.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Signal.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Silent.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SimpleController.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SimpleNumber.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SinOsc.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SinOscFB.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SkipJack.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Slew.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Slider.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Slider2D.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Slope.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SortedList.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SoundFile.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SoundFileView.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SoundIn.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SparseArray.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Spawner.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Spec.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SpecCentroid.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SpecFlatness.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SpecPcile.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Splay.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SplayAz.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SplayZ.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Spring.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/StackLayout.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/StackNumberAllocator.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/StandardL.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/StandardN.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/StartUp.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/StaticText.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Stepper.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/StereoConvolution2L.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Stethoscope.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Stream.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/StreamClutch.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/String.ext.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/String.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SubsampleOffset.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Sum3.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Sum4.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Sweep.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Symbol.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SymbolArray.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SyncSaw.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Synth.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SynthDef.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SynthDesc.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SynthDescLib.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SystemClock.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/SystemSynthDefs.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/T2A.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/T2K.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/TBall.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/TChoose.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/TDelay.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/TDuty.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/TExpRand.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/TGrains.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/TIRand.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/TRand.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/TWChoose.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/TWindex.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/TabFileReader.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Tap.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Task.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/TaskProxy.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/TaskProxyGui.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Tdef.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/TdefAllGui.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/TdefEditor.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/TdefGui.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/TempoBusClock.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/TempoClock.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/TextField.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/TextView.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Thread.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Thunk.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Timer.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ToggleFF.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ToolBar.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/TouchResponder.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/TreeView.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/TreeViewItem.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Trig.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Trig1.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/TrigControl.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/True.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Tuning.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/TwoPole.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/TwoWayIdentityDictionary.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/TwoZero.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/UGen.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/UnaryOpFunction.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/UnaryOpStream.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/UnaryOpUGen.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/UniqueID.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/UnitTest.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/UnitTestScript.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/UnixFILE.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Unpack1FFT.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/UnpackFFT.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/UserView.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/VDiskIn.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/VLayout.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/VLayoutView.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/VOsc.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/VOsc3.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/VarLag.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/VarSaw.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Vibrato.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/View.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Volume.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Warp.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Warp1.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Wavetable.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/WebView.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/WhiteNoise.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Window.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/Wrap.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/WrapIndex.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/XFade2.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/XIn.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/XInFeedback.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/XLine.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/XOut.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/ZeroCrossing.schelp +%%DOCS%%share/SuperCollider/HelpSource/Classes/chebyshevpolynomials.png +%%DOCS%%share/SuperCollider/HelpSource/Guides/.placeholder +%%DOCS%%share/SuperCollider/HelpSource/Guides/Backwards-Compatibility.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/Bundled-Messages.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/ClientVsServer.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/Debugging-tips.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/EqualityIdentity.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/FFT-Overview.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/GUI-Introduction.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/GUI-Layout-Management.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/Glossary.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/HID_permissions.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/How-to-Use-the-Interpreter.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/Internal-Snooping.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/Intro-to-Objects.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/J-concepts-in-SC.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/LID_permissions.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/Level_Compensation.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/ListComprehensions.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/MIDI.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/More-On-Getting-Help.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/MultiClient_Setups.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/Multichannel-Expansion.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/News-3_10.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/News-3_11.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/News-3_12.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/News-3_13.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/News-3_14.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/News-3_5.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/News-3_6.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/News-3_7.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/News-3_8.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/News-3_9.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/News-Qt-GUI.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/NodeMessaging.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/Non-Realtime-Synthesis.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/OSC_communication.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/ObjectPrototyping.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/Order-of-execution.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/Polymorphism.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/Randomness.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/SCIde.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/Server-Guide.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/ServerTiming.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/Spawning.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/SuperColliderAU.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/Sync-Async.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/SynthDefsVsSynths.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/Tour-of-Special-Functions.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/Tour_of_UGens.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/Tracing-Processes.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/UGen-Changelog.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/UGens-and-Synths.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/Understanding-Errors.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/UserFAQ.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/UsingExtensions.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/UsingMIDI.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/UsingQuarks.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/Working_with_HID.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/WritingClasses.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/WritingHelp.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/WritingPrimitives.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/WritingTests.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/WritingUGens.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/s8kfFC-clientServerEn.png +%%DOCS%%share/SuperCollider/HelpSource/Guides/scEn.png +%%DOCS%%share/SuperCollider/HelpSource/Guides/sc_ide_overview.png +%%DOCS%%share/SuperCollider/HelpSource/Guides/sc_ide_overview_scaled.png +%%DOCS%%share/SuperCollider/HelpSource/Guides/server.png +%%DOCS%%share/SuperCollider/HelpSource/Guides/standalones.schelp +%%DOCS%%share/SuperCollider/HelpSource/Guides/structureEn.png +%%DOCS%%share/SuperCollider/HelpSource/Help.schelp +%%DOCS%%share/SuperCollider/HelpSource/OldHelpWrapper.html +%%DOCS%%share/SuperCollider/HelpSource/Other/.placeholder +%%DOCS%%share/SuperCollider/HelpSource/Other/HelpDocsLicensing.html +%%DOCS%%share/SuperCollider/HelpSource/Other/JITLibChanges3.7.schelp +%%DOCS%%share/SuperCollider/HelpSource/Other/Licensing.html +%%DOCS%%share/SuperCollider/HelpSource/Other/ccbysa3_88x31.png +%%DOCS%%share/SuperCollider/HelpSource/Overviews/.placeholder +%%DOCS%%share/SuperCollider/HelpSource/Overviews/ClassTree.schelp +%%DOCS%%share/SuperCollider/HelpSource/Overviews/Classes.html +%%DOCS%%share/SuperCollider/HelpSource/Overviews/Collections.schelp +%%DOCS%%share/SuperCollider/HelpSource/Overviews/Documents.html +%%DOCS%%share/SuperCollider/HelpSource/Overviews/Event_types.schelp +%%DOCS%%share/SuperCollider/HelpSource/Overviews/GUI-Classes.schelp +%%DOCS%%share/SuperCollider/HelpSource/Overviews/GenericCollectors.schelp +%%DOCS%%share/SuperCollider/HelpSource/Overviews/JITLib.schelp +%%DOCS%%share/SuperCollider/HelpSource/Overviews/Methods.html +%%DOCS%%share/SuperCollider/HelpSource/Overviews/MidiPatterns.schelp +%%DOCS%%share/SuperCollider/HelpSource/Overviews/Operators.schelp +%%DOCS%%share/SuperCollider/HelpSource/Overviews/SC3vsSC2.schelp +%%DOCS%%share/SuperCollider/HelpSource/Overviews/Streams.schelp +%%DOCS%%share/SuperCollider/HelpSource/Overviews/SymbolicNotations.schelp +%%DOCS%%share/SuperCollider/HelpSource/QC/Cells.qtz +%%DOCS%%share/SuperCollider/HelpSource/QC/SCLevelMeter.qtz +%%DOCS%%share/SuperCollider/HelpSource/QC/SCQCSonogramCount2.qtz +%%DOCS%%share/SuperCollider/HelpSource/QC/SCQuartzComposerViewStructureTest.qtz +%%DOCS%%share/SuperCollider/HelpSource/QC/SCQuartzComposerViewTest.qtz +%%DOCS%%share/SuperCollider/HelpSource/QC/Stupid Pan.qtz +%%DOCS%%share/SuperCollider/HelpSource/Reference/.placeholder +%%DOCS%%share/SuperCollider/HelpSource/Reference/Adverbs.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/Assignment.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/AudioDeviceSelection.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/Classes.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/Comments.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/Control-Structures.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/EmacsEditor.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/EventStream.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/Expression-Sequence.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/Functions.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/Key-Value-Pairs.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/KeyboardShortcuts.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/Literals.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/Messages.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/Modifiers.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/NodeEvent.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/NodeProxy_roles.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/Partial-Application.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/Resize.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/SCDocStyling.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/SCDocSyntax.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/Scope.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/Server-Architecture.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/Server-Command-Reference.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/ServerPluginAPI.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/StartupFile.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/Syntax-Shortcuts.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/Synth-Definition-File-Format.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/asTarget.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/default_group.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/functions.png +%%DOCS%%share/SuperCollider/HelpSource/Reference/gui.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/gui_alignments.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/if.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/loop.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/matchItem.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/palette_color_groups.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/palette_color_roles.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/play.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/playN.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/plot.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/randomSeed.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/softPut.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/softSet.schelp +%%DOCS%%share/SuperCollider/HelpSource/Reference/softVol_.schelp +%%DOCS%%share/SuperCollider/HelpSource/Search.html +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/.placeholder +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_01_Introduction.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_02_Basic_Vocabulary.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_03_What_Is_Pbind.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_04_Words_to_Phrases.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_05_Math_on_Patterns.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_060_Filter_Patterns.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_06a_Repetition_Contraint_Patterns.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_06b_Time_Based_Patterns.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_06c_Composition_of_Patterns.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_06d_Parallel_Patterns.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_06e_Language_Control.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_06f_Server_Control.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_06g_Data_Sharing.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_07_Value_Conversions.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_08_Event_Types_and_Parameters.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_Cookbook01_Basic_Sequencing.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_Cookbook02_Manipulating_Patterns.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_Cookbook03_External_Control.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_Cookbook04_Sending_MIDI.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_Cookbook05_Using_Samples.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_Cookbook06_Phrase_Network.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_Cookbook07_Rhythmic_Variations.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_Cookbook08_Swing.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/A-Practical-Guide/PG_Ref01_Pattern_Internals.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/GUI/compose_complex_view.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/GUI/create_simple_instrument_view.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/GUI/create_window.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/GUI/things_you_wanna_know.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/GUI/tutorial_intro.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/00-Getting-Started-With-SC.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/01-Introductory-Remarks.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/02-First-Steps.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/03-Start-Your-Engines.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/04-Functions-and-Other-Functionality.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/05-Functions-and-Sound.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/06-Presented-in-Living-Stereo.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/07-Mix-it-Up.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/08-Scoping-and-Plotting.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/09-Getting-Help.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/10-SynthDefs-and-Synths.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/11-Busses.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/12-Groups.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/13-Buffers.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/14-Scheduling-Events.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/15-Sequencing-with-Routines-and-Tasks.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/16-Sequencing-with-Patterns.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/Functions-and-Sound-00.png +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/Functions-and-Sound-01.png +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/Functions-and-Sound-02.png +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/Functions-and-Sound-03.png +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/Functions-and-Sound-04.png +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/Scoping-and-Plotting01.png +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/Start-Your-Engines00.png +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Getting-Started/Start-Your-Engines01.png +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/JITLib/audio_rate_mapping.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/JITLib/basic_live_coding_techniques.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/JITLib/jitlib_asCompileString.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/JITLib/jitlib_basic_concepts_01.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/JITLib/jitlib_basic_concepts_02.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/JITLib/jitlib_basic_concepts_03.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/JITLib/jitlib_basic_concepts_04.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/JITLib/jitlib_efficiency.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/JITLib/jitlib_fading.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/JITLib/jitlib_networking.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/JITLib/proxyspace_examples.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/JITLib/recursive_phrasing.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/JITLib/the_lazy_proxy.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/00_Introductory_tutorial.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/01_Startup.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/02_Evaluating_code.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/03_Comments.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/04_Help.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/05_The_network.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/06_Prerequisites.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/07_SynthDefs.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/08_Rates.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/09_Buses.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/10_Controls.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/11_Test_functions.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/12_UnaryOp_synthesis.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/13_BinaryOp_synthesis.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/14_Subtractive_synthesis.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/15_Groups.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/16_Playbuf.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/17_Delays_reverbs.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/18_Frequency_modulation.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/19_Scheduling.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/20_Debugging.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/21_Syntax_errors.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/22_Runtime_errors.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/Japanese_version/00.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/Japanese_version/01.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/Japanese_version/02.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/Japanese_version/03.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/Japanese_version/04.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/Japanese_version/05.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/Japanese_version/06.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/Japanese_version/07.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/Japanese_version/08.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/Japanese_version/09.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/Japanese_version/10.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/Japanese_version/11.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/Japanese_version/12.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/Japanese_version/13.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/Japanese_version/14.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Mark_Polishook_tutorial/Japanese_version/15.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Server_Tutorial.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Streams-Patterns-Events1.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Streams-Patterns-Events2.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Streams-Patterns-Events3.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Streams-Patterns-Events4.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Streams-Patterns-Events5.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Streams-Patterns-Events6.schelp +%%DOCS%%share/SuperCollider/HelpSource/Tutorials/Streams-Patterns-Events7.schelp +%%DOCS%%share/SuperCollider/HelpSource/images/SC_icon.png +%%DOCS%%share/SuperCollider/HelpSource/images/Swamp.png +%%DOCS%%share/SuperCollider/HelpSource/images/duck_alpha.png +%%DOCS%%share/SuperCollider/HelpSource/images/flowers2.jpg +%%DOCS%%share/SuperCollider/HelpSource/images/icon.supercollider.png +%%DOCS%%share/SuperCollider/HelpSource/images/lastnode.png +%%DOCS%%share/SuperCollider/HelpSource/images/node.png +%%DOCS%%share/SuperCollider/HelpSource/images/plugin.png +%%DOCS%%share/SuperCollider/HelpSource/images/plugin.svg +%%DOCS%%share/SuperCollider/HelpSource/images/vduck2.jpg +%%DOCS%%share/SuperCollider/HelpSource/images/vline.png +%%DOCS%%share/SuperCollider/HelpSource/static/browse.css +%%DOCS%%share/SuperCollider/HelpSource/static/browse.js +%%DOCS%%share/SuperCollider/HelpSource/static/codemirror.css +%%DOCS%%share/SuperCollider/HelpSource/static/editor.css +%%DOCS%%share/SuperCollider/HelpSource/static/editor.js +%%DOCS%%share/SuperCollider/HelpSource/static/lib/codemirror-5.39.2.min.js +%%DOCS%%share/SuperCollider/HelpSource/static/lib/codemirror-addon-simple-5.39.2.min.js +%%DOCS%%share/SuperCollider/HelpSource/static/lib/jquery.min.js +%%DOCS%%share/SuperCollider/HelpSource/static/lib/katex/README.md +%%DOCS%%share/SuperCollider/HelpSource/static/lib/katex/fonts/KaTeX_AMS-Regular.woff2 +%%DOCS%%share/SuperCollider/HelpSource/static/lib/katex/fonts/KaTeX_Caligraphic-Bold.woff2 +%%DOCS%%share/SuperCollider/HelpSource/static/lib/katex/fonts/KaTeX_Caligraphic-Regular.woff2 +%%DOCS%%share/SuperCollider/HelpSource/static/lib/katex/fonts/KaTeX_Fraktur-Bold.woff2 +%%DOCS%%share/SuperCollider/HelpSource/static/lib/katex/fonts/KaTeX_Fraktur-Regular.woff2 +%%DOCS%%share/SuperCollider/HelpSource/static/lib/katex/fonts/KaTeX_Main-Bold.woff2 +%%DOCS%%share/SuperCollider/HelpSource/static/lib/katex/fonts/KaTeX_Main-BoldItalic.woff2 +%%DOCS%%share/SuperCollider/HelpSource/static/lib/katex/fonts/KaTeX_Main-Italic.woff2 +%%DOCS%%share/SuperCollider/HelpSource/static/lib/katex/fonts/KaTeX_Main-Regular.woff2 +%%DOCS%%share/SuperCollider/HelpSource/static/lib/katex/fonts/KaTeX_Math-BoldItalic.woff2 +%%DOCS%%share/SuperCollider/HelpSource/static/lib/katex/fonts/KaTeX_Math-Italic.woff2 +%%DOCS%%share/SuperCollider/HelpSource/static/lib/katex/fonts/KaTeX_SansSerif-Bold.woff2 +%%DOCS%%share/SuperCollider/HelpSource/static/lib/katex/fonts/KaTeX_SansSerif-Italic.woff2 +%%DOCS%%share/SuperCollider/HelpSource/static/lib/katex/fonts/KaTeX_SansSerif-Regular.woff2 +%%DOCS%%share/SuperCollider/HelpSource/static/lib/katex/fonts/KaTeX_Script-Regular.woff2 +%%DOCS%%share/SuperCollider/HelpSource/static/lib/katex/fonts/KaTeX_Size1-Regular.woff2 +%%DOCS%%share/SuperCollider/HelpSource/static/lib/katex/fonts/KaTeX_Size2-Regular.woff2 +%%DOCS%%share/SuperCollider/HelpSource/static/lib/katex/fonts/KaTeX_Size3-Regular.woff2 +%%DOCS%%share/SuperCollider/HelpSource/static/lib/katex/fonts/KaTeX_Size4-Regular.woff2 +%%DOCS%%share/SuperCollider/HelpSource/static/lib/katex/fonts/KaTeX_Typewriter-Regular.woff2 +%%DOCS%%share/SuperCollider/HelpSource/static/lib/katex/katex.min.css +%%DOCS%%share/SuperCollider/HelpSource/static/lib/katex/katex.min.js +%%DOCS%%share/SuperCollider/HelpSource/static/scdoc.css +%%DOCS%%share/SuperCollider/HelpSource/static/scdoc.js +%%DOCS%%share/SuperCollider/HelpSource/static/search.js +%%DOCS%%share/SuperCollider/HelpSource/static/themes/README.md +%%DOCS%%share/SuperCollider/HelpSource/static/themes/classic.css +%%DOCS%%share/SuperCollider/HelpSource/static/themes/dark.css +%%DOCS%%share/SuperCollider/HelpSource/static/themes/default.css +%%DOCS%%share/SuperCollider/HelpSource/static/themes/dracula.css +%%DOCS%%share/SuperCollider/HelpSource/static/themes/monokai.css +%%DOCS%%share/SuperCollider/HelpSource/static/themes/solarizedDark.css +%%DOCS%%share/SuperCollider/HelpSource/static/themes/solarizedLight.css share/SuperCollider/README.md share/SuperCollider/README_LINUX.md share/SuperCollider/SCClassLibrary/Common/Audio/BEQSuite.sc @@ -1492,6 +1501,7 @@ share/SuperCollider/SCClassLibrary/Common/Core/Symbol.sc share/SuperCollider/SCClassLibrary/Common/Core/Thread.sc share/SuperCollider/SCClassLibrary/Common/Core/debug.sc share/SuperCollider/SCClassLibrary/Common/Files/Directory.sc +share/SuperCollider/SCClassLibrary/Common/Files/ExampleFiles.sc share/SuperCollider/SCClassLibrary/Common/Files/File.sc share/SuperCollider/SCClassLibrary/Common/Files/PathName.sc share/SuperCollider/SCClassLibrary/Common/Files/SoundFile.sc @@ -1545,6 +1555,7 @@ share/SuperCollider/SCClassLibrary/Common/GUI/Base/extValueActionIfChanged.sc share/SuperCollider/SCClassLibrary/Common/GUI/Base/viewExtensionsQt.sc share/SuperCollider/SCClassLibrary/Common/GUI/PlusGUI/Collections/StringPlusGUI.sc share/SuperCollider/SCClassLibrary/Common/GUI/PlusGUI/Control/FreqScope.sc +share/SuperCollider/SCClassLibrary/Common/GUI/PlusGUI/Control/NodeTreeView.sc share/SuperCollider/SCClassLibrary/Common/GUI/PlusGUI/Control/ServerPlusGUI.sc share/SuperCollider/SCClassLibrary/Common/GUI/PlusGUI/Control/SynthDescLibPlusGUI.sc share/SuperCollider/SCClassLibrary/Common/GUI/PlusGUI/Control/SynthDescPlusGUI.sc @@ -1783,5 +1794,6 @@ share/SuperCollider/translations/scide_zh.qm share/icons/hicolor/32x32/apps/supercollider.xpm share/icons/hicolor/48x48/apps/supercollider.png share/icons/hicolor/scalable/apps/sc_ide.svg +share/metainfo/online.supercollider.SuperCollider.metainfo.xml share/mime/packages/supercollider.xml @dir share/SuperCollider/SCClassLibrary/External diff --git a/audio/unflac/Makefile b/audio/unflac/Makefile index c8807a632a6f..8bbb5f1df7aa 100644 --- a/audio/unflac/Makefile +++ b/audio/unflac/Makefile @@ -1,6 +1,6 @@ PORTNAME= unflac DISTVERSION= 1.3 -PORTREVISION= 5 +PORTREVISION= 6 CATEGORIES= audio MAINTAINER= bsd@abinet.ru diff --git a/audio/visp-go/Makefile b/audio/visp-go/Makefile index 7d27106ab1ee..796a66deb803 100644 --- a/audio/visp-go/Makefile +++ b/audio/visp-go/Makefile @@ -1,6 +1,6 @@ PORTNAME= visp-go DISTVERSION= g20210723 -PORTREVISION= 28 +PORTREVISION= 29 CATEGORIES= audio MAINTAINER= lcook@FreeBSD.org diff --git a/audio/vsound/Makefile b/audio/vsound/Makefile index 19376eaf687b..5b6370ea0ba4 100644 --- a/audio/vsound/Makefile +++ b/audio/vsound/Makefile @@ -12,8 +12,6 @@ WWW= http://web.archive.org/web/20210502033331/http://www.vsound.org/ LICENSE= GPLv2+ LICENSE_FILE= ${WRKSRC}/COPYING -BROKEN_riscv64= fails to compile: vsound.c:101:4: Endian guess seems incorrect. - BUILD_DEPENDS= sox:audio/sox RUN_DEPENDS= sox:audio/sox diff --git a/audio/vsound/files/patch-configure b/audio/vsound/files/patch-configure index eedbb4de6b0b..e6a5f88d00ae 100644 --- a/audio/vsound/files/patch-configure +++ b/audio/vsound/files/patch-configure @@ -31,7 +31,7 @@ case "$target_cpu" in - alpha* | i?86 ) -+ alpha* | i?86 | ia64* | amd64* | aarch64 | arm* | x86_64*) ++ alpha* | i?86 | ia64* | amd64* | aarch64 | arm* | x86_64* | riscv*) ac_cv_cpu_endian_ness="little" ;; |