我正在使用FileReference类将flvs上载到服务器。 允许上传之前是否可以检查flv长度不是大小?在上传到服务器之前获取flv长度
1
A
回答
4
您是针对Flash Player 10单独还是更低版本?由于较低版本的Flash播放器(9等)不允许上传的SWF读取文件内容(除创建日期,创建者(文件的Macintosh创建者类型),修改日期,名称,大小(字节和类型)),所以你无法在这些球员身上做到这一点。
如果你的目标仅仅FP10的用户,可以load的FLV到您的SWF一个ByteArray
和
- 使用FLV播放器播放,并宣读了球员的时间属性。但是我找不到一个以
ByteArray
作为输入的FLV播放器 - 在阅读完SO后的this thread后,似乎根本不可能。 - 解析FLV文件,并从其元数据中读取
duration
属性。 FLV file specification已开放,但这并不容易。
更新到注释:从FLV文件规范
摘录:
的文件的总大小调用onMetaData
FLV文件可以包含有“调用onMetaData”标记的元数据。通过NetStream.onMetaData属性,运行的ActionScript程序可以使用各种流属性 。 可用的属性因使用的软件而异。
共同属性包括:
duration
:一个DOUBLE指示文件的以秒计的总的持续时间width
:一个DOUBLE指示像素height
视频的宽度:一个DOUBLE指示以像素为单位的视频高度videodatarate
:一个DOUBLE表示以千比特/秒为单位的视频比特率framerate
:一个DOUBLE表示每秒钟videocodecid
帧数:一个DOUBLE指示文件中所使用的视频编解码器ID(参见第8页上的“视频 标签”为可用的CodecID标注值)audiosamplerate
:一个DOUBLE指示在该音频流是 重放audiosamplesize
频率:一个DOUBLE表示单一音频样本的分辨率stereo
:一个BOOL指示数据是否是立体声audiocodecid
:一个DOUBLE指示文件中所使用的音频编解码器ID(见第6页上的“音频 标签”为可用的SoundFormat值)filesize
:一个DOUBLE指示以字节为单位
FLV文件可以包含元数据 - 它不会说它将包含元数据。它还表示,可用的属性可能因用于创建FLV的软件而异。所以我想没有保证(根据规格)duration
财产将存在。也就是说,duration
是FLV的基本属性之一,假设任何合理的软件都会包含它,这将是安全的。
1
您可以使用Netstream.appendBytes在用于播放视频的NetStream中将FileReference.data(在呼叫上传之前的呼叫浏览之后)提供给NetStream。从那里,持续时间可以从元数据中获取,如本主题其他地方所述。请注意,此方法至少需要Flash Player 10。
相关问题
- 1. 获取上传图像的宽度(上传文件到服务器之前)
- 2. 在上传到服务器之前更改文件的名称
- 3. 在上传到服务器之前压缩视频和图像
- 4. 在上传到主服务器之前压缩php脚本
- 5. 在上传到服务器之前扫描附件?
- 6. 将图像上传到服务器上之前旋转图像
- 7. 当上传到服务器时flv文件丢失质量
- 8. 如何实时上传.flv到远程red5服务器LIVE?
- 9. 得到flv视频长度
- 10. 上传到服务器之前压缩视频文件
- 11. 上传之前Android摄像头拍摄到服务器
- 12. 显示之前上传到服务器的图像
- 13. 如何保存画布图像上传到服务器之前?
- 14. FTP客户端在上传之前上传并在上传之后在服务器上解压
- 15. 如何在文件上传到服务器时获取通知?
- 16. FLV身体长度
- 17. 在上传到服务器之前基于浏览器的视频转换
- 18. 如何在即时上传之前在服务器上传之前在sapui5中压缩文件?
- 19. Android使用服务进度条上传文件到服务器
- 20. AJAX load-eventlistener在从服务器获取响应之前触发
- 21. 上传ByteArray到服务器 - 有上传进度
- 22. CFSCRIPT - 如何在上传之前检查文件名的长度
- 23. 在角度加载前从服务器获取脚本位置
- 24. 问题上传FLV视频文件服务器
- 25. 上传imagecreatefrompng到服务器
- 26. 上传到FTP服务器
- 27. 上传Excel到服务器
- 28. C# - 上传到服务器
- 29. 如何从Facebook获取图片并在服务器上上传?
- 30. 从手机获取短信并在服务器上上传
非常感谢,帮助了很多。我想知道当长度的元数据不存在时他们是否可以成为案例。你有没有遇到过这种情况,或者我可以安全地假设数据总是可用的? – Chin 2009-12-10 09:41:05
再次感谢您的帮助。如果你需要任何兼职flex或.net工作让我知道。 – Chin 2009-12-10 11:17:46