标签: streaming

保护Flash视频免受下载/保护

是否可以保护flv文件免遭下载?我想保护我的文件免受下载,但我没有资金用于流媒体服务器,我认为它提供了某种保护.这些文件通过PHP流式传输,位于我服务器上的上传文件夹中.

我已经使用PHP来确保只有订阅者可以观看视频,但我基本上希望更进一步,防止订阅者在登录时使用下载程序(如Sothink Flv Downloader for Firefox)下载我的视频.

video streaming drm copy-protection

17
推荐指数
4
解决办法
2万
查看次数

流作为System.Net.Mail的附件是0字节

我有一个项目,我正在使用PDF生成器向用户发送文件.我们希望为用户提供将此文件附加到电子邮件的选项,而我们在使用Stream对象和附件逻辑时遇到问题.

我们从ABCpdf开始,它有两个保存方法:它可以保存到Stream,或者如果你给它一个字符串,它会尝试保存到磁盘上的文件.我们两个都没问题.

Stream stream = new MemoryStream();
myPdf.Save(stream);
Run Code Online (Sandbox Code Playgroud)

此时一切都很酷 - stream有几千字节的数据,如果你.save()到一个文件,你得到一个具有相同字节数的实际文件.

所以我们此时附上一封电子邮件(初始化邮件对象后,设置为:和发件人:等):

mail.Attachments.Add(new Attachment(stream, "myPdf.pdf"));
mail.Send();
Run Code Online (Sandbox Code Playgroud)

...让我们收到一个0字节的电子邮件,但正确的文件名.

我在网上找到的所有例子都使用StreamReader或StreamWriter或Flush()等.它总是看起来比简单传递Stream更复杂,但可能只有一两行更复杂.这些示例都不是以Stream开头的 - 他们总是试图将数组转换为Stream来向您展示它是多么容易,或者从磁盘中获取文件(我们无法做到这一点,这就是为什么我们很兴奋使用Stream).

无论如何,如果有人能解释我做错了什么或我应该做什么,我真的很感激.谢谢.

.net asp.net email streaming attachment

17
推荐指数
1
解决办法
8322
查看次数

iPhone - App再次被拒绝,HTTP Live Streaming 64kbps基线Feed

感谢您提交APPNAME_HERE.我们已经审核了您的应用程序,并确定此时无法将其发布到App Store,因为它没有使用64 kbps的基线流来实现HTTP直播流协议来播放流式视频.在通过蜂窝网络传输视频馈送时,需要HTTP直播流,以便获得最佳用户体验并利用蜂窝网络最佳实践.该协议自动确定用户可用的带宽,并适当调整带宽,即使带宽流发生变化.这样,只要将64 kbps设置为基线源,就可以灵活地拥有任意数量的流.

这是我从Apple获得的,尽管我有48kbps,64kbps,128kbps和384kbps流可用.如何设置基线Feed?我的应用程序现在的工作方式是先加载可用的最低值,然后再按带宽向上扩展.这是我的索引m3u8

#EXTM3U
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=48000
stream-soundonly.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=64000
stream-64k.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=128000
stream-128k.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=384000
stream-384k.m3u8
Run Code Online (Sandbox Code Playgroud)

Apple真的很挑剔

iphone streaming baseline appstore-approval ios4

17
推荐指数
1
解决办法
6020
查看次数

Java中的媒体播放器库

我正在评估用Java播放音频/视频的库.它不需要是100%Java ; Java绑定到本机库是完全可以的.可以从Java控制的外部应用程序也可以,只要它可以在Java组件上呈现视频.

目标平台是Linux.Windows支持是一个加号,但不是必需的.

我使用VLCj绑定玩过VLC ,一般来说效果很好,但在压力下偶尔也会崩溃.我也在奴隶模式下使用mplayer ,看起来不错.但我也想评估其他选项.

这些是要求:

  • 使用RTSP通过RTP实时播放H.264,MPEG4.MJPEG通过HTTP获得额外积分.
  • 能够在Java(Swing或AWT)组件上呈现视频
  • 开源,积极维护
  • 稳定,坚如磐石

建议?建议吗?

java streaming media-player

17
推荐指数
1
解决办法
1万
查看次数

将连续RTSP流保存为5-10分钟长的mp4文件

如何将流(协议rtsp,编解码器h264)保存在文件(容器mp4)中?也就是说,在输入无尽的流(用CCTV摄像机)时,输出文件的mp4格式大小为5-10分钟的录制时间.

操作系统:debian,ubuntu软件:vlc,ffmpeg(avconv)

目前使用此方案:

cvlc rtsp://admin:admin@10.1.1.1:554/ch1-s1 --sout=file/ts:stream.ts
ffmpeg -i stream.ts -vcodec copy -f mp4 stream.mp4
Run Code Online (Sandbox Code Playgroud)

但它无法连续录制视频(重启后vlc会丢失大约10秒的直播视频).

streaming mp4 ffmpeg vlc rtsp

17
推荐指数
3
解决办法
4万
查看次数

在iOS中播放ogg流

