Page 1 of 5

Feedbacks needed for Segmental Video Encoding

Posted: Thu May 23, 2013 12:13 am
by stanley
I am so excited to release the new version of 0.8.22 with a new exciting technology named Segmental Video Encoding (SVE) was introduced in after a long time of thinking and implementation. The idea of SVE is straight-forward. On systems with a lot of processor cores or processors, a single instance of video encoding cannot utilize all the computation power of the systems, though modern encoders like x264 already has good support for multi-threading. This also happens when doing GPU-based encoding, whereas the GPU is quite often under-loaded. SVE is basically the mechansim of encoding of a video in temporal segmentations, by loading 1~2 minutes video frames into memory and dispatch the frames to multiple encoder instances. A series of encoded video segments will be generated and they are concatenated seamlessly in the muxing stage together with the audio. This improves paralellization regardless of the encoder’s support for multi-threading, so those encoders without good multi-threading implementation (Xvidcore, MPEG 1/2 encoder etc.) will benefit. Please be noted that SVE is still experimental. If you experience problem with it, please give me feedback. I really need some more testings especially on cutting-edge computer systems which I don’t have a chance to test on.

Image

Re: Feedbacks needed for Segmental Video Encoding

Posted: Fri May 24, 2013 8:51 am
by sharkbite
Hi Stanley -

Had a quick play last night...

Converting Mpeg2 .ts to h.264 using the Apple presets for ipad classic , and CUDA...

HW= 6 core phenom + GTX650
Source file is on one HDD and output is on another...

SVE appears to be functioning, as the indicators show 2 of the 4 buffers being used.
(however only one buffer fills at a time.....)

The conversions starts off being really fast - about 12x....
after about 30 seconds conversion speed drops off to about 7x - which
is the same speed i get with this configuration and SVE turned off.
Both CPU and GPU are way understressed whatever i use :-(

Can you publish what settings you tested with?
it would be handy to know if it is just my configuration....

Keep up the good work - its a great idea!

cheers,

Re: Feedbacks needed for Segmental Video Encoding

Posted: Fri May 24, 2013 5:25 pm
by stanley
Thanks for your feedback!
If one of the two buffer slots is always empty, that indicats the two instances of CUDA encoders drain the buffer faster than the decoder can fill up the buffer.
How much RAM do you have? If you don't have a big enough RAM, the allocated buffer will be too small, especially when the content is HD, so that they are drained more often and cause only one encoder instance working at one time.
The number underneath the buffer fullness indicators is the frames in the buffer. What's the biggest number you see?

Re: Feedbacks needed for Segmental Video Encoding

Posted: Sat May 25, 2013 7:56 am
by encoderdude
i tried to do a segmental encode on a 720p avi file to high10 mp4 using x264 2-pass (i used a 1 minute cut clip, using the time option, from a full length movie of 90 mins.). Though the conversion was significantly fast & got a 1 min. output, it got only first 20-30 secs of the clip converted & the rest part a repetition of the first 20-30 secs. Tried changing the cocurrent setting from 4 to 1 trying all inbetweens (i got a quad core intel machine), but the results are more or less the same. The audio seems to Convert & play fine. It's the video part tht got the errors. & also when i converted the video using 'disabled' segmental encode setting, i got the file size half of tht compared to when i enabled the settings & it encoded perfectly. Have a look in to this issue.

Re: Feedbacks needed for Segmental Video Encoding

Posted: Sat May 25, 2013 9:24 am
by meRobs
There was another problem reported by e1wh for SVE (build 5500) at: viewtopic.php?f=28&t=12653&p=37885#p37885.
It related to 3-pass encoding with H.264 (Error 14)

Re: Feedbacks needed for Segmental Video Encoding

Posted: Sat May 25, 2013 6:08 pm
by stanley
Multi-pass encoding is incompatbiel with SVE in 5500. This is fixed in 5506. Multi-pass CRF also works with SVE.

Re: Feedbacks needed for Segmental Video Encoding

Posted: Sun May 26, 2013 10:01 am
by dahagi
It doesn't work for me in build 5505 (x64) when transcoding a H.264/DTS (MKV container) file into MPEG2/AC-3 (MPEG2 container) using ffmpeg as encoder/decoder for both audio and video. HW is Intel Core 2600 (4 Core with integrated Intel GPU). Tried other decoders like AviSynth but no change. Also concurrency variations make no diff.

Error occurs usually after about 20-40s into transcoding. In the UI I can see that it always appears quickly after cache fullness hits 100%.

Is SVE supposed to work in build 5505 for MPEG-2 target format?

Re: Feedbacks needed for Segmental Video Encoding

Posted: Sun May 26, 2013 11:42 am
by sharkbite
Hi Stanley I am running 4g memory.....according to task manager media coder is using about 600meg all up and I have about 2.5g free when It is running......so I don't think memory is the problem.

The buffers fill and empty very quickly.....the numbers are around 16.....with an occasional spike to 427.....

If I let the encode continue all the way through it gradually gets slower and slower.

Will try 5505 and if it changes.

Cheers

Re: Feedbacks needed for Segmental Video Encoding

Posted: Sun May 26, 2013 1:18 pm
by BOG22
Hi Stanley.
The SVE with 2 pass on build 5505 has increased my processor usage from 35-55% to now 85-100% on Intel i7 980. The encoding speed has definitely increased when compared to not using SVE. Cache seems to be working accordingly as all 4 are being used. Thank you for a great program.

Re: Feedbacks needed for Segmental Video Encoding

Posted: Sun May 26, 2013 8:58 pm
by stanley
I am so excited to hear that!
BOG22 wrote:The SVE with 2 pass on build 5505 has increased my processor usage from 35-55% to now 85-100% on Intel i7 980. The encoding speed has definitely increased when compared to not using SVE. Cache seems to be working accordingly as all 4 are being used. Thank you for a great program.