| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
Contributed by self@brendanlong.com
BUG=313601
Review URL: https://codereview.chromium.org/85693006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@237438 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change modifies the FFmpeg demuxer to recognize text
streams embedded in the source media (Webm). Text decoder
and text renderer filters have been added to the pipeline,
to process the text frames as they are pulled downstream.
BUG=230708
Review URL: https://codereview.chromium.org/23702007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@236660 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Pull latest version from upstream. This had to be broken up across several
changes. The first has the commit message:
https://codereview.chromium.org/55493002/
Remove AVX code until we update the gyp files:
https://codereview.chromium.org/48903015/
libmkv has moved to third_party/libmkv:
https://codereview.chromium.org/54373014/
media/webm/chromeos/webm_encoder.cc and
media/webm/chromeon/ebml_writer.cc pull from this location
as well and needs to be updated.
The last roll attempt failed because we introduced a new textrel.
Fixed upstream and cherry-picked here:
https://codereview.chromium.org/49023003
R=fischman@chromium.org, tomfinegan@chromium.org, fischman, tomfinegan
Review URL: https://codereview.chromium.org/57063005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@232721 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It introduced a new textrel: vp9_loop_filter_horizontal_edge_mmx
> Update libvpx
>
> Pull latest version from upstream. This had to be broken up across several
> changes. The first has the commit message:
> https://codereview.chromium.org/55493002/
>
> Remove AVX code until we update the gyp files:
> https://codereview.chromium.org/48903015/
>
> libmkv has moved to third_party/libmkv:
> https://codereview.chromium.org/54373014/
> media/webm/chromeos/webm_encoder.cc and
> media/webm/chromeon/ebml_writer.cc pull from this location
> as well and needs to be updated.
>
> R=fischman@chromium.org, tomfinegan@chromium.org
>
> Review URL: https://codereview.chromium.org/54333009
TBR=johannkoenig@chromium.org
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@232532 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Pull latest version from upstream. This had to be broken up across several
changes. The first has the commit message:
https://codereview.chromium.org/55493002/
Remove AVX code until we update the gyp files:
https://codereview.chromium.org/48903015/
libmkv has moved to third_party/libmkv:
https://codereview.chromium.org/54373014/
media/webm/chromeos/webm_encoder.cc and
media/webm/chromeon/ebml_writer.cc pull from this location
as well and needs to be updated.
R=fischman@chromium.org, tomfinegan@chromium.org
Review URL: https://codereview.chromium.org/54333009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@232493 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
Found by clang's new -Wunused-const-variable.
BUG=290204
R=akalin@chromium.org, jamesr@chromium.org, koz@chromium.org, piman@chromium.org, sergeyu@chromium.org, thestig@chromium.org, vitalybuka@chromium.org
TBR=cpu, dmichael, joi, xhwang
Review URL: https://codereview.chromium.org/24579003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@225281 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
Add parsing support for the FrameRate element, and avoid the confusing
situation where a WebM file plays back in a standard video element, but
is unplayable when using MSE.
Review URL: https://chromiumcodereview.appspot.com/23532051
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@222613 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Matroska's specification of Opus has been standardized here:
http://wiki.xiph.org/MatroskaOpus. This CL adds support for the
new Matroska elements related to Opus and enables Opus playback
in WebM files through Media Source API. It also adds support for
end trimming.
This is a first CL in a sequence of CLs that will attempt to add
various features towards fully functional working of Opus in WebM
(both media source and video tag).
BUG=
Review URL: https://chromiumcodereview.appspot.com/23014009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@221574 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Changes various NeedKeyCB instances to use std::vector<uint8> instead
of a scoped_ptr<uint8[]> and a size parameter.
TEST=All tests still pass.
Review URL: https://chromiumcodereview.appspot.com/23072043
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@219575 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Reported externally here:
http://www.viva64.com/en/b/0205/
Relevant C++ spec:
The value of E1 << E2 is E1 left-shifted E2 bit positions; vacated bits
are zero-filled. If E1 has an unsigned type, the value of the result is
E1 × 2E^2, reduced modulo one more than the maximum value representable
in the result type. Otherwise, if E1 has a signed type and non-negative
value, and E1×2E^2 is representable in the result type, then that is the
resulting value; otherwise, the behavior is undefined.
BUG=271530
TEST=media_unittests
Review URL: https://chromiumcodereview.appspot.com/22950002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@217307 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=none
TEST=No functionality change.
Review URL: https://chromiumcodereview.appspot.com/21536004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@215234 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
SourceBuffer.appendWindowEnd.
BUG=229408
TEST=ChunkDemuxerTest.AppendWindow
Review URL: https://chromiumcodereview.appspot.com/20123002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@213982 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Refactored DecoderBuffer to use unix_hacker_style naming.
DecoderBuffer went from having pure virtual methods to having
concrete implementations. However, the style of the method name
remained in UpperCamelCase. This patch renames the methods to fit
with the unix_hacker_style that is used for concrete implementations.
BUG=251986
Review URL: https://chromiumcodereview.appspot.com/17408005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@212375 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The inband text track support is not ready to be exposed by default. This
patch adds a flag for enabling this feature and fixes the code to ignore
text tracks when the flag is not set.
BUG=230708
TEST=WebMTracksParserTest.TestIgnoringTextTracks
Review URL: https://chromiumcodereview.appspot.com/18104002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@209320 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
This is the result of running the rewrite_scoped_ptr_ctor_null tool
across all files built on Linux in the media/ directory.
BUG=173286
Review URL: https://chromiumcodereview.appspot.com/16705009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@205884 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
BUG=247723
TEST=none
TBR=ben@chromium.org
Review URL: https://chromiumcodereview.appspot.com/16684003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@205436 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: https://chromiumcodereview.appspot.com/15659006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@202497 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
The Media Source (WebM) parser now detects the presence of inband text
tracks. As frames of inband text (WebVTT cues) are found in the
network stream, they are pushed up the media stack.
BUG=230708
Review URL: https://chromiumcodereview.appspot.com/13419002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@201716 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adding support for playback of VP8 videos with Alpha Channel through the
Media Source API.
BUG=242357
TEST=VP8 Alpha Streams play properly via Media Source
Review URL: https://chromiumcodereview.appspot.com/15342004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@201496 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The Track header of a WebM file contains (among other items)
a track name and track language. We do not currently use
this information. However, it is needed to construct WebVTT
inband text tracks. The WebM tracks parser has been modified
to provide this information to its clients.
(An earlier version of this commit failed to compile on some
systems. The problem was that some integer constants needed
to be qualified with a suffix to specify an extra precision
integer type.)
BUG=230708
Review URL: https://chromiumcodereview.appspot.com/15205002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@200562 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
> Parse WebM track name and language
>
> The Track header of a WebM file contains (among other items)
> a track name and track language. We do not currently use
> this information. However, it is needed to contruct WebVTT
> inband text tracks. The WebM tracks parser has been
> modified to provide this information to its clients.
>
> BUG=230708
>
> Review URL: https://chromiumcodereview.appspot.com/14977006
TBR=matthewjheaney@chromium.org
Review URL: https://codereview.chromium.org/14959015
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@200323 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The Track header of a WebM file contains (among other items)
a track name and track language. We do not currently use
this information. However, it is needed to contruct WebVTT
inband text tracks. The WebM tracks parser has been
modified to provide this information to its clients.
BUG=230708
Review URL: https://chromiumcodereview.appspot.com/14977006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@200308 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
In r174057, enne@ added support for implicit testing to scoped_ptr<>. Removes
these in media/.
BUG=232084
Review URL: https://chromiumcodereview.appspot.com/13870018
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@195875 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=227416
TEST=WebMParserTest.ZeroPaddedStrings
Review URL: https://codereview.chromium.org/14299005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@194607 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch was generated by running the empty_string clang tool
across the Chromium Linux compilation database. Implicitly or
explicitly constructing std::string() with a "" argument is
inefficient as the caller needs to emit extra instructions to
pass an argument, and the constructor needlessly copies a byte
into internal storage. Rewriting these instances to simply call
the default constructor appears to save ~14-18 kilobytes on an
optimized release build.
BUG=none
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=193020
Review URL: https://codereview.chromium.org/13145003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@193040 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit e59558b78e8c6a1b0bd916a724724b638c3c91b6.
Revert "Fix build after r193020."
This reverts commit 558a35897f6b3ffbcaefde927c1f150b815d140a.
Revert "Really fix build after r193020."
This reverts commit e3748a79b523a8d365d4a33ef986eebb4186fa78.
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@193030 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch was generated by running the empty_string clang tool
across the Chromium Linux compilation database. Implicitly or
explicitly constructing std::string() with a "" argument is
inefficient as the caller needs to emit extra instructions to
pass an argument, and the constructor needlessly copies a byte
into internal storage. Rewriting these instances to simply call
the default constructor appears to save ~14-18 kilobytes on an
optimized release build.
BUG=none
Review URL: https://codereview.chromium.org/13145003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@193020 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
This changelist was automatically generated using a clang tool.
BUG=171111
Review URL: https://codereview.chromium.org/13752002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192779 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: https://chromiumcodereview.appspot.com/13652011
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192672 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Missing <vector> include in picture.h.
map<> requires a complete type for the second template argument.
BUG=178409
R=reveman@chromium.org,matthewjheaney@chromium.org,acolwell@chromium.org
Review URL: https://codereview.chromium.org/12950003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@189777 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
WebMStreamParser.
BUG=108756
TEST=All existing ChunkDemuxer & PipelineIntegrationTests still pass.
Review URL: https://chromiumcodereview.appspot.com/12674009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@189461 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Note: Only looking for comments on direction. A lot of work
still needs to be done before committing.
- Added support to FFmpegDemuxer to decrypt encrypted WebM streams.
- Added support to FFmpegDemuxer to handle the needKey and keyAdded
messages.
- Added support to WebMediaPlayerImpl to handle the needKey and
keyAdded messages.
BUG=123426
TEST=All media_unittests pass
Review URL: https://chromiumcodereview.appspot.com/10829470
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@188228 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
This is a follow-up CL of r187702.
BUG=177543
TEST=All tests pass.
Review URL: https://chromiumcodereview.appspot.com/12638030
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@188072 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I guess the reasons we didn't make VideoDecoderConfig copyable is:
1) VideoDecoderConfig contains extra data, which needs deep copy.
2) We don't have a lot of use cases that needs to copy VideoDecoderConfig. If we
do, we can use CopyFrom().
For (1), the extra data is typically small (< 100 bytes). Copying extra data
should not have any performance impact.
For (2), we do have legitimate cases where we need to copy VideoDecoderConfig
implicitly:
- Put VideoDecoderConfig in STL container, e.g. in SourceBufferStream.
- Bind VideoDecoderCongfig in a callback, e.g. in DecryptingVideoDecoder.
This CL uses std::vector<uint8> for the extra data and solves the deep copy
issue. Then it makes VideoDecoderConfig copyable and makes several use cases of
VideoDecoderConfig simpler.
BUG=177543
TEST=All tests pass.
Review URL: https://chromiumcodereview.appspot.com/12637017
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@187702 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
TBR=sky
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@184344 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: https://codereview.chromium.org/12217101
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@181640 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=167152
Review URL: https://chromiumcodereview.appspot.com/11635058
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@181410 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
| |
This updates headers that forward-declare it and a few random places to use the namespace explicitly. There us a using declaration in file_path.h that makes the rest compile, which we can do in future passes.
Review URL: https://codereview.chromium.org/12163003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@180245 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
media::DataBuffer.
It was never a good idea in the first place.
Our usage is exclusively with DecoderBuffers or DataBuffers. There's never a case where we benefit from using Buffer as a base class aside from hiding GetWriteableData(), however it's not a compelling enough reason to keep Buffer around.
BUG=169614
TBR=dmichael
Review URL: https://codereview.chromium.org/11880008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@176956 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: https://chromiumcodereview.appspot.com/11777018
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@175551 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
R=dalecurtis
TBR=darin,garykac
BUG=165264
Review URL: https://codereview.chromium.org/11791006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@175348 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
FFmpeg now outputs float for some audio decoders. Unfortunately our pipeline
doesn't support float between the FFmpegAudioDecoder and AudioRenderer at
present. As such, we need to convert the data into an integer format first.
As a byproduct of this, AMR support for ChromeOS is finally fixed and adding
support for PCM float is trivial.
In summary this patch adds:
- A SampleFormat property to AudioDecoderConfig.
- AVSampleFormat <-> SampleFormat converters in FFmpegCommon.
- Fixes ChromeOS AMR playback.
- Finally plumbs pcm_f32le support (enabled in FFmpeg long ago).
- Add decoder support for float planar and float interleaved playback.
BUG=109085, 158187, 167069
TEST=unittests, layout tests, and demos all pass under tooling without issue.
Review URL: https://codereview.chromium.org/11280301
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@175180 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
TBR=ddorwin@chromium.org
Review URL: https://chromiumcodereview.appspot.com/11747015
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@175054 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
BUG=167152
TEST=WebMClusterParserTest.IgnoredTracks
Review URL: https://chromiumcodereview.appspot.com/11642056
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@174625 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
BUG=166990
TEST=Covered by existing ChunkDemuxer tests.
Review URL: https://chromiumcodereview.appspot.com/11618050
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@174415 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
chrome:media-internals.
BUG=164673
Review URL: https://chromiumcodereview.appspot.com/11471006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171936 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
FFmpegGlue is a filthy den of sin:
- Singleton.
- Unchecked initialization.
- Mixed signed, unsigned usage.
- Requires custom FFmpeg patches.
- Hacks IO through http://0xDEADBEEF
Switching to AVIO will absolve FFmpegGlue of its sins and has the added bonus
of allowing us to tweak the buffer sizes used for read requests over the wire.
AVIO works through a special AVIOContext created through avio_alloc_context()
which is attached to the AVFormatContext used for demuxing. The AVIO context
is initialized with read and seek methods identical to the existing URLProtocol
structures.
During avformat_open_input() we tell FFmpeg to use our AVIO context by
passing NULL in for the filename parameter. FFmpeg will now redirect all reads
and seeks through our AVIO context.
The new FFmpegGlue also handles all destruction cases which can occur after
an OpenContext(), allowing us to unify the slightly disparate shutdown paths
used by FFmpegDemuxer and AudioFileReader.
BUG=118986, 146529
TEST=unit tests under tooling. layout tests. manual playback pass.
Review URL: https://chromiumcodereview.appspot.com/10912080
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@165502 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The "type" information could help the CDM to parse the initialization data correctly.
See for details: https://www.w3.org/Bugs/Public/show_bug.cgi?id=19096
TBR=viettrungluu@chromium.org
BUG=none
TEST=none
Review URL: https://chromiumcodereview.appspot.com/11313016
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@164522 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
The encrypted WebM spec RFC changed to treat IVs as raw data.
BUG=155641
TEST=All media_unittests pass.
TBR=sky
Review URL: https://chromiumcodereview.appspot.com/11139008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162012 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
BUG=123421
TEST=updated media_unittest
Review URL: https://chromiumcodereview.appspot.com/11088047
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@161465 0039d316-1c4b-4281-b951-d872f2087c98
|