有人在iOS上播放过ogg流吗?如果不编写自己的解码器,我可以使用什么?

我正在使用Apple的AVPlayer播放流.

这个问题已被问到这个问题的一部分: iOS在线广播流媒体问题,但尚未得到解答.

streaming objective-c ogg ios avplayer

17
推荐指数
1
解决办法
2万
查看次数

Android AudioRecord到服务器上的UDP播放问题

我正在尝试制作一个简单的Android应用程序,将实时麦克风音频流式传输到服务器进行播放.产生的播放听起来很奇怪,音频间隙很大.有谁知道我做错了什么?

编辑:解决了.结果我假设每个传入的缓冲区都会完全填满,这是我的错误假设.

这是我的活动:

public class MainActivity extends Activity {
    private static String TAG = "AudioClient";

    // the server information
    private static final String SERVER = "xx.xx.xx.xx";
    private static final int PORT = 50005;

    // the audio recording options
    private static final int RECORDING_RATE = 44100;
    private static final int CHANNEL = AudioFormat.CHANNEL_IN_MONO;
    private static final int FORMAT = AudioFormat.ENCODING_PCM_16BIT;

    // the button the user presses to send the audio stream to the server
    private Button sendAudioButton;

    // the audio recorder …
Run Code Online (Sandbox Code Playgroud)

audio streaming android audiorecord

17
推荐指数
1
解决办法
2万
查看次数

如何解压缩包含一个文件的大型zip文件并使用swift以字节为单位获取进度?

我尝试解压缩只包含一个项目(超过100MB)的大型zip文件,并希望在解压缩过程中显示进度.

我找到了解决方案,根据解压缩的文件数量可以确定进度,但在我的情况下,我只有一个大文件.所以我猜它必须由解压缩的字节数决定?

实际上我使用SSZipArchive与以下代码工作正常:

    var myZipFile:NSString="/Users/user/Library/Developer/CoreSimulator/Devices/mydevice/ziptest/testzip.zip";
    var DestPath:NSString="/Users/user/Library/Developer/CoreSimulator/Devices/mydevice/ziptest/";


    let unZipped = SSZipArchive.unzipFileAtPath(myZipFile as! String, toDestination: DestPath as! String);
Run Code Online (Sandbox Code Playgroud)

我找不到解决方法.

有人有样品的提示,样品或链接吗?

更新: 以下代码看起来会按预期工作,但只有一个文件被解压缩时,处理程序将只被调用一次(在解压缩结束时):

func unzipFile(sZipFile: String, toDest: String){

        SSZipArchive.unzipFileAtPath(sZipFile, toDestination: toDest, progressHandler: {
            (entry, zipInfo, readByte, totalByte) -> Void in


            println("readByte : \(readByte)") // <- This will be only called once, at the end of unzipping. My 500MB Zipfile holds only one file. 
            println("totalByte : \(totalByte)")


            //Asynchrone task
            dispatch_async(dispatch_get_main_queue()) {
                println("readByte : \(readByte)")
                println("totalByte : \(totalByte)")

                //Change progress value

            }
            }, completionHandler: …
Run Code Online (Sandbox Code Playgroud)

streaming unzip archive ios swift

17
推荐指数
1
解决办法
3342
查看次数

17
推荐指数
1
解决办法
4466
查看次数

使用Stream的RestSharp AddFile

我正在使用RestSharp(Visual Studio 2013中的版本105.2.3.0,.net 4.5)来调用NodeJS托管的Web服务.我需要做的一个调用是上传文件.使用RESTSharp请求,如果我从我的端部检索流到字节数组并将其传递给AddFile,它工作正常.但是,我更倾向于流内容而不是在服务器内存中加载整个文件(文件可以是100的MB).

如果我设置一个动作来复制我的流(见下文),我在System.Net.ProtocolViolationException的"MyStream.CopyTo"行中得到一个异常(要写入流的字节超过指定的Content-Length字节大小) .在调用client.Execute之后,在Action块中抛出此异常.

根据我的阅读,我不应该手动添加Content-Length标头,如果我这样做,它也无济于事.我已经尝试将CopyTo缓冲区设置为小值和大值,以及完全省略它,但无济于事.有人能给我一些我错过的暗示吗?

    // Snippet...
    protected T PostFile<T>(string Resource, string FieldName, string FileName,
        string ContentType, Stream MyStream, 
        IEnumerable<Parameter> Parameters = null) where T : new()
    {
        RestRequest request = new RestRequest(Resource);
        request.Method = Method.POST;

        if (Parameters != null)
        {
            // Note:  parameters are all UrlSegment values
            request.Parameters.AddRange(Parameters);
        }

        // _url, _username and _password are defined configuration variables
        RestClient client = new RestClient(_url);
        if (!string.IsNullOrEmpty(_username))
        {
            client.Authenticator = new HttpBasicAuthenticator(_username, _password);
        }

        /*
        // Does not work, …
Run Code Online (Sandbox Code Playgroud)

streaming upload restsharp

17
推荐指数
1
解决办法
1万
查看次数