	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function create_encoder_component
_create_encoder_component:              ## @create_encoder_component
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	pushq	%r15
	pushq	%r14
	pushq	%r13
	pushq	%r12
	pushq	%rbx
	subq	$120, %rsp
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	%rdi, %r12
	movq	$0, -48(%rbp)
	movq	_MMAL_COMPONENT_DEFAULT_VIDEO_ENCODER@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	leaq	-48(%rbp), %rsi
	callq	_mmal_component_create
	movq	_MMAL_SUCCESS@GOTPCREL(%rip), %r13
	cmpq	(%r13), %rax
	jne	LBB0_1
## %bb.2:
	movq	-48(%rbp), %rax
	cmpl	$0, 20(%rax)
	je	LBB0_4
## %bb.3:
	cmpl	$0, 16(%rax)
	je	LBB0_4
## %bb.5:
	movq	(%rax), %rcx
	movq	8(%rax), %rax
	movq	(%rax), %r15
	movq	(%rcx), %r14
	movq	48(%r14), %rdi
	movq	48(%r15), %rsi
	callq	_mmal_format_copy
	movq	(%r12), %rcx
	movq	48(%r14), %rax
	movq	%rcx, (%rax)
	movq	_MMAL_ENCODING_H264@GOTPCREL(%rip), %rax
	cmpq	(%rax), %rcx
	jne	LBB0_10
## %bb.6:
	movq	_MMAL_VIDEO_LEVEL_H264_4@GOTPCREL(%rip), %rcx
	movq	8(%r12), %rdx
	movq	16(%r12), %rax
	cmpq	(%rcx), %rdx
	jne	LBB0_8
## %bb.7:
	movq	_MAX_BITRATE_LEVEL4@GOTPCREL(%rip), %rbx
	jmp	LBB0_12
LBB0_1:
	movq	%rax, %rbx
	leaq	L_.str(%rip), %rdi
	jmp	LBB0_61
LBB0_4:
	movq	_MMAL_ENOSYS@GOTPCREL(%rip), %rax
	movq	(%rax), %rbx
	leaq	L_.str.1(%rip), %rdi
	jmp	LBB0_61
LBB0_10:
	movq	_MMAL_ENCODING_MJPEG@GOTPCREL(%rip), %rdx
	movq	16(%r12), %rax
	cmpq	(%rdx), %rcx
	jne	LBB0_15
## %bb.11:
	movq	_MAX_BITRATE_MJPEG@GOTPCREL(%rip), %rbx
LBB0_12:
	cmpq	(%rbx), %rax
	jle	LBB0_15
## %bb.13:
	movq	_stderr@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	leaq	L_.str.2(%rip), %rsi
	jmp	LBB0_14
LBB0_8:
	movq	_MAX_BITRATE_LEVEL42@GOTPCREL(%rip), %rbx
	cmpq	(%rbx), %rax
	jle	LBB0_15
## %bb.9:
	movq	_stderr@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	leaq	L_.str.3(%rip), %rsi
LBB0_14:
	xorl	%eax, %eax
	callq	_fprintf
	movq	(%rbx), %rax
	movq	%rax, 16(%r12)
LBB0_15:
	movq	48(%r14), %rcx
	movq	%rax, 8(%rcx)
	movq	(%r12), %rdx
	movl	$262144, %eax                   ## imm = 0x40000
	movq	_MMAL_ENCODING_H264@GOTPCREL(%rip), %rsi
	cmpq	(%rsi), %rdx
	jne	LBB0_17
## %bb.16:
	movl	4(%r14), %eax
LBB0_17:
	movl	8(%r14), %edx
	cmpl	%edx, %eax
	cmovgl	%eax, %edx
	movl	%edx, (%r14)
	movq	24(%r14), %rax
	movq	32(%r14), %rdx
	cmpq	%rdx, %rax
	cmovgq	%rax, %rdx
	movq	%rdx, 16(%r14)
	movq	16(%rcx), %rax
	movq	$0, 8(%rax)
	movl	$1, (%rax)
	movq	%r14, %rdi
	callq	_mmal_port_format_commit
	cmpq	(%r13), %rax
	jne	LBB0_18
## %bb.19:
	movq	(%r12), %rax
	movq	_MMAL_ENCODING_H264@GOTPCREL(%rip), %rcx
	movq	(%rcx), %rcx
	cmpq	%rcx, %rax
	jne	LBB0_23
## %bb.20:
	movl	24(%r12), %eax
	cmpl	$-1, %eax
	je	LBB0_24
## %bb.21:
	movq	_MMAL_PARAMETER_INTRAPERIOD@GOTPCREL(%rip), %rcx
	movl	(%rcx), %ecx
	movl	%ecx, -96(%rbp)
	leaq	-92(%rbp), %rsi
	movl	%eax, -92(%rbp)
	movl	$0, -88(%rbp)
	movq	$0, -84(%rbp)
	movq	%r14, %rdi
	callq	_mmal_port_parameter_set
	cmpq	(%r13), %rax
	jne	LBB0_71
## %bb.22:
	movq	(%r12), %rax
	movq	_MMAL_ENCODING_H264@GOTPCREL(%rip), %rcx
	movq	(%rcx), %rcx
LBB0_23:
	cmpq	%rcx, %rax
	jne	LBB0_30
LBB0_24:
	cmpl	$2, 28(%r12)
	jl	LBB0_31
## %bb.25:
	cmpl	$1280, 56(%r12)                 ## imm = 0x500
	jg	LBB0_31
## %bb.26:
	movl	60(%r12), %edi
	movl	$16, %esi
	callq	_VCOS_ALIGN_UP
	movl	%eax, %ebx
	sarl	$4, %ebx
	movl	28(%r12), %ecx
	cmpl	%ebx, %ecx
	jle	LBB0_28
## %bb.27:
	movq	_stderr@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	leaq	L_.str.6(%rip), %rsi
	movl	%ecx, %edx
	movl	%ebx, %ecx
	movl	%ebx, %r8d
	xorl	%eax, %eax
	callq	_fprintf
	movl	28(%r12), %ecx
LBB0_28:
	movl	%ebx, %eax
	cltd
	idivl	%ecx
	imull	%eax, %ecx
	xorl	%edx, %edx
	cmpl	%ecx, %ebx
	setne	%dl
	addl	%eax, %edx
	movq	_MMAL_PARAMETER_MB_ROWS_PER_SLICE@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	%r14, %rdi
	callq	_mmal_port_parameter_set_uint32
	cmpq	(%r13), %rax
	jne	LBB0_72
## %bb.29:
	movq	(%r12), %rax
	movq	_MMAL_ENCODING_H264@GOTPCREL(%rip), %rcx
	movq	(%rcx), %rcx
LBB0_30:
	cmpq	%rcx, %rax
	jne	LBB0_38
LBB0_31:
	movl	32(%r12), %eax
	testl	%eax, %eax
	je	LBB0_39
