VirtualDub Tricks 3 : FLV to Anythings

วันนี้จะมาสอนการแปลงไฟล์ flv ซึ่งเราโหลดมาจากเวป Video sharing ต่างๆ เช่น Youtube Metacafe Veho Mthai หรือพวกเวปflash videoอื่นๆก็ตาม ได้มาเป็นไฟล์*.flv ซึ่งไม่ค่อยสะดวกนักที่จะนำไปใช้อย่างอื่นนอกจากเปิดดูในคอม ดังนั้นเราก็ต้องแปลงเป็นรูปแบบอื่นๆก่อน แต่ปัญหาก็คือ จะencodeยังไงให้คงคุณภาพของต้นฉบับไว้ให้มากที่สุด เพราะต้นฉบับก็ไม่ค่อยจะแจ่มอยู่แล้ว ขืนเอาไปencodeด้วยโปรแกรม(ห่วยๆ)อื่นๆอีก ภาพออกมาก็อนาถกันพอดี ทั้งภาพแตก ภาพห่วย ไม่ชัด เบลอ และอื่นๆ ดังนั้นต่อไปนี้ก็จะเป็นการencodeให้คงคุณภาพต้นฉบับเดิมแบบสุดๆ
ที่จะใช้คือ VirtualDubMod เจ้าเก่า ผมขอบอกและขอท้าเลยว่า โปรแกรมสำเร็จรูปอื่นๆ ไม่มีทางทำให้คงคุณภาพได้ขนาดนี้ ไม่ว่าจะโปรแกรมอะไรก็ตามเถอะ จะยกเว้นก็แต่พวกโปรแกรมที่มีรูปแบบการทำงานแบบVirtualDub (สรุปก็คือ ก็ไอ้พวกเดียวกันนะแหละ)
Videoที่ทำตามวิธีนี้จะได้เหมือนต้นฉบับเกือบ100% ชัดเจน ไม่มีแตก (ต้นฉบับมันเป็นยังไงก็เป็นอย่างนั้นแหละ)
โปรแกรมที่ใช้
1.FLV Extract
2.K-Lite Codec Pack หรือ K-Lite Mega Codec ก็ได้
3.VirtualDubMod
การrunโปรแกรมFLVExtractต้องมีMicrosoft's .NET Framework version 2.0ขึ้นไปติดตั้งอยู่ในเครื่อง ใครยังไม่มีโหลดได้ตามลิ้งค์
ทุกโปรแกรมเป็น Freeware
การตั้งค่า ffdshow
1.Start > All Programs > K-Lite Codec Pack > Configuration > ffdshow > Video decoder configuration > Codecs > ที่ FLV1,VP3,VP5,VP6,VP6F ให้เลือกเป็น "libavcodec"ให้หมด > OK
2.Start > All Programs > K-Lite Codec Pack > Configuration > ffdshow > VFW Configuration > ใน "ffdshow video encoder configuration" window > tab Decoder > Codecs > ที่ FLV1,VP3,VP5,VP6,VP6F ให้เลือกเป็น "libavcodec"ให้หมดเช่นกัน > OK
ที่นี้VirtualDubModของเราก็จะเปิดไฟล์FLVที่เราจะextractออกมาได้แล้ว ต่อไปก็จะมาre-encodeกัน
1.runFLVExtract.exe แล้วลากไฟล์ flv ที่เราต้องการไปทับในหน้าจอของโปรแกรมFLVExtract แล้วเราก็จะได้ไฟล์ออกมา2ไฟล์คือ ไฟล์ *.avi กับไฟล์ *.mp3 (aviที่ได้ยังไม่ใช่aviที่แท้จริง ต้องเอาไปencodeอีกครั้งก่อน) แล้วก็ปิด FLVExtract ไปได้
2.ใช้VirtualDubModเปิดไฟล์aviที่เราextractได้ขึ้นมา แล้วไปที่ Streams > Stream list > ไปเลือกไฟล์mp3ที่extractได้มา ตรงนี้จะมีขึ้นเตือน VBR audio stream detected ให้ตอบ No
3.ที่"Available streams" window คลิ๊กขวาที่Audio trackของเรา ตรงจุดนี้สามารถเลือกแบบDirect stream copyก็จะไม่ต้องencode audioใหม่ หรือถ้าต้องการจะเข้ารหัสใหม่ก็เลือก Full processing mode แล้วเลือกCompression เพื่อเลือกการตั้งค่าใหม่ตามต้องการ
หมายเหตุ : การตั้งค่าbit rate ให้สูงกว่าต้นฉบับ ไม่ได้ทำให้คุณภาพเพิ่มขี้น ไฟล์ที่ได้จะมีขนาดใหญ่ขึ้นโดยเปล่าประโยชน์ครับ
4.ต่อไปจะเป็นการเข้ารหัสVideoใหม่ อันนี้ก็ขึ้นอยู่กับว่าจะทำเป็นไฟล์อะไร
ถ้าจะทำเป็นavi(Xvid)ให้ไปอ่านข้อ5.ของหัวข้อ แปลงไฟล์ทุกชนิดเป็นAVI คุณภาพสูง ด้วยVirtualDubMod ต่อ
แต่ถ้าจะทำเป็นไฟล์ชนิดอื่น เช่น จะทำเป็น VCD หรือ mpeg,wmv เป็นต้น ก็ให้ไปอ่านข้อ5.ของหัวข้อ การรวมSubtitleเข้ากับไฟล์Video ต่อ
พอได้ไฟล์ที่ต้องการแล้ว ก็สามารถลบไฟล์ชั่วคราวอื่นๆทิ้งไปได้
หมายเหตุ : จุดสำคัญที่สุดคือการตั้งค่า Video Setting ต้องศึกษาทำความเข้าใจให้ดี

