audio_decode_thread.h 696 B

1234567891011121314151617181920212223242526272829
  1. #ifndef AVPLAYER2_AUDIO_DECODE_THREAD_H
  2. #define AVPLAYER2_AUDIO_DECODE_THREAD_H
  3. #pragma once
  4. #include "ThreadBase.h"
  5. #include "packets_sync.h"
  6. #include <atomic>
  7. class AudioDecodeThread : public ThreadBase
  8. {
  9. public:
  10. AudioDecodeThread(const AudioDecodeThread&) = delete;
  11. AudioDecodeThread& operator=(const AudioDecodeThread&) = delete;
  12. AudioDecodeThread(AudioDecodeThread&&) = delete;
  13. AudioDecodeThread& operator=(AudioDecodeThread&&) = delete;
  14. explicit AudioDecodeThread(VideoState* pState = nullptr);
  15. ~AudioDecodeThread();
  16. void stop() override;
  17. protected:
  18. void run() override;
  19. private:
  20. VideoState* m_pState;
  21. };
  22. #endif // AVPLAYER2_AUDIO_DECODE_THREAD_H