ad_ffmpeg.mid
来自「君正早期ucos系统(只有早期的才不没有打包成库),MPLAYER,文件系统,图」· MID 代码 · 共 1,035 行
MID
1,035 行
.file 1 "ad_ffmpeg.c" .section .mdebug.abi32 .previous .section .text.preinit,"ax",@progbits .align 2 .align 5 .ent preinit .type preinit, @functionpreinit: .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0 .mask 0x00000000,0 .fmask 0x00000000,0 .set noreorder .set nomacro li $2,131072 # 0x20000 ori $2,$2,0xee00 sw $2,64($4) j $31 li $2,1 # 0x1 .set macro .set reorder .end preinit .globl __nedf2 .section .rodata.str1.4,"aMS",@progbits,1 .align 2$LC1: .ascii "lavc_audio: error\012\000" .section .rodata.cst8,"aM",@progbits,8 .align 3$LC0: .word 0 .word -1008730112 .section .text.decode_audio,"ax",@progbits .align 2 .align 5 .ent decode_audio .type decode_audio, @functiondecode_audio: .frame $sp,80,$31 # vars= 16, regs= 10/0, args= 24, gp= 0 .mask 0xc0ff0000,-4 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-80 sw $21,60($sp) sw $20,56($sp) sw $19,52($sp) sw $31,76($sp) sw $fp,72($sp) sw $23,68($sp) sw $22,64($sp) sw $18,48($sp) sw $17,44($sp) sw $16,40($sp) sw $6,88($sp) move $19,$4 move $21,$5 bltz $6,$L25 move $20,$7 li $22,-1 # 0xffffffffffffffff addiu $23,$sp,24 lui $fp,%hi($LC0) j $L7 sw $0,24($sp)$L18: addu $22,$22,$3$L20: lw $2,184($19) addu $21,$21,$3 addu $2,$2,$3 sw $2,184($19) subu $20,$20,$3$L16: lw $3,88($sp) slt $2,$22,$3 beq $2,$0,$L26 move $2,$22$L7: lw $4,4($19) move $5,$23 addiu $6,$sp,32 jal ds_get_packet_pts sw $20,28($sp) blez $2,$L6 move $18,$2 lw $16,32($sp) lw $17,36($sp) lw $6,%lo($LC0)($fp) lw $7,%lo($LC0+4)($fp) move $4,$16 jal __nedf2 move $5,$17 beq $2,$0,$L9 nop sw $16,176($19) sw $17,180($19) sw $0,184($19)$L9: lw $4,160($19) lw $7,24($sp) move $5,$21 addiu $6,$sp,28 jal avcodec_decode_audio2 sw $18,16($sp) bltz $2,$L22 move $3,$2 slt $2,$2,$18 beq $2,$0,$L14 subu $3,$3,$18 lw $4,4($19) lw $2,0($4) addu $2,$2,$3 sw $2,0($4)$L14: lw $3,28($sp) blez $3,$L16 nop bgez $22,$L18 nop j $L20 move $22,$3$L22: lui $6,%hi($LC1) addiu $6,$6,%lo($LC1) li $4,12 # 0xc jal mp_msg li $5,6 # 0x6$L6: move $2,$22$L26: lw $31,76($sp) lw $fp,72($sp) lw $23,68($sp) lw $22,64($sp) lw $21,60($sp) lw $20,56($sp) lw $19,52($sp) lw $18,48($sp) lw $17,44($sp) lw $16,40($sp) j $31 addiu $sp,$sp,80$L25: j $L6 li $22,-1 # 0xffffffffffffffff .set macro .set reorder .end decode_audio .section .text.control,"ax",@progbits .align 2 .align 5 .ent control .type control, @functioncontrol: .frame $sp,24,$31 # vars= 0, regs= 1/0, args= 16, gp= 0 .mask 0x80000000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-24 sw $31,16($sp) sw $7,36($sp) li $2,1 # 0x1 li $3,-1 # 0xffffffffffffffff beq $5,$2,$L32 lw $4,160($4) lw $31,16($sp) move $2,$3 j $31 addiu $sp,$sp,24$L32: jal avcodec_flush_buffers nop li $3,1 # 0x1 lw $31,16($sp) move $2,$3 j $31 addiu $sp,$sp,24 .set macro .set reorder .end control .section .rodata.str1.4 .align 2$LC2: .ascii "Could not close codec.\012\000" .section .text.uninit,"ax",@progbits .align 2 .align 5 .ent uninit .type uninit, @functionuninit: .frame $sp,32,$31 # vars= 8, regs= 1/0, args= 16, gp= 0 .mask 0x80000000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-32 sw $31,24($sp) lw $2,160($4) move $4,$2 jal avcodec_close sw $2,16($sp) lui $6,%hi($LC2) addiu $6,$6,%lo($LC2) li $5,1 # 0x1 bltz $2,$L37 li $4,13 # 0xd lw $4,16($sp) jal av_freep addiu $4,$4,24 jal av_freep addiu $4,$sp,16 lw $31,24($sp) j $31 addiu $sp,$sp,32$L37: jal mp_msg nop lw $4,16($sp) jal av_freep addiu $4,$4,24 jal av_freep addiu $4,$sp,16 lw $31,24($sp) j $31 addiu $sp,$sp,32 .set macro .set reorder .end uninit .section .rodata.str1.4 .align 2$LC3: .ascii "FFmpeg's libavcodec audio codec\012\000" .align 2$LC4: .ascii "Cannot find codec '%s' in libavcodec...\012\000" .align 2$LC5: .ascii "Could not open codec.\012\000" .align 2$LC6: .ascii "INFO: libavcodec init OK!\012\000" .section .rodata.cst8 .align 3$LC7: .word 0 .word -1008730112 .section .text.init,"ax",@progbits .align 2 .align 5 .ent init .type init, @functioninit: .frame $sp,80,$31 # vars= 16, regs= 10/0, args= 24, gp= 0 .mask 0xc0ff0000,-4 .fmask 0x00000000,0 addiu $sp,$sp,-80 lui $6,%hi($LC3) sw $20,56($sp) sw $16,40($sp) move $20,$4 addiu $6,$6,%lo($LC3) li $4,12 # 0xc li $5,4 # 0x4 lui $16,%hi(avcodec_inited) sw $31,76($sp) sw $fp,72($sp) sw $23,68($sp) sw $22,64($sp) sw $21,60($sp) sw $19,52($sp) sw $18,48($sp) .set noreorder .set nomacro jal mp_msg sw $17,44($sp) .set macro .set reorder lw $2,%lo(avcodec_inited)($16) beq $2,$0,$L111 lw $2,8($20) .set noreorder .set nomacro jal avcodec_find_decoder_by_name lw $4,428($2) .set macro .set reorder .set noreorder .set nomacro beq $2,$0,$L112 move $16,$2 .set macro .set reorder$L41: jal avcodec_alloc_context lw $3,28($20) move $19,$2 sw $3,64($2) lw $2,44($20) lw $5,156($20) sll $2,$2,3 sw $19,160($20) .set noreorder .set nomacro beq $5,$0,$L44 sw $2,4($19) .set macro .set reorder lbu $3,3($5) lbu $2,2($5) sll $3,$3,8 or $3,$3,$2 sw $3,68($19) lwl $2,7($5) lwr $2,4($5) sw $2,64($19) lwl $3,11($5) lwr $3,8($5) sll $3,$3,3 sw $3,4($19) lbu $2,13($5) lbu $3,12($5) sll $2,$2,8 or $2,$2,$3 sw $2,272($19) lbu $3,15($5) lbu $2,14($5) sll $3,$3,8 or $3,$3,$2 sw $3,392($19)$L44: lui $2,%hi(audio_output_channels) lw $3,%lo(audio_output_channels)($2) lw $4,8($16) sw $3,832($19) lw $2,12($20) sw $4,228($19) .set noreorder .set nomacro beq $5,$0,$L46 sw $2,232($19) .set macro .set reorder lbu $2,17($5) lbu $3,16($5) sll $2,$2,8 or $2,$2,$3 bne $2,$0,$L113$L46: lw $4,168($20) bne $4,$0,$L114$L60: move $5,$16$L120: .set noreorder .set nomacro jal avcodec_open move $4,$19 .set macro .set reorder .set noreorder .set nomacro bltz $2,$L115 lui $6,%hi($LC6) .set macro .set reorder addiu $6,$6,%lo($LC6) li $4,12 # 0xc .set noreorder .set nomacro jal mp_msg li $5,6 # 0x6 .set macro .set reorder li $2,860028928 # 0x33430000 lw $3,12($20) ori $2,$2,0x414d .set noreorder .set nomacro beq $3,$2,$L116 li $2,910360576 # 0x36430000 .set macro .set reorder ori $2,$2,0x414d beq $3,$2,$L117 lw $5,4($20)$L79: lw $22,68($20) lw $21,76($20) addiu $fp,$sp,32 addiu $23,$sp,24 sw $0,24($sp)$L81: move $4,$5 move $6,$fp move $5,$23 .set noreorder .set nomacro jal ds_get_packet_pts sw $21,28($sp) .set macro .set reorder .set noreorder .set nomacro blez $2,$L82 move $18,$2 .set macro .set reorder lui $2,%hi($LC7) lw $16,32($sp) lw $17,36($sp) lw $6,%lo($LC7)($2) lw $7,%lo($LC7+4)($2) move $5,$17 .set noreorder .set nomacro jal __nedf2 move $4,$16 .set macro .set reorder move $5,$22 lw $7,24($sp) .set noreorder .set nomacro beq $2,$0,$L84 addiu $6,$sp,28 .set macro .set reorder sw $16,176($20) sw $17,180($20) sw $0,184($20)$L84: lw $4,160($20) .set noreorder .set nomacro jal avcodec_decode_audio2 sw $18,16($sp) .set macro .set reorder subu $6,$2,$18 .set noreorder .set nomacro bltz $2,$L101 slt $4,$2,$18 .set macro .set reorder .set noreorder .set nomacro beq $4,$0,$L89 lw $3,28($sp) .set macro .set reorder lw $5,4($20) lw $2,0($5) addu $2,$2,$6 sw $2,0($5)$L89: blez $3,$L100 lw $2,184($20) sw $3,72($20) addu $2,$2,$3 sw $2,184($20)$L82: lw $2,68($19)$L119: lw $5,156($20) sw $2,36($20) lw $3,64($19) sw $3,28($20) lw $2,4($19) addiu $4,$2,7 slt $3,$2,0 movn $2,$4,$3 sra $2,$2,3 .set noreorder .set nomacro beq $5,$0,$L93 sw $2,44($20) .set macro .set reorder lwl $2,7($5) lwr $2,4($5) beq $2,$0,$L95 sw $2,28($20)$L95: lwl $2,11($5) lwr $2,8($5) beq $2,$0,$L93 sw $2,44($20)$L93: li $2,2 # 0x2 sw $2,32($20) lw $31,76($sp) lw $fp,72($sp) lw $23,68($sp) lw $22,64($sp) lw $21,60($sp) lw $20,56($sp) lw $19,52($sp) lw $18,48($sp) lw $17,44($sp) lw $16,40($sp) li $2,1 # 0x1 .set noreorder .set nomacro j $31 addiu $sp,$sp,80 .set macro .set reorder$L114: lw $2,164($20)$L118: .set noreorder .set nomacro beq $2,$0,$L120 move $5,$16 .set macro .set reorder lw $2,24($19) bne $2,$0,$L60 jal av_malloc lw $6,168($20) sw $2,24($19) move $4,$2 sltu $2,$6,32 sw $6,28($19) .set noreorder .set nomacro bne $2,$0,$L64 lw $5,164($20) .set macro .set reorder andi $2,$4,0x3 .set noreorder .set nomacro bne $2,$0,$L64 andi $2,$5,0x3 .set macro .set reorder .set noreorder .set nomacro bne $2,$0,$L64 li $2,-32 # 0xffffffffffffffe0 .set macro .set reorder addiu $4,$4,-4 and $2,$6,$2 addu $7,$4,$2 sltu $3,$4,$7 .set noreorder .set nomacro beq $3,$0,$L68 addiu $5,$5,-4 .set macro .set reorder$L104:#APP S32LDI xr1,$5,4 S32LDI xr2,$5,4 S32LDI xr3,$5,4 S32LDI xr4,$5,4 S32LDI xr5,$5,4 S32LDI xr6,$5,4 S32LDI xr7,$5,4 S32LDI xr8,$5,4 S32SDI xr1,$4,4 S32SDI xr2,$4,4 S32SDI xr3,$4,4 S32SDI xr4,$4,4 S32SDI xr5,$4,4 S32SDI xr6,$4,4 S32SDI xr7,$4,4 S32SDI xr8,$4,4#NO_APP sltu $2,$4,$7 bne $2,$0,$L104$L68: andi $2,$6,0x1c addu $7,$7,$2 sltu $3,$4,$7 beq $3,$0,$L70$L105:#APP S32LDI xr1,$5,4 S32SDI xr1,$4,4#NO_APP sltu $2,$4,$7 bne $2,$0,$L105$L70: andi $6,$6,0x3 li $2,2 # 0x2 .set noreorder .set nomacro beq $6,$2,$L73 li $2,3 # 0x3 .set macro .set reorder .set noreorder .set nomacro beq $6,$2,$L74 li $2,1 # 0x1 .set macro .set reorder bne $6,$2,$L60 lbu $2,4($5) .set noreorder .set nomacro j $L60 sb $2,4($4) .set macro .set reorder$L111: jal avcodec_init jal avcodec_register_all li $2,1 # 0x1 sw $2,%lo(avcodec_inited)($16) lw $2,8($20) .set noreorder .set nomacro jal avcodec_find_decoder_by_name lw $4,428($2) .set macro .set reorder .set noreorder .set nomacro bne $2,$0,$L41 move $16,$2 .set macro .set reorder$L112: lw $2,8($20) lui $6,%hi($LC4) lw $7,428($2) addiu $6,$6,%lo($LC4) li $4,12 # 0xc .set noreorder .set nomacro jal mp_msg li $5,1 # 0x1 .set macro .set reorder lw $31,76($sp) lw $fp,72($sp) lw $23,68($sp) lw $22,64($sp) lw $21,60($sp) lw $20,56($sp) lw $19,52($sp) lw $18,48($sp) lw $17,44($sp) lw $16,40($sp) move $2,$0 .set noreorder .set nomacro j $31 addiu $sp,$sp,80 .set macro .set reorder$L113: .set noreorder .set nomacro jal av_mallocz addiu $4,$2,8 .set macro .set reorder lw $7,156($20) sw $2,24($19) move $8,$2 lbu $2,17($7) lbu $3,16($7) sll $2,$2,8 or $6,$2,$3 sltu $4,$6,32 sw $6,28($19) .set noreorder .set nomacro bne $4,$0,$L49 addiu $5,$7,18 .set macro .set reorder andi $2,$8,0x3 .set noreorder .set nomacro bne $2,$0,$L49 andi $2,$5,0x3 .set macro .set reorder .set noreorder .set nomacro bne $2,$0,$L49 addiu $4,$8,-4 .set macro .set reorder andi $2,$6,0xffe0 addu $8,$4,$2 sltu $3,$4,$8 .set noreorder .set nomacro beq $3,$0,$L53 addiu $5,$7,14 .set macro .set reorder$L102:#APP S32LDI xr1,$5,4 S32LDI xr2,$5,4 S32LDI xr3,$5,4 S32LDI xr4,$5,4 S32LDI xr5,$5,4 S32LDI xr6,$5,4 S32LDI xr7,$5,4 S32LDI xr8,$5,4 S32SDI xr1,$4,4 S32SDI xr2,$4,4 S32SDI xr3,$4,4 S32SDI xr4,$4,4 S32SDI xr5,$4,4 S32SDI xr6,$4,4 S32SDI xr7,$4,4 S32SDI xr8,$4,4#NO_APP sltu $2,$4,$8 bne $2,$0,$L102$L53: andi $2,$6,0x1c addu $7,$8,$2 sltu $3,$4,$7 beq $3,$0,$L55$L103:#APP S32LDI xr1,$5,4 S32SDI xr1,$4,4#NO_APP sltu $2,$4,$7 bne $2,$0,$L103$L55: andi $6,$6,0x3 li $2,2 # 0x2 .set noreorder .set nomacro beq $6,$2,$L58 li $2,3 # 0x3 .set macro .set reorder .set noreorder .set nomacro beq $6,$2,$L59 li $2,1 # 0x1 .set macro .set reorder bne $6,$2,$L46 lbu $2,4($5) .set noreorder .set nomacro j $L46 sb $2,4($4) .set macro .set reorder$L116: lw $5,4($20) lw $4,156($20) li $3,6 # 0x6$L110: sw $3,88($5) lbu $2,3($4) lbu $3,2($4) sll $2,$2,8 or $2,$2,$3 sll $2,$2,1 .set noreorder .set nomacro j $L79 sw $2,84($5) .set macro .set reorder$L49: .set noreorder .set nomacro jal memcpy move $4,$8 .set macro .set reorder lw $4,168($20) .set noreorder .set nomacro beq $4,$0,$L120 move $5,$16 .set macro .set reorder .set noreorder .set nomacro j $L118 lw $2,164($20) .set macro .set reorder$L115: lui $6,%hi($LC5) addiu $6,$6,%lo($LC5) li $4,12 # 0xc .set noreorder .set nomacro jal mp_msg li $5,1 # 0x1 .set macro .set reorder lw $31,76($sp) lw $fp,72($sp) lw $23,68($sp) lw $22,64($sp) lw $21,60($sp) lw $20,56($sp) lw $19,52($sp) lw $18,48($sp) lw $17,44($sp) lw $16,40($sp) move $2,$0 .set noreorder .set nomacro j $31 addiu $sp,$sp,80 .set macro .set reorder$L100: .set noreorder .set nomacro j $L81 lw $5,4($20) .set macro .set reorder$L117: lw $5,4($20) lw $4,156($20) .set noreorder .set nomacro j $L110 li $3,12 # 0xc .set macro .set reorder$L101: lui $6,%hi($LC1) addiu $6,$6,%lo($LC1) li $4,12 # 0xc .set noreorder .set nomacro jal mp_msg li $5,6 # 0x6 .set macro .set reorder .set noreorder .set nomacro j $L119 lw $2,68($19) .set macro .set reorder$L64: jal memcpy .set noreorder .set nomacro j $L120 move $5,$16 .set macro .set reorder$L58: lbu $2,4($5) sb $2,4($4) lbu $3,5($5) .set noreorder .set nomacro j $L46 sb $3,5($4) .set macro .set reorder$L59: lbu $2,4($5) sb $2,4($4) lbu $3,5($5) sb $3,5($4) lbu $2,6($5) .set noreorder .set nomacro j $L46 sb $2,6($4) .set macro .set reorder$L73: lbu $2,4($5) sb $2,4($4) lbu $3,5($5) .set noreorder .set nomacro j $L60 sb $3,5($4) .set macro .set reorder$L74: lbu $2,4($5) sb $2,4($4) lbu $3,5($5) sb $3,5($4) lbu $2,6($5) .set noreorder .set nomacro j $L60 sb $2,6($4) .set macro .set reorder .end init .globl mpcodecs_ad_ffmpeg .data .align 2 .type mpcodecs_ad_ffmpeg, @object .size mpcodecs_ad_ffmpeg, 24mpcodecs_ad_ffmpeg: .word info .word preinit .word init .word uninit .word control .word decode_audio .section .rodata.str1.4 .align 2$LC8: .ascii "FFmpeg/libavcodec audio decoders\000" .align 2$LC9: .ascii "ffmpeg\000" .align 2$LC10: .ascii "Nick Kurshev\000" .align 2$LC11: .ascii "ffmpeg.sf.net\000" .subsection -1 .align 2$LC12: .ascii "\000" .data .align 2 .type info, @object .size info, 20info: .word $LC8 .word $LC9 .word $LC10 .word $LC11 .word $LC12 .ident "GCC: (GNU) 4.1.2"
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?