Commit Graph

3983 Commits

Author SHA1 Message Date
stefan@webrtc.org
a817962bab Refactor padding and rtp header functionality.
BUG=1837
R=pbos@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1611004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4172 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-04 13:47:36 +00:00
stefan@webrtc.org
de98478965 Update the remote bitrate estimator before passing the packet to the RTP module.
This solves the problem of reconstructed packets biasing the bandwidth estimate.

TEST=vie_auto_test --automated, trybots
R=mflodman@webrtc.org, solenberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1594005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4171 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-04 12:15:40 +00:00
pbos@webrtc.org
6998c8ef7a Remove XvRenderer.
One test renderer per platform is sufficient, multiple code paths are
bad.

BUG=
R=mflodman@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1612004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4170 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-04 11:56:06 +00:00
stefan@webrtc.org
8ad3ec9722 Fix build error introduced with r4168.
TBR=mflodman@webrtc.org
BUG=1837

Review URL: https://webrtc-codereview.appspot.com/1610004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4169 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-04 09:52:46 +00:00
stefan@webrtc.org
c3cc375499 Add support for padding in pacer.
This improves pacer-based padding by making sure it limits padding according to:
- Never pad more than 800 kbps.
- Padding + media should not go above a given target bitrate.

Also adds appropriate unittests to make sure we reach the given targets.

BUG=1837
R=mflodman@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1582005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4168 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-04 09:36:56 +00:00
pbos@webrtc.org
c69ae69d0b Include files from webrtc/.. paths in common_video/
BUG=1662
R=stefan@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1546004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4167 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-04 09:02:37 +00:00
pbos@webrtc.org
ba7f6a8614 Include files from webrtc/.. paths in tools/
BUG=1662
R=kjellander@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1547004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4166 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-04 08:14:10 +00:00
kjellander@webrtc.org
5156c94f89 Disable neteq_unittests on Win x64 in code.
Having this failing test being disabled in code will make it
possible to add it on the bots again, and make thus no bot
configuration update needs to be communicated when it's fixed.

BUG=1460
TEST=Compiled with GYP_DEFINES=target_arch=x64 and ran the
test successsfully on Windows. Also ran regular trybots.

R=tina.legrand@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1595004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4165 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-04 05:47:24 +00:00
kjellander@webrtc.org
b6e49aa3f2 Disable audio_decoder_unittests on Win x64 in code.
Having this failing test being disabled in code will make it
possible to add it on the bots again, and make thus no bot
configuration update needs to be communicated when it's fixed.

BUG=1459
TEST=Compiled with GYP_DEFINES=target_arch=x64 and ran the
test successsfully on Windows. Also ran regular trybots.

R=tina.legrand@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1594004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4164 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-04 05:47:04 +00:00
kjellander@webrtc.org
6eba2774c9 Disable audio_coding_unittests on Win x64 in code.
Having this failing test being disabled in code will make it
possible to add it on the bots again, and make thus no bot
configuration update needs to be communicated when it's fixed.

BUG=1458
TEST=Compiled with GYP_DEFINES=target_arch=x64 and ran the
test successsfully on Windows. Also ran regular trybots.

R=tina.legrand@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1593004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4163 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-04 05:46:37 +00:00
fischman@webrtc.org
e001b57d84 Do not hold a lock when calling VCMReceiveCallback::FrameToRender.
DecodedImageCallback is allowed to be called on a thread different from decoding thread. To avoid the deadlock in VCMDecodedFrameCallback::Decoded, VCMDecodedFrameCallback::_critSect  should not be held while calling VCMReceiveCallback::FrameToRender.

BUG=1832
R=stefan@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1570004

Patch from Wu-Cheng Li <wuchengli@chromium.org>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4162 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-04 03:29:37 +00:00
sergeyu@chromium.org
3ee13e4ac2 Optimized DesktopRegion implementation.
Now DestktopRegion can merge overlapping rectangles.

R=wez@chromium.org

Review URL: https://webrtc-codereview.appspot.com/1526004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4161 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-04 00:38:39 +00:00
fischman@webrtc.org
34a77354a8 Removed unused class members to enable clang=1 android build.
BUG=https://code.google.com/p/webrtc/issues/detail?id=1275
TESTED=video_demo_apk builds with clang=1
R=niklas.enbom@webrtc.org, wu@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1605004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4160 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-04 00:37:21 +00:00
mikhal@webrtc.org
6eb0f6a4d9 Setting SSRC in vie_loopback_test
BUG=1822
R=pwestin@webrtc.org, wu@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1603004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4159 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-03 22:54:40 +00:00
andrew@webrtc.org
0a38432ea5 Fix error in mixing test for supported sample rates.
With the switch to an arbitrary resampler, we now support these strange
rates.

TBR=turaj

Review URL: https://webrtc-codereview.appspot.com/1604004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4158 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-03 22:52:09 +00:00
wu@webrtc.org
fa64a595ad Change SetRTPAudioLevelIndicationStatus to ignore the id in the case of disabling.
This makes it easier for the users of the interface, i.e. doesn't need to remember the id in order to disable audio level indication later.

