Thank you.<br><br>I'll change the filter and send the patch to vlc-devel.<br><br>The  (filter_t *p_filter = (filter_t*)p_this;)  should not be freed by me.<br><br><div class="gmail_quote">2011/4/10 Jean-Baptiste Kempf <span dir="ltr"><<a href="mailto:jb@videolan.org">jb@videolan.org</a>></span><br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">On Sat, Apr 09, 2011 at 08:26:35PM +0800, ¹ùÓîºê wrote :<br>
>  * Edit By YuHong<br>
<br>
Please use author and mention the port from mplayer.<br>
<div class="im"><br>
> vlc_module_begin ()<br>
>     set_description( N_("karaoke audio filter") )<br>
>     set_shortname( N_("karaoke af") )<br>
>     set_category( CAT_AUDIO )<br>
>     add_shortcut( "karaoke" )<br>
>     set_capability( "audio filter", 0 )<br>
>     set_callbacks( Open, Close )<br>
> vlc_module_end ()<br>
<br>
</div>Missing set_subcategory( SUBCAT_AUDIO_AFILTER )<br>
<div class="im"><br>
>     /* filter calculation */<br>
>     for( i = 0; i < i_samples; i++) {<br>
</div>You can declare int i directly in the for<br>
<div class="im"><br>
>  **********************************************************************/<br>
> static void Close( vlc_object_t *p_this )<br>
> {<br>
>     filter_t *p_filter = (filter_t*)p_this;<br>
>     free(p_filter);<br>
<br>
</div>Are you sure this is yours to free it?<br>
<br>
Best Regards,<br>
<font color="#888888"><br>
--<br>
Jean-Baptiste Kempf<br>
<a href="http://www.jbkempf.com/" target="_blank">http://www.jbkempf.com/</a> - +33 672 704 734<br>
Sent from my Electronic Device<br>
</font></blockquote></div><br>