event_handler, p_dec );
/* Create the var on vlc_global. */
- p_sys->i_wanted_page = var_CreateGetInteger( p_dec->p_libvlc, "vbi-page" );
- var_AddCallback( p_dec->p_libvlc, "vbi-page",
+ p_sys->i_wanted_page = var_CreateGetInteger( p_dec, "vbi-page" );
+ var_AddCallback( p_dec, "vbi-page",
RequestPage, p_sys );
- p_sys->b_opaque = var_CreateGetBool( p_dec->p_libvlc, "vbi-opaque" );
- var_AddCallback( p_dec->p_libvlc, "vbi-opaque", Opaque, p_sys );
+ p_sys->b_opaque = var_CreateGetBool( p_dec, "vbi-opaque" );
+ var_AddCallback( p_dec, "vbi-opaque", Opaque, p_sys );
p_sys->i_align = var_CreateGetInteger( p_dec, "vbi-position" );
var_AddCallback( p_dec, "vbi-position", Position, p_sys );
decoder_t *p_dec = (decoder_t*) p_this;
decoder_sys_t *p_sys = p_dec->p_sys;
- var_Destroy( p_dec->p_libvlc, "vbi-opaque" );
- var_Destroy( p_dec->p_libvlc, "vbi-page" );
- var_DelCallback( p_dec->p_libvlc, "vbi-page", RequestPage, p_sys );
- var_DelCallback( p_dec->p_libvlc, "vbi-opaque", Opaque, p_sys );
+ var_Destroy( p_dec, "vbi-opaque" );
+ var_Destroy( p_dec, "vbi-page" );
+ var_DelCallback( p_dec, "vbi-page", RequestPage, p_sys );
+ var_DelCallback( p_dec, "vbi-opaque", Opaque, p_sys );
#ifdef HAVE_FFMPEG_SWSCALE_H
if( p_sys->p_image ) image_HandlerDelete( p_sys->p_image );
if( ev->type == VBI_EVENT_TTX_PAGE )
{
- /* msg_Dbg( p_dec, "Page %03x.%02x ",
+ /* msg_Info( p_dec, "Page %03x.%02x ",
ev->ev.ttx_page.pgno,
ev->ev.ttx_page.subno & 0xFF);
*/
{
// TODO: this has only sense when telx codec is available
if( hasInput() )
- var_SetInteger( p_input->p_libvlc, "vbi-page", page );
+ {
+ vlc_object_t *p_vbi;
+ p_vbi = (vlc_object_t *) vlc_object_find_name( p_input,
+ "zvbi", FIND_ANYWHERE );
+ if( p_vbi )
+ {
+ var_SetInteger( p_vbi, "vbi-page", page );
+ vlc_object_release( p_vbi );
+ }
+ }
}
void InputManager::telexToggle( bool b_enabled )
{
// TODO: this has only sense when telx codec is available
if( hasInput() )
- var_SetBool( p_input->p_libvlc, "vbi-opaque", b_transp );
+ {
+ vlc_object_t *p_vbi;
+ p_vbi = (vlc_object_t *) vlc_object_find_name( p_input,
+ "zvbi", FIND_ANYWHERE );
+ if( p_vbi )
+ {
+ var_SetBool( p_input->p_libvlc, "vbi-opaque", b_transp );
+ vlc_object_release( p_vbi );
+ }
+ }
}
void InputManager::slower()
libvlc_exception_t *p_e )
{
vout_thread_t *p_vout = GetVout( p_mi, p_e );
+ vlc_object_t *p_vbi;
int i_ret = -1;
if( !p_vout )
return i_ret;
- i_ret = var_GetInteger( p_vout, "vbi-page" );
+ p_vbi = (vlc_object_t *) vlc_object_find_name( p_vout, "zvbi",
+ FIND_ANYWHERE );
+ if( p_vbi )
+ {
+ i_ret = var_GetInteger( p_vout, "vbi-page" );
+ vlc_object_release( p_vbi );
+ }
+
vlc_object_release( p_vout );
return i_ret;
}
libvlc_exception_t *p_e )
{
vout_thread_t *p_vout = GetVout( p_mi, p_e );
+ vlc_object_t *p_vbi;
int i_ret = -1;
if( !p_vout )
return;
- i_ret = var_SetInteger( p_vout, "vbi-page", i_page );
+ p_vbi = (vlc_object_t *) vlc_object_find_name( p_vout, "zvbi",
+ FIND_ANYWHERE );
+ if( p_vbi )
+ {
+ i_ret = var_SetInteger( p_vbi, "vbi-page", i_page );
+ vlc_object_release( p_vbi );
+ }
if( i_ret )
libvlc_exception_raise( p_e,
"Unexpected error while setting teletext page" );