VirtualDub – Trick2

ใครต้องการคุณภาพ ภาพชัดๆสวยๆ ก็เลิกใช้โปรแกรมง่ายๆจิ้มไม่กี่ทีก็ได้ ได้แล้วครับ หันมาดูซิว่า Advanced User เค้าใช้อะไรกัน

จากตอนที่แล้วผมสอนใส่Subด้วยVirtualDubไปแล้ว ซึ่งProgrameตัวนี้นั้นได้รับความเชื่อถือในวงการmultimediaอย่างสูง ให้เป็นเบอร์หนึ่งสำหรับการทำaviเลยครับ การใช้งานอาจยุ่งยากนิด แต่คุณภาพนั้นสุดยอดมากๆครับ อีกทั้งสามารถประยุกต์ได้หลากหลายมาก

จากความสามารถอันสุดยอด แต่ทว่ายังอาจมีจุดบอดสำหรับการใช้งานบางอย่าง ดังนั้นจึงได้มีผู้พัฒนาต่อแขนงออกมาเป็นโปรแกรมในเครือVirtualDubมากมาย และVirtualDubModก็เป็นหนึ่งในนั้นครับ

VirtualDubModไม่ใช่ว่าจะดีกว่าVirtualDubเพียงแต่เป็นโปรแกรมที่ใส่ความสามารถเพิ่มเติมจากVirtualDub และถ้านับตามจริงแล้วมันล้าสมัยกว่าvirtualdubอยู่นิดหน่อย แต่ไม่สำคัญเท่าไหร่ เด่นที่ใช้ทำบางอย่างง่ายกว่าสำหรับมือใหม่ เช่นกรณีนี้ครับ

Download VirtualDubMod

http://sourceforge.net/projects/virtualdubmod/

Download Avisynth

http://sourceforge.net/project/showfiles.php?group_id=57023

  1. ลง Avisynth แล้วเปิด VirtualDubMod
  2. Open video file > Use Avisynth template : DirectShowSource > filename : * > Enter
  3. เลือกvideoต้นฉบับที่ต้องการ > Open
  4. Audio Setting :Stream > Stream list > คลิ๊กขวา ถ้าไม่ต้องการเข้ารหัสใหม่ ให้เลือก Direct Steam Copy

ถ้าต้องการReencode เลือก Full processing mode > Compression > เอาอะไรตามใจ แนะนำMPEG Layer 3 > แล้วเลือก bitrate ยิ่งสูงเสียงดี แต่ไฟล์ใหญ่ > OK ออกมาเรื่อยๆ

     5.  Video Setting :

