#include <framework/mlt_log.h>
#include <stdlib.h>
#include <string.h>
-#include <stdio.h>
#include <ctype.h>
#include <unistd.h>
break;
default:
result = 0;
- fprintf( stderr, "Producer defined inside something that isn't a container\n" );
+ mlt_log_warning( NULL, "[producer_xml] Producer defined inside something that isn't a container\n" );
break;
};
}
else
{
- fprintf( stderr, "Invalid state for tractor\n" );
+ mlt_log_error( NULL, "[producer_xml] Invalid state for tractor\n" );
}
}
}
else
{
- fprintf( stderr, "Invalid multitrack position\n" );
+ mlt_log_error( NULL, "[producer_xml] Invalid multitrack position\n" );
}
}
mlt_service service = context_pop_service( context, &type );
if ( service == NULL || type != mlt_multitrack_type )
- fprintf( stderr, "End multitrack in the wrong state...\n" );
+ mlt_log_error( NULL, "[producer_xml] End multitrack in the wrong state...\n" );
}
static void on_start_playlist( deserialise_context context, const xmlChar *name, const xmlChar **atts)
}
else
{
- fprintf( stderr, "Invalid state of playlist end %d\n", type );
+ mlt_log_error( NULL, "[producer_xml] Invalid state of playlist end %d\n", type );
}
}
if ( !producer && resource )
producer = MLT_SERVICE( mlt_factory_producer( context->profile, NULL, resource ) );
if ( !producer )
- fprintf( stderr, "failed to load producer \"%s\"\n", resource );
+ mlt_log_error( NULL, "[producer_xml] failed to load producer \"%s\"\n", resource );
if ( !producer )
producer = MLT_SERVICE( mlt_factory_producer( context->profile, NULL, "+INVALID.txt" ) );
if ( !producer )
track_service( context->destructors, producer, (mlt_destructor) mlt_producer_close );
mlt_properties_set_lcnumeric( MLT_SERVICE_PROPERTIES( producer ), context->lc_numeric );
- // Propogate the properties
+ // Propagate the properties
qualify_property( context, properties, "resource" );
qualify_property( context, properties, "luma" );
qualify_property( context, properties, "luma.resource" );
}
else
{
- fprintf( stderr, "blank without a playlist - a definite no no\n" );
+ mlt_log_error( NULL, "[producer_xml] blank without a playlist - a definite no no\n" );
}
}
}
else
{
- fprintf( stderr, "Entry not part of a playlist...\n" );
+ mlt_log_error( NULL, "[producer_xml] Entry not part of a playlist...\n" );
}
context_push_service( context, parent, parent_type );
if ( entry == NULL && entry_type != mlt_entry_type )
{
- fprintf( stderr, "Invalid state at end of entry\n" );
+ mlt_log_error( NULL, "[producer_xml] Invalid state at end of entry\n" );
}
}
else if ( parent_type == mlt_multitrack_type )
multitrack = MLT_MULTITRACK( parent );
else
- fprintf( stderr, "track contained in an invalid container\n" );
+ mlt_log_error( NULL, "[producer_xml] track contained in an invalid container\n" );
if ( multitrack != NULL )
{
}
else
{
- fprintf( stderr, "Invalid state at end of track\n" );
+ mlt_log_error( NULL, "[producer_xml] Invalid state at end of track\n" );
}
}
if ( !filter )
{
- fprintf( stderr, "failed to load filter \"%s\"\n", id );
+ mlt_log_error( NULL, "[producer_xml] failed to load filter \"%s\"\n", id );
if ( parent )
context_push_service( context, parent, parent_type );
mlt_service_close( service );
}
else
{
- fprintf( stderr, "filter closed with invalid parent...\n" );
+ mlt_log_error( NULL, "[producer_xml] filter closed with invalid parent...\n" );
}
// Close the dummy filter service
}
else
{
- fprintf( stderr, "Invalid top of stack on filter close\n" );
+ mlt_log_error( NULL, "[producer_xml] Invalid top of stack on filter close\n" );
}
}
if ( !effect )
{
- fprintf( stderr, "failed to load transition \"%s\"\n", id );
+ mlt_log_error( NULL, "[producer_xml] failed to load transition \"%s\"\n", id );
if ( parent )
context_push_service( context, parent, parent_type );
mlt_service_close( service );
}
else
{
- fprintf( stderr, "Misplaced transition - ignoring\n" );
+ mlt_log_warning( NULL, "[producer_xml] Misplaced transition - ignoring\n" );
}
// Put the parent back on the stack
}
else
{
- fprintf( stderr, "transition closed with invalid parent...\n" );
+ mlt_log_error( NULL, "[producer_xml] transition closed with invalid parent...\n" );
}
// Close the dummy filter service
}
else
{
- fprintf( stderr, "Invalid top of stack on transition close\n" );
+ mlt_log_error( NULL, "[producer_xml] Invalid top of stack on transition close\n" );
}
}
}
else
{
- fprintf( stderr, "Property without a service '%s'?\n", ( const char * )name );
+ mlt_log_error( NULL, "[producer_xml] Property without a service '%s'?\n", ( const char * )name );
}
}
}
else
{
- fprintf( stderr, "Property without a service '%s'??\n", (const char *)name );
+ mlt_log_error( NULL, "[producer_xml] Property without a service '%s'??\n", (const char *)name );
}
}
struct _xmlParserCtxt *xmlcontext = ( struct _xmlParserCtxt* )ctx;
deserialise_context context = ( deserialise_context )( xmlcontext->_private );
-//printf("on_start_element: %s\n", name );
if ( context->pass == 0 )
{
if ( xmlStrcmp( name, _x("mlt") ) == 0 ||
struct _xmlParserCtxt *xmlcontext = ( struct _xmlParserCtxt* )ctx;
deserialise_context context = ( deserialise_context )( xmlcontext->_private );
-//printf("on_end_element: %s\n", name );
if ( context->is_value == 1 && context->pass == 1 && xmlStrcmp( name, _x("property") ) != 0 )
context_pop_node( context );
else if ( xmlStrcmp( name, _x("multitrack") ) == 0 )
return e;
}
-static void on_error( void * ctx, const char * msg, ...)
+static void on_error( void * ctx, const char * msg, ... )
{
- struct _xmlError* err_ptr = xmlCtxtGetLastError(ctx);
+ struct _xmlError* err_ptr = xmlCtxtGetLastError( ctx );
switch( err_ptr->level )
{
case XML_ERR_WARNING:
- mlt_log_warning( NULL, "XML parse warning: %s\trow: %d\tcol: %d\n",
- err_ptr->message, err_ptr->line, err_ptr->int2);
+ mlt_log_warning( NULL, "[producer_xml] parse warning: %s\trow: %d\tcol: %d\n",
+ err_ptr->message, err_ptr->line, err_ptr->int2 );
break;
case XML_ERR_ERROR:
- mlt_log_error( NULL, "XML parse error: %s\trow: %d\tcol: %d\n",
- err_ptr->message, err_ptr->line, err_ptr->int2);
+ mlt_log_error( NULL, "[producer_xml] parse error: %s\trow: %d\tcol: %d\n",
+ err_ptr->message, err_ptr->line, err_ptr->int2 );
break;
default:
case XML_ERR_FATAL:
- mlt_log_fatal( NULL, "XML parse fatal: %s\trow: %d\tcol: %d\n",
- err_ptr->message, err_ptr->line, err_ptr->int2);
+ mlt_log_fatal( NULL, "[producer_xml] parse fatal: %s\trow: %d\tcol: %d\n",
+ err_ptr->message, err_ptr->line, err_ptr->int2 );
break;
}
}