我是Android开发人员,最近我开始研究基于firebase云功能和firestore数据库的项目.我正在编写一个HTTP触发器函数,该函数将接受两个参数并将该参数值与firestore数据值进行比较,如果值匹配,则返回true或其他错误的响应.
重复问题:
是的,有一些问题已经被问到我的相关但是它们并不相似:
Firebase文档说:
Cloud Firestore支持创建,更新,删除和写入事件
我想从HTTP触发器读取firestore值.
我尝试过的:
exports.userData = functions.https.onRequest((req, res) => {
const user = req.query.user;
const pass = req.query.pass;
});
Run Code Online (Sandbox Code Playgroud)
我几乎坚持这一部分.任何帮助将不胜感激.谢谢
PS我对JS/TypeScript/NodeJS的知识非常有限
android node.js firebase google-cloud-functions google-cloud-firestore
如果我们需要初始化Admob SDK,那么我们应该在MainActivity.class初始化它一次,还是需要在Admob广告所在的每个活动中初始化它?
根据此链接:https://firebase.google.com/docs/admob/android/quick-start "要在应用启动时初始化Google移动广告SDK,请在onCreate()方法中调用MobileAds.initialize() MainActivity类."
那么,对于不同活动中的每个广告,我们应该只调用一次吗?
我有一个水平 UICollectionView 工作正常。但我想在不需要滚动时将单元格居中。IE
图形示例:
到目前为止我已经尝试过:
class ViewController: UIViewController, UICollectionViewDelegate, UICollectionViewDataSource, UICollectionViewDelegateFlowLayout {
var dataList:[String] = ["icon_rotate", "icon_rotate2", "icon_rotate3", "icon_rotate4", "icon_rotate5", "icon_rotate6"]
override func viewDidLoad() {
super.viewDidLoad()
//other stuff
}
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumLineSpacingForSectionAt section: Int) -> CGFloat {
return (UIDevice.current.userInterfaceIdiom == .pad) ? 20.0 : 10.0
}
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumInteritemSpacingForSectionAt section: Int) -> CGFloat {
return (UIDevice.current.userInterfaceIdiom == .pad) …Run Code Online (Sandbox Code Playgroud) 我正在我的服务器上测试 FFMPEG。我正在尝试将 H265 10 位转码为 H264 8 位,以支持在所有主要网络浏览器上播放视频。
1 . 这是第一条命令:
ffmpeg -i 4K.ts -c:a aac -c:v h264 -crf 19 -preset ultrafast out.mp4
Run Code Online (Sandbox Code Playgroud)
结果:视频只能在 VLC 媒体播放器上播放。无法在任何浏览器上播放
2 . 然后我尝试使用这个命令:
ffmpeg -i 4K.ts -c:a aac -c:v h264 -crf 19 -profile:v main -preset ultrafast -vf "format=yuv420p" out.mp4
Run Code Online (Sandbox Code Playgroud)
结果:视频可以在任何地方播放,但颜色损失很大。
3 . 然后我尝试了另一个命令:
ffmpeg -i 4K.ts -c:a aac -c:v h264 -crf 19 -profile:v main -preset ultrafast -vf "format=yuvj420p" out.mp4
Run Code Online (Sandbox Code Playgroud)
结果:视频可以在任何地方播放,但颜色范围增加
我不知道我是否遗漏了任何内容,或者我是否应该完全禁止用户上传 10 位深度的视频。任何帮助将不胜感激
如果有人对我正在测试的视频感兴趣,请点击以下链接:https://drive.google.com/uc?export =download&id=1pGsnknkoIDRPKrW-YPFS7U31J09PeM4N
我通过许多谷歌结果得出了这些命令,其中一些是:
可能是最陈词滥调的问题之一,但问题是:所以我有一个 Ubuntu 服务器作为一台独立的机器运行,仅用于处理 FFMPEG 作业。它有 4 个 vCPU、4GB RAM、80GB 存储。我目前正在使用此脚本将视频转换为 HLS 播放列表:https://gist.github.com/maitrungduc1410/9c640c61a7871390843af00ae1d8758e这适用于所有视频,包括从 iPhone 录制的 4K 视频。但是,我正在尝试添加水印,因此我更改了该脚本的第 106 行
从:
cmd+=" ${static_params} -vf scale=w=${widthParam}:h=${heightParam}"
Run Code Online (Sandbox Code Playgroud)
到:
cmd+=" ${static_params} -filter_complex [1]colorchannelmixer=aa=0.5,scale=iw*0.1:-1[wm];[0][wm]overlay=W-w-5:H-h-5[out];[out]scale=w=${widthParam}:h=${heightParam}[final] -map [final]"
Run Code Online (Sandbox Code Playgroud)
现在,这在 Youtube 或其他来源的视频中完美运行,但当我尝试使用 iPhone 上的 4K 视频时,RAM 使用量在不到一分钟的时间内从 250MB 增加到 3.8GB,并使整个过程崩溃。所以我寻找了一些类似的问题:
我知道 FFMPEG 需要大量内存消耗,但我不确定在不将流保留在内存中而是实时释放任何内存分配的情况下处理视频的确切方法是什么。即使我们决定在没有水印的情况下工作,它仍然需要大约 1.8GB RAM 来处理 5 秒的 4K 视频,这会产生一个风险,如果我们的用户上传更长的视频,最终会导致服务器崩溃。我考虑过ulimit,但这似乎确实限制了 FFMPEG,而不是编写改进的命令。让我知道如何解决这个问题。谢谢