查看單個文章
舊 2006-10-11, 06:26 PM   #2 (permalink)
psac
榮譽會員
 
psac 的頭像
榮譽勳章
UID - 3662
在線等級: 級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時
註冊日期: 2002-12-07
住址: 木柵市立動物園
文章: 17381
現金: 5253 金幣
資產: 33853 金幣
預設

下載Google Video 與 YouTube網站上的影片一月

最近常常在Google VideoYouTube上面亂逛看影片,其中當然不乏一些有趣或是想抓下來收藏的影片,在網路上找到一些方法後,在這邊先把它整理一下。
其實主要就是從Google Video跟YouTube將flv檔抓下來。想找Google Video的flv檔案位址,首先要看影片網頁面的網頁原始碼,找到flash影片瀏覽器的swf檔的位置(應該是叫做googleplayer.swf,搜尋一下吧),將後面的videoUrl參數複製下來,然後使用php的urldecode或是Java Script的unescape函式,就可以得到正確的flv檔案位址。YouTube的就更簡單啦,只要將網址中的watch.php?v=改成get_video.php?video_id=就是flv檔案的位址了。
update:現在YouTube還要加上&t={一段亂七八糟的字串},這串參數可以在原始碼內flash object的地方找到。
不過懶人如我就不想每次都要去翻原始碼或是要手動改網址列再抓檔,所以我寫了一個php script自動去找flv的檔案位址:GooTube FLV Retriever,下面簡單寫一下使用方法。
先複製Google Video或是YouTube的影片網頁面的網址。

http://static.flickr.com/38/80170108_a31b3b725c_m.jpg

http://static.flickr.com/38/80170117_4faad0668e_m.jpg

將網址列貼上GooTube FLV Retriever的input field中,因為script會自動判斷是Google Video或是YouTube的網址,所以沒什麼其他的選項需要選的。

http://static.flickr.com/37/80170123_cc018d9abc_m.jpg

送出之後會得到一個flv檔案的網址列。為了方便,我順便做了連結,這樣就可以直接按右鍵另存新檔囉。


http://static.flickr.com/39/80170142_2d153eb4b4_m.jpg

按右鍵另存新檔,記得將副檔名改為flv。

http://static.flickr.com/41/80170147_c9db240efa.jpg

下載完畢之後,就可以看到下載回來的flv檔了(廢話),如果你有flash video的撥放程式,就可以直接打開來觀看囉。

http://static.flickr.com/39/80170163_ea0c129719_m.jpg

如果沒有flv player或是想將flv影片檔轉成wmv或是mpeg格式的話怎麼辦?沒關係,我們可以用Riva VX: Riva FLV Encoder,下面簡略的講一下如何用Riva FLV Encoder將flv檔轉成mpg。
安裝完Riva FLV Encoder後,啟動程式,按下Browse。

http://static.flickr.com/36/80170168_c2f0dc569f_m.jpg

選取想要轉換的flv檔。

http://static.flickr.com/37/80170177_ae32c6ae05_m.jpg

選完之後回到程式的畫面,你可以選擇輸出的目錄,預設是桌面。

http://static.flickr.com/37/80170184_736a300373_m.jpg

手動更改output file的file name,將副檔名改成mpg。這邊有點奇怪,這程式並沒有選項讓你選擇輸出的類型,而是直接更改副檔名,我不知道這到底算好還是壞(不過他本來就說是FLV Encoder,所以沒別的選項可以選也是可以理解的,但是他真的可以轉成mpg就是了)。

http://static.flickr.com/42/80170189_d3c642499b_m.jpg

按下Encode就開始轉檔囉。

http://static.flickr.com/43/80170198_bf79d6c6f5_m.jpg

轉檔的時候程式的畫面會變白,等到畫面恢復就表示好囉!下面也會顯示:Encoding Successful! 太好啦,這樣就不用每台電腦都要裝FLV Player才能看了。

http://static.flickr.com/42/80170216_da60068076_m.jpg

p.s. : Riva FLV Encoder是個Freeware,快樂的用吧



CinemaForge 可以將 FLV 轉成 avi/mpg/wmv/rm 。
下載 YouTube 影片教學

