mirror of
https://github.com/vgmstream/vgmstream.git
synced 2024-11-24 15:00:11 +01:00
Merge branch 'master' into workflows-lx
This commit is contained in:
commit
cda506ae44
@ -104,6 +104,9 @@ if(BUILD_STATIC)
|
||||
set(BUILD_SHARED_LIBS OFF)
|
||||
set(CMAKE_EXE_LINKER_FLAGS "-static-libgcc -static-libstdc++ -static")
|
||||
|
||||
find_package(PkgConfig REQUIRED)
|
||||
pkg_check_modules(PC_OPUS REQUIRED opus>=1.1)
|
||||
|
||||
# Incompatible with static builds
|
||||
set(BUILD_AUDACIOUS OFF)
|
||||
endif()
|
||||
|
@ -157,6 +157,7 @@ sudo apt-get install -y gcc g++ make build-essential git
|
||||
sudo apt-get install -y libmpg123-dev libvorbis-dev libspeex-dev
|
||||
sudo apt-get install -y libavformat-dev libavcodec-dev libavutil-dev libswresample-dev
|
||||
sudo apt-get install -y libao-dev audacious-dev
|
||||
sudo apt-get install -y yasm libopus-dev
|
||||
sudo apt-get install -y cmake
|
||||
|
||||
git clone https://github.com/vgmstream/vgmstream
|
||||
@ -404,7 +405,7 @@ Adds support for ITU-T G.719 (standardization of Polycom Siren 22), used in a fe
|
||||
- lib: ---
|
||||
- unknown license (possibly invalid and Polycom's)
|
||||
|
||||
Use MSVC (use `g719.sln`). It can be built with GCC too, but you'll need to manually create scripts/makefiles.
|
||||
Use MSVC (use `g719.sln`). It can be built with GCC too, for example, using [the CMake script from this repository](../ext_libs/libg719_decode/CMakeLists.txt).
|
||||
|
||||
|
||||
### FFmpeg
|
||||
|
28
doc/CMAKE.md
28
doc/CMAKE.md
@ -82,6 +82,10 @@ sudo apt-get install -y libmpg123-dev libvorbis-dev libspeex-dev
|
||||
sudo apt-get install -y libavformat-dev libavcodec-dev libavutil-dev libswresample-dev
|
||||
# for vgmstream123 and audacious
|
||||
sudo apt-get install -y libao-dev audacious-dev
|
||||
# for JSON dumping
|
||||
sudo apt-get install -y libjansson-dev
|
||||
# for static builds
|
||||
sudo apt-get install -y yasm libopus-dev
|
||||
# actual cmake
|
||||
sudo apt-get install -y cmake
|
||||
```
|
||||
@ -118,13 +122,17 @@ All of these options are of type BOOL and can be set to either `ON` or `OFF`. Mo
|
||||
- **USE_MAIATRAC3PLUS**: Chooses if you wish to use MAIATRAC3+ for support of ATRAC3+. The default is `OFF`. It is not recommended to enable.
|
||||
- **USE_G7221**: Chooses if you wish to use G7221 for support of ITU-T G.722.1 annex C. The default is `ON`.
|
||||
- **USE_G719**: Chooses if you wish to use libg719_decode for support ITU-T G.719. The default is `ON`.
|
||||
|
||||
The following options are currently only available for Windows:
|
||||
|
||||
- **USE_ATRAC9**: Chooses if you wish to use LibAtrac9 for support of ATRAC9. The default is `ON`.
|
||||
- **USE_CELT**: Chooses if you wish to use libcelt for support of FSB CELT versions 0.6.1 and 0.11.0. The default is `ON`.
|
||||
- **USE_SPEEX**: Chooses if you wish to use libspeex for support of SPEEX. The default is `ON`.
|
||||
|
||||
The following option is currently only available for Windows:
|
||||
|
||||
- **USE_CELT**: Chooses if you wish to use libcelt for support of FSB CELT versions 0.6.1 and 0.11.0. The default is `ON`.
|
||||
|
||||
The following option is only available for *nix-based OSes:
|
||||
|
||||
- **USE_JANSSON**: Chooses if you wish to use libjansson for support of JSON dumping capabilities. The default is `ON`.
|
||||
|
||||
#### Build Options
|
||||
|
||||
All of these options are of type BOOL and can be set to either `ON` or `OFF`.
|
||||
@ -139,7 +147,9 @@ The following options are only available for Windows:
|
||||
|
||||
The following option is only available for *nix-based OSes:
|
||||
|
||||
- **BUILD_V123**: Chooses if you wih to build the vgmstream123 player. The default is `ON`.
|
||||
- **BUILD_AUDACIOUS**: Chooses if you wish to build the Audacious plugin. The default is `ON`.
|
||||
- **BUILD_STATIC**: Chooses if you wish to build the vgmstream CLI program, statically linking every dependency. Enabling this currently disables building vgmstream123 and the Audacious plugin. The default is `OFF`.
|
||||
|
||||
#### Paths
|
||||
|
||||
@ -149,10 +159,12 @@ If FDK-AAC/QAAC support is enabled, the following paths are required (with more
|
||||
|
||||
- **QAAC_PATH**: The path to the QAAC library. It can be obtained at https://github.com/kode54/qaac
|
||||
- **FDK_AAC_PATH**: The path to the FDK-AAC library. It can be obtained at https://github.com/kode54/fdk-aac
|
||||
|
||||
If MAIATRAC3+ support is enabled, the following path is required:
|
||||
|
||||
- **MAIATRAC3PLUS_PATH**: The path to the MAIATRAC3+ library. It is not recommended to use.
|
||||
- **MAIATRAC3PLUS_PATH**: The path to the MAIATRAC3+ library. If MAIATRAC3+ support is enabled, providing this path is required. It is not recommended to use.
|
||||
- **MPEG_PATH**: The path to the mpg123 library. It can be obtained from [the mpg123 project on SourceForge.net](https://sourceforge.net/projects/mpg123/files/mpg123/1.25.10/). If not set and static building is enabled, this will be downloaded automatically.
|
||||
- **FFMPEG_PATH**: The path to the FFmpeg source directory. It can be obtained at https://git.ffmpeg.org/ffmpeg.git If not set and static building is enabled, this will be downloaded automatically.
|
||||
- **G719_PATH**: The path to the G.719 decoder library. It can be obtained at https://github.com/kode54/libg719_decode If not set, it is downloaded automatically on Linux.
|
||||
- **ATRAC9_PATH**: The path to the Atrac9 library. It can be obtained at https://github.com/Thealexbarney/LibAtrac9 If not set, it is downloaded automatically on Linux.
|
||||
- **LIBAO_PATH**: The path to the AO library. If static building is enabled and you chose to build the vgmstream123 player, providing this path is required. It is not recommended to use.
|
||||
|
||||
The CLI/vgmstream123 programs are normally installed to `CMAKE_INSTALL_PREFIX`, changing this will change where those are installed.
|
||||
|
||||
|
@ -1863,8 +1863,8 @@ static int parse_type_audio(ubi_sb_header* sb, off_t offset, STREAMFILE* sf) {
|
||||
/* PC can have subblock 2 based on two fields near the end but it wasn't seen so far */
|
||||
|
||||
/* stream_type field is not used if the flag is not set (it even contains garbage in some versions)
|
||||
* except for PS3 which has two hardware codecs (PSX and AT3) */
|
||||
if (!software_flag && sb->platform != UBI_PS3)
|
||||
* except for PS3 and new PSP which have two hardware codecs (PSX and AT3) */
|
||||
if (!software_flag && sb->platform != UBI_PS3 && !(sb->platform == UBI_PSP && !sb->is_psp_old))
|
||||
sb->stream_type = 0x00;
|
||||
} else {
|
||||
sb->subblock_id = (sb->stream_type == 0x01) ? 0 : 1;
|
||||
|
@ -911,6 +911,8 @@ void describe_vgmstream(VGMSTREAM* vgmstream, char* desc, int length) {
|
||||
char temp[TEMPSIZE];
|
||||
double time_mm, time_ss;
|
||||
|
||||
desc[0] = '\0';
|
||||
|
||||
if (!vgmstream) {
|
||||
snprintf(temp,TEMPSIZE, "NULL VGMSTREAM");
|
||||
concatn(length,desc,temp);
|
||||
|
@ -539,17 +539,15 @@ void winamp_SetPan(int pan) {
|
||||
/* display info box (ALT+3) */
|
||||
int winamp_InfoBox(const in_char *fn, HWND hwnd) {
|
||||
char description[1024] = {0}, tmp[1024] = {0};
|
||||
size_t description_size = 1024;
|
||||
TCHAR tbuf[1024] = {0};
|
||||
double tmpVolume = 1.0;
|
||||
|
||||
concatn(description_size,description,PLUGIN_INFO "\n\n");
|
||||
|
||||
if (!fn || !*fn) {
|
||||
/* no filename = current playing file */
|
||||
if (!vgmstream)
|
||||
return 0;
|
||||
|
||||
describe_vgmstream(vgmstream,description,description_size);
|
||||
describe_vgmstream(vgmstream,description,sizeof(description));
|
||||
}
|
||||
else {
|
||||
/* some other file in playlist given by filename */
|
||||
@ -569,24 +567,21 @@ int winamp_InfoBox(const in_char *fn, HWND hwnd) {
|
||||
vgmstream_mixing_autodownmix(infostream, settings.downmix_channels);
|
||||
vgmstream_mixing_enable(infostream, 0, NULL, NULL);
|
||||
|
||||
describe_vgmstream(infostream,description,description_size);
|
||||
describe_vgmstream(infostream,description,sizeof(description));
|
||||
|
||||
close_vgmstream(infostream);
|
||||
infostream = NULL;
|
||||
tmpVolume = get_album_gain_volume(fn);
|
||||
}
|
||||
|
||||
snprintf(tmp, sizeof(tmp), "\nvolume: %.6f\n", tmpVolume);
|
||||
concatn(sizeof(description), description, tmp);
|
||||
|
||||
{
|
||||
TCHAR buf[1024] = {0};
|
||||
size_t buf_size = 1024;
|
||||
concatn(sizeof(description), description, "\n" PLUGIN_INFO);
|
||||
|
||||
snprintf(tmp, sizeof(tmp), "\nvolume: %.6f", tmpVolume);
|
||||
concatn(description_size, description, tmp);
|
||||
cfg_char_to_wchar(tbuf, sizeof(tbuf) / sizeof(TCHAR), description);
|
||||
MessageBox(hwnd, tbuf, TEXT("Stream info"), MB_OK);
|
||||
|
||||
cfg_char_to_wchar(buf, buf_size, description);
|
||||
MessageBox(hwnd,buf,TEXT("Stream info"),MB_OK);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user