## %bb.32:
	movq	_MMAL_PARAMETER_VIDEO_ENCODE_INITIAL_QUANT@GOTPCREL(%rip), %rcx
	movl	(%rcx), %ecx
	movl	%ecx, -96(%rbp)
	leaq	-92(%rbp), %rsi
	movl	%eax, -92(%rbp)
	movl	$0, -88(%rbp)
	movq	$0, -84(%rbp)
	movq	%r14, %rdi
	callq	_mmal_port_parameter_set
	cmpq	(%r13), %rax
	jne	LBB0_33
## %bb.34:
	movq	_MMAL_PARAMETER_VIDEO_ENCODE_MIN_QUANT@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, -152(%rbp)
	leaq	-148(%rbp), %rsi
	movl	32(%r12), %eax
	movl	%eax, -148(%rbp)
	movl	$0, -144(%rbp)
	movq	$0, -140(%rbp)
	movq	%r14, %rdi
	callq	_mmal_port_parameter_set
	cmpq	(%r13), %rax
	jne	LBB0_35
## %bb.36:
	movq	_MMAL_PARAMETER_VIDEO_ENCODE_MAX_QUANT@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, -128(%rbp)
	leaq	-124(%rbp), %rsi
	movl	32(%r12), %eax
	movl	%eax, -124(%rbp)
	movl	$0, -120(%rbp)
	movq	$0, -116(%rbp)
	movq	%r14, %rdi
	callq	_mmal_port_parameter_set
	cmpq	(%r13), %rax
	jne	LBB0_73
## %bb.37:
	movq	(%r12), %rax
	movq	_MMAL_ENCODING_H264@GOTPCREL(%rip), %rcx
	movq	(%rcx), %rcx
LBB0_38:
	cmpq	%rcx, %rax
	jne	LBB0_45
LBB0_39:
	movq	_MMAL_PARAMETER_PROFILE@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, -92(%rbp)
	movl	$16, -96(%rbp)
	movl	96(%r12), %eax
	movq	-88(%rbp), %rcx
	movq	%rcx, -104(%rbp)                ## 8-byte Spill
	movl	%eax, 8(%rcx)
	movl	56(%r12), %edi
	movl	$16, %esi
	callq	_VCOS_ALIGN_UP
	movl	%eax, %ebx
	sarl	$4, %ebx
	movl	60(%r12), %edi
	movl	$16, %esi
	callq	_VCOS_ALIGN_UP
	sarl	$4, %eax
	imull	%ebx, %eax
	imull	36(%r12), %eax
	cmpl	$245760, %eax                   ## imm = 0x3C000
	jle	LBB0_40
## %bb.41:
	movl	56(%r12), %edi
	movl	$16, %esi
	callq	_VCOS_ALIGN_UP
	movl	%eax, %ebx
	sarl	$4, %ebx
	movl	60(%r12), %edi
	movl	$16, %esi
	callq	_VCOS_ALIGN_UP
	sarl	$4, %eax
	imull	%ebx, %eax
	imull	36(%r12), %eax
	cmpl	$522240, %eax                   ## imm = 0x7F800
	jg	LBB0_66
## %bb.42:
	movq	_stderr@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	leaq	L_.str.11(%rip), %rsi
	xorl	%eax, %eax
	callq	_fprintf
	movq	_MMAL_VIDEO_LEVEL_H264_42@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, 8(%r12)
	jmp	LBB0_43
LBB0_18:
	movq	%rax, %rbx
	leaq	L_.str.4(%rip), %rdi
LBB0_61:
	xorl	%eax, %eax
	callq	_vcos_log_error
LBB0_67:
	movq	-48(%rbp), %rdi
	testq	%rdi, %rdi
	je	LBB0_69
## %bb.68:
	callq	_mmal_component_destroy
LBB0_69:
	movq	$0, 48(%r12)
LBB0_70:
	movq	%rbx, %rax
	addq	$120, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
LBB0_33:
	movq	%rax, %rbx
	leaq	L_.str.8(%rip), %rdi
	jmp	LBB0_61
LBB0_40:
	movq	8(%r12), %rax
LBB0_43:
	movq	-104(%rbp), %rcx                ## 8-byte Reload
	movq	%rax, (%rcx)
	leaq	-96(%rbp), %rsi
	movq	%r14, %rdi
	callq	_mmal_port_parameter_set
	cmpq	(%r13), %rax
	jne	LBB0_44
LBB0_45:
	movq	_MMAL_PARAMETER_VIDEO_IMMUTABLE_INPUT@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movl	92(%r12), %edx
	movq	%r15, %rdi
	callq	_mmal_port_parameter_set_boolean
	cmpq	(%r13), %rax
	je	LBB0_47
## %bb.46:
	leaq	L_.str.14(%rip), %rdi
	xorl	%eax, %eax
	callq	_vcos_log_error
LBB0_47:
	movq	(%r12), %rax
	movq	_MMAL_ENCODING_H264@GOTPCREL(%rip), %rcx
	cmpq	(%rcx), %rax
	jne	LBB0_59
## %bb.48:
	movq	_MMAL_PARAMETER_VIDEO_ENCODE_INLINE_HEADER@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movl	88(%r12), %edx
	movq	%r14, %rdi
	callq	_mmal_port_parameter_set_boolean
	cmpq	(%r13), %rax
	je	LBB0_50
## %bb.49:
	leaq	L_.str.15(%rip), %rdi
	xorl	%eax, %eax
	callq	_vcos_log_error
LBB0_50:
	movq	_MMAL_PARAMETER_VIDEO_ENCODE_SPS_TIMING@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movl	84(%r12), %edx
	movq	%r14, %rdi
	callq	_mmal_port_parameter_set_boolean
	cmpq	(%r13), %rax
	je	LBB0_52
## %bb.51:
	leaq	L_.str.16(%rip), %rdi
	xorl	%eax, %eax
	callq	_vcos_log_error
LBB0_52:
	movq	_MMAL_PARAMETER_VIDEO_ENCODE_INLINE_VECTORS@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movl	80(%r12), %edx
	movq	%r14, %rdi
	callq	_mmal_port_parameter_set_boolean
	cmpq	(%r13), %rax
	je	LBB0_54
## %bb.53:
	leaq	L_.str.17(%rip), %rdi
	xorl	%eax, %eax
	callq	_vcos_log_error
LBB0_54:
	cmpl	$-1, 40(%r12)
	je	LBB0_59
## %bb.55:
	movq	_MMAL_PARAMETER_VIDEO_INTRA_REFRESH@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	leaq	-92(%rbp), %rbx
	movl	%eax, -88(%rbp)
	movl	$48, -92(%rbp)
	movq	%r14, %rdi
	movq	%rbx, %rsi
	callq	_mmal_port_parameter_get
	cmpq	(%r13), %rax
	je	LBB0_57
## %bb.56:
	leaq	L_.str.18(%rip), %rdi
	callq	_vcos_log_warn
	xorps	%xmm0, %xmm0
	movups	%xmm0, -80(%rbp)
	movups	%xmm0, -64(%rbp)