Video > ถ้าไม่ต้องการเข้ารหัสใหม่ ให้เลือก Direct Steam Copy

    ถ้าต้องการReencode เลือก Full processing mode > Compression > เอาอะไรตามใจ แนะนำ XviD (การตั้งค่าให้ไปดูที่การตั้งค่า Video Codecs) > Configure จะเจอ XviD Configuration

         6. วิธีตั้งการ Encode 1st pass :

      ในXviD Configuration > Encode Type : Twopass – 1st Pass > Quality Preset : User defined > More > VHQ Mode : 1 - Mode Decision > OK ออกมาเรื่อยๆ > File > Save as > ติ๊ก Don’t run this job now > ตั้งชื่อ > Save

      ไม่ต้องตกใจว่าไม่เกิดอะไรขึ้น ให้ทำขั้นตอนต่อไป

      7. วิธีตั้งการ Encode 2nd pass :

        ไปที่XviD Configuration > Encode Type : Twopass – 2nd Pass > Quality Preset : User defined > More > VHQ Mode : 4 - Wide Search > OK > Target Size ใส่เป็นkb อยากได้ขนาดไฟล์ออกมาเท่าไหร่ใส่เท่านั้น ตรงนี้อธิบายยาก ต้องใช้sense เอาเป็นว่าไม่ควรให้มีขนาดเกิดขนาดไฟล์ต้นฉบับที่หักขนาดส่วนของAudioออกไปแล้ว ไม่งั้นจะใหญ่เกินจำเป็นโดยใช่เหตุ > OK ออกมาเรื่อยๆ > File > Save as > ติ๊ก Don’t run this job now > ตั้งชื่อ > Save

        8. Encoding :

          File > Job Control > จะเห็นรายการในข้อ6-7 > Start รอจนเสร็จ > ลบไฟล์ชั่วคราวอื่นๆไปได้

          Tips : สำหรับCPUที่มี Hyper threading หรือ Duo Core สามารถเพิ่มการทำงานCPUให้เต็มที่เพื่อลดเวลาในการEncode โดย

          ในXviD Configuration > Other Options > Number of threads : HT กับ Duo Core ใส่ 2 และถ้ามีกี่Coreก็ใส่ตามนั้น เช่น Quad Core [จตุคอร์แรมเทพ]ใส่ 4 , Quad Core with HT ใส่ 8 เป็นต้น แต่พวกCPUธรรมดา(Single Core)ใส่ 1

          Functionข้างบนมีในXviD version 1.2 ขึ้นไป

          และถ้าขณะEncodeมันเล่นหน้า Preview ให้ดูไปด้วย ให้ติ๊กปิดไปซะ

          หมายเหตุ : วิธีนี้สามารถใช้กับไฟล์ได้แทบทุกชนิด ยกเว้น mkv และ flv ที่จะมีปัญหาบ้างต้องมีเทคนิคพิเศษเพิ่ม ถ้ากระแสดี จะสอนในครั้งถัดไป

          วิธีนี้เป็นวิธีค่อนข้างลัด เราสามารถเล่นลูกเล่นกับ Avisynth ได้ต่างๆมากมาย

          การencodeแบบเนียนสุดยอดนี้ใช้เวลานานมาก ดังนั้นต้องอดทน ถ้าหนังเป็นเรื่องนี่ไปหลับรอได้เลย แล้วตั้งให้มันauto shutdown

          ความจริงแล้วEntryสอน Rip DVD นั้นรวบรวมความรู้ ทักษะ ไว้แทบทุกแขนง หากใครทำได้แล้ว ผมเชื่อว่าการทำงานmultimediaอื่นๆ ไม่ใช่เรื่องยากแล้วครับ แต่ทว่า ดูเหมือนจะไม่ค่อยมีคนสนใจกัน ในเรื่องFormat file ต่างๆก็เหมือนกัน ไม่มีเสียงตอบรับเลย

          ถ้าชอบขอเสียงด้วยครับ ไม่งั้นผมตัดจบอีกแน่ 555

           

          VirtualDub Trick 1

          วิธีนี้จะทำให้ได้ผลงานคุณภาพมากที่สุด ไม่เหมือนโปรแกรมสำเร็จรูปทั่วไป

          ต้องมีVirsualdub + Subtitle Plugin ไปโหลดได้ที่นี่ Freeware

          คล้ายไฟล์ออกมาทั้ง2อันแล้วให้เอาfilter subtitleไปไว้ในfolderplugins ของVirtualDubด้วย

          1.run VirtualDub > File > Open video file

          ตรงจุดนี้ถ้าไฟล์Videoใครไม่supportผมมีวิธี ตามไปดูที่นี่

          2. การadd sub

          Video > Filters > Add > Subtitle > OK > เลือก File Subtitle > OK

          3. การเข้ารหัส Audio

          ขั้นตอนนี้ขึ้นอยู่กับไฟล์ต้นฉบับเป็นไฟล์อะไรและที่คุณต้องการให้มันออกมาเป็นไฟล์ชนิดไหน

          สมมติเป็นfile .avi (หรือพวกmp4 ทั่วๆไป) ที่มีการเข้ารหัสเสียงเป็นแบบmp3หรือwma หรือพวกระบบเสียงธรรมดา ทั่วๆไป (mp4-aac)

          ถ้าจะเอาไปทำVCDหรือDVDให้ข้ามขั้นตอนนี้

          แต่ถ้าจะให้ออกมาเป็นไฟล์Videoธรรมดา ให้เลือก Audio > Direct Stream Copy

          แต่ถ้าต้องการเข้ารหัสเสียใหม่เช่นformat audioไม่เข้ากับ formatvideo ให้เลือก Full Processing Mode แล้วเลือกเอาว่าจะเอาอันไหน กดConfigure เพื่อกำหนดค่าด้วย

          4. การเข้ารหัส Video

          ถ้าจะทำเป็น .avi ให้เลือก Video > Full Processing Mode > Compression

          สำหรับการตั้งค่าของ Video Codec ผมได้สอนไว้แล้วที่นี่ ส่วนถ้าต้องการการตั้งค่าของCodeอื่น requestมา จะสอนให้ครับ

          ถ้าจะทำเป็นVCDหรือDVDให้ข้ามขั้นตอนนี้

          5. การส่งออก

          ถ้าจะให้เป็นไฟล์.aviให้เลือก File > Save as AVI > เสร็จ

          แต่ถ้าจะทำเป็นVCD,DVDให้เลือก File > Start frame server > OK ไปเรื่อยๆ และห้ามปิด ให้ปล่อยทิ้งไว้อย่างนั้น จะได้มาเป็นไฟล์ๆนึง

          6. เปิดโปรแกรมที่จะใช้Encodeเป็นVCD,DVD เช่น Cinema craft , Procoder, TMPGEnc XPress แล้วไปเปิดไฟล์ที่ได้ในข้อ 5 มา แล้วเลือกตามต้องการว่าจะให้เป็น VCD(mpeg)หรือDVD(mpeg2) รอจนเสร็จ > ไปปิดFrame serverในข้อ5ได้

          7. จะได้เป็นไฟล์ที่มีSubฝังติดเรียบร้อยพร้อมเอาไฟล์ที่ได้ไปไรท์เป็นVCD,DVDด้วยNeroหรืออื่นๆได้เลย

          หมายเหตุ: ถ้าไฟล์ซับไม่ใช่.ssaให้แปลงเป็น.ssaก่อนด้วย SubResync ครับ มีแถมมากับชุด K-lite เช่นกัน

          หรืออาจจะเปลี่ยนไปใช้ plug-in textsub แทน

          เพิ่มเติม :(มีคนถามข้างล่าง) สำหรับไฟล์ต้นฉบับที่มีAudio2trackแต่เราต้องการแค่trackเดียว(เช่น กรณีจะทำเป็นVCD) ให้เปิดไฟล์นั้นด้วยVirtualdubmod แล้วไปที่ Streams > Streams list > ให้เลือกtrackที่ไม่ต้องการแล้วกดDisable อันที่จะใช้ก็ให้เลือกเป็นแบบDirect stream copy > Ok ออกมา

          จากนั้นจะเอาไปทำต่อยังไงก็แล้วแต่ เช่น ถ้าจะคงไว้เป็นไฟล์aviเหมือนเดิม ก็เลือก Videoเป็นแบบ Direct stream copy แล้วSaveเป็นaviได้เลย จะไม่มีการencodeใหม่ ดังนั้นคุณภาพไม่dropและ ไม่เสียเวลา

          แต่ถ้าจะทำเป็นformatอื่นก็ให้ส่งออกเป็นแบบframe serverไปเข้าโปรแกรมแปลงไฟล์หรือโปรแกรมตัดต่อตัวอื่นๆที่ต้องการครับ

           

          คัดลอกจาก http://advance.exteen.com/

          4 comments:

          nuch said...

          ขอบคุณค่ะชอบมากเลย

          อาจจะดูยุ่งยากนิดหน่อย แต่ถ้าคุณภาพดีก็โอเคนะคะ

          แต่ว่า... flv ที่มีมันใช้วิธีนี้ไม่ได้นะค่ะ ^^"

          ที่อยู่ของไฟล์ flv เป็นประเภท Rttp(อันนี้ไม่ค่อยแน่ใจค่ะ เพราะดึงมาจากเวปของญี่ปุ่น)

          ถ้าไม่เป็นการรบกวนจนเกินไป ถ้าจะช่วยสอนวิธีแปลงไฟล์ flv จากเวปเหล่านี้ก็จะขอบคุณมากเลยค่ะ

          หรือ จะแนะนำวิธีดึงไฟล์จาก เวปที่เป็น Rttp ก็ดีนะคะ ^^

          Paitoon Pansakda said...

          ขอตัวอย่างเว็บที่ว่าด้วยครับผมจะได้ช่วยทำให้อ่ะ

          Anonymous said...

          เขียนให้เข้าใจง่ายกว่านี้ได้ไหม อ่านแล้วงงมาก

          Anonymous said...

          ดีมากๆ เลยครับ...

          Post a Comment

          Related Posts Plugin for WordPress, Blogger...