choosing-crf-value-for-encoder.md (3279B)
1 # Choosing CRF value for encoder 2 3 ## Context 4 Bandwidth usage by the Jami application is not optimal for all types of connections. Indeed, in some cases, the user experience is not good (satellite connection, ...) despite the bandwidth management algorithm. 5 6 ## Observation 7 It is not necessary to aim for an optimal quality (CRF < 20) because beyond that, the visual perception is almost similar while the data flow (bitrate) required is much higher. 8 9 ## Objective 10 The purpose of this document is to verify the impact of a change in video quality with the CRF parameter of the encoder. 11 12 ## Test 13 These tests were performed by comparing : 14 - The first one encoded with Jami's current parameters 15 - The second encoded with a lower quality 16 17 Each of these tests were performed for the following resolutions: 1080p, 720p and 436p. 18 19 For each of these resolutions several bitrates have been used: 20 - 300 Kbit/s (Jami low value) 21 - 1.5 Mbit/s (Intermediate value) 22 - 6 Mbit/s (High value) 23 24 The graphs show the evolution of the bitrate with the file being tested (resolution and specific set bitrate). 25 26 A visual comparison (side by side) was made for each test. 27 28 Thanks to this test we can estimate the bitrate that will be emitted in Jami according to the chosen parameters. We also have an overview of the visual quality. 29 30 * * * 31 32 1080p / 300 kbit/s / CRF28 33 ![image](encoder01.png) 34 1080p / 300 kbit/s / CRF38 35 ![image](encoder02.png) 36 37 Visual comparison (CRF28 a gauche / CRF38 a droite) 38 https://nextcloud.savoirfairelinux.com/index.php/s/twzPmT3MRPjQ3b7 39 40 1080p / 1.5 Mbps / CRF22 41 ![image](encoder03.png) 42 1080p / 1.5 Mbit/s / CRF30 43 ![image](encoder04.png) 44 45 Visual comparison (CRF22 left / CRF30 right) 46 https://nextcloud.savoirfairelinux.com/index.php/s/XK6Ef3rwBFriRXT 47 48 1080p / 6 Mbps / CRF17 49 ![image](encoder05.png) 50 1080p / 6 Mbit/s / CRF23 51 ![image](encoder06.png) 52 53 Visual comparison (CRF17 on the left / CRF23 on the right) 54 https://nextcloud.savoirfairelinux.com/index.php/s/RG3TksjQKtMorW5 55 56 * * * 57 58 720p / 300 kbps / CRF28 59 ![image](encoder07.png) 60 720p / 300 kbit/s / CRF38 61 ![image](encoder08.png) 62 Visual comparison (CRF28 left / CRF38 right) 63 https://nextcloud.savoirfairelinux.com/index.php/s/Z4T6EzGqyyWTJ9f 64 65 720p / 1.5 Mbps / CRF22 66 ![image](encoder09.png) 67 720p / 1.5 Mbit/s / CRF30 (Test with reduced CRF) 68 ![image](encoder10.png) 69 70 Visual comparison (CRF22 left / CRF30 right) 71 https://nextcloud.savoirfairelinux.com/index.php/s/H2Z5NQT3zJ9wzod 72 73 720p / 6 Mbps / CRF17 74 ![image](encoder11.png) 75 720p / 6 Mbit/s / CRF23 76 ![image](encoder12.png) 77 78 Visual comparison (CRF17 left / CRF23 right) 79 https://nextcloud.savoirfairelinux.com/index.php/s/gACSARfHjAKqgRR 80 81 * * * 82 83 436p / 300 kbps / CRF28 84 ![image](encoder13.png) 85 436p / 300 kbit/s / CRF38 86 ![image](encoder14.png) 87 88 Visual comparison (CRF28 left / CRF38 right) 89 https://nextcloud.savoirfairelinux.com/index.php/s/gj9CpQox5fiaWMT 90 91 436p / 1.5 Mbps / CRF22 92 ![image](encoder15.png) 93 436p / 1.5 Mbit/s / CRF30 94 ![image](encoder16.png) 95 96 Visual comparison (CRF22 left / CRF30 right) 97 https://nextcloud.savoirfairelinux.com/index.php/s/BeCaqs2rMRpNQwS 98 99 436p / 6 Mbps / CRF17 100 ![image](encoder17.png) 101 436p / 6 Mbit/s / CRF23 102 ![image](encoder18.png) 103 104 Visual comparison (CRF17 left / CRF23 right) 105 https://nextcloud.savoirfairelinux.com/index.php/s/KLeXq9NeLKTfyqs