Π‘ΠΎΡΡΠΎΡΠ»ΡΡ Π²ΡΠΏΡΡΠΊ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ OpenAPV 1.1.1.0, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΠ΅ΠΉ ΡΡΠ°Π»ΠΎΠ½Π½ΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π²ΠΈΠ΄Π΅ΠΎΠΊΠΎΠ΄Π΅ΠΊΠ° APV (Advanced Professional Video), ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π΄Π»Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π²ΠΈΠ΄Π΅ΠΎ Π±Π΅Π· ΡΠ°Π·Π»ΠΈΡΠΈΠΌΠΎΠΉ ΠΏΠΎΡΠ΅ΡΠΈ ΠΊΠ°ΡΠ΅ΡΡΠ²Π°. ΠΠ΅ΡΡΠΈΡ OpenAPV 1.1.1.0 ΠΎΡΠΌΠ΅ΡΠ΅Π½Π° ΠΊΠ°ΠΊ ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠ΅Π»ΠΈΠ· Π² ΡΠ΅ΡΠΈΠΈ 1.0. ΠΠΎΠ΄ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° ΡΠ·ΡΠΊΠ΅ Π‘ ΠΈ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ΅ΡΡΡ ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π·ΠΈΠ΅ΠΉ BSD. ΠΡΠΎΠ΅ΠΊΡ ΡΠ°Π·Π²ΠΈΠ²Π°Π΅Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ Academy Software Foundation, ΡΠΎΠ·Π΄Π°Π½Π½Π°Ρ Π΄Π»Ρ ΠΏΡΠΎΠ΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΎΡΠΊΡΡΡΠΎΠ³ΠΎ ΠΠ Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠΈΠ»ΡΠΌΠΎΠ².
Π€ΠΎΡΠΌΠ°Ρ APV ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡ Π²ΡΡΠΎΠΊΡΡ ΠΏΡΠΎΠΏΡΡΠΊΠ½ΡΡ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΡ ΠΈ Π½ΠΈΠ·ΠΊΡΡ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡ Π²Π½ΡΡΡΠΈΠΊΠ°Π΄ΡΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΡ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΌΠΎΠ½ΡΠ°ΠΆΠ½ΡΠΌ ΠΊΠΎΠ΄Π΅ΠΊΠ°ΠΌ (ΡΡΠ΅Π΄ΠΈ Π½ΠΈΡ Apple ProRes ΠΈ Avid DNxHD), Π° ΡΠ°ΠΊΠΆΠ΅ ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ Π²ΠΈΠ΄ΠΈΠΌΠΎΠ³ΠΎ ΡΠ½ΠΈΠΆΠ΅Π½ΠΈΡ ΠΊΠ°ΡΠ΅ΡΡΠ²Π° ΠΏΡΠΈ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΠΌ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ. ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ 2K, 4K ΠΈ 8K, ΡΡΠ°Π½Π΄Π°ΡΡ HDR10/10+ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° Π² Π²ΠΈΠ΄Π΅ΠΎ, ΡΠ°Π·Π±ΠΈΠ²ΠΊΠ° ΠΊΠ°Π΄ΡΠΎΠ² (tiling) Π΄Π»Ρ ΡΠ°ΡΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΠΈΠ²Π°Π½ΠΈΡ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΡ/Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΠΎΡΠΌΠ°ΡΡ Π΄ΠΈΡΠΊΡΠ΅ΡΠΈΠ·Π°ΡΠΈΠΈ ΡΠ²Π΅ΡΠ°, ΠΌΠ½ΠΎΠ³ΠΎΡΠ°ΠΊΡΡΡΠ½ΠΎΠ΅ Π²ΠΈΠ΄Π΅ΠΎ (multi-view), Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΡ (Π³Π»ΡΠ±ΠΈΠ½Π°, ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΠΎΡΡΡ, Π΄Π°Π½Π½ΡΠ΅ Π΄Π»Ρ ΠΏΡΠ΅Π΄ΠΏΡΠΎΡΠΌΠΎΡΡΠ°). ΠΠ»Ρ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ ΡΠ°Π±ΠΎΡΡ Π² Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ OpenAPV ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡΠΎΡΠ½ΠΎΠ΅ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅, Π° ΡΠ°ΠΊΠΆΠ΅ Π·Π°Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°Π½Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΡ Π½Π°Π±ΠΎΡΠΎΠ² ΠΊΠΎΠΌΠ°Π½Π΄ NEON (ARM) ΠΈ SSE/AVX (x86).
In der neuen Version:
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Ρ Π½ΠΎΠ²ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π²ΡΠ±ΠΎΡΠΎΡΠ½ΠΎΠ³ΠΎ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΡ oapvd_decode_auinfo(), oapvd_decode_frame(), oapvd_decode_tiles() ΠΈ oapvd_decode_metadata(), Π° ΡΠ°ΠΊΠΆΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ oapvd_info_pbu(), oapvd_info_frame() ΠΈ oapvd_info_tile().
- ΠΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΏΡΠΎΡΠΈΠ»ΠΈ, Π΄ΠΎΠΏΡΡΠΊΠ°ΡΡΠΈΠ΅ Π½Π΅ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ ΡΠ°Π·Π±ΠΈΠ²ΠΊΡ ΠΊΠ°Π΄ΡΠ° Π½Π° ΡΠ°Π·Π΄Π΅Π»ΡΠ½ΠΎ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΡΠ΅ΠΌΡΠ΅ Π±Π»ΠΎΠΊΠΈ (tile). ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π±Π»ΠΎΠΊΠΎΠ² ΠΌΠ΅Π½ΡΡΠ΅Π³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ° Π΄Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΡΠΈΠ»ΠΈΡΡ ΡΠ°ΡΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΊΠ°Π΄ΡΠ° ΠΈ ΡΠΎΡΠ΅ΡΠ½ΠΎ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°ΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ ΡΠ°ΡΡΠΈ ΠΊΠ°Π΄ΡΠ°. ΠΡΠΎΡΠΈΠ»ΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ Π΄Π»Ρ ΡΠ°Π·Π½ΡΡ ΡΠΎΡΠΌΠ°ΡΠΎΠ² ΡΠ²Π΅ΡΠΎΠ²ΠΎΠΉ ΡΡΠ±Π΄ΠΈΡΠΊΡΠ΅ΡΠΈΠ·Π°ΡΠΈΠΈ ΠΈ Π³Π»ΡΠ±ΠΈΠ½Ρ ΡΠ²Π΅ΡΠ° β 422-10-UNCONST (4:2:2, 10 Π±ΠΈΡ), 422-12-UNCONST, 444-10-UNCONST (4:4:4, 10 Π±ΠΈΡ), 444-12-UNCONST (4:4:4, 12 Π±ΠΈΡ), 4444-10-UNCONST (4:4:4+ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΠΎΡΡΡ, 10 Π±ΠΈΡ), 4444-12-UNCONST (4:4:4+ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΠΎΡΡΡ, 12 Π±ΠΈΡ) ΠΈ 400-10-UNCONST (4:0:0, 10 Π±ΠΈΡ).
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ Π²ΡΠ΄Π΅Π»Π΅Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ.
- ΠΠ΅ΡΠ΅Π΄Π΅Π»Π°Π½ Π°Π»Π³ΠΎΡΠΈΡΠΌ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π±Π»ΠΎΠΊΠΎΠ² ΠΏΠΎ ΡΠ°Π·Π½ΡΠΌ CPU, ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΡΠ΅ΠΏΠ΅ΡΡ ΠΈΠΌΠ΅Π΅Ρ Π»ΠΈΠ½Π΅ΠΉΠ½ΡΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ ΠΎΡ ΡΠΈΡΠ»Π° Π±Π»ΠΎΠΊΠΎΠ², Π° Π½Π΅ ΠΊΠ²Π°Π΄ΡΠ°ΡΠΈΡΠ½ΡΡ.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Ρ Π²Π°ΡΠΈΠ°Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ oapv_blk_to_pic_16(), ΡΡΠΊΠΎΡΠ΅Π½Π½ΡΠ΅ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ AVX2 ΠΈ NEON, Π° ΡΠ°ΠΊΠΆΠ΅ Π²Π°ΡΠΈΠ°Π½Ρ ΡΡΠ½ΠΊΡΠΈΠΈ oapv_dc_removed_had8x8(), ΡΡΠΊΠΎΡΠ΅Π½Π½ΡΠΉ ΡΠ΅ΡΠ΅Π· ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ NEON.
Quelle: opennet.ru
