Jump to content

SUBIECTE NOI
« 1 / 5 »
RSS
Amenintat cu moartea de un numar ...

La multi ani @AndReW99!

Alegere masina £15000 uk

TVR vrea sa lanseze o platforma d...
 Strategie investie pe termen lung...

Modulator FM ptr auto alimentat p...

orange cablu f.o. - internet fara...

Robinet care comuta traseul
 A fost lansata Fedora 40

Samsung S24 plus

Imi iau un Dell? (Vostro vs others)

Abonati Qobuz?
 transport -tren

Platforma electronica de eviden&#...

Cot cu talpa montat stramb in per...

Sfat achizitie sistem audio pentr...
 

Compilare FFmpeg pe Synology (x86)

- - - - -
  • Please log in to reply
4 replies to this topic

#1
Ahasverus

Ahasverus

    Senior Member

  • Grup: Senior Members
  • Posts: 3,360
  • Înscris: 22.10.2006
Daca veti dori sa rulati unele programe de streaming pe Synology x86 (asta am la indemana), veti vedea ca varianta instalata sau din repository nu e compilata cu suport pentru X264 sau mp3...

Am dorit sa rulez BubleUPnP Server pentru a putea acces serverul DLNA de oriunde in lume (nu doar din LAN) si am primit acest mesaj de eroare:

Quote

no (ffmpeg has no libx264 support)
no (ffmpeg has no libmp3lame support)

Attached File  ffmpeg_error.png   17.28K   15 downloads


Instalarea BubleUPnP Server se face prin adaugarea repository-ului de mai jos in Package Center
http://www.cphub.net/index.php/getpackages.php

Exista 2 tipuri de FFMpeg pentru procesoare x86 (AMD/Intel)
1. Single thread (foloseste doar un core al procesorului)
2. Multithread (MT) (foloseste mai multe core), asa cum sunt pe noile procesoare AMD/Intel de pe Synology sau pe sistemul vostru Xpenology.

Aparent, compilarea MT face minuni in procesul de transcoding, asa ca va recomand aceasta abordare, daca procesorul vostru e multicore.

Pentru a compila programul, e nevoie ca pe aparatul vostru sa fie instalat bootstrap.

Citit aici cum se instaleaza boostrap.

Compilare FFmpeg

login ca root pe SSH

