Bir .flv dosyasını fmpmpeg aracılığıyla .mp4 biçimine dönüştürmek hatayla sonuçlanır


2

Şu anda ffmpeg 3.2.2 sürümünü kullanıyorum ve karşılaştığım konu, örnek bir .flv dosyasını dönüştürmeye çalıştığımda, beklenen bir .mp4 biçimine düzgün biçimde dönüştürmemesi. Karşılaştığım hata:

ffmpeg -i flv.flv -vcodec copy -acodec copy flv.mp4
ffmpeg version 3.2.2 Copyright (c) 2000-2016 the FFmpeg developers
  built with Apple LLVM version 8.0.0 (clang-800.0.42.1)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/3.2.2 --enable-shared --enable-pthreads --enable-gpl --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-libmp3lame --enable-libx264 --enable-libxvid --enable-opencl --disable-lzma --enable-vda
  libavutil      55. 34.100 / 55. 34.100
  libavcodec     57. 64.101 / 57. 64.101
  libavformat    57. 56.100 / 57. 56.100
  libavdevice    57.  1.100 / 57.  1.100
  libavfilter     6. 65.100 /  6. 65.100
  libavresample   3.  1.  0 /  3.  1.  0
  libswscale      4.  2.100 /  4.  2.100
  libswresample   2.  3.100 /  2.  3.100
  libpostproc    54.  1.100 / 54.  1.100
[flv @ 0x7f9af4800000] audio stream discovered after head already parsed
[flv @ 0x7f9af4800000] video stream discovered after head already parsed
Input #0, flv, from 'flv.flv':
  Metadata:
    encoder         : Lavf53.24.2
  Duration: 00:00:26.40, start: 0.000000, bitrate: 1589 kb/s
    Stream #0:0: Audio: aac (LC), 48000 Hz, 5.1, fltp
    Stream #0:1: Video: flv1, yuv420p, 1280x720, 25 fps, 25 tbr, 1k tbn
File 'flv.mp4' already exists. Overwrite ? [y/N] y
[mp4 @ 0x7f9af5829e00] Could not find tag for codec flv1 in stream #0, codec not currently supported in container
Could not write header for output file #0 (incorrect codec parameters ?): Invalid argumentStream mapping:
  Stream #0:1 -> #0:0 (copy)
  Stream #0:0 -> #0:1 (copy)
    Last message repeated 1 times

Dosyayı dönüştürmekte sorun yaşayıp yaşamadıklarını görmek için bazı çevrimiçi dönüştürücüler kullanmayı denedim, ancak hepsi düzgün bir şekilde mp4'e dönüştürüldü.

Bu konuda herhangi bir yardım için minnettar olurum!


Bu mesaj çok açık: " kodek şu anda kapta desteklenmiyor ". Bence çevrimiçi dönüştürücüler de videoyu mp4'e sığacak şekilde yeniden kodladılar.
Ipor Sircer

@İporSircer Cevap verebilirsin. "flv1" / Sorenson Spark / Sorenson H.263 (Flash Video), MP4 kabında desteklenmez ve çevrimiçi dönüştürücüler yeniden mux yerine yeniden kodlanır.
lgan

Yorumlarınız için teşekkürler. Bu konuda çok yeniyim, bu yüzden herhangi bir tavsiye yardımcı olur. Bazıları açık görünse de, benim için bir "codec" in ne olduğunu tam olarak anladığımı sanmıyorum. Sadece kullanıcının video yüklemesini sağlayan bir proje üzerinde çalışıyorum, ancak videonun izlenebilmesini sağlamaya çalışıyorum, bu yüzden bazı biçimleri dönüştürmem gerekeceğini düşünüyorum.
Chris Palmer Breuer

@IporSircer Nevermind. Sen onu yendin. Hızlı olmalı.
lgan

Yanıtlar:


5

Yorumlarda belirtildiği gibi, ffmpeg MP4'teki flv1video akışlarını çoğaltmaz .

Bunun yerine tekrar kodlayın:

ffmpeg -i flv.flv -vcodec libx264 -acodec copy flv.mp4
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.