X-Git-Url: http://research.m1stereo.tv/gitweb?a=blobdiff_plain;f=src%2Fmodules%2Favformat%2Ffilter_avresample.c;h=a79d453c051ad7123afb29fdf1c5a22a572fd5aa;hb=cdf7162ebc07120e92166a0e43eaba21ecca25ba;hp=ae0c5dfbd5f28796f142eef2d80f69a78e4fb63e;hpb=f00476101550ec7d8e863f6516aa83bc1b524570;p=melted diff --git a/src/modules/avformat/filter_avresample.c b/src/modules/avformat/filter_avresample.c index ae0c5df..a79d453 100644 --- a/src/modules/avformat/filter_avresample.c +++ b/src/modules/avformat/filter_avresample.c @@ -60,9 +60,6 @@ static int resample_get_audio( mlt_frame frame, int16_t **buffer, mlt_audio_form if ( output_rate == 0 ) output_rate = *frequency; - // Restore the original get_audio - frame->get_audio = mlt_frame_pop_audio( frame ); - // Get the producer's audio mlt_frame_get_audio( frame, buffer, format, frequency, &channels_avail, samples ); @@ -153,16 +150,13 @@ static int resample_get_audio( mlt_frame frame, int16_t **buffer, mlt_audio_form static mlt_frame filter_process( mlt_filter this, mlt_frame frame ) { // Only call this if we have a means to get audio - if ( frame->get_audio != NULL ) + if ( mlt_frame_is_test_audio( frame ) == 0 ) { - // Push the original method on to the stack - mlt_frame_push_audio( frame, frame->get_audio ); - // Push the filter on to the stack mlt_frame_push_audio( frame, this ); // Assign our get_audio method - frame->get_audio = resample_get_audio; + mlt_frame_push_audio( frame, resample_get_audio ); } return frame;