tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

video_frame_buffer.h (2929B)


      1 /*
      2 *  Copyright (c) 2015 The WebRTC project authors. All Rights Reserved.
      3 *
      4 *  Use of this source code is governed by a BSD-style license
      5 *  that can be found in the LICENSE file in the root of the source
      6 *  tree. An additional intellectual property rights grant can be found
      7 *  in the file PATENTS.  All contributing project authors may
      8 *  be found in the AUTHORS file in the root of the source tree.
      9 */
     10 
     11 #ifndef COMMON_VIDEO_INCLUDE_VIDEO_FRAME_BUFFER_H_
     12 #define COMMON_VIDEO_INCLUDE_VIDEO_FRAME_BUFFER_H_
     13 
     14 #include <stdint.h>
     15 
     16 #include <functional>
     17 
     18 #include "api/scoped_refptr.h"
     19 #include "api/video/video_frame_buffer.h"
     20 
     21 namespace webrtc {
     22 
     23 scoped_refptr<I420BufferInterface> WrapI420Buffer(
     24    int width,
     25    int height,
     26    const uint8_t* y_plane,
     27    int y_stride,
     28    const uint8_t* u_plane,
     29    int u_stride,
     30    const uint8_t* v_plane,
     31    int v_stride,
     32    std::function<void()> no_longer_used);
     33 
     34 scoped_refptr<I422BufferInterface> WrapI422Buffer(
     35    int width,
     36    int height,
     37    const uint8_t* y_plane,
     38    int y_stride,
     39    const uint8_t* u_plane,
     40    int u_stride,
     41    const uint8_t* v_plane,
     42    int v_stride,
     43    std::function<void()> no_longer_used);
     44 
     45 scoped_refptr<I444BufferInterface> WrapI444Buffer(
     46    int width,
     47    int height,
     48    const uint8_t* y_plane,
     49    int y_stride,
     50    const uint8_t* u_plane,
     51    int u_stride,
     52    const uint8_t* v_plane,
     53    int v_stride,
     54    std::function<void()> no_longer_used);
     55 
     56 scoped_refptr<I420ABufferInterface> WrapI420ABuffer(
     57    int width,
     58    int height,
     59    const uint8_t* y_plane,
     60    int y_stride,
     61    const uint8_t* u_plane,
     62    int u_stride,
     63    const uint8_t* v_plane,
     64    int v_stride,
     65    const uint8_t* a_plane,
     66    int a_stride,
     67    std::function<void()> no_longer_used);
     68 
     69 scoped_refptr<PlanarYuvBuffer> WrapYuvBuffer(
     70    VideoFrameBuffer::Type type,
     71    int width,
     72    int height,
     73    const uint8_t* y_plane,
     74    int y_stride,
     75    const uint8_t* u_plane,
     76    int u_stride,
     77    const uint8_t* v_plane,
     78    int v_stride,
     79    std::function<void()> no_longer_used);
     80 
     81 scoped_refptr<I010BufferInterface> WrapI010Buffer(
     82    int width,
     83    int height,
     84    const uint16_t* y_plane,
     85    int y_stride,
     86    const uint16_t* u_plane,
     87    int u_stride,
     88    const uint16_t* v_plane,
     89    int v_stride,
     90    std::function<void()> no_longer_used);
     91 
     92 scoped_refptr<I210BufferInterface> WrapI210Buffer(
     93    int width,
     94    int height,
     95    const uint16_t* y_plane,
     96    int y_stride,
     97    const uint16_t* u_plane,
     98    int u_stride,
     99    const uint16_t* v_plane,
    100    int v_stride,
    101    std::function<void()> no_longer_used);
    102 
    103 scoped_refptr<I410BufferInterface> WrapI410Buffer(
    104    int width,
    105    int height,
    106    const uint16_t* y_plane,
    107    int y_stride,
    108    const uint16_t* u_plane,
    109    int u_stride,
    110    const uint16_t* v_plane,
    111    int v_stride,
    112    std::function<void()> no_longer_used);
    113 }  // namespace webrtc
    114 
    115 #endif  // COMMON_VIDEO_INCLUDE_VIDEO_FRAME_BUFFER_H_