From: RĂ©mi Denis-Courmont Date: Fri, 29 Aug 2008 14:42:32 +0000 (+0300) Subject: sout_AccessOutNew: allow any VLC object type, not just sout instance X-Git-Tag: 1.0.0-pre1~3693 X-Git-Url: https://git.sesse.net/?a=commitdiff_plain;h=6e9df1a6258d221c0d505259249bc905782875d7;p=vlc sout_AccessOutNew: allow any VLC object type, not just sout instance --- diff --git a/include/vlc_sout.h b/include/vlc_sout.h index 3be54cb29e..a1a245eccc 100644 --- a/include/vlc_sout.h +++ b/include/vlc_sout.h @@ -97,7 +97,7 @@ struct sout_access_out_t int (*pf_seek)( sout_access_out_t *, off_t ); ssize_t (*pf_read)( sout_access_out_t *, block_t * ); ssize_t (*pf_write)( sout_access_out_t *, block_t * ); - int (*pf_control)( sout_access_out_t *, int, va_list); + int (*pf_control)( sout_access_out_t *, int, va_list ); config_chain_t *p_cfg; }; @@ -107,12 +107,14 @@ enum access_out_query_e ACCESS_OUT_CONTROLS_PACE, /* arg1=bool *, can fail (assume true) */ }; -VLC_EXPORT( sout_access_out_t *,sout_AccessOutNew, ( sout_instance_t *, const char *psz_access, const char *psz_name ) ); -VLC_EXPORT( void, sout_AccessOutDelete, ( sout_access_out_t * ) ); -VLC_EXPORT( int, sout_AccessOutSeek, ( sout_access_out_t *, off_t ) ); -VLC_EXPORT( ssize_t, sout_AccessOutRead, ( sout_access_out_t *, block_t * ) ); -VLC_EXPORT( ssize_t, sout_AccessOutWrite, ( sout_access_out_t *, block_t * ) ); -VLC_EXPORT( int, sout_AccessOutControl,( sout_access_out_t *, int, ... ) ); +VLC_EXPORT( sout_access_out_t *,sout_AccessOutNew, ( vlc_object_t *, const char *psz_access, const char *psz_name ) ); +#define sout_AccessOutNew( obj, access, name ) \ + sout_AccessOutNew( VLC_OBJECT(obj), access, name ) +VLC_EXPORT( void, sout_AccessOutDelete, ( sout_access_out_t * ) ); +VLC_EXPORT( int, sout_AccessOutSeek, ( sout_access_out_t *, off_t ) ); +VLC_EXPORT( ssize_t, sout_AccessOutRead, ( sout_access_out_t *, block_t * ) ); +VLC_EXPORT( ssize_t, sout_AccessOutWrite, ( sout_access_out_t *, block_t * ) ); +VLC_EXPORT( int, sout_AccessOutControl, ( sout_access_out_t *, int, ... ) ); static inline bool sout_AccessOutCanControlPace( sout_access_out_t *p_ao ) { diff --git a/src/stream_output/stream_output.c b/src/stream_output/stream_output.c index 4d99323a43..e853235815 100644 --- a/src/stream_output/stream_output.c +++ b/src/stream_output/stream_output.c @@ -288,10 +288,11 @@ int sout_InputSendBuffer( sout_packetizer_input_t *p_input, return i_ret; } +#undef sout_AccessOutNew /***************************************************************************** * sout_AccessOutNew: allocate a new access out *****************************************************************************/ -sout_access_out_t *sout_AccessOutNew( sout_instance_t *p_sout, +sout_access_out_t *sout_AccessOutNew( vlc_object_t *p_sout, const char *psz_access, const char *psz_name ) { static const char typename[] = "access out";