Exemple #1
0
void Media::play(const std::string & in, int channel, int loop)
{
    std::string filename = convert_path(in);
    size_t size = platform_get_file_size(filename.c_str());
    if (size <= 0) {
        std::cout << "Audio file does not exist: " << filename << std::endl;
        return;
    }
    AudioType type = get_audio_type(filename);
    SoundFile data(INVALID_ASSET_ID, filename, type, size);
    play(&data, channel, loop);
}
Exemple #2
0
void Media::add_file(unsigned int id, const chowstring & fn)
{
    chowstring filename = convert_path(fn);
    AudioType type = get_audio_type(filename);
    size_t size = platform_get_file_size(filename.c_str());

    bool is_wav = type == WAV;
    SoundData * data;
    if ((is_wav && size <= WAV_STREAM_THRESHOLD) ||
        (!is_wav && size <= OGG_STREAM_THRESHOLD))
    {
        FSFile fp(filename.c_str(), "r");
        data = new SoundMemory(id, fp, type, size);
    } else {
        data = new SoundFile(id, filename, type, size);
    }
    sounds[id] = data;
}
Exemple #3
0
void Media::play(const chowstring & in, int channel, int loop)
{
    chowstring filename = convert_path(in);
    size_t size;
#ifdef USE_FILE_PRELOAD
    ChowdrenAudio::AudioPreload * preload;
    preload = ChowdrenAudio::get_audio_preload(filename);
    if (preload != NULL) {
        size = preload->size;
    } else
#endif
    {
        size = platform_get_file_size(filename.c_str());
    }
    if (size <= 0) {
        std::cout << "Audio file does not exist: " << filename
            << std::endl;
        return;
    }
    AudioType type = get_audio_type(filename);
    SoundFile data(INVALID_ASSET_ID, filename, type, size);
    play(&data, channel, loop);
}