วิธีกู้วิดิโอจากDrone

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

1.ติดตั้งโปรแกรม ActivePerl-5.20.1.2000-MSWin32-x86-64int-298557.msi
2.download fixenV2.zip แล้วแตกไฟล์
3.Double click run_me.cmd(ที่ได้จาก ข้อ 2)
จะขึ้น command window ดังรูป

4.Enter file name ใส่ชื่อไฟล์ที่มีปัญหา ใส่ path หรือตำแหน่งไฟล์ให้ถูกต้อง  แล้วกด Enter
5.เลือก palr4 โดยพิมพ์ palr4 แล้วกด Enter
(สำหรับ กล้อง ติดกับ phantom 2+ vision)
6.เลือก 0 (no compensate)  แล้วกด Enter
จะได้ ไฟล์ใหม่ ที่ชื่อ DJI00050.MP4.restore.mp4
ข้อสังเกต ไฟล์ที่ซ่อมแซม จะเปิดดูได้ แต่พอถึงช่วงสุดท้ายของไฟล์จะแจ้งerror
หรือพูดง่ายๆว่า จบแบบมีปัญหา แต่ก็สามารถเปิดดูได้ครบถ้วน ดีกว่าเปิดไม่ได้เลย..
จบ
ต้นฉบับเต็ม เป็นภาษาอังกฤษครับ แต่ลิงก์จำไม่ได้แล้ว  ผมก๊อปเก็บไว้นานแล้ว

How to restore GoPro MP4 corrupted or truncated file ?

Note : this article is a rough translation of the original french article, please let us know about any error (gopro.hacks@gmail.com)

Maybe you already experienced you're GoPro HD to stop filming, for one reason or another (runned out of batteries, crash...).
Thus, you may have noticed once home that some file was unreadable. This happens while the connexion between camera & SD card is cut.

If the file has a normal size though, you will read the following lines with great interest.

In fact, the camera just didn't have the oppotunity to write a correct "index" file on the MP4.
These "indexes" are necessary for a player to decode the video stream from your file.

The GoPro has a function that is pretty badly documented to avoid this kind of disagreement, so let's talk about it here.
It's called the "SoS function".



If you have some doubt about your last file being possibly corrupted, put the SD card in its slot (if necessary) and power on the camera.
If the GoPro's LCD screen displays "SoS", this means the camera found the file to be truncated and will attempt to repair it.
To allow this, you simply have to push any of the button in order to run the process. The GoPro will be able to recover the file in most cases, by writing a new header (the moov atoms of the MP4 file).
When the red led stops blinking, the repair is done.

Of course, avoid any work on the file before trying this restauration step.


If this fails :please be aware it is sometimes possible to recover the only video stream (see free script above) of the MP4 file after all.
There is also a paying service that is able to recover most of the time both video AND audio (see "commercial services" paragraph above.
First condition : that the file actually does have video information (if the file is empty, there's nothing to work on ! Please verify the file size).


Two different technique may work : rewriting of the index, or copying each of the video frame, one by one.

Let's talk about one solution that use index rewriting by recreating the missing moov atoms of the file.

A Perl script has been written by Tchiers to achieve this (GoPro.Hacks wrote a little batch file to make it simple to use). You will find the ZIP archivยิ้ม.(BETA version with NTSC/PAL support, not tested)
old version, only NTSC
This is only expected to recover the VIDEO stream (no audio).
Let's detail the way you will proceed (please note this is dedicated to windows users, but the Perl script contained in the package may be run under any other OS -mac, linux- where Perl 5.8 or above is hosted) :
Download and install Perl version 5.8 or above.
Create a folder
In this folder, let's copy the content of the fixen.zip archive. You should find one file called "fix.pl", which is the Perl script used to do the work, and a file called "run_me.cmd" which is the batch command that will help you to use the script easily. Do not download from any other source to insure these are virus-free.
Copy your dammaged file into this same folder you created (for the example, we'll call this file 'video.mp4', and we will suppose it was filmed in R3 mode).
Doiuble-click on the "run_me.cmd" file.
A new command-line window will pop-up. You're just requested to answer some very simple questions:
write down the complete name of the corrupted video file, including it's extension (video.mp4 in our example)
set the mode used for filming (r3 in our example, aka the 720p). If your camera is set on NTSC, you will enter ntscr3, if PAL : palr3 and so on...
for the first try, enter 0 as the compensation value. You will modify this parameter only if the resulting file does not play smoothly.
The Perl script will then try to recover the video stream. The resulting file will be renamed with the original file name + the extension '.restore.mp4'.
Check with VLC player  that the video stream has been well restored.
If you can see the video stream but that it does not play correctly, run the batch again but now enter different compensation values (1 at first, then 2 if there's still some problem...) until the video stream looks good.
You should meet some difficulties to use advanced playing function (such as fast forwarding the video). This is due to the fact that the file is not totally complete and well indexed.
Re-encoding the file is therefore a recommended option.
For Mac users, here is the source codeo of a patch tool called recoverMP4.
It will allow you to rebuild the description of GoPro files. Please note this is only a SOURCE, originally dedicated to one single file. This won't work, as it is, for a general purpose and you will have to adapt the code to your very own file caracteristics (size, framerate, etc.) Some knowledge is therefore required.

COMMERCIAL SERVICES

Last, if you didn't succeed in recovering your video file and if this one looks important to your eyes, or if you absolutely need audio, note that there exists a commercial service specialised in MP4 recovering.

In the most difficult cases, they do a manual repair of the video, which may take some time.
We could recommand this address : videofilerepair@gmail.com which we already worked with. They restaured for us both video AND audio from a damaged file.

After a first message to detail our request (shooting mode, duration...) you will receive an answer with a quote (30US$ for a 2 Go file for us).

If you find the rate acceptable, you then send the damaged  file for examination. In return, you will receive a message telling you whether the file may be repaired or not, and if it is, you'll be able to download a short video sample of the repaired video for you to evaluate the quality you may expect from the repair.

If everything is Ok to you, you will receive payment instructions. Once this done, you will receive a link back to download the repaired video.

Note that reparation duration may vary quite a lot, according to the file size and the technician availibility.
แก้ไขข้อความเมื่อ
แสดงความคิดเห็น
อ่านกระทู้อื่นที่พูดคุยเกี่ยวกับ  กล้อง Canon กล้องวิดีโอ
โปรดศึกษาและยอมรับนโยบายข้อมูลส่วนบุคคลก่อนเริ่มใช้งาน อ่านเพิ่มเติมได้ที่นี่