<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
  <title></title>
</head>
<body bgcolor="#ffffff" text="#000000">
Hi,<br>
git version control wrote:
<blockquote cite="mid:20090317190847.F22BD352B3@skanda.videolan.org"
 type="cite">
  <pre wrap="">vlc | branch: master | Laurent Aimar <a class="moz-txt-link-rfc2396E" href="mailto:fenrir@videolan.org"><fenrir@videolan.org></a> | Mon Mar 16 23:38:00 2009 +0100| [a43be925489b3b4b659b12490e9fff629cc37a55] | committer: Laurent Aimar 

Try to use video-filter instead of vout-filter for deinterlacing.

It only works for blend and X mode but there are probably the most used.
When blend/X are enabled/disabled:
 - It avoids recreating the vout.
 - It avoids deinterlacing the (soft) subtitles.
The other modes are not possible without a lot of vout works, so it is
postponed for later.

As a side effect, the initial value of the menu now takes into account the
command line options.

Please, report any regression. This code is made complicated by the
vout filter/video filter2 switches&tricks.

  </pre>
</blockquote>
Regression:<br>
Pressing "D" shortcut to cycle through deinterlacing functions Discard
- Blend ...<br>
Or manually goto Video sub context menu select Discard then Blend (and
it's not checked)<br>
<br>
---<br>
At this point Discard deinterlace is On. Selecting Blend... below<br>
---<br>
[099CE9DC] deinterlace generic debug: using blend deinterlace mode<br>
[1333D59C] main video output debug: [7] 2 0<br>
[1333D59C] main video output debug: [8] 2 0<br>
[099CE9DC] deinterlace generic debug: using blend deinterlace method<br>
[1333D59C] main video output debug: [9] 2 1<br>
[095E754C] deinterlace filter debug: deinterlacing<br>
[1333D59C] main video output debug: [10] 4 0<br>
[1333D59C] main video output debug: [11] 4 0<br>
[095E754C] main filter debug: using video filter2 module "deinterlace"<br>
[1333D59C] main video output debug: [12] 2 0<br>
[1333D59C] main video output debug: [13] 2 0<br>
[095E754C] main filter debug: TIMER module_need() : 0.000 ms - Total
0.000 ms / 1 intvls (Avg 0.000 ms)<br>
[1333D59C] main video output debug: [14] 2 0<br>
[021720B4] main input debug: saving a free vout<br>
[1333D59C] main video output debug: Filter 'deinterlace' (095E754C)
appended to chain<br>
---<br>
Added blend deinterlace<br>
---<br>
...<br>
[03C45B04] qt4 window debug: releasing video...<br>
[03BCE02C] qt4 interface debug: Video is not needed anymore<br>
---<br>
vout has been reset<br>
---<br>
...<br>
[1333D59C] main video output debug: Filter 'deinterlace' (095E754C)
removed from chain<br>
[095E754C] main filter debug: removing module "deinterlace"<br>
[1333D59C] main video output debug: removing module "deinterlace"<br>
---<br>
blend deinterlace automatically removed<br>
---<br>
[099CE9DC] direct3d video output debug: DirectXCreateWindow<br>
[03C45A4C] main window debug: looking for hwnd module: 2 candidates<br>
[03C45A4C] qt4 window debug: requesting video...<br>
[03BCE02C] qt4 interface debug: Video was requested -1, -1<br>
---<br>
new vout.<br>
---<br>
The result becomes you can't switch from Discard to Blend.<br>
<br>
Also it will crash when you switch from Discard to blend then <br>
Discard to X or the other way around or <br>
Discard and crash<br>
<br>
Call stack:<br>
66743B64  liblibmpeg2_plugin.dll:66743B64  mpeg2_parse  decode.c:58<br>
<br>
6A56BAD0  libvlccore.dll:6A56BAD0  DecoderDecodeVideo  decoder.c:1435<br>
<br>
6A56B668  libvlccore.dll:6A56B668  DecoderProcess  decoder.c:1809<br>
<br>
6A56C158  libvlccore.dll:6A56C158  DecoderThread  decoder.c:887<br>
<br>
6A5BB821  libvlccore.dll:6A5BB821  thread_entry  threads.c:1002<br>
<br>
6A5BBB1A  libvlccore.dll:6A5BBB1A  vlc_entry  threads.c:688<br>
<br>
75352CCE  msvcrt.dll:75352CCE  wcstombs_s<br>
75352DEB  msvcrt.dll:75352DEB  _beginthreadex<br>
754BE3F3  kernel32.dll:754BE3F3  BaseThreadInitThunk<br>
76FBCFED  ntdll.dll:76FBCFED  RtlCreateUserProcess<br>
76FBD1FF  ntdll.dll:76FBD1FF  RtlCreateProcessParameters<br>
<br>
<blockquote cite="mid:20090317190847.F22BD352B3@skanda.videolan.org"
 type="cite">
  <pre wrap=""></pre>
  <blockquote type="cite">
    <pre wrap=""><a class="moz-txt-link-freetext" href="http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=a43be925489b3b4b659b12490e9fff629cc37a55">http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=a43be925489b3b4b659b12490e9fff629cc37a55</a>
    </pre>
  </blockquote>
  <pre wrap=""><!---->---

 src/video_output/video_output.c  |  240 ++++++++++++++++++++++++++++----------
 src/video_output/vout_internal.h |    1 +
 2 files changed, 180 insertions(+), 61 deletions(-)

Diff:   <a class="moz-txt-link-freetext" href="http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=a43be925489b3b4b659b12490e9fff629cc37a55">http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=a43be925489b3b4b659b12490e9fff629cc37a55</a>
  </pre>
</blockquote>
<br>
Regards<br>
<br>
</body>
</html>