Diskussion rund um QSVEnc

  • Hab mit gedacht ich mache mal einen Thread auf in man seine Erfahrungen mit QSVEnc schildern kann.


    :)


    Code
    1. QSVEncC --check-features


    liefert bei mir:

    Code
    1. QSVEncC (x64) 1.19 by rigaya, build Mar 25 2014 23:41:23based on Intel(R) Media SDK Encoding Sample 5,0,337,0 avi reader: enabled avs reader: enabled vpy reader: enabledMedia SDK Hardware API v1.8Supported features: CBR VBR AVBR CQP VQP LA ICQ LAICQ VCMRC mode available o o o o o o x x xVUI info output o o o o o o x x xTrellis o o o o o o x x xAdaptive_I o o o o o o x x xAdaptive_B o o o o o o x x xB_Pyramid o o o o o o x x xExt_BRC o o o x x x x x xMBBRC o o o x x x x x xLookahead Quality x x x x x o x x xMedia SDK Software unavailable.


    Code
    1. QSVEncC --check-lib


    liefert bei mir:

    Code
    1. QSVEncC (x64) 1.19 by rigaya, build Mar 25 2014 23:41:23based on Intel(R) Media SDK Encoding Sample 5,0,337,0 avi reader: enabled avs reader: enabled vpy reader: enabledlibmfxhw64.dll : v1.8libmfxsw64.dll : ----


    und

    Code
    1. QSVEncC --check-environment


    liefert:


    --cqp, --vqp, --la, --cbr, --vbr, --avbr laufen auch alle.


    Aber:

    • '--icq' und '--la-icq' gehen nicht.
    • '--la' friert ein, wenn ich '--quality' höher als 'balanced' setze.


    Weiß jemand genaueres, oder hat andere Erfahrungen?


    Okay, '--icq' und '--la-icq' klärt sich vermutlich durch:

    Zitat

    --icq <int> (固定品質モード)
    --la-icq <int> (先行探索付き固定品質モード)
    固定品質系設定。API v1.8から使用可能。
    期待のモードだけど、API v1.8対応ドライバが無いため現状不明。


    gelärt, was laut Google Translator, so viel heißt wie:

    Zitat

    ---icq <int> (fixed quality mode)
    --la-icq <int> (ancestor searching with fixed quality mode)
    Fixed quality system setting. Available from API v1.8.
    It is a mode of expectation, but current status unknown because there is no corresponding driver API v1.8


    sprich steht wohl in der API ab 1.8 als Optionen drinnen, aber die aktuellen Treiber können es wohl noch nicht.

  • Noch mal zu la-icq und icq, bei handbrake steht:

    Zitat

    lookahead (or la) <boolean>


    Use the LookAhead (LA or LA_ICQ) bitrate control algorithm.
    Default: 1 (on)
    Caveats: requires hardware support (4th gen. Intel Core processor or equivalent), and driver support for version 1.7 (1.8 for LA_ICQ) of the Media SDK API.

    Quelle: https://trac.handbrake.fr/wiki/QuickSyncOptions


    sollte bei mir also eigentlich laufen da mein i7-4770k ein Prozessor der vierten Generation ist,..
    (http://www.intel.com/content/w…th-gen-core-i7-4770k.html)

  • --check-lib

    Code
    1. avi reader: enabled avs reader: enabled vpy reader: enabledlibmfxhw32.dll : v1.8libmfxsw32.dll : v1.8


    --check-features

    Code
    1. CBR VBR AVBR CQP VQP LA ICQ LAICQ VCMRC mode available o o o o o o x x xVUI info output o o o o o o x x xTrellis o o o o o o x x xAdaptive_I o o o o o o x x xAdaptive_B o o o o o o x x xB_Pyramid o o o o o o x x xExt_BRC o o o x x x x x xMBBRC o o o x x x x x xLookahead Quality x x x x x o x x x


    --check-environment

    Code
    1. avi reader: enabled
    2. avs reader: enabled
    3. vpy reader: enabled
    4. Error (clGetDeviceIDs): -1
    5. Environment Info
    6. OS : Windows 8 (x64)
    7. CPU: Intel(R) Core(TM) i7-4770K CPU @ 3.50GHz [TB: 4.30GHz] (4C/8T)
    8. GPU: Unknown (Failed to find

    Da passt irgendwas nicht... Habe integrierte GPU im BIOS als primäre gewählt.


    Hanbrake kommt mit ICQ und ICQ-LA auf target usage=1 zurecht.

  • Mit QSVEncC 1.22 funktioniert jetzt tatsächlich --quality best, allerdings habe ich immer noch ein Problem, dass QSVEncC ein bisschen zu früh aufhört:

    Code
    1. Processing started[40.1%] 11175 frames: 117.91 fps, 7952.06 kb/s, remain 0:02:21Processing finished


    Nächster Versuch mit anderen Einstellungen:

    Code
    1. Processing started
    2. [40.2%] 11187 frames: 176.89 fps, 20541.99 kb/s, remain 0:01:34
    3. Processing finished

    40.2% ist offensichtlich nicht ganz fertig. Tritt mit allen Einstellungen auf, bei fast derselben Stelle.

  • Sogar der Software-Encoder steigt nach ~11200 Frames aus. Andere Datei:

    Code
    1. Processing started
    2. [24.5%] 15536 frames: 96.61 fps, 25214.21 kb/s, remain 0:08:16
    3. Processing finished

    Immerhin über 15000 Frames.

  • Code
    1. qsvencc --avi -i "j:\testfile.avi" -o "k:\testfile.avi"

    Also alles default. Aber auch bei anderen Einstellungen klappt es nicht. Habe den neusten und den etwas älteren Treiber getestet.


    --check-features:

    Code
    1. QSVEncC (x86) 1.22 by rigaya, build Jun 21 2014 22:22:36based on Intel(R) Media SDK Encoding Sample 5,0,337,0 avi reader: enabled avs reader: enabled vpy reader: enabledMedia SDK Hardware API v1.8Supported features: CBR VBR AVBR CQP VQP LA ICQ LAICQ VCMRC mode available o o o o o o x x xVUI info output o o o o o o x x xTrellis o o o o o o x x xAdaptive_I o o o o o o x x xAdaptive_B o o o o o o x x xB_Pyramid o o o o o o x x xExt_BRC o o o x x x x x xMBBRC o o o x x x x x xLookahead Quality x x x x x o x x x


    Die Testdateien kommen aus x264 VfW. Gameplay-Aufnahme.
    Encoding settings:

    Code
    1. cabac=0 / ref=1 / deblock=0:0:0 / analyse=0:0 / me=dia / subme=0 / psy=0 / mixed_ref=0 / me_range=16 / chroma_me=1 / trellis=0 / 8x8dct=0 / cqm=0 / deadzone=21,11 / fast_pskip=1 / chroma_qp_offset=0 / threads=13 / lookahead_threads=13 / sliced_threads=1 / slices=13 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / bframes=0 / weightp=0 / keyint=250 / keyint_min=25 / scenecut=0 / intra_refresh=0 / rc=crf / mbtree=0 / crf=22.0 / qcomp=0.60 / qpmin=0 / qpmax=69 / qpstep=4 / ip_ratio=1.40 / aq=2:1.00
  • Hmm,.. mal mit nem normaleren avi versucht? Mit cqp (was ja der default ist), scheint es bei mir ohne Probleme zu gehen.


    Es sind alle Frames encoded worden.

  • Nur mal am Rande, jetzt gibt es eine günstige Intel CPU Pentium G3258 mit Quick Sync die 4,5 - 4,6GHz läugt und das für <= 60€ und niedrigem Stromverbrauch.
    Ich glaub da schicke ich meinen 1090T in Rente. Schade nur das MeGui/x264 quick sync noch nicht unterstützt.
    Vielleicht noch eine Frage, wie sieht es mit der Qualität aus wenn man Quick Sync nutzt?

  • Mit Handbrake, angepassten Einstellungen und Haswell ist bei mir QSV ungefähr gleichauf mit x264 veryfast, nur schneller und mit niedrigerem Stromverbrauch. Und man kann nebenbei noch andere Dinge erledigen, ohne dass es sich negativ auf die Geschwindigkeit auswirkt. Ich teste mit 8000 kbps, 60 fps, 1920*864. x264 in AVBR 1 pass, QSV im LA-Modus.


    Der Pentium hat ein deutlich abgspeckte Version der Grafik, wodurch QSV langsamer läuft. Erst ab dem i3 4330 bekommt man die HD4600. Für maximale Leistung bräuchte man einen 4x70R.

  • QSVEnc 1.23 unterstützt jetzt auch ICQ&LA-ICQ, bei mir liefert '--check-features' nun:
    '--check-features' now shows:

  • Wenn ich:

    Code
    1. mencoder -ovc raw -noskip -vf scale,format=i420 -forcedsubsonly -nosub -nosound -mc 0 -lavdopts threads=8 -really-quiet -of rawvideo -o - -dvd-device "F:\TestClips&Co\DVDs\ElephantsDream\VIDEO_TS" dvd://1 | ffmpeg -loglevel fatal -threads 8 -an -sn -r 25 -pix_fmt yuv420p -s 720x576 -f rawvideo -i - -r 25 -pix_fmt yuv420p -f yuv4mpegpipe - | QSVEncC --y4m -i - --input-buf 3 --slices 0 --fps 25000/1000 --la-icq 23 --la-depth 10 --profile auto --level auto --quality best --bframes 16 --gop-len 0 --sar 64:45 --i-adapt --b-adapt --b-pyramid --lookahead-ds auto --trellis auto --colormatrix undef --output-file "H:\Temp\DVD_11_52_11_0110_01.264"


    Nutze friert QSVEncC wieder ein, deaktivieren von '--b-pyramid' oder ein Herabsenken von '--bframes' auf 9 fixed dies jedoch.
    --no-scenechange hinzufügen, hilft bei dem Beispiel auch, bei:

    Code
    1. mencoder -ovc raw -noskip -vf scale,format=i420 -forcedsubsonly -nosub -nosound -mc 0 -lavdopts threads=8 -really-quiet -of rawvideo -o - -dvd-device "F:\TestClips&Co\DVDs\ElephantsDream\VIDEO_TS" dvd://1 | ffmpeg -loglevel fatal -threads 8 -an -sn -r 25 -pix_fmt yuv420p -s 720x576 -f rawvideo -i - -r 25 -pix_fmt yuv420p -f yuv4mpegpipe - | QSVEncC --y4m -i - --input-buf 16 --slices 0 --fps 25000/1000 --la-icq 23 --la-depth 100 --profile auto --level auto --quality best --bframes 16 --gop-len 0 --open-gop --no-scenechange --sar 64:45 --i-adapt --b-adapt --b-pyramid --lookahead-ds auto --trellis all --output-file "H:\Temp\DVD_12_28_04_7910_01.264"

    hilft aber nur:
    a. b-frames auf 9 (oder niedriger) zu setzen
    oder alternativ
    b. --b-pyramid zu aktivieren.


    -> shimmy : kannst Du mal in Handbrake checken ob da LA-ICQ in Kombination mit '--b-byramid' und '--bframes 16' ordentlich läuft?