2012-12-02 144 views
4

通常與ffplay可以播放這樣的影片ffplay與餅乾

ffplay http://easy.com/foo.flv 

不過,我所遇到的,需要一個cookie的視頻。 wget沒有這個問題

wget http://hard.com/foo.flv --load-cookies cookies.txt 

ffplay可以播放需要cookie的視頻嗎?

基於pogorskiy’s answer這個作品

ffplay -headers $'Cookie: sbsession=sbg&sbuser=lorem\r\n' http://hard.com/foo.flv 
+0

MPlayer可以做到這一點。見[這裏](http://wiki.multimedia.cx/index.php?title=MPlayer_youtube_script)。 –

回答

6

有一個在HTTP協議的選項-headers。因此,我們可以編寫

ffplay http://easy.com/foo.flv -headers "Cookie: MyCookies" 

但ffmpeg需要在附加標題中的順序\r\n。否則,你會得到一個警告

[http @ 011701a0] No trailing CRLF found in HTTP header.

和頭被錯誤地添加。我們無法通過命令行正確傳遞CRLF序列。我認爲唯一的解決方案是修復http.c,以便預定義字符被CRLF替代。

1

其實你可以在外殼

$ echo 0$'\r\n'0 
0 
0 

所以測試這一點,添加$ '\ r \ n' 在標題字符串末尾

ffplay http://easy.com/foo.flv -headers "Cookie: MyCookies"$'\r\n' 

和ffplay將獲得非字符串\ r \ ñ。 它工作在我的ffmpeg版本ffmpeg version git-2014-09-24-857fc0a