Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc-2-2
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-2-2
Commits
ddcac444
Commit
ddcac444
authored
Jun 21, 2013
by
Rémi Denis-Courmont
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
picture: pointer for decoder-specified hardware context
parent
5f507b68
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
16 additions
and
0 deletions
+16
-0
include/vlc_picture.h
include/vlc_picture.h
+2
-0
src/misc/picture.c
src/misc/picture.c
+14
-0
No files found.
include/vlc_picture.h
View file @
ddcac444
...
@@ -91,6 +91,8 @@ struct picture_t
...
@@ -91,6 +91,8 @@ struct picture_t
bool
b_progressive
;
/**< is it a progressive frame ? */
bool
b_progressive
;
/**< is it a progressive frame ? */
bool
b_top_field_first
;
/**< which field is first */
bool
b_top_field_first
;
/**< which field is first */
unsigned
int
i_nb_fields
;
/**< # of displayed fields */
unsigned
int
i_nb_fields
;
/**< # of displayed fields */
void
*
context
;
/**< video format-specific data pointer,
* must point to a (void (*)(void*)) pointer to free the context */
/**@}*/
/**@}*/
/** Private data - the video output plugin might want to put stuff here to
/** Private data - the video output plugin might want to put stuff here to
...
...
src/misc/picture.c
View file @
ddcac444
...
@@ -85,6 +85,18 @@ static int AllocatePicture( picture_t *p_pic )
...
@@ -85,6 +85,18 @@ static int AllocatePicture( picture_t *p_pic )
/*****************************************************************************
/*****************************************************************************
*
*
*****************************************************************************/
*****************************************************************************/
static
void
PictureDestroyContext
(
picture_t
*
p_picture
)
{
void
(
**
context
)(
void
*
)
=
p_picture
->
context
;
if
(
context
!=
NULL
)
{
void
(
*
context_destroy
)(
void
*
)
=
*
context
;
context_destroy
(
context
);
p_picture
->
context
=
NULL
;
}
}
static
void
PictureDestroy
(
picture_t
*
p_picture
)
static
void
PictureDestroy
(
picture_t
*
p_picture
)
{
{
assert
(
p_picture
&&
assert
(
p_picture
&&
...
@@ -106,6 +118,7 @@ void picture_Reset( picture_t *p_picture )
...
@@ -106,6 +118,7 @@ void picture_Reset( picture_t *p_picture )
p_picture
->
b_progressive
=
false
;
p_picture
->
b_progressive
=
false
;
p_picture
->
i_nb_fields
=
2
;
p_picture
->
i_nb_fields
=
2
;
p_picture
->
b_top_field_first
=
false
;
p_picture
->
b_top_field_first
=
false
;
PictureDestroyContext
(
p_picture
);
}
}
/*****************************************************************************
/*****************************************************************************
...
@@ -271,6 +284,7 @@ void picture_Release( picture_t *p_picture )
...
@@ -271,6 +284,7 @@ void picture_Release( picture_t *p_picture )
if
(
refs
>
0
)
if
(
refs
>
0
)
return
;
return
;
PictureDestroyContext
(
p_picture
);
if
(
p_picture
->
gc
.
pf_destroy
!=
NULL
)
if
(
p_picture
->
gc
.
pf_destroy
!=
NULL
)
p_picture
->
gc
.
pf_destroy
(
p_picture
);
p_picture
->
gc
.
pf_destroy
(
p_picture
);
}
}
...
...
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