# Buildsheet autogenerated by ravenadm tool -- Do not edit. NAMEBASE= gstreamer1-plugins-good VERSION= 1.24.2 KEYWORDS= multimedia VARIANTS= standard SDESC[standard]= GStreamer Multimedia Framework "Good" Plugins HOMEPAGE= https://gstreamer.freedesktop.org/ CONTACT= nobody DOWNLOAD_GROUPS= main SITES[main]= https://gstreamer.freedesktop.org/src/gst-plugins-good/ DISTFILE[1]= gst-plugins-good-1.24.2.tar.xz:main DF_INDEX= 1 SPKGS[standard]= complete primary nls OPTIONS_AVAILABLE= none OPTIONS_STANDARD= none BUILD_DEPENDS= libgpg-error:dev:standard gstreamer1:dev:standard gstreamer1-plugins-base:dev:standard BUILDRUN_DEPENDS= gstreamer1:primary:standard gstreamer1-plugins-base:primary:standard USES= gmake pkgconfig zlib bz2 meson GNOME_COMPONENTS= glib libxml2 DISTNAME= gst-plugins-good-1.24.2 LICENSE= LGPL20+:primary LICENSE_TERMS= primary:{{WRKDIR}}/TERMS LICENSE_FILE= LGPL20+:{{WRKSRC}}/COPYING LICENSE_AWK= TERMS:"^$$" LICENSE_SOURCE= TERMS:{{WRKSRC}}/gst/alpha/gstalpha.h LICENSE_SCHEME= solo FPC_EQUIVALENT= multimedia/gstreamer1-plugins-good MESON_ARGS= -Dadaptivedemux2=disabled -Dalpha=enabled -Dapetag=enabled -Daudiofx=enabled -Daudioparsers=enabled -Dauparse=enabled -Dautodetect=enabled -Davi=enabled -Dcutter=enabled -Ddebugutils=enabled -Ddeinterlace=enabled -Ddtmf=enabled -Deffectv=enabled -Dequalizer=enabled -Dflv=enabled -Dflx=enabled -Dgoom=enabled -Dgoom2k1=enabled -Dicydemux=enabled -Did3demux=enabled -Dimagefreeze=enabled -Dinterleave=enabled -Disomp4=enabled -Dlaw=enabled -Dlevel=enabled -Dmatroska=enabled -Dmonoscope=enabled -Dmultifile=enabled -Dmultipart=enabled -Dreplaygain=enabled -Drtp=enabled -Drtpmanager=enabled -Drtsp=enabled -Dshapewipe=enabled -Dsmpte=enabled -Dspectrum=enabled -Dudp=enabled -Dvideobox=enabled -Dvideocrop=enabled -Dvideofilter=enabled -Dvideomixer=enabled -Dwavenc=enabled -Dwavparse=enabled -Dy4m=enabled -Dxingmux=enabled -Daalib=disabled -Dbz2=enabled -Dcairo=disabled -Ddirectsound=disabled -Ddv=disabled -Ddv1394=disabled -Dflac=disabled -Dgdk-pixbuf=disabled -Dgtk3=disabled -Djack=disabled -Djpeg=disabled -Dlame=disabled -Dlibcaca=disabled -Dmpg123=disabled -Doss4=enabled -Dosxaudio=disabled -Dosxvideo=disabled -Dpng=disabled -Dpulse=disabled -Dqt5=disabled -Dshout2=disabled -Dsoup=disabled -Dspeex=disabled -Dtaglib=disabled -Dtwolame=disabled -Dvpx=disabled -Dwaveform=disabled -Dwavpack=disabled -Drpicamsrc=disabled -Drpi-header-dir=disabled -Drpi-lib-dir=disabled -Dximagesrc=disabled -Dximagesrc-xshm=disabled -Dximagesrc-xfixes=disabled -Dximagesrc-xdamage=disabled -Dv4l2=disabled -Dv4l2-probe=false -Dv4l2-libv4l2=disabled -Dv4l2-gudev=disabled -Ddoc=disabled -Dnls=enabled -Dexamples=disabled -Dtests=disabled -Dorc=disabled SOVERSION= 0.2402.0 PLIST_SUB= GSTVER=1.0 VAR_OPSYS[freebsd]= MAKEFILE_LINE=MESON_ARGS+=-Doss=enabled VAR_OPSYS[sunos]= MAKEFILE_LINE=MESON_ARGS+=-Doss=disabled VAR_OPSYS[linux]= MAKEFILE_LINE=MESON_ARGS+=-Doss=enabled VAR_OPSYS[netbsd]= MAKEFILE_LINE=MESON_ARGS+=-Doss=enabled VAR_OPSYS[dragonfly]= MAKEFILE_LINE=MESON_ARGS+=-Doss=enabled VAR_OPSYS[midnightbsd]= MAKEFILE_LINE=MESON_ARGS+=-Doss=enabled [FILE:91:descriptions/desc.primary] This package contains self-contained plugins from the "good" plugin set for GStreamer (1). [FILE:109:distinfo] 6e347c72d4b8b2886d890ffe9f6767a9edb02f201588e8c3a572dcd08d9852bd 2907768 gst-plugins-good-1.24.2.tar.xz [FILE:1306:manifests/plist.primary] %%ONLY-DRAGONFLY%%lib/gstreamer-%%GSTVER%%/libgstossaudio.so %%ONLY-FREEBSD%%lib/gstreamer-%%GSTVER%%/libgstossaudio.so %%ONLY-LINUX%%lib/gstreamer-%%GSTVER%%/libgstossaudio.so %%ONLY-MIDNIGHTBSD%%lib/gstreamer-%%GSTVER%%/libgstossaudio.so %%ONLY-NETBSD%%lib/gstreamer-%%GSTVER%%/libgstossaudio.so lib/gstreamer-%%GSTVER%%/ libgstalaw.so libgstalpha.so libgstalphacolor.so libgstapetag.so libgstaudiofx.so libgstaudioparsers.so libgstauparse.so libgstautodetect.so libgstavi.so libgstcutter.so libgstdebug.so libgstdeinterlace.so libgstdtmf.so libgsteffectv.so libgstequalizer.so libgstflv.so libgstflxdec.so libgstgoom.so libgstgoom2k1.so libgsticydemux.so libgstid3demux.so libgstimagefreeze.so libgstinterleave.so libgstisomp4.so libgstlevel.so libgstmatroska.so libgstmonoscope.so libgstmulaw.so libgstmultifile.so libgstmultipart.so libgstnavigationtest.so libgstoss4.so libgstreplaygain.so libgstrtp.so libgstrtpmanager.so libgstrtsp.so libgstshapewipe.so libgstsmpte.so libgstspectrum.so libgstudp.so libgstvideobox.so libgstvideocrop.so libgstvideofilter.so libgstvideomixer.so libgstwavenc.so libgstwavparse.so libgstxingmux.so libgsty4menc.so share/gstreamer-%%GSTVER%%/presets/ GstIirEqualizer10Bands.prs GstIirEqualizer3Bands.prs GstQTMux.prs [FILE:2612:manifests/plist.nls] share/locale/af/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/az/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/bg/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/ca/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/cs/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/da/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/de/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/el/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/en_GB/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/eo/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/es/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/eu/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/fi/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/fr/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/fur/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/gl/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/hr/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/hu/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/id/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/it/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/ja/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/ka/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/ky/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/lt/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/lv/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/mt/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/nb/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/nl/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/or/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/pl/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/pt_BR/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/ro/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/ru/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/sk/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/sl/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/sq/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/sr/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/sv/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/tr/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/uk/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/vi/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/zh_CN/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/zh_HK/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo share/locale/zh_TW/LC_MESSAGES/gst-plugins-good-%%GSTVER%%.mo [FILE:2373:dragonfly/patch-sys_oss_gstosshelper.c] --- sys/oss/gstosshelper.c.orig 2024-03-21 20:47:53 UTC +++ sys/oss/gstosshelper.c @@ -82,9 +82,9 @@ GstCaps * gst_oss_helper_probe_caps (gint fd) { #if G_BYTE_ORDER == G_LITTLE_ENDIAN - const guint probe_formats[] = { AFMT_S16_LE, AFMT_U16_LE, AFMT_U8, AFMT_S8 }; + const guint probe_formats[] = { AFMT_U32_LE, AFMT_S32_LE, AFMT_U24_LE, AFMT_S24_LE, AFMT_S16_LE, AFMT_U16_LE, AFMT_U8, AFMT_S8 }; #else - const guint probe_formats[] = { AFMT_S16_BE, AFMT_U16_BE, AFMT_U8, AFMT_S8 }; + const guint probe_formats[] = { AFMT_U32_BE, AFMT_S32_BE, AFMT_U24_BE, AFMT_S24_BE, AFMT_S16_BE, AFMT_U16_BE, AFMT_U8, AFMT_S8 }; #endif GstOssProbe *probe; int i, f; @@ -165,6 +165,9 @@ gst_oss_helper_get_format_structure (uns const gchar *format; switch (format_bit) { + case AFMT_S8: + format = "S8"; + break; case AFMT_U8: format = "U8"; break; @@ -174,15 +177,36 @@ gst_oss_helper_get_format_structure (uns case AFMT_S16_BE: format = "S16BE"; break; - case AFMT_S8: - format = "S8"; - break; case AFMT_U16_LE: format = "U16LE"; break; case AFMT_U16_BE: format = "U16BE"; break; + case AFMT_S24_LE: + format = "S24LE"; + break; + case AFMT_S24_BE: + format = "S24BE"; + break; + case AFMT_U24_LE: + format = "U24LE"; + break; + case AFMT_U24_BE: + format = "U24BE"; + break; + case AFMT_S32_LE: + format = "S32LE"; + break; + case AFMT_S32_BE: + format = "S32BE"; + break; + case AFMT_U32_LE: + format = "U32LE"; + break; + case AFMT_U32_BE: + format = "U32BE"; + break; default: g_assert_not_reached (); return NULL; @@ -316,13 +340,17 @@ gst_oss_helper_rate_check_rate (GstOssPr int format; int n_channels; int ret; + int rst; rate = irate; format = probe->format; n_channels = probe->n_channels; + rst = 4000; /* XXX Lowest supported rate for FreeBSD. */ GST_LOG ("checking format %d, channels %d, rate %d", format, n_channels, rate); + /* Reset rate to lowest supported rate. */ + ioctl (probe->fd, SNDCTL_DSP_SPEED, &rst); ret = ioctl (probe->fd, SNDCTL_DSP_SETFMT, &format); if (ret < 0 || format != probe->format) { GST_DEBUG ("unsupported format: %d (%d)", probe->format, format); [FILE:2339:dragonfly/patch-sys_oss_gstosssink.c] --- sys/oss/gstosssink.c.orig 2024-03-21 20:47:53 UTC +++ sys/oss/gstosssink.c @@ -107,7 +107,10 @@ enum PROP_DEVICE, }; -#define FORMATS "{" GST_AUDIO_NE(S16)","GST_AUDIO_NE(U16)", S8, U8 }" +#define FORMATS "{" GST_AUDIO_NE(S32)","GST_AUDIO_NE(U32)"," \ + GST_AUDIO_NE(S24)","GST_AUDIO_NE(U24)"," \ + GST_AUDIO_NE(S16)","GST_AUDIO_NE(U16)"," \ + "S8, U8 }" static GstStaticPadTemplate osssink_sink_factory = GST_STATIC_PAD_TEMPLATE ("sink", @@ -324,6 +327,9 @@ gst_oss_sink_get_format (GstAudioRingBuf case GST_AUDIO_RING_BUFFER_FORMAT_TYPE_RAW: { switch (rfmt) { + case GST_AUDIO_FORMAT_S8: + result = AFMT_S8; + break; case GST_AUDIO_FORMAT_U8: result = AFMT_U8; break; @@ -333,15 +339,36 @@ gst_oss_sink_get_format (GstAudioRingBuf case GST_AUDIO_FORMAT_S16BE: result = AFMT_S16_BE; break; - case GST_AUDIO_FORMAT_S8: - result = AFMT_S8; - break; case GST_AUDIO_FORMAT_U16LE: result = AFMT_U16_LE; break; case GST_AUDIO_FORMAT_U16BE: result = AFMT_U16_BE; break; + case GST_AUDIO_FORMAT_S24LE: + result = AFMT_S24_LE; + break; + case GST_AUDIO_FORMAT_S24BE: + result = AFMT_S24_BE; + break; + case GST_AUDIO_FORMAT_U24LE: + result = AFMT_U24_LE; + break; + case GST_AUDIO_FORMAT_U24BE: + result = AFMT_U24_BE; + break; + case GST_AUDIO_FORMAT_S32LE: + result = AFMT_S32_LE; + break; + case GST_AUDIO_FORMAT_S32BE: + result = AFMT_S32_BE; + break; + case GST_AUDIO_FORMAT_U32LE: + result = AFMT_U32_LE; + break; + case GST_AUDIO_FORMAT_U32BE: + result = AFMT_U32_BE; + break; default: result = 0; break; @@ -444,7 +471,7 @@ gst_oss_sink_prepare (GstAudioSink * asi rate = GST_AUDIO_INFO_RATE (&spec->info); channels = GST_AUDIO_INFO_CHANNELS (&spec->info); - if (width != 16 && width != 8) + if (width != 32 && width != 24 && width != 16 && width != 8) goto dodgy_width; SET_PARAM (oss, SNDCTL_DSP_SETFMT, tmp, "SETFMT"); [FILE:2448:dragonfly/patch-sys_oss_gstosssrc.c] --- sys/oss/gstosssrc.c.orig 2024-03-21 20:47:53 UTC +++ sys/oss/gstosssrc.c @@ -103,7 +103,10 @@ static guint gst_oss_src_read (GstAudioS static guint gst_oss_src_delay (GstAudioSrc * asrc); static void gst_oss_src_reset (GstAudioSrc * asrc); -#define FORMATS "{" GST_AUDIO_NE(S16)","GST_AUDIO_NE(U16)", S8, U8 }" +#define FORMATS "{" GST_AUDIO_NE(S32)","GST_AUDIO_NE(U32)"," \ + GST_AUDIO_NE(S24)","GST_AUDIO_NE(U24)"," \ + GST_AUDIO_NE(S16)","GST_AUDIO_NE(U16)"," \ + "S8, U8 }" static GstStaticPadTemplate osssrc_src_factory = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, @@ -316,6 +319,9 @@ gst_oss_src_get_format (GstAudioRingBuff case GST_AUDIO_RING_BUFFER_FORMAT_TYPE_RAW: { switch (rfmt) { + case GST_AUDIO_FORMAT_S8: + result = AFMT_S8; + break; case GST_AUDIO_FORMAT_U8: result = AFMT_U8; break; @@ -325,15 +331,36 @@ gst_oss_src_get_format (GstAudioRingBuff case GST_AUDIO_FORMAT_S16BE: result = AFMT_S16_BE; break; - case GST_AUDIO_FORMAT_S8: - result = AFMT_S8; - break; case GST_AUDIO_FORMAT_U16LE: result = AFMT_U16_LE; break; case GST_AUDIO_FORMAT_U16BE: result = AFMT_U16_BE; break; + case GST_AUDIO_FORMAT_S24LE: + result = AFMT_S24_LE; + break; + case GST_AUDIO_FORMAT_S24BE: + result = AFMT_S24_BE; + break; + case GST_AUDIO_FORMAT_U24LE: + result = AFMT_U24_LE; + break; + case GST_AUDIO_FORMAT_U24BE: + result = AFMT_U24_BE; + break; + case GST_AUDIO_FORMAT_S32LE: + result = AFMT_S32_LE; + break; + case GST_AUDIO_FORMAT_S32BE: + result = AFMT_S32_BE; + break; + case GST_AUDIO_FORMAT_U32LE: + result = AFMT_U32_LE; + break; + case GST_AUDIO_FORMAT_U32BE: + result = AFMT_U32_BE; + break; default: result = 0; break; @@ -430,7 +457,7 @@ gst_oss_src_prepare (GstAudioSrc * asrc, rate = GST_AUDIO_INFO_RATE (&spec->info); channels = GST_AUDIO_INFO_CHANNELS (&spec->info); - if (width != 16 && width != 8) + if (width != 32 && width != 24 && width != 16 && width != 8) goto dodgy_width; tmp = ilog2 (spec->segsize); [FILE:2373:freebsd/patch-sys_oss_gstosshelper.c] --- sys/oss/gstosshelper.c.orig 2024-03-21 20:47:53 UTC +++ sys/oss/gstosshelper.c @@ -82,9 +82,9 @@ GstCaps * gst_oss_helper_probe_caps (gint fd) { #if G_BYTE_ORDER == G_LITTLE_ENDIAN - const guint probe_formats[] = { AFMT_S16_LE, AFMT_U16_LE, AFMT_U8, AFMT_S8 }; + const guint probe_formats[] = { AFMT_U32_LE, AFMT_S32_LE, AFMT_U24_LE, AFMT_S24_LE, AFMT_S16_LE, AFMT_U16_LE, AFMT_U8, AFMT_S8 }; #else - const guint probe_formats[] = { AFMT_S16_BE, AFMT_U16_BE, AFMT_U8, AFMT_S8 }; + const guint probe_formats[] = { AFMT_U32_BE, AFMT_S32_BE, AFMT_U24_BE, AFMT_S24_BE, AFMT_S16_BE, AFMT_U16_BE, AFMT_U8, AFMT_S8 }; #endif GstOssProbe *probe; int i, f; @@ -165,6 +165,9 @@ gst_oss_helper_get_format_structure (uns const gchar *format; switch (format_bit) { + case AFMT_S8: + format = "S8"; + break; case AFMT_U8: format = "U8"; break; @@ -174,15 +177,36 @@ gst_oss_helper_get_format_structure (uns case AFMT_S16_BE: format = "S16BE"; break; - case AFMT_S8: - format = "S8"; - break; case AFMT_U16_LE: format = "U16LE"; break; case AFMT_U16_BE: format = "U16BE"; break; + case AFMT_S24_LE: + format = "S24LE"; + break; + case AFMT_S24_BE: + format = "S24BE"; + break; + case AFMT_U24_LE: + format = "U24LE"; + break; + case AFMT_U24_BE: + format = "U24BE"; + break; + case AFMT_S32_LE: + format = "S32LE"; + break; + case AFMT_S32_BE: + format = "S32BE"; + break; + case AFMT_U32_LE: + format = "U32LE"; + break; + case AFMT_U32_BE: + format = "U32BE"; + break; default: g_assert_not_reached (); return NULL; @@ -316,13 +340,17 @@ gst_oss_helper_rate_check_rate (GstOssPr int format; int n_channels; int ret; + int rst; rate = irate; format = probe->format; n_channels = probe->n_channels; + rst = 4000; /* XXX Lowest supported rate for FreeBSD. */ GST_LOG ("checking format %d, channels %d, rate %d", format, n_channels, rate); + /* Reset rate to lowest supported rate. */ + ioctl (probe->fd, SNDCTL_DSP_SPEED, &rst); ret = ioctl (probe->fd, SNDCTL_DSP_SETFMT, &format); if (ret < 0 || format != probe->format) { GST_DEBUG ("unsupported format: %d (%d)", probe->format, format); [FILE:2339:freebsd/patch-sys_oss_gstosssink.c] --- sys/oss/gstosssink.c.orig 2024-03-21 20:47:53 UTC +++ sys/oss/gstosssink.c @@ -107,7 +107,10 @@ enum PROP_DEVICE, }; -#define FORMATS "{" GST_AUDIO_NE(S16)","GST_AUDIO_NE(U16)", S8, U8 }" +#define FORMATS "{" GST_AUDIO_NE(S32)","GST_AUDIO_NE(U32)"," \ + GST_AUDIO_NE(S24)","GST_AUDIO_NE(U24)"," \ + GST_AUDIO_NE(S16)","GST_AUDIO_NE(U16)"," \ + "S8, U8 }" static GstStaticPadTemplate osssink_sink_factory = GST_STATIC_PAD_TEMPLATE ("sink", @@ -324,6 +327,9 @@ gst_oss_sink_get_format (GstAudioRingBuf case GST_AUDIO_RING_BUFFER_FORMAT_TYPE_RAW: { switch (rfmt) { + case GST_AUDIO_FORMAT_S8: + result = AFMT_S8; + break; case GST_AUDIO_FORMAT_U8: result = AFMT_U8; break; @@ -333,15 +339,36 @@ gst_oss_sink_get_format (GstAudioRingBuf case GST_AUDIO_FORMAT_S16BE: result = AFMT_S16_BE; break; - case GST_AUDIO_FORMAT_S8: - result = AFMT_S8; - break; case GST_AUDIO_FORMAT_U16LE: result = AFMT_U16_LE; break; case GST_AUDIO_FORMAT_U16BE: result = AFMT_U16_BE; break; + case GST_AUDIO_FORMAT_S24LE: + result = AFMT_S24_LE; + break; + case GST_AUDIO_FORMAT_S24BE: + result = AFMT_S24_BE; + break; + case GST_AUDIO_FORMAT_U24LE: + result = AFMT_U24_LE; + break; + case GST_AUDIO_FORMAT_U24BE: + result = AFMT_U24_BE; + break; + case GST_AUDIO_FORMAT_S32LE: + result = AFMT_S32_LE; + break; + case GST_AUDIO_FORMAT_S32BE: + result = AFMT_S32_BE; + break; + case GST_AUDIO_FORMAT_U32LE: + result = AFMT_U32_LE; + break; + case GST_AUDIO_FORMAT_U32BE: + result = AFMT_U32_BE; + break; default: result = 0; break; @@ -444,7 +471,7 @@ gst_oss_sink_prepare (GstAudioSink * asi rate = GST_AUDIO_INFO_RATE (&spec->info); channels = GST_AUDIO_INFO_CHANNELS (&spec->info); - if (width != 16 && width != 8) + if (width != 32 && width != 24 && width != 16 && width != 8) goto dodgy_width; SET_PARAM (oss, SNDCTL_DSP_SETFMT, tmp, "SETFMT"); [FILE:2448:freebsd/patch-sys_oss_gstosssrc.c] --- sys/oss/gstosssrc.c.orig 2024-03-21 20:47:53 UTC +++ sys/oss/gstosssrc.c @@ -103,7 +103,10 @@ static guint gst_oss_src_read (GstAudioS static guint gst_oss_src_delay (GstAudioSrc * asrc); static void gst_oss_src_reset (GstAudioSrc * asrc); -#define FORMATS "{" GST_AUDIO_NE(S16)","GST_AUDIO_NE(U16)", S8, U8 }" +#define FORMATS "{" GST_AUDIO_NE(S32)","GST_AUDIO_NE(U32)"," \ + GST_AUDIO_NE(S24)","GST_AUDIO_NE(U24)"," \ + GST_AUDIO_NE(S16)","GST_AUDIO_NE(U16)"," \ + "S8, U8 }" static GstStaticPadTemplate osssrc_src_factory = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, @@ -316,6 +319,9 @@ gst_oss_src_get_format (GstAudioRingBuff case GST_AUDIO_RING_BUFFER_FORMAT_TYPE_RAW: { switch (rfmt) { + case GST_AUDIO_FORMAT_S8: + result = AFMT_S8; + break; case GST_AUDIO_FORMAT_U8: result = AFMT_U8; break; @@ -325,15 +331,36 @@ gst_oss_src_get_format (GstAudioRingBuff case GST_AUDIO_FORMAT_S16BE: result = AFMT_S16_BE; break; - case GST_AUDIO_FORMAT_S8: - result = AFMT_S8; - break; case GST_AUDIO_FORMAT_U16LE: result = AFMT_U16_LE; break; case GST_AUDIO_FORMAT_U16BE: result = AFMT_U16_BE; break; + case GST_AUDIO_FORMAT_S24LE: + result = AFMT_S24_LE; + break; + case GST_AUDIO_FORMAT_S24BE: + result = AFMT_S24_BE; + break; + case GST_AUDIO_FORMAT_U24LE: + result = AFMT_U24_LE; + break; + case GST_AUDIO_FORMAT_U24BE: + result = AFMT_U24_BE; + break; + case GST_AUDIO_FORMAT_S32LE: + result = AFMT_S32_LE; + break; + case GST_AUDIO_FORMAT_S32BE: + result = AFMT_S32_BE; + break; + case GST_AUDIO_FORMAT_U32LE: + result = AFMT_U32_LE; + break; + case GST_AUDIO_FORMAT_U32BE: + result = AFMT_U32_BE; + break; default: result = 0; break; @@ -430,7 +457,7 @@ gst_oss_src_prepare (GstAudioSrc * asrc, rate = GST_AUDIO_INFO_RATE (&spec->info); channels = GST_AUDIO_INFO_CHANNELS (&spec->info); - if (width != 16 && width != 8) + if (width != 32 && width != 24 && width != 16 && width != 8) goto dodgy_width; tmp = ilog2 (spec->segsize); [FILE:610:netbsd/patch-sys_oss_meson.build] --- sys/oss/meson.build.orig 2022-10-12 15:39:51 UTC +++ sys/oss/meson.build @@ -25,11 +25,12 @@ if not oss_option.disabled() endif if have_oss + ossaudio_dep = cc.find_library('ossaudio', required: true) plugins += [library('gstossaudio', 'gstossaudio.c', 'gstossaudioelement.c', 'gstosshelper.c', 'gstosssink.c', 'gstosssrc.c', c_args : gst_plugins_good_args, include_directories : [configinc, libsinc], - dependencies : [gstaudio_dep, gstbase_dep], + dependencies : [gstaudio_dep, gstbase_dep, ossaudio_dep], install : true, install_dir : plugins_install_dir)] endif [FILE:576:sunos/patch-gst_avi_meson.build] --- gst/avi/meson.build.orig 2021-01-13 21:08:52 UTC +++ gst/avi/meson.build @@ -4,12 +4,13 @@ avi_sources = [ 'gstavidemux.c', 'gstavisubtitle.c' ] +libintl_dep = cc.find_library('intl', required : true) gstavi = library('gstavi', avi_sources, c_args : gst_plugins_good_args, include_directories : [configinc, libsinc], - dependencies : [gst_dep, gstriff_dep, gstaudio_dep, gstvideo_dep, gsttag_dep], + dependencies : [gst_dep, gstriff_dep, gstaudio_dep, gstvideo_dep, gsttag_dep,libintl_dep], install : true, install_dir : plugins_install_dir, ) [FILE:624:sunos/patch-gst_isomp4_meson.build] --- gst/isomp4/meson.build.orig 2021-01-13 21:08:53 UTC +++ gst/isomp4/meson.build @@ -16,6 +16,7 @@ mp4_sources = [ 'properties.c', 'gstqtmuxmap.c' ] +libintl_dep = cc.find_library('intl', required : true) gstisomp4 = library('gstisomp4', mp4_sources, @@ -23,6 +24,7 @@ gstisomp4 = library('gstisomp4', link_args : noseh_link_args, include_directories : [configinc, libsinc], dependencies : [gst_dep, gstriff_dep, gstaudio_dep, gstvideo_dep, + libintl_dep, gstrtp_dep, gsttag_dep, gstpbutils_dep, zlib_dep], install : true, install_dir : plugins_install_dir, [FILE:596:sunos/patch-gst_rtsp_meson.build] --- gst/rtsp/meson.build.orig 2021-01-13 21:08:53 UTC +++ gst/rtsp/meson.build @@ -4,12 +4,13 @@ rtsp_sources = [ 'gstrtpdec.c', 'gstrtspext.c', ] +libintl_dep = cc.find_library('intl', required : true) gstrtsp = library('gstrtsp', rtsp_sources, c_args : gst_plugins_good_args, include_directories : [configinc, libsinc], - dependencies : [gstbase_dep, gio_dep, gstrtp_dep, gstrtsp_dep, gstsdp_dep, gstnet_dep], + dependencies : [gstbase_dep, gio_dep, gstrtp_dep, gstrtsp_dep, gstsdp_dep, gstnet_dep, libintl_dep], install : true, install_dir : plugins_install_dir, ) [FILE:540:sunos/patch-gst_udp_meson.build] --- gst/udp/meson.build.orig 2021-01-13 21:08:53 UTC +++ gst/udp/meson.build @@ -6,12 +6,13 @@ udp_sources = [ 'gstdynudpsink.c', 'gstudpnetutils.c' ] +socket_dep = cc.find_library('socket', required : true) gstudp = library('gstudp', udp_sources, c_args : gst_plugins_good_args, include_directories : [configinc, libsinc], - dependencies : [gst_dep, gstbase_dep, gstnet_dep, gio_dep], + dependencies : [gst_dep, gstbase_dep, gstnet_dep, gio_dep,socket_dep], install : true, install_dir : plugins_install_dir, ) [FILE:664:sunos/patch-sys_oss4_meson.build] --- sys/oss4/meson.build.orig 2021-01-13 21:08:53 UTC +++ sys/oss4/meson.build @@ -15,13 +15,14 @@ if not oss4_option.disabled() endif if have_oss4 + libintl_dep = cc.find_library('intl', required : true) message('Required headers found, building Open Sound System 4 plugin.') plugins += [library('gstoss4', 'oss4-audio.c', 'oss4-property-probe.c', 'oss4-sink.c', 'oss4-source.c', c_args : gst_plugins_good_args, include_directories : [configinc, libsinc], - dependencies : [gstaudio_dep, gstbase_dep], + dependencies : [gstaudio_dep, gstbase_dep, libintl_dep], install : true, install_dir : plugins_install_dir)] else