#define ITEM_TYPE_NODE 9
#define ITEM_TYPE_NUMBER 10
-static inline void vlc_input_item_Init( vlc_object_t *p_o, input_item_t *p_i )
+static inline void input_ItemInit( vlc_object_t *p_o, input_item_t *p_i )
{
memset( p_i, 0, sizeof(input_item_t) );
p_i->psz_name = 0;
vlc_mutex_init( p_o, &p_i->lock );
}
-static inline void vlc_input_item_CopyOptions( input_item_t *p_parent,
- input_item_t *p_child )
+static inline void input_ItemCopyOptions( input_item_t *p_parent,
+ input_item_t *p_child )
{
int i;
for( i = 0 ; i< p_parent->i_options; i++ )
}
}
-VLC_EXPORT( void, vlc_input_item_AddOption, ( input_item_t *p_input, const char *psz_option ) );
+VLC_EXPORT( void, input_ItemAddOption,( input_item_t *, const char * ) );
+VLC_EXPORT( void, input_ItemAddOptionNoDup,( input_item_t *, const char * ) );
-static inline void vlc_input_item_Clean( input_item_t *p_i )
+static inline void input_ItemClean( input_item_t *p_i )
{
if( p_i->psz_name ) free( p_i->psz_name );
if( p_i->psz_uri ) free( p_i->psz_uri );
vlc_mutex_destroy( &p_i->lock );
}
-VLC_EXPORT( char *, vlc_input_item_GetInfo, ( input_item_t *p_i, const char *psz_cat,const char *psz_name ) );
-VLC_EXPORT(int, vlc_input_item_AddInfo, ( input_item_t *p_i, const char *psz_cat, const char *psz_name, const char *psz_format, ... ) );
+VLC_EXPORT( char *, input_ItemGetInfo, ( input_item_t *p_i, const char *psz_cat,const char *psz_name ) );
+VLC_EXPORT(int, input_ItemAddInfo, ( input_item_t *p_i, const char *psz_cat, const char *psz_name, const char *psz_format, ... ) );
#define input_ItemNew( a,b,c ) input_ItemNewExt( a, b, c, 0, NULL, -1 )
#define input_ItemNewExt(a,b,c,d,e,f) __input_ItemNewExt( VLC_OBJECT(a),b,c,d,e,f)
void (*tls_ClientDelete_inner) (tls_session_t *);
image_handler_t * (*__image_HandlerCreate_inner) (vlc_object_t *);
void (*image_HandlerDelete_inner) (image_handler_t *);
- char * (*vlc_input_item_GetInfo_inner) (input_item_t *p_i, const char *psz_cat,const char *psz_name);
- int (*vlc_input_item_AddInfo_inner) (input_item_t *p_i, const char *psz_cat, const char *psz_name, const char *psz_format, ...);
+ void *vlc_input_item_GetInfo_deprecated;
+ void *vlc_input_item_AddInfo_deprecated;
input_thread_t * (*__input_CreateThread_inner) (vlc_object_t *, input_item_t *);
int (*__input_Preparse_inner) (vlc_object_t *, input_item_t *);
void (*input_StopThread_inner) (input_thread_t *);
playlist_item_t * (*__playlist_ItemNewFromInput_inner) (vlc_object_t *p_obj,input_item_t *p_input);
input_item_t * (*input_ItemGetById_inner) (playlist_t *, int);
int (*playlist_LiveSearchUpdate_inner) (playlist_t *, playlist_item_t *, const char *);
- void (*vlc_input_item_AddOption_inner) (input_item_t *p_input, const char *psz_option);
+ void *vlc_input_item_AddOption_deprecated;
int (*playlist_DeleteFromInput_inner) (playlist_t *, int, playlist_item_t *, vlc_bool_t);
int (*playlist_DeleteAllFromInput_inner) (playlist_t *, int);
int (*playlist_LockDeleteAllFromInput_inner) (playlist_t *, int);
void (*playlist_NodesPairCreate_inner) (playlist_t *, char *, playlist_item_t **, playlist_item_t **, vlc_bool_t);
char * (*aout_VisualChange_inner) (vlc_object_t *, int);
int (*__input_SecondaryPreparse_inner) (vlc_object_t *, input_item_t *);
+ void (*input_ItemAddOption_inner) (input_item_t *, const char *);
+ char * (*input_ItemGetInfo_inner) (input_item_t *p_i, const char *psz_cat,const char *psz_name);
+ int (*input_ItemAddInfo_inner) (input_item_t *p_i, const char *psz_cat, const char *psz_name, const char *psz_format, ...);
+ void (*input_ItemAddOptionNoDup_inner) (input_item_t *, const char *);
};
# if defined (__PLUGIN__)
# define aout_FiltersCreatePipeline (p_symbols)->aout_FiltersCreatePipeline_inner
# define tls_ClientDelete (p_symbols)->tls_ClientDelete_inner
# define __image_HandlerCreate (p_symbols)->__image_HandlerCreate_inner
# define image_HandlerDelete (p_symbols)->image_HandlerDelete_inner
-# define vlc_input_item_GetInfo (p_symbols)->vlc_input_item_GetInfo_inner
-# define vlc_input_item_AddInfo (p_symbols)->vlc_input_item_AddInfo_inner
# define __input_CreateThread (p_symbols)->__input_CreateThread_inner
# define __input_Preparse (p_symbols)->__input_Preparse_inner
# define input_StopThread (p_symbols)->input_StopThread_inner
# define __playlist_ItemNewFromInput (p_symbols)->__playlist_ItemNewFromInput_inner
# define input_ItemGetById (p_symbols)->input_ItemGetById_inner
# define playlist_LiveSearchUpdate (p_symbols)->playlist_LiveSearchUpdate_inner
-# define vlc_input_item_AddOption (p_symbols)->vlc_input_item_AddOption_inner
# define playlist_DeleteFromInput (p_symbols)->playlist_DeleteFromInput_inner
# define playlist_DeleteAllFromInput (p_symbols)->playlist_DeleteAllFromInput_inner
# define playlist_LockDeleteAllFromInput (p_symbols)->playlist_LockDeleteAllFromInput_inner
# define playlist_NodesPairCreate (p_symbols)->playlist_NodesPairCreate_inner
# define aout_VisualChange (p_symbols)->aout_VisualChange_inner
# define __input_SecondaryPreparse (p_symbols)->__input_SecondaryPreparse_inner
+# define input_ItemAddOption (p_symbols)->input_ItemAddOption_inner
+# define input_ItemGetInfo (p_symbols)->input_ItemGetInfo_inner
+# define input_ItemAddInfo (p_symbols)->input_ItemAddInfo_inner
+# define input_ItemAddOptionNoDup (p_symbols)->input_ItemAddOptionNoDup_inner
# elif defined (HAVE_DYNAMIC_PLUGINS) && !defined (__BUILTIN__)
/******************************************************************
* STORE_SYMBOLS: store VLC APIs into p_symbols for plugin access.
((p_symbols)->tls_ClientDelete_inner) = tls_ClientDelete; \
((p_symbols)->__image_HandlerCreate_inner) = __image_HandlerCreate; \
((p_symbols)->image_HandlerDelete_inner) = image_HandlerDelete; \
- ((p_symbols)->vlc_input_item_GetInfo_inner) = vlc_input_item_GetInfo; \
- ((p_symbols)->vlc_input_item_AddInfo_inner) = vlc_input_item_AddInfo; \
((p_symbols)->__input_CreateThread_inner) = __input_CreateThread; \
((p_symbols)->__input_Preparse_inner) = __input_Preparse; \
((p_symbols)->input_StopThread_inner) = input_StopThread; \
((p_symbols)->__playlist_ItemNewFromInput_inner) = __playlist_ItemNewFromInput; \
((p_symbols)->input_ItemGetById_inner) = input_ItemGetById; \
((p_symbols)->playlist_LiveSearchUpdate_inner) = playlist_LiveSearchUpdate; \
- ((p_symbols)->vlc_input_item_AddOption_inner) = vlc_input_item_AddOption; \
((p_symbols)->playlist_DeleteFromInput_inner) = playlist_DeleteFromInput; \
((p_symbols)->playlist_DeleteAllFromInput_inner) = playlist_DeleteAllFromInput; \
((p_symbols)->playlist_LockDeleteAllFromInput_inner) = playlist_LockDeleteAllFromInput; \
((p_symbols)->playlist_NodesPairCreate_inner) = playlist_NodesPairCreate; \
((p_symbols)->aout_VisualChange_inner) = aout_VisualChange; \
((p_symbols)->__input_SecondaryPreparse_inner) = __input_SecondaryPreparse; \
+ ((p_symbols)->input_ItemAddOption_inner) = input_ItemAddOption; \
+ ((p_symbols)->input_ItemGetInfo_inner) = input_ItemGetInfo; \
+ ((p_symbols)->input_ItemAddInfo_inner) = input_ItemAddInfo; \
+ ((p_symbols)->input_ItemAddOptionNoDup_inner) = input_ItemAddOptionNoDup; \
(p_symbols)->net_ConvertIPv4_deprecated = NULL; \
+ (p_symbols)->vlc_input_item_GetInfo_deprecated = NULL; \
+ (p_symbols)->vlc_input_item_AddInfo_deprecated = NULL; \
(p_symbols)->__playlist_ItemNew_deprecated = NULL; \
(p_symbols)->__playlist_ItemCopy_deprecated = NULL; \
(p_symbols)->playlist_ItemAddParent_deprecated = NULL; \
(p_symbols)->playlist_PlaylistAdd_deprecated = NULL; \
(p_symbols)->playlist_PlaylistAddExt_deprecated = NULL; \
(p_symbols)->playlist_PlaylistAddInput_deprecated = NULL; \
+ (p_symbols)->vlc_input_item_AddOption_deprecated = NULL; \
(p_symbols)->__intf_UserOkayCancel_deprecated = NULL; \
(p_symbols)->playlist_NodesCreateForSD_deprecated = NULL; \
(p_symbols)->stats_TimerClean_deprecated = NULL; \
p_input_item = input_ItemNewWithType( VLC_OBJECT( p_playlist ),
psz_uri, psz_name, 0, NULL, -1,
ITEM_TYPE_DISC );
- vlc_input_item_AddOption( p_input_item, psz_first );
- vlc_input_item_AddOption( p_input_item, psz_last );
- vlc_input_item_AddOption( p_input_item, psz_opt );
+ input_ItemAddOption( p_input_item, psz_first );
+ input_ItemAddOption( p_input_item, psz_last );
+ input_ItemAddOption( p_input_item, psz_opt );
#ifdef HAVE_LIBCDDB
/* If we have CDDB info, change the name */
{
if( cddb_track_get_title( t ) != NULL )
{
- vlc_input_item_AddInfo( p_input_item, _(VLC_META_INFO_CAT),
+ input_ItemAddInfo( p_input_item, _(VLC_META_INFO_CAT),
_(VLC_META_TITLE),
cddb_track_get_title( t ) );
if( p_input_item->psz_name )
psz_result = cddb_track_get_artist( t );
if( psz_result )
{
- vlc_input_item_AddInfo( p_input_item, _(VLC_META_INFO_CAT),
+ input_ItemAddInfo( p_input_item, _(VLC_META_INFO_CAT),
_(VLC_META_ARTIST), psz_result );
}
}
#define add_playlist_track_info_str(TITLE, FIELD) \
if (FIELD && strlen(FIELD)) \
{ \
- vlc_input_item_AddInfo( &p_item->input, _("Track"), _(TITLE), \
+ input_ItemAddInfo( &p_item->input, _("Track"), _(TITLE), \
"%s", FIELD); \
}
{
#if 0
add_playlist_track_info_str("Source", p_cdda->psz_source);
- vlc_input_item_AddInfo( &p_item->input, _("Track"), _("Track Number"),
+ input_ItemAddInfo( &p_item->input, _("Track"), _("Track Number"),
"%d", i_track );
if (p_cdda->p_cdtext[i_track])
{
vlc_meta_SetArtist( p_input->input.p_item->p_meta,
psz_value );
- vlc_input_item_AddInfo( p_input->input.p_item,
+ input_ItemAddInfo( p_input->input.p_item,
_(VLC_META_INFO_CAT), _(VLC_META_ARTIST),
"%s", psz_value );
}
#define p_item p_sys->p_input->input.p_item
if( !strcmp( psz_meta, "ARTIST" ) )
{
- psz_val = vlc_input_item_GetInfo( p_item,
+ psz_val = input_ItemGetInfo( p_item,
_(VLC_META_INFO_CAT), _(VLC_META_ARTIST) );
}
else if( !strcmp( psz_meta, "TITLE" ) )
{
- psz_val = vlc_input_item_GetInfo( p_item,
+ psz_val = input_ItemGetInfo( p_item,
_(VLC_META_INFO_CAT), _(VLC_META_TITLE) );
if( psz_val == NULL )
psz_val = strdup( p_item->psz_name );
}
else if( !strcmp( psz_meta, "ALBUM" ) )
{
- psz_val = vlc_input_item_GetInfo( p_item,
+ psz_val = input_ItemGetInfo( p_item,
_(VLC_META_INFO_CAT), _(VLC_META_COLLECTION) );
}
else if( !strcmp( psz_meta, "GENRE" ) )
{
- psz_val = vlc_input_item_GetInfo( p_item,
+ psz_val = input_ItemGetInfo( p_item,
_(VLC_META_INFO_CAT), _(VLC_META_GENRE) );
}
else
{
- psz_val = vlc_input_item_GetInfo( p_item,
+ psz_val = input_ItemGetInfo( p_item,
_(VLC_META_INFO_CAT), psz_meta );
}
#undef p_item
{
s_temp = s_mrl + strlen( s_mrl );
}
- vlc_input_item_AddOption( p_input, s_mrl );
+ input_ItemAddOption( p_input, s_mrl );
s_mrl = s_temp;
}
p_item = input_ItemNew( p_intf, psz_item_mrl, psz_item_mrl );
for( i = 0; i < i_options; i++ )
{
- vlc_input_item_AddOption( p_item, ppsz_options[i] );
+ input_ItemAddOption( p_item, ppsz_options[i] );
}
}
msg_Dbg( p_demux, "adding ref = `%s'", psz_ref );
p_input = input_ItemNewExt( p_playlist, psz_ref, NULL,
0, NULL, -1 );
- vlc_input_item_CopyOptions( p_current->p_input, p_input );
+ input_ItemCopyOptions( p_current->p_input, p_input );
playlist_AddWhereverNeeded( p_playlist, p_input, p_current,
p_item_in_category, VLC_FALSE, PLAYLIST_APPEND );
}
memcpy( psz_string, psz_backup, i_strlen );
psz_string[i_strlen] = '\0';
p_input = input_ItemNew( p_playlist, psz_string, psz_title_asx );
- vlc_input_item_CopyOptions( p_current->p_input, p_input );
+ input_ItemCopyOptions( p_current->p_input, p_input );
playlist_AddWhereverNeeded( p_playlist, p_input, p_current,
p_item_in_category, (i_parent_id > 0 )? VLC_TRUE : VLC_FALSE,
PLAYLIST_APPEND );
p_entry = input_ItemNew( p_playlist, psz_string, psz_name );
FREENULL( psz_name );
- vlc_input_item_CopyOptions( p_current->p_input, p_entry );
+ input_ItemCopyOptions( p_current->p_input, p_entry );
p_entry->p_meta = vlc_meta_New();
if( psz_title_entry ) vlc_meta_SetTitle( p_entry->p_meta, psz_title_entry );
if( psz_author_entry ) vlc_meta_SetAuthor( p_entry->p_meta, psz_author_entry );
for( i = 0; i< i_options; i++ )
{
EnsureUTF8( ppsz_options[i] );
- vlc_input_item_AddOption( p_input, ppsz_options[i] );
+ input_ItemAddOption( p_input, ppsz_options[i] );
}
playlist_AddWhereverNeeded( p_playlist, p_input, p_current,
p_item_in_category,
{
p_input = input_ItemNewExt( p_sys->p_playlist,
psz_url, psz_title, 0, NULL, -1 );
-#define SADD_INFO( type, field ) if( field ) { vlc_input_item_AddInfo( \
+#define SADD_INFO( type, field ) if( field ) { input_ItemAddInfo( \
p_input, _("Google Video"), _(type), "%s", field ) ; }
SADD_INFO( "gvp_version", psz_version );
SADD_INFO( "docid", psz_docid );
p_input = input_ItemNewExt( p_playlist, psz_mrl, psz_name,
i_options, ppsz_options, i_duration );
if ( psz_artist && *psz_artist )
- vlc_input_item_AddInfo( p_input, _(VLC_META_INFO_CAT),
+ input_ItemAddInfo( p_input, _(VLC_META_INFO_CAT),
_(VLC_META_ARTIST), "%s", psz_artist );
playlist_AddWhereverNeeded( p_playlist, p_input, p_current,
p_item_in_category, (i_parent_id > 0 )? VLC_TRUE : VLC_FALSE,
playlist_BothAddInput( p_playlist, p_input, p_item,
PLAYLIST_APPEND, PLAYLIST_END );
}
- vlc_input_item_CopyOptions( p_item->p_input, p_input );
+ input_ItemCopyOptions( p_item->p_input, p_input );
}
{
p_input = input_ItemNewExt( p_playlist, psz_mrl, psz_name,
0, NULL, -1 );
- vlc_input_item_CopyOptions( p_current->p_input, p_input );
+ input_ItemCopyOptions( p_current->p_input, p_input );
playlist_AddWhereverNeeded( p_playlist, p_input, p_current,
p_item_in_category, (i_parent_id > 0 ) ?
VLC_TRUE: VLC_FALSE, PLAYLIST_APPEND );
if( psz_mrl )
{
p_input = input_ItemNewExt( p_playlist, psz_mrl, psz_name,0, NULL, -1 );
- vlc_input_item_CopyOptions( p_current->p_input, p_input );
+ input_ItemCopyOptions( p_current->p_input, p_input );
playlist_AddWhereverNeeded( p_playlist, p_input, p_current,
p_item_in_category, (i_parent_id > 0 ) ?
VLC_TRUE: VLC_FALSE, PLAYLIST_APPEND );
#define ADD_GINFO( info, name ) \
else if( !b_item && !b_image && !strcmp( psz_elname, name ) ) \
{ \
- vlc_input_item_AddInfo( p_current->p_input, _("Podcast Info"), \
+ input_ItemAddInfo( p_current->p_input, _("Podcast Info"), \
_( info ), "%s", psz_text ); \
}
ADD_GINFO( "Podcast Link", "link" )
&& ( !strcmp( psz_elname, "itunes:summary" )
||!strcmp( psz_elname, "description" ) ) )
{ /* <description> isn't standard iTunes podcast stuff */
- vlc_input_item_AddInfo( p_current->p_input,
+ input_ItemAddInfo( p_current->p_input,
_( "Podcast Info" ), _( "Podcast Summary" ),
"%s", psz_text );
}
psz_item_name, 0, NULL, -1 );
if( p_input == NULL ) break;
#define ADD_INFO( info, field ) \
- if( field ) { vlc_input_item_AddInfo( p_input, \
+ if( field ) { input_ItemAddInfo( p_input, \
_( "Podcast Info" ), _( info ), "%s", field ); }
ADD_INFO( "Podcast Publication Date", psz_item_date );
ADD_INFO( "Podcast Author", psz_item_author );
ADD_INFO( "Podcast Type", psz_item_type );
if( psz_item_size )
{
- vlc_input_item_AddInfo( p_input,
+ input_ItemAddInfo( p_input,
_( "Podcast Info" ),
_( "Podcast Size" ),
"%s bytes",
{
p_input = input_ItemNewExt( p_sys->p_playlist,
psz_src, psz_moviename, 0, NULL, -1 );
-#define SADD_INFO( type, field ) if( field ) { vlc_input_item_AddInfo( \
+#define SADD_INFO( type, field ) if( field ) { input_ItemAddInfo( \
p_input, "QuickTime Media Link", _(type), "%s", field ) ; }
SADD_INFO( "href", psz_href );
SADD_INFO( "mime type", psz_mimetype );
return VLC_EGENERIC;
}
- vlc_input_item_CopyOptions( p_current->p_input, p_child );
+ input_ItemCopyOptions( p_current->p_input, p_child );
if( p_sys->i_packet_size && p_sys->psz_mcast_ip )
{
char *psz_option;
p_sys->i_packet_size += 1000;
asprintf( &psz_option, "mtu=%i", p_sys->i_packet_size );
- vlc_input_item_AddOption( p_child, psz_option );
+ input_ItemAddOption( p_child, psz_option );
free( psz_option );
}
if( !p_sys->psz_mcast_ip )
{
char *psz_option;
asprintf( &psz_option, "rtsp-caching=5000" );
- vlc_input_item_AddOption( p_child, psz_option );
+ input_ItemAddOption( p_child, psz_option );
free( psz_option );
}
if( !p_sys->psz_mcast_ip && p_sys->b_rtsp_kasenna )
{
char *psz_option;
asprintf( &psz_option, "rtsp-kasenna" );
- vlc_input_item_AddOption( p_child, psz_option );
+ input_ItemAddOption( p_child, psz_option );
free( psz_option );
}
psz_name );
p_input = input_ItemNewExt( p_sys->p_playlist, psz_mrl,
psz_name, 0, NULL, -1 );
- vlc_input_item_CopyOptions( p_sys->p_current->p_input,
+ input_ItemCopyOptions( p_sys->p_current->p_input,
p_input );
free( psz_mrl );
playlist_AddWhereverNeeded( p_sys->p_playlist, p_input,
psz_name , 0, NULL, -1 );
free( psz_mrl );
- vlc_input_item_CopyOptions( p_sys->p_current->p_input,
+ input_ItemCopyOptions( p_sys->p_current->p_input,
p_input );
-#define SADD_INFO( type, field ) if( field ) { vlc_input_item_AddInfo( \
+#define SADD_INFO( type, field ) if( field ) { input_ItemAddInfo( \
p_input, _("Shoutcast"), _(type), "%s", field ) ; }
SADD_INFO( "Mime type", psz_mt );
SADD_INFO( "Bitrate", psz_br );
NULL, 0, NULL, -1 );
p_new_input->p_meta = vlc_meta_New();
free( psz_uri );
- vlc_input_item_CopyOptions( p_item->p_input, p_new_input );
+ input_ItemCopyOptions( p_item->p_input, p_new_input );
psz_uri = NULL;
FREE_ATT();
p_handler = NULL;
{
for( i = 0; i < (int)[o_options count]; i++ )
{
- vlc_input_item_AddOption( p_input, strdup( [[o_options objectAtIndex:i] UTF8String] ) );
+ input_ItemAddOption( p_input, strdup( [[o_options objectAtIndex:i] UTF8String] ) );
}
}
vlc_mutex_lock( &p_playlist->object_lock );
o_current_name = [NSString stringWithUTF8String:
p_item->pp_children[i_current]->p_input->psz_name];
- psz_temp = vlc_input_item_GetInfo( p_item->p_input ,
+ psz_temp = input_ItemGetInfo( p_item->p_input ,
_("Meta-information"),_("Artist") );
o_current_author = [NSString stringWithUTF8String: psz_temp];
free( psz_temp);
[[[o_userSelections objectForKey:@"pathToStrm"] \
objectAtIndex:x] UTF8String], \
[tempString UTF8String] );
- vlc_input_item_AddOption( p_input, [[[o_userSelections \
+ input_ItemAddOption( p_input, [[[o_userSelections \
objectForKey:@"opts"] objectAtIndex: x] UTF8String]);
if(! [[o_userSelections objectForKey:@"partExtractFrom"] \
isEqualToString:@""] )
{
- vlc_input_item_AddOption( p_input, [[NSString \
+ input_ItemAddOption( p_input, [[NSString \
stringWithFormat: @"start-time=%@", [o_userSelections \
objectForKey: @"partExtractFrom"]] UTF8String] );
}
if(! [[o_userSelections objectForKey:@"partExtractTo"] \
isEqualToString:@""] )
{
- vlc_input_item_AddOption( p_input, [[NSString \
+ input_ItemAddOption( p_input, [[NSString \
stringWithFormat: @"stop-time=%@", [o_userSelections \
objectForKey: @"partExtractTo"]] UTF8String] );
}
- vlc_input_item_AddOption( p_input, [[NSString stringWithFormat: \
+ input_ItemAddOption( p_input, [[NSString stringWithFormat: \
@"ttl=%@", [o_userSelections objectForKey:@"ttl"]] \
UTF8String] );
ListView_SetItemText( hListView, i, 0, _FROMMB(p_item->input.psz_name) );
ListView_SetItemText( hListView, i, 1,
- _FROMMB( vlc_input_item_GetInfo( &p_item->input,
+ _FROMMB( input_ItemGetInfo( &p_item->input,
_("General") , _("Author") ) ) );
char psz_duration[MSTRTIME_MAX_SIZE];
((const char *)mrl[i + 1].mb_str())[0] == ':' )
{
psz_utf8 = wxFromLocale( mrl[i + 1] );
- vlc_input_item_AddOption( p_input, psz_utf8 );
+ input_ItemAddOption( p_input, psz_utf8 );
wxLocaleFree( psz_utf8 );
i++;
}
for( int j = 0; j < (int)subsfile_mrl.GetCount(); j++ )
{
psz_utf8 = wxFromLocale( subsfile_mrl[j] );
- vlc_input_item_AddOption( p_input, psz_utf8 );
+ input_ItemAddOption( p_input, psz_utf8 );
wxLocaleFree( psz_utf8 );
}
}
for( int j = 0; j < (int)sout_mrl.GetCount(); j++ )
{
psz_utf8 = wxFromLocale( sout_mrl[j] );
- vlc_input_item_AddOption( p_input, psz_utf8 );
+ input_ItemAddOption( p_input, psz_utf8 );
wxLocaleFree( psz_utf8 );
}
}
{
input_item_t *p_input = input_ItemNew( p_playlist, mrl,
ITEM_NAME );
- vlc_input_item_AddOption( p_input, psz_opt );
+ input_ItemAddOption( p_input, psz_opt );
if( i_from != 0)
{
char psz_from[20];
snprintf( psz_from, 20, "start-time=%i", i_from);
- vlc_input_item_AddOption( p_input, psz_from );
+ input_ItemAddOption( p_input, psz_from );
}
if( i_to != 0)
{
char psz_to[20];
snprintf( psz_to, 20, "stop-time=%i", i_to);
- vlc_input_item_AddOption( p_input, psz_to );
+ input_ItemAddOption( p_input, psz_to );
}
char psz_ttl[20];
snprintf( psz_ttl, 20, "ttl=%i",i_ttl );
- vlc_input_item_AddOption( p_input, psz_ttl );
+ input_ItemAddOption( p_input, psz_ttl );
playlist_PlaylistAddInput( p_playlist, p_input,
PLAYLIST_GO, PLAYLIST_END );
p_host->p_songs[i].id );
p_item = playlist_ItemNew( p_sd, psz_buff,
p_host->p_songs[i].itemname );
- vlc_input_item_AddInfo( &p_item->input, _(VLC_META_INFO_CAT),
+ input_ItemAddInfo( &p_item->input, _(VLC_META_INFO_CAT),
_(VLC_META_ARTIST), p_host->p_songs[i].songartist );
- vlc_input_item_AddInfo( &p_item->input, _(VLC_META_INFO_CAT),
+ input_ItemAddInfo( &p_item->input, _(VLC_META_INFO_CAT),
_(VLC_META_COLLECTION), p_host->p_songs[i].songalbum );
playlist_NodeAddItem( p_playlist, p_item, VIEW_CATEGORY,
asprintf( &psz_buf, "%s", p_sys->ppsz_urls[i] );
p_input = input_ItemNewExt( p_playlist, psz_buf,
p_sys->ppsz_urls[i], 0, NULL, -1 );
- vlc_input_item_AddOption( p_input, "demux=podcast" );
+ input_ItemAddOption( p_input, "demux=podcast" );
p_item = playlist_NodeAddInput( p_playlist, p_input, p_sys->p_node_cat,
PLAYLIST_APPEND, PLAYLIST_END );
p_item = playlist_NodeAddInput( p_playlist, p_input, p_sys->p_node_one,
}
if( p_sys->b_timeshift )
- vlc_input_item_AddOption( p_input, ":access-filter=timeshift" );
+ input_ItemAddOption( p_input, ":access-filter=timeshift" );
psz_value = GetAttribute( p_sap->p_sdp, "tool" );
if( psz_value != NULL )
{
- vlc_input_item_AddInfo( p_input, _("Session"),_("Tool"), psz_value );
+ input_ItemAddInfo( p_input, _("Session"),_("Tool"), psz_value );
}
if( strcmp( p_sdp->psz_username, "-" ) )
{
- vlc_input_item_AddInfo( p_input, _("Session"),
+ input_ItemAddInfo( p_input, _("Session"),
_("User"), p_sdp->psz_username );
}
0, NULL, -1 );
break;
}
- vlc_input_item_AddOption( p_sys->p_input, "no-playlist-autostart" );
+ input_ItemAddOption( p_sys->p_input, "no-playlist-autostart" );
p_sys->p_input->b_prefers_tree = VLC_TRUE;
p_sys->p_node_cat = playlist_NodeAddInput( p_playlist, p_sys->p_input,
p_playlist->p_root_category,
/* Set start time */
snprintf( psz_from, 20, "start-time=%i", i_from );
- vlc_input_item_AddOption( p_playlist->status.p_item->p_input, psz_from );
+ input_ItemAddOption( p_playlist->status.p_item->p_input, psz_from );
free( psz_from );
}
case INPUT_ADD_INFO:
{
- /* FIXME : Impossible to use vlc_input_item_AddInfo because of
+ /* FIXME : Impossible to use input_ItemAddInfo because of
* the ... problem ? */
char *psz_cat = (char *)va_arg( args, char * );
char *psz_name = (char *)va_arg( args, char * );
int i_ret = VLC_EGENERIC;
*ppsz_value = NULL;
- *ppsz_value = vlc_input_item_GetInfo( p_input->input.p_item,
+ *ppsz_value = input_ItemGetInfo( p_input->input.p_item,
psz_cat, psz_name );
return i_ret;
}
* empty string otherwise. The caller should free the returned
* pointer.
*/
-char *vlc_input_item_GetInfo( input_item_t *p_i,
+char *input_ItemGetInfo( input_item_t *p_i,
const char *psz_cat,
const char *psz_name )
{
return strdup( "" );
}
-static void vlc_input_item_Destroy ( gc_object_t *p_this )
+static void input_ItemDestroy ( gc_object_t *p_this )
{
vlc_object_t *p_obj = (vlc_object_t *)p_this->p_destructor_arg;
input_item_t *p_input = (input_item_t *) p_this;
int i;
playlist_t *p_playlist = pl_Yield( p_obj );
- vlc_input_item_Clean( p_input );
+ input_ItemClean( p_input );
for( i = 0 ; i< p_playlist->i_input_items ; i++ )
{
free( p_input );
}
-int vlc_input_item_AddInfo( input_item_t *p_i,
+void input_ItemAddOption( input_item_t *p_input,
+ const char *psz_option )
+{
+ if( !psz_option ) return;
+ vlc_mutex_lock( &p_input->lock );
+ INSERT_ELEM( p_input->ppsz_options, p_input->i_options,
+ p_input->i_options, strdup( psz_option ) );
+ vlc_mutex_unlock( &p_input->lock );
+}
+
+void input_ItemAddOptionNoDup( input_item_t *p_input,
+ const char *psz_option )
+{
+ int i;
+ if( !psz_option ) return ;
+ vlc_mutex_lock( &p_input->lock );
+ for( i = 0 ; i< p_input->i_options; i++ )
+ {
+ if( !strcmp( p_input->ppsz_options[i], psz_option ) )
+ {
+ vlc_mutex_unlock(& p_input->lock );
+ return;
+ }
+ }
+ TAB_APPEND( p_input->i_options, p_input->ppsz_options, strdup( psz_option)); vlc_mutex_unlock( &p_input->lock );
+}
+
+
+int input_ItemAddInfo( input_item_t *p_i,
const char *psz_cat,
const char *psz_name,
const char *psz_format, ... )
return VLC_SUCCESS;
}
-void vlc_input_item_AddOption( input_item_t *p_input,
- const char *psz_option )
-{
- if( !psz_option ) return;
- vlc_mutex_lock( &p_input->lock );
- INSERT_ELEM( p_input->ppsz_options, p_input->i_options,
- p_input->i_options, strdup( psz_option ) );
- vlc_mutex_unlock( &p_input->lock );
-};
-
-
input_item_t *input_ItemGetById( playlist_t *p_playlist, int i_id )
{
int i, i_top, i_bottom;
playlist_t *p_playlist = pl_Yield( p_obj );
DECMALLOC_NULL( p_input, input_item_t );
- vlc_input_item_Init( p_obj, p_input );
- vlc_gc_init( p_input, vlc_input_item_Destroy, (void *)p_obj );
+ input_ItemInit( p_obj, p_input );
+ vlc_gc_init( p_input, input_ItemDestroy, (void *)p_obj );
PL_LOCK;
p_input->i_id = ++p_playlist->i_last_input_id;
media->i_instance = 0;
media->instance = NULL;
- vlc_input_item_Init( VLC_OBJECT(vlm), &media->item );
+ input_ItemInit( VLC_OBJECT(vlm), &media->item );
TAB_APPEND( vlm->i_media, vlm->media, media );
while( media->i_option-- ) free( media->option[media->i_option] );
if( media->option ) free( media->option );
- vlc_input_item_Clean( &media->item );
+ input_ItemClean( &media->item );
free( media );
}
char *psz_header;
int i;
- vlc_input_item_Clean( &media->item );
- vlc_input_item_Init( VLC_OBJECT(vlm), &media->item );
+ input_ItemClean( &media->item );
+ input_ItemInit( VLC_OBJECT(vlm), &media->item );
if( media->psz_output )
asprintf( &psz_output, "%s:description", media->psz_output );
p_instance = malloc( sizeof(vlm_media_instance_t) );
if( !p_instance ) return VLC_EGENERIC;
memset( p_instance, 0, sizeof(vlm_media_instance_t) );
- vlc_input_item_Init( VLC_OBJECT(vlm), &p_instance->item );
+ input_ItemInit( VLC_OBJECT(vlm), &p_instance->item );
p_instance->p_input = NULL;
if( ( media->psz_output != NULL ) || ( media->psz_vod_output != NULL ) )
if( !p_instance->p_input )
{
TAB_REMOVE( media->i_instance, media->instance, p_instance );
- vlc_input_item_Clean( &p_instance->item );
+ input_ItemClean( &p_instance->item );
if( p_instance->psz_name ) free( p_instance->psz_name );
}
free( psz_header );
vlc_object_destroy( p_instance->p_input );
}
- vlc_input_item_Clean( &p_instance->item );
+ input_ItemClean( &p_instance->item );
if( p_instance->psz_name ) free( p_instance->psz_name );
free( p_instance );
if( b_only_there )
{
asprintf( &psz_opt, "parent-item=%i", p_root->i_id );
- vlc_input_item_AddOption( p_input, psz_opt );
+ input_ItemAddOption( p_input, psz_opt );
free( psz_opt );
}
playlist_PlaylistAddInput( p_playlist, p_input, PLAYLIST_APPEND,
/* Reattach video output to playlist before bailing out */
if( p_vout )
{
- vlc_object_t *p_playlist = pl_Yield( p_this );
+ playlist_t *p_playlist = pl_Yield( p_this );
spu_Attach( p_vout->p_spu, p_this, VLC_FALSE );
vlc_object_detach( p_vout );
vlc_object_attach( p_vout, p_playlist );
void vout_Destroy( vout_thread_t *p_vout )
{
vout_thread_t *p_another_vout;
- vlc_object_t *p_playlist = pl_Yield( p_vout );
+ playlist_t *p_playlist = pl_Yield( p_vout );
/* Request thread destruction */
p_vout->b_die = VLC_TRUE;