delacroix01
Eroge Addict
Có 1 số trường hợp cần phải trim 1 đoạn từ mkv ra mà làm, chẳng hạn như chỉ cần đoạn OP/ED, hoặc thằng bastard cung cấp raw đem ghép nhiều ep lại làm 1. Nếu cắt bằng AVISynth thì chỉ có 1 cách là cắt theo kiểu CFR. Vấn đề quan trọng là giữ được VFR và audio phải sync với video gần như tuyệt đối. Sau 1 hồi nghiên cứu thì tớ đã mò ra cách cắt chính xác bằng mkvmerge trong bộ mkvtoonix. Chi tiết như sau :
- Dùng MPC mở video ra. Ở đây tớ thử với Shakugan no Shana Second ep 21 của Eclipse.
- Seek cho đến keyframe đầu đoạn cần trim. Ở đây là cái OP.
- Seek về 1 frame nào đó nằm trong khoảng giữa của keyframe trước keyframe hồi nãy đến keyframe đó. Có thể sử dụng phím mũi tên. Tuy nhiên để chính xác thì tớ khuyên nên sử dụng chức năng jump theo timecode bằng cách ấn Ctrl+G và điền vào đó 1 giá trị nào đó cho tới khi nó đạt xấp xỉ giá trị cần thiết. Ở đây tớ thu được 00:00:19.970.
- Tiếp tục lặp lại với keyframe nằm cuối đoạn cần cut. Nhớ seek cho tới frame nằm ngay trước keyframe đó nhưng ko được lui quá keyframe nằm sát keyframe cuối này. Ở đây tớ thu được 00:01:49.942.
- Mở mkvmerge lên, drag & drop file vào, chọn đường dẫn. Tiếp theo vào tab Globbal, chọn Enable splitting, đánh dấu vào ...after timecodes, nhập 2 giá trị vào. Ở đây tớ nhập 00:00:19.970,00:01:49.942
- Bấm Start muxing ta sẽ thu được 3 file. File ở giữa chính là file cần dùng. Do mkvmerge nó sẽ grab cái keyframe nằm ngay sát timecode khi cắt nên ở đây ta sẽ thu được kết quả chính xác hoàn toàn. Nếu làm đúng thì các file sẽ ko bị dư hay thiếu frame nào, trong khi vẫn đảm bảo audio sync và giữ được chapter settings
Nếu muốn trim nhiều đoạn hơn thì lặp lại, thêm timecode vào. Nhớ phải cách nhau dấu phẩy. Tuy nhiên lâu lâu có 1 vài trường hợp nó vẫn tính sai do ko nhận được keyframe.
- Dùng MPC mở video ra. Ở đây tớ thử với Shakugan no Shana Second ep 21 của Eclipse.
- Seek cho đến keyframe đầu đoạn cần trim. Ở đây là cái OP.
- Seek về 1 frame nào đó nằm trong khoảng giữa của keyframe trước keyframe hồi nãy đến keyframe đó. Có thể sử dụng phím mũi tên. Tuy nhiên để chính xác thì tớ khuyên nên sử dụng chức năng jump theo timecode bằng cách ấn Ctrl+G và điền vào đó 1 giá trị nào đó cho tới khi nó đạt xấp xỉ giá trị cần thiết. Ở đây tớ thu được 00:00:19.970.
- Tiếp tục lặp lại với keyframe nằm cuối đoạn cần cut. Nhớ seek cho tới frame nằm ngay trước keyframe đó nhưng ko được lui quá keyframe nằm sát keyframe cuối này. Ở đây tớ thu được 00:01:49.942.
- Mở mkvmerge lên, drag & drop file vào, chọn đường dẫn. Tiếp theo vào tab Globbal, chọn Enable splitting, đánh dấu vào ...after timecodes, nhập 2 giá trị vào. Ở đây tớ nhập 00:00:19.970,00:01:49.942
- Bấm Start muxing ta sẽ thu được 3 file. File ở giữa chính là file cần dùng. Do mkvmerge nó sẽ grab cái keyframe nằm ngay sát timecode khi cắt nên ở đây ta sẽ thu được kết quả chính xác hoàn toàn. Nếu làm đúng thì các file sẽ ko bị dư hay thiếu frame nào, trong khi vẫn đảm bảo audio sync và giữ được chapter settings

Nếu muốn trim nhiều đoạn hơn thì lặp lại, thêm timecode vào. Nhớ phải cách nhau dấu phẩy. Tuy nhiên lâu lâu có 1 vài trường hợp nó vẫn tính sai do ko nhận được keyframe.