[vlc-commits] evas: TBM: simplify source aspect handling
Thomas Guillem
git at videolan.org
Tue Dec 1 15:00:41 CET 2015
vlc | branch: master | Thomas Guillem <thomas at gllm.fr> | Tue Dec 1 14:59:00 2015 +0100| [dabd1cfb0bf00ada037ed320c07edaff28366cf1] | committer: Thomas Guillem
evas: TBM: simplify source aspect handling
Since it was not really working for 2.4.
Handle it the same way for Tizen 2.3 and 2.4.
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=dabd1cfb0bf00ada037ed320c07edaff28366cf1
---
modules/video_output/evas.c | 50 +++----------------------------------------
1 file changed, 3 insertions(+), 47 deletions(-)
diff --git a/modules/video_output/evas.c b/modules/video_output/evas.c
index f9edc29..fe9839a 100644
--- a/modules/video_output/evas.c
+++ b/modules/video_output/evas.c
@@ -160,7 +160,6 @@ struct vout_display_sys_t
struct {
tbm_format i_format;
int i_angle;
- double f_ratio;
} tbm;
#endif
} u;
@@ -169,7 +168,6 @@ struct vout_display_sys_t
int (*pf_set_data)( vout_display_t * );
int (*pf_buffers_alloc)( vout_display_t *, video_format_t * );
void (*pf_buffers_free)( vout_display_t * );
- void (*pf_update_ratio)( vout_display_t *, double );
};
struct picture_sys_t
@@ -760,8 +758,6 @@ Control( vout_display_t *vd, int i_query, va_list ap )
msg_Warn( vd, "ratio changed: invalidate pictures" );
vout_display_SendEventPicturesInvalid( vd );
}
- else if( sys->pf_update_ratio )
- sys->pf_update_ratio( vd, place.width / (double) place.height );
else
return VLC_EGENERIC;
}
@@ -1086,7 +1082,6 @@ EvasImageSetup( vout_display_t *vd )
sys->pf_set_data = EvasImageSetData;
sys->pf_buffers_alloc = EvasImageBuffersAlloc;
sys->pf_buffers_free = EvasImageBuffersFree;
- sys->pf_update_ratio = NULL;
msg_Dbg( vd, "using evas_image" );
return 0;
@@ -1172,7 +1167,7 @@ TbmSurfaceSetData( vout_display_t *vd )
surf.type = EVAS_NATIVE_SURFACE_TBM;
surf.data.tizen.buffer = sys->p_new_buffer->p_tbm_surface;
surf.data.tizen.rot = sys->u.tbm.i_angle;
- surf.data.tizen.ratio = sys->u.tbm.f_ratio;
+ surf.data.tizen.ratio = 0;
surf.data.tizen.flip = 0;
evas_object_image_native_surface_set( sys->p_evas, &surf );
@@ -1251,21 +1246,12 @@ TbmSurfaceBuffersAlloc( vout_display_t *vd, video_format_t *p_fmt )
return EcoreMainLoopCallSync( vd, TbmSurfaceBuffersAllocMainloopCb );
}
-static void
-TbmSurfaceUpdateRatio( vout_display_t *vd, double f_ratio )
-{
- vout_display_sys_t *sys = vd->sys;
-
- sys->u.tbm.f_ratio = f_ratio;
-}
-
static int
TbmSurfaceSetup( vout_display_t *vd )
{
vout_display_sys_t *sys = vd->sys;
tbm_format i_tbm_format = 0;
bool b_found = false;
- bool b_can_change_ratio = false;
uint32_t *p_formats;
uint32_t i_format_num;
@@ -1340,39 +1326,9 @@ TbmSurfaceSetup( vout_display_t *vd )
sys->b_apply_rotation = false;
- /* Ratio update from EVAS_NATIVE_SURFACE_TBM only works with the Z3 that is
- * based on evas.1.13 */
- b_can_change_ratio = evas_version->major > 1 || ( evas_version->major == 1
- && evas_version->minor >= 13 );
-
- msg_Dbg( vd, "TbmSurface: can_change_ratio: %d", b_can_change_ratio );
-
- if( !b_can_change_ratio )
- {
- FmtUpdate( vd );
-
- /* No aspect ratio support with this version of TbmSurface*/
- vd->info.has_pictures_invalid = true;
- TbmSurfaceUpdateRatio( vd, 1.0f );
- sys->pf_update_ratio = NULL;
- }
- else
- {
- /* Newer version of TbmSurfarce: ratio can be updated from
- * Evas_Native_Surface */
- vout_display_place_t place;
- video_format_t fmt;
-
- video_format_ApplyRotation( &fmt, &vd->source );
- vout_display_PlacePicture( &place, &fmt, vd->cfg, false );
-
- vd->info.has_pictures_invalid = false;
- TbmSurfaceUpdateRatio( vd, place.width / (double) place.height );
- sys->pf_update_ratio = TbmSurfaceUpdateRatio;
- }
+ FmtUpdate( vd );
- sys->i_width = vd->fmt.i_visible_width;
- sys->i_height = vd->fmt.i_visible_height;
+ vd->info.has_pictures_invalid = true;
sys->pf_set_data = TbmSurfaceSetData;
sys->pf_buffers_alloc = TbmSurfaceBuffersAlloc;
More information about the vlc-commits
mailing list