146d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)// Copyright (c) 2014 The Chromium Authors. All rights reserved.
246d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
346d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)// found in the LICENSE file.
446d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)
546d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)#ifndef PPAPI_PROXY_VIDEO_DECODER_CONSTANTS_H_
646d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)#define PPAPI_PROXY_VIDEO_DECODER_CONSTANTS_H_
746d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)
846d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)namespace ppapi {
946d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)namespace proxy {
1046d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)
1146d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)// These constants are shared by the video decoder resource and host.
1246d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)enum {
1346d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)  // Maximum number of concurrent decodes which can be pending.
1446d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)  kMaximumPendingDecodes = 8,
1546d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)
1646d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)  // Minimum size of shared-memory buffers (100 KB). Make them large since we
1746d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)  // try to reuse them.
1846d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)  kMinimumBitstreamBufferSize = 100 << 10,
1946d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)
2046d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)  // Maximum size of shared-memory buffers (4 MB). This should be enough even
2146d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)  // for 4K video at reasonable compression levels.
2246d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)  kMaximumBitstreamBufferSize = 4 << 20
2346d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)};
2446d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)
2546d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)}  // namespace proxy
2646d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)}  // namespace ppapi
2746d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)
2846d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)#endif  // PPAPI_PROXY_VIDEO_DECODER_CONSTANTS_H_
29