FoxiGram/TMessagesProj/jni/voip/libtgvoip/video/VideoSource.cpp
instant992 8e79f2ee9c FoxiGram: Telegram client with built-in Xray VLESS proxy
Based on Nekogram. Key additions:
- Rebrand to FoxiGram (app name, APK name, applicationId com.foxigram.app)
- Embedded Xray (VLESS+Reality) proxy client via JNI libxray.so
- Bundled hidden one-tap proxies (LTE + WiFi), read-only in UI
- Auto-restore proxy on restart, rebind to active network (LTE/WiFi)
- Server credentials externalized to git-ignored XrayServers.java (+ template)
- libxray Go source included; compiled .so, keystore, google-services.json ignored
2026-06-08 16:41:07 +04:00

44 lines
984 B
C++
Executable file

//
// Created by Grishka on 10.08.2018.
//
#include "VideoSource.h"
#ifdef __ANDROID__
#include "../os/android/VideoSourceAndroid.h"
#elif defined(__APPLE__) && !defined(TARGET_OSX32)
#include "../os/darwin/VideoToolboxEncoderSource.h"
#endif
using namespace tgvoip;
using namespace tgvoip::video;
std::shared_ptr<VideoSource> VideoSource::Create(){
#ifdef __ANDROID__
//return std::make_shared<VideoSourceAndroid>();
return nullptr;
#endif
return nullptr;
}
void VideoSource::SetCallback(std::function<void(const Buffer &, uint32_t, uint32_t)> callback){
this->callback=callback;
}
bool VideoSource::Failed(){
return failed;
}
std::string VideoSource::GetErrorDescription(){
return error;
}
std::vector<uint32_t> VideoSource::GetAvailableEncoders(){
#ifdef __ANDROID__
return VideoSourceAndroid::availableEncoders;
#elif defined(__APPLE__) && !defined(TARGET_OSX32)
return VideoToolboxEncoderSource::GetAvailableEncoders();
#endif
return std::vector<uint32_t>();
}