Exemple #1
0
	/** This version loads both the raw data and the normalized samples
	 *  into two buffers and also returns the format and the sampling
	 *  frequency.
	 *
	 *  @see LoadMemoryFromFileNormalized
	 *  @see LoadMemoryHelloWorldNormalized
	 *
	 *  @alsymbols
	 *  @alutfunref{LoadMemoryFromFile}
	 */
	void LoadMemoryFromFile(
		std::vector<ALubyte>& raw,
		std::vector<ALfloat>& norm,
		const ALchar* file_path,
		DataFormat* data_format,
		ALfloat* frequency
	) const
	{
		::ALenum format = 0;
		::ALsizei size = 0;
		::ALvoid* ptr = OALPLUS_ALFUNC(alut,LoadMemoryFromFile)(
			file_path,
			&format,
			&size,
			frequency
		);
		OALPLUS_CHECK_ALUT(OALPLUS_ERROR_INFO(alut, LoadMemoryFromFile));

		_free_on_scope_exit cleaner = { ptr };
		OALPLUS_FAKE_USE(cleaner);

		if(data_format) *data_format = DataFormat(format);

		raw = _load_memory(ptr, size);
		norm = _load_mem_norm(ptr, format, size);
	}
Exemple #2
0
    /** This version normalizes the sound samples.
     *
     *  @see LoadMemoryFromFileNormalized
     *
     *  @alsymbols
     *  @alutfunref{LoadMemoryHelloWorld}
     */
    std::vector<ALfloat> LoadMemoryHelloWorldNormalized(
      DataFormat* data_format, ALfloat* frequency) const {
        ::ALenum format = 0;
        ::ALsizei size = 0;
        ::ALvoid* ptr =
          OALPLUS_ALUTFUNC(LoadMemoryHelloWorld)(&format, &size, frequency);
        OALPLUS_CHECK_SIMPLE_ALUT(LoadMemoryHelloWorld);

        _free_on_scope_exit cleaner = {ptr};
        OALPLUS_FAKE_USE(cleaner);

        if(data_format)
            *data_format = DataFormat(format);

        return _load_mem_norm(ptr, format, size);
    }
Exemple #3
0
    /** This version normalizes the sound samples.
     *
     *  @see LoadMemoryHelloWorldNormalized
     *  @see LoadMemoryFromFile
     *
     *  @alsymbols
     *  @alutfunref{LoadMemoryFromFile}
     */
    std::vector<ALfloat> LoadMemoryFromFileNormalized(
      const StrCRef& file_path,
      DataFormat* data_format,
      ALfloat* frequency) const {
        ::ALenum format = 0;
        ::ALsizei size = 0;
        ::ALvoid* ptr = OALPLUS_ALUTFUNC(LoadMemoryFromFile)(
          file_path.is_nts() ? file_path.c_str() : file_path.str().c_str(),
          &format,
          &size,
          frequency);
        OALPLUS_CHECK_SIMPLE_ALUT(LoadMemoryFromFile);

        _free_on_scope_exit cleaner = {ptr};
        OALPLUS_FAKE_USE(cleaner);

        if(data_format)
            *data_format = DataFormat(format);

        return _load_mem_norm(ptr, format, size);
    }