我的问题是当它第二次尝试读取对象时,会抛出异常:
java.io.StreamCorruptedException: invalid type code: AC
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1356)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
at Client.run(BaseStaInstance.java:313)
java.io.StreamCorruptedException: invalid type code: AC
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1356)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
at Client.run(BaseStaInstance.java:313)
Run Code Online (Sandbox Code Playgroud)
我第一次发送完全相同的对象消息; 但是,当我第二次尝试做同样的事情时,它会抛出上面的错误.我是否需要重新初始化readObject()方法?我甚至打印出下面一行正在接收的消息对象,它与第一个正常工作的实例相同.
Object buf = myInput.readObject();
Run Code Online (Sandbox Code Playgroud)
我假设附加有一些问题,但我真的没有用于追加.我只想每次都阅读一条新线.我非常感谢帮助修复这个bug.谢谢.
==================================
在那一行之前,我只是在run()方法中为套接字创建输入和输出对象.对象声明在类中的run()方法之外: -
@Override
public void run() {
try {
sleep((int) 1 * 8000);
} catch (Exception e) {
e.printStackTrace();
}
try {
//Creating input and output streams to transfer messages to the server
myOutput = new ObjectOutputStream(skt.getOutputStream());
myInput = new ObjectInputStream(skt.getInputStream());
while (true) {
buf = myInput.readObject();
}
} …Run Code Online (Sandbox Code Playgroud) 有没有办法通过嵌入在网站上的Flash小部件或其他方法流式传输存储在Amazon S3上的MP3?
我一直在寻找一个如何将MongoDB查询的结果流式传输到nodejs客户端的示例.到目前为止我找到的所有解决方案似乎都会立即读取查询结果,然后将结果发送回服务器.
相反,我(显然)希望提供一个回调查询方法,并让MongoDB在结果集的下一个块可用时调用它.
我一直在看猫鼬 - 我应该使用不同的驱动程序吗?
一月
我正在编写一个ASP.NET Web API应用程序,它要求我接受文件上载并将该文件转发到另一个HTTP端点.
我担心如果许多用户尝试上传每个100MB的文件(这是一个有效的用例),那么我的应用程序将占用大量内存,并且根据大量请求的数量,这个足迹可能会变大,我的应用程序会龙骨过度死亡.
理想情况下,只要Web服务器开始接收文件以显着减少服务器上的负载,我就会开始将文件流式传输到其他HTTP端点.
我确信这个过程有一个名字,但我不知道 - 这使得搜索相当艰难.
我已经在Web API中使用Response Streaming做了很多工作,但我以前从未考虑过请求流.
我能说得最好我需要弄清楚如何:
任何人都可以给我一些指示吗?
我想创建一个能够接收音频流的Android应用程序.我想过使用A2DP配置文件,但似乎Android不支持A2DP接收器.看起来有很多人在寻找这个问题的解决方案.但接收普通比特流,然后将数据转换为应用程序中的音频呢?我想通过RFCOMM(SPP蓝牙配置文件)接收PCM或Mp3数据流,然后使用AudioTrack播放它.
首先,如何通过RFCOMM在我的Android手机上接收比特流?是否可以通过RFCOMM作为PCM或Mp3流接收比特流?
其次,如果不能通过RFCOMM接收比特流作为PCM或Mp3流,我如何将接收的比特流转换为音频?
第三,如何将接收的数据转换为音频并同时"实时"播放音频?我可以使用onDataReceived吗?
要清楚,我对使用A2DP配置文件不感兴趣!我想通过RFCOMM(SPP蓝牙配置文件)传输数据.接收的数据流将采用PCM或Mp3.我想写自己的应用程序,但如果有人知道一个应用程序来解决这个问题,我很高兴听到它!我正在使用Android 2.3 Gingerbread.
/约翰尼
我正在使用NodeJs(w/express),我正在尝试将zip文件流回客户端.zip中包含的文件不在文件系统上,而是动态创建.我想将文件内容流式传输到zip并将zip流式传输回客户端.
IE我希望客户端收到:
tmp.zip
--> 1.txt
--> 2.txt
--> 3.txt
Run Code Online (Sandbox Code Playgroud)
其中1,2,3.txt即时创建并流式传输到zip文件.这可能吗?
这么多的选项和很少的时间来测试它们......我想知道是否有人有分布式文件系统的视频流和存储/编码经验.
我有很多巨大的视频文件(50GB到250GB),我需要存储在某个地方,能够将它们编码为mp4并从几个Adobe FMS服务器流式传输.处理所有这一切的唯一方法是使用分布式文件系统,但现在的问题是哪个?
到目前为止我的研究告诉我:
到目前为止,Lustre似乎是赢家,但我希望听到我所拥有的特定应用的真实体验.
此外,Hadoop,Redhat GFS,Coda和Windows DFS也可作为选项,因此欢迎任何体验.如果有人有基准,请分享.
经过一些实际经验后,这就是我所学到的:
定论:
不幸的是,结论是"没有单一的银弹".
目前,我们将Gluster3.2中的媒体文件放在复制卷中以进行存储和转码.只要您没有很多服务器,就可以避免地理复制和条带卷工作正常.
当我们要传输媒体文件时,我们将它们复制到通过DR:DB复制到第二个光泽卷的光泽卷.然后,wowza服务器从光泽卷中读取媒体文件.
最后,我们使用MogileFS来提供Web应用程序服务器中的缩略图.
我正在编写一个使用流媒体播放youtube视频的应用程序.
第一种方法:
我正在使用GData API获取视频的RTSP URL.以下是播放RTSP网址的代码.
VideoView mVideoView = new VideoView(this);
setContentView(mVideoView);
mVideoView.setVideoURI(Uri.parse("rtsp://rtsp2.youtube.com/CiILENy73wIaGQkDwpjrUxOWQBMYESARFEgGUgZ2aWRlb3MM/0/0/0/video.3gp"));
mVideoView.start();
Run Code Online (Sandbox Code Playgroud)
但它在G1设备和模拟器上都会抛出错误(模拟器根据邮件列表有一些防火墙问题)这是错误信息
ERROR/PlayerDriver(35):命令PLAYER_INIT已完成,错误或信息PVMFFailure
第二种方法:
从http://www.youtube.com/get_video?v=&t = <>&<>获取3gp文件路径的黑客方法 .获取文件路径后,我可以调用setVideoURI,它可以正常播放.但这是达到要求的黑客方式.我也检查过Youtube应用程序,它也可以通过hack方式播放youtube网址.(使用logcat检查)
我尝试从VideoView更改为MediaPlayer,但没有更改错误.
有一种"干净"的方式吗?
请让我知道你的想法.
youtube streaming android android-mediaplayer android-videoview
我在弄清楚如何使用gstreamer创建一个简单的rtp流并在vlc上显示它时遇到了一些麻烦.
我安装了GStreamer 0.10.30和VLC 1.1.3.我唯一的要求是使用MPEG4或H.264编解码器.
现在,我可以通过这个简单的管道流式传输GStreamer videotestsrc:
gst-launch videotestsrc ! ffenc_mpeg4 ! rtpmp4vpay ! udpsink host=127.0.0.1 port=5000
Run Code Online (Sandbox Code Playgroud)
它输出客户端接收流所需的"上限":
/GstPipeline:pipeline0/GstUDPSink:udpsink0.GstPad:sink: caps = application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)MP4V-ES, profile-level-id=(string)1, config=(string)000001b001000001b58913000001000000012000c48d8800f50a041e1463000001b24c61766335322e3132332e30, payload=(int)96, ssrc=(uint)365697461, clock-base=(uint)390754204, seqnum-base=(uint)10399
Run Code Online (Sandbox Code Playgroud)
我还可以使用以下管道显示流:
gst-launch udpsrc uri=udp://127.0.0.1:5000 caps="application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)MP4V-ES, profile-level-id=(string)1, config=(string)000001b001000001b58913000001000000012000c48d88007d0a041e1463000001b24c61766335322e3132332e30, payload=(int)96, ssrc=(uint)298758266, clock-base=(uint)3097828288, seqnum-base=(uint)63478" ! rtpmp4vdepay ! ffdec_mpeg4 ! autovideosink
Run Code Online (Sandbox Code Playgroud)
但是当我尝试用vlc接收流时:
vlc -vvv rtp://127.0.0.1:5000
Run Code Online (Sandbox Code Playgroud)
我一无所获......
Storm如何与Hadoop相比?Hadoop似乎是开源大规模批处理的事实标准,Storm有没有优于hadoop的优势?还是他们完全不同?