if( running() ) {
done = 1;
mux_lock->unlock();
- join();
}
+ join();
}
void FFMPEG::flow_off()
int got_frame = 0;
int ret = aud->decode_frame(&pkt, frame, got_frame);
if( ret <= 0 ) break;
- if( got_frame ) {
+ if( got_frame && frame->channels == nch ) {
float *samples;
int len = aud->get_samples(samples,
&frame->extended_data[0], frame->nb_samples);