Commit f8fa7854 authored by Gaurav Narula's avatar Gaurav Narula Committed by Jean-Baptiste Kempf

LUA: add support for category field in SD nodes and items

Signed-off-by: default avatarJean-Baptiste Kempf <jb@videolan.org>
parent 04c1aeb2
...@@ -186,7 +186,9 @@ static int vlclua_sd_add_node( lua_State *L ) ...@@ -186,7 +186,9 @@ static int vlclua_sd_add_node( lua_State *L )
input_item_SetArtURL( p_input, psz_value ); input_item_SetArtURL( p_input, psz_value );
free( psz_value ); free( psz_value );
} }
services_discovery_AddItem( p_sd, p_input, NULL ); lua_pop( L, 1 );
lua_getfield( L, -1, "category" );
services_discovery_AddItem( p_sd, p_input, luaL_checkstring( L, -1 ) );
input_item_t **udata = (input_item_t **) input_item_t **udata = (input_item_t **)
lua_newuserdata( L, sizeof( input_item_t * ) ); lua_newuserdata( L, sizeof( input_item_t * ) );
*udata = p_input; *udata = p_input;
...@@ -218,8 +220,12 @@ static int vlclua_sd_add_item( lua_State *L ) ...@@ -218,8 +220,12 @@ static int vlclua_sd_add_item( lua_State *L )
char **ppsz_options = NULL; char **ppsz_options = NULL;
int i_options = 0; int i_options = 0;
const char *psz_path = lua_tostring( L, -1 ); const char *psz_path = lua_tostring( L, -1 );
vlclua_read_options( p_sd, L, &i_options, &ppsz_options ); vlclua_read_options( p_sd, L, &i_options, &ppsz_options );
input_item_t *p_input = input_item_NewExt( psz_path, psz_path, lua_pop( L, 1 );
lua_getfield( L, -1, "title" );
const char *psz_title = luaL_checkstring( L, -1 ) ? luaL_checkstring( L, -1 ) : psz_path;
input_item_t *p_input = input_item_NewExt( psz_path, psz_title,
i_options, i_options,
(const char **)ppsz_options, (const char **)ppsz_options,
VLC_INPUT_OPTION_TRUSTED, -1 ); VLC_INPUT_OPTION_TRUSTED, -1 );
...@@ -237,7 +243,9 @@ static int vlclua_sd_add_item( lua_State *L ) ...@@ -237,7 +243,9 @@ static int vlclua_sd_add_item( lua_State *L )
else if( !lua_isnil( L, -1 ) ) else if( !lua_isnil( L, -1 ) )
msg_Warn( p_sd, "Item duration should be a number (in seconds)." ); msg_Warn( p_sd, "Item duration should be a number (in seconds)." );
lua_pop( L, 1 ); lua_pop( L, 1 );
services_discovery_AddItem( p_sd, p_input, NULL ); lua_getfield( L, -1, "category" );
services_discovery_AddItem( p_sd, p_input, luaL_checkstring( L, -1 ) );
lua_pop( L, 1 );
input_item_t **udata = (input_item_t **) input_item_t **udata = (input_item_t **)
lua_newuserdata( L, sizeof( input_item_t * ) ); lua_newuserdata( L, sizeof( input_item_t * ) );
*udata = p_input; *udata = p_input;
......
...@@ -329,8 +329,10 @@ sd.add_node( ... ): Add a node to the service discovery. ...@@ -329,8 +329,10 @@ sd.add_node( ... ): Add a node to the service discovery.
The node object has the following members: The node object has the following members:
.title: the node's name .title: the node's name
.arturl: the node's ArtURL (OPTIONAL) .arturl: the node's ArtURL (OPTIONAL)
.category: the node's category (OPTIONAL)
sd.add_item( ... ): Add an item to the service discovery. sd.add_item( ... ): Add an item to the service discovery.
The item object has the same members as the one in playlist.add(). The item object has the same members as the one in playlist.add() along with:
.category: the item's category (OPTIONAL)
Returns the input item. Returns the input item.
sd.remove_item( item ): remove the item. sd.remove_item( item ): remove the item.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment