LINUX.ORG.RU

Можно ли восстановить видеозапись?

 ,


1

2

Привет всем. Писал видео с экрана, simplescreenrecorder. Писал долго, 1.5 часа. На улице гроза. Почти дошел до конца - и тут бац - свет неожиданно вырубился и комп ушел в ребут. Гружусь снова - файл видео есть, но плеер его не хавает. Можно как-то восстановить его? Или все потеряно? Вот что пишет VLC при попытке открытия

vlc gentoo.mp4
VLC media player 2.1.4 Rincewind (revision 2.1.4-0-g2a072be)
[0x640118] main libvlc: Запуск vlc с интерфейсом по умолчанию. Используйте 'cvlc' для запуска vlc без интерфейса.
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fc9c4c3a4a0] moov atom not found
[0x7fc9a8c01888] mp4 demux error: MP4 plugin discarded (no moov,foov,moof box)
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fc9a8c09f60] moov atom not found
[0x7fc9a8c01888] avformat demux error: Could not open /home/w1nner/Документы/gentoo.mp4: Unknown error 1094995529
[0x7fc9a8c3b438] main demux error: option sub-original-fps does not exist
[0x7fc9b00009b8] main input error: no suitable demux module for `file/subtitle:///home/w1nner/%D0%94%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D1%8B//Gentoo-install-dark-night.txt'
[0x7fc9a8c3b468] main demux error: option sub-original-fps does not exist
[0x7fc9b00009b8] main input error: no suitable demux module for `file/subtitle:///home/w1nner/%D0%94%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D1%8B//Gentoo-install-official-wiki.txt'
mplayer
mplayer gentoo.mp4
MPlayer SVN-r37051 (C) 2000-2014 MPlayer Team
207 audio & 440 video codecs
mplayer: could not connect to socket
mplayer: No such file or directory
Failed to open LIRC support. You will not be able to use your remote control.

Playing gentoo.mp4.
libavformat version 55.33.100 (internal)
libavformat file format detected.
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7f71fea007a0]moov atom not found
LAVF_header: av_open_input_stream() failed
libavformat file format detected.
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7f71fea007a0]moov atom not found
LAVF_header: av_open_input_stream() failed


Exiting... (End of file)

★★★★★

Я так думаю, что просто «не закончен», или что-то типа того.
Попробуй открыть его в каком филморедакторе, может, он распознает его по структуре и надергает из неого сцен, которые ты потом сможешь собрать в новый файл.

Zhbert ★★★★★ ()

Попробуй плееры разные. vlc, mplayer (mpv) для начала. По-моему vlc умеет работать с «битыми» файлами. У файла-то хоть размер соответствует 1.5 часам записи?

ephecaff ()
Ответ на: комментарий от ephecaff

Да, соответсвует. VLC - не вопроизодит, и не перематывает.

w1nner ★★★★★ ()

Мне в похожей проблеме помогло:
ffmpeg -i source_video.avi -acodec copy -vcodec copy output_video.avi

tierpunk ()
Ответ на: комментарий от Zhbert

Пробовал openshot и pitivi - не помогает, они даже не хотят признавать что это видеофайл. Кстати писал в mp4.

w1nner ★★★★★ ()

Если ты потерял данные на диске, первое правило - прекрати использовать этот диск на запись, поставь его в readonly. Если ты с него грузился, грузись с чего-нибудь другого.

Для восстановления данных известных типов с диска можно применять foremost или photorec. Есть и другие forensics tools, но названия всех не упомню, поищи. По крайней мере foremost и photorec я использовал, работают вполне.

KirG0FF ★★ ()

Может это не готовый видеофайл, а данные для его создания?

stitchix ()
Ответ на: комментарий от KirG0FF

Данные не потеряны, файл лежит, причем не пустой. Просто не могу никак его ни открыть ни отредактировать.

Мне в похожей проблеме помогло: ffmpeg -i source_video.avi -acodec copy -vcodec copy output_video.avi

Сделал

ffmpeg -i gentoo.mp4 -acodec copy -vcodec copy gentoo-1.mp4
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1486a60] moov atom not found
gentoo.mp4: Invalid data found when processing input
Conversion failed!

w1nner ★★★★★ ()
Ответ на: комментарий от tierpunk

У меня не гента =)) Но все равно сделал, вот что пишет

mkvmerge -v -o test.mkv gentoo.mp4
mkvmerge v6.9.1 ('Blue Panther') 64bit built on Apr 26 2014 08:11:16
'gentoo.mp4': Применяется демультиплексор для формата 'QuickTime/MP4'.
Ошибка: Не удалось запустить демультиплексор для файла 'gentoo.mp4':
Файл не может быть открыт для чтения, или не хватает данных для анализа его заголовков.
Я записывал видео с гентой на виртуалке через simplescreenrecorder.

Может это не готовый видеофайл, а данные для его создания?

Ну да, скорее так и есть. В SSR - пока не нажмешь save recording -то запись пишется в файл, но не сохраняется. Я, к сожалению, не успел нажать на save, т.к. комп сам ребутнулся.

w1nner ★★★★★ ()
Последнее исправление: w1nner (всего исправлений: 1)
Ответ на: комментарий от w1nner

А что если... Опять начать писать той же прогой видос, в процессе подменить файл, в который она пишет на тот, что уже есть, а потом жмакнуть сейв?
Пользуясь случаем, передаю привет всем любителям фантастики! Не только книжной :)

anonymous ()

MP4-контейнер не финализировался. Линукс, жёсткий диск тут ни при чём, граждане, не мелите чепухи.

Как поправить файл - я сразу подсказать не могу, нужно сделать это в соответствии с тем, как это делает MP4-муксер ffmpeg: http://git.videolan.org/?p=ffmpeg.git;a=blob;f=libavformat/movenc.c;h=7991ada... . Если разобраться и самостоятельно запатчить файл не удаётся, я бы задал вопрос в мейллисте ffmpeg-user@ffmpeg.org , и, возможно, посулил денежек за решение.

Krieger_Od ★★ ()

Похоже все решения данной проблемы очень геморные. Придется заново записывать. Ну что ж, спасибо всем кто хотел помочь.

w1nner ★★★★★ ()

vlc попробуй. Если нет, то NoWay

emulek ()
Ответ на: комментарий от YLoS

была бы у тебя винда и вопросов бы не возникло как восстанавливать файлы

впрочем как и файла не было бы.

emulek ()

Фиксить файловую систему пробовал?

Deleted ()

Попробуй

ffmpeg -i gentoo.mp4 -vcodec rawvideo -acodec pcm_s16le filename.avi

Суть такая, что просто в raw его.

anonymous_sama ★★★★★ ()
Ответ на: комментарий от Krieger_Od

единственный способ. Но, боюсь атом, который содержит нужны таблицы переходов, должен был быть записан в конце, и, по факту, в середине мусор.

Только если писать интелектуальную штуку, что сможет понять, где там видео, а где звук

namezys ★★★★ ()
Ответ на: комментарий от w1nner

Если неохота больше использовать «предательски» себя показавший контейнер, пиши в FLV или MPEGTS, или что-то другое, не критичное к финализации :)

Krieger_Od ★★ ()
Ответ на: комментарий от w1nner

да. например, flv, mpegts, кажется, matroska, и прочие подобные, можно вообще писать в реальном времени в сокет и тут же проигрывать на удалённом узле.

Krieger_Od ★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.