我对gstreamer的世界很新.我想知道,是否可以通过gstreamer流式传输网络摄像头?到目前为止,我见过的唯一一个包是linux.v4l2(适用于Linux的视频).还有一个Windows网络摄像头包吗?什么是正确的python语法?
DJ
这不是一个编程问题,而是我正在制作的网站.
我被要求为一个电视频道创建一个网站,该网站将为本地团体提供流媒体视频(它不是色情片),假设该网站正在播放8小时高清视频重复3次(不确定这是否会对如果重复或新的带宽,并由1000人观看,这将是多少带宽?
那么,1000人观看24小时高清视频的带宽是多少?
此外,应该在哪里托管这样的东西?该频道将具有光纤互联网连接,是否更好地获得自己的服务器或使用网络托管?
很抱歉这个问题很长,但我在线搜索并没有找到任何好的答案.
我有这个代码:
private void SaveStreamToFile(string fileFullPath, Stream stream)
{
if (stream.Length == 0) return;
// Create a FileStream object to write a stream to a file
using (FileStream fileStream = System.IO.File.Create(fileFullPath, (int)stream.Length))
{
// Fill the bytes[] array with the stream data
byte[] bytesInStream = new byte[stream.Length];
stream.Read(bytesInStream, 0, (int)bytesInStream.Length);
// Use FileStream object to write to the specified file
fileStream.Write(bytesInStream, 0, bytesInStream.Length);
}
}
Run Code Online (Sandbox Code Playgroud)
我把这个方法叫做SaveStreamToFile(@"f:\ Test.txt",memoryStream);
我收到错误:不允许文件操作.访问路径'f:\ Test.txt'被拒绝.
我可以apk不下载安装文件吗?该apk文件位于服务器上.我尝试了下面的代码,但它不起作用:
public static void InstallProgram(Uri uri, Context context){
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(uri,"application/vnd.android.package-archive");
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intent);
}
Run Code Online (Sandbox Code Playgroud)
哪里uri是http://192.168.43.1:6789/mobile_base/test.apk.它返回一个错误:
android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.VIEW dat=http://192.168.43.1:6789/mobile_base/test.apk typ=application/vnd.android.package-archive flg=0x10000000 }
Run Code Online (Sandbox Code Playgroud)
如果你有一些想法,你可以与我分享.谢谢.
我有一个简单的 Jackson 解析器,它应该返回我的值,但我只得到null值。任何想法将不胜感激?
示例 Json 数据:
{"a":"ab","b":"cd","c":"cd","d":"de","e":"ef","f":"fg"}
Run Code Online (Sandbox Code Playgroud)
代码:
var jfactory = new JsonFactory()
var jParser : JsonParser = jfactory.createJsonParser(new File(outputDir + "/" + "myDic.json"))
while (jParser.nextToken() != JsonToken.END_OBJECT) {
var k = jParser.getCurrentName();
jParser.nextToken();
var v = jParser.getText();
println(k +"---" + v)
phoneDict.put(k,v);
i = i + 1;
println(phoneDict.size)
var t = readLine("Dict Done ?")
}
Run Code Online (Sandbox Code Playgroud)
输出:
null---null
1
Dict Done ?
null---null
1
Dict Done ?
null---null
1
Dict Done ?
null---null
1
Dict Done ?
Run Code Online (Sandbox Code Playgroud) 我正在尝试运行以下的FlumeEvent示例
import org.apache.spark.SparkConf
import org.apache.spark.storage.StorageLevel
import org.apache.spark.streaming._
import org.apache.spark.streaming.flume._
import org.apache.spark.util.IntParam
import org.apache.spark.streaming.flume.FlumeUtils
object FlumeEventCount {
def main(args: Array[String]) {
val batchInterval = Milliseconds(2000)
// Create the context and set the batch size
val sparkConf = new SparkConf().setAppName("FlumeEventCount")
.set("spark.cleaner.ttl","3")
val ssc = new StreamingContext(sparkConf, batchInterval)
// Create a flume stream
var stream = FlumeUtils.createStream(ssc, "192.168.1.5",3564, StorageLevel.MEMORY_ONLY_SER_2)
// Print out the count of events received from this server in each batch
stream.count().map(cnt => "Received flume events." + cnt ).print()
stream.count.print()
stream.print() …Run Code Online (Sandbox Code Playgroud) 我对 javascript/node.js 还很陌生,我正在尝试让一个非常基本的场景工作:连接到 MongoDB,将 JSON 响应转换为 CSV,将其写入文件。我试过如下
fs = require('fs');
var MongoClient = require('mongodb').MongoClient;
var Db = require('mongodb').Db;
var Server = require('mongodb').Server;
var Json2csvStream = require('json2csv-stream');
var Stream = require('stream');
var JSONStream = require('JSONStream');
var es = require('event-stream');
var csv = require('csv');
var fields = ['execAmendTime', 'execTime', 'execType', 'lastMkt', 'manualExecFlag', 'orderId', 'riskTrade', 'rootOrdId', 'salesCommissionRate', 'salesCommissionType', 'theoPov20Px',
'theoPov20BL', 'tradeFlags', 'tradeNotes', 'transactTime', 'version', 'book.bookName', 'businessUnit', 'commissionRate', 'commissionSource', 'commissionType', 'counterBook.bookName',
'counterParty.name', 'createTime', 'currency', 'direction', 'execQuantity', 'fxRate','orderQuantity', 'positionTrader.name', 'price', 'primaryTrader.name','rootSystem', 'source',
'sectorGicsLevel1', 'salesTrader.name', 'tradedPrice', …Run Code Online (Sandbox Code Playgroud) 所以现在有一段时间我正在考虑创建某种视频流应用程序(客户端和服务器).进行一些小搜索我总是得到流媒体应用程序,而不是如何编写代码.
我知道它应该是......捕获数据,打包,发送到服务器,然后服务器将广播给任何连接的人......对吗?
那么我应该从哪里开始...我应该研究套接字......我应该研究更多关于如何实现UDT或TCP协议......还是那两个组合?
就我而言,我让Django 1.11服务器充当代理。当您从浏览器中单击“下载”时,它将向django代理发送请求,该代理从另一台服务器下载文件并进行处理,然后它们必须“发送”到浏览器以允许用户下载它们。我的代理服务器逐块下载并处理文件。如何准备好将块发送到浏览器,以便用户最终下载单个文件?
实际上,我必须让您下载尚未准备好的文件(例如流)。
def my_download(self, res)
# some code
file_handle = open(local_path, 'wb', self.chunk_size)
for chunk in res.iter_content(self.chunk_size):
i = i+1
print("index: ", i, "/", chunks)
if i > chunks-1:
is_last = True
# some code on the chunk
# Here, instead of saving the chunk locally, I would like to allow it to download it directly.
file_handle.write(chunk)
file_handle.close()
return True
Run Code Online (Sandbox Code Playgroud)
预先谢谢您的问候。
我想使用拦截器来管理当前与服务器的活动连接数。除了常见的 JSON 端点之外,我的 API 还提供流字节的端点。我实现了一个会话管理器,用于跟踪会话计数、一个限制拦截器和几个 API 端点。下面是一些示例代码。
常见的 JSON 端点与拦截器运行良好。然而,流端点实际上调用了拦截器的preHandle方法两次,但afterCompletion只调用了一次。第二次调用preHandle发生在第一个调用的响应计算完成之后。当我从拦截器中删除会话管理器时,这种行为不再发生。
最小工作示例:
配置:
@Configuration
@RequiredArgsConstructor
public class AppConfig implements WebMvcConfigurer {
private final Interceptor interceptor;
@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(this.interceptor).addPathPatterns("/numbers", "/numbers/*");
}
}
Run Code Online (Sandbox Code Playgroud)
拦截器:
@Component
@RequiredArgsConstructor
@Slf4j
public class Interceptor implements HandlerInterceptor {
private final SessionManager sessionManager;
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) {
log.info("Pre-handle {}", this.hashCode());
return this.sessionManager.accept();
}
@Override
public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception …Run Code Online (Sandbox Code Playgroud) 如何使用Indy HTTP Server实现以下功能.客户端访问http:// server_name:port,服务器返回视频流,该视频流存储在http:// server_name_video:port/video1.mpg
我想要一个网络摄像头来录制和一个屏幕来显示"实时"流,延迟几秒钟.
使用案例:需要记录一个表演并几乎现场显示,几秒钟的延迟,以便快速审查.性能最多需要几秒钟,需要立即显示(查看)而无需任何手动点击.有很多尝试,手动点击会使这个过程更长久.
可能的来源:
可能的显示:
其他信息:
要点:
尼斯对富人:
通常使用笔记本电脑的网络摄像头并在其屏幕上显示自定义延迟的流将是非常棒的.