/** Find the default streams.
*/
-void find_default_streams( AVFormatContext *context, int *audio_index, int *video_index )
+static void find_default_streams( AVFormatContext *context, int *audio_index, int *video_index )
{
int i;
/** Producer file destructor.
*/
-void producer_file_close( void *context )
+static void producer_file_close( void *context )
{
if ( context != NULL )
{
/** Producer file destructor.
*/
-void producer_codec_close( void *codec )
+static void producer_codec_close( void *codec )
{
if ( codec != NULL )
{
{
// This isn't going to be accurate for all formats
mlt_position frames = ( mlt_position )( ( ( double )context->duration / ( double )AV_TIME_BASE ) * fps );
- mlt_properties_set_position( properties, "out", frames - 1 );
- mlt_properties_set_position( properties, "length", frames );
+ mlt_properties_set_position( properties, "out", frames - 2 );
+ mlt_properties_set_position( properties, "length", frames - 1 );
}
// Find default audio and video streams
}
// Now handle the audio if we have enough
+
if ( audio_used >= *samples )
{
*buffer = malloc( *samples * *channels * sizeof( int16_t ) );