У меня есть требование, когда мне нужно кодировать источник v4l2src в H.264 при использовании контейнера Matroska. Если я .mkv файл со встроенными субтитрами легко извлечь субтитры сДобавление субтитров при кодировании H.264 в контейнер Matroska
gst-launch-1.0 filesrc location=test.mkv ! matroskademux ! "text/x-raw" ! filesink location=subtitles
Из того, что я понимаю, и предполагая, я правильно понимаю, в процессе кодирования на «subtitle_% и» подушка должна быть связана с текстовым/x-raw, используя textoverlay.
gst-launch-1.0 textoverlay text="Video 1" valignment=top halignment=left font-desc="Sans, 60" ! mux. imxv4l2src device=/dev/video0 ! timeoverlay ! videoconvert ! queue ! vpuenc_h264 ! capsfilter
caps="video/x-h264" ! matroskamux name=mux ! filesink location=sub.mkv
Я использую вышеуказанный конвейер, но я не получаю оверлей в видео .mkv. Каков правильный способ кодирования наложения субтитров/текста при кодировании источника в H.264 в контейнере matroska, а затем также можно извлечь его с помощью первого конвейера?
- Sanchayan.
Вы, вероятно, путаете две вещи. Первый конвейер извлекает дорожку, которая содержит ** текст ** данных с отметками времени. Это не оверлей на изображении. Textoverlay и timeoverlay делают оверлей на изображении и не добавляют никакой дорожки с текстом, который может быть извлечен позже. Что ты хочешь делать? Первый, второй или оба? – peper0