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 12 #ifndef WEBRTC_MODULES_VIDEO_CODING_CODECS_H264_INCLUDE_H264_H_ 13 #define WEBRTC_MODULES_VIDEO_CODING_CODECS_H264_INCLUDE_H264_H_ 14 15 #if defined(WEBRTC_IOS) || defined(WEBRTC_MAC) 16 17 #include <Availability.h> 18 #if (defined(__IPHONE_8_0) && \ 19 __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_8_0) || \ 20 (defined(__MAC_10_8) && __MAC_OS_X_VERSION_MAX_ALLOWED >= __MAC_10_8) 21 #define WEBRTC_VIDEO_TOOLBOX_SUPPORTED 1 22 #endif 23 24 #endif // defined(WEBRTC_IOS) || defined(WEBRTC_MAC) 25 26 #include "webrtc/modules/video_coding/include/video_codec_interface.h" 27 28 namespace webrtc { 29 30 class H264Encoder : public VideoEncoder { 31 public: 32 static H264Encoder* Create(); 33 static bool IsSupported(); 34 35 ~H264Encoder() override {} 36 }; 37 38 class H264Decoder : public VideoDecoder { 39 public: 40 static H264Decoder* Create(); 41 static bool IsSupported(); 42 43 ~H264Decoder() override {} 44 }; 45 46 } // namespace webrtc 47 48 #endif // WEBRTC_MODULES_VIDEO_CODING_CODECS_H264_INCLUDE_H264_H_ 49