BUG=1828
TEST=unit tests
R=henrika@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1598005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4157 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-03 21:27:57 +00:00
andrew@webrtc.org
c1eb560a5c Replace the old resampler with SincResampler in the voice engine signal path.
* The old resampler was found to have a wraparound bug.
* Remove support for the old resampler from PushResampler.
* Use PushResampler in AudioCodingModule.
* The old resampler must still be removed from the file utility.

BUG=webrtc:1867,webrtc:827
TESTED=unit tests, Chrome using apprtc and voe_cmd_test to verify wrap-around is corrected, voe_cmd_test running through all supported codec sample rates and channels to verify good quality audio
R=henrika@webrtc.org, turaj@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1590004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4156 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-03 19:00:29 +00:00
andrew@webrtc.org
31c5f1c91a Remove ancient and unused CNG test.
R=tina.legrand@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1585005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4154 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-03 16:07:07 +00:00
mikhal@webrtc.org
2b3a86554f Revert 4149 "bug fixes for extremely large images - 10000x10000 ..."
> bug fixes for extremely large images - 10000x10000 and 100000 pixel wide.
> BUG=none
> TEST=libyuv unittest with manual LIBYUV_WIDTH=1000000
> R=andrew@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/1584008

TBR=fbarchard@google.com

Review URL: https://webrtc-codereview.appspot.com/1591005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4152 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-31 22:59:38 +00:00
niklas.enbom@webrtc.org
b35d2e3abc Add dummy audio NACK APIs
R=pwestin@webrtc.org, turaj@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1579006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4151 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-31 21:13:52 +00:00
hclam@chromium.org
b1bba167f4 Prevent excessive logging in jitter buffer
Jitter buffer logs a message when it is going to recycle frames. This adds a
lot of noise even in normal operation. This change make sure only critical
cases are logged.

R=mikhal@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1580007

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4150 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-31 18:52:16 +00:00
fbarchard@google.com
85f28650d5 bug fixes for extremely large images - 10000x10000 and 100000 pixel wide.
BUG=none
TEST=libyuv unittest with manual LIBYUV_WIDTH=1000000
R=andrew@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1584008

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4149 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-31 18:00:36 +00:00
fbarchard@google.com
a6494e6902 roll libyuv to r711 for scaler fix to webrtc unittests that scale up and down and check for fairly similar results.
BUG=none
TEST=try bots
R=andrew@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1575005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4147 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-31 16:54:42 +00:00
tnakamura@webrtc.org
694cdc6e84 Revert 4104 "Refactor jitter buffer to use separate lists for de..."
Reason - leading suspect of video frame corruption tracked in http://b/9216252
Note that if this turns out to not be the cause, be sure to re-revert both this change and r4145.

> Refactor jitter buffer to use separate lists for decodable and incomplete frames.
> 
> This changes the design of the jitter buffer to keeping track of decodable frames from the point when packets are inserted in the buffer, instead of searching for decodable frames when they are needed.
> 
> To accomplish this the frame_list_, which previously contained all frames (incomplete or complete, continuous or not), is split into a list of decodable_frames_ (complete, continuous) and a list of incomplete_frames_ (either incomplete or non-continuous). These frame lists are updated every time a packet is inserted.
> 
> This is another step in the direction of doing most of the work in the jitter buffer only once, when packets are inserted, instead of doing it every time we look for a frame or try to get a nack list.
> 
> BUG=1798
> TEST=vie_auto_test, trybots
> R=mikhal@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/1522005

TBR=stefan@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1586007

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4146 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-31 16:09:48 +00:00
tnakamura@webrtc.org
4d9c07ad6d Revert 4127 "Switch frame list implementation to std::map."
We want to revert r4104 for b/9216252, but because r4127 was built on top of r4104, we need to revert r4127 first. We'll un/re-revert this if we discover that r4104 is not to blame.


> Switch frame list implementation to std::map.
> 
> This reduces the complexity of insert and find (by timestamp) from linear to logarithmic, which has a big impact on large frame lists.
> 
> BUG=1726
> TEST=trybots, vie_auto_test --automated
> R=mikhal@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/1561005

TBR=stefan@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1590005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4145 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-31 16:06:01 +00:00
braveyao@webrtc.org
5ed7051799 Apprtc: not to start the call until we get Turn response.
BUG=1795
Test=Manual Test

R=fischman@webrtc.org, juberti@google.com

Review URL: https://webrtc-codereview.appspot.com/1528004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4144 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-31 06:29:41 +00:00
andrew@webrtc.org
f9f39d59d4 Add a drover.properties file for reference.
R=kjellander@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1318005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4142 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-30 18:15:54 +00:00
andrew@webrtc.org
eed919d95d MIPS optimizations for the following functions:
WebRtcSpl_ComplexBitReverse, WebRtcSpl_ComplexFFT, WebRtcSpl_ComplexIFFT, WebRtcSpl_DownsampleFast and WebRtcSpl_FilterARFastQ12.
Also, moved the common table used in complex_fft functions to a separate header file (webrtc/common_audio/signal_processing/include/complex_fft_tables.h).

R=andrew@webrtc.org, kma@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1126004

