OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 // | 4 // |
5 // This file contains an implementation of VideoDecoderAccelerator | 5 // This file contains an implementation of VideoDecoderAccelerator |
6 // that utilizes the hardware video decoder present on the Exynos SoC. | 6 // that utilizes the hardware video decoder present on the Exynos SoC. |
7 | 7 |
8 #ifndef CONTENT_COMMON_GPU_MEDIA_EXYNOS_VIDEO_DECODE_ACCELERATOR_H_ | 8 #ifndef CONTENT_COMMON_GPU_MEDIA_EXYNOS_VIDEO_DECODE_ACCELERATOR_H_ |
9 #define CONTENT_COMMON_GPU_MEDIA_EXYNOS_VIDEO_DECODE_ACCELERATOR_H_ | 9 #define CONTENT_COMMON_GPU_MEDIA_EXYNOS_VIDEO_DECODE_ACCELERATOR_H_ |
10 | 10 |
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
78 // Do any necessary initialization before the sandbox is enabled. | 78 // Do any necessary initialization before the sandbox is enabled. |
79 static void PreSandboxInitialization(); | 79 static void PreSandboxInitialization(); |
80 | 80 |
81 // Lazily initialize static data after sandbox is enabled. Return false on | 81 // Lazily initialize static data after sandbox is enabled. Return false on |
82 // init failure. | 82 // init failure. |
83 static bool PostSandboxInitialization(); | 83 static bool PostSandboxInitialization(); |
84 | 84 |
85 private: | 85 private: |
86 // These are rather subjectively tuned. | 86 // These are rather subjectively tuned. |
87 enum { | 87 enum { |
| 88 kInitialFramerate = 30, |
88 kMfcInputBufferCount = 8, | 89 kMfcInputBufferCount = 8, |
89 // TODO(posciak): determine MFC input buffer size based on level limits. | 90 // TODO(posciak): determine MFC input buffer size based on level limits. |
90 // See http://crbug.com/255116. | 91 // See http://crbug.com/255116. |
91 kMfcInputBufferMaxSize = 1024 * 1024, | 92 kMfcInputBufferMaxSize = 1024 * 1024, |
92 kGscInputBufferCount = 4, | 93 kGscInputBufferCount = 4, |
93 // Number of output buffers to use for each VDA stage above what's required | 94 // Number of output buffers to use for each VDA stage above what's required |
94 // by the decoder (e.g. DPB size, in H264). | 95 // by the decoder (e.g. DPB size, in H264). |
95 kDpbOutputBufferExtraCount = 3, | 96 kDpbOutputBufferExtraCount = 3, |
96 }; | 97 }; |
97 | 98 |
(...skipping 352 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
450 | 451 |
451 // The codec we'll be decoding for. | 452 // The codec we'll be decoding for. |
452 media::VideoCodecProfile video_profile_; | 453 media::VideoCodecProfile video_profile_; |
453 | 454 |
454 DISALLOW_COPY_AND_ASSIGN(ExynosVideoDecodeAccelerator); | 455 DISALLOW_COPY_AND_ASSIGN(ExynosVideoDecodeAccelerator); |
455 }; | 456 }; |
456 | 457 |
457 } // namespace content | 458 } // namespace content |
458 | 459 |
459 #endif // CONTENT_COMMON_GPU_MEDIA_EXYNOS_VIDEO_DECODE_ACCELERATOR_H_ | 460 #endif // CONTENT_COMMON_GPU_MEDIA_EXYNOS_VIDEO_DECODE_ACCELERATOR_H_ |
OLD | NEW |