本文以 Stam 的 Agent Orange 為範例
http://www.youtube.com/player.swf?video_id=bLR657gptmE

STEP1: 把 player.swf? 改成 get_video.php?
(更改後) http://www.youtube.com/get_video.php...id=bLR657gptmE

STEP2: 下載檔案,並更改副檔名為.FLV

STEP3: 使用 FLV Player 開啟檔案。
FLV Player 1.3.2
http://www.download.com/FLV-Player/3...-10467082.html

STEP4: 檔案轉換
CinemaForge 可以將 FLV 轉成 avi/mpg/wmv/rm 等類型檔案
CinemaForge 2.02 (Free to try; $24.95)
http://www.download.com/CinemaForge/...-10373646.html

韓國的kmP也可以支援flv播放...


操考資料:
Sorenson Spark 是包含在 Flash 中的運動視頻編解碼器,它使您可以向 Flash 中新增嵌入的視頻內容。Spark 是高品質的視頻編碼器和解碼器,它顯著地降低了將視頻發送到 Flash 所需的帶寬,同時提高了視頻的品質。由於包含了 Spark,Flash 在視頻性能方面獲得了重大飛躍。在 Flash 5 或更早的版本中,只能使用順序位圖圖像模擬視頻。

現在可供使用的 Sorenson Spark 有兩個版本:Sorenson Spark 標準版包含在 Flash MX 2004 和 Flash Player 7 中。Spark 標準版編解碼器對於慢速運動的內容(例如人在談話)可以產生高品質的視頻。Spark 視頻編解碼器由一個編碼器和一個解碼器組成。編碼器(或壓縮程式)是 Spark 中用於壓縮內容的元件。解碼器(或解壓縮程式)是對壓縮的內容進行解壓以便能夠對其進行檢視的元件。解碼器包含在 Flash Player 中。

對於數位媒體,可以應用兩種不同類型的壓縮: 空間 和時間。

時間壓縮可以識別各幀之間的差異,並且只存儲這些差異,以便根據幀與前面幀的差異來描述幀。沒有更改的區域只是簡單地重複前面幀中的內容。時間壓縮的幀通常稱為幀間。

另一方面,空間壓縮適用於單個資料幀,與周圍的任何幀無關。空間壓縮可以是無損 的(不丟棄圖像中的任何資料)或有損 的(有選擇地丟棄資料)。空間壓縮的幀通常稱為內幀。

Sorenson Spark 是幀間編解碼器。與其他壓縮技術相比,Sorenson Spark 的高效幀間壓縮在眾多功能中尤為獨特。它只需要比大多數其他編解碼器都要低得多的資料速率,就能產生高品質的視頻。許多其他編解碼器使用內幀壓縮;例如,JPEG 是內幀編解碼器。

但是,幀間編解碼器也使用內幀。內幀用作幀間的參考幀(關鍵幀)。Sorenson Spark 總是從關鍵幀開始處理。每個關鍵幀都成為後面的幀間的主要參考幀。只要下一幀與上一幀顯著不同,該編解碼器就會壓縮一個新的關鍵幀。


