[vlc-devel] Access input or vout threads from decoder

Antoine Cellerier dionoea at videolan.org
Sat Sep 1 22:41:29 CEST 2007


On Thu, Aug 30, 2007, Alex Vazquez wrote:
>    Could anyone tell me what's the prefered method to get a reference to the
>    input_thread_t instance from inside a decoder plugin? Or at least give me
>    any other way of getting the name of the input im decoding?
> 
>    In the same way, i would like to access the vout_thread_t associated to
>    the decoder, how can i do if i can?
> 
>    I know that vlc_object_find( p_this, VLC_OBJECT_VOUT, int i_mode ) can
>    return a instance of a vout_thread_t, but what one it will return if there
>    are several? Does i_mode=FIND_CHILD or i_mode=FIND_PARENT assure that we
>    get the vout associated to this decoder?

FIND_PARENT would work to get the input_thread_t instance from the
decoder. For the vout you could use FIND_CHILD on the input_thread
object or the video decoder object.

(This is the module tree I get here when decoding an audio file:
tree 1
 00000001 libvlc "lt-vlc", refcount 1, 5 children
 |-o 00000316 playlist (thread 3049118608), refcount 2, 3 children, parent 1
 | |-o 00000337 generic (thread 3071503248), parent 316
 | |-o 00000338 generic (thread 3057507216), parent 316
 | `-o 00000345 input (thread 3023952784), refcount 2, 4 children, parent 316
 |   |-o 00000348 access "access_file", 1 child, parent 345
 |   | `-o 00000350 stream, parent 348
 |   |-o 00000351 demux "ps", parent 345
 |   |-o 00000389 decoder "libmpeg2" (thread 3000982416), 2 children, parent 345
 |   | |-o 00000400 video output "xvideo" (thread 2981739408), 1 child, parent 389
 |   | | `-o 00000401 subpicture, 2 children, parent 400
 |   | |   |-o 00000413 filter "blend", parent 401
 |   | |   `-o 00000415 filter "freetype" (thread 2962766736), parent 401
 |   | `-o 00000403 generic, parent 389
 |   `-o 00000393 decoder "mpeg_audio" (thread 2991410064), parent 345
 |-o 00000339 interface "hotkeys" (thread 3040730000), parent 1
 |-o 00000341 interface "screensaver" (thread 3032341392), parent 1
 |-o 00000343 interface "rc", parent 1
 `-o 00000404 audio output "alsa" (thread 2972203920), 2 children, parent 1
   |-o 00000406 generic "mpgatofixed32", parent 404
   `-o 00000409 generic "bandlimited_resampler", parent 404
)

-- 
Antoine Cellerier
dionoea



More information about the vlc-devel mailing list