Mirror of my macOS audio player, Cog.
 
 
 
 
 
 
Go to file
Christopher Snowhill ab8154348e Hively Replayer: Fix undefined behavior
Shifting negative numbers to the left is undefined behavior, so replace
with a multiply operation instead.

Signed-off-by: Christopher Snowhill <kode54@gmail.com>
2022-03-06 03:53:28 -08:00
.githooks Fix Git hook to actually trip when only a single match is found 2021-11-21 00:13:17 -08:00
.github Update README regarding HRIR convolver 2022-01-25 23:27:10 -08:00
.vscode Add clang-format style for VSCode. 2021-02-26 23:01:25 +03:00
Application When starting playback, start shuffle at selection 2022-02-21 22:01:01 -08:00
Audio Cog Audio: Sanitize search paths 2022-03-06 03:50:01 -08:00
AudioScrobbler Reformat my own source code with clang-format 2022-02-06 21:49:27 -08:00
Base.lproj Equalizer: Disable tabbing, and remove HUD style 2022-02-14 17:15:09 -08:00
Cog.help/Contents Implemented a MIDI plug-in 2013-10-15 07:49:53 -07:00
Cog.xcodeproj Brought back the MAD plugin from death 2022-02-24 17:51:10 -08:00
CogAssets.xcassets - Big Sur phase two 2020-11-22 18:16:34 -08:00
DiskImage Removed get-dsstore.sh, its no longer used. 2007-02-25 22:23:27 +00:00
English.lproj Replace playlist status icons with SF Symbols 2022-02-10 01:51:40 -08:00
Equalizer Fix equalizer applying presets in the background 2022-02-15 22:54:14 -08:00
Feedback Reformat my own source code with clang-format 2022-02-06 21:49:27 -08:00
FileTree Reformat my own source code with clang-format 2022-02-06 21:49:27 -08:00
Formatters Reformat my own source code with clang-format 2022-02-06 21:49:27 -08:00
Frameworks Hively Replayer: Fix undefined behavior 2022-03-06 03:53:28 -08:00
Icons Update icon_blank template 2020-11-23 23:52:48 -08:00
Images Add two new toolbar buttons 2022-02-09 23:12:50 -08:00
InfoInspector Reformat my own source code with clang-format 2022-02-06 21:49:27 -08:00
Playlist Improve spam formatting string in two ways 2022-02-26 01:10:27 -08:00
Plugins Highly Complete / USF: Enable HLE again 2022-03-05 20:44:41 -08:00
Preferences Add option to quit on natural stop 2022-02-21 20:55:42 -08:00
Scripts FFmpeg: Enable AIFF support 2022-02-14 21:09:24 -08:00
Spotlight Replace more NSDictionary use with literals 2022-02-08 19:56:04 -08:00
TagEditor Reformat my own source code with clang-format 2022-02-06 21:49:27 -08:00
ThirdParty Brought back the MAD plugin from death 2022-02-24 17:51:10 -08:00
Transformers Reformat my own source code with clang-format 2022-02-06 21:49:27 -08:00
Utils Add a metadata loader cache 2022-02-26 23:24:32 -08:00
Visualization Visualization: Protect against out of bounds read 2022-03-06 03:51:25 -08:00
Window Fixed Mini Window appearing topmost on startup 2022-02-21 20:31:35 -08:00
Xcode-config Improve Shared.xcconfig. 2021-01-05 17:25:12 +01:00
en.lproj Add R8Brain to the credits and readme 2022-03-04 14:19:27 -08:00
es.lproj Add R8Brain to the credits and readme 2022-03-04 14:19:27 -08:00
.clang-format Reformat my own source code with clang-format 2022-02-06 21:49:27 -08:00
.gitignore OpenMPT legacy: Commit missing files, and fix .gitignore to allow them 2021-12-26 17:18:39 -08:00
.gitmodules Forked R8Brain repository 2022-03-04 18:08:26 -08:00
.hgignore Added missing files and updated .hgignore file 2013-10-04 10:54:40 -07:00
.hgtags Added tag k54 for changeset ddfc3989351f 2013-10-10 17:38:05 -07:00
CODE_OF_CONDUCT.md Update Code of Conduct, remove placeholder 2022-01-30 14:38:49 -08:00
COMPILE Changed contact address in compiling guide 2013-10-11 06:17:29 -07:00
COPYING Initial revision 2005-06-02 18:16:43 +00:00
Changelog Updated COMPILE, README, Changelog, and version number. 2007-07-11 01:59:03 +00:00
Cog-Bridging-Header.h - Big Sur phase two 2020-11-22 18:16:34 -08:00
Cog.entitlements Validate libraries once again 2022-02-15 00:47:31 -08:00
Cog.q1.json Equalizer: Implemented new presets contributed by Oleg-Chashko 2022-01-24 20:01:22 -08:00
Cog.sdef Add more automation commands and properties 2022-02-21 21:52:09 -08:00
Cog_Prefix.pch Initial revision 2005-06-02 18:16:43 +00:00
Info.plist Bring back scripting automation 2022-02-20 01:53:25 -08:00
KnownIssues Completely redesigned all menus, fixed crashers due to new PlaylistEntry structure, validated menu items, added menu entry for fading, synthesized playbackStatus, updated KnownIssues 2008-02-23 22:20:14 +00:00
README.md Clarified my hopefully not too stupid position 2022-03-04 18:52:03 -08:00
TODO Version bump. 2008-06-12 22:41:26 +00:00
gsx.wv New feature: Implemented headphone virtualization 2022-01-25 16:50:42 -08:00
main.m Reformat my own source code with clang-format 2022-02-06 21:49:27 -08:00
patrons.h Reformat my own source code with clang-format 2022-02-06 21:49:27 -08:00
sf.play.pdf - Big Sur phase two 2020-11-22 18:16:34 -08:00

