Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MP3 playback too fast when using more than 2 channels #15

Closed
SDLBugzilla opened this issue Feb 11, 2021 · 0 comments
Closed

MP3 playback too fast when using more than 2 channels #15

SDLBugzilla opened this issue Feb 11, 2021 · 0 comments

Comments

@SDLBugzilla
Copy link
Collaborator

This bug report was migrated from our old Bugzilla tracker.

Reported in version: unspecified
Reported for operating system, platform: Windows (XP), x86

Comments on the original bug report:

On 2006-06-24 19:43:09 +0000, joda.bot wrote:

hi

OS: Windows 2000
Soundcard: SB Live Value with 4 Channels

The MP3 playback (using SMPEG) is too fast when using more than 2 sound channels on windows. I don't hear any surround sound with SDL release 1.2.10. There might be some bugs in the code calling SDL.

I'm using SDL_mixer 1.2.7 with SDL 1.2.10. There was a problem compiling SDL_mixer against SDL 1.2.10 (using MinGW).

Compile time error: already defined int8_t when SDL_mixer includes <stdint.h>.

Orignal code:
#else
typedef signed char int8_t;
typedef unsigned char uint8_t;
typedef signed short int16_t;
typedef unsigned short uint16_t;
typedef signed int int32_t;
typedef unsigned int uint32_t;
typedef signed long long int64_t;
typedef unsigned long long uint64_t;
#ifndef SIZE_T_DEFINED
#define SIZE_T_DEFINED
typedef unsigned int size_t;
#endif
typedef unsigned int uintptr_t;
#endif /* _MSC_VER */

Fix: Just include <stdint.h>
#else
#include <stdint.h>
#ifndef SIZE_T_DEFINED
#define SIZE_T_DEFINED
typedef unsigned int size_t;
#endif
#endif /* _MSC_VER */

Perhaps you can spot an error in the code:
https://svn.sourceforge.net/svnroot/armagetronad/armagetronad/branches/0.3.0/armagetronad/src/engine/sound/sdl_mixer/

The code was not written by me, but one of my fellow Armagetron Advanced developers.

Download Alpha Test Canditate:
http://beta.armagetronad.net/fetch.php/0.3%252F20060624%252Farmagetronad-0.3.0_alpha5009.win32.exe

Steps:

  1. Set System Settings->Sound->Channels to 4 or 6
  2. Restart game to activate 4 or 6 channel sound
  3. Set System Settings->Sound->Custom Playlist: [path to some .m3u list]
    Note: The .m3u has to be outside the game directory and should contain an mp3.
  4. Set System Settings->Sound->Use Playlist: Custom
  5. Restart game to activate 4 or 6 channel sound
  6. Bind "next track" in System Settings->Misc Settings->Global Keybindings
    "next track" to some key
  7. Start a local game: Game->Local Game
  8. press next track

Note: The last time I tried to start it with the "waveout" driver the game just crashed with 4 channels, so you probably need dsound driver (or even 4 channels).

Hope you can help out. I noticed that you applied some fixes to SVN. Are some of the problems already fixed ?

On 2006-06-25 13:18:49 +0000, Sam Lantinga wrote:

The compiling bug is fixed in subversion, thanks!

SMPEG doesn't support 4/6 channel sound, you'd have to write a patch for that and send it to icculus@icculus.org.

I don't have a surround sound setup, so I can't really test any of the surround sound code myself.

On 2006-06-26 02:48:37 +0000, joda.bot wrote:

A simple patch already exists.
See ftp://ling.lll.hawaii.edu/pub/greg/Surround-SDL.tgz aka Bug 96 :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant