1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2025-01-08 13:22:53 +02:00
FFmpeg/libavformat
Nicolas George 5d35b279e2 ALSA demuxer: use av_gettime and a timefilter.
The PTS for captured audio was measured using snd_pcm_htimestamp.

snd_pcm_htimestamp hangs when the input is a dsnoop plugin.

Furthermore, at some point, snd_pcm_htimestamp started returning monotonic
timestamps rather than wall clock timestamps, in most but not all
situations.
Monotonic timestamps are fine, but ffmpeg uses wall clock timestamps
everywhere else, and we have no API to inform the user which kind of
timestamps it is.

A separate snd_pcm_htimestamp is only slightly less accurate than
snd_pcm_htimestamp: the standard deviation for the difference between two
consecutive timestamps is (on my hardware):
- ~13 µs with snd_pcm_htimestamp;
- ~35 µs with av_gettime;
-  ~5 µs with av_gettime and a timefilter.
2011-07-02 10:43:38 +02:00
..
4xm.c Merge remote-tracking branch 'qatar/master' 2011-06-03 05:19:30 +02:00
a64.c
aacdec.c Merge remote-tracking branch 'qatar/master' 2011-06-11 03:51:36 +02:00
ac3dec.c
adts.h
adtsenc.c
aea.c
aiff.h
aiffdec.c replace remaining usage of deprecated av_metadata_set2() by av_dict_set() 2011-06-13 19:02:50 +02:00
aiffenc.c Write channel_layout for multichannel aif files. 2011-05-17 01:56:01 +02:00
allformats.c Initial caf muxer. 2011-05-15 03:25:57 +02:00
amr.c
anm.c
apc.c
ape.c Merge remote-tracking branch 'qatar/master' 2011-06-03 05:19:30 +02:00
apetag.c Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
apetag.h
applehttp.c Merge remote-tracking branch 'qatar/master' 2011-06-18 05:10:38 +02:00
applehttpproto.c Merge remote branch 'qatar/master' 2011-05-13 04:40:40 +02:00
asf.c
asf.h
asfcrypt.c Merge remote-tracking branch 'qatar/master' 2011-06-24 03:07:04 +02:00
asfcrypt.h
asfdec.c Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
asfenc.c Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
assdec.c
assenc.c
au.c
audiointerleave.c
audiointerleave.h
avc.c
avc.h
avformat.h lavf: add an API to get output timestamps. 2011-07-01 09:49:27 +02:00
avi.c
avi.h
avidec.c Merge remote-tracking branch 'qatar/master' 2011-07-02 03:24:32 +02:00
avienc.c Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
avio_internal.h Merge remote-tracking branch 'qatar/master' 2011-05-22 04:53:19 +02:00
avio.c Simplify code and avoid compiler warning about incompatible types. 2011-06-01 20:29:27 +02:00
avio.h Merge remote-tracking branch 'qatar/master' 2011-06-24 03:07:04 +02:00
aviobuf.c Merge remote-tracking branch 'qatar/master' 2011-05-22 04:53:19 +02:00
avisynth.c
avlanguage.c
avlanguage.h
avs.c
bethsoftvid.c
bfi.c
bink.c Fix bink audio playback outside of FFmpeg. 2011-06-20 23:28:55 +02:00
c93.c
caf.c Support decoding of amr_nb and gsm in caf. 2011-05-15 03:25:57 +02:00
caf.h
cafdec.c Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
cafenc.c Fix ff_mov_write_chan() so it can be used by other muxers. 2011-05-17 01:47:12 +02:00
cavsvideodec.c Merge remote-tracking branch 'qatar/master' 2011-05-27 23:48:22 +02:00
cdg.c
concat.c
crcenc.c
crypto.c crypto: Use av_freep instead of av_free 2011-06-09 02:43:55 +02:00
cutils.c
daud.c
dfa.c
diracdec.c Merge remote-tracking branch 'qatar/master' 2011-05-27 23:48:22 +02:00
dnxhddec.c Merge remote-tracking branch 'qatar/master' 2011-05-27 23:48:22 +02:00
dsicin.c
dtsdec.c
dv.c
dv.h
dvenc.c
dxa.c
eacdata.c
electronicarts.c
ffm.h
ffmdec.c Merge remote-tracking branch 'qatar/master' 2011-06-11 03:51:36 +02:00
ffmenc.c
ffmeta.h Merge remote-tracking branch 'qatar/master' 2011-05-22 04:53:19 +02:00
ffmetadec.c Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
ffmetaenc.c Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
file.c
filmstripdec.c
filmstripenc.c
flacdec.c
flacenc_header.c
flacenc.c Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
flacenc.h
flic.c
flv.h
flvdec.c Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
flvenc.c Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
framecrcenc.c
gif.c Merge remote-tracking branch 'qatar/master' 2011-06-03 05:19:30 +02:00
gopher.c
gxf.c Merge remote-tracking branch 'qatar/master' 2011-06-24 03:07:04 +02:00
gxf.h
gxfenc.c
h261dec.c Merge remote-tracking branch 'qatar/master' 2011-05-27 23:48:22 +02:00
h263dec.c Merge remote-tracking branch 'qatar/master' 2011-05-27 23:48:22 +02:00
h264dec.c Merge remote-tracking branch 'qatar/master' 2011-05-27 23:48:22 +02:00
http.c lavf: use designated initializers for AVClasses. 2011-05-17 23:01:42 +02:00
http.h
httpauth.c
httpauth.h
id3v1.c Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
id3v1.h
id3v2.c Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
id3v2.h
idcin.c
idroqdec.c
idroqenc.c
iff.c Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
img2.c riff/img2: Add JPEG 2000 codec IDs. 2011-06-21 21:38:59 +02:00
ingenientdec.c Merge remote-tracking branch 'qatar/master' 2011-06-05 03:00:31 +02:00
internal.h Merge remote-tracking branch 'qatar/master' 2011-06-24 03:07:04 +02:00
ipmovie.c Merge remote-tracking branch 'qatar/master' 2011-06-03 05:19:30 +02:00
isom.c Merge remote-tracking branch 'qatar/master' 2011-06-22 05:16:40 +02:00
isom.h Fix ff_mov_write_chan() so it can be used by other muxers. 2011-05-17 01:47:12 +02:00
iss.c
iv8.c
ivfdec.c
ivfenc.c
jvdec.c
libavformat.v
libnut.c
librtmp.c
lmlm4.c
lxfdec.c
m4vdec.c Merge remote-tracking branch 'qatar/master' 2011-05-27 23:48:22 +02:00
Makefile ALSA demuxer: use av_gettime and a timefilter. 2011-07-02 10:43:38 +02:00
matroska.c matroska: improve declaration of video_stereo_* constant tables 2011-05-24 23:34:24 +02:00
matroska.h Merge remote-tracking branch 'qatar/master' into master 2011-05-29 03:34:35 +02:00
matroskadec.c Merge remote-tracking branch 'qatar/master' 2011-07-02 03:24:32 +02:00
matroskaenc.c Merge remote-tracking branch 'qatar/master' 2011-06-21 03:38:25 +02:00
md5enc.c
md5proto.c
metadata.c Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
metadata.h Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
microdvddec.c
microdvdenc.c
mm.c
mmf.c Merge remote-tracking branch 'qatar/master' 2011-06-03 05:19:30 +02:00
mms.c
mms.h Merge remote-tracking branch 'qatar/master' 2011-05-22 04:53:19 +02:00
mmsh.c mmsh: fix 400 bad request 2011-06-16 20:15:53 +02:00
mmst.c Add some forgotten const to function arguments in libavfilter & libavformat. 2011-05-17 03:05:36 +02:00
mov.c Merge remote-tracking branch 'qatar/master' 2011-06-21 03:38:25 +02:00
movenc.c Merge remote-tracking branch 'qatar/master' 2011-06-11 03:51:36 +02:00
movenc.h Merge remote-tracking branch 'qatar/master' 2011-06-11 03:51:36 +02:00
movenchint.c
mp3dec.c Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
mp3enc.c Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
mpc8.c
mpc.c Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
mpeg.c Merge remote-tracking branch 'qatar/master' 2011-06-11 03:51:36 +02:00
mpeg.h
mpegenc.c Merge remote-tracking branch 'qatar/master' 2011-06-11 03:51:36 +02:00
mpegts.c Merge remote-tracking branch 'qatar/master' 2011-06-24 03:07:04 +02:00
mpegts.h
mpegtsenc.c Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
mpegvideodec.c Merge remote-tracking branch 'qatar/master' 2011-05-27 23:48:22 +02:00
mpjpeg.c
msnwc_tcp.c
mtv.c
mvi.c
mxf.c
mxf.h
mxfdec.c Merge remote-tracking branch 'qatar/master' 2011-06-02 05:12:10 +02:00
mxfenc.c
mxg.c
ncdec.c
network.h Merge remote-tracking branch 'qatar/master' 2011-06-05 03:00:31 +02:00
nsvdec.c nsvdec: Propagate error values instead of returning 0 in nsv_read_header(). 2011-06-23 13:47:16 +02:00
nullenc.c
nut.c
nut.h
nutdec.c Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
nutenc.c Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
nuv.c Merge remote-tracking branch 'qatar/master' 2011-06-24 03:07:04 +02:00
oggdec.c Merge remote-tracking branch 'qatar/master' 2011-06-30 04:32:24 +02:00
oggdec.h Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
oggenc.c Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
oggparsecelt.c Fix various unused variable warnings 2011-05-30 00:24:01 +02:00
oggparsedirac.c
oggparseflac.c
oggparseogm.c Remove unused variables 2011-06-02 20:06:00 +01:00
oggparseskeleton.c
oggparsespeex.c
oggparsetheora.c
oggparsevorbis.c Remove all uses of now deprecated metadata functions. 2011-06-08 07:43:45 +02:00
oma.c Merge remote-tracking branch 'qatar/master' 2011-06-03 05:19:30 +02:00
options.c Merge remote-tracking branch 'qatar/master' 2011-06-18 05:10:38 +02:00
os_support.c Merge remote branch 'qatar/master' 2011-05-13 04:40:40 +02:00
os_support.h
pcm.c
pcm.h
pcmdec.c Merge remote-tracking branch 'qatar/master' 2011-05-26 03:28:22 +02:00
pcmenc.c
pmpdec.c
psxstr.c
pva.c
qcp.c
qtpalette.h
r3d.c Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
rawdec.c Merge remote-tracking branch 'qatar/master' 2011-06-06 03:33:58 +02:00
rawdec.h Merge remote-tracking branch 'qatar/master' 2011-06-05 03:00:31 +02:00
rawenc.c
rawenc.h
rawvideodec.c Merge remote-tracking branch 'qatar/master' 2011-05-27 23:48:22 +02:00
rdt.c Merge remote-tracking branch 'qatar/master' 2011-06-18 05:10:38 +02:00
rdt.h
riff.c Support fourcc Y8 (ticket 308). 2011-06-27 10:03:21 +02:00
riff.h
rl2.c Merge remote-tracking branch 'qatar/master' 2011-06-03 05:19:30 +02:00
rm.c
rm.h
rmdec.c Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
rmenc.c Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
rpl.c Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
rso.c
rso.h
rsodec.c
rsoenc.c
rtmp.h
rtmppkt.c Merge remote-tracking branch 'qatar/master' 2011-05-26 03:28:22 +02:00
rtmppkt.h
rtmpproto.c Merge remote-tracking branch 'qatar/master' 2011-05-26 03:28:22 +02:00
rtp.c
rtp.h
rtpdec_amr.c
rtpdec_asf.c Merge remote-tracking branch 'qatar/master' 2011-06-18 05:10:38 +02:00
rtpdec_formats.h
rtpdec_h263.c
rtpdec_h264.c
rtpdec_latm.c Merge remote-tracking branch 'qatar/master' 2011-06-03 05:19:30 +02:00
rtpdec_mpeg4.c
rtpdec_qcelp.c
rtpdec_qdm2.c Merge remote branch 'qatar/master' 2011-05-13 04:40:40 +02:00
rtpdec_qt.c
rtpdec_svq3.c
rtpdec_vp8.c
rtpdec_xiph.c
rtpdec.c Merge remote-tracking branch 'qatar/master' 2011-06-04 06:35:17 +02:00
rtpdec.h
rtpenc_aac.c
rtpenc_amr.c
rtpenc_chain.c Merge remote-tracking branch 'qatar/master' 2011-06-18 05:10:38 +02:00
rtpenc_chain.h
rtpenc_h263.c
rtpenc_h264.c Make buffer size check consistent and avoid a possible overflow. 2011-06-15 20:21:33 +02:00
rtpenc_latm.c Merge commit '9446d75941d639f19cfa9ae007eb4c5ca041f200' 2011-06-17 05:49:58 +02:00
rtpenc_mpv.c
rtpenc_vp8.c
rtpenc_xiph.c
rtpenc.c Merge remote-tracking branch 'qatar/master' 2011-06-11 03:51:36 +02:00
rtpenc.h Merge remote-tracking branch 'qatar/master' 2011-06-11 03:51:36 +02:00
rtpproto.c Merge remote-tracking branch 'qatar/master' 2011-06-24 03:07:04 +02:00
rtsp.c Merge commit '9446d75941d639f19cfa9ae007eb4c5ca041f200' 2011-06-17 05:49:58 +02:00
rtsp.h Merge remote-tracking branch 'qatar/master' 2011-06-11 03:51:36 +02:00
rtspcodes.h
rtspdec.c Merge remote-tracking branch 'qatar/master' 2011-06-08 05:25:28 +02:00
rtspenc.c Merge remote-tracking branch 'qatar/master' 2011-06-11 03:51:36 +02:00
sapdec.c Merge remote-tracking branch 'qatar/master' 2011-06-18 05:10:38 +02:00
sapenc.c
sauce.c Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
sauce.h
sdp.c Merge remote-tracking branch 'qatar/master' 2011-06-11 03:51:36 +02:00
seek.c
seek.h
segafilm.c
sierravmd.c
siff.c
smacker.c Remove unused variables 2011-06-02 20:06:00 +01:00
sol.c Merge remote-tracking branch 'qatar/master' 2011-06-03 05:19:30 +02:00
sox.h
soxdec.c Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
soxenc.c Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
spdif.c
spdif.h Merge remote-tracking branch 'qatar/master' 2011-05-22 04:53:19 +02:00
spdifdec.c
spdifenc.c lavf: use designated initializers for AVClasses. 2011-05-17 23:01:42 +02:00
srtdec.c
swf.h
swfdec.c
swfenc.c
tcp.c TCP: change default timeout to 5sec 2011-05-30 02:39:26 +02:00
thp.c
tiertexseq.c
timefilter.c
timefilter.h
tmv.c
tta.c Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
tty.c Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
txd.c
udp.c Merge remote-tracking branch 'qatar/master' 2011-07-01 05:35:26 +02:00
url.h Merge remote-tracking branch 'qatar/master' 2011-05-22 04:53:19 +02:00
utils.c lavf: add an API to get output timestamps. 2011-07-01 09:49:27 +02:00
vc1test.c
vc1testenc.c
version.h lavf: bump minor and add APIchanges entry for av_get_output_timestamp 2011-07-01 11:11:48 +02:00
voc.c
voc.h
vocdec.c
vocenc.c
vorbiscomment.c Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
vorbiscomment.h Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
vqf.c Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
wav.c wav: remove an invalid free(). 2011-06-13 20:47:06 +02:00
wc3movie.c Merge remote-tracking branch 'qatar/master' 2011-06-09 04:47:19 +02:00
westwood.c
wtv.c Remove all uses of now deprecated metadata functions. 2011-06-08 07:43:45 +02:00
wtv.h
wtvdec.c replace remaining usage of deprecated av_metadata_set2() by av_dict_set() 2011-06-13 19:02:50 +02:00
wv.c Merge remote-tracking branch 'qatar/master' 2011-06-29 05:23:12 +02:00
xa.c
xwma.c
yop.c
yuv4mpeg.c Remove unused variables 2011-06-02 20:06:00 +01:00