デジタルカメラで2本の動画を撮りました。両方のビデオは、同一のコーデックと設定を使用して保存されました。
2番目のビデオが何らかの理由で破損しており、VLCまたはビデオ編集ソフトウェアで開くことができません。 (最初のビデオは大丈夫です)。
私は「ビデオからビデオへ」ソフトウェアでビデオを変換しようとしました:
#8636.3: [h264 @ 04E10060]AVC: nal size -1920576098
#8636.3: [h264 @ 04E10060]no frame!
#8636.5: [mov,mp4,m4a,3gp,3g2,mj2 @ 04EC4020]decoding for stream 0 failed
#8636.4: [mov,mp4,m4a,3gp,3g2,mj2 @ 04EC4020]Could not find codec parameters
for stream 0 (Video: h264 (avc1 / 0x31637661), 1920x1080, 11987 kb/s):
unspecified pixel format
#8636.4: Consider increasing the value for the 'analyzeduration' and
'probesize' options
***File load error: C:\..\PICT0002.MP4: could not find codec parameters
ビデオでのGspotを使用した分析(ビデオが右側で破損している:PICT0002):
誰かが2番目のビデオを修復するためのツールまたは方法を提案できますか?サイズは正しく(3GB)、VLCで開こうとすると長さは問題ないようです(40分)。
理論的には、ファイル内のコーデックメタデータを変更して、ソフトウェアで認識できるようにする必要がありますか?
[〜#〜]更新[〜#〜]
ffmpeg分析を試しました。コマンド:ffmpeg -analyzeduration 2000000000 -i PICT0002.mp4 -c:v libx264 -c:a copy PICT0002-fixed.mp4
応答:
C:\Programmi\ffmpeg\bin>ffmpeg -analyzeduration 2000000000 -i PICT0002.mp4 -
c:v libx264 -c:a copy PICT0002-fixed.mp4
ffmpeg version N-91398-Gd08d4a8c73 Copyright (c) 2000-2018 the FFmpeg
developers
built with gcc 7.3.0 (GCC)
configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-
bzlib --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass
--enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-
libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --
enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --
enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack
--enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --
enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-
libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa
--enable-libspeex --enable-libxvid --enable-libaom --enable-libmfx --
enable-amf --enable-ffnvcodec --enable-cuvid --enable-d3d11va --enable-
nvenc --enable-nvdec --enable-dxva2 --enable-avisynth
libavutil 56. 18.102 / 56. 18.102
libavcodec 58. 20.104 / 58. 20.104
libavformat 58. 17.101 / 58. 17.101
libavdevice 58. 4.101 / 58. 4.101
libavfilter 7. 25.100 / 7. 25.100
libswscale 5. 2.100 / 5. 2.100
libswresample 3. 2.100 / 3. 2.100
libpostproc 55. 2.100 / 55. 2.100
[h264 @ 000002036235d380] Invalid NAL unit size (-1920576098 > 197632).
[h264 @ 000002036235d380] Error splitting the input into NAL units.
[mov,mp4,m4a,3gp,3g2,mj2 @ 000002036234a300] decoding for stream 0 failed
[mov,mp4,m4a,3gp,3g2,mj2 @ 000002036234a300] Could not find codec
parameters for stream 0 (Video: h264 (avc1 / 0x31637661), none, 1920x1080,
11987 kb/s): unspecified pixel format
Consider increasing the value for the 'analyzeduration' and 'probesize'
options
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'PICT0002.mp4':
Metadata:
major_brand : avc1
minor_version : 0
compatible_brands: avc1isom
creation_time : 2021-06-30T08:32:50.000000Z
Duration: 00:40:53.45, start: 0.000000, bitrate: 12122 kb/s
Stream #0:0(eng): Video: h264 (avc1 / 0x31637661), none, 1920x1080, 11987
kb/s, 29.97 fps, 29.97 tbr, 90k tbn, 180k tbc (default)
Metadata:
creation_time : 2021-06-30T08:32:50.000000Z
handler_name : Ambarella AVC
encoder : Ambarella AVC encoder
Stream mapping:
Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264))
Press [q] to stop, [?] for help
[h264 @ 000002036234dd40] Invalid NAL unit size (-1920576098 > 197632).
[h264 @ 000002036234dd40] Error splitting the input into NAL units.
[h264 @ 0000020363f92300] Invalid NAL unit size (1565499804 > 10496).
[h264 @ 0000020363f92300] Error splitting the input into NAL units.
Error while decoding stream #0:0: Invalid data found when processing input
Last message repeated one time
Cannot determine the format of input stream 0:0 after EOF
Error marking filters as finished
Conversion failed!
したがって、変換は失敗しました。
このツールをチェックしてください: ビデオ修復ツール
フリーウェアではありませんが、ビデオの50%を無料で修復するため、機能するかどうかがわかります。
このyoutubeビデオもチェックしてください: https://www.youtube.com/watch?v=5QK3vizVIds
解決策。
まず最初に、リカルド・ボーナーにあなたをタンクします。彼はビデオ 修復ツール を参照しています。
そのサイトにアクセスすると、このツールが利用できなくなっていることがわかります。 Restore Media に登録する必要があります。
別の方法として、 ここ に行くことができます。私は ここ に示された指示に従いました。
悲しいことに、私はビデオの40:00分の30:00分しか回復しませんでしたが、回復された部分は完璧です。
これがお役に立てば幸いです。
UPDATE:Riccardo Bonher(コメントで以下を参照)で説明されているように、トリック(mp4の長さを2倍にする)を使用して 修復ツール 。
このようにして、破損したmp4のすべての長さを修復することができました。これを行った後、VLC(ビデオリーダー)でビデオを見ることができました。
..しかし、editing-softare(VirtualDub、Video to Videoなど)で変換することはできませんでした。
そこで、私は組み合わせた手順を使用しました:A)ビデオ全体の長さを回復するためにRiccardoソリューション(コメントで説明されている)を使用するB)元のソリューション(recover-mp4-to-h264.Zip)によって復元されたビデオを再パスして正しくする一般的な編集ソフトウェアで読み取り可能です。これが人々を助けることができることを願っています。