Ffmpeg ile iPhone için FLV MP4 dönüştürülemez


0

Bir FLV'yi iPhone / iPad'de Video-js ile oynatılacak olan bir MP4'e dönüştürme konusunda sorun yaşıyorum.

Ffmpeg komutlarının gerektiği gibi dönmediği görülüyor.

İşte cumulusclips yazılımının dönüşümde çalıştığı orijinal komutlardan biri:

/usr/bin/ffmpeg -i /var/www/html/cumulus/cc-content/uploads/temp/M2q9rmYjSkElrCJA34Cr.avi -s 640x480 -vb 800k -ac 2 -ab 96k -ar 44100     -f flv /var/www/html/cumulus/cc-content/uploads/flv/M2q9rmYjSkElrCJA34Cr.flv

Aşağıdakine benzer çıktılar:

Input #0, avi, from '/var/www/html/cumulus/cc-content/uploads/temp/M2q9rmYjSkElrCJA34Cr.avi':
  Metadata:
    ISFT            : MEncoder 2:1.0~rc2-0ubuntu13
  Duration: 00:09:56.45, start: 0.000000, bitrate: 9586 kb/s
    Stream #0.0: Video: msmpeg4v2, yuv420p, 1920x1080, 24 tbr, 24 tbn, 24 tbc
    Stream #0.1: Audio: mp3, 48000 Hz, 2 channels, s16, 160 kb/s
Output #0, flv, to '/var/www/html/cumulus/cc-content/uploads/flv/M2q9rmYjSkElrCJA34Cr.flv':
  Metadata:
    encoder         : Lavf52.64.2
    Stream #0.0: Video: flv, yuv420p, 640x480, q=2-31, 800 kb/s, 1k tbn, 24 tbc
    Stream #0.1: Audio: libmp3lame, 44100 Hz, 2 channels, s16, 96 kb/s
Stream mapping:
  Stream #0.0 -> #0.0
  Stream #0.1 -> #0.1

Bundan sonra, mobil cihazlar için aşağıdakileri çalıştırıyor:

/usr/bin/ffmpeg -i /var/www/html/cumulus/cc-content/uploads/temp/M2q9rmYjSkElrCJA34Cr.avi -s 480x360 -vb 600k -ac 2 -ab 96k -ar 44    100 -f mp4 /var/www/html/cumulus/cc-content/uploads/mobile/M2q9rmYjSkElrCJA34Cr_temp.mp4

Çıktı:

Input #0, avi, from '/var/www/html/cumulus/cc-content/uploads/temp/M2q9rmYjSkElrCJA34Cr.avi':
  Metadata:
    ISFT            : MEncoder 2:1.0~rc2-0ubuntu13
  Duration: 00:09:56.45, start: 0.000000, bitrate: 9586 kb/s
    Stream #0.0: Video: msmpeg4v2, yuv420p, 1920x1080, 24 tbr, 24 tbn, 24 tbc
    Stream #0.1: Audio: mp3, 48000 Hz, 2 channels, s16, 160 kb/s
Output #0, mp4, to '/var/www/html/cumulus/cc-content/uploads/mobile/M2q9rmYjSkElrCJA34Cr_temp.mp4':
  Metadata:
    encoder         : Lavf52.64.2
    Stream #0.0: Video: mpeg4, yuv420p, 480x360, q=2-31, 600 kb/s, 24 tbn, 24 tbc
    Stream #0.1: Audio: libfaac, 44100 Hz, 2 channels, s16, 96 kb/s

Emin değilim, ama önce avi'den flv'ye, sonra da avi'den mp4'e dönüştürmeye mi çalışıyorsunuz? Neden ikisi de? Ne istiyorsun? Bir sunucudan / cihazdan iO'larda oynatılacak bir dosya mı?
Rajib

Bir dahaki sefere, lütfen sadece alakalı olduğunu düşündüğün parçaları değil, tam kütük çıktısını da ekle. Bu, sorununuzu daha iyi gidermemize yardımcı olur. Özel kod formatlama özelliğine sahibiz - 4 boşlukla girin veya kodu seçin ve tuşuna basın Ctrl-K. Ayrıca, "düzgün çalışmamak" derken ne demek istediğinizi bize söylemeniz gerekir. Sorunu gördüğümden eminim ama bu her zaman çok açık olmayabilir.
slhck

Yanıtlar:


1

Kullanmakta olduğunuz ffmpeg sürümünün oldukça eski olduğundan eminim. Lütfen sisteminiz için resmi ana sayfadan statik bir yapı indirin ffmpegve eskisinin yerine yeninin yolunu kullanın /usr/bin/ffmpeg.

Örneğin, statik yapınızı indirdiyseniz, onu koyabilir /usr/local/bin/ffmpeg, çalıştırılabilir ( chmod ugo+x /usr/local/bin/ffmpeg) yapabilir ve ardından kullanabilirsiniz.

Daha sonra, bir videoyu HTML5'e hazır ve her türlü mobil cihaz tarafından oynanabilen bir MP4'e dönüştürmek için böyle bir komut istersiniz:

ffmpeg -i input.avi -c:v libx264 -c:a aac -strict experimental -b:a 128k \
-crf 23 -profile:v baseline -movflags faststart output.mp4

İstediğiniz kaliteye bağlı olarak (18–28, iyi bir aralıktır, daha düşük anlamına gelir) -b:v 2MCRF'yi değiştirin veya örneğin, 2 MBit / s'de sabit bit hızı kodlaması için seçin .

Orijinal dönüşüm, mobil cihazlar tarafından desteklenmesi gereken, ancak mutlaka olması gerekmeyen MPEG-4 Part 10 yerine MPEG-4 Part 2 videosu kullanıyordu. Bu daha güvenli.

Ayrıca, bugünlerde FLV videoları oluşturmanıza gerek yok. Bu (biraz antik) format gerektiren bir cihaz veya oynatma teknolojisinin farkında değilim.

Siz de bununla ilginizi çekebilir: HTML5 uyumlu "Herkes için Video" için ne tür ffmpeg komut dosyaları gerekir?


Çok teşekkürler. Gelecekteki videolar için deneyeceğim. Benim yöntem ile ana sorun sunucu olduğu ve https üzerinden çalışan çıktı. Bazı nedenlerden dolayı video SSL üzerinden oynatılmayacak, ancak gösterilmeyecek. Yani evet. Seninkini seçtim çünkü bu iyi bir bilgi.
billabongrob
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.