LBB0_57:
	movl	40(%r12), %eax
	movl	%eax, -96(%rbp)
	movq	%r14, %rdi
	movq	%rbx, %rsi
	callq	_mmal_port_parameter_set
	cmpq	(%r13), %rax
	jne	LBB0_58
LBB0_59:
	movq	-48(%rbp), %rdi
	callq	_mmal_component_enable
	movq	%rax, %rbx
	cmpq	(%r13), %rax
	jne	LBB0_60
## %bb.62:
	movq	16(%r14), %rsi
	movl	(%r14), %edx
	movq	%r14, %rdi
	callq	_mmal_port_pool_create
	movq	%rax, %r15
	testq	%rax, %rax
	jne	LBB0_64
## %bb.63:
	movl	40(%r14), %esi
	leaq	L_.str.21(%rip), %rdi
	xorl	%eax, %eax
	callq	_vcos_log_error
LBB0_64:
	movq	%r15, 72(%r12)
	movq	-48(%rbp), %rax
	movq	%rax, 48(%r12)
	cmpq	$0, 64(%r12)
	je	LBB0_70
## %bb.65:
	movq	_stderr@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	leaq	L_.str.22(%rip), %rsi
	xorl	%eax, %eax
	callq	_fprintf
	jmp	LBB0_70
LBB0_71:
	movq	%rax, %rbx
	leaq	L_.str.5(%rip), %rdi
	jmp	LBB0_61
LBB0_44:
	movq	%rax, %rbx
	leaq	L_.str.13(%rip), %rdi
	jmp	LBB0_61
LBB0_60:
	leaq	L_.str.20(%rip), %rdi
	jmp	LBB0_61
LBB0_35:
	movq	%rax, %rbx
	leaq	L_.str.9(%rip), %rdi
	jmp	LBB0_61
LBB0_66:
	leaq	L_.str.12(%rip), %rdi
	xorl	%eax, %eax
	callq	_vcos_log_error
	movq	_MMAL_EINVAL@GOTPCREL(%rip), %rax
	movq	(%rax), %rbx
	jmp	LBB0_67
LBB0_72:
	movq	%rax, %rbx
	leaq	L_.str.7(%rip), %rdi
	jmp	LBB0_61
LBB0_73:
	movq	%rax, %rbx
	leaq	L_.str.10(%rip), %rdi
	jmp	LBB0_61
LBB0_58:
	movq	%rax, %rbx
	leaq	L_.str.19(%rip), %rdi
	jmp	LBB0_61
	.cfi_endproc
                                        ## -- End function
	.comm	_MMAL_COMPONENT_DEFAULT_VIDEO_ENCODER,4,2 ## @MMAL_COMPONENT_DEFAULT_VIDEO_ENCODER
	.comm	_MMAL_SUCCESS,8,3               ## @MMAL_SUCCESS
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"Unable to create video encoder component"

	.comm	_MMAL_ENOSYS,8,3                ## @MMAL_ENOSYS
L_.str.1:                               ## @.str.1
	.asciz	"Video encoder doesn't have input/output ports"

	.comm	_MMAL_ENCODING_H264,8,3         ## @MMAL_ENCODING_H264
	.comm	_MMAL_VIDEO_LEVEL_H264_4,8,3    ## @MMAL_VIDEO_LEVEL_H264_4
	.comm	_MAX_BITRATE_LEVEL4,8,3         ## @MAX_BITRATE_LEVEL4
	.comm	_stderr,4,2                     ## @stderr
L_.str.2:                               ## @.str.2
	.asciz	"Bitrate too high: Reducing to 25MBit/s\n"

	.comm	_MAX_BITRATE_LEVEL42,8,3        ## @MAX_BITRATE_LEVEL42
L_.str.3:                               ## @.str.3
	.asciz	"Bitrate too high: Reducing to 62.5MBit/s\n"

	.comm	_MMAL_ENCODING_MJPEG,8,3        ## @MMAL_ENCODING_MJPEG
	.comm	_MAX_BITRATE_MJPEG,8,3          ## @MAX_BITRATE_MJPEG
L_.str.4:                               ## @.str.4
	.asciz	"Unable to set format on video encoder output port"

	.comm	_MMAL_PARAMETER_INTRAPERIOD,4,2 ## @MMAL_PARAMETER_INTRAPERIOD
L_.str.5:                               ## @.str.5
	.asciz	"Unable to set intraperiod"

L_.str.6:                               ## @.str.6
	.asciz	"H264 Slice count (%d) exceeds number of macroblock rows (%d). Setting slices to %d.\n"

	.comm	_MMAL_PARAMETER_MB_ROWS_PER_SLICE,4,2 ## @MMAL_PARAMETER_MB_ROWS_PER_SLICE
L_.str.7:                               ## @.str.7
	.asciz	"Unable to set number of slices"

	.comm	_MMAL_PARAMETER_VIDEO_ENCODE_INITIAL_QUANT,4,2 ## @MMAL_PARAMETER_VIDEO_ENCODE_INITIAL_QUANT
L_.str.8:                               ## @.str.8
	.asciz	"Unable to set initial QP"

	.comm	_MMAL_PARAMETER_VIDEO_ENCODE_MIN_QUANT,4,2 ## @MMAL_PARAMETER_VIDEO_ENCODE_MIN_QUANT
L_.str.9:                               ## @.str.9
	.asciz	"Unable to set min QP"

	.comm	_MMAL_PARAMETER_VIDEO_ENCODE_MAX_QUANT,4,2 ## @MMAL_PARAMETER_VIDEO_ENCODE_MAX_QUANT
L_.str.10:                              ## @.str.10
	.asciz	"Unable to set max QP"

	.comm	_MMAL_PARAMETER_PROFILE,4,2     ## @MMAL_PARAMETER_PROFILE
L_.str.11:                              ## @.str.11
	.asciz	"Too many macroblocks/s: Increasing H264 Level to 4.2\n"

	.comm	_MMAL_VIDEO_LEVEL_H264_42,8,3   ## @MMAL_VIDEO_LEVEL_H264_42
L_.str.12:                              ## @.str.12
	.asciz	"Too many macroblocks/s requested"

	.comm	_MMAL_EINVAL,8,3                ## @MMAL_EINVAL
L_.str.13:                              ## @.str.13
	.asciz	"Unable to set H264 profile"

	.comm	_MMAL_PARAMETER_VIDEO_IMMUTABLE_INPUT,4,2 ## @MMAL_PARAMETER_VIDEO_IMMUTABLE_INPUT
L_.str.14:                              ## @.str.14
	.asciz	"Unable to set immutable input flag"

	.comm	_MMAL_PARAMETER_VIDEO_ENCODE_INLINE_HEADER,4,2 ## @MMAL_PARAMETER_VIDEO_ENCODE_INLINE_HEADER
L_.str.15:                              ## @.str.15
	.asciz	"failed to set INLINE HEADER FLAG parameters"

	.comm	_MMAL_PARAMETER_VIDEO_ENCODE_SPS_TIMING,4,2 ## @MMAL_PARAMETER_VIDEO_ENCODE_SPS_TIMING
