DLNA позволяет воспроизводить мультимедиа в домашней сети на всех совместимых устройствах по сети. В этом посте я объясню, как скомпилировать и установить MiniDLNA в Ubuntu (теперь ReadyMedia) из репозитория Git. Ранее я писал сообщения о том, как установить MiniDLNA в Ubuntu 10.04, загрузив файлы и настроив MiniDLNA в Ubuntu 12.04 с помощью репозитория PPA. Несмотря на то, что сборка последней версии из Git имеет некоторые преимущества, у нее есть определенные преимущества, поэтому я решил предоставить обновленные инструкции по установке. MiniDLNA разрабатывается довольно активно, с несколькими исправлениями и улучшениями. Без дальнейших задержек, давайте посмотрим, как скомпилировать и установить MiniDLNA в Ubuntu.12.04 из репозитория Git. Эти инструкции должны работать и в выпусках 12.10 и 13.04.
После настройки вы сможете передавать контент (с субтитрами) на любые DLNA-совместимые устройства. В моем случае устройства: LG 42 “LED TV и LG Bluray Player .
Наслаждайтесь неограниченной потоковой передачей фильмов и телепередач на нескольких устройствах, бесплатной 2-дневной доставкой заказов и бесплатными книгами Kindle всего за 6,60 долларов в месяц. Зарегистрируйтесь сейчас, чтобы получить бесплатную 1-месячную пробную версию .
Руководство по компиляции из исходного кода
Мы приложили все усилия, чтобы сделать это руководство удобным для новичков. Там, где это было возможно, мы предоставили фотографии, которые помогут вам в этом процессе. Было бы очень полезно, если у вас есть базовые знания по компиляции пакетов из исходного кода в Ubuntu, и мы настоятельно рекомендуем прочитать наше двухстраничное руководство для начинающих. Также, как описано в этом руководстве, установите необходимые условия для компиляции пакетов, используя следующую команду:
sudo apt-get install autoconf g++ subversion linux-source linux-headers-`uname -r` build-essential tofrodos git-core subversion dos2unix make gcc automake cmake checkinstall git-core dpkg-dev fakeroot pbuilder dh-make debhelper devscripts patchutils quilt git-buildpackage pristine-tar git yasm checkinstall cvs mercurial
Почему этот метод лучше?
Есть три других способа установить MiniDLNA в Ubuntu:
- Загрузите последнюю версию здесь и следуйте этому руководству .
- Вы можете настроить репозиторий PPA и следовать этому руководству .
- MiniDLNA доступна для официальных репозиториев Ubuntu. Вы можете установить его, используя легко
sudo apt-get install minidlna
.
Первый способ требует загрузки, извлечения и замены файлов при каждом обновлении. Второй метод основан на актуальности PPA для всех выпусков. На момент написания данного руководства PPA обновлялся до 11.10 Oneiric. Третий метод устанавливает любую версию, которая в данный момент доступна в официальном репозитории Ubuntu. Хотя последняя версия – 1.1.0, репозиторий Ubuntu в настоящее время имеет версию 1.0.21, за которой стоят несколько версий. Так что если вы хотите самое последнее и самое лучшее, вам придется подождать. Для компиляции и установки MiniDLNA в Ubuntu требуется примерно столько же, сколько для метода 1. Но преимущество заключается в том, что теперь MiniDLNA специально адаптируется к среде вашей системы / ОС и может быть немного более отзывчивым. Кроме того, как будет объяснено далее в этом руководстве, установка обновлений может быть немного проще.
Установить предварительные условия
MiniDLNA зависит от нескольких пакетов для успешной компиляции: libexif
, libjpeg
, libid3tag
, libFLAC
, libvorbis
, libsqlite3
, и libavformat
(в FFmpeg библиотеки). Некоторые из них, возможно, уже установлены, но два, которые отсутствовали в моей тестовой системе, были, libexif
и libid3tag
команда ниже установила два. Вероятно, он также установил еще несколько ненужных пакетов (несколько дополнительных МБ), но сделать это намного проще.
sudo apt-get install libexif* libid3tag*
Как узнать, какие из них нужны в вашем случае? Когда вы запустите configure
скрипт, как описано ниже, вы столкнетесь с ошибками, если какой-либо из вышеперечисленных пакетов отсутствует. Повторите настройку после установки отсутствующего пакета, пока все ошибки не исчезнут.
Скачать MiniDLNA
Сначала создайте папку с именем .minidlna
в вашем домашнем каталоге:
mkdir ~/.minidlna
Обратите внимание, что .
в начале делает его скрытой папкой. Затем cd
в .minidlna
папку и выполните следующую команду, чтобы клонировать последние файлы MiniDLNA из репозитория Git:
git clone git://git.code.sf.net/p/minidlna/git minidlna-git
Вывод должен выглядеть примерно так:
Cloning into 'minidlna-git'...
remote: Counting objects: 3006, done.
remote: Compressing objects: 100% (888/888), done.
remote: Total 3006 (delta 2242), reused 2858 (delta 2111)
Receiving objects: 100% (3006/3006), 1.04 MiB | 846 KiB/s, done.
Resolving deltas: 100% (2242/2242), done.
Папка с именем minidlna-git
должна быть загружена в .minidlna
папку. Это файлы, которые нужно скомпилировать.
Скомпилируйте и установите MiniDLNA в Ubuntu
Первый шаг для компиляции и установки MiniDLNA на Ubunt us – это создание файлов, необходимых для компиляции. cd
в minidlna-git
папку, которая была загружена и выполните следующую команду:
./autogen.sh
Вы должны увидеть вывод, как на картинке ниже, когда autogen.sh
скрипт завершит работу.
Выход из autogen.sh
Затем настройте файлы для компиляции с помощью следующей команды (она будет работать не менее нескольких минут):
./configure
Если вы обнаружите какие-либо ошибки из-за отсутствия пакетов, следуйте инструкциям, описанным ранее в разделе Предварительные требования для установки. Если configure
скрипт выполняется успешно, он закончится следующим (или похожим) выводом.
MiniDLNA Настройка состояния
Затем make
установочные файлы (фактический процесс компиляции) с помощью следующей команды:
make
В случае успеха make
процесс завершится сообщением, аналогичным приведенному ниже.
MiniDLNA сделать завершенным
Последний шаг – установить MiniDLNA в Ubuntu из скомпилированных файлов. Хотя вы можете использовать sudo make install
команду, мы рекомендуем использовать команду checkinstall :
sudo checkinstall
3 лучших автономных загрузчика Bittorrent:
Эта команда проведет вас через серию шагов. Если каталог пакета документации недоступен, вам будет предложено создать его (doc-pack).
MiniDLNA checkinstall Пакет документации
Скажи да и продолжай. Затем вам будет предложено описание для пакета. Вы можете предоставить любое описание, которое поможет вам распознать пакет. Пример показан ниже.
MiniDLNA checkinstall Описание пакета
Наконец, будет отображена сводка параметров, которые будут использоваться для создания пакета, как показано в примере ниже. Вы можете редактировать любой из них, если знаете, что делаете. В приведенном ниже примере версия была отредактирована для добавления номера версии.
Проверьте параметры установки пакета сборки
После продолжения будет скомпилирован пакет MiniDLNA, который появится в менеджере пакетов (например, Synaptic) для более простого и легкого удаления позже. Кроме того, будет создан пакет .deb, который можно использовать для установки пакета на других аналогичных компьютерах или на том же компьютере в будущем без повторной компиляции.
MiniDLNA checkinstall Завершение
Настроить MiniDLNA
MiniDLNA поставляется с файлом конфигурации по умолчанию. Вы найдете его ( minidlna.conf
) в загруженной папке MiniDLNA. Создайте копию файла в ~/.minidlna
папке:
sudo cp minidlna.conf ~/.minidlna/minidlna.conf
Затем отредактируйте файл, чтобы внести незначительные изменения. Пример файла конфигурации показан ниже:
# port for HTTP (descriptions, SOAP, media transfer) traffic
port=8200
# network interfaces to serve, comma delimited
#network_interface=eth0
# specify the user account name or uid to run as
user=user
# set this to the directory you want scanned.
# * if you want multiple directories, you can have multiple media_dir= lines
# * if you want to restrict a media_dir to specific content types, you
# can prepend the types, followed by a comma, to the directory:
# + "A" for audio (eg. media_dir=A,/home/jmaggard/Music)
# + "V" for video (eg. media_dir=V,/home/jmaggard/Videos)
# + "P" for images (eg. media_dir=P,/home/jmaggard/Pictures)
# + "PV" for pictures and video (eg. media_dir=AV,/home/jmaggard/digital_camera)
media_dir=V,/home/user/media/Movies
media_dir=P,/home/user/media/Photos
media_dir=A,/home/user/media/Music
# set this if you want to customize the name that shows up on your clients
friendly_name=My DLNA Server
# set this if you would like to specify the directory where you want MiniDLNA to store its database and album art cache
db_dir=/home/user/.minidlna
# set this if you would like to specify the directory where you want MiniDLNA to store its log file
#log_dir=/var/log
# set this to change the verbosity of the information that is logged
# each section can use a different level: off, fatal, error, warn, info, or debug
#log_level=general,artwork,database,inotify,scanner,metadata,http,ssdp,tivo=warn
# this should be a list of file names to check for when searching for album art
# note: names should be delimited with a forward slash ("/")
album_art_names=Cover.jpg/cover.jpg/AlbumArtSmall.jpg/albumartsmall.jpg/AlbumArt.jpg/albumart.jpg/Album.jpg/album.jpg/Folder.jpg/folder.jpg/Thumb.jpg/thumb.jpg
# set this to no to disable inotify monitoring to automatically discover new files
# note: the default is yes
inotify=yes
# set this to yes to enable support for streaming .jpg and .mp3 files to a TiVo supporting HMO
enable_tivo=no
# set this to strictly adhere to DLNA standards.
# * This will allow server-side downscaling of very large JPEG images,
# which may hurt JPEG serving performance on (at least) Sony DLNA products.
strict_dlna=no
# default presentation url is http address on port 80
#presentation_url=http://www.mylan/index.php
# notify interval in seconds. default is 895 seconds.
notify_interval=895
# serial and model number the daemon will report to clients
# in its XML description
serial=12345678
model_number=1
# specify the path to the MiniSSDPd socket
#minissdpdsocket=/var/run/minissdpd.sock
# use different container as root of the tree
# possible values:
# + "." - use standard container (this is the default)
# + "B" - "Browse Directory"
# + "M" - "Music"
# + "V" - "Video"
# + "P" - "Pictures"
# if you specify "B" and client device is audio-only then "Music/Folders" will be used as root
#root_container=.
Ноты:
- Если у вас включен брандмауэр, разрешите порт 8200.
- Раскомментируйте «network_interface = eth0», если хотите, чтобы MiniDLNA связывался с вашим портом Ethernet.
- Добавьте ваши источники видео, музыки и фотографий.
- Укажите ваше имя пользователя для запуска MiniDLNA как (user = user).
- Добавьте каталог для хранения базы данных MiniDLNA. Я рекомендую хранить его в моем домашнем каталоге: db_dir = / home / user / .minidlna.
- Я установил уровень журналирования как «роковой», так как я не люблю расширенную регистрацию.
- Установите inotify = yes (по умолчанию) для автоматического добавления новых файлов (хотя я обнаружил, что это ненадежно. Ниже я описал, как я автоматически обновляю свою библиотеку).
- Игнорируйте “presentation_url = http: //www.mylan/index.php”. Мои исследования показывают, что это не работает, поскольку для MiniDLNA нет веб-интерфейса.
- Я оставил это по умолчанию “notify_interval = 895”. Вы можете установить его на более низкое значение, если хотите, чтобы MiniDLNA чаще проверял наличие новых файлов (опять же, это также было ненадежно).
- Обычно вам не придется связываться с оставшимися настройками.
Вы почти закончили.
ASUS (RT-AC68U) Wireless-AC1900 Двухдиапазонный гигабитный маршрутизатор
Узнайте, почему он считается лучшим беспроводным маршрутизатором в своем классе.
Запуск MiniDLNA
Запустите MiniDLNA с помощью следующей команды:
/usr/local/sbin/minidlnad -f ~/.minidlna/minidlna.conf
По умолчанию MiniDLNA не сканирует новые медиа-файлы во время запуска. Для повторного сканирования файлов мультимедиа во время запуска включите -R
параметр:
/usr/local/sbin/minidlnad -R -f ~/.minidlna/minidlna.conf
После запуска MiniDLNA строит индекс всех файлов. В процессе индексирования загрузка ЦП значительно возрастет, но через несколько минут должна снизиться до нормального уровня. «Мой DLNA-сервер» теперь должен появиться в списке устройств DLNA / UPNP.
Сервер MiniDLNA на XBMC
Теперь вы должны иметь возможность просматривать и воспроизводить мультимедиа с вашего сервера DLNA на вашем клиенте. Обратите внимание, что не все клиенты поддерживают все функции MiniDLNA. В моем случае у меня не было проблем с воспроизведением файлов avi, mkv, mp4, mov, mp3, flac и jpg.
Лучшие Android TV Box:
- Домашний медиа-сервер NVIDIA SHIELD TV Pro – $ 199,99
- Потоковый медиаплеер Amazon Fire TV – $ 89,99
- WeTek Play 2 Hybrid Media Center – $ 134,00
- Купить Octacore Android TV Box – $ 179,99
- U2C Android TV Box – $ 95,99
Автозапуск MiniDLNA
Чтобы автоматически запустить MiniDLNA во время загрузки системы, создайте файл /etc/init.d/minidlna
со следующими строками.
#!/bin/sh
# Mini DLNA
### BEGIN INIT INFO
# Provides: scriptname
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start daemon at boot time
# Description: Enable service provided by daemon.
### END INIT INFO
case "$1" in
'start')
/usr/local/sbin/minidlnad -f /home/user/.minidlna/minidlna.conf
echo Started
;;
'stop')
PID=`/bin/pidof minidlnad`
if [ ${PID} ]; then sudo kill -SIGTERM ${PID}
else echo Already Stopped
fi
;;
'restart')
PID=`/bin/pidof minidlnad`
if [ ${PID} ]; then sudo kill -SIGTERM ${PID}
fi
/usr/local/sbin/minidlnad -f /home/user/.minidlna/minidlna.conf
echo Restarted
;;
'status')
PID=`/bin/pidof minidlnad`
if [ ${PID} ]; then echo Running. Process ${PID}
else echo Stopped
fi
;;
'rescan')
PID=`/bin/pidof minidlnad`
if [ ${PID} ]; then sudo kill -SIGTERM ${PID}
fi
/usr/local/sbin/minidlnad -R -f /home/user/.minidlna/minidlna.conf
echo Rescanning
;;
*)
echo "Usage: $0 { start | stop | restart | status | rescan }"
;;
esac
exit 0
Если вы хотите, чтобы MiniDLNA повторно сканировал библиотеку во время загрузки, то в приведенном выше коде замените:
/usr/local/sbin/minidlnad -f /home/user/.minidlna/minidlna.conf
с этим:
/usr/local/sbin/minidlnad -R -f /home/user/.minidlna/minidlna.conf
Имейте в виду, что это замедлит работу вашей системы во время загрузки, так как много ЦП будет индексировать ваши файлы.
Сохраните, выйдите и дайте файлу права на выполнение:
sudo chmod +x /etc/init.d/minidlna
Затем выполните следующую команду, чтобы обновить ваши сценарии инициализации:
sudo update-rc.d minidlna defaults
Вот и все. Помимо автоматического запуска во время загрузки, теперь вы можете запускать, останавливать, перезапускать, проверять состояние и повторно сканировать MiniDLNA, используя следующие команды:
sudo service minidlna start
sudo service minidlna stop
sudo service minidlna restart
sudo service minidlna status
sudo service minidlna rescan
Обновление MiniDLNA
Когда выйдет более новая версия MiniDLNA, вам, по сути, придется снова пройти процесс компиляции, но не полностью. Перейдите в ~/.minidlna/minidlna-git
папку, в которую вы впервые загрузили файлы MiniDLNA, с помощью git clone
команды. Введите следующую команду:
make distclean
git pull
distclean
Будет очищать и удалять любые файлы, созданные во время последней компиляции. Он git pull
автоматически синхронизирует локальные исходные файлы с последней версией в репозитории git. Только файлы, которые изменились с момента последней загрузки, будут загружены повторно. Затем вы компилируете и устанавливаете MiniDLNA в Ubuntu, как описано выше. Выполните следующие команды в последовательности:
./configure
make
checkinstall
По checkinstall
окончании у вас должна быть установлена последняя версия.
Удаление MiniDLNA
Если вы хотите удалить MiniDLNA и очистить все файлы, выполните следующие команды в последовательности:
sudo apt-get remove minidlna
sudo update-rc.d -f minidlna remove
sudo rm /etc/init.d/minidlna
sudo rm -r ~/.minidlna
Первая команда удаляет пакет MiniDLNA, вторая отключает службу MiniDLNA, третья команда удаляет сценарий автозапуска MiniDLNA и, наконец, четвертая команда удаляет все файлы и папки MiniDLNA, включая настройки. Если вы хотите сохранить настройки и файлы, загруженные из Git для возможной будущей установки, вы можете не запускать последнюю команду.
Моя MiniDLNA работает на автономном сервере с запущенным Webmin. Если у вас аналогичная настройка, то этот модуль веб-пользователя предлагает простой способ отредактировать файл конфигурации, перезапустить и повторно отсканировать MiniDLNA.
ОБНОВЛЕНИЕ (17.07.2013): скрипт инициализации MiniDLNA обновлен на основе комментария Джонатана ниже.
ОБНОВЛЕНИЕ (18.03.2014): Обновлен скрипт инициализации MiniDLnA, основанный на личном общении с j.adamslsmo.
Источник записи: https://www.smarthomebeginner.com