[vlc-devel] [PATCH 01/16] vlc_common: add helper function to convert milliseconds to/from mtime_t
Steve Lhomme
robux4 at ycbcr.xyz
Fri Jun 8 08:27:15 CEST 2018
On 2018-06-07 1:15 PM, Rémi Denis-Courmont wrote:
> Should there be a VLC prefix? How to handle rounding errors? :/
I would say yes on the prefix but that's going to be very lengthy names.
Also mtime_t is not vlc_mtime_t.
The rounding errors it's a little tricky for a macro. I was thinking
about using macros for hardcoded values and a function for local values.
There are currently many static_assert on CLOCK_FREQ like this one
http://git.videolan.org/?p=vlc.git;a=blob;f=modules/audio_output/wasapi.c;hb=HEAD#l130
For now CLOCK_FREQ it's pretty much lock into 1000000 so the only thing
that can happen here is MTIME_TO_MS() overflowing when it shouldn't.
I would like to make the code more flexible though to allow more
arbitrary values like that Facebook tick or using 100ns on Windows where
it's more natural.
>
> Le 7 juin 2018 12:59:45 GMT+03:00, Steve Lhomme <robux4 at ycbcr.xyz> a
> écrit :
>
> From: Rémi Denis-Courmont <remi at remlab.net>
>
> ---
> include/vlc_common.h | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/include/vlc_common.h b/include/vlc_common.h
> index da334710af..d79ed61221 100644
> --- a/include/vlc_common.h
> +++ b/include/vlc_common.h
> @@ -288,6 +288,10 @@
> */
> typedef int64_t mtime_t;
>
> +#define MS_TO_MTIME(ms) ((ms) * (CLOCK_FREQ / 1000))
> +#define MTIME_TO_MS(ms) (((ms) * 1000) / CLOCK_FREQ)
> +
> +
> /**
> * The vlc_fourcc_t type.
> *
>
>
> --
> Envoyé de mon appareil Android avec Courriel K-9 Mail. Veuillez
> excuser ma brièveté.
>
>
> _______________________________________________
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> https://mailman.videolan.org/listinfo/vlc-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/vlc-devel/attachments/20180608/13878dca/attachment.html>
More information about the vlc-devel
mailing list