http://www.miikahweb.com/feed.php MiikaHweb - Blender Temp-vse-h264-proxy Branch http://www.miikahweb.com/ MiikaHweb - Blender Temp-vse-h264-proxy Branch fi Tue, 26 Oct 21 22:11:59 +0000 MiikaHweb RSS contact at miikahweb.com <![CDATA[[beff56c]: Merge fix from D10363]]> http://www.miikahweb.com/en/blender/git-logs/commit/beff56cbbd6357c7891f2ab740e0c4223fee44b5 beff56c
Branches : temp-vse-h264-proxy
Author : Richard Antalik (ISS)
----------------------------------------
Merge fix from D10363

----------------------------------------
1 Path Changed]]>
Tue, 16 Mar 2021 14:31:55 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/beff56cbbd6357c7891f2ab740e0c4223fee44b5Richard Antalik
<![CDATA[[65eac85]: Implement quality setting based on UI slider]]> http://www.miikahweb.com/en/blender/git-logs/commit/65eac851810a48860586bdc867e926bb018685aa 65eac85
Branches : temp-vse-h264-proxy
Author : Richard Antalik (ISS)
----------------------------------------
Implement quality setting based on UI slider

----------------------------------------
1 Path Changed]]>
Tue, 16 Mar 2021 14:01:56 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/65eac851810a48860586bdc867e926bb018685aaRichard Antalik
<![CDATA[[04acfab]: VSE: Automatic proxy building]]> http://www.miikahweb.com/en/blender/git-logs/commit/04acfab4ad3dda3f675b0376d799a368ca5b67da 04acfab
Branches : temp-vse-h264-proxy
Author : Richard Antalik (ISS)
----------------------------------------
VSE: Automatic proxy building

Add `Proxy Setup` enum to user preferences with 3 choices: Manual, For Added strips and Automatic.
With `For Added strips` Only build proxies when adding movie strips.
With `Automatic` setting, proxies are built when preview size changes as well.

TODO:
- Decide what to do when workspace has multiple previews with different preview sizes. See `seq_get_preview_size()`
- Solution may be to change current design to allow only one size or just build multiple sizes.

Additional possible improvements:
- Cancel running job if preview size is changed while building proxies
- Use proxy of different size while building proxies for new size. it would be best to do after some refactoring, so in separate patch.
ref T85469

Maniphest Tasks: T85469

Differential Revision: https://developer.blender.org/D10363

----------------------------------------
12 Paths Changed]]>
Tue, 16 Mar 2021 11:25:39 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/04acfab4ad3dda3f675b0376d799a368ca5b67daRichard Antalik
<![CDATA[[06c4a97]: VSE: Simplify proxy settings]]> http://www.miikahweb.com/en/blender/git-logs/commit/06c4a97320e92216cf59ca49236e9c49eca4ccf2 06c4a97
Branches : temp-vse-h264-proxy
Author : Richard Antalik (ISS)
----------------------------------------
VSE: Simplify proxy settings

- Remove Full Render size from VSE preview size. Use just 100% instead
- Add Use Proxies checkbox to control whether proxies are used globally
- Move preview size to top so it is most prominent
- Set default to 100% preview size and use proxies (could be separate patch as well)

Design task: T85469

{F9735445}

No change has been done to individual strip setting as users may need to turn proxies on/off individually.
I think it would be best if size selection will be managed when automatic proxy building is enabled. In that case proxy panel can be simplified a lot. This is probalby better to leave for separate patch

Reviewed By: sergey

Maniphest Tasks: T85469

Differential Revision: https://developer.blender.org/D10362

----------------------------------------
10 Paths Changed]]>
Tue, 16 Mar 2021 11:22:09 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/06c4a97320e92216cf59ca49236e9c49eca4ccf2Richard Antalik
<![CDATA[[1045253]: Improve proxy building performance]]> http://www.miikahweb.com/en/blender/git-logs/commit/1045253f67d000477882ec17a018ae55bbfdba1e 1045253
Branches : temp-vse-h264-proxy
Author : Richard Antalik (ISS)
----------------------------------------
Improve proxy building performance

There are minimal changes to current code:
- Use h264 codec for output
- Specify number of threads for encoding to be same as system thread count
- Specify same nuber of threads for decoding. This may work only with some codecs(only h264 tested so far), but performance gain in encoding improves overall performance by big margin still. I have tested variety of codecs, and all were transcoded properly.

This is much simpler and straightforward patch than previous two, and this was in fact first thing I have tried to do in the beginning, but there was no improvement unless I have removed following lines:
```
rv->c->thread_count = BLI_system_thread_count();
rv->c->thread_type = FF_THREAD_SLICE;
```

I am not even sure how I found that these two lines were problematic.

Differential Revision: https://developer.blender.org/D10731

----------------------------------------
1 Path Changed]]>
Tue, 16 Mar 2021 11:26:26 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/1045253f67d000477882ec17a018ae55bbfdba1eRichard Antalik
<![CDATA[[279edfe]: Revert "VSE: Automatic proxy building"]]> http://www.miikahweb.com/en/blender/git-logs/commit/279edfe4a0333913d99bf60cded9b5f085bf3662 279edfe
Branches : temp-vse-h264-proxy
Author : Richard Antalik (ISS)
----------------------------------------
Revert "VSE: Automatic proxy building"

This reverts commit 74186a51d7a806780669b3c44093282e92bed285.

