Разве мы не можем выполнить декодирование MJPEG на графическом процессоре NVIDIA с помощью FFMPEG?
790
a_sid
Этот пост вдохновил меня на экспериментирование с декодированием MJPEG на Tesla K20c. Я набрал следующую команду в командной строке:
ffmpeg -hwaccel -r 10 -i 14_258.mjpeg -vcodec opencl helicopter.avi
и это произвело следующий вывод:
ffmpeg version 2.7.2 Copyright (c) 2000-2015 the FFmpeg developers built with gcc 4.4.7 (GCC) 20120313 (Red Hat 4.4.7-17) configuration: --valgrind=VALGRIND WARNING: library configuration mismatch avutil configuration: --enable-gpl --enable-postproc --enable-swscale --enable-avfilter --enable-libmp3lame --enable-libvorbis --enable-libtheora --enable-libx264 --enable-shared --enable-pthreads avcodec configuration: --enable-gpl --enable-postproc --enable-swscale --enable-avfilter --enable-libmp3lame --enable-libvorbis --enable-libtheora --enable-libx264 --enable-shared --enable-pthreads avformat configuration: --enable-gpl --enable-postproc --enable-swscale --enable-avfilter --enable-libmp3lame --enable-libvorbis --enable-libtheora --enable-libx264 --enable-shared --enable-pthreads avdevice configuration: --enable-gpl --enable-postproc --enable-swscale --enable-avfilter --enable-libmp3lame --enable-libvorbis --enable-libtheora --enable-libx264 --enable-shared --enable-pthreads avfilter configuration: --enable-gpl --enable-postproc --enable-swscale --enable-avfilter --enable-libmp3lame --enable-libvorbis --enable-libtheora --enable-libx264 --enable-shared --enable-pthreads swscale configuration: --enable-gpl --enable-postproc --enable-swscale --enable-avfilter --enable-libmp3lame --enable-libvorbis --enable-libtheora --enable-libx264 --enable-shared --enable-pthreads swresample configuration: --enable-gpl --enable-postproc --enable-swscale --enable-avfilter --enable-libmp3lame --enable-libvorbis --enable-libtheora --enable-libx264 --enable-shared --enable-pthreads libavutil 54. 27.100 / 54. 27.100 libavcodec 56. 41.100 / 56. 41.100 libavformat 56. 36.100 / 56. 36.100 libavdevice 56. 4.100 / 56. 4.100 libavfilter 5. 16.101 / 5. 16.101 libswscale 3. 1.101 / 3. 1.101 libswresample 1. 2.100 / 1. 2.100 [mjpeg @ 0xf41ac0] Format mjpeg detected only with low score of 25, misdetection possible! [mjpeg @ 0xf42780] ignoring invalid SAR: 270/187 Input #0, mjpeg, from '14_258.mjpeg': Duration: N/A, bitrate: N/A Stream #0:0: Video: mjpeg, yuvj420p(pc, bt470bg/unknown/unknown), 352x288, 25 tbr, 1200k tbn, 25 tbc Option hwaccel (use HW accelerated decoding) cannot be applied to output file 10 -- you are trying to apply an input option to an output file or vice versa. Move this option before the file it belongs to. Error parsing options for output file 10. Error opening output files: Invalid argument
Могу ли я выполнить декодирование MJPEG на моем GPU с помощью FFMPEG?
РЕДАКТИРОВАТЬ:
В соответствии с опубликованными комментариями я набрал свою команду следующим образом:
ffmpeg -r 10 -hwaccel auto -i 14_258.mjpeg -vcodec opencl helicopter.avi
Это дало следующий результат:
ffmpeg version 2.7.2 Copyright (c) 2000-2015 the FFmpeg developers built with gcc 4.4.7 (GCC) 20120313 (Red Hat 4.4.7-17) configuration: --valgrind=VALGRIND WARNING: library configuration mismatch avutil configuration: --enable-gpl --enable-postproc --enable-swscale --enable-avfilter --enable-libmp3lame --enable-libvorbis --enable-libtheora --enable-libx264 --enable-shared --enable-pthreads avcodec configuration: --enable-gpl --enable-postproc --enable-swscale --enable-avfilter --enable-libmp3lame --enable-libvorbis --enable-libtheora --enable-libx264 --enable-shared --enable-pthreads avformat configuration: --enable-gpl --enable-postproc --enable-swscale --enable-avfilter --enable-libmp3lame --enable-libvorbis --enable-libtheora --enable-libx264 --enable-shared --enable-pthreads avdevice configuration: --enable-gpl --enable-postproc --enable-swscale --enable-avfilter --enable-libmp3lame --enable-libvorbis --enable-libtheora --enable-libx264 --enable-shared --enable-pthreads avfilter configuration: --enable-gpl --enable-postproc --enable-swscale --enable-avfilter --enable-libmp3lame --enable-libvorbis --enable-libtheora --enable-libx264 --enable-shared --enable-pthreads swscale configuration: --enable-gpl --enable-postproc --enable-swscale --enable-avfilter --enable-libmp3lame --enable-libvorbis --enable-libtheora --enable-libx264 --enable-shared --enable-pthreads swresample configuration: --enable-gpl --enable-postproc --enable-swscale --enable-avfilter --enable-libmp3lame --enable-libvorbis --enable-libtheora --enable-libx264 --enable-shared --enable-pthreads libavutil 54. 27.100 / 54. 27.100 libavcodec 56. 41.100 / 56. 41.100 libavformat 56. 36.100 / 56. 36.100 libavdevice 56. 4.100 / 56. 4.100 libavfilter 5. 16.101 / 5. 16.101 libswscale 3. 1.101 / 3. 1.101 libswresample 1. 2.100 / 1. 2.100 [mjpeg @ 0x23d91e0] Format mjpeg detected only with low score of 25, misdetection possible! [mjpeg @ 0x23d9c00] ignoring invalid SAR: 270/187 Input #0, mjpeg, from '14_258.mjpeg': Duration: N/A, bitrate: N/A Stream #0:0: Video: mjpeg, yuvj420p(pc, bt470bg/unknown/unknown), 352x288, 25 tbr, 1200k tbn, 25 tbc Unknown encoder 'opencl'
РЕДАКТИРОВАТЬ:
Я проверил этот документ, чтобы узнать об аппаратном ускорении, и заметил, что там написано 'N / A' для декодирования и кодирования с OpenCL.
Это заставляет меня думать, что вы не можете выполнять декодирование MJPEG с помощью OpenCL. Но как мы можем сделать кодирование H264 с помощью OpenCL, хотя (по ссылке) OpenCL не поддерживает его?
В качестве первого шага сообщение об ошибке требует, чтобы вы переместили опцию `-hwaccel`. Это предполагает, что это должно быть непосредственно перед вашим входным файлом, а не иметь другие варианты в пути. Попробуйте переместить `-r 10` перед` -hwaccel`.
Mokubai 7 лет назад
0
`hwaccel` ожидает значение, но ничего не предоставлено, поэтому он принимает следующий токен` -r` в качестве значения и, таким образом, `10` становится выходным токеном. Добавьте `auto` сразу после` -hwaccel`. Просто исправляю синтаксическую ошибку. Не верьте, что доступен аппаратный декодер MJPEG.
Gyan 7 лет назад
0
@Mokubai и Mulvya Спасибо за ваши предложения. Я запустил эту команду: `ffmpeg -r 10 -hwaccel auto -i 14_258.mjpeg -vcodec opencl helicopter.avi`, и она выдала мне ошибку« Неизвестный кодировщик »opencl'`.
a_sid 7 лет назад
0
0 ответов на вопрос
Похожие вопросы
-
3
Windows Media Center (Vista): дополнение или программное обеспечение для обрезки телевизионных запис...
-
3
Обработка видео с картами ATI
-
1
VirtualDub для Linux
-
-
2
Какое использование диска используют видео в формате RAW?
-
1
Приложения Java в браузере вспыхивают / рвутся при прокрутке - почему это так?
-
3
Воспроизведение видео рипов с помощью Windows Media Center
-
5
Как лучше всего смотреть интернет-фильмы (Hulu и т. Д.) На моем телевизоре?
-
4
Вставить Flash видео в документ MS Word (2003 или 2007)
-
10
Принудительно установить собственное разрешение для монитора без PnP в Windows
-
4
Как узнать, почему Windows Media Center не воспроизводит фильм?