Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc-1.1
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
videolan
vlc-1.1
Commits
3f35c517
Commit
3f35c517
authored
Jul 17, 2008
by
Laurent Aimar
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fixed filters implemented as vout (Init/End can be called multiple times
+ use vout_Destroy where it should be) It closes #1722.
parent
dd066314
Changes
11
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
79 additions
and
96 deletions
+79
-96
modules/video_filter/clone.c
modules/video_filter/clone.c
+5
-6
modules/video_filter/crop.c
modules/video_filter/crop.c
+17
-14
modules/video_filter/deinterlace.c
modules/video_filter/deinterlace.c
+11
-12
modules/video_filter/logo.c
modules/video_filter/logo.c
+5
-4
modules/video_filter/magnify.c
modules/video_filter/magnify.c
+6
-8
modules/video_filter/opencv_wrapper.c
modules/video_filter/opencv_wrapper.c
+5
-9
modules/video_filter/panoramix.c
modules/video_filter/panoramix.c
+9
-17
modules/video_filter/puzzle.c
modules/video_filter/puzzle.c
+6
-9
modules/video_filter/swscale.c
modules/video_filter/swscale.c
+4
-1
modules/video_filter/transform.c
modules/video_filter/transform.c
+6
-9
modules/video_filter/wall.c
modules/video_filter/wall.c
+5
-7
No files found.
modules/video_filter/clone.c
View file @
3f35c517
...
@@ -285,12 +285,16 @@ static void End( vout_thread_t *p_vout )
...
@@ -285,12 +285,16 @@ static void End( vout_thread_t *p_vout )
{
{
int
i_index
;
int
i_index
;
DEL_PARENT_CALLBACKS
(
SendEventsToChild
);
/* Free the fake output buffers we allocated */
/* Free the fake output buffers we allocated */
for
(
i_index
=
I_OUTPUTPICTURES
;
i_index
;
)
for
(
i_index
=
I_OUTPUTPICTURES
;
i_index
;
)
{
{
i_index
--
;
i_index
--
;
free
(
PP_OUTPUTPICTURE
[
i_index
]
->
p_data_orig
);
free
(
PP_OUTPUTPICTURE
[
i_index
]
->
p_data_orig
);
}
}
RemoveAllVout
(
p_vout
);
}
}
/*****************************************************************************
/*****************************************************************************
...
@@ -302,10 +306,6 @@ static void Destroy( vlc_object_t *p_this )
...
@@ -302,10 +306,6 @@ static void Destroy( vlc_object_t *p_this )
{
{
vout_thread_t
*
p_vout
=
(
vout_thread_t
*
)
p_this
;
vout_thread_t
*
p_vout
=
(
vout_thread_t
*
)
p_this
;
RemoveAllVout
(
p_vout
);
DEL_PARENT_CALLBACKS
(
SendEventsToChild
);
free
(
p_vout
->
p_sys
->
pp_vout
);
free
(
p_vout
->
p_sys
->
pp_vout
);
free
(
p_vout
->
p_sys
);
free
(
p_vout
->
p_sys
);
}
}
...
@@ -387,8 +387,7 @@ static void RemoveAllVout( vout_thread_t *p_vout )
...
@@ -387,8 +387,7 @@ static void RemoveAllVout( vout_thread_t *p_vout )
--
p_vout
->
p_sys
->
i_clones
;
--
p_vout
->
p_sys
->
i_clones
;
DEL_CALLBACKS
(
p_vout
->
p_sys
->
pp_vout
[
p_vout
->
p_sys
->
i_clones
],
DEL_CALLBACKS
(
p_vout
->
p_sys
->
pp_vout
[
p_vout
->
p_sys
->
i_clones
],
SendEvents
);
SendEvents
);
vlc_object_detach
(
p_vout
->
p_sys
->
pp_vout
[
p_vout
->
p_sys
->
i_clones
]
);
vout_Destroy
(
p_vout
->
p_sys
->
pp_vout
[
p_vout
->
p_sys
->
i_clones
]
);
vlc_object_release
(
p_vout
->
p_sys
->
pp_vout
[
p_vout
->
p_sys
->
i_clones
]
);
}
}
}
}
...
...
modules/video_filter/crop.c
View file @
3f35c517
...
@@ -380,14 +380,14 @@ static int Init( vout_thread_t *p_vout )
...
@@ -380,14 +380,14 @@ static int Init( vout_thread_t *p_vout )
return
VLC_EGENERIC
;
return
VLC_EGENERIC
;
}
}
ALLOCATE_DIRECTBUFFERS
(
VOUT_MAX_PICTURES
);
ADD_CALLBACKS
(
p_vout
->
p_sys
->
p_vout
,
SendEvents
);
#ifdef BEST_AUTOCROP
#ifdef BEST_AUTOCROP
var_AddCallback
(
p_vout
,
"ratio-crop"
,
FilterCallback
,
NULL
);
var_AddCallback
(
p_vout
,
"ratio-crop"
,
FilterCallback
,
NULL
);
#endif
#endif
ALLOCATE_DIRECTBUFFERS
(
VOUT_MAX_PICTURES
);
ADD_CALLBACKS
(
p_vout
->
p_sys
->
p_vout
,
SendEvents
);
ADD_PARENT_CALLBACKS
(
SendEventsToChild
);
ADD_PARENT_CALLBACKS
(
SendEventsToChild
);
return
VLC_SUCCESS
;
return
VLC_SUCCESS
;
...
@@ -400,12 +400,19 @@ static void End( vout_thread_t *p_vout )
...
@@ -400,12 +400,19 @@ static void End( vout_thread_t *p_vout )
{
{
int
i_index
;
int
i_index
;
DEL_PARENT_CALLBACKS
(
SendEventsToChild
);
if
(
p_vout
->
p_sys
->
p_vout
)
DEL_CALLBACKS
(
p_vout
->
p_sys
->
p_vout
,
SendEvents
);
/* Free the fake output buffers we allocated */
/* Free the fake output buffers we allocated */
for
(
i_index
=
I_OUTPUTPICTURES
;
i_index
;
)
for
(
i_index
=
I_OUTPUTPICTURES
;
i_index
;
)
{
{
i_index
--
;
i_index
--
;
free
(
PP_OUTPUTPICTURE
[
i_index
]
->
p_data_orig
);
free
(
PP_OUTPUTPICTURE
[
i_index
]
->
p_data_orig
);
}
}
if
(
p_vout
->
p_sys
->
p_vout
)
vout_Destroy
(
p_vout
->
p_sys
->
p_vout
);
}
}
/*****************************************************************************
/*****************************************************************************
...
@@ -417,15 +424,6 @@ static void Destroy( vlc_object_t *p_this )
...
@@ -417,15 +424,6 @@ static void Destroy( vlc_object_t *p_this )
{
{
vout_thread_t
*
p_vout
=
(
vout_thread_t
*
)
p_this
;
vout_thread_t
*
p_vout
=
(
vout_thread_t
*
)
p_this
;
if
(
p_vout
->
p_sys
->
p_vout
)
{
DEL_CALLBACKS
(
p_vout
->
p_sys
->
p_vout
,
SendEvents
);
vlc_object_detach
(
p_vout
->
p_sys
->
p_vout
);
vlc_object_release
(
p_vout
->
p_sys
->
p_vout
);
}
DEL_PARENT_CALLBACKS
(
SendEventsToChild
);
free
(
p_vout
->
p_sys
);
free
(
p_vout
->
p_sys
);
}
}
...
@@ -455,7 +453,11 @@ static int Manage( vout_thread_t *p_vout )
...
@@ -455,7 +453,11 @@ static int Manage( vout_thread_t *p_vout )
msg_Info
(
p_vout
,
"ratio %d"
,
p_vout
->
p_sys
->
i_aspect
/
432
);
msg_Info
(
p_vout
,
"ratio %d"
,
p_vout
->
p_sys
->
i_aspect
/
432
);
#endif
#endif
vlc_object_release
(
p_vout
->
p_sys
->
p_vout
);
if
(
p_vout
->
p_sys
->
p_vout
)
{
DEL_CALLBACKS
(
p_vout
->
p_sys
->
p_vout
,
SendEvents
);
vout_Destroy
(
p_vout
->
p_sys
->
p_vout
);
}
fmt
.
i_width
=
fmt
.
i_visible_width
=
p_vout
->
p_sys
->
i_width
;
fmt
.
i_width
=
fmt
.
i_visible_width
=
p_vout
->
p_sys
->
i_width
;
fmt
.
i_height
=
fmt
.
i_visible_height
=
p_vout
->
p_sys
->
i_height
;
fmt
.
i_height
=
fmt
.
i_visible_height
=
p_vout
->
p_sys
->
i_height
;
...
@@ -473,6 +475,7 @@ static int Manage( vout_thread_t *p_vout )
...
@@ -473,6 +475,7 @@ static int Manage( vout_thread_t *p_vout )
_
(
"VLC could not open the video output module."
)
);
_
(
"VLC could not open the video output module."
)
);
return
VLC_EGENERIC
;
return
VLC_EGENERIC
;
}
}
ADD_CALLBACKS
(
p_vout
->
p_sys
->
p_vout
,
SendEvents
);
p_vout
->
p_sys
->
b_changed
=
false
;
p_vout
->
p_sys
->
b_changed
=
false
;
p_vout
->
p_sys
->
i_lastchange
=
0
;
p_vout
->
p_sys
->
i_lastchange
=
0
;
...
...
modules/video_filter/deinterlace.c
View file @
3f35c517
...
@@ -420,6 +420,11 @@ static void End( vout_thread_t *p_vout )
...
@@ -420,6 +420,11 @@ static void End( vout_thread_t *p_vout )
{
{
int
i_index
;
int
i_index
;
DEL_PARENT_CALLBACKS
(
SendEventsToChild
);
if
(
p_vout
->
p_sys
->
p_vout
)
DEL_CALLBACKS
(
p_vout
->
p_sys
->
p_vout
,
SendEvents
);
/* Free the fake output buffers we allocated */
/* Free the fake output buffers we allocated */
for
(
i_index
=
I_OUTPUTPICTURES
;
i_index
;
)
for
(
i_index
=
I_OUTPUTPICTURES
;
i_index
;
)
{
{
...
@@ -428,13 +433,7 @@ static void End( vout_thread_t *p_vout )
...
@@ -428,13 +433,7 @@ static void End( vout_thread_t *p_vout )
}
}
if
(
p_vout
->
p_sys
->
p_vout
)
if
(
p_vout
->
p_sys
->
p_vout
)
{
vout_Destroy
(
p_vout
->
p_sys
->
p_vout
);
DEL_CALLBACKS
(
p_vout
->
p_sys
->
p_vout
,
SendEvents
);
vlc_object_detach
(
p_vout
->
p_sys
->
p_vout
);
vlc_object_release
(
p_vout
->
p_sys
->
p_vout
);
}
DEL_PARENT_CALLBACKS
(
SendEventsToChild
);
}
}
/*****************************************************************************
/*****************************************************************************
...
@@ -2061,11 +2060,11 @@ static int FilterCallback( vlc_object_t *p_this, char const *psz_cmd,
...
@@ -2061,11 +2060,11 @@ static int FilterCallback( vlc_object_t *p_this, char const *psz_cmd,
}
}
/* We need to kill the old vout */
/* We need to kill the old vout */
if
(
p_vout
->
p_sys
->
p_vout
)
DEL_CALLBACKS
(
p_vout
->
p_sys
->
p_vout
,
SendEvents
);
{
DEL_CALLBACKS
(
p_vout
->
p_sys
->
p_vout
,
SendEvents
);
vlc_object_detach
(
p_vout
->
p_sys
->
p_vout
);
vout_Destroy
(
p_vout
->
p_sys
->
p_vout
);
vlc_object_release
(
p_vout
->
p_sys
->
p_vout
);
}
/* Try to open a new video output */
/* Try to open a new video output */
p_vout
->
p_sys
->
p_vout
=
SpawnRealVout
(
p_vout
);
p_vout
->
p_sys
->
p_vout
=
SpawnRealVout
(
p_vout
);
...
...
modules/video_filter/logo.c
View file @
3f35c517
...
@@ -475,6 +475,10 @@ static void End( vout_thread_t *p_vout )
...
@@ -475,6 +475,10 @@ static void End( vout_thread_t *p_vout )
vout_sys_t
*
p_sys
=
p_vout
->
p_sys
;
vout_sys_t
*
p_sys
=
p_vout
->
p_sys
;
int
i_index
;
int
i_index
;
DEL_PARENT_CALLBACKS
(
SendEventsToChild
);
DEL_CALLBACKS
(
p_sys
->
p_vout
,
SendEvents
);
/* Free the fake output buffers we allocated */
/* Free the fake output buffers we allocated */
for
(
i_index
=
I_OUTPUTPICTURES
;
i_index
;
)
for
(
i_index
=
I_OUTPUTPICTURES
;
i_index
;
)
{
{
...
@@ -485,9 +489,7 @@ static void End( vout_thread_t *p_vout )
...
@@ -485,9 +489,7 @@ static void End( vout_thread_t *p_vout )
var_DelCallback
(
p_sys
->
p_vout
,
"mouse-x"
,
MouseEvent
,
p_vout
);
var_DelCallback
(
p_sys
->
p_vout
,
"mouse-x"
,
MouseEvent
,
p_vout
);
var_DelCallback
(
p_sys
->
p_vout
,
"mouse-y"
,
MouseEvent
,
p_vout
);
var_DelCallback
(
p_sys
->
p_vout
,
"mouse-y"
,
MouseEvent
,
p_vout
);
DEL_CALLBACKS
(
p_sys
->
p_vout
,
SendEvents
);
vout_Destroy
(
p_sys
->
p_vout
);
vlc_object_detach
(
p_sys
->
p_vout
);
vlc_object_release
(
p_sys
->
p_vout
);
if
(
p_sys
->
p_blend
->
p_module
)
if
(
p_sys
->
p_blend
->
p_module
)
module_Unneed
(
p_sys
->
p_blend
,
p_sys
->
p_blend
->
p_module
);
module_Unneed
(
p_sys
->
p_blend
,
p_sys
->
p_blend
->
p_module
);
...
@@ -503,7 +505,6 @@ static void Destroy( vlc_object_t *p_this )
...
@@ -503,7 +505,6 @@ static void Destroy( vlc_object_t *p_this )
vout_thread_t
*
p_vout
=
(
vout_thread_t
*
)
p_this
;
vout_thread_t
*
p_vout
=
(
vout_thread_t
*
)
p_this
;
vout_sys_t
*
p_sys
=
p_vout
->
p_sys
;
vout_sys_t
*
p_sys
=
p_vout
->
p_sys
;
DEL_PARENT_CALLBACKS
(
SendEventsToChild
);
FreeLogoList
(
p_sys
->
p_logo_list
);
FreeLogoList
(
p_sys
->
p_logo_list
);
free
(
p_sys
->
p_logo_list
);
free
(
p_sys
->
p_logo_list
);
...
...
modules/video_filter/magnify.c
View file @
3f35c517
...
@@ -186,6 +186,10 @@ static void End( vout_thread_t *p_vout )
...
@@ -186,6 +186,10 @@ static void End( vout_thread_t *p_vout )
{
{
int
i_index
;
int
i_index
;
DEL_PARENT_CALLBACKS
(
SendEventsToChild
);
DEL_CALLBACKS
(
p_vout
->
p_sys
->
p_vout
,
SendEvents
);
/* Free the fake output buffers we allocated */
/* Free the fake output buffers we allocated */
for
(
i_index
=
I_OUTPUTPICTURES
;
i_index
;
)
for
(
i_index
=
I_OUTPUTPICTURES
;
i_index
;
)
{
{
...
@@ -196,6 +200,8 @@ static void End( vout_thread_t *p_vout )
...
@@ -196,6 +200,8 @@ static void End( vout_thread_t *p_vout )
var_DelCallback
(
p_vout
->
p_sys
->
p_vout
,
"mouse-x"
,
MouseEvent
,
p_vout
);
var_DelCallback
(
p_vout
->
p_sys
->
p_vout
,
"mouse-x"
,
MouseEvent
,
p_vout
);
var_DelCallback
(
p_vout
->
p_sys
->
p_vout
,
"mouse-y"
,
MouseEvent
,
p_vout
);
var_DelCallback
(
p_vout
->
p_sys
->
p_vout
,
"mouse-y"
,
MouseEvent
,
p_vout
);
var_DelCallback
(
p_vout
->
p_sys
->
p_vout
,
"mouse-clicked"
,
MouseEvent
,
p_vout
);
var_DelCallback
(
p_vout
->
p_sys
->
p_vout
,
"mouse-clicked"
,
MouseEvent
,
p_vout
);
vout_Destroy
(
p_vout
->
p_sys
->
p_vout
);
}
}
/*****************************************************************************
/*****************************************************************************
...
@@ -205,16 +211,8 @@ static void Destroy( vlc_object_t *p_this )
...
@@ -205,16 +211,8 @@ static void Destroy( vlc_object_t *p_this )
{
{
vout_thread_t
*
p_vout
=
(
vout_thread_t
*
)
p_this
;
vout_thread_t
*
p_vout
=
(
vout_thread_t
*
)
p_this
;
if
(
p_vout
->
p_sys
->
p_vout
)
{
DEL_CALLBACKS
(
p_vout
->
p_sys
->
p_vout
,
SendEvents
);
vlc_object_detach
(
p_vout
->
p_sys
->
p_vout
);
vlc_object_release
(
p_vout
->
p_sys
->
p_vout
);
}
image_HandlerDelete
(
p_vout
->
p_sys
->
p_image
);
image_HandlerDelete
(
p_vout
->
p_sys
->
p_image
);
DEL_PARENT_CALLBACKS
(
SendEventsToChild
);
free
(
p_vout
->
p_sys
);
free
(
p_vout
->
p_sys
);
}
}
...
...
modules/video_filter/opencv_wrapper.c
View file @
3f35c517
...
@@ -374,6 +374,10 @@ static void End( vout_thread_t *p_vout )
...
@@ -374,6 +374,10 @@ static void End( vout_thread_t *p_vout )
{
{
int
i_index
;
int
i_index
;
DEL_PARENT_CALLBACKS
(
SendEventsToChild
);
DEL_CALLBACKS
(
p_vout
->
p_sys
->
p_vout
,
SendEvents
);
/* Free the fake output buffers we allocated */
/* Free the fake output buffers we allocated */
for
(
i_index
=
I_OUTPUTPICTURES
;
i_index
;
)
for
(
i_index
=
I_OUTPUTPICTURES
;
i_index
;
)
{
{
...
@@ -391,6 +395,7 @@ static void End( vout_thread_t *p_vout )
...
@@ -391,6 +395,7 @@ static void End( vout_thread_t *p_vout )
p_vout
->
p_sys
->
p_opencv
=
NULL
;
p_vout
->
p_sys
->
p_opencv
=
NULL
;
}
}
vout_Destroy
(
p_vout
->
p_sys
->
p_vout
)
}
}
/*****************************************************************************
/*****************************************************************************
...
@@ -402,15 +407,6 @@ static void Destroy( vlc_object_t *p_this )
...
@@ -402,15 +407,6 @@ static void Destroy( vlc_object_t *p_this )
{
{
vout_thread_t
*
p_vout
=
(
vout_thread_t
*
)
p_this
;
vout_thread_t
*
p_vout
=
(
vout_thread_t
*
)
p_this
;
if
(
p_vout
->
p_sys
->
p_vout
)
{
DEL_CALLBACKS
(
p_vout
->
p_sys
->
p_vout
,
SendEvents
);
vlc_object_detach
(
p_vout
->
p_sys
->
p_vout
);
vlc_object_release
(
p_vout
->
p_sys
->
p_vout
);
}
DEL_PARENT_CALLBACKS
(
SendEventsToChild
);
ReleaseImages
(
p_vout
);
ReleaseImages
(
p_vout
);
if
(
p_vout
->
p_sys
->
p_image
)
if
(
p_vout
->
p_sys
->
p_image
)
...
...
modules/video_filter/panoramix.c
View file @
3f35c517
...
@@ -873,15 +873,20 @@ static void End( vout_thread_t *p_vout )
...
@@ -873,15 +873,20 @@ static void End( vout_thread_t *p_vout )
{
{
int
i_index
;
int
i_index
;
#ifdef OVERLAP
DEL_PARENT_CALLBACKS
(
SendEventsToChild
);
var_SetInteger
(
p_vout
,
"bz-length"
,
p_vout
->
p_sys
->
bz_length
);
#endif
/* Free the fake output buffers we allocated */
/* Free the fake output buffers we allocated */
for
(
i_index
=
I_OUTPUTPICTURES
;
i_index
;
)
for
(
i_index
=
I_OUTPUTPICTURES
;
i_index
;
)
{
{
i_index
--
;
i_index
--
;
free
(
PP_OUTPUTPICTURE
[
i_index
]
->
p_data_orig
);
free
(
PP_OUTPUTPICTURE
[
i_index
]
->
p_data_orig
);
}
}
RemoveAllVout
(
p_vout
);
#ifdef OVERLAP
var_SetInteger
(
p_vout
,
"bz-length"
,
p_vout
->
p_sys
->
bz_length
);
#endif
}
}
/*****************************************************************************
/*****************************************************************************
...
@@ -893,16 +898,6 @@ static void Destroy( vlc_object_t *p_this )
...
@@ -893,16 +898,6 @@ static void Destroy( vlc_object_t *p_this )
{
{
vout_thread_t
*
p_vout
=
(
vout_thread_t
*
)
p_this
;
vout_thread_t
*
p_vout
=
(
vout_thread_t
*
)
p_this
;
#ifdef GLOBAL_OUTPUT
DEL_CALLBACKS
(
p_vout
->
p_sys
->
p_vout
,
SendEvents
);
vlc_object_detach
(
p_vout
->
p_sys
->
p_vout
);
vlc_object_release
(
p_vout
->
p_sys
->
p_vout
);
DEL_PARENT_CALLBACKS
(
SendEventsToChild
);
#endif
RemoveAllVout
(
p_vout
);
DEL_PARENT_CALLBACKS
(
SendEventsToChild
);
free
(
p_vout
->
p_sys
->
pp_vout
);
free
(
p_vout
->
p_sys
->
pp_vout
);
free
(
p_vout
->
p_sys
);
free
(
p_vout
->
p_sys
);
...
@@ -1908,10 +1903,7 @@ static void RemoveAllVout( vout_thread_t *p_vout )
...
@@ -1908,10 +1903,7 @@ static void RemoveAllVout( vout_thread_t *p_vout )
DEL_CALLBACKS
(
DEL_CALLBACKS
(
p_vout
->
p_sys
->
pp_vout
[
p_vout
->
p_sys
->
i_vout
].
p_vout
,
p_vout
->
p_sys
->
pp_vout
[
p_vout
->
p_sys
->
i_vout
].
p_vout
,
SendEvents
);
SendEvents
);
vlc_object_detach
(
vout_Destroy
(
p_vout
->
p_sys
->
pp_vout
[
p_vout
->
p_sys
->
i_vout
].
p_vout
);
p_vout
->
p_sys
->
pp_vout
[
p_vout
->
p_sys
->
i_vout
].
p_vout
);
vlc_object_release
(
p_vout
->
p_sys
->
pp_vout
[
p_vout
->
p_sys
->
i_vout
].
p_vout
);
}
}
}
}
}
}
...
...
modules/video_filter/puzzle.c
View file @
3f35c517
...
@@ -289,6 +289,10 @@ static void End( vout_thread_t *p_vout )
...
@@ -289,6 +289,10 @@ static void End( vout_thread_t *p_vout )
{
{
int
i_index
;
int
i_index
;
DEL_PARENT_CALLBACKS
(
SendEventsToChild
);
DEL_CALLBACKS
(
p_vout
->
p_sys
->
p_vout
,
SendEvents
);
/* Free the fake output buffers we allocated */
/* Free the fake output buffers we allocated */
for
(
i_index
=
I_OUTPUTPICTURES
;
i_index
;
)
for
(
i_index
=
I_OUTPUTPICTURES
;
i_index
;
)
{
{
...
@@ -299,6 +303,8 @@ static void End( vout_thread_t *p_vout )
...
@@ -299,6 +303,8 @@ static void End( vout_thread_t *p_vout )
var_DelCallback
(
p_vout
->
p_sys
->
p_vout
,
"mouse-x"
,
MouseEvent
,
p_vout
);
var_DelCallback
(
p_vout
->
p_sys
->
p_vout
,
"mouse-x"
,
MouseEvent
,
p_vout
);
var_DelCallback
(
p_vout
->
p_sys
->
p_vout
,
"mouse-y"
,
MouseEvent
,
p_vout
);
var_DelCallback
(
p_vout
->
p_sys
->
p_vout
,
"mouse-y"
,
MouseEvent
,
p_vout
);
var_DelCallback
(
p_vout
->
p_sys
->
p_vout
,
"mouse-clicked"
,
MouseEvent
,
p_vout
);
var_DelCallback
(
p_vout
->
p_sys
->
p_vout
,
"mouse-clicked"
,
MouseEvent
,
p_vout
);
vout_Destroy
(
p_vout
->
p_sys
->
p_vout
);
}
}
#define SHUFFLE_WIDTH 81
#define SHUFFLE_WIDTH 81
...
@@ -327,18 +333,9 @@ static void Destroy( vlc_object_t *p_this )
...
@@ -327,18 +333,9 @@ static void Destroy( vlc_object_t *p_this )
{
{
vout_thread_t
*
p_vout
=
(
vout_thread_t
*
)
p_this
;
vout_thread_t
*
p_vout
=
(
vout_thread_t
*
)
p_this
;
if
(
p_vout
->
p_sys
->
p_vout
)
{
DEL_CALLBACKS
(
p_vout
->
p_sys
->
p_vout
,
SendEvents
);
vlc_object_detach
(
p_vout
->
p_sys
->
p_vout
);
vlc_object_release
(
p_vout
->
p_sys
->
p_vout
);
}
image_HandlerDelete
(
p_vout
->
p_sys
->
p_image
);
image_HandlerDelete
(
p_vout
->
p_sys
->
p_image
);
free
(
p_vout
->
p_sys
->
pi_order
);
free
(
p_vout
->
p_sys
->
pi_order
);
DEL_PARENT_CALLBACKS
(
SendEventsToChild
);
free
(
p_vout
->
p_sys
);
free
(
p_vout
->
p_sys
);
}
}
...
...
modules/video_filter/swscale.c
View file @
3f35c517
...
@@ -191,6 +191,8 @@ static int OpenScaler( vlc_object_t *p_this )
...
@@ -191,6 +191,8 @@ static int OpenScaler( vlc_object_t *p_this )
free
(
p_sys
);
free
(
p_sys
);
return
VLC_EGENERIC
;
return
VLC_EGENERIC
;
}
}
if
(
p_sys
->
ctx
)
sws_freeContext
(
p_sys
->
ctx
);
p_sys
->
ctx
=
NULL
;
msg_Dbg
(
p_filter
,
"%ix%i chroma: %4.4s -> %ix%i chroma: %4.4s"
,
msg_Dbg
(
p_filter
,
"%ix%i chroma: %4.4s -> %ix%i chroma: %4.4s"
,
p_filter
->
fmt_in
.
video
.
i_width
,
p_filter
->
fmt_in
.
video
.
i_height
,
p_filter
->
fmt_in
.
video
.
i_width
,
p_filter
->
fmt_in
.
video
.
i_height
,
...
@@ -231,7 +233,8 @@ static int CheckInit( filter_t *p_filter )
...
@@ -231,7 +233,8 @@ static int CheckInit( filter_t *p_filter )
if
(
(
p_filter
->
fmt_in
.
video
.
i_width
!=
p_sys
->
fmt_in
.
video
.
i_width
)
||
if
(
(
p_filter
->
fmt_in
.
video
.
i_width
!=
p_sys
->
fmt_in
.
video
.
i_width
)
||
(
p_filter
->
fmt_in
.
video
.
i_height
!=
p_sys
->
fmt_in
.
video
.
i_height
)
||
(
p_filter
->
fmt_in
.
video
.
i_height
!=
p_sys
->
fmt_in
.
video
.
i_height
)
||
(
p_filter
->
fmt_out
.
video
.
i_width
!=
p_sys
->
fmt_out
.
video
.
i_width
)
||
(
p_filter
->
fmt_out
.
video
.
i_width
!=
p_sys
->
fmt_out
.
video
.
i_width
)
||
(
p_filter
->
fmt_out
.
video
.
i_height
!=
p_sys
->
fmt_out
.
video
.
i_height
)
)
(
p_filter
->
fmt_out
.
video
.
i_height
!=
p_sys
->
fmt_out
.
video
.
i_height
)
||
!
p_sys
->
ctx
)
{
{
int
i_fmt_in
,
i_fmt_out
;
int
i_fmt_in
,
i_fmt_out
;
...
...
modules/video_filter/transform.c
View file @
3f35c517
...
@@ -276,12 +276,18 @@ static void End( vout_thread_t *p_vout )
...
@@ -276,12 +276,18 @@ static void End( vout_thread_t *p_vout )
{
{
int
i_index
;
int
i_index
;
DEL_PARENT_CALLBACKS
(
SendEventsToChild
);
DEL_CALLBACKS
(
p_vout
->
p_sys
->
p_vout
,
SendEvents
);
/* Free the fake output buffers we allocated */
/* Free the fake output buffers we allocated */
for
(
i_index
=
I_OUTPUTPICTURES
;
i_index
;
)
for
(
i_index
=
I_OUTPUTPICTURES
;
i_index
;
)
{
{
i_index
--
;
i_index
--
;
free
(
PP_OUTPUTPICTURE
[
i_index
]
->
p_data_orig
);
free
(
PP_OUTPUTPICTURE
[
i_index
]
->
p_data_orig
);
}
}
vout_Destroy
(
p_vout
->
p_sys
->
p_vout
);
}
}
/*****************************************************************************
/*****************************************************************************
...
@@ -293,15 +299,6 @@ static void Destroy( vlc_object_t *p_this )
...
@@ -293,15 +299,6 @@ static void Destroy( vlc_object_t *p_this )
{
{
vout_thread_t
*
p_vout
=
(
vout_thread_t
*
)
p_this
;
vout_thread_t
*
p_vout
=
(
vout_thread_t
*
)
p_this
;
if
(
p_vout
->
p_sys
->
p_vout
)
{
DEL_CALLBACKS
(
p_vout
->
p_sys
->
p_vout
,
SendEvents
);
vlc_object_detach
(
p_vout
->
p_sys
->
p_vout
);
vlc_object_release
(
p_vout
->
p_sys
->
p_vout
);
}
DEL_PARENT_CALLBACKS
(
SendEventsToChild
);
free
(
p_vout
->
p_sys
);
free
(
p_vout
->
p_sys
);
}
}
...
...
modules/video_filter/wall.c
View file @
3f35c517
...
@@ -451,12 +451,16 @@ static void End( vout_thread_t *p_vout )
...
@@ -451,12 +451,16 @@ static void End( vout_thread_t *p_vout )
{
{
int
i_index
;
int
i_index
;
DEL_PARENT_CALLBACKS
(
SendEventsToChild
);
/* Free the fake output buffers we allocated */
/* Free the fake output buffers we allocated */
for
(
i_index
=
I_OUTPUTPICTURES
;
i_index
;
)
for
(
i_index
=
I_OUTPUTPICTURES
;
i_index
;
)
{
{
i_index
--
;
i_index
--
;
free
(
PP_OUTPUTPICTURE
[
i_index
]
->
p_data_orig
);
free
(
PP_OUTPUTPICTURE
[
i_index
]
->
p_data_orig
);
}
}
RemoveAllVout
(
p_vout
);
}
}
/*****************************************************************************
/*****************************************************************************
...
@@ -468,9 +472,6 @@ static void Destroy( vlc_object_t *p_this )
...
@@ -468,9 +472,6 @@ static void Destroy( vlc_object_t *p_this )
{
{
vout_thread_t
*
p_vout
=
(
vout_thread_t
*
)
p_this
;
vout_thread_t
*
p_vout
=
(
vout_thread_t
*
)
p_this
;
RemoveAllVout
(
p_vout
);
DEL_PARENT_CALLBACKS
(
SendEventsToChild
);
free
(
p_vout
->
p_sys
->
pp_vout
);
free
(
p_vout
->
p_sys
->
pp_vout
);
free
(
p_vout
->
p_sys
);
free
(
p_vout
->
p_sys
);
...
@@ -583,10 +584,7 @@ static void RemoveAllVout( vout_thread_t *p_vout )
...
@@ -583,10 +584,7 @@ static void RemoveAllVout( vout_thread_t *p_vout )
DEL_CALLBACKS
(
DEL_CALLBACKS
(
p_vout
->
p_sys
->
pp_vout
[
p_vout
->
p_sys
->
i_vout
].
p_vout
,
p_vout
->
p_sys
->
pp_vout
[
p_vout
->
p_sys
->
i_vout
].
p_vout
,
SendEvents
);
SendEvents
);
vlc_object_detach
(
vout_Destroy
(
p_vout
->
p_sys
->
pp_vout
[
p_vout
->
p_sys
->
i_vout
].
p_vout
);
p_vout
->
p_sys
->
pp_vout
[
p_vout
->
p_sys
->
i_vout
].
p_vout
);
vlc_object_release
(
p_vout
->
p_sys
->
pp_vout
[
p_vout
->
p_sys
->
i_vout
].
p_vout
);
}
}
}
}
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment