[Bug 220785] audio/jack: Update, added COOKEDMODE option, changed to GH

classic Classic list List threaded Threaded
21 messages Options
12
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[Bug 220785] audio/jack: Update, added COOKEDMODE option, changed to GH

bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=220785

            Bug ID: 220785
           Summary: audio/jack: Update, added COOKEDMODE option, changed
                    to GH
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: Individual Port(s)
          Assignee: [hidden email]
          Reporter: [hidden email]
          Assignee: [hidden email]
             Flags: maintainer-feedback?([hidden email])

Created attachment 184414
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=184414&action=edit
patch

Updated jack:
* Added COOKEDMODE option that turns on SNDCTL_DSP_COOKEDMODE.
  Without the cooked mode Jack's OSS driver currently fails for some soundcards
  (it chooses wrong sample rate). It's better to have COOKEDMODE=on by default
since
  it often appears broken otherwise.
  Professionals probably want COOKEDMODE=off, after they make sure their
soundcard
  works with jack.
* Switched to github. It is easy to change revisions. Particularly, included
the
  merged upstream pull request #60 there enables the realtime mode (-R). It
didn't
  make it into the release yet.
* Added USES=autoreconf (github doesn't include configure)
* Also jack now installs more manpages.

Builds in poudriere.
Runs fine. Particularly, it failed for me before, and now it works with
COOKEDMODE=on.

Just in case, to run with real-time priority /etc/rc.conf needs lines like
these:
> jackd_enable="YES"
> jackd_user="{your-jack-user}"
# jackd_rtprio="YES"
# jackd_args="-R -doss -r{sample-rate} -p1024 -n3 -w16 --capture /dev/dsp{N}
--playback /dev/dsp{N}"

- sample-rate can be 44100, 48000, etc.

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
[hidden email] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-multimedia
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

maintainer-feedback requested: [Bug 220785] audio/jack: Update, added COOKEDMODE option, changed to GH

bugzilla-noreply
Yuri Victorovich <[hidden email]> has reassigned Bugzilla Automation
<[hidden email]>'s request for maintainer-feedback to
[hidden email]:
Bug 220785: audio/jack: Update, added COOKEDMODE option, changed to GH
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=220785



--- Description ---
Created attachment 184414
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=184414&action=edit
patch

Updated jack:
* Added COOKEDMODE option that turns on SNDCTL_DSP_COOKEDMODE.
  Without the cooked mode Jack's OSS driver currently fails for some soundcards
  (it chooses wrong sample rate). It's better to have COOKEDMODE=on by default
since
  it often appears broken otherwise.
  Professionals probably want COOKEDMODE=off, after they make sure their
soundcard
  works with jack.
* Switched to github. It is easy to change revisions. Particularly, included
the
  merged upstream pull request #60 there enables the realtime mode (-R). It
didn't
  make it into the release yet.
* Added USES=autoreconf (github doesn't include configure)
* Also jack now installs more manpages.

Builds in poudriere.
Runs fine. Particularly, it failed for me before, and now it works with
COOKEDMODE=on.

Just in case, to run with real-time priority /etc/rc.conf needs lines like
these:
> jackd_enable="YES"
> jackd_user="{your-jack-user}"
# jackd_rtprio="YES"
# jackd_args="-R -doss -r{sample-rate} -p1024 -n3 -w16 --capture /dev/dsp{N}
--playback /dev/dsp{N}"

- sample-rate can be 44100, 48000, etc.
_______________________________________________
[hidden email] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-multimedia
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[Bug 220785] audio/jack: Add and enable COOKEDMODE option, Use GitHub

bugzilla-noreply
In reply to this post by bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=220785

Kubilay Kocak <[hidden email]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Severity|Affects Only Me             |Affects Some People
             Status|New                         |Open
            Summary|audio/jack: Update, added   |audio/jack: Add and enable
                   |COOKEDMODE option, changed  |COOKEDMODE option, Use
                   |to GH                       |GitHub
           Keywords|                            |needs-patch, needs-qa
              Flags|                            |merge-quarterly?

--- Comment #1 from Kubilay Kocak <[hidden email]> ---
Thank you Yuri,

-1 on switching MASTER_SITES, in particular to non-release (commit specific)
tags,  given:

- PR's patches can be backported relatively easily (make makepatch, single
files/patch-file)

- It becomes less obvious and explicit from which version of the source code
the port is ultimately built.

- Once the next version is released, the need to use specific commit
hashes/tags is removed

- Given this is a bugfix, it is highly desirable that quarterly users receive
the change/benefit. Minimising unrelated changes is good to reduce potential
for regressions.

Also, if special instructions are useful/valuable for users, please either add
them to a pkg-message, or provide (probably commented out to not affect
existing settings) examples in any default configurations files that are
installed.

Could you please also elaborate on the details of the QA that was run,
mentioning versions/architectures/etc of FreeBSD that were tested.

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
[hidden email] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-multimedia
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[Bug 220785] audio/jack: Add and enable COOKEDMODE option, Use GitHub

bugzilla-noreply
In reply to this post by bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=220785

--- Comment #2 from Yuri Victorovich <[hidden email]> ---
Kibilay,

> -1 on switching MASTER_SITES, in particular to non-release (commit specific) tags

Jack's release site is broken for these reasons:
* It is http:// making it vulnerable to MITM attacks.
* It doesn't provide tarball fingerprints (md5 or sha256)
At this point it is much safer to use github, it at least is https://

> - Once the next version is released, the need to use specific commit hashes/tags is removed

They release very rarely, once a year or so. It is much easier to move GH
tagname, compared to adding patches.

> Could you please also elaborate on the details of the QA that was run, mentioning versions/architectures/etc of FreeBSD that were tested.

I usually write "Builds in poudriere."
In this case I also ran it for a while.

---

Jack port at this time is basically half-broken. Real-time fails, and
samplerate is wrong on many cards. These two problems prevent many users from
successfully using Jack. I was struggling with it myself, until I figured out
these two problems.

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
[hidden email] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-multimedia
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[Bug 220785] audio/jack: Add and enable COOKEDMODE option, Use GitHub

bugzilla-noreply
In reply to this post by bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=220785

Yuri Victorovich <[hidden email]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Attachment #184414|0                           |1
        is obsolete|                            |

--- Comment #3 from Yuri Victorovich <[hidden email]> ---
Created attachment 184418
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=184418&action=edit
patch

* Added package message explaining how to start jack, and explaining COOKEDMODE
option.

QAs:
* Builds in poudriere
* passes portlint
* runs fine

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
[hidden email] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-multimedia
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[Bug 220785] audio/jack: Add and enable COOKEDMODE option, Use GitHub

bugzilla-noreply
In reply to this post by bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=220785

Yuri Victorovich <[hidden email]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Attachment #184418|0                           |1
        is obsolete|                            |

--- Comment #4 from Yuri Victorovich <[hidden email]> ---
Created attachment 184425
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=184425&action=edit
patch

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
[hidden email] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-multimedia
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[Bug 220785] audio/jack: Add and enable COOKEDMODE option, Use GitHub

bugzilla-noreply
In reply to this post by bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=220785

Yuri Victorovich <[hidden email]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Attachment #184425|0                           |1
        is obsolete|                            |

--- Comment #5 from Yuri Victorovich <[hidden email]> ---
Created attachment 184426
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=184426&action=edit
patch

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
[hidden email] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-multimedia
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[Bug 220785] audio/jack: Add and enable COOKEDMODE option, Use GitHub

bugzilla-noreply
In reply to this post by bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=220785

Hans Petter Selasky <[hidden email]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |[hidden email]

--- Comment #6 from Hans Petter Selasky <[hidden email]> ---
Looks good. Maybe you should have a printout when cooked mode is in use?

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
[hidden email] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-multimedia
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[Bug 220785] audio/jack: Add and enable COOKEDMODE option, Use GitHub

bugzilla-noreply
In reply to this post by bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=220785

--- Comment #7 from Yuri Victorovich <[hidden email]> ---
(In reply to Hans Petter Selasky from comment #6)

I've added pkg-message with an explanation.

Yuri

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
[hidden email] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-multimedia
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[Bug 220785] audio/jack: Add and enable COOKEDMODE option, Use GitHub

bugzilla-noreply
In reply to this post by bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=220785

--- Comment #8 from Yuri Victorovich <[hidden email]> ---
(In reply to Hans Petter Selasky from comment #6)

Ok, I will add the printout in jackd.

Yuri

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
[hidden email] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-multimedia
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[Bug 220785] audio/jack: Add and enable COOKEDMODE option, Use GitHub

bugzilla-noreply
In reply to this post by bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=220785

Yuri Victorovich <[hidden email]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Attachment #184426|0                           |1
        is obsolete|                            |

--- Comment #9 from Yuri Victorovich <[hidden email]> ---
Created attachment 184446
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=184446&action=edit
patch

Changes:
* Added COOKEDMODE printout in the log
* Made the log printed through daemon(8), vs. shell
* Added DYNSIMD option to reflect --enable-dynsimd (only for i386/amd64)

QA:
* builds in poudriere
* passes portlint
* runs fine

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
[hidden email] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-multimedia
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[Bug 220785] audio/jack: Add and enable COOKEDMODE option, Use GitHub

bugzilla-noreply
In reply to this post by bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=220785

Yuri Victorovich <[hidden email]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Attachment #184446|0                           |1
        is obsolete|                            |

--- Comment #10 from Yuri Victorovich <[hidden email]> ---
Created attachment 184447
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=184447&action=edit
patch

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
[hidden email] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-multimedia
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[Bug 220785] audio/jack: Add and enable COOKEDMODE option, Use GitHub

bugzilla-noreply
In reply to this post by bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=220785

--- Comment #11 from Jan Beich <[hidden email]> ---
Comment on attachment 184447
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=184447
patch

> +SUB_FILES= pkg-message

Why? The file doesn't seem to contain any %% macros such e.g., %%PREFIX%%.

> +DYNSIMD_CONFIGURE_ENABLE=dynsimd
>
>  CFLAGS+= -I${BDB_INCLUDE_DIR}
> +COOKEDMODE_CFLAGS+= -DOPTION_COOKEDMODE=1
>  LIBS+= -L${BDB_LIB_DIR}
>  INSTALL_TARGET= install-strip

- Rename DYNSIMD to RTCPU which already has default description vi
Mk/bsd.options.desc.mk
- Don't mix option helpers and generic definitions/flags. It's confusing and
breaks existing style in the file. For one, see how other _CONFIGURE_ENABLE are
grouped.
- Maybe replace += with plain = as _CFLAGS helper already appends (not
overrides) the value

> +OPTIONS_DEFINE= ALSA DOXYGEN READLINE SNDIO COOKEDMODE
> +OPTIONS_DEFINE_i386= ALSA DOXYGEN READLINE SNDIO COOKEDMODE DYNSIMD
> +OPTIONS_DEFINE_amd64= ALSA DOXYGEN READLINE SNDIO COOKEDMODE DYNSIMD
> +OPTIONS_DEFAULT= READLINE COOKEDMODE
> +OPTIONS_DEFAULT_i386= READLINE COOKEDMODE DYNSIMD
> +OPTIONS_DEFAULT_amd64= READLINE COOKEDMODE DYNSIMD

Can you deduplicate OPTIONS_*_${ARCH} ? Mk/bsd.options.mk already appends (not
overrides) arch-specific options.

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
[hidden email] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-multimedia
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[Bug 220785] audio/jack: Add and enable COOKEDMODE option, Use GitHub

bugzilla-noreply
In reply to this post by bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=220785

--- Comment #12 from Jan Beich <[hidden email]> ---
(In reply to Jan Beich from comment #11)
> - Rename DYNSIMD to RTCPU which already has default description vi Mk/bsd.options.desc.mk

Ignore, RTCPU isn't in Mk/bsd.options.desc.mk yet. Standardizing on option
names makes it easier to enable them globally via OPTIONS_SET.

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
[hidden email] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-multimedia
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[Bug 220785] audio/jack: Add and enable COOKEDMODE option, Use GitHub

bugzilla-noreply
In reply to this post by bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=220785

--- Comment #13 from Yuri Victorovich <[hidden email]> ---
Also, RTCPU isn't the same as DYNSIMD.
Changing CFLAGS+= to CFLAGS= strips -O flag from almost all compilation
commands.

Will update other items soon.

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
[hidden email] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-multimedia
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[Bug 220785] audio/jack: Add and enable COOKEDMODE option, Use GitHub

bugzilla-noreply
In reply to this post by bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=220785

Yuri Victorovich <[hidden email]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Attachment #184447|0                           |1
        is obsolete|                            |

--- Comment #14 from Yuri Victorovich <[hidden email]> ---
Created attachment 184450
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=184450&action=edit
patch

* Removed .in suffix from pkg-message
* Only left DYNSIMD in OPTIONS_DEFINE_{arch} - I previously mistakenly thought
that OPTIONS_DEFINE_{arch} overrides, vs. appends to OPTIONS_DEFINE
* Moved DYNSIMD_CONFIGURE_ENABLE below other {opt}_CONFIGURE_{xxx} tags

Thanks Jan for noticing those problems!

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
[hidden email] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-multimedia
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[Bug 220785] audio/jack: Add and enable COOKEDMODE option, Use GitHub

bugzilla-noreply
In reply to this post by bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=220785

--- Comment #15 from Jan Beich <[hidden email]> ---
Comment on attachment 184450
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=184450
patch

> +COOKEDMODE_CFLAGS+= -DOPTION_COOKEDMODE

Can you move this one down as well, closer to other option helpers? It only
takes effect when both OPTIONS_DEFINE and PORT_OPTIONS (i.e. options selected
by user) contain COOKEDMODE.

(In reply to Yuri Victorovich from comment #13)
> Also, RTCPU isn't the same as DYNSIMD.

Looking at the code DYNSIMD seems to use CPUID check to determine which (if
any) of SIMD optimizations to use. Not sure how it's different from RTCPU in
mplayer, ffmpeg or libvpx.

> Changing CFLAGS+= to CFLAGS= strips -O flag from almost all compilation commands.

_CFLAGS option helper i.e., COOKEDMODE_CFLAGS in this case. Nothing else is
expected to modify it unlike CFLAGS which has -O2 via /usr/share/mk/sys.mk,
-fstack-protector via $PORTSDIR/Mk/bsd.ssp.mk, etc.

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
[hidden email] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-multimedia
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[Bug 220785] audio/jack: Add and enable COOKEDMODE option, Use GitHub

bugzilla-noreply
In reply to this post by bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=220785

--- Comment #16 from Yuri Victorovich <[hidden email]> ---
> Looking at the code DYNSIMD seems to use CPUID check to determine which (if any) of SIMD optimizations to use. Not sure how it's different from RTCPU in mplayer, ffmpeg or libvpx.

RTCPU is "Use runtime CPU detection", DYNSIMD="Use runtime CPU detection for
choosing SIMD". So DYNSIMD is more specific. It is logically a subclass of
RTCPU.

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
[hidden email] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-multimedia
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[Bug 220785] audio/jack: Add and enable COOKEDMODE option, Use GitHub

bugzilla-noreply
In reply to this post by bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=220785

Yuri Victorovich <[hidden email]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Attachment #184450|0                           |1
        is obsolete|                            |

--- Comment #17 from Yuri Victorovich <[hidden email]> ---
Created attachment 184452
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=184452&action=edit
patch

* Moved _CONFIGURE

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
[hidden email] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-multimedia
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[Bug 220785] audio/jack: Add and enable COOKEDMODE option, Use GitHub

bugzilla-noreply
In reply to this post by bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=220785

--- Comment #18 from Yuri Victorovich <[hidden email]> ---
Unrelated to this bug, but RTCPU is too generic to be added to
Mk/bsd.options.desc.mk IMO. It should have the purpose encoded, ex. RTCPUSIMD,
RTCPUHT (hyperthreading), RTCPUHYPERVISOR (running on hypervisor), etc. The
purposes are that different, that one flag can't fit all.

Is there a written suggestion for RTCPU online?

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
[hidden email] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-multimedia
To unsubscribe, send any mail to "[hidden email]"
12
Loading...