У меня есть приложение, которое отправляет необработанные NALU h264, созданные с помощью кодирования «на лету», используя x264 x264_encoder_encode. Я получаю их через простой TCP, поэтому я не пропускаю никаких кадров. Мне нужно иметь возможность декодировать такой поток в клиенте с помощью Hardware Acceleration в Windows (DXVA2). Я изо всех сил пытаюсь найти способ заставить это работать с использованием FFMPEG. Возможно, может быть проще попробовать Media Foundation или DirectShow, но они не возьмут необработанный H264. мне нужно либо:Оберните поток необработанных H264 NALU в контейнер, например MP4
Изменить код из серверного приложения, чтобы вернуть поток mp4. Я не так разбираюсь в x264. Я был в состоянии получить сырой H264 по телефону x264_encoder_encode, следуя ответ на этот вопрос: How does one encode a series of images into H264 using the x264 C API? Как я могу перейти от этого к чему-то, что завернутые в MP4, все еще будучи в состоянии транслировать его в режиме реального времени
я мог бы в приемник обертывает его заголовками mp4 и передает его во что-то, что может воспроизводить его с помощью DXVA. Я бы не знал, как это сделать
Я мог бы найти другой способ ускорить его, используя DXVA с FFMPEG или что-то еще, что берет его в необработанном формате.
Важным ограничением является то, что мне нужно иметь возможность предварительно обработать каждый декодированный кадр перед его отображением. Любое решение, которое декодирование и отображение на одном этапе не будет работать для меня
я бы хорошо ни с раствором
Красота и скорость 'DXVA' в основном предполагают, что видео представлено пользователю и не считывается обратно в ОЗУ из видеопамяти. Будьте готовы к тому, что чтение из видеопамяти может показаться неожиданно медленным и убить всю идею быстрого аппаратного декодирования для целей, отличных от презентации. –
Да ... Я думаю, что я хочу принять этот факт сейчас. Есть ли в любом случае предварительная обработка кадров на каком-то этапе с помощью DXVA. Возможно, вы пишете фильтр медиа-фондов или что-то в этом роде? – cloudraven