1. Instalare wget-ssl
cp /opt/bin/wget /volume1/@tmp/copy-wget
ipkg remove wget
cp /volume1/Downloads/copy-wget/* /opt/bin/wget
cp /volume1/Downloads/copy-wget/* /usr/syno/bin/wget
ipkg install wget-ssl
ipkg update
ipkg upgrade


Instalare compilatoare si alte utilitati

ipkg install optware-devel gcc glib openssl openssl-dev git bash lame

cd /volume1/@tmp
wget http://pkgconfig.freedesktop.org/releases/pkg-config-0.29.tar.gz
tar -xzvf pkg-config-0.29.tar.gz
cd pkg-config-0.29
./configure
make
make install


ipkg remove yasm
cd /volume1/@tmp
wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz
tar -xvf yasm-1.3.0.tar.gz
cd yasm-1.3.0
./configure
make
make install

cp /opt/lib/libbz2.so.1.0 /lib
cp /opt/lib/libz.so.1 /lib

Compilare x264

cd /volume1/@tmp
ipkg remove X264

git clone git://git.videolan.org/x264.git
cd x264
sed -i 's/^#!.*$/#!\/opt\/bin\/bash/g' configure version.sh
./configure --enable-shared --host=i686-linux
make
make install



find / -name libx264.so.*


Rezultatul comenzii de mai sus (find), folositi-l la urmatoare comanda - cp
cp /volume1/@tmp/x264/libx264.so.* /lib


Compilare FAAC

cd /volume1/@tmp/
wget http://downloads.sourceforge.net/faac/faac-1.28.tar.gz
tar -xvf faac-1.28.tar.gz
cd faac-1.28/
./configure --prefix=/opt
make
make install


cp /opt/lib/libfaac.so.0 /lib
cd /volume1/@tmp/


Compilare ffmpeg 264 MT (procesoare x86 cu mai mult de un core)

Spoiler

Compilare FFMPEG non-MT, pentru procesoare x86 cu un singur core:

Spoiler

./configure --arch=x86_64 --target-os=linux --enable-optimizations --disable-altivec --enable-pic --enable-shared --disable-static --disable-swscale-alpha --disable-ffserver --disable-ffplay --enable-libfaac --enable-nonfree --enable-version3 --enable-gpl --enable-libx264 --enable-libmp3lame
make
make install


Rulati comanda in mod repetat:

/volume1/@tmp/ffmpeg-ffmpeg-mt/ffmpeg -version

Va da erori, de genul:

Quote

“/volume1/@tmp/ffmpeg-ffmpeg-mt/ffmpeg: error while loading shared libraries: libavdevice.so.53: cannot open shared object file: No such file or directory”

libavdevice.so.53 e in cazul meu fisierul lipsa. Folositi-l pt urmatoarea comanda

find / -name libavdevice.so.53

Rezultatul interogarii este:

Quote

“/volume1/@tmp/ffmpeg-ffmpeg-mt/libavdevice/libavdevice.so.53”.

Folositi-l pt comanda de mai jos:
cp /volume1/@tmp/ffmpeg-ffmpeg-mt/libavdevice/libavdevice.so.53 /lib

Repetati pana nu mai apar erori la comanda

/volume1/@tmp/ffmpeg-ffmpeg-mt/ffmpeg -version

Attached File  ffmpeg-mt_succes.png   51.81K   16 downloads

Spoiler

Copiati FFMPEG pentru utilizare:

cp /volume1/@tmp/ffmpeg-ffmpeg-mt/ffmpeg /usr/syno/bin/ffmpeg

Succes in BubleUPnP:

Attached File  Screen Shot 2013-11-25 at 1.27.55 PM.png   15.07K   11 downloads

===========

#2
Adm

Adm

    Property Caretaker

  • Grup: Administrators
  • Posts: 24,132
  • Înscris: 22.05.2003
Niice...

Din pacate Synology clasice, bazate pe procesoare ARM nu pot face transcoding h264.
Detalii despre asta + compilare FFMpeg pe arm aici

#3
Dyonissos

Dyonissos

    Member

  • Grup: Members
  • Posts: 850
  • Înscris: 30.11.2004
Intrebare: transcoding-ul se face la cererea clientului?
Cu alte cuvinte, daca am un client DLNA care nu stie DTS de exemplu, face serverul transcoding automat? Aceeasi intrebare si pentru MKV.
Din cate am inteles eu asta ar trebui sa fie plusul pe care il aduce Bubble UPNP server.
Serviio l-am dezinstalat pentru ca imi tinea procesorul in 100%.
Alta intrebare, daca aveam FFMpeg instalat dinainte, e posibil ca acum sa am mai multe versiuni?
Multumesc!

#4
Adm

Adm

    Property Caretaker

  • Grup: Administrators
  • Posts: 24,132
  • Înscris: 22.05.2003
Hmm nu merge chiar asa, de aceea exista "Profile' de TV, unde specifici de formate suporta nativ TV-ul.
Daca fisierul nu e intr-un format suportat => serverul face transcoding (daca poate).

Daca procesorul sta peste 50% => face transcoding.
Daca nu face trasncoding, nici nu se simte, pentru ca trimite ca pe SAMBA fisierul.

DLNA merge doar in LAN!
Bubble UPNP server este o aplicatie care iti permite accesarea din alta retea (internet) a unui server DLNA.
E un "proxy".

Poti avea N FFMpeg instalate, dar depinde cum sunt apelate.

Sa zicem ca cel "default" e in /bin, dar mai ai unul in /bin/1
O aplicatie poate sa il ceara special pe cel din /bin/1, depinde de setarile sale.

#5
Dyonissos

Dyonissos

    Member

  • Grup: Members
  • Posts: 850
  • Înscris: 30.11.2004
Stiu ca DLNA merge doar in LAN.
Din pacate nu Linux-ul nu e punctul meu forte, asa ca am parcurs pasii din tutorial orbeste, am vazut sute de ecrane defiland si sper ca n-am stricat nimic.
Intrebam de instantele de FFMpeg pentru ca si videostation foloseste ffmpeg dar cred ca apeleaza instanta instalata default.
Exista vreun utilitar ceva gen top mai avansat care sa-mi arate mai multe detalii? Pot forta videostation sa foloseasca instanta de ffmpeg pe care am pus-o eu manual?
Sper ca nu sunt off-topic.
Multumesc!

Anunturi

Chirurgia cranio-cerebrală minim invazivă Chirurgia cranio-cerebrală minim invazivă

Tehnicile minim invazive impun utilizarea unei tehnologii ultramoderne.

Endoscoapele operatorii de diverse tipuri, microscopul operator dedicat, neuronavigația, neuroelectrofiziologia, tehnicile avansate de anestezie, chirurgia cu pacientul treaz reprezintă armamentarium fără de care neurochirurgia prin "gaura cheii" nu ar fi posibilă. Folosind tehnicile de mai sus, tratăm un spectru larg de patologii cranio-cerebrale.

www.neurohope.ro

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

Forumul Softpedia foloseste "cookies" pentru a imbunatati experienta utilizatorilor Accept
Pentru detalii si optiuni legate de cookies si datele personale, consultati Politica de utilizare cookies si Politica de confidentialitate