X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fmodules%2Fvorbis%2Fproducer_vorbis.c;fp=src%2Fmodules%2Fvorbis%2Fproducer_vorbis.c;h=99499b28f9e69e6abe908aa29bfabd1ba7c4fa04;hb=d37df955f0ca4a093eddbb17e53df561ccad59cd;hp=b5a12c4e365a85e685122397c61911c3038821b7;hpb=a40789bcbd7b14fa4ee5263bb17d16f0fa48a7b5;p=mlt diff --git a/src/modules/vorbis/producer_vorbis.c b/src/modules/vorbis/producer_vorbis.c index b5a12c4e..99499b28 100644 --- a/src/modules/vorbis/producer_vorbis.c +++ b/src/modules/vorbis/producer_vorbis.c @@ -220,6 +220,8 @@ static int producer_get_audio( mlt_frame frame, void **buffer, mlt_audio_format // Get the producer properties mlt_properties properties = MLT_PRODUCER_PROPERTIES( this ); + mlt_service_lock( MLT_PRODUCER_SERVICE( this ) ); + // Get the ogg vorbis file OggVorbis_File *ov = mlt_properties_get_data( properties, "ogg_vorbis_file", NULL ); @@ -342,6 +344,8 @@ static int producer_get_audio( mlt_frame frame, void **buffer, mlt_audio_format // Regardless of speed, we expect to get the next frame (cos we ain't too bright) mlt_properties_set_position( properties, "audio_expected", position + 1 ); + mlt_service_unlock( MLT_PRODUCER_SERVICE( this ) ); + return 0; }