L_.str.16:                              ## @.str.16
	.asciz	"failed to set SPS TIMINGS FLAG parameters"

	.comm	_MMAL_PARAMETER_VIDEO_ENCODE_INLINE_VECTORS,4,2 ## @MMAL_PARAMETER_VIDEO_ENCODE_INLINE_VECTORS
L_.str.17:                              ## @.str.17
	.asciz	"failed to set INLINE VECTORS parameters"

	.comm	_MMAL_PARAMETER_VIDEO_INTRA_REFRESH,4,2 ## @MMAL_PARAMETER_VIDEO_INTRA_REFRESH
L_.str.18:                              ## @.str.18
	.asciz	"Unable to get existing H264 intra-refresh values. Please update your firmware"

L_.str.19:                              ## @.str.19
	.asciz	"Unable to set H264 intra-refresh values"

L_.str.20:                              ## @.str.20
	.asciz	"Unable to enable video encoder component"

L_.str.21:                              ## @.str.21
	.asciz	"Failed to create buffer header pool for encoder output port %s"

L_.str.22:                              ## @.str.22
	.asciz	"Encoder component done\n"

	.comm	_MMAL_PARAMETER_RATECONTROL,4,2 ## @MMAL_PARAMETER_RATECONTROL
	.comm	_MMAL_VIDEO_RATECONTROL_DEFAULT,4,2 ## @MMAL_VIDEO_RATECONTROL_DEFAULT
	.no_dead_strip	_create_encoder_component
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function create_encoder_component
_create_encoder_component:              ; @create_encoder_component
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #208
	.cfi_def_cfa_offset 208
	stp	x26, x25, [sp, #128]            ; 16-byte Folded Spill
	stp	x24, x23, [sp, #144]            ; 16-byte Folded Spill
	stp	x22, x21, [sp, #160]            ; 16-byte Folded Spill
	stp	x20, x19, [sp, #176]            ; 16-byte Folded Spill
	stp	x29, x30, [sp, #192]            ; 16-byte Folded Spill
	add	x29, sp, #192
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	.cfi_offset w19, -24
	.cfi_offset w20, -32
	.cfi_offset w21, -40
	.cfi_offset w22, -48
	.cfi_offset w23, -56
	.cfi_offset w24, -64
	.cfi_offset w25, -72
	.cfi_offset w26, -80
	mov	x19, x0
	stur	xzr, [x29, #-72]
Lloh0:
	adrp	x8, _MMAL_COMPONENT_DEFAULT_VIDEO_ENCODER@GOTPAGE
Lloh1:
	ldr	x8, [x8, _MMAL_COMPONENT_DEFAULT_VIDEO_ENCODER@GOTPAGEOFF]
Lloh2:
	ldr	w0, [x8]
	sub	x1, x29, #72
	bl	_mmal_component_create
Lloh3:
	adrp	x23, _MMAL_SUCCESS@GOTPAGE
Lloh4:
	ldr	x23, [x23, _MMAL_SUCCESS@GOTPAGEOFF]
	ldr	x8, [x23]
	cmp	x0, x8
	b.ne	LBB0_6
; %bb.1:
	ldur	x8, [x29, #-72]
	ldr	w9, [x8, #20]
	cbz	w9, LBB0_7
; %bb.2:
	ldr	w9, [x8, #16]
	cbz	w9, LBB0_7
; %bb.3:
	ldp	x8, x9, [x8]
	ldr	x21, [x9]
	ldr	x20, [x8]
	ldr	x0, [x20, #48]
	ldr	x1, [x21, #48]
	bl	_mmal_format_copy
	ldr	x9, [x19]
	ldr	x8, [x20, #48]
	str	x9, [x8]
Lloh5:
	adrp	x24, _MMAL_ENCODING_H264@GOTPAGE
Lloh6:
	ldr	x24, [x24, _MMAL_ENCODING_H264@GOTPAGEOFF]
	ldr	x8, [x24]
	cmp	x9, x8
	b.ne	LBB0_8
; %bb.4:
Lloh7:
	adrp	x8, _MMAL_VIDEO_LEVEL_H264_4@GOTPAGE
Lloh8:
	ldr	x8, [x8, _MMAL_VIDEO_LEVEL_H264_4@GOTPAGEOFF]
Lloh9:
	ldr	x9, [x8]
	ldp	x10, x8, [x19, #8]
	cmp	x10, x9
	b.ne	LBB0_12
; %bb.5:
Lloh10:
	adrp	x22, _MAX_BITRATE_LEVEL4@GOTPAGE
Lloh11:
	ldr	x22, [x22, _MAX_BITRATE_LEVEL4@GOTPAGEOFF]
	b	LBB0_10
LBB0_6:
	mov	x22, x0
Lloh12:
	adrp	x0, l_.str@PAGE
Lloh13:
	add	x0, x0, l_.str@PAGEOFF
	b	LBB0_41
LBB0_7:
Lloh14:
	adrp	x8, _MMAL_ENOSYS@GOTPAGE
Lloh15:
	ldr	x8, [x8, _MMAL_ENOSYS@GOTPAGEOFF]
Lloh16:
	ldr	x22, [x8]
Lloh17:
	adrp	x0, l_.str.1@PAGE
Lloh18:
	add	x0, x0, l_.str.1@PAGEOFF
	b	LBB0_41
LBB0_8:
Lloh19:
	adrp	x8, _MMAL_ENCODING_MJPEG@GOTPAGE
Lloh20:
	ldr	x8, [x8, _MMAL_ENCODING_MJPEG@GOTPAGEOFF]
Lloh21:
	ldr	x10, [x8]
	ldr	x8, [x19, #16]
	cmp	x9, x10
	b.ne	LBB0_15
; %bb.9:
Lloh22:
	adrp	x22, _MAX_BITRATE_MJPEG@GOTPAGE
Lloh23:
	ldr	x22, [x22, _MAX_BITRATE_MJPEG@GOTPAGEOFF]
LBB0_10:
	ldr	x9, [x22]
	cmp	x8, x9
	b.le	LBB0_15
; %bb.11:
Lloh24:
	adrp	x8, _stderr@GOTPAGE
Lloh25:
	ldr	x8, [x8, _stderr@GOTPAGEOFF]
Lloh26:
	ldr	w0, [x8]
Lloh27:
	adrp	x1, l_.str.2@PAGE
Lloh28:
	add	x1, x1, l_.str.2@PAGEOFF
	b	LBB0_14
LBB0_12:
Lloh29:
	adrp	x22, _MAX_BITRATE_LEVEL42@GOTPAGE
Lloh30:
	ldr	x22, [x22, _MAX_BITRATE_LEVEL42@GOTPAGEOFF]
	ldr	x9, [x22]
	cmp	x8, x9
	b.le	LBB0_15
; %bb.13:
Lloh31:
	adrp	x8, _stderr@GOTPAGE
Lloh32:
	ldr	x8, [x8, _stderr@GOTPAGEOFF]
Lloh33:
	ldr	w0, [x8]
Lloh34:
	adrp	x1, l_.str.3@PAGE
Lloh35:
	add	x1, x1, l_.str.3@PAGEOFF
LBB0_14:
	bl	_fprintf
	ldr	x8, [x22]
	str	x8, [x19, #16]
LBB0_15:
	ldr	x9, [x20, #48]
	str	x8, [x9, #8]
	ldr	x8, [x19]
	ldr	x10, [x24]
	cmp	x8, x10
	b.ne	LBB0_17
; %bb.16:
	ldr	w8, [x20, #4]
	b	LBB0_18
LBB0_17:
	mov	w8, #262144
LBB0_18:
	ldr	w10, [x20, #8]
	cmp	w8, w10
	csel	w8, w8, w10, gt
	str	w8, [x20]
	ldp	x8, x10, [x20, #24]
	cmp	x8, x10
	csel	x8, x8, x10, gt
	str	x8, [x20, #16]
	ldr	x8, [x9, #16]
	str	xzr, [x8, #8]
	mov	w9, #1
	str	w9, [x8]
	mov	x0, x20
	bl	_mmal_port_format_commit
	ldr	x8, [x23]
	cmp	x0, x8
	b.ne	LBB0_40
; %bb.19:
	ldr	x8, [x19]
	ldr	x9, [x24]
	cmp	x8, x9
	b.ne	LBB0_23
; %bb.20:
	ldr	w8, [x19, #24]
	cmn	w8, #1
	b.eq	LBB0_24
; %bb.21:
Lloh36:
	adrp	x9, _MMAL_PARAMETER_INTRAPERIOD@GOTPAGE
Lloh37:
	ldr	x9, [x9, _MMAL_PARAMETER_INTRAPERIOD@GOTPAGEOFF]
Lloh38:
	ldr	w9, [x9]
	add	x10, sp, #24
	orr	x1, x10, #0x4
	stp	w9, w8, [sp, #24]
	str	wzr, [sp, #32]
	stur	xzr, [sp, #36]
	mov	x0, x20
	bl	_mmal_port_parameter_set
	ldr	x8, [x23]
	cmp	x0, x8
	b.ne	LBB0_66
; %bb.22:
	ldr	x8, [x19]
	ldr	x9, [x24]
LBB0_23:
	cmp	x8, x9
	b.ne	LBB0_30
LBB0_24:
	ldr	w8, [x19, #28]
	cmp	w8, #2
	b.lt	LBB0_31
; %bb.25:
	ldr	w8, [x19, #56]
	cmp	w8, #1280
	b.gt	LBB0_31
; %bb.26:
	ldr	w0, [x19, #60]
	mov	w1, #16
	bl	_VCOS_ALIGN_UP
	asr	w22, w0, #4
	ldr	w8, [x19, #28]
	cmp	w8, w22
	b.le	LBB0_28
; %bb.27:
Lloh39:
	adrp	x9, _stderr@GOTPAGE
Lloh40:
	ldr	x9, [x9, _stderr@GOTPAGEOFF]
Lloh41:
	ldr	w0, [x9]
	stp	x22, x22, [sp, #8]
	str	x8, [sp]
Lloh42:
	adrp	x1, l_.str.6@PAGE
Lloh43:
	add	x1, x1, l_.str.6@PAGEOFF
	bl	_fprintf
	ldr	w8, [x19, #28]
LBB0_28:
	sdiv	w9, w22, w8
	mul	w8, w9, w8
	cmp	w22, w8
	cinc	w2, w9, ne
Lloh44:
	adrp	x8, _MMAL_PARAMETER_MB_ROWS_PER_SLICE@GOTPAGE
Lloh45:
	ldr	x8, [x8, _MMAL_PARAMETER_MB_ROWS_PER_SLICE@GOTPAGEOFF]
Lloh46:
	ldr	w1, [x8]
	mov	x0, x20
	bl	_mmal_port_parameter_set_uint32
	ldr	x8, [x23]
	cmp	x0, x8
	b.ne	LBB0_71
; %bb.29:
	ldr	x8, [x19]
	ldr	x9, [x24]
LBB0_30:
	cmp	x8, x9
	b.ne	LBB0_36
LBB0_31:
	ldr	w8, [x19, #32]
	cbz	w8, LBB0_37
; %bb.32:
Lloh47:
	adrp	x9, _MMAL_PARAMETER_VIDEO_ENCODE_INITIAL_QUANT@GOTPAGE
Lloh48:
	ldr	x9, [x9, _MMAL_PARAMETER_VIDEO_ENCODE_INITIAL_QUANT@GOTPAGEOFF]
Lloh49:
	ldr	w9, [x9]
	add	x10, sp, #24
	orr	x1, x10, #0x4
	stp	w9, w8, [sp, #24]
	str	wzr, [sp, #32]
	stur	xzr, [sp, #36]
	mov	x0, x20
	bl	_mmal_port_parameter_set
	ldr	x8, [x23]
	cmp	x0, x8
	b.ne	LBB0_45
; %bb.33:
Lloh50:
	adrp	x8, _MMAL_PARAMETER_VIDEO_ENCODE_MIN_QUANT@GOTPAGE
Lloh51:
	ldr	x8, [x8, _MMAL_PARAMETER_VIDEO_ENCODE_MIN_QUANT@GOTPAGEOFF]
Lloh52:
	ldr	w8, [x8]
	add	x9, sp, #96
	orr	x1, x9, #0x4
	ldr	w9, [x19, #32]
	stp	w8, w9, [sp, #96]
	str	wzr, [sp, #104]
	stur	xzr, [sp, #108]
	mov	x0, x20
	bl	_mmal_port_parameter_set
	ldr	x8, [x23]
	cmp	x0, x8
	b.ne	LBB0_69
; %bb.34:
Lloh53:
	adrp	x8, _MMAL_PARAMETER_VIDEO_ENCODE_MAX_QUANT@GOTPAGE
Lloh54:
	ldr	x8, [x8, _MMAL_PARAMETER_VIDEO_ENCODE_MAX_QUANT@GOTPAGEOFF]
Lloh55:
	ldr	w8, [x8]
	add	x9, sp, #72
	orr	x1, x9, #0x4
	ldr	w9, [x19, #32]
	stp	w8, w9, [sp, #72]
	str	wzr, [sp, #80]
	stur	xzr, [sp, #84]
	mov	x0, x20
	bl	_mmal_port_parameter_set
	ldr	x8, [x23]
	cmp	x0, x8
	b.ne	LBB0_72
; %bb.35:
	ldr	x8, [x19]
	ldr	x9, [x24]
LBB0_36:
	cmp	x8, x9
	b.ne	LBB0_48
LBB0_37:
Lloh56:
	adrp	x8, _MMAL_PARAMETER_PROFILE@GOTPAGE
Lloh57:
	ldr	x8, [x8, _MMAL_PARAMETER_PROFILE@GOTPAGEOFF]
Lloh58:
	ldr	w8, [x8]
	mov	w9, #16
	stp	w9, w8, [sp, #24]
	ldr	w8, [x19, #96]
	ldr	x22, [sp, #32]
	str	w8, [x22, #8]
	ldr	w0, [x19, #56]
	mov	w1, #16
	bl	_VCOS_ALIGN_UP
	asr	w25, w0, #4
	ldr	w0, [x19, #60]
	mov	w1, #16
	bl	_VCOS_ALIGN_UP
	asr	w8, w0, #4
	mul	w8, w8, w25
	ldr	w9, [x19, #36]
	mul	w8, w8, w9
	cmp	w8, #60, lsl #12                ; =245760
	b.le	LBB0_46
; %bb.38:
	ldr	w0, [x19, #56]
	mov	w1, #16
	bl	_VCOS_ALIGN_UP
	asr	w25, w0, #4
	ldr	w0, [x19, #60]
	mov	w1, #16
	bl	_VCOS_ALIGN_UP
	asr	w8, w0, #4
	mul	w8, w8, w25
	ldr	w9, [x19, #36]
	mul	w8, w8, w9
	mov	w9, #522240
	cmp	w8, w9
	b.gt	LBB0_70
; %bb.39:
Lloh59:
	adrp	x8, _stderr@GOTPAGE
Lloh60:
	ldr	x8, [x8, _stderr@GOTPAGEOFF]
Lloh61:
	ldr	w0, [x8]
Lloh62:
	adrp	x1, l_.str.11@PAGE
Lloh63:
	add	x1, x1, l_.str.11@PAGEOFF
	bl	_fprintf
Lloh64:
	adrp	x8, _MMAL_VIDEO_LEVEL_H264_42@GOTPAGE
Lloh65:
	ldr	x8, [x8, _MMAL_VIDEO_LEVEL_H264_42@GOTPAGEOFF]
Lloh66:
	ldr	x8, [x8]
	str	x8, [x19, #8]
	b	LBB0_47
LBB0_40:
	mov	x22, x0
Lloh67:
	adrp	x0, l_.str.4@PAGE
Lloh68:
	add	x0, x0, l_.str.4@PAGEOFF
LBB0_41:
	bl	_vcos_log_error
	ldur	x0, [x29, #-72]
	cbz	x0, LBB0_43
LBB0_42:
	bl	_mmal_component_destroy
LBB0_43:
	str	xzr, [x19, #48]
LBB0_44:
	mov	x0, x22
	ldp	x29, x30, [sp, #192]            ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #176]            ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #160]            ; 16-byte Folded Reload
	ldp	x24, x23, [sp, #144]            ; 16-byte Folded Reload
	ldp	x26, x25, [sp, #128]            ; 16-byte Folded Reload
	add	sp, sp, #208
	ret
LBB0_45:
	mov	x22, x0
Lloh69:
	adrp	x0, l_.str.8@PAGE
Lloh70:
	add	x0, x0, l_.str.8@PAGEOFF
	b	LBB0_41
LBB0_46:
	ldr	x8, [x19, #8]
LBB0_47:
	str	x8, [x22]
	add	x1, sp, #24
	mov	x0, x20
	bl	_mmal_port_parameter_set
	ldr	x8, [x23]
	cmp	x0, x8
	b.ne	LBB0_67
LBB0_48:
Lloh71:
	adrp	x8, _MMAL_PARAMETER_VIDEO_IMMUTABLE_INPUT@GOTPAGE
Lloh72:
	ldr	x8, [x8, _MMAL_PARAMETER_VIDEO_IMMUTABLE_INPUT@GOTPAGEOFF]
Lloh73:
	ldr	w1, [x8]
	ldr	w2, [x19, #92]
	mov	x0, x21
	bl	_mmal_port_parameter_set_boolean
	ldr	x8, [x23]
	cmp	x0, x8
	b.eq	LBB0_50
; %bb.49:
Lloh74:
	adrp	x0, l_.str.14@PAGE
Lloh75:
	add	x0, x0, l_.str.14@PAGEOFF
	bl	_vcos_log_error
LBB0_50:
	ldr	x8, [x19]
	ldr	x9, [x24]
	cmp	x8, x9
	b.ne	LBB0_61
; %bb.51:
Lloh76:
	adrp	x8, _MMAL_PARAMETER_VIDEO_ENCODE_INLINE_HEADER@GOTPAGE
Lloh77:
	ldr	x8, [x8, _MMAL_PARAMETER_VIDEO_ENCODE_INLINE_HEADER@GOTPAGEOFF]
Lloh78:
	ldr	w1, [x8]
	ldr	w2, [x19, #88]
	mov	x0, x20
	bl	_mmal_port_parameter_set_boolean
	ldr	x8, [x23]
	cmp	x0, x8
	b.eq	LBB0_53
; %bb.52:
Lloh79:
	adrp	x0, l_.str.15@PAGE
Lloh80:
	add	x0, x0, l_.str.15@PAGEOFF
	bl	_vcos_log_error
LBB0_53:
Lloh81:
	adrp	x8, _MMAL_PARAMETER_VIDEO_ENCODE_SPS_TIMING@GOTPAGE
Lloh82:
	ldr	x8, [x8, _MMAL_PARAMETER_VIDEO_ENCODE_SPS_TIMING@GOTPAGEOFF]
Lloh83:
	ldr	w1, [x8]
	ldr	w2, [x19, #84]
	mov	x0, x20
	bl	_mmal_port_parameter_set_boolean
	ldr	x8, [x23]
	cmp	x0, x8
	b.eq	LBB0_55
; %bb.54:
Lloh84:
	adrp	x0, l_.str.16@PAGE
Lloh85:
	add	x0, x0, l_.str.16@PAGEOFF
	bl	_vcos_log_error
LBB0_55:
Lloh86:
	adrp	x8, _MMAL_PARAMETER_VIDEO_ENCODE_INLINE_VECTORS@GOTPAGE
Lloh87:
	ldr	x8, [x8, _MMAL_PARAMETER_VIDEO_ENCODE_INLINE_VECTORS@GOTPAGEOFF]
Lloh88:
	ldr	w1, [x8]
	ldr	w2, [x19, #80]
	mov	x0, x20
	bl	_mmal_port_parameter_set_boolean
	ldr	x8, [x23]
	cmp	x0, x8
	b.eq	LBB0_57
; %bb.56:
Lloh89:
	adrp	x0, l_.str.17@PAGE
Lloh90:
	add	x0, x0, l_.str.17@PAGEOFF
	bl	_vcos_log_error
LBB0_57:
	ldr	w8, [x19, #40]
	cmn	w8, #1
	b.eq	LBB0_61
; %bb.58:
Lloh91:
	adrp	x8, _MMAL_PARAMETER_VIDEO_INTRA_REFRESH@GOTPAGE
Lloh92:
	ldr	x8, [x8, _MMAL_PARAMETER_VIDEO_INTRA_REFRESH@GOTPAGEOFF]
Lloh93:
	ldr	w8, [x8]
	add	x9, sp, #24
	orr	x21, x9, #0x4
	mov	w9, #48
	stp	w9, w8, [sp, #28]
	mov	x0, x20
	mov	x1, x21
	bl	_mmal_port_parameter_get
	ldr	x8, [x23]
	cmp	x0, x8
	b.eq	LBB0_60
; %bb.59:
Lloh94:
	adrp	x0, l_.str.18@PAGE
Lloh95:
	add	x0, x0, l_.str.18@PAGEOFF
	bl	_vcos_log_warn
	movi.2d	v0, #0000000000000000
	stur	q0, [sp, #40]
	stur	q0, [sp, #56]
LBB0_60:
	ldr	w8, [x19, #40]
	str	w8, [sp, #24]
	mov	x0, x20
	mov	x1, x21
	bl	_mmal_port_parameter_set
	ldr	x8, [x23]
	cmp	x0, x8
	b.ne	LBB0_73
LBB0_61:
	ldur	x0, [x29, #-72]
	bl	_mmal_component_enable
	mov	x22, x0
	ldr	x8, [x23]
	cmp	x0, x8
	b.ne	LBB0_68
; %bb.62:
	ldr	x1, [x20, #16]
	ldr	w2, [x20]
	mov	x0, x20
	bl	_mmal_port_pool_create
	mov	x21, x0
	cbnz	x0, LBB0_64
; %bb.63:
	ldr	w8, [x20, #40]
	str	x8, [sp]
Lloh96:
	adrp	x0, l_.str.21@PAGE
Lloh97:
	add	x0, x0, l_.str.21@PAGEOFF
	bl	_vcos_log_error
LBB0_64:
	str	x21, [x19, #72]
	ldur	x8, [x29, #-72]
	str	x8, [x19, #48]
	ldr	x8, [x19, #64]
	cbz	x8, LBB0_44
; %bb.65:
Lloh98:
	adrp	x8, _stderr@GOTPAGE
Lloh99:
	ldr	x8, [x8, _stderr@GOTPAGEOFF]
Lloh100:
	ldr	w0, [x8]
Lloh101:
	adrp	x1, l_.str.22@PAGE
Lloh102:
	add	x1, x1, l_.str.22@PAGEOFF
	bl	_fprintf
	b	LBB0_44
LBB0_66:
	mov	x22, x0
Lloh103:
	adrp	x0, l_.str.5@PAGE
Lloh104:
	add	x0, x0, l_.str.5@PAGEOFF
	b	LBB0_41
LBB0_67:
	mov	x22, x0
Lloh105:
	adrp	x0, l_.str.13@PAGE
Lloh106:
	add	x0, x0, l_.str.13@PAGEOFF
	b	LBB0_41
LBB0_68:
Lloh107:
	adrp	x0, l_.str.20@PAGE
Lloh108:
	add	x0, x0, l_.str.20@PAGEOFF
	b	LBB0_41
LBB0_69:
	mov	x22, x0
Lloh109:
	adrp	x0, l_.str.9@PAGE
Lloh110:
	add	x0, x0, l_.str.9@PAGEOFF
	b	LBB0_41
LBB0_70:
Lloh111:
	adrp	x0, l_.str.12@PAGE
Lloh112:
	add	x0, x0, l_.str.12@PAGEOFF
	bl	_vcos_log_error
Lloh113:
	adrp	x8, _MMAL_EINVAL@GOTPAGE
Lloh114:
	ldr	x8, [x8, _MMAL_EINVAL@GOTPAGEOFF]
Lloh115:
	ldr	x22, [x8]
	ldur	x0, [x29, #-72]
	cbnz	x0, LBB0_42
	b	LBB0_43
LBB0_71:
	mov	x22, x0
Lloh116:
	adrp	x0, l_.str.7@PAGE
Lloh117:
	add	x0, x0, l_.str.7@PAGEOFF
	b	LBB0_41
LBB0_72:
	mov	x22, x0
Lloh118:
	adrp	x0, l_.str.10@PAGE
Lloh119:
	add	x0, x0, l_.str.10@PAGEOFF
	b	LBB0_41
LBB0_73:
	mov	x22, x0
Lloh120:
	adrp	x0, l_.str.19@PAGE
Lloh121:
	add	x0, x0, l_.str.19@PAGEOFF
	b	LBB0_41
	.loh AdrpLdrGot	Lloh3, Lloh4
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGot	Lloh5, Lloh6
	.loh AdrpLdrGotLdr	Lloh7, Lloh8, Lloh9
	.loh AdrpLdrGot	Lloh10, Lloh11
	.loh AdrpAdd	Lloh12, Lloh13
	.loh AdrpAdd	Lloh17, Lloh18
	.loh AdrpLdrGotLdr	Lloh14, Lloh15, Lloh16
	.loh AdrpLdrGotLdr	Lloh19, Lloh20, Lloh21
	.loh AdrpLdrGot	Lloh22, Lloh23
	.loh AdrpAdd	Lloh27, Lloh28
	.loh AdrpLdrGotLdr	Lloh24, Lloh25, Lloh26
	.loh AdrpLdrGot	Lloh29, Lloh30
	.loh AdrpAdd	Lloh34, Lloh35
	.loh AdrpLdrGotLdr	Lloh31, Lloh32, Lloh33
	.loh AdrpLdrGotLdr	Lloh36, Lloh37, Lloh38
	.loh AdrpAdd	Lloh42, Lloh43
	.loh AdrpLdrGotLdr	Lloh39, Lloh40, Lloh41
	.loh AdrpLdrGotLdr	Lloh44, Lloh45, Lloh46
	.loh AdrpLdrGotLdr	Lloh47, Lloh48, Lloh49
	.loh AdrpLdrGotLdr	Lloh50, Lloh51, Lloh52
	.loh AdrpLdrGotLdr	Lloh53, Lloh54, Lloh55
	.loh AdrpLdrGotLdr	Lloh56, Lloh57, Lloh58
	.loh AdrpLdrGotLdr	Lloh64, Lloh65, Lloh66
	.loh AdrpAdd	Lloh62, Lloh63
	.loh AdrpLdrGotLdr	Lloh59, Lloh60, Lloh61
	.loh AdrpAdd	Lloh67, Lloh68
	.loh AdrpAdd	Lloh69, Lloh70
	.loh AdrpLdrGotLdr	Lloh71, Lloh72, Lloh73
	.loh AdrpAdd	Lloh74, Lloh75
	.loh AdrpLdrGotLdr	Lloh76, Lloh77, Lloh78
	.loh AdrpAdd	Lloh79, Lloh80
	.loh AdrpLdrGotLdr	Lloh81, Lloh82, Lloh83
	.loh AdrpAdd	Lloh84, Lloh85
	.loh AdrpLdrGotLdr	Lloh86, Lloh87, Lloh88
	.loh AdrpAdd	Lloh89, Lloh90
	.loh AdrpLdrGotLdr	Lloh91, Lloh92, Lloh93
	.loh AdrpAdd	Lloh94, Lloh95
	.loh AdrpAdd	Lloh96, Lloh97
	.loh AdrpAdd	Lloh101, Lloh102
	.loh AdrpLdrGotLdr	Lloh98, Lloh99, Lloh100
	.loh AdrpAdd	Lloh103, Lloh104
	.loh AdrpAdd	Lloh105, Lloh106
	.loh AdrpAdd	Lloh107, Lloh108
	.loh AdrpAdd	Lloh109, Lloh110
	.loh AdrpLdrGotLdr	Lloh113, Lloh114, Lloh115
	.loh AdrpAdd	Lloh111, Lloh112
	.loh AdrpAdd	Lloh116, Lloh117
	.loh AdrpAdd	Lloh118, Lloh119
	.loh AdrpAdd	Lloh120, Lloh121
	.cfi_endproc
                                        ; -- End function
	.comm	_MMAL_COMPONENT_DEFAULT_VIDEO_ENCODER,4,2 ; @MMAL_COMPONENT_DEFAULT_VIDEO_ENCODER
	.comm	_MMAL_SUCCESS,8,3               ; @MMAL_SUCCESS
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"Unable to create video encoder component"

	.comm	_MMAL_ENOSYS,8,3                ; @MMAL_ENOSYS
l_.str.1:                               ; @.str.1
	.asciz	"Video encoder doesn't have input/output ports"

	.comm	_MMAL_ENCODING_H264,8,3         ; @MMAL_ENCODING_H264
	.comm	_MMAL_VIDEO_LEVEL_H264_4,8,3    ; @MMAL_VIDEO_LEVEL_H264_4
	.comm	_MAX_BITRATE_LEVEL4,8,3         ; @MAX_BITRATE_LEVEL4
	.comm	_stderr,4,2                     ; @stderr
l_.str.2:                               ; @.str.2
	.asciz	"Bitrate too high: Reducing to 25MBit/s\n"

	.comm	_MAX_BITRATE_LEVEL42,8,3        ; @MAX_BITRATE_LEVEL42
l_.str.3:                               ; @.str.3
	.asciz	"Bitrate too high: Reducing to 62.5MBit/s\n"

	.comm	_MMAL_ENCODING_MJPEG,8,3        ; @MMAL_ENCODING_MJPEG
	.comm	_MAX_BITRATE_MJPEG,8,3          ; @MAX_BITRATE_MJPEG
l_.str.4:                               ; @.str.4
	.asciz	"Unable to set format on video encoder output port"

	.comm	_MMAL_PARAMETER_INTRAPERIOD,4,2 ; @MMAL_PARAMETER_INTRAPERIOD
l_.str.5:                               ; @.str.5
	.asciz	"Unable to set intraperiod"

l_.str.6:                               ; @.str.6
	.asciz	"H264 Slice count (%d) exceeds number of macroblock rows (%d). Setting slices to %d.\n"

	.comm	_MMAL_PARAMETER_MB_ROWS_PER_SLICE,4,2 ; @MMAL_PARAMETER_MB_ROWS_PER_SLICE
l_.str.7:                               ; @.str.7
	.asciz	"Unable to set number of slices"

	.comm	_MMAL_PARAMETER_VIDEO_ENCODE_INITIAL_QUANT,4,2 ; @MMAL_PARAMETER_VIDEO_ENCODE_INITIAL_QUANT
l_.str.8:                               ; @.str.8
	.asciz	"Unable to set initial QP"

	.comm	_MMAL_PARAMETER_VIDEO_ENCODE_MIN_QUANT,4,2 ; @MMAL_PARAMETER_VIDEO_ENCODE_MIN_QUANT
l_.str.9:                               ; @.str.9
	.asciz	"Unable to set min QP"

	.comm	_MMAL_PARAMETER_VIDEO_ENCODE_MAX_QUANT,4,2 ; @MMAL_PARAMETER_VIDEO_ENCODE_MAX_QUANT
l_.str.10:                              ; @.str.10
	.asciz	"Unable to set max QP"

	.comm	_MMAL_PARAMETER_PROFILE,4,2     ; @MMAL_PARAMETER_PROFILE
l_.str.11:                              ; @.str.11
	.asciz	"Too many macroblocks/s: Increasing H264 Level to 4.2\n"

	.comm	_MMAL_VIDEO_LEVEL_H264_42,8,3   ; @MMAL_VIDEO_LEVEL_H264_42
l_.str.12:                              ; @.str.12
	.asciz	"Too many macroblocks/s requested"

	.comm	_MMAL_EINVAL,8,3                ; @MMAL_EINVAL
l_.str.13:                              ; @.str.13
	.asciz	"Unable to set H264 profile"

	.comm	_MMAL_PARAMETER_VIDEO_IMMUTABLE_INPUT,4,2 ; @MMAL_PARAMETER_VIDEO_IMMUTABLE_INPUT
l_.str.14:                              ; @.str.14
	.asciz	"Unable to set immutable input flag"

	.comm	_MMAL_PARAMETER_VIDEO_ENCODE_INLINE_HEADER,4,2 ; @MMAL_PARAMETER_VIDEO_ENCODE_INLINE_HEADER
l_.str.15:                              ; @.str.15
	.asciz	"failed to set INLINE HEADER FLAG parameters"

	.comm	_MMAL_PARAMETER_VIDEO_ENCODE_SPS_TIMING,4,2 ; @MMAL_PARAMETER_VIDEO_ENCODE_SPS_TIMING
l_.str.16:                              ; @.str.16
	.asciz	"failed to set SPS TIMINGS FLAG parameters"

	.comm	_MMAL_PARAMETER_VIDEO_ENCODE_INLINE_VECTORS,4,2 ; @MMAL_PARAMETER_VIDEO_ENCODE_INLINE_VECTORS
l_.str.17:                              ; @.str.17
	.asciz	"failed to set INLINE VECTORS parameters"

	.comm	_MMAL_PARAMETER_VIDEO_INTRA_REFRESH,4,2 ; @MMAL_PARAMETER_VIDEO_INTRA_REFRESH
l_.str.18:                              ; @.str.18
	.asciz	"Unable to get existing H264 intra-refresh values. Please update your firmware"

l_.str.19:                              ; @.str.19
	.asciz	"Unable to set H264 intra-refresh values"

l_.str.20:                              ; @.str.20
	.asciz	"Unable to enable video encoder component"

l_.str.21:                              ; @.str.21
	.asciz	"Failed to create buffer header pool for encoder output port %s"

l_.str.22:                              ; @.str.22
	.asciz	"Encoder component done\n"

	.comm	_MMAL_PARAMETER_RATECONTROL,4,2 ; @MMAL_PARAMETER_RATECONTROL
	.comm	_MMAL_VIDEO_RATECONTROL_DEFAULT,4,2 ; @MMAL_VIDEO_RATECONTROL_DEFAULT
	.no_dead_strip	_create_encoder_component
.subsections_via_symbols
