220 26323 <33B6A68A-3AD7-4664-B5AC-D46DEE473A84@gmail.com> article
Path: news.gmane.org!not-for-mail
From: alexander.zywicki@gmail.com
Newsgroups: gmane.comp.lang.c++.isocpp.proposals
Subject: Re: Any interest to adding audio support to the std library?
Date: Mon, 13 Jun 2016 12:06:37 -0500
Lines: 234
Approved: news@gmane.org
Message-ID: <33B6A68A-3AD7-4664-B5AC-D46DEE473A84@gmail.com>
References: <5751B06A.4080501@mail1.stofanet.dk> <485D94E9-3386-4C2E-8C90-2AE821C3B7E6@gmail.com> <31D8D875-9842-4CC4-98C6-F75FD20155DE@gmail.com> <3560828.vAATzG8HgS@lastique-pc> <8AB38C1F-590D-4F81-9839-D7A4604E1831@gmail.com> <CAEvHzA0emfwFJxzU+YyKog0H52MLnq6BnyuOzC27QVNUA_8Thw@mail.gmail.com>
Reply-To: std-proposals@isocpp.org
NNTP-Posting-Host: plane.gmane.org
Mime-Version: 1.0 (1.0)
Content-Type: multipart/alternative;
	boundary=Apple-Mail-588765F3-D62F-4896-8A83-F19AD26C8B22
Content-Transfer-Encoding: 7bit
X-Trace: ger.gmane.org 1465837616 3824 80.91.229.3 (13 Jun 2016 17:06:56 GMT)
X-Complaints-To: usenet@ger.gmane.org
NNTP-Posting-Date: Mon, 13 Jun 2016 17:06:56 +0000 (UTC)
To: std-proposals@isocpp.org
Original-X-From: std-proposals+bncBCS7TY6DTQOBBIOQ7O5AKGQE6JXKIUQ@isocpp.org Mon Jun 13 19:06:48 2016
Return-path: <std-proposals+bncBCS7TY6DTQOBBIOQ7O5AKGQE6JXKIUQ@isocpp.org>
Envelope-to: gclcip-std-proposals@m.gmane.org
Original-Received: from mail-qk0-f200.google.com ([209.85.220.200])
	by plane.gmane.org with esmtp (Exim 4.69)
	(envelope-from <std-proposals+bncBCS7TY6DTQOBBIOQ7O5AKGQE6JXKIUQ@isocpp.org>)
	id 1bCVK3-0005Kn-PP
	for gclcip-std-proposals@m.gmane.org; Mon, 13 Jun 2016 19:06:48 +0200
Original-Received: by mail-qk0-f200.google.com with SMTP id s1sf272473290qkc.2
        for <gclcip-std-proposals@m.gmane.org>; Mon, 13 Jun 2016 10:06:42 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=isocpp-org.20150623.gappssmtp.com; s=20150623;
        h=mime-version:subject:from:in-reply-to:date
         :content-transfer-encoding:message-id:references:to
         :x-original-sender:x-original-authentication-results:reply-to
         :precedence:mailing-list:list-id:x-spam-checked-in-group:list-post
         :list-help:list-archive:list-subscribe:list-unsubscribe;
        bh=taoJUlCpRBLNtFcAoeTmkiVeGjsnL/MMQ4UxPLamq+M=;
        b=Nz9FWU37h5dyGiRV9cFbbf198UFa46gNu3UaqBldE20T1fTrvStzT/f15BpTsvIKWY
         aEpenf5hu7yGO7bRotmJV13TXexV/tBTh2Hn9wn6SWnzggJysiNetW4z8U1dHeDiYRDU
         X8ZVoP9/Kc1ScAXhaxttoj7jbYe4yCQ7OiGf3FeLiQ4bo9U4Mnyx971NYtI0gMS34Qbw
         oAItcd2mhapoyQYVra5Z+qcbu2fmPkG+hIttz0ZH8DOaA7KcwIgi2FR3GBFxbKBwmcfL
         oT90eA16t5oovw4Dnt2v+uB27CMnmlgvAvVzKLlPs31vFhxKnLN7VxFeKzrBYsbiGhH/
         q0uQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20130820;
        h=x-gm-message-state:mime-version:subject:from:in-reply-to:date
         :content-transfer-encoding:message-id:references:to
         :x-original-sender:x-original-authentication-results:reply-to
         :precedence:mailing-list:list-id:x-spam-checked-in-group:list-post
         :list-help:list-archive:list-subscribe:list-unsubscribe;
        bh=taoJUlCpRBLNtFcAoeTmkiVeGjsnL/MMQ4UxPLamq+M=;
        b=idD+rEqYu5Lu1U55goHH3jKMdLZufQ1lTaabMaXr1slSJkkkFLWhrpHLRez9/yQluE
         oUfImlA1zTlmycgtHMwS6Hi+jjvYi8jaddtZ9UVnTZ1GBXWy24YJVqnrgQCeB8V464dp
         PCNyJu9fH35/EnvUJ840Z8+upxiyqUlMvDGsemI3v5qiDIZPi7B6NTWsSBJ+divOpxQj
         aY7WmdsTGxkkVPdr2/t0HzKgsQqltHYAGVURi7tHXVSfqn3MVDLYpwtv8HpgI7kZD3rT
         EsCIVFiQba64eEizuE3ajEVFENL5PrpNVQmOao3YzjQUiWI0ucXEBjj+TXj+t7IAJ94j
         oeQ 
