StreamEncoderVorbis.h 813 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. /*
  2. * StreamEncoder.h
  3. * ---------------
  4. * Purpose: Exporting streamed music files.
  5. * Notes : none
  6. * Authors: Joern Heusipp
  7. * OpenMPT Devs
  8. * The OpenMPT source code is released under the BSD license. Read LICENSE for more details.
  9. */
  10. #pragma once
  11. #include "openmpt/all/BuildSettings.hpp"
  12. #include "StreamEncoder.h"
  13. OPENMPT_NAMESPACE_BEGIN
  14. class VorbisEncoder : public EncoderFactoryBase
  15. {
  16. public:
  17. std::unique_ptr<IAudioStreamEncoder> ConstructStreamEncoder(std::ostream &file, const Encoder::Settings &settings, const FileTags &tags) const override;
  18. bool IsBitrateSupported(int samplerate, int channels, int bitrate) const override;
  19. mpt::ustring DescribeQuality(float quality) const override;
  20. bool IsAvailable() const override;
  21. public:
  22. VorbisEncoder();
  23. };
  24. OPENMPT_NAMESPACE_END