gmplayer
для воспроизведения всех своих видео. В 99,9% случаев все работает нормально, но в этом случае 1-в-1000 видео может быть повреждено. gmplayer
воспроизводит видео, но оно плачет, как сердитый, голодный ребенок, выскакивая из окон влево, вправо и в центр. В действительно плохих видео это фактически замедляет всю систему, поскольку порождает сотни окон ошибок (compiz применяет эффекты и т. Д.). Это также крадет фокус и иногда отменяет Рождество.
В командной строке mplayer
эти сообщения просто выбрасываются в командную строку. Использование mplayer
-proper может быть вариантом, если я не могу использовать gmplayer
, но это не совсем хорошо для моих нужд.
Я нашел обходной путь. Если вы добавите -msglevel all=0
к вызову gmplayer
, ошибки будут подавлены. Бесполезно с точки зрения отладки, но я не пытаюсь отлаживать видео здесь, просто посмотрите их.
То, что я хочу сделать, это «псевдоним» или «прокси» команда gmplayer
, поэтому, когда вы запускаете gmplayer
из командной строки или по ассоциации, она фактически запускается gmplayer -msglevel all=0
. Я понял, что просто добавление псевдонима bash не будет работать для связанных (как при двойном щелчке на видео в gnome) воспроизведении.
Каковы мои варианты для жесткого прокси команды. Это должно работать только для одного пользователя, но я открыт и для общесистемных изменений.
Вы можете установить эту опцию в одном из файлов опций mplayer, тогда это будет поведение по умолчанию. Для общесистемного изменения /etc/mplayer/mpplayer.conf просто для этого пользователя создайте ~ / .mplayer / mplayer.conf и вставьте его туда.
Добавление этого к ~/.mplayer/mplayer.conf
работает:
msglevel=all=0
Я не совсем уверен, как это сделать. кроме написания скрипта, который вызывает ваш исполняемый файл с флагами. Но я знаю, что в Eclipse есть файл eclipse.ini
в том же каталоге, что и исполняемый файл, который позволяет передавать флаги. Может быть, глядя на то, что вы можете написать аналогичный файл для gmplayer
Надеюсь, это поможет. :)
Самый простой способ сделать это, вероятно, следующий:
/usr/bin
поставить на его место скрипт, который будет вызывать исполняемый файл под новым именем, который добавляет ваш аргумент.
#!/bin/bash
original-gmplayer -msglevel all=0 $@
В качестве альтернативы, вы можете поместить этот скрипт в каталог bin у себя дома и убедиться, что этот каталог bin находится в вашем пути (необходимо настроить всю систему, чтобы работать для приложений которые не вызываются из терминала)
Вы можете отредактировать файл /usr/share/applications/mplayer.desktop
так, чтобы он вызывал команду gmplayer
из меню. Обязательно используйте dpkg-divert
, чтобы сделать это изменение согласованным локально:
$ sudo dpkg-divert /usr/share/applications/mplayer.desktop
Это скажет dpkg
сохранить измененную версию файла в будущих обновлениях пакета.
В качестве другого решения используйте вместо этого smplayer
, который отличается тем, что поддерживается на самом деле и прекрасно работает (чего нельзя сказать о gmplayer).
Вы можете создать символическую ссылку на вашу команду. Создайте команду с именем mygmplayer, затем проверьте, где находится ваша фактическая команда gmplayer с whereis или which, затем создайте символическую ссылку на вашу команду. Вот пример
$ echo '#!/bin/bash' > /home/user/mygmplayer
$ echo "gmplayer -msglevel all=0" >> /home/user/mygmplayer
$ chmod a+x mygmplayer
$ which gmplayer
/usr/bin/gmplayer
$ sudo mv /usr/bin/gmplayer /usr/bin/gmplayer.old
$ sudo ln -s /home/user/mygmplayer /usr/bin/gmplayer
Пока.