Quantcast
Aktuelles
Digital Eliteboard - Das Digitale Technik Forum

Registriere dich noch heute kostenlos, um Mitglied zu werden! Sobald du angemeldet bist, kannst du auf unserer Seite aktiv teilnehmen, indem du deine eigenen Themen und Beiträge erstellst und dich über deinen eigenen Posteingang mit anderen Mitgliedern unterhalten kannst! Zudem bekommst du Zutritt zu Bereichen, welche für Gäste verwehrt bleiben

Registriere dich noch heute kostenlos, um Mitglied zu werden! Sobald du angemeldet bist, kannst du auf unserer Seite aktiv teilnehmen, indem du deine eigenen Themen und Beiträge erstellst und dich über deinen eigenen Posteingang mit anderen Mitgliedern unterhalten kannst! Zudem bekommst du Zutritt zu Bereichen, welche für Gäste verwehrt bleiben

Transcoding mittels TVHeadend und Quicksync SDK 2014

clever999

Stamm User
Registriert
5. Oktober 2011
Beiträge
1.088
Reaktionspunkte
2.023
Punkte
373
Hallo Zusammen,

ich habe mal ein kleines tut für Quicksync unter Ubuntu erstellt. Ich kann damit nun 5 HD Streams transcodieren, only CPU gingen 3 HD Streams bei mir.
Danke auch an Maxdata755 für seine Ergänzungen

Mein System:
Zotac I7-3770T
Transcoding mittels Quicksync SDK 2014

Ubuntu Server 14.04

#### Root Zugang aktivieren #####
echo "deb DISTRO BUILDTYPE" | sudo tee -a /etc/apt/sources.list
(optional nur wer als root arbeiten will ohne sudo)

sudo su
sudo passwd root
sudo nano /etc/ssh/sshd_config
PermitRootLogin without-password
und setzt ein # davor:
#PermitRootLogin without-password
sudo service ssh restart

(ab jetzt als root anmelden und arbeiten wer das will)

#### Kernel Installation #####

nano /etc/apt/sources.list

Diese Zeile einfugen: --> deb precise-security main

apt-get update

Kernel bestimmen und das entsprechende installieren:

####### Intel Xeon E3-1285 v3 / 4th Generation Intel Core (zb i7-4790k) #######
apt-get install linux-headers-3.8.0-23 linux-headers-3.8.0-23-generic linux-image-3.8.0-23-generic --fix-missing

####### Intel Xeon E3-1285 v2 / 3rd Generation Intel Core (zb i7-3770T) #######
apt-get install linux-headers-3.2.0-41 linux-headers-3.2.0-41-generic linux-image-3.2.0-41-generic --fix-missing

reboot

beim booten e oder esc drücken, kernel 3.2.0-41 auswählen.

Soll der Kernel dauerhaft gestartet werden dann die nicht benötigten kernel löschen oder den richtigen kernel definieren beim starten

#### Nicht verwendete Kernel löschen ####

dpkg -l | grep linux-image (die installierten Kernel anzeigen lassen)

sudo apt-get remove --purge linux-image-4.2.0-27-generic

Bei mir wurde dann dabei beim uninstall von linux-image-4.2.0-27-generic dieser mitinstalliert linux-image-4.2.0-35-generic

daher anschliessend noch

sudo apt-get remove --purge linux-image-4.2.0-35-generic

ausführen und reboot


####### TVH Installieren #######

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 379CE192D401AB61
apt-get install apt-transport-https
echo "deb trusty unstable" | sudo tee -a /etc/apt/sources.list
sudo apt-get update
sudo apt-get install tvheadend


####### tvh als root zu starten #######

nano /etc/default/tvheadend
TVH_USER="root"
TVH_CONF_DIR="/home/hts/.hts/tvheadend"

service tvheadend restart

###### SDK 2014 Installation ######

add-apt-repository ppa:kernel-ppa/ppa
apt-get update
apt-get install python-software-properties
cd /opt
wget
tar -xvf intel-linux-media_ubuntu_16.3.2.22368_64bit.tar.gz
cd intel-linux-media_ubuntu_16.3.2.22368_64bit
./install_media.sh
apt-get install openjdk-7-jdk

###### nun kann geprüft werden ob alles läuft, einfach im terminal vainfo eingeben, sollte dann so aussehen #######
vainfo
error: can't connect to X server!
libva info: VA-API version 0.34.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so
libva info: Found init function __vaDriverInit_0_32
libva info: va_openDriver() returns 0
vainfo: VA-API version: 0.34 (libva 1.2.0.pre1)
vainfo: Driver version: 16.3.2.22368-ubit
vainfo: Supported profile and entrypoints
VAProfileNone : VAEntrypointVideoProc
VAProfileMPEG2Simple : VAEntrypointVLD
VAProfileMPEG2Main : VAEntrypointVLD
VAProfileH264Baseline : VAEntrypointEncSlice
VAProfileH264Main : VAEntrypointVLD
VAProfileH264Main : VAEntrypointEncSlice
VAProfileH264High : VAEntrypointVLD
VAProfileH264High : VAEntrypointEncSlice
VAProfileVC1Simple : VAEntrypointVLD
VAProfileVC1Main : VAEntrypointVLD
VAProfileVC1Advanced : VAEntrypointVLD
VAProfileJPEGBaseline : VAEntrypointVLD
VAProfileH264ConstrainedBaseline: VAEntrypointVLD
VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice


