mojo_decoder_buffer_converter.cc: Check failed: !read_cb_ |
||
Issue descriptionMCVD hits this DCHECK at mojo_decoder_buffer_converter.cc:99 for large resolution videos. Stack trace attached.
,
Aug 3 2017
It looks like there are two reads going on at once, which MojoDecodeBufferReader does not support. That said, we separately also want to reduce the size of the ring buffer, and provide a way to grow it if we need more space. Some options: - Do not call remote_video_decoder_->Decode() until the first block of data has been written. This serializes the calls on the client side. - Do not call remote_video_decoder_->Decode() until all of the data has been written. This requires that we have a way to resize (replace) the ring buffer, but also eliminates the need to have an async read/write implementation. We probably want both; then we could grow to some maximum size and after that send data in chunks.
,
Sep 29 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/a67ec70f90708b3b7f14e2b90a81e9176a5098fc commit a67ec70f90708b3b7f14e2b90a81e9176a5098fc Author: Dan Sanders <sandersd@chromium.org> Date: Fri Sep 29 18:00:31 2017 [media] Support concurrent buffers in MojoDecoderBufferConverter. This adds a queue to the write and read sides of MojoDecoderBufferConverter, allowing for multiple concurrent buffers to be processed. Writes are no longer guaranteed to fail as soon as the pipe is closed, since no write is attempted immediately. Since there is no error reporting mechanism on the write side, the only guarantee is that *eventually* writes will fail. Since MojoDecoderBufferConverter is not a primary communication channel, this isn't likely to cause complications. Bug: 751926 Change-Id: I11c985d8aba3acc8fba6453f5bcf22555334b5b0 Reviewed-on: https://chromium-review.googlesource.com/679735 Commit-Queue: Dan Sanders <sandersd@chromium.org> Reviewed-by: Ken Rockot <rockot@chromium.org> Reviewed-by: Xiaohan Wang <xhwang@chromium.org> Cr-Commit-Position: refs/heads/master@{#505420} [modify] https://crrev.com/a67ec70f90708b3b7f14e2b90a81e9176a5098fc/media/mojo/clients/mojo_decryptor_unittest.cc [modify] https://crrev.com/a67ec70f90708b3b7f14e2b90a81e9176a5098fc/media/mojo/common/mojo_decoder_buffer_converter.cc [modify] https://crrev.com/a67ec70f90708b3b7f14e2b90a81e9176a5098fc/media/mojo/common/mojo_decoder_buffer_converter.h [modify] https://crrev.com/a67ec70f90708b3b7f14e2b90a81e9176a5098fc/media/mojo/common/mojo_decoder_buffer_converter_unittest.cc [modify] https://crrev.com/a67ec70f90708b3b7f14e2b90a81e9176a5098fc/mojo/public/cpp/system/simple_watcher.h
,
Oct 9 2017
|
||
►
Sign in to add a comment |
||
Comment 1 by w...@chromium.org
, Aug 3 2017