Ошибка при открытии кодировщика для выходного потока # 0.0 - возможно, неправильные параметры, такие как бит_трект, скорость, ширина или высота
Я использую эту команду для преобразования AVI, mov, m4v видеофайлов в формат FLV через FFMPEG
/usr/local/bin/ffmpeg -i '/home/public_html/files/video_1355440448.m4v' -s '640x360' -sameq -ab '64k' -ar '44100' -f 'flv' -y /home/public_html/files/video_1355440448.flv
[flv @ 0x68b1a80] requested bitrate is too low
Output #0, flv, to '/home/files/1355472099-50cadce349290.flv':
Stream #0.0: Video: flv, yuv420p, 640x360, q=2-31, pass 2, 200 kb/s, 90k tbn, 25 tbc
Stream #0.1: Audio: adpcm_swf, 44100 Hz, 2 channels, s16, 64 kb/s
Stream mapping:
Stream #0.0 -> #0.0
Stream #0.1 -> #0.1
Error while opening encoder for output stream #0.0 - maybe incorrect parameters such as bit_rate, rate, width or height
-------------------------------
RESULT
-------------------------------
Execute error. Output for file "/home/public_html/files/video_1355472099.avi" was found, but the file contained no data. Please check the available codecs compiled with FFmpeg can support this type of conversion. You can check the encode decode availability by inspecting the output array from PHPVideoToolkit::getFFmpegInfo().
Но если я вручную использовал эту команду, то ее рабочая
/usr/local/bin/ffmpeg -i '/home/public_html/files/video_1355440448.m4v' -s '640x360' -sameq -ab '64k' -ar '44100' -f 'flv' -y /home/public_html/files/video_1355440448.flv
Ответы
Ответ 1
-
Это связано с тем, что у вас есть два потока, а вывод будет кодироваться, а затем изменять размер, см. выходные сообщения:
Stream #0.0 -> #0.0
Stream #0.1 -> #0.1
... вы используете adpcm_swf
аудио и yuv420p
видео
Ответ очень прост, вам нужно поставить copy
в качестве аудиокодека...
Смотрите мой пример с видео mpeg4, yuv420p и аудио ac3...
ffmpeg -i input.mkv -vf scale=720:-1 -acodec copy -threads 12 output.mkv
это изменит первый размер = 720 с соотношением сторон = -1 (неизвестно). Также вам нужно использовать:
-acodec copy -threads 12
Если вы не используете это, вы получите одну ошибку.
Например: когда я его использовал, сообщения с кодировкой вывода показывают мне это, и он работает хорошо:
[h624 @ 0x874e4a0] missing picture in access unit93 bitrate=1034.4kbits/s
Last message repeated 1163 times5974kB time=53.47 bitrate= 915.3kbits/s
-
Вам нужно использовать файл формата FLV, например:
ffmpeg -i input.mp4 -c:v libx264 -crf 19 output.flv
Ответ 2
Вам сообщается сообщение об ошибке
[flv @ 0x68b1a80] requested bitrate is too low
Вам нужно изменить битрейт на действительный. Лучше, если вы используете другой кодек
-acodec libmp3lame
И удалите опцию -sameq
. Этот параметр НЕ означает "одинаковое качество". На самом деле означает "те же кванторы"!
Ответ 3
У меня была аналогичная проблема из-за ограничений по размеру. Исходный размер изображения был странным (width = 1343), что означает, что когда я пытался указать новый размер с -s, любая ошибка округления вызывала проблемы. Убедитесь, что новый размер изображения может иметь одинаковое соотношение сторон.
Ответ 4
У меня такая же проблема
- requested bitrate is too low
и просто решил эту проблему, снизив скорость передачи данных
by adding -b:a 32k
Ответ 5
У меня есть смилар, но я не нашел здесь ответа на этот вопрос. Я пытаюсь преобразовать file.ts в .webm-контейнер и также получаю эту ошибку: "Ошибка при открытии кодировщика для выходного потока # 0: 2 - возможно, неверные параметры, такие как bit_rate, rate, width или height"
ffmpeg -y -i ./test.ts -r 25 -b 18550k -bt 22792k -ac 2 -ar 48000 -ab 320k ./test.webm
Выход:
ffmpeg version 3.2.12-1~deb9u1 Copyright (c) 2000-2018 the FFmpeg developers
built with gcc 6.3.0 (Debian 6.3.0-18+deb9u1) 20170516
configuration: --prefix=/usr --extra-version='1~deb9u1' --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --enable-gpl --disable-stripping --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libebur128 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmp3lame --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libopencv --enable-libx264 --enable-shared
libavutil 55. 34.101 / 55. 34.101
libavcodec 57. 64.101 / 57. 64.101
libavformat 57. 56.101 / 57. 56.101
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
[h264 @ 0x55cb216a6b40] SPS unavailable in decode_picture_timing
[h264 @ 0x55cb216a6b40] non-existing PPS 0 referenced
[h264 @ 0x55cb216a6b40] SPS unavailable in decode_picture_timing
[h264 @ 0x55cb216a6b40] non-existing PPS 0 referenced
[h264 @ 0x55cb216a6b40] decode_slice_header error
[h264 @ 0x55cb216a6b40] no frame!
.
.
.
[mpegts @ 0x55cb21681440] start time for stream 9 is not set in estimate_timings_from_pts
[mpegts @ 0x55cb21681440] PES packet size mismatch
[mpegts @ 0x55cb21681440] Could not find codec parameters for stream 0 (Unknown: none ([5][0][0][0] / 0x0005)): unknown codec
Consider increasing the value for the 'analyzeduration' and 'probesize' options
[mpegts @ 0x55cb21681440] Could not find codec parameters for stream 1 (Unknown: none ([12][0][0][0] / 0x000C)): unknown codec
Consider increasing the value for the 'analyzeduration' and 'probesize' options
[mpegts @ 0x55cb21681440] Could not find codec parameters for stream 2 (Unknown: none ([11][0][0][0] / 0x000B)): unknown codec
Consider increasing the value for the 'analyzeduration' and 'probesize' options
[mpegts @ 0x55cb21681440] Could not find codec parameters for stream 10 (Unknown: none ([11][0][0][0] / 0x000B)): unknown codec
Consider increasing the value for the 'analyzeduration' and 'probesize' options
Input #0, mpegts, from './test.ts':
Duration: 00:00:58.04, start: 86615.181389, bitrate: 12418 kb/s
Program 10301
Stream #0:0[0x492]: Unknown: none ([5][0][0][0] / 0x0005)
Stream #0:1[0x498]: Unknown: none ([12][0][0][0] / 0x000C)
Stream #0:2[0x87b]: Unknown: none ([11][0][0][0] / 0x000B)
Stream #0:3[0x13ed]: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p(progressive), 1280x720 [SAR 1:1 DAR 16:9], 50 fps, 50 tbr, 90k tbn, 100 tbc
Stream #0:4[0x13ee](deu): Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, s16p, 256 kb/s
Stream #0:5[0x13ef](mis): Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, s16p, 256 kb/s
Stream #0:6[0x13f0](deu): Subtitle: dvb_teletext ([6][0][0][0] / 0x0006)
Stream #0:7[0x13f1](deu): Subtitle: dvb_subtitle ([6][0][0][0] / 0x0006) (hearing impaired)
Stream #0:8[0x13f2](deu): Audio: ac3 ([6][0][0][0] / 0x0006), 48000 Hz, stereo, fltp, 448 kb/s
Stream #0:9[0x13f4]: Data: bin_data ([6][0][0][0] / 0x0006)
Stream #0:10[0x1434]: Unknown: none ([11][0][0][0] / 0x000B)
Program 10302
Program 10303
Program 10304
Please use -b:a or -b:v, -b is ambiguous
[libvpx-vp9 @ 0x55cb21749d00] v1.6.1
Stream mapping:
Stream #0:3 -> #0:0 (h264 (native) -> vp9 (libvpx-vp9))
Stream #0:4 -> #0:1 (mp2 (native) -> opus (libopus))
Stream #0:6 -> #0:2 (dvb_teletext (libzvbi_teletextdec) -> webvtt (native))
Error while opening encoder for output stream #0:2 - maybe incorrect parameters such as bit_rate, rate, width or height
Какой кодек отсутствует?