###### ffmpeg Installation ######

apt-get install build-essential pkg-config libssl-dev git autoconf g++ autotools-dev libtool
cd /home/
git clone
cd mfx_dispatch/
autoreconf -i
./configure --prefix=/usr
make -j 18
make install

cd /home/
git clone
cd QSV-on-Linux

nano build-ffmpeg.sh

dies anpassen:

run_command "sudo cp ${LIBMFX_PCFILE} /usr/lib64/pkgconfig/"
zu
run_command "sudo cp ${LIBMFX_PCFILE} /usr/lib/pkgconfig/"

./build-ffmpeg.sh


###### Pipe Script erstellen oder upload:

nano /home/ffpipe.sh

#!/bin/bash
url=$1
su
/usr/local/bin/ffmpeg -i $url -vcodec h264_qsv -b 2000k -maxrate 2000k -bufsize 4000k -preset slow -s 1280x720 -acodec copy -metadata service_provider=IPTV -metadata service_name=$name -f mpegts pipe:1
exit 0

chmod +x /home/ffpipe.sh

###### Streams einbauen mit script in TVH ######

pipe:///home/ffpipe.sh URL_Input
Name des Senders unter Service angeben # funktioniert nur bei tvh unstable

###### Streams einbauen: ohne script ######

pipe:///usr/local/bin/ffmpeg -loglevel fatal -i URL_Input -vcodec h264_qsv -b 2000k -maxrate 2000k -preset:v slow -s 1280x720 -acodec aac -ab 128k -ar 44100 -ac 2 -strict -2 -metadata service_provider=IPTV -metadata service_name=Sendername_ohne_Leerzeichen -f mpegts pipe:1


###### Streams starten im Terminal per udp #######

ffmpeg -i URL_Input -vcodec h264_qsv -b 2700k -maxrate 2700k -preset:v slow -s 1280x720 -acodec aac -ar 44100 -ac 2 -strict -2 -f mpegts udp://127.0.0.1:10000

einbinden in TVH mit: udp://127.0.0.1:10000
so das wars, ich bin kein Profi helfe aber gerne.
Viel Spass beim Basteln

LG
Clever
 
Zuletzt bearbeitet:
AW: Transcoding mittels Quicksync SDK 2014

hallo
meinste das alles ok ist auch wenn mann diesem fehler bekomt ?

vainfo

error: can't connect to X server!
 
AW: Transcoding mittels Quicksync SDK 2014

ja alles ok, der Fehler error: can't connect to X server! kommt nur bei Ubuntu Server, wenn Ubuntu Desktop installiert ist, sollte der Fehler nicht erscheinen

lg
 
AW: Transcoding mittels Quicksync SDK 2014

na nee hat man auch wenn mann da nur server instaliert hat ..

vieleicht anders rum wenn man desktop hat bekomt man diesem fehler nicht ...
 
AW: Transcoding mittels Quicksync SDK 2014

jo solte mann dann das desktop benuzen besser fur quiksync ?
 
AW: Transcoding mittels Quicksync SDK 2014

Es ist egal ob Desktop oder Server, läuft mit beidem
 
AW: Transcoding mittels Quicksync SDK 2014

vielen dank fur die super infos tolle leistung !!
 
AW: Transcoding mittels Quicksync SDK 2014

hi,
nach der vainfo kommt der Fehler: error while loading shared libraries: libXfixes.so.3
hab das schon im netz gesucht, leider keinen erfolg.
weiss jemand in welchem paket die enthalten sind?
 
AW: Transcoding mittels Quicksync SDK 2014

Update in Post 1

damit sollte es klappen
 
AW: Transcoding mittels Quicksync SDK 2014

mal ein grosses Lob @clever999

für sein TUT und Mithilfe die Sache mit dem transcoden auf Kurs zu bringen :-)

Wir haben in der letzten Zeit noch einiges Ergänzt und rausgefunden und bei mir
werden nun 5 HD + 2 SD Sender absolut top und stabil auf einem i7-3770K transcodiert.

cu

maxdata755
 
Zuletzt bearbeitet:
AW: Transcoding mittels Quicksync SDK 2014

Hallo super tut aber habe probleme beim instalieren
Habe ubuntu 14 64 auf mein amd phenom x2 4gb ram
 
Zurück
Oben