Patch from Ljubomir Papuga <lpapuga@mips.com>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4141 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-30 16:38:36 +00:00
mikhal@webrtc.org
adc64a7216 VCM/Timing: Setting clear names to members & methods
R=stefan@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1524004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4140 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-30 16:20:18 +00:00
vikasmarwaha@webrtc.org
fddf6be339 Updated apprtc to use new TURN format for chrome versions M28 & above.
R=dutton@google.com, juberti@google.com

Review URL: https://webrtc-codereview.appspot.com/1563004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4139 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-29 22:13:19 +00:00
jiayl@webrtc.org
046bc448d5 Fixes the frameRate stats by grouping the frames by timestamp.
R=stefan@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1536004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4138 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-29 16:33:46 +00:00
pbos@webrtc.org
4213633a4d Use int for FPS instead of size_t.
BUG=
TBR=stefan@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1578005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4136 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-29 15:13:12 +00:00
pbos@webrtc.org
a048d7cb0a Include files from webrtc/.. paths in rtp_rtcp/
BUG=1662
R=stefan@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1557004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4135 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-29 14:27:38 +00:00
stefan@webrtc.org
eea2622350 Correctly set SSRCs for extra send RTP modules.
Fixes a regression introduced in r4096.

BUG=1845
R=mflodman@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1585004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4134 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-29 14:07:54 +00:00
pbos@webrtc.org
7bdfff3503 Remove assert for aborting FrameGeneratorCapturer.
BUG=
TBR=mflodman@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1586004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4133 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-29 13:58:11 +00:00
pbos@webrtc.org
26d12105a4 Fake VideoCapturer based on FrameGenerator
BUG=1793
R=mflodman@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1539004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4132 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-29 13:41:03 +00:00
stefan@webrtc.org
08994cc525 Fix a return value mismatch introduced in r4129.
TBR=mflodman@webrtc.org
TEST=vie_auto_test, trybots

Review URL: https://webrtc-codereview.appspot.com/1584005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4131 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-29 13:28:21 +00:00
pbos@webrtc.org
9aca5b34e1 Remove #pragma once
BUG=1830
R=tina.legrand@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1568004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4130 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-29 13:19:09 +00:00
stefan@webrtc.org
a5cb98cbbd Breaking out RTP header parsing from the RTP module.
This is the first step in order to move bandwidth estimation closer to the network. The goal is to have RTP header parsing and bandwidth estimation before voice and video engine, and have a joint estimate for audio and video.

Moving bandwidth estimation before the RTP module is also required for RTX.

TEST=vie_auto_test, voe_auto_test, trybots.
BUG=1811
R=andresp@webrtc.org, henrika@webrtc.org, mflodman@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1545004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4129 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-29 12:12:51 +00:00
pbos@webrtc.org
1ecee9a15a Break video_engine/new_include/common.h into smaller parts.
BUG=
R=mflodman@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1571005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4128 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-29 11:34:32 +00:00
stefan@webrtc.org
ace7ad2302 Switch frame list implementation to std::map.
This reduces the complexity of insert and find (by timestamp) from linear to logarithmic, which has a big impact on large frame lists.

BUG=1726
TEST=trybots, vie_auto_test --automated
R=mikhal@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1561005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4127 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-29 07:41:48 +00:00
andrew@webrtc.org
f791b1cebf Rename voice_engine_core -> voice_engine and move targets to voice_engine.gyp.
R=kjellander@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1574004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4126 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-29 00:38:02 +00:00
marpan@webrtc.org
a6ae644e52 Add comment about test_packet_masks_metrics.
R=andrew@webrtc.org, kjellander@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1577004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4124 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-28 17:42:12 +00:00
elham@webrtc.org
fe6a75e50e Updated WebRTC version to 3.32
TBR=wu@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1576004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4122 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-28 17:04:56 +00:00
mflodman@webrtc.org
a066cbf37c Don't return an estimated receive BW for channels not receiving video.
BUG=1834
TEST=ViE RTP autotest
R=stefan@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1572004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4121 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-28 15:00:15 +00:00
pbos@webrtc.org
4079c31c0a Include gflags with "gflags/gflags.h" instead of <>
BUG=
R=mflodman@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1551004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4120 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-28 10:38:11 +00:00
pbos@webrtc.org
8c34ceeef1 Include "gtest/gtest.h", not by full path, on WEBRTC_ANDROID_PLATFORM_BUILD
BUG=
TBR=andrew@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1571004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4119 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-28 09:24:03 +00:00
stefan@webrtc.org
3496ef1087 Improve vie_autotest_rtp_rtcp by reenabling important tests and reducing flakiness.
R=mflodman@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1567004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4118 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-28 08:36:02 +00:00
pbos@webrtc.org
15c1c61e2c Include files from webrtc/.. paths in audio_conference_mixer/
BUG=1662
R=andrew@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1565004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4117 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-28 08:13:20 +00:00
pbos@webrtc.org
7fad4b8c9f Include files from webrtc/.. paths in audio_processing/
BUG=1662
R=andrew@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1559004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4116 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-28 08:11:59 +00:00