packets_.push(packet);\r
} \r
\r
- std::vector<std::shared_ptr<std::vector<int32_t>>> poll()\r
+ std::vector<std::shared_ptr<core::audio_buffer>> poll()\r
{\r
- std::vector<std::shared_ptr<std::vector<int32_t>>> result;\r
+ std::vector<std::shared_ptr<core::audio_buffer>> result;\r
\r
if(packets_.empty())\r
return result;\r
return result;\r
}\r
\r
- std::vector<std::shared_ptr<std::vector<int32_t>>> empty_poll()\r
+ std::vector<std::shared_ptr<core::audio_buffer>> empty_poll()\r
{\r
auto packet = packets_.front();\r
packets_.pop();\r
if(!packet) \r
return boost::assign::list_of(nullptr);\r
\r
- return boost::assign::list_of(std::make_shared<std::vector<int32_t>>(format_desc_.audio_samples_per_frame, 0)); \r
+ return boost::assign::list_of(std::make_shared<core::audio_buffer>(format_desc_.audio_samples_per_frame, 0)); \r
}\r
\r
- std::shared_ptr<std::vector<int32_t>> decode(AVPacket& pkt)\r
+ std::shared_ptr<core::audio_buffer> decode(AVPacket& pkt)\r
{ \r
buffer1_.resize(AVCODEC_MAX_AUDIO_FRAME_SIZE*2);\r
int written_bytes = buffer1_.size() - FF_INPUT_BUFFER_PADDING_SIZE;\r
const auto n_samples = buffer1_.size() / av_get_bytes_per_sample(AV_SAMPLE_FMT_S32);\r
const auto samples = reinterpret_cast<int32_t*>(buffer1_.data());\r
\r
- return std::make_shared<std::vector<int32_t>>(samples, samples + n_samples);\r
+ return std::make_shared<core::audio_buffer>(samples, samples + n_samples);\r
}\r
\r
bool ready() const\r
audio_decoder::audio_decoder(const safe_ptr<AVFormatContext>& context, const core::video_format_desc& format_desc) : impl_(new implementation(context, format_desc)){}\r
void audio_decoder::push(const std::shared_ptr<AVPacket>& packet){impl_->push(packet);}\r
bool audio_decoder::ready() const{return impl_->ready();}\r
-std::vector<std::shared_ptr<std::vector<int32_t>>> audio_decoder::poll(){return impl_->poll();}\r
+std::vector<std::shared_ptr<core::audio_buffer>> audio_decoder::poll(){return impl_->poll();}\r
int64_t audio_decoder::nb_frames() const{return impl_->nb_frames_;}\r
}
\ No newline at end of file