[vlc-commits] core: use vlc_tick_t for DEMUX_GET_LENGTH officially
Steve Lhomme
git at videolan.org
Thu Sep 20 10:09:16 CEST 2018
vlc | branch: master | Steve Lhomme <robux4 at ycbcr.xyz> | Sat May 5 16:16:51 2018 +0200| [a58b739d06acbc483e59bca11f69b15fb53b8b62] | committer: Steve Lhomme
core: use vlc_tick_t for DEMUX_GET_LENGTH officially
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=a58b739d06acbc483e59bca11f69b15fb53b8b62
---
include/vlc_demux.h | 2 +-
modules/access/bluray.c | 3 +--
modules/access/dcp/dcp.cpp | 6 +++---
modules/access/dvdnav.c | 2 +-
modules/access/dvdread.c | 6 ++----
modules/access/idummy.c | 3 +--
modules/access/imem.c | 3 +--
modules/access/live555.cpp | 7 +++----
modules/access/rdp.c | 3 +--
modules/access/screen/wayland.c | 2 +-
modules/access/timecode.c | 2 +-
modules/access/vnc.c | 4 +---
modules/demux/adaptive/PlaylistManager.cpp | 2 +-
modules/demux/aiff.c | 5 ++---
modules/demux/asf/asf.c | 5 ++---
modules/demux/avformat/demux.c | 7 +++----
modules/demux/avi/avi.c | 5 ++---
modules/demux/caf.c | 6 +++---
modules/demux/flac.c | 13 ++++++-------
modules/demux/gme.c | 4 +---
modules/demux/image.c | 3 +--
modules/demux/mkv/mkv.cpp | 7 +++----
modules/demux/mod.c | 6 +++---
modules/demux/mp4/heif.c | 4 ++--
modules/demux/mp4/mp4.c | 9 ++++-----
modules/demux/mpc.c | 8 ++++----
modules/demux/mpeg/es.c | 5 ++---
modules/demux/mpeg/ps.c | 9 ++++-----
modules/demux/mpeg/ts.c | 7 ++-----
modules/demux/nsv.c | 7 +++----
modules/demux/nuv.c | 9 ++++-----
modules/demux/ogg.c | 5 ++---
modules/demux/ogg.h | 2 +-
modules/demux/pva.c | 2 +-
modules/demux/smf.c | 2 +-
modules/demux/stl.c | 4 ++--
modules/demux/subtitle.c | 5 ++---
modules/demux/tta.c | 2 +-
modules/demux/ttml.c | 5 ++---
modules/demux/ty.c | 5 ++---
modules/demux/vobsub.c | 5 ++---
modules/demux/webvtt.c | 4 ++--
modules/stream_out/chromecast/chromecast_demux.cpp | 2 +-
src/input/demux.c | 5 ++---
src/input/demux_chained.c | 6 +++---
src/input/input.c | 2 +-
46 files changed, 94 insertions(+), 126 deletions(-)
diff --git a/include/vlc_demux.h b/include/vlc_demux.h
index 08e3742379..13ce0df760 100644
--- a/include/vlc_demux.h
+++ b/include/vlc_demux.h
@@ -176,7 +176,7 @@ enum demux_query_e
DEMUX_SET_POSITION, /* arg1= double arg2= bool b_precise res=can fail */
/* LENGTH/TIME in microsecond, 0 if unknown */
- DEMUX_GET_LENGTH, /* arg1= int64_t * res= */
+ DEMUX_GET_LENGTH, /* arg1= vlc_tick_t * res= */
DEMUX_GET_TIME, /* arg1= vlc_tick_t * res= */
DEMUX_SET_TIME, /* arg1= int64_t arg2= bool b_precise res=can fail */
diff --git a/modules/access/bluray.c b/modules/access/bluray.c
index 07fb464dd3..3fdebeca1c 100644
--- a/modules/access/bluray.c
+++ b/modules/access/bluray.c
@@ -1935,11 +1935,10 @@ static int blurayControl(demux_t *p_demux, int query, va_list args)
case DEMUX_GET_LENGTH:
{
- int64_t *pi_length = va_arg(args, int64_t *);
if(p_sys->cur_title < p_sys->i_title &&
(CURRENT_TITLE->i_flags & INPUT_TITLE_INTERACTIVE))
return VLC_EGENERIC;
- *pi_length = p_sys->cur_title < p_sys->i_title ? CUR_LENGTH : 0;
+ *va_arg(args, vlc_tick_t *) = p_sys->cur_title < p_sys->i_title ? CUR_LENGTH : 0;
return VLC_SUCCESS;
}
case DEMUX_SET_TIME:
diff --git a/modules/access/dcp/dcp.cpp b/modules/access/dcp/dcp.cpp
index ddb2be8c00..110a4dda73 100644
--- a/modules/access/dcp/dcp.cpp
+++ b/modules/access/dcp/dcp.cpp
@@ -777,7 +777,7 @@ static int Control( demux_t *p_demux, int query, va_list args )
{
double f,*pf;
bool *pb;
- int64_t *pi64, i64;
+ int64_t i64;
demux_sys_t *p_sys = (demux_sys_t *)p_demux->p_sys;
switch ( query )
@@ -815,8 +815,8 @@ static int Control( demux_t *p_demux, int query, va_list args )
break;
case DEMUX_GET_LENGTH:
- pi64 = va_arg ( args, int64_t * );
- *pi64 = ( p_sys->frames_total * p_sys->frame_rate_denom / p_sys->frame_rate_num ) * CLOCK_FREQ;
+ *va_arg ( args, vlc_tick_t * ) =
+ vlc_tick_from_sec( p_sys->frames_total * p_sys->frame_rate_denom / p_sys->frame_rate_num );
break;
case DEMUX_GET_TIME:
diff --git a/modules/access/dvdnav.c b/modules/access/dvdnav.c
index 505e92962b..7092539624 100644
--- a/modules/access/dvdnav.c
+++ b/modules/access/dvdnav.c
@@ -569,7 +569,7 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
case DEMUX_GET_LENGTH:
if( p_sys->i_pgc_length > 0 )
{
- *va_arg( args, int64_t * ) = (int64_t)p_sys->i_pgc_length;
+ *va_arg( args, vlc_tick_t * ) = p_sys->i_pgc_length;
return VLC_SUCCESS;
}
break;
diff --git a/modules/access/dvdread.c b/modules/access/dvdread.c
index 74fb63682a..8d89360e59 100644
--- a/modules/access/dvdread.c
+++ b/modules/access/dvdread.c
@@ -319,7 +319,6 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
demux_sys_t *p_sys = p_demux->p_sys;
double f, *pf;
bool *pb;
- int64_t *pi64;
input_title_t ***ppp_title;
int *pi_int;
int i;
@@ -356,13 +355,12 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
return VLC_EGENERIC;
case DEMUX_GET_LENGTH:
- pi64 = va_arg( args, int64_t * );
if( p_sys->cur_title >= 0 && p_sys->cur_title < p_sys->i_titles )
{
- *pi64 = (int64_t)dvdtime_to_time( &p_sys->p_cur_pgc->playback_time );
+ *va_arg( args, vlc_tick_t * ) = dvdtime_to_time( &p_sys->p_cur_pgc->playback_time );
return VLC_SUCCESS;
}
- *pi64 = 0;
+ *va_arg( args, vlc_tick_t * ) = 0;
return VLC_EGENERIC;
/* Special for access_demux */
diff --git a/modules/access/idummy.c b/modules/access/idummy.c
index f4c37b73f9..f9c5248746 100644
--- a/modules/access/idummy.c
+++ b/modules/access/idummy.c
@@ -106,8 +106,7 @@ static int ControlPause( demux_t *demux, int query, va_list args )
case DEMUX_GET_LENGTH:
{
- vlc_tick_t *plen = va_arg( args, vlc_tick_t * );
- *plen = p_sys->length;
+ *va_arg( args, vlc_tick_t * ) = p_sys->length;
break;
}
diff --git a/modules/access/imem.c b/modules/access/imem.c
index 45b54feab1..e4b27db2f0 100644
--- a/modules/access/imem.c
+++ b/modules/access/imem.c
@@ -541,8 +541,7 @@ static int ControlDemux(demux_t *demux, int i_query, va_list args)
return VLC_SUCCESS;
}
case DEMUX_GET_LENGTH: {
- int64_t *l = va_arg(args, int64_t *);
- *l = 0;
+ *va_arg(args, vlc_tick_t *) = 0;
return VLC_SUCCESS;
}
case DEMUX_SET_NEXT_DEMUX_TIME:
diff --git a/modules/access/live555.cpp b/modules/access/live555.cpp
index 45f7a8c25e..606bdc46b2 100644
--- a/modules/access/live555.cpp
+++ b/modules/access/live555.cpp
@@ -1518,7 +1518,7 @@ static int Demux( demux_t *p_demux )
static int Control( demux_t *p_demux, int i_query, va_list args )
{
demux_sys_t *p_sys = (demux_sys_t *)p_demux->p_sys;
- int64_t *pi64, i64;
+ int64_t i64;
double *pf, f;
bool *pb;
@@ -1535,13 +1535,12 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
return VLC_EGENERIC;
case DEMUX_GET_LENGTH:
- pi64 = va_arg( args, int64_t * );
if( p_sys->f_npt_length > 0 )
{
if( unlikely(p_sys->f_npt_length >= (double)(INT64_MAX / CLOCK_FREQ)) )
- *pi64 = INT64_MAX;
+ *va_arg( args, vlc_tick_t * ) = INT64_MAX;
else
- *pi64 = vlc_tick_from_sec(p_sys->f_npt_length);
+ *va_arg( args, vlc_tick_t * ) = vlc_tick_from_sec(p_sys->f_npt_length);
return VLC_SUCCESS;
}
return VLC_EGENERIC;
diff --git a/modules/access/rdp.c b/modules/access/rdp.c
index afbdd80a66..d5a1049e3e 100644
--- a/modules/access/rdp.c
+++ b/modules/access/rdp.c
@@ -311,8 +311,7 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
return VLC_SUCCESS;
case DEMUX_GET_LENGTH:
- pi64 = va_arg( args, int64_t * );
- *pi64 = 0;
+ *va_arg( args, vlc_tick_t * ) = 0;
return VLC_SUCCESS;
case DEMUX_GET_FPS:
diff --git a/modules/access/screen/wayland.c b/modules/access/screen/wayland.c
index bf81fb76a1..07dc2c264d 100644
--- a/modules/access/screen/wayland.c
+++ b/modules/access/screen/wayland.c
@@ -285,7 +285,7 @@ static int Control(demux_t *demux, int query, va_list args)
break;
case DEMUX_GET_LENGTH:
- *va_arg(args, int64_t *) = 0;
+ *va_arg(args, vlc_tick_t *) = 0;
break;
case DEMUX_GET_TIME:
diff --git a/modules/access/timecode.c b/modules/access/timecode.c
index d82f116998..dbe6535e37 100644
--- a/modules/access/timecode.c
+++ b/modules/access/timecode.c
@@ -121,7 +121,7 @@ static int Control (demux_t *demux, int query, va_list args)
break;
case DEMUX_GET_LENGTH:
- *va_arg (args, int64_t *) = INT64_C(0);
+ *va_arg (args, vlc_tick_t *) = INT64_C(0);
break;
case DEMUX_GET_TIME:
diff --git a/modules/access/vnc.c b/modules/access/vnc.c
index 4f7fbf857a..42dfcc2323 100644
--- a/modules/access/vnc.c
+++ b/modules/access/vnc.c
@@ -278,7 +278,6 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
{
demux_sys_t *p_sys = p_demux->p_sys;
bool *pb;
- int64_t *pi64;
double *p_dbl;
vlc_meta_t *p_meta;
@@ -308,8 +307,7 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
return VLC_SUCCESS;
case DEMUX_GET_LENGTH:
- pi64 = va_arg( args, int64_t * );
- *pi64 = 0;
+ *va_arg( args, vlc_tick_t * ) = 0;
return VLC_SUCCESS;
case DEMUX_GET_FPS:
diff --git a/modules/demux/adaptive/PlaylistManager.cpp b/modules/demux/adaptive/PlaylistManager.cpp
index 491427f17d..74ffda70c6 100644
--- a/modules/demux/adaptive/PlaylistManager.cpp
+++ b/modules/demux/adaptive/PlaylistManager.cpp
@@ -537,7 +537,7 @@ int PlaylistManager::doControl(int i_query, va_list args)
vlc_mutex_locker locker(&cached.lock);
if(cached.b_live)
return VLC_EGENERIC;
- *(va_arg (args, int64_t *)) = cached.i_length;
+ *(va_arg (args, vlc_tick_t *)) = cached.i_length;
break;
}
diff --git a/modules/demux/aiff.c b/modules/demux/aiff.c
index b8ed3d1119..193c3434ec 100644
--- a/modules/demux/aiff.c
+++ b/modules/demux/aiff.c
@@ -268,7 +268,6 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
{
demux_sys_t *p_sys = p_demux->p_sys;
double f, *pf;
- int64_t *pi64;
switch( i_query )
{
@@ -321,10 +320,10 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
{
int64_t i_end = p_sys->i_ssnd_end > 0 ? p_sys->i_ssnd_end : stream_Size( p_demux->s );
- pi64 = va_arg( args, int64_t * );
if( p_sys->i_ssnd_start < i_end )
{
- *pi64 = CLOCK_FREQ * ( i_end - p_sys->i_ssnd_start ) / p_sys->i_ssnd_fsize / p_sys->fmt.audio.i_rate;
+ *va_arg( args, vlc_tick_t * ) =
+ CLOCK_FREQ * ( i_end - p_sys->i_ssnd_start ) / p_sys->i_ssnd_fsize / p_sys->fmt.audio.i_rate;
return VLC_SUCCESS;
}
return VLC_EGENERIC;
diff --git a/modules/demux/asf/asf.c b/modules/demux/asf/asf.c
index 0532fea76e..24bcc0339e 100644
--- a/modules/demux/asf/asf.c
+++ b/modules/demux/asf/asf.c
@@ -413,15 +413,14 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
{
demux_sys_t *p_sys = p_demux->p_sys;
vlc_meta_t *p_meta;
- int64_t i64, *pi64;
+ int64_t i64;
int i;
double f, *pf;
switch( i_query )
{
case DEMUX_GET_LENGTH:
- pi64 = va_arg( args, int64_t * );
- *pi64 = p_sys->i_length;
+ *va_arg( args, vlc_tick_t * ) = p_sys->i_length;
return VLC_SUCCESS;
case DEMUX_GET_TIME:
diff --git a/modules/demux/avformat/demux.c b/modules/demux/avformat/demux.c
index b92079e720..cbedd7f109 100644
--- a/modules/demux/avformat/demux.c
+++ b/modules/demux/avformat/demux.c
@@ -1001,7 +1001,7 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
demux_sys_t *p_sys = p_demux->p_sys;
const int64_t i_start_time = p_sys->ic->start_time != AV_NOPTS_VALUE ? p_sys->ic->start_time : 0;
double f, *pf;
- int64_t i64, *pi64;
+ int64_t i64;
switch( i_query )
{
@@ -1058,11 +1058,10 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
}
case DEMUX_GET_LENGTH:
- pi64 = va_arg( args, int64_t * );
if( p_sys->ic->duration != (int64_t)AV_NOPTS_VALUE )
- *pi64 = FROM_AV_TS(p_sys->ic->duration);
+ *va_arg( args, vlc_tick_t * ) = FROM_AV_TS(p_sys->ic->duration);
else
- *pi64 = 0;
+ *va_arg( args, vlc_tick_t * ) = 0;
return VLC_SUCCESS;
case DEMUX_GET_TIME:
diff --git a/modules/demux/avi/avi.c b/modules/demux/avi/avi.c
index bf39154167..fec84cee6c 100644
--- a/modules/demux/avi/avi.c
+++ b/modules/demux/avi/avi.c
@@ -1590,7 +1590,7 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
{
demux_sys_t *p_sys = p_demux->p_sys;
double f, *pf;
- int64_t i64, *pi64;
+ vlc_tick_t i64;
bool b;
vlc_meta_t *p_meta;
@@ -1643,8 +1643,7 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
return Seek( p_demux, i64, f, b );
}
case DEMUX_GET_LENGTH:
- pi64 = va_arg( args, int64_t * );
- *pi64 = p_sys->i_length * (vlc_tick_t)CLOCK_FREQ;
+ *va_arg( args, vlc_tick_t * ) = vlc_tick_from_sec(p_sys->i_length);
return VLC_SUCCESS;
case DEMUX_GET_FPS:
diff --git a/modules/demux/caf.c b/modules/demux/caf.c
index dda7f83142..44df146d04 100644
--- a/modules/demux/caf.c
+++ b/modules/demux/caf.c
@@ -1002,7 +1002,7 @@ static int Demux( demux_t *p_demux )
*****************************************************************************/
static int Control( demux_t *p_demux, int i_query, va_list args )
{
- int64_t i64, *pi64, i_sample;
+ int64_t i64, i_sample;
double f, *pf;
frame_span_t position;
@@ -1016,8 +1016,8 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
return VLC_SUCCESS;
case DEMUX_GET_LENGTH:
- pi64 = va_arg( args, int64_t * );
- *pi64 = CLOCK_FREQ * ( i_num_samples / p_sys->fmt.audio.i_rate );
+ *va_arg( args, vlc_tick_t * ) =
+ CLOCK_FREQ * ( i_num_samples / p_sys->fmt.audio.i_rate );
return VLC_SUCCESS;
case DEMUX_GET_TIME:
diff --git a/modules/demux/flac.c b/modules/demux/flac.c
index 1184bd6fab..0ed521db2a 100644
--- a/modules/demux/flac.c
+++ b/modules/demux/flac.c
@@ -86,7 +86,7 @@ typedef struct
struct flac_stream_info stream_info;
bool b_stream_info;
- int64_t i_length; /* Length from stream info */
+ vlc_tick_t i_length; /* Length from stream info */
uint64_t i_data_pos;
/* */
@@ -408,11 +408,11 @@ static int Demux( demux_t *p_demux )
/*****************************************************************************
* Control:
*****************************************************************************/
-static int64_t ControlGetLength( demux_t *p_demux )
+static vlc_tick_t ControlGetLength( demux_t *p_demux )
{
demux_sys_t *p_sys = p_demux->p_sys;
const uint64_t i_size = stream_Size(p_demux->s) - p_sys->i_data_pos;
- int64_t i_length = p_sys->i_length;
+ vlc_tick_t i_length = p_sys->i_length;
int i;
/* Try to fix length using seekpoint and current size for truncated file */
@@ -521,8 +521,7 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
}
else if( i_query == DEMUX_GET_LENGTH )
{
- int64_t *pi64 = va_arg( args, int64_t * );
- *pi64 = ControlGetLength( p_demux );
+ *va_arg( args, vlc_tick_t * ) = ControlGetLength( p_demux );
return VLC_SUCCESS;
}
else if( i_query == DEMUX_SET_TIME )
@@ -533,7 +532,7 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
else if( i_query == DEMUX_SET_POSITION )
{
const double f = va_arg( args, double );
- int64_t i_length = ControlGetLength( p_demux );
+ vlc_tick_t i_length = ControlGetLength( p_demux );
int i_ret;
if( i_length > 0 )
{
@@ -557,7 +556,7 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
}
else if( i_query == DEMUX_GET_POSITION )
{
- const int64_t i_length = ControlGetLength(p_demux);
+ const vlc_tick_t i_length = ControlGetLength(p_demux);
if( i_length > 0 )
{
vlc_tick_t current = ControlGetTime(p_demux);
diff --git a/modules/demux/gme.c b/modules/demux/gme.c
index abc432f1e2..efff60ac0c 100644
--- a/modules/demux/gme.c
+++ b/modules/demux/gme.c
@@ -280,12 +280,10 @@ static int Control (demux_t *demux, int query, va_list args)
case DEMUX_GET_LENGTH:
{
- int64_t *v = va_arg (args, int64_t *);
-
if (unlikely(sys->track_id >= sys->titlec)
|| (sys->titlev[sys->track_id]->i_length == 0))
break;
- *v = sys->titlev[sys->track_id]->i_length;
+ *va_arg (args, vlc_tick_t *) = sys->titlev[sys->track_id]->i_length;
return VLC_SUCCESS;
}
diff --git a/modules/demux/image.c b/modules/demux/image.c
index 6949cb803f..536ce681d9 100644
--- a/modules/demux/image.c
+++ b/modules/demux/image.c
@@ -273,8 +273,7 @@ static int Control(demux_t *demux, int query, va_list args)
return VLC_SUCCESS;
}
case DEMUX_GET_LENGTH: {
- int64_t *length = va_arg(args, int64_t *);
- *length = __MAX(sys->duration, 0);
+ *va_arg(args, vlc_tick_t *) = __MAX(sys->duration, 0);
return VLC_SUCCESS;
}
case DEMUX_GET_FPS: {
diff --git a/modules/demux/mkv/mkv.cpp b/modules/demux/mkv/mkv.cpp
index c97a490fc1..f6a2112afb 100644
--- a/modules/demux/mkv/mkv.cpp
+++ b/modules/demux/mkv/mkv.cpp
@@ -284,7 +284,7 @@ static void Close( vlc_object_t *p_this )
static int Control( demux_t *p_demux, int i_query, va_list args )
{
demux_sys_t *p_sys = (demux_sys_t *)p_demux->p_sys;
- int64_t *pi64, i64;
+ int64_t i64;
double *pf, f;
int i_skp;
size_t i_idx;
@@ -330,11 +330,10 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
return VLC_SUCCESS;
case DEMUX_GET_LENGTH:
- pi64 = va_arg( args, int64_t * );
if( p_sys->i_duration > 0 )
- *pi64 = static_cast<int64_t>( p_sys->i_duration );
+ *va_arg( args, vlc_tick_t * ) = p_sys->i_duration;
else
- *pi64 = VLC_TICK_INVALID;
+ *va_arg( args, vlc_tick_t * ) = VLC_TICK_INVALID;
return VLC_SUCCESS;
case DEMUX_GET_POSITION:
diff --git a/modules/demux/mod.c b/modules/demux/mod.c
index c64cab14e4..40dbcaa00f 100644
--- a/modules/demux/mod.c
+++ b/modules/demux/mod.c
@@ -292,7 +292,8 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
{
demux_sys_t *p_sys = p_demux->p_sys;
double f, *pf;
- int64_t i64, *pi64;
+ int64_t i64;
+ vlc_tick_t *pi64;
switch( i_query )
{
@@ -329,8 +330,7 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
return VLC_SUCCESS;
case DEMUX_GET_LENGTH:
- pi64 = va_arg( args, int64_t * );
- *pi64 = p_sys->i_length;
+ *va_arg( args, vlc_tick_t * ) = p_sys->i_length;
return VLC_SUCCESS;
case DEMUX_SET_TIME:
diff --git a/modules/demux/mp4/heif.c b/modules/demux/mp4/heif.c
index c3794d043e..e2ea427608 100644
--- a/modules/demux/mp4/heif.c
+++ b/modules/demux/mp4/heif.c
@@ -177,8 +177,8 @@ static int ControlHEIF( demux_t *p_demux, int i_query, va_list args )
return VLC_SUCCESS;
}
case DEMUX_GET_LENGTH:
- *(va_arg( args, int64_t * )) = p_sys->p_title->i_seekpoint *
- p_sys->i_image_duration;
+ *(va_arg( args, vlc_tick_t * )) = p_sys->p_title->i_seekpoint *
+ p_sys->i_image_duration;
return VLC_SUCCESS;
case DEMUX_GET_TIME:
*(va_arg(args, vlc_tick_t *)) = p_sys->i_pcr;
diff --git a/modules/demux/mp4/mp4.c b/modules/demux/mp4/mp4.c
index 109cf34dab..3b89e64faf 100644
--- a/modules/demux/mp4/mp4.c
+++ b/modules/demux/mp4/mp4.c
@@ -1946,7 +1946,7 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
demux_sys_t *p_sys = p_demux->p_sys;
double f, *pf;
- int64_t i64, *pi64;
+ int64_t i64;
bool b;
const uint64_t i_duration = __MAX(p_sys->i_duration, p_sys->i_cumulated_duration);
@@ -2000,13 +2000,12 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
return Seek( p_demux, i64, b );
case DEMUX_GET_LENGTH:
- pi64 = va_arg( args, int64_t * );
if( p_sys->i_timescale > 0 )
{
- *pi64 = MP4_rescale_mtime( i_duration,
- p_sys->i_timescale );
+ *va_arg( args, vlc_tick_t * ) = MP4_rescale_mtime( i_duration,
+ p_sys->i_timescale );
}
- else *pi64 = 0;
+ else *va_arg( args, vlc_tick_t * ) = 0;
return VLC_SUCCESS;
case DEMUX_GET_FPS:
diff --git a/modules/demux/mpc.c b/modules/demux/mpc.c
index e3ea8726bb..3148710ad7 100644
--- a/modules/demux/mpc.c
+++ b/modules/demux/mpc.c
@@ -260,7 +260,8 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
{
demux_sys_t *p_sys = p_demux->p_sys;
double f, *pf;
- int64_t i64, *pi64;
+ int64_t i64;
+ vlc_tick_t *pi64;
bool *pb_bool;
switch( i_query )
@@ -274,9 +275,8 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
return VLC_SUCCESS;
case DEMUX_GET_LENGTH:
- pi64 = va_arg( args, int64_t * );
- *pi64 = CLOCK_FREQ * p_sys->info.pcm_samples /
- p_sys->info.sample_freq;
+ *va_arg( args, vlc_tick_t * ) =
+ CLOCK_FREQ * p_sys->info.pcm_samples / p_sys->info.sample_freq;
return VLC_SUCCESS;
case DEMUX_GET_POSITION:
diff --git a/modules/demux/mpeg/es.c b/modules/demux/mpeg/es.c
index 02a284f469..e82a716cbb 100644
--- a/modules/demux/mpeg/es.c
+++ b/modules/demux/mpeg/es.c
@@ -389,7 +389,6 @@ static void Close( vlc_object_t * p_this )
static int Control( demux_t *p_demux, int i_query, va_list args )
{
demux_sys_t *p_sys = p_demux->p_sys;
- int64_t *pi64;
bool *pb_bool;
switch( i_query )
@@ -427,8 +426,8 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
return VLC_EGENERIC;
}
- pi64 = va_arg( args, int64_t * );
- *pi64 = (p_sys->i_pts + p_sys->i_time_offset) / f_pos;
+ *va_arg( args, vlc_tick_t * ) =
+ (p_sys->i_pts + p_sys->i_time_offset) / f_pos;
return VLC_SUCCESS;
}
return i_ret;
diff --git a/modules/demux/mpeg/ps.c b/modules/demux/mpeg/ps.c
index e5b998a911..d3045423f3 100644
--- a/modules/demux/mpeg/ps.c
+++ b/modules/demux/mpeg/ps.c
@@ -673,7 +673,7 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
{
demux_sys_t *p_sys = p_demux->p_sys;
double f, *pf;
- int64_t i64, *pi64;
+ int64_t i64;
int i_ret;
switch( i_query )
@@ -749,19 +749,18 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
break;
case DEMUX_GET_LENGTH:
- pi64 = va_arg( args, int64_t * );
if( p_sys->i_length > VLC_TICK_0 )
{
- *pi64 = p_sys->i_length;
+ *va_arg( args, vlc_tick_t * ) = p_sys->i_length;
return VLC_SUCCESS;
}
else if( p_sys->i_mux_rate > 0 )
{
- *pi64 = CLOCK_FREQ * ( stream_Size( p_demux->s ) - p_sys->i_start_byte / 50 ) /
+ *va_arg( args, vlc_tick_t * ) = CLOCK_FREQ * ( stream_Size( p_demux->s ) - p_sys->i_start_byte / 50 ) /
p_sys->i_mux_rate;
return VLC_SUCCESS;
}
- *pi64 = 0;
+ *va_arg( args, vlc_tick_t * ) = 0;
break;
case DEMUX_SET_TIME:
diff --git a/modules/demux/mpeg/ts.c b/modules/demux/mpeg/ts.c
index 54f9a594b4..fa733292da 100644
--- a/modules/demux/mpeg/ts.c
+++ b/modules/demux/mpeg/ts.c
@@ -885,7 +885,6 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
double f, *pf;
bool b_bool, *pb_bool;
int64_t i64;
- int64_t *pi64;
int i_int;
const ts_pmt_t *p_pmt = NULL;
const ts_pat_t *p_pat = GetPID(p_sys, 0)->u.p_pat;
@@ -1030,14 +1029,12 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
break;
case DEMUX_GET_LENGTH:
- pi64 = va_arg( args, int64_t * );
-
if( p_sys->b_access_control )
{
time_t i_event_duration;
if( !EITCurrentEventTime( p_pmt, p_sys, NULL, &i_event_duration ) )
{
- *pi64 = vlc_tick_from_sec( i_event_duration );
+ *va_arg( args, vlc_tick_t * ) = vlc_tick_from_sec( i_event_duration );
return VLC_SUCCESS;
}
}
@@ -1051,7 +1048,7 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
p_pmt->pcr.i_first_dts;
stime_t i_last = TimeStampWrapAround( p_pmt->pcr.i_first, p_pmt->i_last_dts );
i_last += p_pmt->pcr.i_pcroffset;
- *pi64 = FROM_SCALE(i_last - i_start);
+ *va_arg( args, vlc_tick_t * ) = FROM_SCALE(i_last - i_start);
return VLC_SUCCESS;
}
break;
diff --git a/modules/demux/nsv.c b/modules/demux/nsv.c
index 0bb88d6837..e08f82256d 100644
--- a/modules/demux/nsv.c
+++ b/modules/demux/nsv.c
@@ -348,7 +348,7 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
demux_sys_t *p_sys = p_demux->p_sys;
double f, *pf;
bool b_bool, *pb_bool;
- int64_t i64, *pi64;
+ int64_t i64;
switch( i_query )
{
@@ -390,13 +390,12 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
#if 0
case DEMUX_GET_LENGTH:
- pi64 = va_arg( args, int64_t * );
if( p_sys->i_mux_rate > 0 )
{
- *pi64 = CLOCK_FREQ * ( stream_Size( p_demux->s ) / 50 ) / p_sys->i_mux_rate;
+ *va_arg( args, vlc_tick_t * ) = CLOCK_FREQ * ( stream_Size( p_demux->s ) / 50 ) / p_sys->i_mux_rate;
return VLC_SUCCESS;
}
- *pi64 = 0;
+ *va_arg( args, vlc_tick_t * ) = 0;
return VLC_EGENERIC;
#endif
diff --git a/modules/demux/nuv.c b/modules/demux/nuv.c
index 47956bdf91..4e76c229ee 100644
--- a/modules/demux/nuv.c
+++ b/modules/demux/nuv.c
@@ -449,7 +449,7 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
demux_sys_t *p_sys = p_demux->p_sys;
double f, *pf;
- int64_t i64, *pi64;
+ int64_t i64;
switch( i_query )
{
@@ -521,19 +521,18 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
}
case DEMUX_GET_LENGTH:
- pi64 = va_arg( args, int64_t * );
if( p_sys->i_total_length >= 0 )
{
- *pi64 = p_sys->i_total_length;
+ *va_arg( args, vlc_tick_t * ) = p_sys->i_total_length;
return VLC_SUCCESS;
}
else if( vlc_stream_Tell( p_demux->s ) > p_sys->i_first_frame_offset )
{
/* This should give an approximation of the total duration */
if (p_sys->i_pcr <= 0)
- *pi64 = 0;
+ *va_arg( args, vlc_tick_t * ) = 0;
else
- *pi64 = p_sys->i_pcr *
+ *va_arg( args, vlc_tick_t * ) = p_sys->i_pcr *
(double)( stream_Size( p_demux->s ) - p_sys->i_first_frame_offset ) /
(double)( vlc_stream_Tell( p_demux->s ) - p_sys->i_first_frame_offset );
diff --git a/modules/demux/ogg.c b/modules/demux/ogg.c
index 01a80fd9d1..62db4aaa4c 100644
--- a/modules/demux/ogg.c
+++ b/modules/demux/ogg.c
@@ -671,7 +671,7 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
{
demux_sys_t *p_sys = p_demux->p_sys;
vlc_meta_t *p_meta;
- int64_t *pi64, i64;
+ int64_t i64;
double *pf, f;
bool *pb_bool, b, acc;
@@ -801,8 +801,7 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
if ( p_sys->i_length < 0 )
return demux_vaControlHelper( p_demux->s, 0, -1, p_sys->i_bitrate,
1, i_query, args );
- pi64 = va_arg( args, int64_t * );
- *pi64 = p_sys->i_length * 1000000;
+ *va_arg( args, vlc_tick_t * ) = vlc_tick_from_sec(p_sys->i_length);
return VLC_SUCCESS;
case DEMUX_GET_TITLE_INFO:
diff --git a/modules/demux/ogg.h b/modules/demux/ogg.h
index b9c95c3afe..e8010cc51d 100644
--- a/modules/demux/ogg.h
+++ b/modules/demux/ogg.h
@@ -218,7 +218,7 @@ typedef struct
bool b_preparsing_done;
bool b_es_created;
- /* Length, if available. */
+ /* Length in second, if available. */
int64_t i_length;
bool b_slave;
diff --git a/modules/demux/pva.c b/modules/demux/pva.c
index aabcd7ae34..56be650d58 100644
--- a/modules/demux/pva.c
+++ b/modules/demux/pva.c
@@ -332,7 +332,7 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
#if 0
case DEMUX_GET_LENGTH:
- pi64 = va_arg( args, int64_t * );
+ pi64 = va_arg( args, vlc_tick_t * );
if( p_sys->i_mux_rate > 0 )
{
*pi64 = CLOCK_FREQ * ( stream_Size( p_demux->s ) / 50 ) / p_sys->i_mux_rate;
diff --git a/modules/demux/smf.c b/modules/demux/smf.c
index b6e70d60c4..d60f2f0ec4 100644
--- a/modules/demux/smf.c
+++ b/modules/demux/smf.c
@@ -517,7 +517,7 @@ static int Control (demux_t *demux, int i_query, va_list args)
case DEMUX_SET_POSITION:
return Seek (demux, va_arg (args, double) * sys->duration);
case DEMUX_GET_LENGTH:
- *va_arg (args, int64_t *) = sys->duration;
+ *va_arg (args, vlc_tick_t *) = sys->duration;
break;
case DEMUX_GET_TIME:
*va_arg (args, vlc_tick_t *) = sys->tick - VLC_TICK_0;
diff --git a/modules/demux/stl.c b/modules/demux/stl.c
index 406be31e2d..cf5210234e 100644
--- a/modules/demux/stl.c
+++ b/modules/demux/stl.c
@@ -102,8 +102,8 @@ static int Control(demux_t *demux, int query, va_list args)
case DEMUX_CAN_SEEK:
return vlc_stream_vaControl(demux->s, query, args);
case DEMUX_GET_LENGTH: {
- int64_t *l = va_arg(args, int64_t *);
- *l = sys->count > 0 ? sys->index[sys->count-1].stop : 0;
+ *va_arg(args, vlc_tick_t *) =
+ sys->count > 0 ? sys->index[sys->count-1].stop : 0;
return VLC_SUCCESS;
}
case DEMUX_GET_TIME: {
diff --git a/modules/demux/subtitle.c b/modules/demux/subtitle.c
index c97403c2bb..2e6d767b73 100644
--- a/modules/demux/subtitle.c
+++ b/modules/demux/subtitle.c
@@ -752,7 +752,7 @@ static void Close( vlc_object_t *p_this )
static int Control( demux_t *p_demux, int i_query, va_list args )
{
demux_sys_t *p_sys = p_demux->p_sys;
- int64_t *pi64, i64;
+ int64_t i64;
double *pf, f;
switch( i_query )
@@ -762,8 +762,7 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
return VLC_SUCCESS;
case DEMUX_GET_LENGTH:
- pi64 = va_arg( args, int64_t * );
- *pi64 = p_sys->i_length;
+ *va_arg( args, vlc_tick_t * ) = p_sys->i_length;
return VLC_SUCCESS;
case DEMUX_GET_TIME:
diff --git a/modules/demux/tta.c b/modules/demux/tta.c
index 1aec0921db..70d5d7f12a 100644
--- a/modules/demux/tta.c
+++ b/modules/demux/tta.c
@@ -226,7 +226,7 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
{
demux_sys_t *p_sys = p_demux->p_sys;
double f, *pf;
- int64_t i64, *pi64;
+ int64_t i64;
switch( i_query )
{
diff --git a/modules/demux/ttml.c b/modules/demux/ttml.c
index 9aa69bef44..4fd7d92c91 100644
--- a/modules/demux/ttml.c
+++ b/modules/demux/ttml.c
@@ -207,7 +207,7 @@ static void tt_node_ToText( struct vlc_memstream *p_stream, const tt_basenode_t
static int Control( demux_t* p_demux, int i_query, va_list args )
{
demux_sys_t *p_sys = p_demux->p_sys;
- int64_t *pi64, i64;
+ int64_t i64;
double *pf, f;
bool b;
@@ -236,12 +236,11 @@ static int Control( demux_t* p_demux, int i_query, va_list args )
p_sys->b_slave = true;
return VLC_SUCCESS;
case DEMUX_GET_LENGTH:
- pi64 = va_arg( args, int64_t * );
if( p_sys->times.i_count )
{
tt_time_t t = tt_time_Sub( p_sys->times.p_array[p_sys->times.i_count - 1],
p_sys->temporal_extent.begin );
- *pi64 = tt_time_Convert( &t );
+ *va_arg( args, vlc_tick_t * ) = tt_time_Convert( &t );
return VLC_SUCCESS;
}
break;
diff --git a/modules/demux/ty.c b/modules/demux/ty.c
index 75c3417b08..fb83ef451e 100644
--- a/modules/demux/ty.c
+++ b/modules/demux/ty.c
@@ -491,7 +491,7 @@ static int Control(demux_t *p_demux, int i_query, va_list args)
{
demux_sys_t *p_sys = p_demux->p_sys;
double f, *pf;
- int64_t i64, *p_i64;
+ int64_t i64;
/*msg_Info(p_demux, "control cmd %d", i_query);*/
switch( i_query )
@@ -526,8 +526,7 @@ static int Control(demux_t *p_demux, int i_query, va_list args)
return VLC_SUCCESS;
case DEMUX_GET_LENGTH: /* length of program in microseconds, 0 if unk */
/* size / bitrate */
- p_i64 = va_arg(args, int64_t *);
- *p_i64 = 0;
+ *va_arg(args, vlc_tick_t *) = 0;
return VLC_SUCCESS;
case DEMUX_SET_TIME: /* arg is time in microsecs */
i64 = va_arg( args, int64_t );
diff --git a/modules/demux/vobsub.c b/modules/demux/vobsub.c
index cedb81dd9c..b1f939216e 100644
--- a/modules/demux/vobsub.c
+++ b/modules/demux/vobsub.c
@@ -238,7 +238,7 @@ static void Close( vlc_object_t *p_this )
static int Control( demux_t *p_demux, int i_query, va_list args )
{
demux_sys_t *p_sys = p_demux->p_sys;
- int64_t *pi64, i64;
+ int64_t i64;
int i;
double *pf, f;
@@ -249,8 +249,7 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
return VLC_SUCCESS;
case DEMUX_GET_LENGTH:
- pi64 = va_arg( args, int64_t * );
- *pi64 = (int64_t) p_sys->i_length;
+ *va_arg( args, vlc_tick_t * ) = p_sys->i_length;
return VLC_SUCCESS;
case DEMUX_GET_TIME:
diff --git a/modules/demux/webvtt.c b/modules/demux/webvtt.c
index d446ef12cc..06f29c6dc2 100644
--- a/modules/demux/webvtt.c
+++ b/modules/demux/webvtt.c
@@ -421,7 +421,7 @@ static void MakeExtradata( demux_sys_t *p_sys, void **p_extra, size_t *pi_extra
static int Control( demux_t *p_demux, int i_query, va_list args )
{
demux_sys_t *p_sys = p_demux->p_sys;
- int64_t *pi64, i64;
+ int64_t i64;
double *pf, f;
switch( i_query )
@@ -431,7 +431,7 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
return VLC_SUCCESS;
case DEMUX_GET_LENGTH:
- *(va_arg( args, int64_t * )) = p_sys->i_length;
+ *(va_arg( args, vlc_tick_t * )) = p_sys->i_length;
return VLC_SUCCESS;
case DEMUX_GET_TIME:
diff --git a/modules/stream_out/chromecast/chromecast_demux.cpp b/modules/stream_out/chromecast/chromecast_demux.cpp
index b4b5e8c4a6..b82fd74d92 100644
--- a/modules/stream_out/chromecast/chromecast_demux.cpp
+++ b/modules/stream_out/chromecast/chromecast_demux.cpp
@@ -333,7 +333,7 @@ struct demux_cc
va_copy( ap, args );
ret = demux_vaControl( p_demux_filter->p_next, i_query, args );
if( ret == VLC_SUCCESS )
- m_length = *va_arg( ap, int64_t * );
+ m_length = *va_arg( ap, vlc_tick_t * );
va_end( ap );
return ret;
}
diff --git a/src/input/demux.c b/src/input/demux.c
index e3cb7c6e99..b715e28a1e 100644
--- a/src/input/demux.c
+++ b/src/input/demux.c
@@ -275,7 +275,7 @@ int demux_vaControlHelper( stream_t *s,
{
int64_t i_tell;
double f, *pf;
- int64_t i64, *pi64;
+ int64_t i64;
if( i_end < 0 ) i_end = stream_Size( s );
if( i_start < 0 ) i_start = 0;
@@ -310,10 +310,9 @@ int demux_vaControlHelper( stream_t *s,
return vlc_stream_vaControl( s, i_query, args );
case DEMUX_GET_LENGTH:
- pi64 = (int64_t*)va_arg( args, int64_t * );
if( i_bitrate > 0 && i_end > i_start )
{
- *pi64 = INT64_C(8000000) * (i_end - i_start) / i_bitrate;
+ *va_arg( args, vlc_tick_t * ) = INT64_C(8000000) * (i_end - i_start) / i_bitrate;
return VLC_SUCCESS;
}
return VLC_EGENERIC;
diff --git a/src/input/demux_chained.c b/src/input/demux_chained.c
index 5fe1d56afa..30fb6fd935 100644
--- a/src/input/demux_chained.c
+++ b/src/input/demux_chained.c
@@ -42,7 +42,7 @@ struct vlc_demux_chained_t
struct
{
double position;
- int64_t length;
+ vlc_tick_t length;
vlc_tick_t time;
} stats;
@@ -72,7 +72,7 @@ static void *vlc_demux_chained_Thread(void *data)
if (demux_TestAndClearFlags(demux, UINT_MAX) || vlc_tick_now() >= next_update)
{
double newpos;
- int64_t newlen;
+ vlc_tick_t newlen;
vlc_tick_t newtime;
if (demux_Control(demux, DEMUX_GET_POSITION, &newpos))
@@ -146,7 +146,7 @@ int vlc_demux_chained_ControlVa(vlc_demux_chained_t *dc, int query, va_list ap)
break;
case DEMUX_GET_LENGTH:
vlc_mutex_lock(&dc->lock);
- *va_arg(ap, int64_t *) = dc->stats.length;
+ *va_arg(ap, vlc_tick_t *) = dc->stats.length;
vlc_mutex_unlock(&dc->lock);
break;
case DEMUX_GET_TIME:
diff --git a/src/input/input.c b/src/input/input.c
index 94a73bad7d..48eaf3e1d5 100644
--- a/src/input/input.c
+++ b/src/input/input.c
@@ -1908,7 +1908,7 @@ static bool Control( input_thread_t *p_input,
param.time.b_absolute );
if( i_ret )
{
- int64_t i_length;
+ vlc_tick_t i_length;
/* Emulate it with a SET_POS */
if( !demux_Control( priv->master->p_demux,
More information about the vlc-commits
mailing list