X-Gm-Message-State: ALyK8tLnInhJe5dTK0fWn0KjwSmRjlprrV9kxb8abJdOPsqRD68kkhpTLBSlFuT/AmJomQ==
X-Received: by 10.140.225.207 with SMTP id v198mr12607538qhb.6.1465837602033;
        Mon, 13 Jun 2016 10:06:42 -0700 (PDT)
X-BeenThere: std-proposals@isocpp.org
Original-Received: by 10.36.239.194 with SMTP id i185ls622939ith.32.canary; Mon, 13 Jun
 2016 10:06:40 -0700 (PDT)
X-Received: by 10.107.134.140 with SMTP id q12mr24632442ioi.25.1465837600739;
        Mon, 13 Jun 2016 10:06:40 -0700 (PDT)
Original-Received: from mail-io0-x231.google.com (mail-io0-x231.google.com. [2607:f8b0:4001:c06::231])
        by mx.google.com with ESMTPS id h144si7531484ita.101.2016.06.13.10.06.40
        for <std-proposals@isocpp.org>
        (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
        Mon, 13 Jun 2016 10:06:40 -0700 (PDT)
Received-SPF: pass (google.com: domain of alexander.zywicki@gmail.com designates 2607:f8b0:4001:c06::231 as permitted sender) client-ip=2607:f8b0:4001:c06::231;
Original-Received: by mail-io0-x231.google.com with SMTP id d2so38239905iof.0
        for <std-proposals@isocpp.org>; Mon, 13 Jun 2016 10:06:40 -0700 (PDT)
X-Received: by 10.107.33.71 with SMTP id h68mr10166214ioh.10.1465837600517;
        Mon, 13 Jun 2016 10:06:40 -0700 (PDT)
Original-Received: from [10.47.182.213] ([166.175.190.28])
        by smtp.gmail.com with ESMTPSA id j143sm3319670ita.16.2016.06.13.10.06.38
        (version=TLSv1/SSLv3 cipher=OTHER);
        Mon, 13 Jun 2016 10:06:38 -0700 (PDT)
X-Mailer: iPhone Mail (13F69)
In-Reply-To: <CAEvHzA0emfwFJxzU+YyKog0H52MLnq6BnyuOzC27QVNUA_8Thw@mail.gmail.com>
X-Original-Sender: alexander.zywicki@gmail.com
X-Original-Authentication-Results: mx.google.com;       dkim=pass
 header.i=@gmail.com;       spf=pass (google.com: domain of
 alexander.zywicki@gmail.com designates 2607:f8b0:4001:c06::231 as permitted
 sender) smtp.mailfrom=alexander.zywicki@gmail.com;       dmarc=pass (p=NONE
 dis=NONE) header.from=gmail.com
Precedence: list
Mailing-list: list std-proposals@isocpp.org; contact std-proposals+owners@isocpp.org
List-ID: <std-proposals.isocpp.org>
X-Spam-Checked-In-Group: std-proposals@isocpp.org
X-Google-Group-Id: 399137483710
List-Post: <https://groups.google.com/a/isocpp.org/group/std-proposals/post>, <mailto:std-proposals@isocpp.org>
List-Help: <https://support.google.com/a/isocpp.org/bin/topic.py?topic=25838>, <mailto:std-proposals+help@isocpp.org>
List-Archive: <https://groups.google.com/a/isocpp.org/group/std-proposals/>
List-Subscribe: <https://groups.google.com/a/isocpp.org/group/std-proposals/subscribe>,
 <mailto:std-proposals+subscribe@isocpp.org>
List-Unsubscribe: <mailto:googlegroups-manage+399137483710+unsubscribe@googlegroups.com>,
 <https://groups.google.com/a/isocpp.org/group/std-proposals/subscribe>
Xref: news.gmane.org gmane.comp.lang.c++.isocpp.proposals:26323
Archived-At: <http://permalink.gmane.org/gmane.comp.lang.c++.isocpp.proposals/26323>


--Apple-Mail-588765F3-D62F-4896-8A83-F19AD26C8B22
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

That is why I am arguing for the definition of a clock I provided in the co=
de example earlier. It will provide the highest resolution steady clock tha=
t chrono provides. Or we will need to create our own. But I'm at least for =
the mean time Trying to use what is already standardized=20

> On Jun 13, 2016, at 11:48 AM, Robert Bielik <robert.bielik@gmail.com> wro=
te:
>=20
> Since ultimately, the timing of audio frames could be used to synchronize=
 audio from sources not sharing a clock, the resolution of the timestamp mu=
st be substantially larger than "number of samples ", I propose what was me=
ntioned earlier, a steady clock with nanosecond resolution.
>=20
> /R
>=20
> Den 12 jun 2016 23:09 skrev <alexander.zywicki@gmail.com>:
>> In that case I would argue for the use of the "std::chrono::steady_clock=
" based on the fact that it is specified to be a monotonic clock.=20
>>=20
>> Or a clock defined in a similar manor that counts in samples.=20
>>=20
>> I also would imagine that our clock would need to have "is_steady" alway=
s be true?
>>=20
>>=20
>>> On Jun 11, 2016, at 4:09 AM, Andrey Semashev <andrey.semashev@gmail.com=
> wrote:
>>>=20
>>> On Saturday, 11 June 2016 11:03:41 MSK alexander.zywicki@gmail.com wrot=
e:
>>> > Or at least store a time point each time the stream is started using =
a clock
>>> > with a well defined epoch, so that we might be able to find the lengt=
h of
>>> > time that the stream has been active and have meaningful measurements=
 of
>>> > time within the stream.
>>> =20
>>> There is no need to have the epoch bound to the beginning of the stream=
 to calculate its duration. Or any particular epoch at all. All you need is=
 the timestamp of its first and last frames.
>>> =20
>>> A fixed epoch becomes important when you try to synchronize multiple st=
reams together. But even then it's not important what exactly is the epoch;=
 what is important is that it has to be the same for all streams you are pr=
ocessing.
>>> =20
>>> --=20
>>> You received this message because you are subscribed to a topic in the =
Google Groups "ISO C++ Standard - Future Proposals" group.
>>> To unsubscribe from this topic, visit https://groups.google.com/a/isocp=
p.org/d/topic/std-proposals/Hkdh02Ejx6s/unsubscribe.
>>> To unsubscribe from this group and all its topics, send an email to std=
-proposals+unsubscribe@isocpp.org.
>>> To post to this group, send email to std-proposals@isocpp.org.
>>> To view this discussion on the web visit https://groups.google.com/a/is=
ocpp.org/d/msgid/std-proposals/3560828.vAATzG8HgS%40lastique-pc.
>>=20
>> --=20
>> You received this message because you are subscribed to the Google Group=
s "ISO C++ Standard - Future Proposals" group.
>> To unsubscribe from this group and stop receiving emails from it, send a=
n email to std-proposals+unsubscribe@isocpp.org.
>> To post to this group, send email to std-proposals@isocpp.org.
>> To view this discussion on the web visit https://groups.google.com/a/iso=
cpp.org/d/msgid/std-proposals/8AB38C1F-590D-4F81-9839-D7A4604E1831%40gmail.=
com.
>=20
> --=20
> You received this message because you are subscribed to a topic in the Go=
ogle Groups "ISO C++ Standard - Future Proposals" group.
> To unsubscribe from this topic, visit https://groups.google.com/a/isocpp.=
org/d/topic/std-proposals/Hkdh02Ejx6s/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to std-p=
roposals+unsubscribe@isocpp.org.
> To post to this group, send email to std-proposals@isocpp.org.
> To view this discussion on the web visit https://groups.google.com/a/isoc=
pp.org/d/msgid/std-proposals/CAEvHzA0emfwFJxzU%2BYyKog0H52MLnq6BnyuOzC27QVN=
UA_8Thw%40mail.gmail.com.

--=20
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp=
..org/d/msgid/std-proposals/33B6A68A-3AD7-4664-B5AC-D46DEE473A84%40gmail.com=
..

--Apple-Mail-588765F3-D62F-4896-8A83-F19AD26C8B22
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<html><head><meta http-equiv=3D"content-type" content=3D"text/html; charset=
=3Dutf-8"></head><body dir=3D"auto"><div></div><div>That is why I am arguin=
g for the definition of a clock I provided in the code example earlier. It =
will provide the highest resolution steady clock that chrono provides. Or w=
e will need to create our own. But I'm at least for the mean time Trying to=
 use what is already standardized&nbsp;</div><div><br>On Jun 13, 2016, at 1=
1:48 AM, Robert Bielik &lt;<a href=3D"mailto:robert.bielik@gmail.com">rober=
t.bielik@gmail.com</a>&gt; wrote:<br><br></div><blockquote type=3D"cite"><d=
iv><p dir=3D"ltr">Since ultimately, the timing of audio frames could be use=
d to synchronize audio from sources not sharing a clock, the resolution of =
the timestamp must be substantially larger than "number of samples ", I pro=
pose what was mentioned earlier, a steady clock with nanosecond resolution.=
</p>
<p dir=3D"ltr">/R</p>
<div class=3D"gmail_quote">Den 12 jun 2016 23:09 skrev  &lt;<a href=3D"mail=
to:alexander.zywicki@gmail.com">alexander.zywicki@gmail.com</a>&gt;:<br typ=
e=3D"attribution"><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .=
8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir=3D"auto"><div></d=
iv><div>In that case I would argue for the use of the "std::chrono::steady_=
clock" based on the fact that it is specified to be a monotonic clock.&nbsp=
;</div><div><br></div><div>Or a clock defined in a similar manor that count=
s in samples.&nbsp;</div><div><br></div><div>I also would imagine that our =
clock would need to have "is_steady" always be true?</div><div><br></div><d=
iv><br>On Jun 11, 2016, at 4:09 AM, Andrey Semashev &lt;<a href=3D"mailto:a=
ndrey.semashev@gmail.com" target=3D"_blank">andrey.semashev@gmail.com</a>&g=
t; wrote:<br><br></div><blockquote type=3D"cite"><div>

<p style=3D"margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0=
px;text-indent:0px">On Saturday, 11 June 2016 11:03:41 MSK <a href=3D"mailt=
o:alexander.zywicki@gmail.com" target=3D"_blank">alexander.zywicki@gmail.co=
m</a> wrote:</p>
<p style=3D"margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0=
px;text-indent:0px">&gt; Or at least store a time point each time the strea=
m is started using a clock</p>
<p style=3D"margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0=
px;text-indent:0px">&gt; with a well defined epoch, so that we might be abl=
e to find the length of</p>
<p style=3D"margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0=
px;text-indent:0px">&gt; time that the stream has been active and have mean=
ingful measurements of</p>
<p style=3D"margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0=
px;text-indent:0px">&gt; time within the stream.</p>
<p style=3D"margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0=
px;text-indent:0px">&nbsp;</p>
<p style=3D"margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0=
px;text-indent:0px">There is no need to have the epoch bound to the beginni=
ng of the stream to calculate its duration. Or any particular epoch at all.=
 All you need is the timestamp of its first and last frames.</p>
<p style=3D"margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0=
px;text-indent:0px">&nbsp;</p>
<p style=3D"margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0=
px;text-indent:0px">A fixed epoch becomes important when you try to synchro=
nize multiple streams together. But even then it's not important what exact=
ly is the epoch; what is important is that it has to be the same for all st=
reams you are processing.</p>
<p style=3D"margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0=
px;text-indent:0px">&nbsp;</p>

<p></p>

-- <br>
You received this message because you are subscribed to a topic in the Goog=
le Groups "ISO C++ Standard - Future Proposals" group.<br>
To unsubscribe from this topic, visit <a href=3D"https://groups.google.com/=
a/isocpp.org/d/topic/std-proposals/Hkdh02Ejx6s/unsubscribe" target=3D"_blan=
k">https://groups.google.com/a/isocpp.org/d/topic/std-proposals/Hkdh02Ejx6s=
/unsubscribe</a>.<br>
To unsubscribe from this group and all its topics, send an email to <a href=
=3D"mailto:std-proposals+unsubscribe@isocpp.org" target=3D"_blank">std-prop=
osals+unsubscribe@isocpp.org</a>.<br>
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org" target=3D"_blank">std-proposals@isocpp.org</a>.<br>
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/3560828.vAATzG8HgS%40lastique-pc?utm_=
medium=3Demail&amp;utm_source=3Dfooter" target=3D"_blank">https://groups.go=
ogle.com/a/isocpp.org/d/msgid/std-proposals/3560828.vAATzG8HgS%40lastique-p=
c</a>.<br>
</div></blockquote></div>

<p></p>

-- <br>
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" group.<br>
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org" target=3D"_=
blank">std-proposals+unsubscribe@isocpp.org</a>.<br>
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org" target=3D"_blank">std-proposals@isocpp.org</a>.<br>
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/8AB38C1F-590D-4F81-9839-D7A4604E1831%=
40gmail.com?utm_medium=3Demail&amp;utm_source=3Dfooter" target=3D"_blank">h=
ttps://groups.google.com/a/isocpp.org/d/msgid/std-proposals/8AB38C1F-590D-4=
F81-9839-D7A4604E1831%40gmail.com</a>.<br>
</blockquote></div>

<p></p>

-- <br>
You received this message because you are subscribed to a topic in the Goog=
le Groups "ISO C++ Standard - Future Proposals" group.<br>
To unsubscribe from this topic, visit <a href=3D"https://groups.google.com/=
a/isocpp.org/d/topic/std-proposals/Hkdh02Ejx6s/unsubscribe">https://groups.=
google.com/a/isocpp.org/d/topic/std-proposals/Hkdh02Ejx6s/unsubscribe</a>.<=
br>
To unsubscribe from this group and all its topics, send an email to <a href=
=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposals+unsubscribe@=
isocpp.org</a>.<br>
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br>
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/CAEvHzA0emfwFJxzU%2BYyKog0H52MLnq6Bny=
uOzC27QVNUA_8Thw%40mail.gmail.com?utm_medium=3Demail&amp;utm_source=3Dfoote=
r">https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CAEvHzA0emf=
wFJxzU%2BYyKog0H52MLnq6BnyuOzC27QVNUA_8Thw%40mail.gmail.com</a>.<br>
</div></blockquote></body></html>

<p></p>

-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals&quot; group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/33B6A68A-3AD7-4664-B5AC-D46DEE473A84%=
40gmail.com?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/33B6A68A-3AD7-4664-B5AC-D46DEE473A84%=
40gmail.com</a>.<br />

--Apple-Mail-588765F3-D62F-4896-8A83-F19AD26C8B22--

.
