Jump to content

Transcoding per Intel QSV


ChAoSWK

Recommended Posts

Hallo liebe Forenkollegen,

 

ich hab mir gestern den MediaServer geordert, kam vom alten Recording Service.

Da ich jetzt alles rund haben wollte, spiele ich nun schon seit Stunden mit den Optionen herum, Intel Quick Sync fürs Transcodieren mit ffmpeg ans Laufen zu bekommen. Habe auch hier einiges gefunden und getestet, aber nichts bringt Erfolg.

 

Vorab:

habe mit der Batch getestet, ob Intel QSV überhaupt auf meiner Maschine sauber läuft (Intel Core i7 3770):

 


[Pfad zur ffmpeg]\ffmpeg.exe -i %1 -f mpegts -vcodec h264_qsv -maxrate 3200k -crf 20  -g 50 -map 0:v:0 -map 0:a:0 -vf "yadif=0:-1:1, scale=1280:720" -preset veryslow -tune film -vprofile main -level 30 -acodec aac -ab 128k -ar 44100 -ac 2 -async 1 -y "d:\test.ts"
pause

 

Diese läuft mit 25% CPU Last und schafft über 100 fps - oder - je nach Input Material 200fps bei 40% Last...

würde also sagen geht.

 

Nun habe ich mal testweise folgende Einträge in der ffmpegprefs.ini eingefügt:

 


[TS HD 3600 kbit - QSV]
Cmd=-analyzeduration {analyzeduration} {offset} {realtime} -i "{infile}" -f mpegts -pat_period 0.2 -vcodec h264_qsv -bufsize 6400k -maxrate 3200k -crf 20 -g 50 {framerate} -map 0:v:0 -map 0:a:0 -vf "yadif=0:-1:1, scale=

{scalex}:{scaley}" -preset {vpreset} -tune film -vprofile main -level 30 -acodec libmp3lame -ab 128k -ar 44100 -ac 2 -async 1 -y "{outfile}"
maxWidth=1280
maxHeight=720
MimeType=video/mpeg
Ext=.ts
Delay=2000

[HLS HD 3600 kbit Intel QSV]
Cmd=-analyzeduration {analyzeduration} {offset} -i "{infile}" -f mpegts -vcodec h264_qsv -bufsize 6400k -maxrate 3200k -crf 20 -g 50 {framerate} -map 0:v:0 -map 0:a:0 -vf "yadif=0:-1:1, scale={scalex}:{scaley}" -tune film

-vprofile main -level 30 -acodec aac -ab 128k -ar 44100 -ac 2 -async 1 -y "{outfile}"
maxWidth=1280
maxHeight=720
MimeType=video/hls
Ext=.hls
Delay=2000

[WEBM HD 3600 kbit (QSV)]
Cmd=-analyzeduration 1500k -threads {threads} {offset} {realtime} -i "{infile}" -f flv -vcodec h264_qsv -bufsize 6400k -maxrate 3200k -look_ahead 0 -q 24 -g 50 -map 0:a:0 -map 0:v:0 -preset {vpreset} -tune film -vprofile

high -level 31 -acodec aac -ab 128k -ar 44100 -ac 2 -async 1 -y "{outfile}"
maxWidth=1280
maxHeight=720
MimeType=video/webm
Ext=.webm
Delay=2000

[Flash HD 3600 kbit (QSV)]
Cmd=-analyzeduration 1500k -threads {threads} {offset} {realtime} -i "{infile}" -f flv -vcodec h264_qsv -bufsize 6400k -maxrate 3200k -look_ahead 0 -q 24 -g 50 -map 0:a:0 -map 0:v:0 -preset {vpreset} -tune film -vprofile

high -level 31 -acodec aac -ab 128k -ar 44100 -ac 2 -async 1 -y "{outfile}"
maxWidth=1280
maxHeight=720
MimeType=video/x-flv
Ext=.flv

[HD]
Cmd=-analyzeduration {analyzeduration} {offset} -i "{infile}" -f mpegts -vcodec h264_qsv -force_key_frames "expr:gte(t,n_forced*{segdur})" -bufsize 6400k -maxrate 3200k -look_ahead 0 -q 24 -map 0:a:0 -map 0:v:0 -preset

{vpreset} -tune film -vprofile high -level 41 -acodec aac -ab 128k -ar 44100 -ac 2 -async 1 -y "{outfile}"
maxWidth_IPhone=512
maxHeight_IPhone=288
maxWidth_IPad=512
maxHeight_IPad=288

 

[SD]
Cmd=-analyzeduration {analyzeduration} {offset} -i "{infile}" -f mpegts -vcodec h264_qsv -force_key_frames "expr:gte(t,n_forced*{segdur})" -bufsize 1400k -maxrate 600k -look_ahead 0 -q 28 -map 0:a:0 -map 0:v:0 -preset

{vpreset} -tune film -vprofile high -level 41 -acodec aac -ab 48k -ar 44100 -ac 1 -async 1 -y "{outfile}"
maxWidth_IPhone=512
maxHeight_IPhone=288
maxWidth_IPad=512
maxHeight_IPad=288

 

Egal, was, wie und wo ich nun teste, ich habe immer um die 50% CPU Last und das Bild kommt nach max. 30 Sekunden zum Stottern, da der Server nicht mehr schnell genug nachliefert.

 

Übersehe ich da einfach etwas, oder wie habt Ihr es gelöst?

 

Danke und LG

Dirk

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...