Web sitemin, kullanıcıların sağladığım kaynak videodan kendi kliplerini doğru bir şekilde oluşturmalarına izin vermesini istiyorum.
İlk önce bir web sitesi için uygun bir şeye dönüştürmek istediğiniz bir kaynak video dosyası var:
Input #0, matroska,webm, from 'source.mkv':
Duration: 00:28:18.57, start: 0.000000, bitrate: 10183 kb/s
Stream #0:0: Video: h264 (Constrained Baseline), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], 23.98 fps, 23.98 tbr, 1k tbn, 48 tbc (default)
Stream #0:1: Audio: mp3, 44100 Hz, stereo, s16, 128 kb/s (default)
Ben böyle dönüştürmek için ffmpeg kullanın:
ffmpeg -i source.mkv -c:v libx264 -c:a aac -strict experimental -vf scale="960:-1" source.mp4
Bu videoyu geri izlemek, yeterince iyi kalitede ve ihtiyaçlarım için yeterince küçük dosya boyutu ve web siteme yükler / oynatır.
Kullanıcıların bu videoda bir başlangıç ve bitiş noktası seçmesine ve bir klip oluşturmasına olanak tanıyan bir web sayfam var. Bunun için kullandığım ffmpeg komutunun bir örneği:
-ss 577.920 -i source.mp4 -t 011.980 -codec:v copy -codec:a copy -vf scale="960:-1" clip1.mp4
Sorun klibin her zaman yeterince doğru olmamasıdır. Genellikle ses yeterince doğrudur, ancak video yarım saniye erken durur.
Bunu bir saniyede 0,2 oranında doğru ve senkronize yapmanın bir yolu var mı?
EDIT: Eklemek -force_key_frames 00:00:00.2
yardımcı olmadı.
EDIT: kırpma (iyi) sonuçları -c:v libx264 -c:a aac -strict experimental
yerine kullanmak için değiştirdim -codec:v copy -codec:a copy
.
Dosya harici olarak sorunsuz bir şekilde oynatılabilir - ancak html5 video öğeme yükleyip oynattığımda - videonun son kısmı (ses iyi) donuyor. Donmuş olan son kısım bir saniyeden daha kısa.
Başka bir video kodlayıcıyla mı denemeliyim? Libx264 için en iyi alternatif nedir? Bunu göz önünde bulundurarak muhtemelen bunun herkese açık bir web sitesinde olmasını isteyeceğim.
Ancak, MPC veya Windows Media Player gibi bir oynatıcıyla sorunsuz bir şekilde oynatılması, Google Chrome veya HTML video öğesinde bir sorun olduğunu göstermiyor mu? Yoksa desteklenmeyen bir kodlama falan mı kullanıyorum?