Я ищу либо настольное приложение для записи / скринкаста, которое может выводить в формате WebM, либо программу, которая может конвертировать сгенерированный gtk-recordmydesktop
в формате .ogv в WebM.
Я выбрал WebM в качестве нужного мне формата, потому что, похоже, это единственный бесплатный кодек, поддерживаемый YouTube, где мои записи заканчиваются. Я пытался загрузить .ogv в прошлом и получил сплошное зеленое видео, так что это не сработает для меня.
Я живу в США и стараюсь держаться подальше от всего, что может иметь проблемы с патентами на ПО, например gstreamer0.10-plugins-ugly
или gstreamer0.10-plugins-bad
. Именно по этой причине я изначально интересовался Tibesti (например), но для этого требовалась установка пакетов, подобных вышеупомянутым.
Я несколько раз искал в Интернете бесплатное (как в деньгах, так и в свободе) решение, но пока ничего не смог найти. Какие-либо предложения?
источник
Ответы:
12.04 LTS
Похоже, что в этом выпуске
ffmpeg
больше не работает должным образом для преобразованияrecordmydesktop
записей .ogv в WebM. Поскольку он больше не поддерживается, рекомендуется использовать его заменуavconv
, предоставленную вlibav-tools
пакете (который, кажется, устанавливается автоматически, если онffmpeg
был установлен).Команда, которую нужно использовать
avconv
для конверсий, не слишком отличается отffmpeg
:Таким образом, если кто-то сталкивался с той же проблемой, связанной с попыткой использовать только бесплатные пакеты для преобразования из .ogv в .webm в 12.04 (или, вероятно, позже), я решил эту проблему. Это может быть полезно, если вы делаете записи, чтобы показать новые функции или проблемы с документами, используя видео.
источник
gstreamer0.10-plugins-bad
иgstreamer0.10-plugins-ugly
. Эти пакеты содержат кодеки, которые я пытаюсь избежать из-за проблем с патентами, как указано выше. Если станет доступна обновленная / альтернативная сборка, которая не зависит от этих пакетов, дайте мне знать в новом ответе. Спасибо, в любом случае!Error while opening encoder for output stream #0:1 - maybe incorrect parameters such as bit_rate, rate, width or height
recordmydesktop
отчете об ошибке . Любопытно, что когда я перенес то же видео на свой настольный компьютер и конвертировал его там, он работал без проблем. Так что ... это может быть ошибка, но я не думаю, что знаю об этом достаточно, чтобы подать отчет.Я использую такие вещи:
Где:
-f x11grab
- вводит в действие «формат» захвата экрана.-s 1024x768
разрешение входного файла (или область захвата). Например, соответствует разрешению рабочего стола. Если меньше, то область записи будет слева и сверху. В этом примере я использовал область записи 1024x768.-r 24
- частота кадров. В основном, от 23 до 30 кадров в секунду, которые используются в реальных фильмах для плавной записи изображения. Однако для скринкаста было бы неплохо уменьшить это, чтобы получить лучшую картинку на низких битрейтах. Я использовал 24, чтобы сделать захват экрана игры.-i 0:0
является подсказкой для использования отображения 0: 0 в качестве источника (устройство находится в нотации xorg). Если у вас только 1 монитор и настройка Xorg по умолчанию, 0: 0 будет в большинстве случаев нормально.-deadline realtime
- это подсказка к libvpx. Мы хотим живой захват. Мы хотим производительность в реальном времени. Так что libvpx сделает все возможное, чтобы кодировать VP8 в режиме реального времени. Для этого он немного меняет качество на скорость. При заданном битрейте качество будет немного хуже, чем не в режиме реального времени. Но скорость кодирования взлетела бы до небес. Так что на моем оборудовании он может обрабатывать 1024x768 при 24 кадрах в секунду, яркие сцены без потери кадров (хотя рекомендуется мощный процессор). В этом примере я хотел получить живое изображение достойного качества при хорошем FPS и довольно большой области захвата. Таким образом, использование процессора кодеком может быть проблемой. Вот почему этот намек действительно нужен для хороших результатов.-b 5000000
- целевой битрейт в битах / секунду. Я использовал 5 Мбит, чтобы получить более или менее хорошую картину довольно интенсивных сцен. Кодек будет стараться поддерживать среднюю скорость передачи битов видео вблизи этого значения. Чем ниже это значение, тем хуже качество и меньше файл. Вы можете немного поэкспериментировать, чтобы понять, какой битрейт хорош для определенных целей. Сервисы обмена видео будут конвертировать видео, если вы не выполните настройку. Если вы собираетесь использовать собственный сервер, вам решать заботу о трафике. Если вы недолетите, качество изображения будет плохим. Не стесняйтесь менять значение, чтобы понять, что лучше для вас. 5Mbits были предназначены для более или менее приятного для глаз живого захвата интенсивных сцен в играх, где вы не можете легко увидеть, что изображение слишком сжато. Для захвата неподвижных приложений вам понадобится гораздо меньше.-minrate
200000 - минимально допустимый битрейт для кодека. В зависимости от характера вещи, которую вы хотите запечатлеть, иногда вам может потребоваться установить минимальный битрейт, чтобы сохранить разумно выглядящую картинку в любом случае. Иногда эвристика кодека может снизить битрейт намного ниже желаемого значения, что в некоторых случаях дает плохую картинку. Эта опция позволяет заставить кодек поддерживать минимальную скорость передачи битов, даже если кодек считает, что сцена простая, и скорость передачи битов может быть отброшена. Высокое значение этого параметра может увеличить размер файла, не позволяя кодеку использовать более низкие битрейты.-maxrate 40000000
- Это значение контролирует максимальный битрейт при интенсивной съемке. Я использовал действительно высокое значение, чтобы позволить кодеку идти намного выше, чем желаемое среднее значение, если он считает, что более высокая скорость обязательна для поддержания достойного качества в некоторой сцене. Чтобы получить красивую картинку в любых условиях, желательно установить это достаточно высоко (40 Мбит - это скорость, похожая на BlueRay, и сработает). С другой стороны, если вы собираетесь транслировать его с помощью своего собственного сервера, вы должны уменьшить это значение за счет некоторого качества изображения в насыщенных сценах. Иначе сервер может не справиться с желаемой скоростью передачи битов, будучи не в состоянии доставить его пользователям в режиме реального времени. Тогда игрок столкнется с опустошением буфера (что раздражает). Сервисы обмена видео позаботятся сами о себе и, как правило, преобразуют видео в более низкие параметры за счет качества изображения.recording-filename-000.webm
- это имя файла вывода. Если вы используете расширение .webm, ffmpeg / avconv достаточно умны, чтобы понять, что вам нужен WEBM. Это так просто - avconv угадывает желаемый формат по имени файла. Так что .WEBM файлы - это WEBM внутри.Вот и все - эта команда выполняет прямую запись экрана в файл webm. Никаких дополнительных преобразований не требуется, и
libvpx
намекнут на то, чтобы быть как можно быстрее. Нет звука, так как нет спецификации для ввода звука. Это может или не может быть то, что вы хотите. Для звука вы также должны указать источник входного сигнала для звукового потока.PS это может показаться немного сложным, но в конце дня вы можете понять, что один размер не может соответствовать всем. Таким образом, чтобы получить красивую картинку в любых ситуациях, вам, возможно, захочется использовать некоторые ручки для кодека и настроить их. Ffmpeg дает вам все ручки, которые вам могут понадобиться, и гораздо больше. Это тяжелое оружие конвертации и кодирования видео. Так что этот пример - хорошая отправная точка для тех, кто хочет делать более или менее сложные кодировки и готов немного поэкспериментировать, чтобы получить действительно приличные результаты.
источник
Вы можете делать записи WebM в Ubuntu 11.10 + GNOME Shell, нажимая комбинацию клавиш Ctrl+ Shift+ Alt+ R.
Когда вы нажимаете комбо в первый раз, в области уведомлений появляется красный кружок, указывающий, что запись началась. Когда вы нажимаете его 2 раза, красный кружок исчезает, и вы сохраните запись в
${HOME}/Videos
каталоге.Более подробная информация здесь: Шпаргалка Gnome Shell: Запись скринкаста
источник
jhbuild
10.10, и он установлен на моих системах 11.10, и я знаю, что это тоже работает. Спасибо за добавление этого ответа!~/Videos
с именем файлаScreencast from {date} {time}.webm
.Используйте приложение Transmageddon, чтобы сделать это. его приложение на основе Gstreamer
sudo apt-get install transmageddon
или нажмите здесь, чтобы установить Transmageddonисточник
Используйте Kazam для записи.
Вывод mkv , и хорошо работает с Youtube. Кажется, единственная проблема, которую Казам давно не обновлял.
Кстати, вы должны быть в безопасности, используя Tibesti, если я правильно понимаю, если, конечно, вы абсолютно не параноидально, что какой-то гигантский инопланетный космический корабль похитит вас и будет пытать вас за использование программного обеспечения ...
источник
11.10 и ранее
ffmpeg
может использоваться для преобразования .ogv в .webm напрямую без необходимости использования дополнительных кодеков. Как упоминалось в комментарии к другому ответу , версия,ffmpeg
поставляемая Ubuntu, не поставляется по умолчанию с кодеками, которые могут создавать проблемы с патентами на программное обеспечение.Это программа командной строки; чтобы использовать его, просто откройте окно терминала и введите:
источник
IMO, лучший способ конвертировать видео в WebM - Firefogg .
источник