README.md

Cog buildable

Cog is authored by Vincent Spader. It is released under the GPL. See COPYING for details.

The libraries folder contains various decoding and tagging libraries, which i have created Xcode projects for, and possibly modified to make compile on OS X. The various libraries are under each of their own licenses/copyrights.

All Cog code is copyrighted by me, and is licensed under the GPL. Cog contains bits of other code from third parties that are under their own licenses/copyright.

If you would like the photoshop sources for the various icons and graphics, please send me an email, and I will be happy to get them to you.

Share and enjoy. --Vincent Spader (vspader@users.sf.net)

ADDENDUM - 2013-09-30

I have forked this player to continue maintaining it for others to use, as its original author appears to have left it by the wayside. I will try to continue updating as I find more things that need fixing, or if I find new features to add which seem like they would be useful to me or others.

Up to date binaries will be available at the following link:

https://cog.losno.co/

--Christopher Snowhill (chris@kode54.net)

ADDENDUM - 2018-06-21

You will need to run the following to retrieve all the source code:

git submodule update --init --recursive

Setup your DEVELOPMENT_TEAM like described in Xcode-config/Shared.xcconfig to build the project.

Screenshots

Main window and Info Inspector

Main window

Mini window

Mini window

ADDENDUM - 2022-01-25

I've added an HRIR convolver, based on the HeSuVi HRIR format. A preset is bundled with the app, but external presets may be selected, in either RIFF WAVE, or Wavpack format, 7 or 14 channel, 32 bit floating point. A bad or missing preset will fall back on the built-in preset. The settings dialog won't let you assign a bad preset, either.

The channel layout of the HeSuVi HRIR is as follows:

HeSuVi HRIR channel layout

I altered this image from the original on the HeSuVi HRIR developer readme, as their image incorrectly swapped the left/right output order for the right input channels, which are actually supposed to be right output first, then left output. Otherwise, if observed as the original image, all output comes from either the center or the left side.

The layout for 7 channel no-reverb presets is the same, except it only includes the first 7 channels of the layout, and the opposite speakers simply mirror their respective input channels, and the center input is used for both left and right outputs.

Here are some preset HRIR files.

The original HeSuVi project is located here.

ADDENDUM - 2022-02-01

I've replaced the resampler with libsoxr, with no quality control settings exposed.

ADDENDUM - 2022-03-03

I've replaced the resampler yet again. This time, with R8Brain, using the 24 bit preset, since the player doesn't go over the depth of 24 bit integer or 32 bit floating point, and outputs 32 bit floating point. It still processes the resampler in 64 bits, though.

ADDENDUM - 2022-03-04

It has come to my attention that my recent commits may have assumed that Aleksey Vaneev, and possibly any other Russian or Belarusian people are in support of the war in Ukraine. I did not intend to make that assumption. I know that a lot of people are either against it, have family and/or friends affected by it, or in some unfortunate cases, have the wool pulled over their eyes by the local propaganda machine. The only thing I knew at all, was comments to the effect of him being anti-vaccines, which is a bit of a sore subject with me. I do not know anyone personally who has died from COVID-19, but I do support using the greatest caution to avoid it, including vaccines, and masks, and social distancing. I will maintain my fork of the library in case anything happens to upstream, and keep an open mind for now, I hope. Hope this long winded mess finds my users well, and doesn't further piss off anyone.