You can make that now without a need of custom directive, angular support ng-true-value and ng-false-value
https://docs.angularjs.org/api/ng/input/input[checkbox]
your example should work now
<input type="checkbox" ng-model="video.hidden" ng-true-value="false" ng-false-value="true">