consumer avformat added, various cleanups and consumer realtime switching
[melted] / src / modules / sdl / consumer_sdl.c
index aa88dec..238bf2a 100644 (file)
@@ -103,10 +103,10 @@ mlt_consumer consumer_sdl_init( char *arg )
                mlt_properties_set( this->properties, "rescale", "nearest" );
 
                // Default buffer for low latency
-               mlt_properties_set_int( this->properties, "buffer", 8 );
+               mlt_properties_set_int( this->properties, "buffer", 1 );
 
                // Default progressive true
-               mlt_properties_set_int( this->properties, "progressive", 1 );
+               mlt_properties_set_int( this->properties, "progressive", 0 );
 
                // Get aspect ratio
                this->aspect_ratio = mlt_properties_get_double( this->properties, "aspect_ratio" );
@@ -246,11 +246,9 @@ static int consumer_play_audio( consumer_sdl this, mlt_frame frame, int init_aud
        mlt_audio_format afmt = mlt_audio_pcm;
 
        // Set the preferred params of the test card signal
-       int channels = 2;
-       int frequency = 48000;
+       int channels = mlt_properties_get_int( properties, "channels" );
+       int frequency = mlt_properties_get_int( properties, "frequency" );
        static int counter = 0;
-       if ( mlt_properties_get_int( properties, "frequency" ) != 0 )
-               frequency =  mlt_properties_get_int( properties, "frequency" );
 
        int samples = mlt_sample_calculator( mlt_properties_get_double( this->properties, "fps" ), frequency, counter++ );
        
@@ -347,6 +345,9 @@ static int consumer_play_video( consumer_sdl this, mlt_frame frame )
                                                this->window_height = event.resize.h;
                                                changed = 1;
                                                break;
+                                       case SDL_QUIT:
+                                               this->running = 0;
+                                               break;
                                        case SDL_KEYDOWN:
                                                {
                                                        mlt_producer producer = mlt_properties_get_data( properties, "transport_producer", NULL );