Flash 8 vs Flash 7 - Video Encoder (視訊編碼)
Flash 7 因為跟 Sorenson[/b] 廠商合作 ,所以採用 Sorenson[/b] Spark[/b] 編碼
Flash 8 採用新的 On2 VP6 編碼...
為何開發新的新的編碼系統,舉個範例看看好了
實驗組1:
編碼方式:Sorenson[/b] Spark[/b]  400kbps
[swf]http://aliang-shy.myweb.hinet.net/data/flv/e1.swf[/swf]
實驗組2:
編碼方式:On2 VP6 400kbps
[swf]http://aliang-shy.myweb.hinet.net/data/flv/e2.swf[/swf]
實驗組3:
編碼方式:On2 VP6 150kbps
[swf]http://aliang-shy.myweb.hinet.net/data/flv/e3.swf[/swf]
實驗範例比較:
編碼方式
Sorenson[/b] Spark[/b]
On2 VP6 (new*)
影像畫質
在快速動作畫面有格子效應產生
格子效應改善非常多
即使用150kbps也無察覺
編碼速率
較快
較慢
檔案大小
原始大小:2.81Mb
3.64Mb @400kbps
3.93Mb @400kbps (比Sorenson[/b] Spark[/b] 多了8%)
1.58Mb @150kbps
測試影片名稱:可愛催眠茶蟲廣告
*只有 Flash Player 8 同時支援 On2 VP6 視訊的發佈與播放。
(看不到的可能要重新安裝Flash播放器)
On2 VP6 和 Sorenson[/b] Spark[/b] 視訊轉碼器間的比較:
在編碼 FLV 內容供 Flash Player 8 使用時,預設的視訊轉碼器是 On2 VP6 轉碼器。在這種情況下,比起 Sorenson[/b] Spark[/b] 轉碼器,使用 On2 VP6 轉碼器具有下列的優點:
同樣的資料速率下,編碼出的視訊品質較高
可支援使用 Alpha 色版,能建立複合視訊
為了能在相同的資料速率下,支援產生更高品質的視訊,On2 VP6 轉碼器在編碼時的速度明顯地比較慢,同時在解壓縮和播放視訊資料時,耗用的用戶端電腦處理器資源也會比較多。
Flash Video 支援的視訊壓縮轉碼器:
根據預設,Flash Video Encoder 會以 On2 VP6 轉碼器編碼使用於 Flash Player 8 的檔案,而以 Sorenson[/b] Spark[/b] 轉碼器編碼使用於 Flash Player 7 的檔案。如果想知道 Flash 為何在低頻寬需求的環境中,依然能傳送高品質的視訊,首先便要瞭解視訊壓縮的原理。
有兩種壓縮類型可以套用至數位媒體上:「空間性」和「時間性」。「空間性」的壓縮是個別地處理單一影格的內容,和前後影格的內容無關,因此空間性壓縮可以「不失真」(不放棄影像的任何資料),也可以「高失真」(選擇性放棄資料)。空間性壓縮的影格,通常又稱為「畫面內壓縮」(Intraframe)。
「時間性」的壓縮則會識別出影格間的差異,然後只儲存這些差異,因此主要是以影格和前面影格之間的差異,來描述影格,對於那些沒有改變的區域,只要重複前面影格的內容即可。時間性壓縮的影格,通常又稱為「畫面間壓縮」(Interframe)。
On2 VP6 和 Sorenson[/b] Spark[/b] 這兩種轉碼器,都是「畫面間壓縮」,雖然很多其它轉碼器是使用「畫面內壓縮」,例如 JPEG 轉碼器,但是 On2 VP6 和 Sorenson[/b] Spark[/b] 轉碼器擁有的諸多優點,特別是高效率的畫面間壓縮,使得它們遠勝過其它壓縮技術。這兩種轉碼器都可以在極低的資料速率 (又稱為「位元速率」) 下,產生高品質的視訊。
不過也請注意,畫面間壓縮的轉碼器,也會使用畫面內壓縮。它們會使用畫面內壓縮,做為畫面間壓縮的參照影格 (關鍵影格)。不管是 On2 VP6 或 Sorenson[/b] Spark[/b] 轉碼器,都一定是以關鍵影格開頭,每個關鍵影格都會是後面畫面間壓縮的主要參考影格,只要下一個影格和之前的影格有顯著差異,轉碼器就會壓縮新的關鍵影格。
轉碼器
內容 (SWF) 版本 (發佈版本)
Flash Player 版本 (播放所需的版本)
Sorenson[/b] Spark[/b]
6
6, 7, 8
7
7, 8
On2 VP6
6
8
7
8
8
8

此帖於 2006-10-12 01:34 AM 被 psac 編輯.
__________________
http://bbsimg.qianlong.com/upload/01/08/29/68/1082968_1136014649812.gif
psac 目前離線  
送花文章: 3, 收花文章: 1631 篇, 收花: 3205 次
有 5 位會員向 psac 送花:
<AI> (2007-09-05),eloha123 (2007-09-21),MICKEY H (2008-01-08),shiah (2009-09-08),waltertwtp (2007-07-10)
感謝您發表一篇好文章