Удалил строку, потом добавили новую.
Большинство программ для сравнений ориентируются именно на строки.
Но некоторые могут и внутри строк различать изменения.
Если у вас число уже int, то берёте и складываете оператором сложения ("+" для тех, кто математику прогуливал).
Иначе переводите своё (скорее всего) строковое представление в int, long или BigInteger, и работаете уже с ним.
1) Никому не интересны ваши скрины. Я даже скопипастить не могу, что бы показать ошибку.
2) Не нужно переименовывать переменные p и q в 0 и 1. Имена переменных в java не могут начинаться с цифр.
3) "Как задать нулю логическое значение True, а единице False?" Наоборот. False эквивалентно нулю. True эквивалентно всему остальному.
4) Первая ссылка в гугле по запросу "java boolean to int"
Потому что j определена в блоке case 1, и доступна только там. А вы пытаетесь её использовать в других областях видимости. Вынесите объявление перед switch, а в case 1 оставьте лишь присваивание. Это элементарные вещи, которые рассказаны в первых 2-3 главах любой книжки по Java.
Т.к. вьюпорт прямоугольный, то один из углов можно вычислить, зная другой.
А если передавать оба угла, да ещё и размеры проецируемой области, то они заведомо должны соответствовать друг другу, иначе получится белеберда.
Тормозить будет нещадно. В VLC и Mplayer для каждого кодека существует несколько реализаций под каждое поколение процессоров, написанных на ассемблере вручную. Именно поэтому они прекрасно работают на слабом железе. На чистой джаве без нативного кода такое не получится сделать.