----------------------------------------
12 Paths Changed]]>
Tue, 16 Mar 2021 11:20:25 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/279edfe4a0333913d99bf60cded9b5f085bf3662Richard Antalik
<![CDATA[[496d5ac]: Revert "VSE: Simplify proxy settings"]]> http://www.miikahweb.com/en/blender/git-logs/commit/496d5ac65bc6acf28110d112c24df1c079be49db 496d5ac
Branches : temp-vse-h264-proxy
Author : Richard Antalik (ISS)
----------------------------------------
Revert "VSE: Simplify proxy settings"

This reverts commit e6acb20185092b4562e2cc1d9f2a1337c6a197a4.

----------------------------------------
10 Paths Changed]]>
Tue, 16 Mar 2021 11:20:39 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/496d5ac65bc6acf28110d112c24df1c079be49dbRichard Antalik
<![CDATA[[cf7b2d4]: Revert "[WIP] Use H264 codec for proxies"]]> http://www.miikahweb.com/en/blender/git-logs/commit/cf7b2d4fd447e856e37084a6339ab8c26fba3899 cf7b2d4
Branches : temp-vse-h264-proxy
Author : Richard Antalik (ISS)
----------------------------------------
Revert "[WIP] Use H264 codec for proxies"

This reverts commit 6813420d1eced11ed794fe992c205619ce3915d3.

----------------------------------------
1 Path Changed]]>
Tue, 16 Mar 2021 11:20:50 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/cf7b2d4fd447e856e37084a6339ab8c26fba3899Richard Antalik
<![CDATA[[e9965b7]: Merge branch 'master' into temp-vse-h264-proxy]]> http://www.miikahweb.com/en/blender/git-logs/commit/e9965b7fa2636addfe156fabbebb70a720f61ca9 e9965b7
Branches : temp-vse-h264-proxy
Author : Richard Antalik (ISS)
----------------------------------------
Merge branch 'master' into temp-vse-h264-proxy

----------------------------------------
0 Paths Changed]]>
Tue, 16 Mar 2021 11:21:04 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/e9965b7fa2636addfe156fabbebb70a720f61ca9Richard Antalik
<![CDATA[[74186a5]: VSE: Automatic proxy building]]> http://www.miikahweb.com/en/blender/git-logs/commit/74186a51d7a806780669b3c44093282e92bed285 74186a5
Branches : temp-vse-h264-proxy
Author : Richard Antalik (ISS)
----------------------------------------
VSE: Automatic proxy building

Add `Proxy Setup` enum to user preferences with 3 choices: Manual, For Added strips and Automatic.
With `For Added strips` Only build proxies when adding movie strips.
With `Automatic` setting, proxies are built when preview size changes as well.

TODO:
- Decide what to do when workspace has multiple previews with different preview sizes. See `seq_get_preview_size()`
- Solution may be to change current design to allow only one size or just build multiple sizes.

Additional possible improvements:
- Cancel running job if preview size is changed while building proxies
- Use proxy of different size while building proxies for new size. it would be best to do after some refactoring, so in separate patch.
ref T85469

Maniphest Tasks: T85469

Differential Revision: https://developer.blender.org/D10363

----------------------------------------
12 Paths Changed]]>
Mon, 08 Mar 2021 12:08:11 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/74186a51d7a806780669b3c44093282e92bed285Richard Antalik
<![CDATA[[e6acb20]: VSE: Simplify proxy settings]]> http://www.miikahweb.com/en/blender/git-logs/commit/e6acb20185092b4562e2cc1d9f2a1337c6a197a4 e6acb20
Branches : temp-vse-h264-proxy
Author : Richard Antalik (ISS)
----------------------------------------
VSE: Simplify proxy settings

- Remove Full Render size from VSE preview size. Use just 100% instead
- Add Use Proxies checkbox to control whether proxies are used globally
- Move preview size to top so it is most prominent
- Set default to 100% preview size and use proxies (could be separate patch as well)

Design task: T85469

{F9735445}

No change has been done to individual strip setting as users may need to turn proxies on/off individually.
I think it would be best if size selection will be managed when automatic proxy building is enabled. In that case proxy panel can be simplified a lot. This is probalby better to leave for separate patch

Maniphest Tasks: T85469

Differential Revision: https://developer.blender.org/D10362

----------------------------------------
10 Paths Changed]]>
Mon, 08 Mar 2021 11:47:02 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/e6acb20185092b4562e2cc1d9f2a1337c6a197a4Richard Antalik
<![CDATA[[6813420]: [WIP] Use H264 codec for proxies]]> http://www.miikahweb.com/en/blender/git-logs/commit/6813420d1eced11ed794fe992c205619ce3915d3 6813420
Branches : temp-vse-h264-proxy
Author : Richard Antalik (ISS)
----------------------------------------
[WIP] Use H264 codec for proxies

Same patch as D10394, but using H264 codec with small GOP size (2 frames in this case).

Main reason to use H264 is smaller filesize, current patch produces about 3x smaller files.
Playback is also about 1.5x faster than MJPEG

Complexity of this patch is much higher though, because encoder must work in own threadpool and encode frames with own gop size.
This means that scaled frames from encoder must be allocated per packet, which leads to worse performance overall. Patch is still about 3x faster than original. Interesting thing is that there is no performance improvement when running transcoding in more than 4 threads.

Possible ways to improve performance are to reuse memory for packets and frames, which would require redesign, where threads would wait for data to be written.
Another possibly much cleaner method would be to decode portions of input into multiple streams and remux these into proxy file.
In both cases managing complexity would be fairly important as it can get out of hand quite quickly.

Maniphest Tasks: T85469

Differential Revision: https://developer.blender.org/D10630

----------------------------------------
1 Path Changed]]>
Mon, 08 Mar 2021 10:18:14 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/6813420d1eced11ed794fe992c205619ce3915d3Richard Antalik