Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc-gpu
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-gpu
Commits
4179a9e5
Commit
4179a9e5
authored
May 16, 2009
by
Laurent Aimar
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Added video_format_Setup to replace vout_InitFormat.
parent
b110c387
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
82 additions
and
75 deletions
+82
-75
include/vlc_es.h
include/vlc_es.h
+6
-0
src/libvlccore.sym
src/libvlccore.sym
+1
-0
src/misc/es_format.c
src/misc/es_format.c
+74
-0
src/video_output/vout_pictures.c
src/video_output/vout_pictures.c
+1
-75
No files found.
include/vlc_es.h
View file @
4179a9e5
...
...
@@ -171,6 +171,12 @@ static inline void video_format_Clean( video_format_t *p_src )
p_src
->
p_palette
=
NULL
;
}
/**
* It will fill up a video_format_tvideo_format_t using the given arguments.
* Becarefull that the video_format_t must already be initialized.
*/
VLC_EXPORT
(
void
,
video_format_Setup
,
(
video_format_t
*
,
vlc_fourcc_t
i_chroma
,
int
i_width
,
int
i_height
,
int
i_aspect
)
);
/**
* subtitles format description
*/
...
...
src/libvlccore.sym
View file @
4179a9e5
...
...
@@ -423,6 +423,7 @@ var_SetChecked
__var_TriggerCallback
__var_Type
video_format_FixRgb
video_format_Setup
vlc_avcodec_mutex
vlc_b64_decode
vlc_b64_decode_binary
...
...
src/misc/es_format.c
View file @
4179a9e5
...
...
@@ -128,6 +128,80 @@ void video_format_FixRgb( video_format_t *p_fmt )
p_fmt
->
i_bmask
);
}
void
video_format_Setup
(
video_format_t
*
p_fmt
,
vlc_fourcc_t
i_chroma
,
int
i_width
,
int
i_height
,
int
i_aspect
)
{
p_fmt
->
i_chroma
=
vlc_fourcc_GetCodec
(
VIDEO_ES
,
i_chroma
);
p_fmt
->
i_width
=
p_fmt
->
i_visible_width
=
i_width
;
p_fmt
->
i_height
=
p_fmt
->
i_visible_height
=
i_height
;
p_fmt
->
i_x_offset
=
p_fmt
->
i_y_offset
=
0
;
p_fmt
->
i_aspect
=
i_aspect
;
switch
(
p_fmt
->
i_chroma
)
{
case
VLC_CODEC_YUVA
:
p_fmt
->
i_bits_per_pixel
=
32
;
break
;
case
VLC_CODEC_I444
:
case
VLC_CODEC_J444
:
p_fmt
->
i_bits_per_pixel
=
24
;
break
;
case
VLC_CODEC_I422
:
case
VLC_CODEC_YUYV
:
case
VLC_CODEC_YVYU
:
case
VLC_CODEC_UYVY
:
case
VLC_CODEC_VYUY
:
case
VLC_CODEC_J422
:
p_fmt
->
i_bits_per_pixel
=
16
;
break
;
case
VLC_CODEC_I440
:
case
VLC_CODEC_J440
:
p_fmt
->
i_bits_per_pixel
=
16
;
break
;
case
VLC_CODEC_I411
:
case
VLC_CODEC_YV12
:
case
VLC_CODEC_I420
:
case
VLC_CODEC_J420
:
p_fmt
->
i_bits_per_pixel
=
12
;
break
;
case
VLC_CODEC_I410
:
p_fmt
->
i_bits_per_pixel
=
9
;
break
;
case
VLC_CODEC_Y211
:
p_fmt
->
i_bits_per_pixel
=
8
;
break
;
case
VLC_CODEC_YUVP
:
p_fmt
->
i_bits_per_pixel
=
8
;
break
;
case
VLC_CODEC_RGB32
:
case
VLC_CODEC_RGBA
:
p_fmt
->
i_bits_per_pixel
=
32
;
break
;
case
VLC_CODEC_RGB24
:
p_fmt
->
i_bits_per_pixel
=
24
;
break
;
case
VLC_CODEC_RGB15
:
case
VLC_CODEC_RGB16
:
p_fmt
->
i_bits_per_pixel
=
16
;
break
;
case
VLC_CODEC_RGB8
:
p_fmt
->
i_bits_per_pixel
=
8
;
break
;
case
VLC_CODEC_GREY
:
case
VLC_CODEC_RGBP
:
p_fmt
->
i_bits_per_pixel
=
8
;
break
;
default:
p_fmt
->
i_bits_per_pixel
=
0
;
break
;
}
}
void
es_format_Init
(
es_format_t
*
fmt
,
int
i_cat
,
vlc_fourcc_t
i_codec
)
{
...
...
src/video_output/vout_pictures.c
View file @
4179a9e5
...
...
@@ -605,81 +605,7 @@ int __vout_AllocatePicture( vlc_object_t *p_this, picture_t *p_pic,
void
vout_InitFormat
(
video_frame_format_t
*
p_format
,
vlc_fourcc_t
i_chroma
,
int
i_width
,
int
i_height
,
int
i_aspect
)
{
p_format
->
i_chroma
=
i_chroma
;
p_format
->
i_width
=
p_format
->
i_visible_width
=
i_width
;
p_format
->
i_height
=
p_format
->
i_visible_height
=
i_height
;
p_format
->
i_x_offset
=
p_format
->
i_y_offset
=
0
;
p_format
->
i_aspect
=
i_aspect
;
#if 0
/* Assume we have square pixels */
if( i_width && i_height )
p_format->i_aspect = i_width * VOUT_ASPECT_FACTOR / i_height;
else
p_format->i_aspect = 0;
#endif
switch
(
vlc_fourcc_GetCodec
(
VIDEO_ES
,
i_chroma
)
)
{
case
VLC_CODEC_YUVA
:
p_format
->
i_bits_per_pixel
=
32
;
break
;
case
VLC_CODEC_I444
:
case
VLC_CODEC_J444
:
p_format
->
i_bits_per_pixel
=
24
;
break
;
case
VLC_CODEC_I422
:
case
VLC_CODEC_YUYV
:
case
VLC_CODEC_YVYU
:
case
VLC_CODEC_UYVY
:
case
VLC_CODEC_VYUY
:
case
VLC_CODEC_J422
:
p_format
->
i_bits_per_pixel
=
16
;
break
;
case
VLC_CODEC_I440
:
case
VLC_CODEC_J440
:
p_format
->
i_bits_per_pixel
=
16
;
break
;
case
VLC_CODEC_I411
:
case
VLC_CODEC_YV12
:
case
VLC_CODEC_I420
:
case
VLC_CODEC_J420
:
p_format
->
i_bits_per_pixel
=
12
;
break
;
case
VLC_CODEC_I410
:
p_format
->
i_bits_per_pixel
=
9
;
break
;
case
VLC_CODEC_Y211
:
p_format
->
i_bits_per_pixel
=
8
;
break
;
case
VLC_CODEC_YUVP
:
p_format
->
i_bits_per_pixel
=
8
;
break
;
case
VLC_CODEC_RGB32
:
case
VLC_CODEC_RGBA
:
p_format
->
i_bits_per_pixel
=
32
;
break
;
case
VLC_CODEC_RGB24
:
p_format
->
i_bits_per_pixel
=
24
;
break
;
case
VLC_CODEC_RGB15
:
case
VLC_CODEC_RGB16
:
p_format
->
i_bits_per_pixel
=
16
;
break
;
case
VLC_CODEC_RGB8
:
p_format
->
i_bits_per_pixel
=
8
;
break
;
case
VLC_CODEC_GREY
:
case
VLC_CODEC_RGBP
:
p_format
->
i_bits_per_pixel
=
8
;
break
;
default:
p_format
->
i_bits_per_pixel
=
0
;
break
;
}
video_format_Setup
(
p_format
,
i_chroma
,
i_width
,
i_height
,
i_aspect
);
}
/**
...
...
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