return hr;
};
+STDMETHODIMP VLCVideo::get_teletext(long* page)
+{
+ if( NULL == page )
+ return E_POINTER;
+
+ libvlc_instance_t* p_libvlc;
+ HRESULT hr = _p_instance->getVLC(&p_libvlc);
+ if( SUCCEEDED(hr) )
+ {
+ libvlc_exception_t ex;
+ libvlc_exception_init(&ex);
+
+ libvlc_media_instance_t *p_md = libvlc_playlist_get_media_instance(p_libvlc, &ex);
+ if( ! libvlc_exception_raised(&ex) )
+ {
+ *page = libvlc_video_get_teletext(p_md, &ex);
+ libvlc_media_instance_release(p_md);
+ if( ! libvlc_exception_raised(&ex) )
+ {
+ return NOERROR;
+ }
+ }
+ _p_instance->setErrorInfo(IID_IVLCVideo, libvlc_exception_get_message(&ex));
+ libvlc_exception_clear(&ex);
+ return E_FAIL;
+ }
+ return hr;
+};
+
+STDMETHODIMP VLCVideo::put_teletext(long page)
+{
+ libvlc_instance_t* p_libvlc;
+ HRESULT hr = _p_instance->getVLC(&p_libvlc);
+ if( SUCCEEDED(hr) )
+ {
+ libvlc_exception_t ex;
+ libvlc_exception_init(&ex);
+
+ libvlc_media_instance_t *p_md = libvlc_playlist_get_media_instance(p_libvlc, &ex);
+ libvlc_video_set_teletext(p_md, page, &ex);
+ libvlc_media_instance_release(p_md);
+ if( libvlc_exception_raised(&ex) )
+ {
+ _p_instance->setErrorInfo(IID_IVLCVideo, libvlc_exception_get_message(&ex));
+ libvlc_exception_clear(&ex);
+ return E_FAIL;
+ }
+ return NOERROR;
+ }
+ return hr;
+};
+
STDMETHODIMP VLCVideo::takeSnapshot(LPPICTUREDISP* picture)
{
if( NULL == picture )
return E_FAIL;
/* take snapshot into file */
- libvlc_video_take_snapshot(p_md, psz_filepath, &ex);
+ libvlc_video_take_snapshot(p_md, psz_filepath, 0, 0, &ex);
libvlc_media_instance_release(p_md);
if( ! libvlc_exception_raised(&ex) )
{
return hr;
};
+STDMETHODIMP VLCVideo::toggleTeletext()
+{
+ libvlc_instance_t* p_libvlc;
+ HRESULT hr = _p_instance->getVLC(&p_libvlc);
+ if( SUCCEEDED(hr) )
+ {
+ libvlc_exception_t ex;
+ libvlc_exception_init(&ex);
+
+ libvlc_media_instance_t *p_md = libvlc_playlist_get_media_instance(p_libvlc, &ex);
+ if( ! libvlc_exception_raised(&ex) )
+ {
+ libvlc_toggle_teletext(p_md, &ex);
+ libvlc_media_instance_release(p_md);
+ if( ! libvlc_exception_raised(&ex) )
+ {
+ return NOERROR;
+ }
+ }
+ _p_instance->setErrorInfo(IID_IVLCVideo, libvlc_exception_get_message(&ex));
+ libvlc_exception_clear(&ex);
+ return E_FAIL;
+ }
+ return hr;
+};
+
/*******************************************************************************/
VLCControl2::VLCControl2(VLCPlugin *p_instance) :